disable this instcombine xform, it miscompiles:
authorChris Lattner <sabre@nondot.org>
Fri, 28 Dec 2007 06:24:31 +0000 (06:24 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 28 Dec 2007 06:24:31 +0000 (06:24 +0000)
commitc48b138869fdf0aac87c924366a455aacf6cde0f
tree33a5d05940fed654fb17e5644840f0013944cc33
parent166a268656c6e0e2f32c92f7bc021286ad669c9a
disable this instcombine xform, it miscompiles:

define i32 @main() {
entry:
%z = alloca i32 ; <i32*> [#uses=2]
store i32 0, i32* %z
%tmp = load i32* %z ; <i32> [#uses=1]
%sub = sub i32 %tmp, 1 ; <i32> [#uses=1]
%cmp = icmp ult i32 %sub, 0 ; <i1> [#uses=1]
%retval = select i1 %cmp, i32 1, i32 0 ; <i32> [#uses=1]
ret i32 %retval
}

into ret 1, instead of ret 0.

Christopher, please investigate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45383 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/InstructionCombining.cpp