summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenOpenCL/private-array-initialization.cl
diff options
context:
space:
mode:
authorAlexey Bader <aleksey.bader@mail.ru>2016-10-31 10:26:31 +0000
committerAlexey Bader <aleksey.bader@mail.ru>2016-10-31 10:26:31 +0000
commitabdcfc18090f93a55bb35048b435028319599180 (patch)
tree629f6e188e2ae595cf5f2d70f029e892b22bc9ce /clang/test/CodeGenOpenCL/private-array-initialization.cl
parent56c85d2119078e4538d8a81704f2c45c0f5e5674 (diff)
downloadbcm5719-llvm-abdcfc18090f93a55bb35048b435028319599180.tar.gz
bcm5719-llvm-abdcfc18090f93a55bb35048b435028319599180.zip
[OpenCL] Setting constant address space for array initializers
Summary: Setting constant address space for global constants used for memcpy-initialization of arrays. Patch by Alexey Sotkin. Reviewers: bader, yaxunl, Anastasia Subscribers: cfe-commits, AlexeySotkin Differential Revision: https://reviews.llvm.org/D25305 llvm-svn: 285557
Diffstat (limited to 'clang/test/CodeGenOpenCL/private-array-initialization.cl')
-rw-r--r--clang/test/CodeGenOpenCL/private-array-initialization.cl9
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/test/CodeGenOpenCL/private-array-initialization.cl b/clang/test/CodeGenOpenCL/private-array-initialization.cl
new file mode 100644
index 00000000000..a7d4a989197
--- /dev/null
+++ b/clang/test/CodeGenOpenCL/private-array-initialization.cl
@@ -0,0 +1,9 @@
+// RUN: %clang_cc1 %s -triple spir-unknown-unknown -O0 -emit-llvm -o - | FileCheck %s
+
+// CHECK: @test.arr = private unnamed_addr addrspace(2) constant [3 x i32] [i32 1, i32 2, i32 3], align 4
+
+void test() {
+ __private int arr[] = {1, 2, 3};
+// CHECK: %[[arr_i8_ptr:[0-9]+]] = bitcast [3 x i32]* %arr to i8*
+// CHECK: call void @llvm.memcpy.p0i8.p2i8.i32(i8* %[[arr_i8_ptr]], i8 addrspace(2)* bitcast ([3 x i32] addrspace(2)* @test.arr to i8 addrspace(2)*), i32 12, i32 4, i1 false)
+}
OpenPOWER on IntegriCloud