[rfa/ppc] prologue parser tweaks

Andrew Cagney cagney@gnu.org
Fri Mar 19 00:10:00 GMT 2004


>>> +
>>> +      if ((op & 0xfc1fffff) == 0x7c0802a6)
>>> +	{			/* mflr Rx */
>>> +	  /* Since shared library / PIC code, which needs to get its
>>> +	     address at runtime, can appear to save more than one link
>>> +	     register vis:
>>> +
>>> +	     *INDENT-OFF*
>>> +	     stwu r1,-304(r1)
>>> +	     mflr r3
>>> +	     bl 0xff570d0 (blrl)
>>> +	     stw r30,296(r1)
>>> +	     mflr r30
>>> +	     stw r31,300(r1)
>>> +	     stw r3,308(r1);
>>> +	     ...
>>> +	     *INDENT-ON*
>>> +
>>> +	     remember just the first one, but skip over additional
>>> +	     ones.  */
>>> +	  if (lr_reg < 0)
>>> +	    lr_reg = (op & 0x03e00000);
>>> +	  continue;
>>> +	}
>>>  
>>>        if ((op & 0xfc1fffff) == 0x7c0802a6)
>>>  	{			/* mflr Rx */
> 
> 
> The above is okay so long as you remove the old "mflr Rx" test.

I've checked this part in, I'll follow up the other part later.

Andrew

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diffs
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20040319/ee65368e/attachment.ksh>


More information about the Gdb-patches mailing list