aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
diff options
context:
space:
mode:
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>2015-07-09 02:50:07 +0000
committerTrevor Saunders <tbsaunde@gcc.gnu.org>2015-07-09 02:50:07 +0000
commit58f2ae18ff4d776b9e682e59d99391fbc515d351 (patch)
tree46c8ef20e4e8f82019d6ebb3346caa847ecb58a5 /gcc/rtlanal.c
parentbe1a835d86647f081c681ea8fa3e46e66f275b2e (diff)
downloadgcc-58f2ae18ff4d776b9e682e59d99391fbc515d351.zip
gcc-58f2ae18ff4d776b9e682e59d99391fbc515d351.tar.gz
gcc-58f2ae18ff4d776b9e682e59d99391fbc515d351.tar.bz2
always define SHORT_IMMEDIATES_SIGN_EXTEND
gcc/ChangeLog: 2015-07-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * combine.c (update_rsp_from_reg_equal): Don't check if SHORT_IMMEDIATES_SIGN_EXTEND is defined. (reg_nonzero_bits_for_combine): Likewise. * config/alpha/alpha.h: Define SHORT_IMMEDIATES_SIGN_EXTEND to 1. * config/frv/frv.h: Likewise. * config/lm32/lm32.h: Likewise. * config/mep/mep.h: Likewise. * config/mips/mips.h: Likewise. * config/rs6000/rs6000.h: Likewise. * config/sh/sh.h: Likewise. * config/tilegx/tilegx.h (enum reg_class): Likewise. * config/tilepro/tilepro.h: Likewise. * defaults.h: Add default for SHORT_IMMEDIATES_SIGN_EXTEND. * doc/tm.texi: Regenerate. * doc/tm.texi.in: Adjust. * rtlanal.c (nonzero_bits1): Likewise. From-SVN: r225593
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r--gcc/rtlanal.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 854d741..e910ae7 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -4327,14 +4327,12 @@ nonzero_bits1 (const_rtx x, machine_mode mode, const_rtx known_x,
}
case CONST_INT:
-#ifdef SHORT_IMMEDIATES_SIGN_EXTEND
/* If X is negative in MODE, sign-extend the value. */
- if (INTVAL (x) > 0
+ if (SHORT_IMMEDIATES_SIGN_EXTEND && INTVAL (x) > 0
&& mode_width < BITS_PER_WORD
&& (UINTVAL (x) & ((unsigned HOST_WIDE_INT) 1 << (mode_width - 1)))
!= 0)
return UINTVAL (x) | (HOST_WIDE_INT_M1U << mode_width);
-#endif
return UINTVAL (x);