summaryrefslogtreecommitdiff
path: root/test/Transforms
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-03-13 23:53:04 +0000
committerChris Lattner <sabre@nondot.org>2004-03-13 23:53:04 +0000
commitffd072af9164af7ee0cdbef65195c53d11ef426a (patch)
tree30e8b878b30bf435f9521a628a566e23b27a93fc /test/Transforms
parent619d3544b19dfdc0006bb0f036253d76488fc212 (diff)
downloadllvm-ffd072af9164af7ee0cdbef65195c53d11ef426a.tar.gz
llvm-ffd072af9164af7ee0cdbef65195c53d11ef426a.tar.bz2
llvm-ffd072af9164af7ee0cdbef65195c53d11ef426a.tar.xz
New testcase, distilled from povray I think.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12364 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms')
-rw-r--r--test/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll b/test/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll
new file mode 100644
index 0000000000..9e77df948a
--- /dev/null
+++ b/test/Transforms/InstCombine/2004-03-13-InstCombineInfLoop.ll
@@ -0,0 +1,13 @@
+; This testcase caused the combiner to go into an infinite loop, moving the
+; cast back and forth, changing the seteq to operate on int vs uint and back.
+
+; RUN: llvm-as < %s | opt -instcombine -disable-output
+
+bool %test(uint %A, int %B) {
+ %C = sub uint 0, %A
+ %Cc = cast uint %C to int
+ %D = sub int 0, %B
+ %E = seteq int %Cc, %D
+ ret bool %E
+}
+