diff options
author | Steve Ellcey <sje@gcc.gnu.org> | 2010-10-27 22:44:31 +0000 |
---|---|---|
committer | Steve Ellcey <sje@gcc.gnu.org> | 2010-10-27 22:44:31 +0000 |
commit | ffa88471b5df039bb9b8b8e7ce0ce17a71a0d3bd (patch) | |
tree | a6eef89a2a1f2599082334f22265eeb9df63eb58 /gcc/targhooks.c | |
parent | 2b08f2c561e0dc9b8f569a00868a6b7eb2ba111b (diff) | |
download | gcc-ffa88471b5df039bb9b8b8e7ce0ce17a71a0d3bd.zip gcc-ffa88471b5df039bb9b8b8e7ce0ce17a71a0d3bd.tar.gz gcc-ffa88471b5df039bb9b8b8e7ce0ce17a71a0d3bd.tar.bz2 |
tm.texi.in (TARGET_GET_RAW_RESULT_MODE): New.
2010-10-27 Steve Ellcey <sje@cup.hp.com>
* doc/tm.texi.in (TARGET_GET_RAW_RESULT_MODE): New.
(TARGET_GET_RAW_ARG_MODE): New.
* doc/tm.texi: Regenerate.
* target.def (get_raw_result_mode): New.
(get_raw_arg_mode): New.
* targhooks.c (default_get_reg_raw_mode): New.
* targhooks.h (default_get_reg_raw_mode): New.
* builtins.c (apply_args_size): Use targetm.calls.get_raw_arg_mode.
(apply_result_size): Ditto.
* config/ia64/ia64.c (ia64_get_reg_raw_mode): New.
(TARGET_GET_RAW_RESULT_MODE): Define.
(TARGET_GET_RAW_ARG_MODE): Ditto.
From-SVN: r166021
Diffstat (limited to 'gcc/targhooks.c')
-rw-r--r-- | gcc/targhooks.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/targhooks.c b/gcc/targhooks.c index b6aefdb..22bba3b 100644 --- a/gcc/targhooks.c +++ b/gcc/targhooks.c @@ -64,6 +64,7 @@ along with GCC; see the file COPYING3. If not see #include "target-def.h" #include "ggc.h" #include "hard-reg-set.h" +#include "regs.h" #include "reload.h" #include "optabs.h" #include "recog.h" @@ -1333,6 +1334,15 @@ sjlj_except_unwind_info (void) return UI_SJLJ; } +/* To be used by targets where reg_raw_mode doesn't return the right + mode for registers used in apply_builtin_return and apply_builtin_arg. */ + +enum machine_mode +default_get_reg_raw_mode(int regno) +{ + return reg_raw_mode[regno]; +} + const struct default_options empty_optimization_table[] = { { OPT_LEVELS_NONE, 0, NULL, 0 } |