diff options
author | Anatoly Sokolov <aesok@post.ru> | 2010-05-02 10:49:10 +0000 |
---|---|---|
committer | Anatoly Sokolov <aesok@post.ru> | 2010-05-02 10:49:10 +0000 |
commit | 53a7698da79832cf080a3e7d6a48ac5d0a5c89a7 (patch) | |
tree | 135035b83149e0071966cf5b87b3d84d1448ce95 /gcc/rtlanal.c | |
parent | 082ab6a5c5b5bb608ba4933c1a33b198396bec56 (diff) |
* target.h (struct calls): Add function_value_regno_p field.
* target-def.h (TARGET_FUNCTION_VALUE_REGNO_P): Define.
(TARGET_INITIALIZER): Use TARGET_FUNCTION_VALUE_REGNO_P.
* targhooks.c (default_function_value_regno_p): New function.
* targhooks.h (default_function_value_regno_p): Declare function.
* rtlanal.c (keep_with_call_p): Use function_value_regno_p hook.
* builtins.c. (apply_result_size): (Ditto.).
* combine.c. (likely_spilled_retval_p): (Ditto.).
* mode-switching.c. Include 'target.h'.
(create_pre_exit): Use function_value_regno_p hook.
* Makefile.in (mode-switching.o): Add dependency on TARGET_H.
* doc/tm.texi (FUNCTION_VALUE_REGNO_P,
TARGET_FUNCTION_VALUE_REGNO_P): Revise documentation.
* config/i386/i386.h (TARGET_FUNCTION_VALUE_REGNO_P): Remove macro.
* config/i386/i386.c (TARGET_FUNCTION_VALUE_REGNO_P): Define macro.
(ix86_function_value_regno_p): Declare as static, change argument
type to const unsigned int.
* config/i386/i386-protos.h (ix86_function_value_regno_p): Remove.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@158970 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r-- | gcc/rtlanal.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 0e3b77bc0c9..8a5df24632d 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -3474,7 +3474,7 @@ keep_with_call_p (const_rtx insn) && general_operand (SET_SRC (set), VOIDmode)) return true; if (REG_P (SET_SRC (set)) - && FUNCTION_VALUE_REGNO_P (REGNO (SET_SRC (set))) + && targetm.calls.function_value_regno_p (REGNO (SET_SRC (set))) && REG_P (SET_DEST (set)) && REGNO (SET_DEST (set)) >= FIRST_PSEUDO_REGISTER) return true; |