summaryrefslogtreecommitdiff
path: root/gcc/target-globals.h
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2010-07-12 18:53:08 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2010-07-12 18:53:08 +0000
commit939dcd0d38af0571a15f1bcff788d593ed33d5eb (patch)
treed708b56be81952da9c5f1952199355f972230b0e /gcc/target-globals.h
parent3bd36029de1b586b49b3b021385b275ba5427611 (diff)
downloadgcc-939dcd0d38af0571a15f1bcff788d593ed33d5eb.tar.gz
Makefile.in (target-globals.o): Depend on $(REGS_H).
gcc/ * Makefile.in (target-globals.o): Depend on $(REGS_H). * regs.h (target_reg_modes): New structure. (default_target_reg_modes): Declare. (this_target_reg_modes): Declare as a variable or define as a macro. (hard_regno_nregs, reg_raw_mode): Redefine as macros. * reginfo.c (default_target_reg_modes): New variable. (this_target_reg_modes): New conditional variable. (hard_regno_nregs, reg_raw_mode): Delete. * target-globals.h (this_target_regs): Declare. (target_globals): Add a regs field. (restore_target_globals): Copy the regs field to this_target_regs. * target-globals.c: Include regs.h. (default_target_globals): Initialize the regs field. (save_target_globals): Likewise. From-SVN: r162087
Diffstat (limited to 'gcc/target-globals.h')
-rw-r--r--gcc/target-globals.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/target-globals.h b/gcc/target-globals.h
index 496a50706c6..a733aa52b89 100644
--- a/gcc/target-globals.h
+++ b/gcc/target-globals.h
@@ -22,9 +22,11 @@ along with GCC; see the file COPYING3. If not see
#if SWITCHABLE_TARGET
extern struct target_flag_state *this_target_flag_state;
+extern struct target_regs *this_target_regs;
struct GTY(()) target_globals {
struct target_flag_state *GTY((skip)) flag_state;
+ struct target_regs *GTY((skip)) regs;
};
extern struct target_globals default_target_globals;
@@ -35,6 +37,7 @@ static inline void
restore_target_globals (struct target_globals *g)
{
this_target_flag_state = g->flag_state;
+ this_target_regs = g->regs;
}
#endif