This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fix ____longjmp_chk for ppc(64)


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."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]