This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: RTL checking fails (solaris2, irix6 & x86) SUBREG_BYTE related?
- To: gcc-bugs at gcc dot gnu dot org, ghazi at caip dot rutgers dot edu
- Subject: Re: RTL checking fails (solaris2, irix6 & x86) SUBREG_BYTE related?
- From: Andrew Macleod <amacleod at cygnus dot com>
- Date: Fri, 6 Apr 2001 19:19:00 -0700
- Cc: amacleod at redhat dot com
Give this a try, it bootstraps for me now.
OK to commit?
Andrew
* function.c (purge_single_hard_subreg_set): Only check REGNO if
the subreg was a hard register. Pseudos are left as subregs.
*** /src/egcs0403/egcs/gcc/function.c Fri Apr 6 11:08:53 2001
--- ./function.c Fri Apr 6 18:27:05 2001
*************** purge_single_hard_subreg_set (pattern)
*** 3456,3462 ****
}
! if (REGNO (reg) < FIRST_PSEUDO_REGISTER)
{
reg = gen_rtx_REG (mode, REGNO (reg) + offset);
SET_DEST (pattern) = reg;
--- 3456,3462 ----
}
! if (GET_CODE (reg) == REG && REGNO (reg) < FIRST_PSEUDO_REGISTER)
{
reg = gen_rtx_REG (mode, REGNO (reg) + offset);
SET_DEST (pattern) = reg;