Commit 082a099c by Ian Lance Taylor

system.h: Poison NO_RECURSIVE_FUNCTION_CSE.

	* system.h: Poison NO_RECURSIVE_FUNCTION_CSE.
	* calls.c (prepare_call_address): Don't test
	NO_RECURSIVE_FUNCTION_CSE.
	* config/arc/arc.h (NO_RECURSIVE_FUNCTION_CSE): Don't define.
	* config/arm/arm.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/avr/avr.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/frv/frv.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/i386/i386.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/ip2k/ip2k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/iq2000/iq2000.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/m32r/m32r.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/m68k/m68k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/mcore/mcore.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/mips/mips.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/stormy16/stormy16.h (NO_RECURSIVE_FUNCTION_CSE):
	Likewise.
	* config/xtensa/xtensa.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
	* config/sh/sh.h: Remove NO_RECURSIVE_FUNCTION_CSE comment.
	* doc/tm.texi (Costs): Remove documentation for
	NO_RECURSIVE_FUNCTION_CSE.

From-SVN: r82084
parent 59ce6d6b
...@@ -297,9 +297,6 @@ prepare_call_address (rtx funexp, rtx static_chain_value, ...@@ -297,9 +297,6 @@ prepare_call_address (rtx funexp, rtx static_chain_value,
{ {
#ifndef NO_FUNCTION_CSE #ifndef NO_FUNCTION_CSE
if (optimize && ! flag_no_function_cse) if (optimize && ! flag_no_function_cse)
#ifdef NO_RECURSIVE_FUNCTION_CSE
if (fndecl != current_function_decl)
#endif
funexp = force_reg (Pmode, funexp); funexp = force_reg (Pmode, funexp);
#endif #endif
} }
......
...@@ -952,12 +952,6 @@ arc_select_cc_mode (OP, X, Y) ...@@ -952,12 +952,6 @@ arc_select_cc_mode (OP, X, Y)
/* On the ARC, calling through registers is slow. */ /* On the ARC, calling through registers is slow. */
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
/* Define this macro if it is as good or better for a function to call
itself with an explicit address than to call an address kept in a
register. */
/* On the ARC, calling through registers is slow. */
#define NO_RECURSIVE_FUNCTION_CSE
/* Section selection. */ /* Section selection. */
/* WARNING: These section names also appear in dwarfout.c. */ /* WARNING: These section names also appear in dwarfout.c. */
......
...@@ -2191,9 +2191,6 @@ do { \ ...@@ -2191,9 +2191,6 @@ do { \
#define DEFAULT_SIGNED_CHAR 0 #define DEFAULT_SIGNED_CHAR 0
#endif #endif
/* Don't cse the address of the function being compiled. */
#define NO_RECURSIVE_FUNCTION_CSE 1
/* Max number of bytes we can move from memory to memory /* Max number of bytes we can move from memory to memory
in one reasonably fast instruction. */ in one reasonably fast instruction. */
#define MOVE_MAX 4 #define MOVE_MAX 4
......
...@@ -509,8 +509,6 @@ do { \ ...@@ -509,8 +509,6 @@ do { \
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
#define NO_RECURSIVE_FUNCTION_CSE
#define TEXT_SECTION_ASM_OP "\t.text" #define TEXT_SECTION_ASM_OP "\t.text"
#define DATA_SECTION_ASM_OP "\t.data" #define DATA_SECTION_ASM_OP "\t.data"
......
...@@ -2536,10 +2536,6 @@ __asm__("\n" \ ...@@ -2536,10 +2536,6 @@ __asm__("\n" \
address than to call an address kept in a register. */ address than to call an address kept in a register. */
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
/* Define this macro if it is as good or better for a function to call itself
with an explicit address than to call an address kept in a register. */
#define NO_RECURSIVE_FUNCTION_CSE
/* Dividing the output into sections. */ /* Dividing the output into sections. */
......
...@@ -2647,12 +2647,6 @@ do { \ ...@@ -2647,12 +2647,6 @@ do { \
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
/* Define this macro if it is as good or better for a function to call
itself with an explicit address than to call an address kept in a
register. */
#define NO_RECURSIVE_FUNCTION_CSE
/* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE, /* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE,
return the mode to be used for the comparison. return the mode to be used for the comparison.
......
...@@ -598,7 +598,6 @@ do { \ ...@@ -598,7 +598,6 @@ do { \
#define SLOW_BYTE_ACCESS 0 #define SLOW_BYTE_ACCESS 0
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
#define NO_RECURSIVE_FUNCTION_CSE
#define TEXT_SECTION_ASM_OP ".text" #define TEXT_SECTION_ASM_OP ".text"
#define DATA_SECTION_ASM_OP ".data" #define DATA_SECTION_ASM_OP ".data"
......
...@@ -699,8 +699,6 @@ typedef struct iq2000_args ...@@ -699,8 +699,6 @@ typedef struct iq2000_args
#define NO_FUNCTION_CSE 1 #define NO_FUNCTION_CSE 1
#define NO_RECURSIVE_FUNCTION_CSE 1
#define ADJUST_COST(INSN,LINK,DEP_INSN,COST) \ #define ADJUST_COST(INSN,LINK,DEP_INSN,COST) \
if (REG_NOTE_KIND (LINK) != 0) \ if (REG_NOTE_KIND (LINK) != 0) \
(COST) = 0; /* Anti or output dependence. */ (COST) = 0; /* Anti or output dependence. */
......
...@@ -1460,11 +1460,6 @@ L2: .word STATIC ...@@ -1460,11 +1460,6 @@ L2: .word STATIC
function address than to call an address kept in a register. */ function address than to call an address kept in a register. */
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
/* Define this macro if it is as good or better for a function to call
itself with an explicit address than to call an address kept in a
register. */
#define NO_RECURSIVE_FUNCTION_CSE
/* Section selection. */ /* Section selection. */
#define TEXT_SECTION_ASM_OP "\t.section .text" #define TEXT_SECTION_ASM_OP "\t.section .text"
......
...@@ -1364,9 +1364,6 @@ __transfer_from_trampoline () \ ...@@ -1364,9 +1364,6 @@ __transfer_from_trampoline () \
/* Define this as 1 if `char' should by default be signed; else as 0. */ /* Define this as 1 if `char' should by default be signed; else as 0. */
#define DEFAULT_SIGNED_CHAR 1 #define DEFAULT_SIGNED_CHAR 1
/* Don't cse the address of the function being compiled. */
#define NO_RECURSIVE_FUNCTION_CSE
/* Max number of bytes we can move from memory to memory /* Max number of bytes we can move from memory to memory
in one reasonably fast instruction. */ in one reasonably fast instruction. */
#define MOVE_MAX 4 #define MOVE_MAX 4
......
...@@ -909,9 +909,6 @@ extern const enum reg_class reg_class_from_letter[]; ...@@ -909,9 +909,6 @@ extern const enum reg_class reg_class_from_letter[];
/* The type of size_t unsigned int. */ /* The type of size_t unsigned int. */
#define SIZE_TYPE "unsigned int" #define SIZE_TYPE "unsigned int"
/* Don't cse the address of the function being compiled. */
#define NO_RECURSIVE_FUNCTION_CSE 1
/* Max number of bytes we can move from memory to memory /* Max number of bytes we can move from memory to memory
in one reasonably fast instruction. */ in one reasonably fast instruction. */
#define MOVE_MAX 4 #define MOVE_MAX 4
......
...@@ -1743,11 +1743,6 @@ extern char mips_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER]; ...@@ -1743,11 +1743,6 @@ extern char mips_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER];
function address than to call an address kept in a register. */ function address than to call an address kept in a register. */
#define NO_FUNCTION_CSE 1 #define NO_FUNCTION_CSE 1
/* Define this macro if it is as good or better for a function to
call itself with an explicit address than to call an address
kept in a register. */
#define NO_RECURSIVE_FUNCTION_CSE 1
/* The ABI-defined global pointer. Sometimes we use a different /* The ABI-defined global pointer. Sometimes we use a different
register in leaf functions: see PIC_OFFSET_TABLE_REGNUM. */ register in leaf functions: see PIC_OFFSET_TABLE_REGNUM. */
#define GLOBAL_POINTER_REGNUM (GP_REG_FIRST + 28) #define GLOBAL_POINTER_REGNUM (GP_REG_FIRST + 28)
......
...@@ -2645,9 +2645,6 @@ struct sh_args { ...@@ -2645,9 +2645,6 @@ struct sh_args {
#define SH_ELF_WCHAR_TYPE "long int" #define SH_ELF_WCHAR_TYPE "long int"
/* Don't cse the address of the function being compiled. */
/*#define NO_RECURSIVE_FUNCTION_CSE 1*/
/* Max number of bytes we can move from memory to memory /* Max number of bytes we can move from memory to memory
in one reasonably fast instruction. */ in one reasonably fast instruction. */
#define MOVE_MAX (TARGET_SHMEDIA ? 8 : 4) #define MOVE_MAX (TARGET_SHMEDIA ? 8 : 4)
......
...@@ -618,8 +618,6 @@ do { \ ...@@ -618,8 +618,6 @@ do { \
#define NO_FUNCTION_CSE #define NO_FUNCTION_CSE
#define NO_RECURSIVE_FUNCTION_CSE
/* Dividing the output into sections. */ /* Dividing the output into sections. */
......
...@@ -416,10 +416,6 @@ extern char xtensa_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER]; ...@@ -416,10 +416,6 @@ extern char xtensa_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER];
call an address kept in a register. */ call an address kept in a register. */
#define NO_FUNCTION_CSE 1 #define NO_FUNCTION_CSE 1
/* It is as good or better for a function to call itself with an
explicit address than to call an address kept in a register. */
#define NO_RECURSIVE_FUNCTION_CSE 1
/* Xtensa processors have "register windows". GCC does not currently /* Xtensa processors have "register windows". GCC does not currently
take advantage of the possibility for variable-sized windows; instead, take advantage of the possibility for variable-sized windows; instead,
we use a fixed window size of 8. */ we use a fixed window size of 8. */
......
...@@ -5429,12 +5429,6 @@ Define this macro if it is as good or better to call a constant ...@@ -5429,12 +5429,6 @@ Define this macro if it is as good or better to call a constant
function address than to call an address kept in a register. function address than to call an address kept in a register.
@end defmac @end defmac
@defmac NO_RECURSIVE_FUNCTION_CSE
Define this macro if it is as good or better for a function to call
itself with an explicit address than to call an address kept in a
register.
@end defmac
@defmac RANGE_TEST_NON_SHORT_CIRCUIT @defmac RANGE_TEST_NON_SHORT_CIRCUIT
Define this macro if a non-short-circuit operation produced by Define this macro if a non-short-circuit operation produced by
@samp{fold_range_test ()} is optimal. This macro defaults to true if @samp{fold_range_test ()} is optimal. This macro defaults to true if
......
...@@ -642,7 +642,8 @@ typedef char _Bool; ...@@ -642,7 +642,8 @@ typedef char _Bool;
FINAL_REG_PARM_STACK_SPACE MAYBE_REG_PARM_STACK_SPACE \ FINAL_REG_PARM_STACK_SPACE MAYBE_REG_PARM_STACK_SPACE \
TRADITIONAL_PIPELINE_INTERFACE DFA_PIPELINE_INTERFACE \ TRADITIONAL_PIPELINE_INTERFACE DFA_PIPELINE_INTERFACE \
DBX_OUTPUT_STANDARD_TYPES BUILTIN_SETJMP_FRAME_VALUE \ DBX_OUTPUT_STANDARD_TYPES BUILTIN_SETJMP_FRAME_VALUE \
SUNOS4_SHARED_LIBRARIES PROMOTE_FOR_CALL_ONLY SUNOS4_SHARED_LIBRARIES PROMOTE_FOR_CALL_ONLY \
NO_RECURSIVE_FUNCTION_CSE
/* Hooks that are no longer used. */ /* Hooks that are no longer used. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \ #pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment