This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Fix ____longjmp_chk for ppc(64)
- From: Andreas Schwab <aschwab at redhat dot com>
- To: Richard Henderson <rth at twiddle dot net>
- Cc: libc-alpha at sourceware dot org
- Date: Wed, 24 Jun 2009 17:46:42 +0200
- Subject: Re: Fix ____longjmp_chk for ppc(64)
- References: <m3k531x1em.fsf@hase.home> <4A423FD5.6050601@twiddle.net>
Richard Henderson <rth@twiddle.net> writes:
> On 06/24/2009 05:27 AM, Andreas Schwab wrote:
>> + mflr r0; \
>> + std r0,16(r1); \
>> + stdu r1,-112(r1); \
>> + cfi_adjust_cfa_offset (112); \
>> + cfi_offset (lr, 16); \
>> ld r3,.LC1@toc(2); \
>> bl HIDDEN_JUMPTARGET (__fortify_fail); \
>> + addi r1,r1,112; \
>> + cfi_adjust_cfa_offset (-112); \
>> + cfi_same_value (lr); \
>> .Lok:
>
> __fortify_fail doesn't return, does it? So, why are you
> adding the stack adjustment after the return?
Just to be able to attach the cfi to it. It would be wrong to attach it
to the branch.
Andreas.
--
Andreas Schwab, aschwab@redhat.com
GPG Key fingerprint = D4E8 DBE3 3813 BB5D FA84 5EC7 45C6 250E 6F00 984E
"And now for something completely different."