R600: Use LDS and vectors for private memory
[oota-llvm.git] / test / CodeGen / R600 / large-alloca.ll
index dd9b6775c082e8290398c662df40b3d71838c23a..d8be6d40f3102e9a8581e8a270e87a7d4cade6e1 100644 (file)
@@ -2,10 +2,13 @@
 ; REQUIRES: asserts
 ; RUN: llc -march=r600 -mcpu=SI < %s
 
-define void @large_alloca(i32 addrspace(1)* %out, i32 %x) nounwind {
-  %large = alloca [256 x i32], align 4
-  %gep = getelementptr [256 x i32]* %large, i32 0, i32 255
+define void @large_alloca(i32 addrspace(1)* %out, i32 %x, i32 %y) nounwind {
+  %large = alloca [8192 x i32], align 4
+  %gep = getelementptr [8192 x i32]* %large, i32 0, i32 8191
   store i32 %x, i32* %gep
+  %gep1 = getelementptr [8192 x i32]* %large, i32 0, i32 %y
+  %0 = load i32* %gep1
+  store i32 %0, i32 addrspace(1)* %out
   ret void
 }