diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2013-10-08 18:06:36 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2013-10-08 18:06:36 +0000 |
commit | 194d437f1181f464fc27900500a8773da4dec8b9 (patch) | |
tree | 994513f8b1d89f7c0c93ffb7b9bef8ddafbf2c98 /test/CodeGen/R600 | |
parent | e3c2f07005aa2e4c935adb65f7f3e0176810fe68 (diff) | |
download | external_llvm-194d437f1181f464fc27900500a8773da4dec8b9.zip external_llvm-194d437f1181f464fc27900500a8773da4dec8b9.tar.gz external_llvm-194d437f1181f464fc27900500a8773da4dec8b9.tar.bz2 |
Add some xfaild R600 tests.
These are bugs to fix later.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192212 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/R600')
-rw-r--r-- | test/CodeGen/R600/insert_vector_elt.ll | 16 | ||||
-rw-r--r-- | test/CodeGen/R600/si-annotate-cf-assertion.ll | 23 | ||||
-rw-r--r-- | test/CodeGen/R600/store-vector-ptrs.ll | 8 |
3 files changed, 47 insertions, 0 deletions
diff --git a/test/CodeGen/R600/insert_vector_elt.ll b/test/CodeGen/R600/insert_vector_elt.ll new file mode 100644 index 0000000..05aecce --- /dev/null +++ b/test/CodeGen/R600/insert_vector_elt.ll @@ -0,0 +1,16 @@ +; XFAIL: * +; RUN: llc < %s -march=r600 -mcpu=redwood -o %t + +define void @var_insert(<4 x i32> addrspace(1)* %out, <4 x i32> %x, i32 %val, i32 %idx) nounwind { +entry: + %tmp3 = insertelement <4 x i32> %x, i32 %val, i32 %idx ; <<4 x i32>> [#uses=1] + store <4 x i32> %tmp3, <4 x i32> addrspace(1)* %out + ret void +} + +define void @var_extract(i32 addrspace(1)* %out, <4 x i32> %x, i32 %idx) nounwind { +entry: + %tmp3 = extractelement <4 x i32> %x, i32 %idx ; <<i32>> [#uses=1] + store i32 %tmp3, i32 addrspace(1)* %out + ret void +} diff --git a/test/CodeGen/R600/si-annotate-cf-assertion.ll b/test/CodeGen/R600/si-annotate-cf-assertion.ll new file mode 100644 index 0000000..9886fe9 --- /dev/null +++ b/test/CodeGen/R600/si-annotate-cf-assertion.ll @@ -0,0 +1,23 @@ +; XFAIL: * +; RUN: llc -march=r600 -mcpu=SI -asm-verbose=false < %s | FileCheck %s + + +define void @test(i32 addrspace(1)* %g, i8 addrspace(3)* %l, i32 %x) nounwind { +; CHECK-LABEL: @test: + +entry: + switch i32 %x, label %sw.default [ + i32 0, label %sw.bb + i32 60, label %sw.bb + ] + +sw.bb: + unreachable + +sw.default: + unreachable + +sw.epilog: + ret void +} + diff --git a/test/CodeGen/R600/store-vector-ptrs.ll b/test/CodeGen/R600/store-vector-ptrs.ll new file mode 100644 index 0000000..01210ce --- /dev/null +++ b/test/CodeGen/R600/store-vector-ptrs.ll @@ -0,0 +1,8 @@ +; XFAIL: * +; RUN: llc -march=r600 -mcpu=SI < %s + +define void @store_vector_ptrs(<4 x i32*>* %out, <4 x [1024 x i32]*> %array) nounwind { + %p = getelementptr <4 x [1024 x i32]*> %array, <4 x i16> zeroinitializer, <4 x i16> <i16 16, i16 16, i16 16, i16 16> + store <4 x i32*> %p, <4 x i32*>* %out + ret void +}
\ No newline at end of file |