diff options
author | Owen Anderson <resistor@mac.com> | 2010-09-20 20:39:59 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2010-09-20 20:39:59 +0000 |
commit | 4a9f150926d593b30354db76d8d061fe4c9d124d (patch) | |
tree | f6470be3ce76c543587a91e9a1de1ce2d1018255 /test | |
parent | 1dc335a79f5e899aacc6710dfe08ef20abb6a6c0 (diff) | |
download | llvm-4a9f150926d593b30354db76d8d061fe4c9d124d.tar.gz llvm-4a9f150926d593b30354db76d8d061fe4c9d124d.tar.bz2 llvm-4a9f150926d593b30354db76d8d061fe4c9d124d.tar.xz |
When TCO is turned on, it is possible to end up with aliasing FrameIndex's. Therefore,
CombinerAA cannot assume that different FrameIndex's never alias, but can instead use
MachineFrameInfo to get the actual offsets of these slots and check for actual aliasing.
This fixes CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll and CodeGen/X86/tailcallstack64.ll
when CombinerAA is enabled, modulo a different register allocation sequence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114348 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll b/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll index 35434ffafa..8fe0309421 100644 --- a/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll +++ b/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll @@ -19,8 +19,8 @@ entry: } ; CHECK: movq ___stack_chk_guard@GOTPCREL(%rip), %rax -; CHECK: movb (%rsp), %dl -; CHECK-NEXT: movb 30(%rsp), %sil -; CHECK: movb %dl, (%rsp) -; CHECK-NEXT: movb %sil, 30(%rsp) +; CHECK: movb 30(%rsp), %dl +; CHECK: movb (%rsp), %sil +; CHECK: movb %sil, (%rsp) +; CHECK: movb %dl, 30(%rsp) ; CHECK: callq ___stack_chk_fail |