This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH/RFC] Avoid invalid subregs during reload, call for testers
On Wed, Dec 06, 2006 at 07:29:23PM +0100, Rask Ingemann Lambertsen wrote:
> On Wed, Dec 06, 2006 at 07:59:05AM -0800, Ian Lance Taylor wrote:
> [first part of reload1.c patch]
> > This part of the patch is OK.
>
> I'll retest with just this part of the patch.
It passed bootstrap and testing on i686-pc-linux-gnu with all default
languages with no new failures. Please commit.
ChangeLog:
2006-12-04 Rask Ingemann Lambertsen <rask@sygehus.dk>
* reload1.c (choose_reload_regs): Don't set byte offset when
resolving subregs of hard regs.
Index: reload1.c
===================================================================
--- reload1.c (revision 119451)
+++ reload1.c (working copy)
@@ -5622,10 +5622,11 @@ choose_reload_regs (struct insn_chain *c
else if (GET_CODE (rld[r].in_reg) == SUBREG
&& REG_P (SUBREG_REG (rld[r].in_reg)))
{
- byte = SUBREG_BYTE (rld[r].in_reg);
regno = REGNO (SUBREG_REG (rld[r].in_reg));
if (regno < FIRST_PSEUDO_REGISTER)
regno = subreg_regno (rld[r].in_reg);
+ else
+ byte = SUBREG_BYTE (rld[r].in_reg);
mode = GET_MODE (rld[r].in_reg);
}
#ifdef AUTO_INC_DEC
--
Rask Ingemann Lambertsen