; This bug has to do with the fact that constant propagation was implemented in ; terms of _logical_ not (! in C) instead of _bitwise_ not (~ in C). This was ; due to a spec change. ; Fix #2: The unary not instruction now no longer exists. Change to xor. ; RUN: opt < %s -constprop -S | \ ; RUN: not grep {i32 0} define i32 @test1() { %R = xor i32 123, -1 ; <i32> [#uses=1] ret i32 %R } define i32 @test2() { %R = xor i32 -123, -1 ; <i32> [#uses=1] ret i32 %R }