[PATCH 2/3] Aarch64: Detect FP regs in signal frames

Alan Hayward Alan.Hayward@arm.com
Mon Oct 1 14:26:00 GMT 2018



> On 30 Sep 2018, at 05:36, Simon Marchi <simark@simark.ca> wrote:
> 
> On 2018-09-17 8:53 a.m., Alan Hayward wrote:
>> Both the VFP and SVE registers may be contained within the reserved space of
>> the sigcontext and can be found by seraching for MAGIC values. Detect these
>> and add the registers (including pseudos) to the trad frame cache.
> 
> Hi Alan,
> 
> I don't know by heart all the intricacies of aarch64/sve, so I wouldn't spot
> a subtle mistake, but overall this made sense to me.  I noted a few formatting
> nits.  Unless somebody with more AArche64 knowledge wants to take a look, I'd say
> this is ok to go in with the nits fixed.
> 
> I was a bit surprised that it was necessary to provide the value even for pseudo registers.
> I would have expected that only raw registers would be sufficient, and that
> tramp_frame_prev_register would reconstruct the value of pseudo ones based on the value
> of raw ones.  But there's nothing dealing with pseudo registers in there, so I guess
> it's necessary to provide all of them.

Yes, this confused me for a while too.
I guess the ultimate solution would be to fix trap frames to understand pseudo registers.
Not sure how tricky that would be.

> 
> 
>> +	case AARCH64_EXTRA_MAGIC:
>> +	  {
>> +	    /* Extra is always the penultimate section in reserved and points to
>> +	       an block of memory block of sections.  Reset the address to the
> 
> "an block".  Also, not sure if "a block of memory block of sections" is really what you meant,
> or just "a memory block of sections”?

Updated this to
	    /* Extra is always the last valid section in reserved and points to
	       an additional block of memory filled with more sections. Reset
	       the address to the extra section and continue looking for more
	       structures.  */

And pushed with the additional nits fixed too.

Thanks for the review!

Alan.



More information about the Gdb-patches mailing list