diff options
author | Tanya Lattner <tonic@nondot.org> | 2008-03-01 09:15:35 +0000 |
---|---|---|
committer | Tanya Lattner <tonic@nondot.org> | 2008-03-01 09:15:35 +0000 |
commit | 5640bd186a4e1ab0c6dc8134b0722830762aef41 (patch) | |
tree | 1a6c3d0f03cb94ded9bec9476b296b30dd1011f2 /llvm/test/Transforms/InstCombine/narrow.ll | |
parent | ffe0da0eb2160281222a4f8862f435d333792dd2 (diff) | |
download | bcm5719-llvm-5640bd186a4e1ab0c6dc8134b0722830762aef41.tar.gz bcm5719-llvm-5640bd186a4e1ab0c6dc8134b0722830762aef41.zip |
Remove llvm-upgrade and update test cases.
llvm-svn: 47793
Diffstat (limited to 'llvm/test/Transforms/InstCombine/narrow.ll')
-rw-r--r-- | llvm/test/Transforms/InstCombine/narrow.ll | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/llvm/test/Transforms/InstCombine/narrow.ll b/llvm/test/Transforms/InstCombine/narrow.ll index 02d7e31b8ad..41106e759ce 100644 --- a/llvm/test/Transforms/InstCombine/narrow.ll +++ b/llvm/test/Transforms/InstCombine/narrow.ll @@ -1,17 +1,18 @@ ; This file contains various testcases that check to see that instcombine ; is narrowing computations when possible. -; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine | llvm-dis | \ +; RUN: llvm-as < %s | opt -instcombine | llvm-dis | \ ; RUN: grep {ret i1 false} ; test1 - Eliminating the casts in this testcase (by narrowing the AND ; operation) allows instcombine to realize the function always returns false. ; -bool %test1(int %A, int %B) { - %C1 = setlt int %A, %B - %ELIM1 = zext bool %C1 to uint - %C2 = setgt int %A, %B - %ELIM2 = zext bool %C2 to uint - %C3 = and uint %ELIM1, %ELIM2 - %ELIM3 = trunc uint %C3 to bool - ret bool %ELIM3 +define i1 @test1(i32 %A, i32 %B) { + %C1 = icmp slt i32 %A, %B ; <i1> [#uses=1] + %ELIM1 = zext i1 %C1 to i32 ; <i32> [#uses=1] + %C2 = icmp sgt i32 %A, %B ; <i1> [#uses=1] + %ELIM2 = zext i1 %C2 to i32 ; <i32> [#uses=1] + %C3 = and i32 %ELIM1, %ELIM2 ; <i32> [#uses=1] + %ELIM3 = trunc i32 %C3 to i1 ; <i1> [#uses=1] + ret i1 %ELIM3 } + |