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)


Jakub Jelinek <jakub@redhat.com> writes:

> On Wed, Jun 24, 2009 at 10:28:39AM -0700, Richard Henderson wrote:
>> On 06/24/2009 10:15 AM, Jakub Jelinek wrote:
>>>   	bl	HIDDEN_JUMPTARGET (__fortify_fail);	\
>>>   .Lok:							\
>>> 	mr	r1, reg;				\
>>> +	cfi_adjust_cfa_offset (-112);			\
>>> +	cfi_same_value (lr)
>>>
>>> and remove the mr r1, r14 resp. mr r1, r22 from __longjmp-common.S?
>>> Then you don't need to add any extra insn.
>>
>> The cfa is incorrect for the duration of the mr r1 insn.
>
> Ah, but in that case can't be the cfi directives be right after bl?

I tried that, but then gdb cannot backtrace through ____longjmp_chk any
more (it says "Backtrace stopped: frame did not save the PC").

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"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]