[PATCH] Fix AMD64 backtrace
Andreas Jaeger
aj@suse.de
Sun Jan 11 19:28:00 GMT 2004
Jakub Jelinek <jakub@redhat.com> writes:
> On Sun, Jan 11, 2004 at 01:17:52PM +0100, Andreas Jaeger wrote:
>> /* Load the new stack pointer, the preserved registers and
>> registers used for passing args. */
>> cfi_def_cfa(%rdi, 0)
>> cfi_offset(%rbx,oRBX)
>> cfi_offset(%rbp,oRBP)
>> cfi_offset(%r12,oR12)
>> cfi_offset(%r13,oR13)
>> cfi_offset(%r14,oR14)
>> cfi_offset(%r15,oR15)
>> cfi_offset(%rsp,oRSP)
>> cfi_offset(%rip,oRIP)
>>
>> movq oRSP(%rdi), %rsp
>> movq oRBX(%rdi), %rbx
>> movq oRBP(%rdi), %rbp
>> movq oR12(%rdi), %r12
>> movq oR13(%rdi), %r13
>> movq oR14(%rdi), %r14
>> movq oR15(%rdi), %r15
>>
>> /* The following ret should return to the address set with
>> getcontext. Therefore push the address on the stack. */
>> movq oRIP(%rdi), %rcx
>> pushq %rcx
>> cfi_adjust_cfa_offset(8)
>
> pushq %rcx modifies %rsp, but current CFI here is %rdi
> which is unchanged.
Thanks! I'll commit with that change once I get approval for the
sysdeps/generic/sysdep.h change...
Andreas
--
Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj
SuSE Linux AG, Maxfeldstr. 5, 90409 Nürnberg, Germany
GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-hacker/attachments/20040111/75a2242d/attachment.sig>
More information about the Libc-hacker
mailing list