diff options
author | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-02-06 04:28:46 +0000 |
---|---|---|
committer | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-02-06 04:28:46 +0000 |
commit | aee171c876e923b0119144e69dade780c5952850 (patch) | |
tree | 27849ba91e53ac6b62474ea2284b0b2531384c4a /gcc | |
parent | 10af081f9b5f8e9b4cd903af2e408c8ab04b7df4 (diff) | |
download | gcc-aee171c876e923b0119144e69dade780c5952850.tar.gz |
* reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs
with inner_regno, not regno.
* rtlanal.c (refers_to_regno_p): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77370 138bc75d-0d04-0410-961f-82ee72b054a4
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 f9d8f0e2385..dff1b5281e2 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 ae123cffdca..b649a9938a1 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 e8589306409..994d3892ee7 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; } |