diff options
author | Jeffrey A Law <law@cygnus.com> | 1997-09-18 07:45:15 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1997-09-18 01:45:15 -0600 |
commit | f05011492be2d32526bbc5303d1121dd70ed9a1c (patch) | |
tree | 8a1a9ac4080e909b10405adcdec0cceb176bcfb0 /gcc | |
parent | 5aa0f40f6a1d37b4ef6919263c7b65182150294a (diff) | |
download | gcc-f05011492be2d32526bbc5303d1121dd70ed9a1c.zip gcc-f05011492be2d32526bbc5303d1121dd70ed9a1c.tar.gz gcc-f05011492be2d32526bbc5303d1121dd70ed9a1c.tar.bz2 |
pa.md (reload_peepholes): Don't allow addresses with side effects for the memory operand.
* pa.md (reload_peepholes): Don't allow addresses with side
effects for the memory operand.
Geez, how long have we been screwing this up...
From-SVN: r15536
Diffstat (limited to 'gcc')
-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 1d12a8f..c199435 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 1844a6e..138f675 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]))" "* |