aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGenCUDA/address-spaces.cu
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2012-08-15 20:02:54 +0000
committerDimitry Andric <dim@FreeBSD.org>2012-08-15 20:02:54 +0000
commit56d91b49b13fe55c918afbda19f6165b5fbff87a (patch)
tree9abb1a658a297776086f4e0dfa6ca533de02104e /test/CodeGenCUDA/address-spaces.cu
parent41e20f564abdb05101d6b2b29c59459a966c22cc (diff)
downloadsrc-56d91b49b13fe55c918afbda19f6165b5fbff87a.tar.gz
src-56d91b49b13fe55c918afbda19f6165b5fbff87a.zip
Vendor import of clang trunk r161861:vendor/clang/clang-trunk-r161861
Notes
Notes: svn path=/vendor/clang/dist/; revision=239313 svn path=/vendor/clang/clang-trunk-r161861/; revision=239314; tag=vendor/clang/clang-trunk-r161861
Diffstat (limited to 'test/CodeGenCUDA/address-spaces.cu')
-rw-r--r--test/CodeGenCUDA/address-spaces.cu24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/CodeGenCUDA/address-spaces.cu b/test/CodeGenCUDA/address-spaces.cu
new file mode 100644
index 000000000000..61d4d6b6ba48
--- /dev/null
+++ b/test/CodeGenCUDA/address-spaces.cu
@@ -0,0 +1,24 @@
+// RUN: %clang_cc1 -emit-llvm %s -o - -fcuda-is-device -triple nvptx-unknown-unknown | FileCheck %s
+
+#include "../SemaCUDA/cuda.h"
+
+// CHECK: @i = addrspace(1) global
+__device__ int i;
+
+// CHECK: @j = addrspace(4) global
+__constant__ int j;
+
+// CHECK: @k = addrspace(3) global
+__shared__ int k;
+
+__device__ void foo() {
+ // CHECK: load i32* bitcast (i32 addrspace(1)* @i to i32*)
+ i++;
+
+ // CHECK: load i32* bitcast (i32 addrspace(4)* @j to i32*)
+ j++;
+
+ // CHECK: load i32* bitcast (i32 addrspace(3)* @k to i32*)
+ k++;
+}
+