Commit fefac463 by Aldy Hernandez Committed by Aldy Hernandez

reload1.c (forget_old_reloads_1): Do not use subreg offset.

2002-05-15  Aldy Hernandez  <aldyh@redhat.com>

        * reload1.c (forget_old_reloads_1): Do not use subreg offset.

From-SVN: r53496
parent 5f004351
2002-05-15 Aldy Hernandez <aldyh@redhat.com> 2002-05-15 Aldy Hernandez <aldyh@redhat.com>
* reload1.c (forget_old_reloads_1): Do not use subreg offset.
2002-05-15 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.md ("altivec_mtvscr"): Set VSCR register. * config/rs6000/rs6000.md ("altivec_mtvscr"): Set VSCR register.
("altivec_mfvscr"): Read from VSCR. ("altivec_mfvscr"): Read from VSCR.
......
...@@ -4098,23 +4098,21 @@ forget_old_reloads_1 (x, ignored, data) ...@@ -4098,23 +4098,21 @@ forget_old_reloads_1 (x, ignored, data)
{ {
unsigned int regno; unsigned int regno;
unsigned int nr; unsigned int nr;
int offset = 0;
/* note_stores does give us subregs of hard regs, /* note_stores does give us subregs of hard regs,
subreg_regno_offset will abort if it is not a hard reg. */ subreg_regno_offset will abort if it is not a hard reg. */
while (GET_CODE (x) == SUBREG) while (GET_CODE (x) == SUBREG)
{ {
offset += subreg_regno_offset (REGNO (SUBREG_REG (x)), /* We ignore the subreg offset when calculating the regno,
GET_MODE (SUBREG_REG (x)), because we are using the entire underlying hard register
SUBREG_BYTE (x), below. */
GET_MODE (x));
x = SUBREG_REG (x); x = SUBREG_REG (x);
} }
if (GET_CODE (x) != REG) if (GET_CODE (x) != REG)
return; return;
regno = REGNO (x) + offset; regno = REGNO (x);
if (regno >= FIRST_PSEUDO_REGISTER) if (regno >= FIRST_PSEUDO_REGISTER)
nr = 1; nr = 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment