diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/arm.h | 5 |
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6fb2d9e..a07710d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-06-21 Paul Brook <paul@codesourcery.com> + + * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need + not imply FPA. + 2004-06-21 Roger Sayle <roger@eyesopen.com> * fold-const.c (operand_equal_p): Pass flags in recursive calls for diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index 9981ff0..21a5d60 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -1382,14 +1382,13 @@ enum reg_class HOST_WIDE_INT val = INTVAL (XEXP (X, 1)); \ HOST_WIDE_INT low, high; \ \ - if (MODE == DImode || (TARGET_SOFT_FLOAT && TARGET_FPA \ - && MODE == DFmode)) \ + if (MODE == DImode || (MODE == DFmode && TARGET_SOFT_FLOAT)) \ low = ((val & 0xf) ^ 0x8) - 0x8; \ else if (TARGET_MAVERICK && TARGET_HARD_FLOAT) \ /* Need to be careful, -256 is not a valid offset. */ \ low = val >= 0 ? (val & 0xff) : -((-val) & 0xff); \ else if (MODE == SImode \ - || (MODE == SFmode && TARGET_SOFT_FLOAT && TARGET_FPA) \ + || (MODE == SFmode && TARGET_SOFT_FLOAT) \ || ((MODE == HImode || MODE == QImode) && ! arm_arch4)) \ /* Need to be careful, -4096 is not a valid offset. */ \ low = val >= 0 ? (val & 0xfff) : -((-val) & 0xfff); \ |