diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ec269ccc75c..1271002ab07 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-06-01 Aldy Hernandez + + * config/rs6000/rs6000.h (CANNOT_CHANGE_MODE_CLASS): Require + TARGET_SPE for SPE_VECTOR_MODE. + 2003-05-31 Aldy Hernandez * toplev.c (botch): Remove. diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index 4eaae019fa5..d40626f5846 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -1406,7 +1406,7 @@ enum reg_class #define CANNOT_CHANGE_MODE_CLASS(FROM, TO, CLASS) \ (GET_MODE_SIZE (FROM) != GET_MODE_SIZE (TO) \ ? reg_classes_intersect_p (FLOAT_REGS, CLASS) \ - : (SPE_VECTOR_MODE (FROM) + SPE_VECTOR_MODE (TO)) == 1 \ + : (TARGET_SPE && (SPE_VECTOR_MODE (FROM) + SPE_VECTOR_MODE (TO)) == 1) \ ? reg_classes_intersect_p (GENERAL_REGS, CLASS) \ : 0)