On 04/18/2014 11:31 PM, Richard Henderson wrote:
> On 04/17/2014 10:14 AM, DJ Delorie wrote:
>> _medium_frame:                           
>>         pushm   r6-r12                   
>>         add     #-4, r0, r6              ; marked frame-related (fp = sp - 4)
>>         mov.L   r6, r0                   ; marked frame-related (sp = fp)
> 
> There's your bug.  If the frame pointer is required, you shouldn't mark that
> third insn as frame related.
> 
> With this sequence, the auto-guessing code is assuming that r6 is just a
> computational temporary and that sp is still the cfa.

This auto-guessing mistake is why I strongly recommend not using it if
possible.  Better to use explicit REG_CFA_DEF_CFA (et al) notes.  Certainly
one *must* use the explicit notes for the epilogue.


r~

Reply via email to