diff options
| author | Matthijs Kooijman <matthijs@stdin.nl> | 2008-07-15 14:42:58 +0000 |
|---|---|---|
| committer | Matthijs Kooijman <matthijs@stdin.nl> | 2008-07-15 14:42:58 +0000 |
| commit | d881fb0a5b9ec1e4426632dbf54eac2ef89ec520 (patch) | |
| tree | f1e5b6e2bf9e8aed6a3dbe472d675050e8bbe64b /llvm/test/Transforms | |
| parent | c893bf472d8b55b1efa17a712f2a6118601fd78f (diff) | |
| download | bcm5719-llvm-d881fb0a5b9ec1e4426632dbf54eac2ef89ec520.tar.gz bcm5719-llvm-d881fb0a5b9ec1e4426632dbf54eac2ef89ec520.zip | |
Add a testcase for the canonicalizations now performed by deadargelim.
llvm-svn: 53611
Diffstat (limited to 'llvm/test/Transforms')
| -rw-r--r-- | llvm/test/Transforms/DeadArgElim/canon.ll | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/llvm/test/Transforms/DeadArgElim/canon.ll b/llvm/test/Transforms/DeadArgElim/canon.ll new file mode 100644 index 00000000000..b8adb713a7a --- /dev/null +++ b/llvm/test/Transforms/DeadArgElim/canon.ll @@ -0,0 +1,24 @@ +; This test shows a few canonicalizations made by deadargelim +; RUN: llvm-as < %s | opt -deadargelim | llvm-dis > %t +; This test should remove {} and replace it with void +; RUN: cat %t | grep {define internal void @test} +; This test shouls replace the {i32} return value with just i32 +; RUN: cat %t | grep {define internal i32 @test2} + +define internal {} @test() { + ret {} undef +} + +define internal {i32} @test2() { + ret {i32} undef; +} + +define void @caller() { + call {} @test() + %X = call {i32} @test2(); + %Y = extractvalue {i32} %X, 0 + call void @user(i32 %Y, {i32} %X) + ret void +} + +declare void @user(i32, {i32}) |

