1 2004-01-16 Segher Boessenkool <boessen@de.ibm.com>
4 * config/rs6000/rs6000.h (LEGITIMATE_CONSTANT_P): Handle
7 diff -u -r1.237.2.8 -r1.237.2.9
8 --- gcc/gcc/config/rs6000/rs6000.h 2003/06/18 06:21:37 1.237.2.8
9 +++ gcc/gcc/config/rs6000/rs6000.h 2004/01/16 15:05:37 1.237.2.9
10 @@ -1993,9 +1993,11 @@
13 #define LEGITIMATE_CONSTANT_P(X) \
14 - (GET_CODE (X) != CONST_DOUBLE || GET_MODE (X) == VOIDmode \
15 - || (TARGET_POWERPC64 && GET_MODE (X) == DImode) \
16 - || easy_fp_constant (X, GET_MODE (X)))
17 + ((GET_CODE (X) != CONST_VECTOR \
18 + || zero_constant (X, GET_MODE (X))) \
19 + && (GET_CODE (X) != CONST_DOUBLE || GET_MODE (X) == VOIDmode \
20 + || (TARGET_POWERPC64 && GET_MODE (X) == DImode) \
21 + || easy_fp_constant (X, GET_MODE (X))))
23 /* The macros REG_OK_FOR..._P assume that the arg is a REG rtx
24 and check its validity for a certain class.