From 3ad606bc1137d266e492308ba884474b69069a5b Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Wed, 22 Apr 2009 07:49:46 +0000 Subject: [PATCH] defaults.h (GO_IF_MODE_DEPENDENT_ADDRESS): Provide empty default. 2009-04-22 Paolo Bonzini * defaults.h (GO_IF_MODE_DEPENDENT_ADDRESS): Provide empty default. * config/frv/frv.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/s390/s390.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/m32c/m32c.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/spu/spu.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/i386/i386.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/sh/sh.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/pdp11/pdp11.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/avr/avr.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/crx/crx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/fr30/fr30.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/m68hc11/m68hc11.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/cris/cris.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/iq2000/iq2000.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/mn10300/mn10300.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/ia64/ia64.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/m68k/m68k.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/picochip/picochip.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/arc/arc.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/mcore/mcore.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/score/score.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/arm/arm.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/pa/pa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/mips/mips.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/v850/v850.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/mmix/mmix.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. * config/bfin/bfin.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. From-SVN: r146548 --- gcc/ChangeLog | 34 ++++++++++++++++++++++++++++++++++ gcc/config/arc/arc.h | 4 ---- gcc/config/arm/arm.h | 13 ------------- gcc/config/avr/avr.h | 2 -- gcc/config/bfin/bfin.h | 17 ----------------- gcc/config/cris/cris.h | 5 ----- gcc/config/crx/crx.h | 2 -- gcc/config/fr30/fr30.h | 13 ------------- gcc/config/frv/frv.h | 13 ------------- gcc/config/i386/i386.h | 7 ------- gcc/config/ia64/ia64.h | 7 ------- gcc/config/iq2000/iq2000.h | 2 -- gcc/config/m32c/m32c.h | 2 -- gcc/config/m68hc11/m68hc11.h | 4 ---- gcc/config/m68k/m68k.h | 5 ----- gcc/config/mcore/mcore.h | 4 ---- gcc/config/mips/mips.h | 15 --------------- gcc/config/mmix/mmix.h | 2 -- gcc/config/mn10300/mn10300.h | 5 ----- gcc/config/pa/pa.h | 5 ----- gcc/config/pdp11/pdp11.h | 8 -------- gcc/config/picochip/picochip.h | 3 --- gcc/config/s390/s390.h | 3 --- gcc/config/score/score.h | 4 ---- gcc/config/sh/sh.h | 12 ------------ gcc/config/spu/spu.h | 2 -- gcc/config/v850/v850.h | 5 ----- gcc/defaults.h | 7 +++++++ 28 files changed, 41 insertions(+), 164 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 26b721b5e85..20b67e244b3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,37 @@ +2009-04-22 Paolo Bonzini + + * defaults.h (GO_IF_MODE_DEPENDENT_ADDRESS): Provide empty default. + * config/frv/frv.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/s390/s390.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/m32c/m32c.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/spu/spu.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/i386/i386.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/sh/sh.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/pdp11/pdp11.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/avr/avr.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/crx/crx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/fr30/fr30.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/m68hc11/m68hc11.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/cris/cris.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/iq2000/iq2000.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/mn10300/mn10300.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/ia64/ia64.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/m68k/m68k.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/picochip/picochip.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/arc/arc.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/mcore/mcore.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/score/score.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/arm/arm.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/pa/pa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/mips/mips.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/v850/v850.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/mmix/mmix.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + * config/bfin/bfin.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete. + +2009-04-22 Paolo Bonzini + + * config/sparc/sparc.h (POINTER_SIZE): Clarify comment. + 2009-04-22 Laurynas Biveinis * cfghooks.c (tidy_fallthru_edges): Remove find_basic_blocks diff --git a/gcc/config/arc/arc.h b/gcc/config/arc/arc.h index a3e5f274b2d..db6829bc560 100644 --- a/gcc/config/arc/arc.h +++ b/gcc/config/arc/arc.h @@ -795,10 +795,6 @@ do { \ && RTX_OK_FOR_BASE_P (XEXP ((X), 0))) \ goto ADDR; \ } - -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) /* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE, return the mode to be used for the comparison. */ diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index b55c65cf16d..59ab1660478 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -2234,19 +2234,6 @@ do { \ goto WIN; \ } while (0) -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ -#define ARM_GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) \ -{ \ - if ( GET_CODE (ADDR) == PRE_DEC || GET_CODE (ADDR) == POST_DEC \ - || GET_CODE (ADDR) == PRE_INC || GET_CODE (ADDR) == POST_INC) \ - goto LABEL; \ -} - -/* Nothing helpful to do for the Thumb */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) \ - if (TARGET_32BIT) \ - ARM_GO_IF_MODE_DEPENDENT_ADDRESS (ADDR, LABEL) /* Specify the machine mode that this machine uses diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h index f09e8ecaa59..cfcb5818fdc 100644 --- a/gcc/config/avr/avr.h +++ b/gcc/config/avr/avr.h @@ -494,8 +494,6 @@ do { \ } \ } while(0) -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - #define LEGITIMATE_CONSTANT_P(X) 1 #define REGISTER_MOVE_COST(MODE, FROM, TO) ((FROM) == STACK_REG ? 6 \ diff --git a/gcc/config/bfin/bfin.h b/gcc/config/bfin/bfin.h index 8193ff3a747..c4f6771d619 100644 --- a/gcc/config/bfin/bfin.h +++ b/gcc/config/bfin/bfin.h @@ -986,23 +986,6 @@ do { \ || GET_CODE (X) == LABEL_REF \ || (GET_CODE (X) == CONST && symbolic_reference_mentioned_p (X))) -/* - A C statement or compound statement with a conditional `goto - LABEL;' executed if memory address X (an RTX) can have different - meanings depending on the machine mode of the memory reference it - is used for or if the address is valid for some modes but not - others. - - Autoincrement and autodecrement addresses typically have - mode-dependent effects because the amount of the increment or - decrement is the size of the operand being addressed. Some - machines have other mode-dependent addresses. Many RISC machines - have no mode-dependent addresses. - - You may assume that ADDR is a valid address for the machine. -*/ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - #define NOTICE_UPDATE_CC(EXPR, INSN) 0 /* Value is 1 if truncating an integer of INPREC bits to OUTPREC bits diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h index 49822598f45..352be557818 100644 --- a/gcc/config/cris/cris.h +++ b/gcc/config/cris/cris.h @@ -1208,11 +1208,6 @@ struct cum_args {int regs;}; } \ while (0) -/* In CRIS, only the postincrement address mode depends thus, - since the increment depends on the size of the operand. This is now - treated generically within recog.c. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - #define LEGITIMATE_CONSTANT_P(X) 1 diff --git a/gcc/config/crx/crx.h b/gcc/config/crx/crx.h index d49587220fe..69065f3795b 100644 --- a/gcc/config/crx/crx.h +++ b/gcc/config/crx/crx.h @@ -418,8 +418,6 @@ struct cumulative_args } #endif /* REG_OK_STRICT */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - #define LEGITIMATE_CONSTANT_P(X) 1 /*****************************************************************************/ diff --git a/gcc/config/fr30/fr30.h b/gcc/config/fr30/fr30.h index cca71245eb5..c1e8e0a9723 100644 --- a/gcc/config/fr30/fr30.h +++ b/gcc/config/fr30/fr30.h @@ -909,19 +909,6 @@ do \ will reload one or both registers only if neither labeling works. */ #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X) -/* A C statement or compound statement with a conditional `goto LABEL;' - executed if memory address X (an RTX) can have different meanings depending - on the machine mode of the memory reference it is used for or if the address - is valid for some modes but not others. - - Autoincrement and autodecrement addresses typically have mode-dependent - effects because the amount of the increment or decrement is the size of the - operand being addressed. Some machines have other mode-dependent addresses. - Many RISC machines have no mode-dependent addresses. - - You may assume that ADDR is a valid address for the machine. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - /* A C expression that is nonzero if X is a legitimate constant for an immediate operand on the target machine. You can assume that X satisfies `CONSTANT_P', so you need not check this. In fact, `1' is a suitable diff --git a/gcc/config/frv/frv.h b/gcc/config/frv/frv.h index 179e95f95f2..f96bbc001ee 100644 --- a/gcc/config/frv/frv.h +++ b/gcc/config/frv/frv.h @@ -2132,19 +2132,6 @@ do { \ #define FIND_BASE_TERM frv_find_base_term -/* A C statement or compound statement with a conditional `goto LABEL;' - executed if memory address X (an RTX) can have different meanings depending - on the machine mode of the memory reference it is used for or if the address - is valid for some modes but not others. - - Autoincrement and autodecrement addresses typically have mode-dependent - effects because the amount of the increment or decrement is the size of the - operand being addressed. Some machines have other mode-dependent addresses. - Many RISC machines have no mode-dependent addresses. - - You may assume that ADDR is a valid address for the machine. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - /* A C expression that is nonzero if X is a legitimate constant for an immediate operand on the target machine. You can assume that X satisfies `CONSTANT_P', so you need not check this. In fact, `1' is a suitable diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index c9759721824..8979d5b8143 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -1888,13 +1888,6 @@ do { \ (GET_CODE (X) == SYMBOL_REF \ || GET_CODE (X) == LABEL_REF \ || (GET_CODE (X) == CONST && symbolic_reference_mentioned_p (X))) - -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. - On the 80386, only postdecrement and postincrement address depend thus - (the amount of decrement or increment being the length of the operand). - These are now caught in recog.c. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) /* Max number of args passed in registers. If this is more than 3, we will have problems with ebx (register #4), since it is a caller save register and diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h index 0e3c87bf66c..217aaa58053 100644 --- a/gcc/config/ia64/ia64.h +++ b/gcc/config/ia64/ia64.h @@ -1344,13 +1344,6 @@ do { \ #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X) -/* A C statement or compound statement with a conditional `goto LABEL;' - executed if memory address X (an RTX) can have different meanings depending - on the machine mode of the memory reference it is used for or if the address - is valid for some modes but not others. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - /* A C expression that is nonzero if X is a legitimate constant for an immediate operand on the target machine. */ diff --git a/gcc/config/iq2000/iq2000.h b/gcc/config/iq2000/iq2000.h index f6c7ec5edb6..916e4060a5e 100644 --- a/gcc/config/iq2000/iq2000.h +++ b/gcc/config/iq2000/iq2000.h @@ -612,8 +612,6 @@ typedef struct iq2000_args GO_PRINTF ("LEGITIMIZE_ADDRESS could not fix.\n"); \ } -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) {} - #define LEGITIMATE_CONSTANT_P(X) (1) diff --git a/gcc/config/m32c/m32c.h b/gcc/config/m32c/m32c.h index 632993c2b15..e9bc711f684 100644 --- a/gcc/config/m32c/m32c.h +++ b/gcc/config/m32c/m32c.h @@ -595,8 +595,6 @@ typedef struct m32c_cumulative_args if (m32c_legitimize_reload_address(&(X),MODE,OPNUM,TYPE,IND_LEVELS)) \ goto WIN; -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - #define LEGITIMATE_CONSTANT_P(X) m32c_legitimate_constant_p (X) /* Condition Code Status */ diff --git a/gcc/config/m68hc11/m68hc11.h b/gcc/config/m68hc11/m68hc11.h index d9935cc6e74..ee28bb73eaa 100644 --- a/gcc/config/m68hc11/m68hc11.h +++ b/gcc/config/m68hc11/m68hc11.h @@ -1233,10 +1233,6 @@ extern unsigned char m68hc11_reg_valid_for_index[FIRST_PSEUDO_REGISTER]; } \ } -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - /* Nonzero if the constant value X is a legitimate general operand. It is given that X satisfies CONSTANT_P or is a CONST_DOUBLE. */ diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h index 8c0f4f20ed9..bb28e887aa9 100644 --- a/gcc/config/m68k/m68k.h +++ b/gcc/config/m68k/m68k.h @@ -816,11 +816,6 @@ __transfer_from_trampoline () \ && GET_CODE (XEXP (X, 1)) == REG) \ X = force_operand (X, 0); \ goto WIN; }}} - -/* On the 68000, only predecrement and postincrement address depend thus - (the amount of decrement or increment being the length of the operand). - These are now treated generically in recog.c. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) #define CASE_VECTOR_MODE HImode #define CASE_VECTOR_PC_RELATIVE 1 diff --git a/gcc/config/mcore/mcore.h b/gcc/config/mcore/mcore.h index 278c1b248ee..224491ab05c 100644 --- a/gcc/config/mcore/mcore.h +++ b/gcc/config/mcore/mcore.h @@ -786,10 +786,6 @@ extern const enum reg_class reg_class_from_letter[]; GO_IF_LEGITIMATE_INDEX (MODE, REGNO (xop1), xop0, LABEL); \ } \ } - -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) /* Specify the machine mode that this machine uses for the index in the tablejump instruction. */ diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 30faa196a52..7e3d57e7300 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -2525,21 +2525,6 @@ typedef struct mips_args { } while (0) -/* A C statement or compound statement with a conditional `goto - LABEL;' executed if memory address X (an RTX) can have different - meanings depending on the machine mode of the memory reference it - is used for. - - Autoincrement and autodecrement addresses typically have - mode-dependent effects because the amount of the increment or - decrement is the size of the operand being addressed. Some - machines have other mode-dependent addresses. Many RISC machines - have no mode-dependent addresses. - - You may assume that ADDR is a valid address for the machine. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) {} - /* This handles the magic '..CURRENT_FUNCTION' symbol, which means 'the start of the function that this code is output in'. */ diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h index 6bd7298ec81..c479c465014 100644 --- a/gcc/config/mmix/mmix.h +++ b/gcc/config/mmix/mmix.h @@ -710,8 +710,6 @@ typedef struct { int regs; int lib; } CUMULATIVE_ARGS; #define REG_OK_FOR_INDEX_P(X) REG_OK_FOR_BASE_P (X) -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - #define LEGITIMATE_CONSTANT_P(X) \ mmix_legitimate_constant_p (X) diff --git a/gcc/config/mn10300/mn10300.h b/gcc/config/mn10300/mn10300.h index f7011daf493..7bd7f33d4bd 100644 --- a/gcc/config/mn10300/mn10300.h +++ b/gcc/config/mn10300/mn10300.h @@ -713,11 +713,6 @@ while (0) if ((X) != orig_x && memory_address_p (MODE, X)) \ goto WIN; } -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - /* Nonzero if the constant value X is a legitimate general operand. It is given that X satisfies CONSTANT_P or is a CONST_DOUBLE. */ diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 2966a42ddb2..c1d589dc36b 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1441,11 +1441,6 @@ do { \ (X) = hppa_legitimize_address (X, OLDX, MODE); \ if ((X) != orig_x && memory_address_p (MODE, X)) \ goto WIN; } - -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) #define TARGET_ASM_SELECT_SECTION pa_select_section diff --git a/gcc/config/pdp11/pdp11.h b/gcc/config/pdp11/pdp11.h index 71072dbaaf5..285b0e9cd6b 100644 --- a/gcc/config/pdp11/pdp11.h +++ b/gcc/config/pdp11/pdp11.h @@ -755,14 +755,6 @@ extern int may_call_alloca; } -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. - On the pdp this is for predec/postinc, and this is now treated - generically in recog.c. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - - /* Specify the machine mode that this machine uses for the index in the tablejump instruction. */ #define CASE_VECTOR_MODE HImode diff --git a/gcc/config/picochip/picochip.h b/gcc/config/picochip/picochip.h index dc57364f2b7..24613d634d7 100644 --- a/gcc/config/picochip/picochip.h +++ b/gcc/config/picochip/picochip.h @@ -535,9 +535,6 @@ extern const enum reg_class picochip_regno_reg_class[FIRST_PSEUDO_REGISTER]; #define LEGITIMIZE_RELOAD_ADDRESS(X,MODE,OPNUM,TYPE,IND_LEVELS,WIN) \ if (picochip_symbol_offset(X)) { X = gen_rtx_CONST(MODE, X); } -/* There are no mode dependent addresses. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) do {} while (0) - /* Nonzero if the constant rtx X is a legitimate general operand. X satisfies CONSTANT_P. */ diff --git a/gcc/config/s390/s390.h b/gcc/config/s390/s390.h index 3bf9d7d2157..c9eb60248fe 100644 --- a/gcc/config/s390/s390.h +++ b/gcc/config/s390/s390.h @@ -748,9 +748,6 @@ legitimate_address_p. The constraint letter defined here must not be used in insn definitions or inline assemblies. */ #define TARGET_MEM_CONSTRAINT 'e' -/* S/390 has no mode dependent addresses. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) - /* GO_IF_LEGITIMATE_ADDRESS recognizes an RTL expression that is a valid memory address for an instruction. The MODE argument is the machine mode for the MEM expression diff --git a/gcc/config/score/score.h b/gcc/config/score/score.h index 3196344d39f..d2dd7405feb 100644 --- a/gcc/config/score/score.h +++ b/gcc/config/score/score.h @@ -784,10 +784,6 @@ typedef struct score_args goto WIN; \ } while (0) -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) {} - #define LEGITIMATE_CONSTANT_P(X) 1 /* Condition Code Status. */ diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 3a90cf172fd..0fa6d37b84e 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -2592,18 +2592,6 @@ struct sh_args { goto WIN; \ } \ } - -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. - - ??? Strictly speaking, we should also include all indexed addressing, - because the index scale factor is the length of the operand. - However, the impact of GO_IF_MODE_DEPENDENT_ADDRESS would be to - high if we did that. So we rely on reload to fix things up. - - Auto-increment addressing is now treated in recog.c. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) /* Specify the machine mode that this machine uses for the index in the tablejump instruction. */ diff --git a/gcc/config/spu/spu.h b/gcc/config/spu/spu.h index 50e09c96b81..ae84aac2775 100644 --- a/gcc/config/spu/spu.h +++ b/gcc/config/spu/spu.h @@ -438,8 +438,6 @@ targetm.resolve_overloaded_builtin = spu_resolve_overloaded_builtin; \ } \ } -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) - #define LEGITIMATE_CONSTANT_P(X) spu_legitimate_constant_p(X) diff --git a/gcc/config/v850/v850.h b/gcc/config/v850/v850.h index 65e731fef79..79c293ab629 100644 --- a/gcc/config/v850/v850.h +++ b/gcc/config/v850/v850.h @@ -829,11 +829,6 @@ do { \ } while (0) -/* Go to LABEL if ADDR (a legitimate address expression) - has an effect that depends on the machine mode it is used for. */ - -#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR,LABEL) {} - /* Nonzero if the constant value X is a legitimate general operand. It is given that X satisfies CONSTANT_P or is a CONST_DOUBLE. */ diff --git a/gcc/defaults.h b/gcc/defaults.h index f0cf95df36b..53ba930fff2 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -962,4 +962,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define ATTRIBUTE_ALIGNED_VALUE BIGGEST_ALIGNMENT #endif +/* Many ports have no mode-dependent addresses (except possibly autoincrement + and autodecrement addresses, which are handled by target-independent code + in recog.c). */ +#ifndef GO_IF_MODE_DEPENDENT_ADDRESS +#define GO_IF_MODE_DEPENDENT_ADDRESS(X, WIN) +#endif + #endif /* ! GCC_DEFAULTS_H */ -- 2.11.4.GIT