* target.h (struct calls): Add function_value_regno_p field.
authoraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 2 May 2010 10:49:10 +0000 (10:49 +0000)
committeraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 2 May 2010 10:49:10 +0000 (10:49 +0000)
commite1ce1485c85cf2ea659a92ccddf9305fc2ff3c00
tree135035b83149e0071966cf5b87b3d84d1448ce95
parent6cd9a8733290b42109486fd799a07cc810f4d6a1
* 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: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158970 138bc75d-0d04-0410-961f-82ee72b054a4
14 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/builtins.c
gcc/combine.c
gcc/config/i386/i386-protos.h
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/doc/tm.texi
gcc/mode-switching.c
gcc/rtlanal.c
gcc/target-def.h
gcc/target.h
gcc/targhooks.c
gcc/targhooks.h