On 10/15/2014 11:07 AM, Olivier Hainque wrote:
for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
{
+ enum machine_mode save_mode = targetm.dwarf_frame_reg_mode (i);
+ rtx span;
+ span = targetm.dwarf_register_span (gen_rtx_REG (save_mode, i));
+ if (!span)
+ init_one_dwarf_reg_size (i, save_mode, mem, mode, &wrote_return_column);
+ else
{
+ for (int si = 0; si < XVECLEN (span, 0); si++)
{
+ rtx reg = XVECEXP (span, 0, si);
+ init_one_dwarf_reg_size
+ (REGNO (reg), GET_MODE (reg), mem, mode, &wrote_return_column);
+ }
}
}
What happens when the outer loop hits a register that we've already seen
as part of a span?
Jason