diff options
| author | Kit Barton <kbarton@ca.ibm.com> | 2015-07-02 19:29:05 +0000 |
|---|---|---|
| committer | Kit Barton <kbarton@ca.ibm.com> | 2015-07-02 19:29:05 +0000 |
| commit | b61173e791e3ac35d84775ecfde6db983759fb9d (patch) | |
| tree | 2477d09c1951aa568ebf7f3efb924dfe0e2f80fe /clang/test/CodeGen | |
| parent | 2ed9456015e9f5f1482e1a764cb1b883cfd05677 (diff) | |
| download | bcm5719-llvm-b61173e791e3ac35d84775ecfde6db983759fb9d.tar.gz bcm5719-llvm-b61173e791e3ac35d84775ecfde6db983759fb9d.zip | |
This patch adds support for the vector merge even word and vector merge odd word
instructions introduced in POWER8.
These are the Clang-related changes for http://reviews.llvm.org/D10704
All builtins are added in altivec.h and guarded with the POWER8_VECTOR macro.
Phabricator review: http://reviews.llvm.org/D10736
llvm-svn: 241293
Diffstat (limited to 'clang/test/CodeGen')
| -rw-r--r-- | clang/test/CodeGen/builtins-ppc-p8vector.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/clang/test/CodeGen/builtins-ppc-p8vector.c b/clang/test/CodeGen/builtins-ppc-p8vector.c index 7afc5c75f3d..61e14ba283d 100644 --- a/clang/test/CodeGen/builtins-ppc-p8vector.c +++ b/clang/test/CodeGen/builtins-ppc-p8vector.c @@ -55,6 +55,34 @@ void test1() { // CHECK-LE: add <2 x i64> // CHECK-PPC: error: call to 'vec_add' is ambiguous + /* vec_mergee */ + res_vbi = vec_mergee(vbi, vbi); +// CHECK: @llvm.ppc.altivec.vperm +// CHECK-LE: @llvm.ppc.altivec.vperm + + res_vi = vec_mergee(vi, vi); +// CHECK: @llvm.ppc.altivec.vperm +// CHECK-LE: @llvm.ppc.altivec.vperm + + res_vui = vec_mergee(vui, vui); +// CHECK: @llvm.ppc.altivec.vperm +// CHECK-LE: @llvm.ppc.altivec.vperm +// CHECK-PPC: warning: implicit declaration of function 'vec_mergee' + + /* vec_mergeo */ + res_vbi = vec_mergeo(vbi, vbi); +// CHECK: @llvm.ppc.altivec.vperm +// CHECK-LE: @llvm.ppc.altivec.vperm + + res_vi = vec_mergeo(vi, vi); +// CHECK: @llvm.ppc.altivec.vperm +// CHECK-LE: @llvm.ppc.altivec.vperm + + res_vui = vec_mergeo(vui, vui); +// CHECK: @llvm.ppc.altivec.vperm +// CHECK-LE: @llvm.ppc.altivec.vperm +// CHECK-PPC: warning: implicit declaration of function 'vec_mergeo' + /* vec_cmpeq */ res_vbll = vec_cmpeq(vsll, vsll); // CHECK: @llvm.ppc.altivec.vcmpequd |

