diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1997-09-18 07:45:15 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1997-09-18 07:45:15 +0000 |
commit | cb8e5f7950ab7dc5b59acd99a1fbe541a797ff0c (patch) | |
tree | 8a1a9ac4080e909b10405adcdec0cceb176bcfb0 | |
parent | ffe23fb673c7f0713c215fcefdd029fa7bed6909 (diff) | |
download | gcc-cb8e5f7950ab7dc5b59acd99a1fbe541a797ff0c.tar.gz |
* pa.md (reload_peepholes): Don't allow addresses with side
effects for the memory operand.
Geez, how long have we been screwing this up...
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@15536 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.md | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1d12a8f6fe5..c199435e7ae 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com) + + * pa.md (reload_peepholes): Don't allow addresses with side + effects for the memory operand. + Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com> * libgcc2.c (find_exception_handler): Subtract one from our PC when diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index 1844a6ea844..138f675af00 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -4846,6 +4846,7 @@ && GET_MODE (operands[0]) == DFmode && GET_CODE (operands[1]) == REG && GET_CODE (operands[2]) == REG + && ! side_effects_p (XEXP (operands[0], 0)) && REGNO_REG_CLASS (REGNO (operands[1])) == REGNO_REG_CLASS (REGNO (operands[2]))" "* @@ -4885,6 +4886,7 @@ && GET_MODE (operands[0]) == DFmode && GET_CODE (operands[0]) == REG && GET_CODE (operands[2]) == REG + && ! side_effects_p (XEXP (operands[1], 0)) && REGNO_REG_CLASS (REGNO (operands[0])) == REGNO_REG_CLASS (REGNO (operands[2]))" "* |