fix PR10605 / rdar://9930964 by adding a pretty scary missed check.
authorChris Lattner <sabre@nondot.org>
Thu, 11 Aug 2011 06:26:54 +0000 (06:26 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 11 Aug 2011 06:26:54 +0000 (06:26 +0000)
commitf4ea68fa5a85d3e883cf35075133e64de4dfc046
tree1c5a5891952433f234bff3416684ba8535659651
parentb02c0ace207333fb5c66ea6826531ed2f7cee532
fix PR10605 / rdar://9930964 by adding a pretty scary missed check.
It's somewhat surprising anything works without this.  Before we would
compile the testcase into:

test:                                   # @test
movl $4, 8(%rdi)
movl 8(%rdi), %eax
orl %esi, %eax
cmpl $32, %edx
movl %eax, -4(%rsp)          # 4-byte Spill
je .LBB0_2

now we produce:

test:                                   # @test
movl 8(%rdi), %eax
movl $4, 8(%rdi)
orl %esi, %eax
cmpl $32, %edx
movl %eax, -4(%rsp)          # 4-byte Spill
je .LBB0_2

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137303 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
test/CodeGen/X86/fast-isel-gep.ll