diff options
| author | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-22 21:12:05 +0000 |
|---|---|---|
| committer | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-22 21:12:05 +0000 |
| commit | e74b57b1d356418ebd2bd2d3a311065b4837f09f (patch) | |
| tree | fdc37934b95c6a3ee5e856551da88feb6fb16a38 | |
| parent | 0bd414df9c57a5ae04871149d75557548728add5 (diff) | |
| download | ppe42-gcc-e74b57b1d356418ebd2bd2d3a311065b4837f09f.tar.gz ppe42-gcc-e74b57b1d356418ebd2bd2d3a311065b4837f09f.zip | |
PR target/34529
* config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
Offset addresses are not valid for Altivec or paired float modes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@131741 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/config/rs6000/rs6000.c | 10 |
2 files changed, 10 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2f80c36e346..f882548bfa4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-01-22 David Edelsohn <edelsohn@gnu.org> + + PR target/34529 + * config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p): + Offset addresses are not valid for Altivec or paired float modes. + 2008-01-22 Jakub Jelinek <jakub@redhat.com> PR c++/34607 diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index c730a65fc29..83d8dbdc0d9 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -3365,19 +3365,17 @@ rs6000_legitimate_offset_address_p (enum machine_mode mode, rtx x, int strict) case V4SFmode: case V4SImode: /* AltiVec vector modes. Only reg+reg addressing is valid and - constant offset zero should not occur due to canonicalization. - Allow any offset when not strict before reload. */ - return !strict; + constant offset zero should not occur due to canonicalization. */ + return false; case V4HImode: case V2SImode: case V1DImode: case V2SFmode: /* Paired vector modes. Only reg+reg addressing is valid and - constant offset zero should not occur due to canonicalization. - Allow any offset when not strict before reload. */ + constant offset zero should not occur due to canonicalization. */ if (TARGET_PAIRED_FLOAT) - return !strict; + return false; /* SPE vector modes. */ return SPE_CONST_OFFSET_OK (offset); |

