diff options
author | Richard Sandiford <rsandifo@redhat.com> | 2003-11-16 19:10:09 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2003-11-16 19:10:09 +0000 |
commit | c988af2b8cb75ca28789f30a6bb650b38684cc0b (patch) | |
tree | 9ef329c0c8bbcf96f5ead9aa89d71751793d4122 /gcc/target-def.h | |
parent | e0c99e151e45babaac50125628ca9caf0f8c9008 (diff) | |
download | gcc-c988af2b8cb75ca28789f30a6bb650b38684cc0b.zip gcc-c988af2b8cb75ca28789f30a6bb650b38684cc0b.tar.gz gcc-c988af2b8cb75ca28789f30a6bb650b38684cc0b.tar.bz2 |
Makefile.in (expr.o): Depend on $(TARGET_H).
* Makefile.in (expr.o): Depend on $(TARGET_H).
* target.h (return_in_msb): New target hook.
* target-def.h (TARGET_RETURN_IN_MSB): New macro.
(TARGET_CALLS): Include it.
* calls.c (shift_returned_value): New function.
(expand_call): Use it.
* expr.c: Include target.h.
(copy_blkmode_from_reg): Check targetm.calls.return_in_msb when
deciding what padding is needed. Change the name of the local
padding variable from big_endian_correction to padding_correction.
* stmt.c (shift_return_value): New function.
(expand_return): Use it. Adjust memory->register copy in the same
way as copy_blkmode_from_reg. Only change the return register's
mode if it was originally BLKmode.
* doc/tm.texi (TARGET_RETURN_IN_MSB): Document.
* config/mips/mips.c (TARGET_RETURN_IN_MSB): Define.
(mips_fpr_return_fields): New, split out from mips_function_value.
(mips_return_in_msb, mips_return_fpr_pair): New functions.
(mips_function_value): Rework to use the functions above.
* config/mips/irix6-libc-compat.c: Delete.
* config/mips/t-iris6 (LIB2FUNCS_STATIC_EXTRA): Undefine.
From-SVN: r73652
Diffstat (limited to 'gcc/target-def.h')
-rw-r--r-- | gcc/target-def.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/target-def.h b/gcc/target-def.h index c4eeb93..5007a56 100644 --- a/gcc/target-def.h +++ b/gcc/target-def.h @@ -329,6 +329,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define TARGET_STRUCT_VALUE_RTX default_struct_value_rtx #define TARGET_RETURN_IN_MEMORY default_return_in_memory +#define TARGET_RETURN_IN_MSB hook_bool_tree_false #define TARGET_EXPAND_BUILTIN_SAVEREGS default_expand_builtin_saveregs #define TARGET_SETUP_INCOMING_VARARGS default_setup_incoming_varargs @@ -341,6 +342,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. TARGET_PROMOTE_PROTOTYPES, \ TARGET_STRUCT_VALUE_RTX, \ TARGET_RETURN_IN_MEMORY, \ + TARGET_RETURN_IN_MSB, \ TARGET_EXPAND_BUILTIN_SAVEREGS, \ TARGET_SETUP_INCOMING_VARARGS, \ TARGET_STRICT_ARGUMENT_NAMING, \ |