blob: ff20d7db9483d672d0aeec50915f1d954f12bc98 [file] [log] [blame]
Chris Lattnere561cb52004-03-13 23:53:04 +00001; This testcase caused the combiner to go into an infinite loop, moving the
2; cast back and forth, changing the seteq to operate on int vs uint and back.
3
Dan Gohman18800922009-09-11 18:01:28 +00004; RUN: opt < %s -instcombine -disable-output
Chris Lattnere561cb52004-03-13 23:53:04 +00005
Tanya Lattner5640bd12008-03-01 09:15:35 +00006define i1 @test(i32 %A, i32 %B) {
7 %C = sub i32 0, %A ; <i32> [#uses=1]
8 %Cc = bitcast i32 %C to i32 ; <i32> [#uses=1]
9 %D = sub i32 0, %B ; <i32> [#uses=1]
10 %E = icmp eq i32 %Cc, %D ; <i1> [#uses=1]
11 ret i1 %E
Chris Lattnere561cb52004-03-13 23:53:04 +000012}
13