summaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/rs6000.c
diff options
context:
space:
mode:
authoreager <eager@138bc75d-0d04-0410-961f-82ee72b054a4>2009-05-04 15:57:46 +0000
committereager <eager@138bc75d-0d04-0410-961f-82ee72b054a4>2009-05-04 15:57:46 +0000
commitc440daea3c9ab8fcebb25371e6808c93abfecf98 (patch)
tree7da32a6c180e25ea1b76ea2d22ac321009a98ded /gcc/config/rs6000/rs6000.c
parent498670de76b1945da9556563a9e5f488d122c600 (diff)
downloadgcc-c440daea3c9ab8fcebb25371e6808c93abfecf98.tar.gz
Allow address for DImode/DFmode only if double-precision FP regs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147105 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/rs6000.c')
-rw-r--r--gcc/config/rs6000/rs6000.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index c168b19935d..4e230439098 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -4458,7 +4458,7 @@ rs6000_legitimate_address (enum machine_mode mode, rtx x, int reg_ok_strict)
if (mode != TImode
&& mode != TFmode
&& mode != TDmode
- && ((TARGET_HARD_FLOAT && TARGET_FPRS)
+ && ((TARGET_HARD_FLOAT && TARGET_FPRS && TARGET_DOUBLE_FLOAT)
|| TARGET_POWERPC64
|| (mode != DFmode && mode != DDmode)
|| (TARGET_E500_DOUBLE && mode != DDmode))