aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Meissner <meissner@gcc.gnu.org>1996-03-14 20:20:34 +0000
committerMichael Meissner <meissner@gcc.gnu.org>1996-03-14 20:20:34 +0000
commit644d82dd237487c739a4b7a36f289be0c5a01f33 (patch)
treedfea73915a8cdf0e710889bab36611515c9ae6fb
parente0c228daf7a3c8dde2e419c190442b37f552c83f (diff)
downloadgcc-644d82dd237487c739a4b7a36f289be0c5a01f33.zip
gcc-644d82dd237487c739a4b7a36f289be0c5a01f33.tar.gz
gcc-644d82dd237487c739a4b7a36f289be0c5a01f33.tar.bz2
Fix bug with 8-16 byte structures not getting instantiated correctly
From-SVN: r11530
-rw-r--r--gcc/config/rs6000/rs6000.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index aa1e5f0..140ff27 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -1711,9 +1711,11 @@ typedef struct rs6000_args
? LEGITIMATE_ADDRESS_INTEGER_P (XEXP (X, 1), 4) \
: ! (INTVAL (XEXP (X, 1)) & 3))) \
&& ((MODE) != TImode \
+ || (TARGET_32BIT \
+ && LEGITIMATE_ADDRESS_INTEGER_P (XEXP (X, 1), 4)) \
|| (TARGET_64BIT \
- && ! (INTVAL (XEXP (X, 1)) & 3) \
- && LEGITIMATE_ADDRESS_INTEGER_P (XEXP (X, 1), 8))))
+ && ! (INTVAL (XEXP (X, 1)) & 3) \
+ && LEGITIMATE_ADDRESS_INTEGER_P (XEXP (X, 1), 8))))
#define LEGITIMATE_INDEXED_ADDRESS_P(X) \
(GET_CODE (X) == PLUS \