diff options
Diffstat (limited to 'clang/test/CodeGenOpenCL/spir64_target.cl')
-rw-r--r-- | clang/test/CodeGenOpenCL/spir64_target.cl | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/clang/test/CodeGenOpenCL/spir64_target.cl b/clang/test/CodeGenOpenCL/spir64_target.cl new file mode 100644 index 00000000000..93ee86c6101 --- /dev/null +++ b/clang/test/CodeGenOpenCL/spir64_target.cl @@ -0,0 +1,21 @@ +// RUN: %clang_cc1 %s -triple "spir64-unknown-unknown" -emit-llvm -o - | FileCheck %s
+
+// CHECK: target triple = "spir64-unknown-unknown"
+
+typedef struct {
+ char c;
+ void *v;
+ void *v2;
+} my_st;
+
+kernel void foo(global long *arg) {
+ int res1[sizeof(my_st) == 24 ? 1 : -1]; + int res2[sizeof(void *) == 8 ? 1 : -1]; + int res3[sizeof(arg) == 8 ? 1 : -1]; +
+ my_st *tmp = 0;
+ arg[3] = (long)(&tmp->v);
+//CHECK: store i64 8, i64 addrspace(1)*
+ arg[4] = (long)(&tmp->v2);
+//CHECK: store i64 16, i64 addrspace(1)*
+}
|