From 4111c296f20d0a276a218fd2bbb9308280f86b72 Mon Sep 17 00:00:00 2001 From: Oleg Endo Date: Mon, 16 Jul 2012 21:16:52 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 8 ++++++++ gcc/config/sh/sh.c | 5 ++++- gcc/config/sh/sh.h | 4 ---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a983274f957..f9fd72364bb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2012-07-16 Oleg Endo + + * 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 * config/sh/sh.md: Delete mov related define_peephole patterns. diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 015e274b13b..72043a06f8d 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 e1c57039e0c..3187f35581a 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)