aboutsummaryrefslogtreecommitdiff
path: root/gcc/target.h
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2005-06-29 01:24:27 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2005-06-29 01:24:27 +0000
commit26106bf083d0dc0f421bc188bd651e23b6e622e9 (patch)
tree6e5206234e2011fe87ca88acfe08dfbe38d900ca /gcc/target.h
parent75431155e917e9c79dd723b8d6762b2c14403862 (diff)
* target.h (gcc_target): New field allocate_initial_value.
* target-def.h (TARGET_ALLOCATE_INITIAL_VALUE): New macro. (TARGET_INITIALIZER): Include it. * integrate.c (allocate_initial_values): Use targetm.allocate_initial_value. * system.h: Poison ALLOCATE_INITIAL_VALUE. * config/sh/sh-protos.h (sh_pr_n_sets): Delete. * config/sh/sh.c (sh_pr_n_sets): Make it static. (sh_allocate_initila_value): New function. (TARGET_ALLOCATE_INITIAL_VALUE): Override default. * config/sh/sh.h (ALLOCATE_INITIAL_VALUE): Delete. * doc/tm.texi (TARGET_ALLOCATE_INITIAL_VALUE): Rename and update from ALLOCATE_INITIAL_VALUE. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@101411 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target.h')
-rw-r--r--gcc/target.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/target.h b/gcc/target.h
index 65e50caef29..b3c6ee9d78a 100644
--- a/gcc/target.h
+++ b/gcc/target.h
@@ -446,6 +446,10 @@ struct gcc_target
invalid addresses. */
int (* address_cost) (rtx x);
+ /* Return where to allocate pseudo for a given hard register initial
+ value. */
+ rtx (* allocate_initial_value) (rtx x);
+
/* Given a register, this hook should return a parallel of registers
to represent where to find the register pieces. Define this hook
if the register and its mode are represented in Dwarf in