* 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
{
#ifndef 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
}
function address than to call an address kept in a register. */
/* On the ARC, calling through registers is slow. */
#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
\f
/* Section selection. */
/* WARNING: These section names also appear in dwarfout.c. */
#define DEFAULT_SIGNED_CHAR 0
#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
in one reasonably fast instruction. */
#define MOVE_MAX 4
#define NO_FUNCTION_CSE
-#define NO_RECURSIVE_FUNCTION_CSE
-
#define TEXT_SECTION_ASM_OP "\t.text"
#define DATA_SECTION_ASM_OP "\t.data"
address than to call an address kept in a register. */
#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
-
\f
/* Dividing the output into sections. */
faster than one with a register address. */
#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
\f
/* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE,
return the mode to be used for the comparison.
#define SLOW_BYTE_ACCESS 0
#define NO_FUNCTION_CSE
-#define NO_RECURSIVE_FUNCTION_CSE
#define TEXT_SECTION_ASM_OP ".text"
#define DATA_SECTION_ASM_OP ".data"
#define NO_FUNCTION_CSE 1
-#define NO_RECURSIVE_FUNCTION_CSE 1
-
#define ADJUST_COST(INSN,LINK,DEP_INSN,COST) \
if (REG_NOTE_KIND (LINK) != 0) \
(COST) = 0; /* Anti or output dependence. */
/* 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. */
#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
\f
/* Section selection. */
/* Define this as 1 if `char' should by default be signed; else as 0. */
#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
in one reasonably fast instruction. */
#define MOVE_MAX 4
/* The type of size_t 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
in one reasonably fast instruction. */
#define MOVE_MAX 4
function address than to call an address kept in a register. */
#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
register in leaf functions: see PIC_OFFSET_TABLE_REGNUM. */
#define GLOBAL_POINTER_REGNUM (GP_REG_FIRST + 28)
#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
in one reasonably fast instruction. */
#define MOVE_MAX (TARGET_SHMEDIA ? 8 : 4)
#define NO_FUNCTION_CSE
-#define NO_RECURSIVE_FUNCTION_CSE
-
\f
/* Dividing the output into sections. */
call an address kept in a register. */
#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
take advantage of the possibility for variable-sized windows; instead,
we use a fixed window size of 8. */
function address than to call an address kept in a register.
@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
Define this macro if a non-short-circuit operation produced by
@samp{fold_range_test ()} is optimal. This macro defaults to true if
FINAL_REG_PARM_STACK_SPACE MAYBE_REG_PARM_STACK_SPACE \
TRADITIONAL_PIPELINE_INTERFACE DFA_PIPELINE_INTERFACE \
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. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \