diff options
Diffstat (limited to 'llvm/test/CodeGen/R600')
| -rw-r--r-- | llvm/test/CodeGen/R600/large-alloca.ll | 10 | ||||
| -rw-r--r-- | llvm/test/CodeGen/R600/large-constant-initializer.ll | 18 |
2 files changed, 28 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/R600/large-alloca.ll b/llvm/test/CodeGen/R600/large-alloca.ll new file mode 100644 index 00000000000..882a05149ab --- /dev/null +++ b/llvm/test/CodeGen/R600/large-alloca.ll @@ -0,0 +1,10 @@ +; XFAIL: * +; 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 + store i32 %x, i32* %gep + ret void +} + diff --git a/llvm/test/CodeGen/R600/large-constant-initializer.ll b/llvm/test/CodeGen/R600/large-constant-initializer.ll new file mode 100644 index 00000000000..d22fb7161b6 --- /dev/null +++ b/llvm/test/CodeGen/R600/large-constant-initializer.ll @@ -0,0 +1,18 @@ +; XFAIL: * +; RUN: llc -march=r600 -mcpu=SI < %s + +@gv = external unnamed_addr addrspace(2) constant [239 x i32], align 4 + +define void @opencv_cvtfloat_crash(i32 addrspace(1)* %out, i32 %x) nounwind { + %val = load i32 addrspace(2)* getelementptr ([239 x i32] addrspace(2)* @gv, i64 0, i64 239), align 4 + %mul12 = mul nsw i32 %val, 7 + br i1 undef, label %exit, label %bb + +bb: + %cmp = icmp slt i32 %x, 0 + br label %exit + +exit: + ret void +} + |

