diff options
author | David Edelsohn <edelsohn@gnu.org> | 2004-02-06 04:28:46 +0000 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2004-02-05 23:28:46 -0500 |
commit | 403c659ca64b07f78acf0b13fefa2a35ad7abefe (patch) | |
tree | 27849ba91e53ac6b62474ea2284b0b2531384c4a /gcc | |
parent | 5b54717271169e5f8c5ced2c774fdd1975a1a6f7 (diff) | |
download | gcc-403c659ca64b07f78acf0b13fefa2a35ad7abefe.zip gcc-403c659ca64b07f78acf0b13fefa2a35ad7abefe.tar.gz gcc-403c659ca64b07f78acf0b13fefa2a35ad7abefe.tar.bz2 |
reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs with inner_regno, not regno.
* reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs
with inner_regno, not regno.
* rtlanal.c (refers_to_regno_p): Same.
From-SVN: r77370
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/reload.c | 4 | ||||
-rw-r--r-- | gcc/rtlanal.c | 4 |
3 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f9d8f0e..dff1b52 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-02-05 David Edelsohn <edelsohn@gnu.org> + + * reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs + with inner_regno, not regno. + * rtlanal.c (refers_to_regno_p): Same. + 2004-02-05 Kazu Hirata <kazu@cs.umass.edu> * config.gcc: Remove i370 support. diff --git a/gcc/reload.c b/gcc/reload.c index ae123cf..b649a99 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -6188,8 +6188,8 @@ refers_to_regno_for_reload_p (unsigned int regno, unsigned int endregno, { unsigned int inner_regno = subreg_regno (x); unsigned int inner_endregno - = inner_regno + (regno < FIRST_PSEUDO_REGISTER - ? hard_regno_nregs[regno][GET_MODE (x)] : 1); + = inner_regno + (inner_regno < FIRST_PSEUDO_REGISTER + ? hard_regno_nregs[inner_regno][GET_MODE (x)] : 1); return endregno > inner_regno && regno < inner_endregno; } diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index e858930..994d389 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1449,8 +1449,8 @@ refers_to_regno_p (unsigned int regno, unsigned int endregno, rtx x, { unsigned int inner_regno = subreg_regno (x); unsigned int inner_endregno - = inner_regno + (regno < FIRST_PSEUDO_REGISTER - ? hard_regno_nregs[regno][GET_MODE (x)] : 1); + = inner_regno + (inner_regno < FIRST_PSEUDO_REGISTER + ? hard_regno_nregs[inner_regno][GET_MODE (x)] : 1); return endregno > inner_regno && regno < inner_endregno; } |