This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: Handle multi-word regsiters in REG_CFA_RESTORE notes


On 09/21/2011 07:55 AM, Bernd Schmidt wrote:
> On 09/15/11 21:42, Richard Henderson wrote:
>> On 09/14/2011 06:12 PM, Bernd Schmidt wrote:
>>> +  unsigned int orig_regno = REGNO (reg);
>>> +  int nregs = hard_regno_nregs[orig_regno][GET_MODE (reg)];
>>> +  while (nregs-- > 0)
>>
>> The rest of the file seems to use targetm.dwarf_register_span.
>> This probably ought to do the same.
> 
> I guess I am confused what dwarf_register_span is supposed to accomplish
> that a loop over nregs couldn't. For little endian MIPS, it returns
> NULL, so I don't think it would solve the problem I'm trying to fix.

Why, then, is this the only place in dwarf2cfi that needs to handle
registers via a loop over nregs?  It seems to me that we should either
be handling multi-register spans everywhere or nowhere.

Because alternately, this could be a bug in your backend that you
failed to add two RESTORE notes instead of just one...


r~


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