diff options
Diffstat (limited to 'test/CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll')
-rw-r--r-- | test/CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/test/CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll b/test/CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll index 10c50f9c8a..d4a74c9e7e 100644 --- a/test/CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll +++ b/test/CodeGen/X86/2010-02-19-TailCallRetAddrBug.ll @@ -3,17 +3,17 @@ ; Bug 6225 ; ; If a call is a fastcc tail call and tail call optimization is enabled, the -; caller frame is replaced by the callee frame. This can require that arguments are +; caller frame is replaced by the callee frame. This can require that arguments are ; placed on the former return address stack slot. Special care needs to be taken ; taken that the return address is moved / or stored in a register before ; lowering of arguments potentially overwrites the value. ; -; Move return address (60(%esp)) to a temporary register (%ebp) -; CHECK: movl 60(%esp), [[REGISTER:%[a-z]+]] +; Move return address (76(%esp)) to a temporary register (%ebp) +; CHECK: movl 76(%esp), [[REGISTER:%[a-z]+]] ; Overwrite return addresss -; CHECK: movl [[EBX:%[a-z]+]], 60(%esp) +; CHECK: movl [[EBX:%[a-z]+]], 76(%esp) ; Move return address from temporary register (%ebp) to new stack location (60(%esp)) -; CHECK: movl [[REGISTER]], 44(%esp) +; CHECK: movl [[REGISTER]], 60(%esp) %tupl_p = type [9 x i32]* @@ -51,3 +51,5 @@ false: tail call fastcc void @l298(i32 %r10, i32 %r9, i32 %r4) noreturn nounwind ret void } + + |