From: aoliva Date: Sat, 2 Apr 2005 16:56:27 +0000 (+0000) Subject: PR middle-end/20491 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=38279ed40a095ce873b028f7a4dd5a712fb7a54f;p=thirdparty%2Fgcc.git PR middle-end/20491 * final.c (alter_subreg): Don't call subreg_regno for a non-REG. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97444 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f9f53e008cf2..d03fcf914f29 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-04-02 Alexandre Oliva + + PR middle-end/20491 + * final.c (alter_subreg): Don't call subreg_regno for a non-REG. + 2005-04-02 Alexandre Oliva PR rtl-optimization/20290 diff --git a/gcc/final.c b/gcc/final.c index ea842550cfbf..aee4ea973fdb 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -2547,11 +2547,10 @@ alter_subreg (rtx *xp) if (new != 0) *xp = new; - else + else if (REG_P (y)) { /* Simplify_subreg can't handle some REG cases, but we have to. */ unsigned int regno = subreg_regno (x); - gcc_assert (REG_P (y)); *xp = gen_rtx_REG_offset (y, GET_MODE (x), regno, SUBREG_BYTE (x)); } }