diff options
author | Oleg Endo <olegendo@gcc.gnu.org> | 2012-07-16 21:16:52 +0000 |
---|---|---|
committer | Oleg Endo <olegendo@gcc.gnu.org> | 2012-07-16 21:16:52 +0000 |
commit | 4111c296f20d0a276a218fd2bbb9308280f86b72 (patch) | |
tree | 25e826d36279ac2dd1fcdec8a51a7e5085f314c1 /gcc | |
parent | 7bd3f65f01bbacf522d7e437be4b521fe0f3fb46 (diff) | |
download | gcc-4111c296f20d0a276a218fd2bbb9308280f86b72.zip gcc-4111c296f20d0a276a218fd2bbb9308280f86b72.tar.gz gcc-4111c296f20d0a276a218fd2bbb9308280f86b72.tar.bz2 |
sh.h (CONST_OK_FOR_I06): Delete.
* config/sh/sh.h (CONST_OK_FOR_I06): Delete.
(CONST_OK_FOR_I10): Move macro to ...
* config/sh/sh.c: ... here.
(sh_legitimate_index_p): Use satisfies_constraint_I06 instead of
CONST_OK_FOR_I06.
From-SVN: r189551
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 5 | ||||
-rw-r--r-- | gcc/config/sh/sh.h | 4 |
3 files changed, 12 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a983274..f9fd723 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,13 @@ 2012-07-16 Oleg Endo <olegendo@gcc.gnu.org> + * config/sh/sh.h (CONST_OK_FOR_I06): Delete. + (CONST_OK_FOR_I10): Move macro to ... + * config/sh/sh.c: ... here. + (sh_legitimate_index_p): Use satisfies_constraint_I06 instead of + CONST_OK_FOR_I06. + +2012-07-16 Oleg Endo <olegendo@gcc.gnu.org> + * config/sh/sh.md: Delete mov related define_peephole patterns. 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com> diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 015e274..72043a0 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -63,6 +63,9 @@ int code_for_indirect_jump_scratch = CODE_FOR_indirect_jump_scratch; #define LSW (TARGET_LITTLE_ENDIAN ? 0 : 1) /* These are some macros to abstract register modes. */ +#define CONST_OK_FOR_I10(VALUE) (((HOST_WIDE_INT)(VALUE)) >= -512 \ + && ((HOST_WIDE_INT)(VALUE)) <= 511) + #define CONST_OK_FOR_ADD(size) \ (TARGET_SHMEDIA ? CONST_OK_FOR_I10 (size) : CONST_OK_FOR_I08 (size)) #define GEN_MOV (*(TARGET_SHMEDIA64 ? gen_movdi : gen_movsi)) @@ -9776,7 +9779,7 @@ sh_legitimate_index_p (enum machine_mode mode, rtx op, bool consider_sh2a, /* Check if this is the address of an unaligned load / store. */ if (mode == VOIDmode) - return CONST_OK_FOR_I06 (INTVAL (op)); + return satisfies_constraint_I06 (op); size = GET_MODE_SIZE (mode); return (!(INTVAL (op) & (size - 1)) diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index e1c5703..3187f35 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -1213,12 +1213,8 @@ extern enum reg_class regno_reg_class[FIRST_PSEUDO_REGISTER]; /* Defines for sh.md and constraints.md. */ -#define CONST_OK_FOR_I06(VALUE) (((HOST_WIDE_INT)(VALUE)) >= -32 \ - && ((HOST_WIDE_INT)(VALUE)) <= 31) #define CONST_OK_FOR_I08(VALUE) (((HOST_WIDE_INT)(VALUE))>= -128 \ && ((HOST_WIDE_INT)(VALUE)) <= 127) -#define CONST_OK_FOR_I10(VALUE) (((HOST_WIDE_INT)(VALUE)) >= -512 \ - && ((HOST_WIDE_INT)(VALUE)) <= 511) #define CONST_OK_FOR_I16(VALUE) (((HOST_WIDE_INT)(VALUE)) >= -32768 \ && ((HOST_WIDE_INT)(VALUE)) <= 32767) |