aboutsummaryrefslogtreecommitdiff
path: root/clang/test/CodeGen/ibm128-unsupported.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGen/ibm128-unsupported.c')
-rw-r--r--clang/test/CodeGen/ibm128-unsupported.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/test/CodeGen/ibm128-unsupported.c b/clang/test/CodeGen/ibm128-unsupported.c
new file mode 100644
index 0000000..4ade7dd
--- /dev/null
+++ b/clang/test/CodeGen/ibm128-unsupported.c
@@ -0,0 +1,15 @@
+// RUN: %clang_cc1 -triple powerpc64le -emit-llvm-bc -fopenmp %s \
+// RUN: -fopenmp-targets=powerpc64le,x86_64 -o %t-ppc-host.bc
+// RUN: %clang_cc1 -verify -triple x86_64 -aux-triple powerpc64le -fopenmp \
+// RUN: -fopenmp-is-device -fopenmp-host-ir-file-path %t-ppc-host.bc %s \
+// RUN: -fsyntax-only
+
+void foo(__ibm128 x); // expected-note {{'foo' defined here}}
+
+void loop(int n, __ibm128 *arr) {
+#pragma omp target parallel
+ for (int i = 0; i < n; ++i) {
+ // expected-error@+1 {{'foo' requires 128 bit size '__ibm128' type support, but device 'x86_64' does not support it}}
+ foo(arr[i]);
+ }
+}