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)


On 06/24/2009 08:46 AM, Andreas Schwab wrote:
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.

Ah. Then perhaps a trap insn might be more appropriate (and slightly less confusing)?


r~



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