diff options
author | John David Anglin <dave@hiauly1.hia.nrc.ca> | 2002-02-10 17:27:55 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2002-02-10 17:27:55 +0000 |
commit | 276ef573ed264b5448fb6d7d050a8e19f095bae5 (patch) | |
tree | b90bf1cd6eee51fbc5da8ef4783318da352a7d1d | |
parent | 02669b681ed493f523510039c4ee65fd8d569424 (diff) | |
download | gcc-276ef573ed264b5448fb6d7d050a8e19f095bae5.zip gcc-276ef573ed264b5448fb6d7d050a8e19f095bae5.tar.gz gcc-276ef573ed264b5448fb6d7d050a8e19f095bae5.tar.bz2 |
pa.c (reg_before_reload_operand): Don't accept a SUBREG operand.
* pa.c (reg_before_reload_operand): Don't accept a SUBREG operand.
* pa.h (PREDICATE_CODES): Adjust codes for reg_before_reload_operand.
From-SVN: r49654
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.c | 4 | ||||
-rw-r--r-- | gcc/config/pa/pa.h | 2 |
3 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ed290fb..a158313 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-02-10 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * pa.c (reg_before_reload_operand): Don't accept a SUBREG operand. + * pa.h (PREDICATE_CODES): Adjust codes for reg_before_reload_operand. + 2002-02-09 David O'Brien <obrien@FreeBSD.org> * config/sparc/freebsd.h(TARGET_DEFAULT): Add MASK_EPILOGUE setting and diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 423ee62..05a0fa6 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -387,6 +387,10 @@ reg_before_reload_operand (op, mode) register rtx op; enum machine_mode mode; { + /* Don't accept a SUBREG since it will need a reload. */ + if (GET_CODE (op) == SUBREG) + return 0; + if (register_operand (op, mode)) return 1; diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 99099a0..210a7f3 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1925,7 +1925,7 @@ while (0) CONST_DOUBLE, CONST, HIGH, CONSTANT_P_RTX}}, \ {"symbolic_operand", {SYMBOL_REF, LABEL_REF, CONST}}, \ {"symbolic_memory_operand", {SUBREG, MEM}}, \ - {"reg_before_reload_operand", {SUBREG, MEM}}, \ + {"reg_before_reload_operand", {REG, MEM}}, \ {"reg_or_nonsymb_mem_operand", {SUBREG, REG, MEM}}, \ {"reg_or_0_or_nonsymb_mem_operand", {SUBREG, REG, MEM, CONST_INT, \ CONST_DOUBLE}}, \ |