diff options
author | Chris Lattner <sabre@nondot.org> | 2011-01-14 00:01:01 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2011-01-14 00:01:01 +0000 |
commit | d7540414935fb30405ed07a9b193d3f8748f5274 (patch) | |
tree | ef31a6f314c12702e92c24d16f78fc61b3b166ad /lib/CodeGen/MachineBasicBlock.cpp | |
parent | eea666f216ad3a8f8cd88a969176f86add7228f3 (diff) |
fix PR8961 - a fast isel miscompilation where we'd insert a new instruction
after sext's generated for addressing that got folded. Previously we compiled
test5 into:
_test5: ## @test5
## BB#0:
movq -8(%rsp), %rax ## 8-byte Reload
movq (%rdi,%rax), %rdi
addq %rdx, %rdi
movslq %esi, %rax
movq %rax, -8(%rsp) ## 8-byte Spill
movq %rdi, %rax
ret
which is insane and wrong. Now we produce:
_test5: ## @test5
## BB#0:
movslq %esi, %rax
movq (%rdi,%rax), %rax
addq %rdx, %rax
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123414 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineBasicBlock.cpp')
0 files changed, 0 insertions, 0 deletions