summaryrefslogtreecommitdiff
path: root/gcc/target-globals.c
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-12 18:54:35 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-12 18:54:35 +0000
commit2770cb33340b033d1054004319818af09ad93d2c (patch)
treec920ed4d7946023638d154dfa81c2b963b87076a /gcc/target-globals.c
parent0f60a83499ddae594222a3a8763a09a24cfe5959 (diff)
downloadgcc-2770cb33340b033d1054004319818af09ad93d2c.tar.gz
gcc/
* Makefile.in (target-globals.o): Depend on $(EXPR_H) and $(OPTABS_H). * optabs.h (target_optabs): New structure. (default_target_optabs): Declare. (this_target_optabs): Declare as a variable or define as a macro. (optab_table, convert_optab_table, direct_optab_table): Redefine as macros. * optabs.c (default_target_optabs): New variable. (this_target_optabs): New conditional variable. (optab_table, convert_optab_table, direct_optab_table): Delete. * target-globals.h (this_target_optabs): Declare. (target_globals): Add a optabs field. (restore_target_globals): Copy the optabs field to this_target_optabs. * target-globals.c: Include expr.h and optabs.h. (default_target_globals): Initialize the optabs field. (save_target_globals): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162097 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target-globals.c')
-rw-r--r--gcc/target-globals.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/target-globals.c b/gcc/target-globals.c
index 5934ad9f9e9..cfabb87c909 100644
--- a/gcc/target-globals.c
+++ b/gcc/target-globals.c
@@ -32,6 +32,8 @@ along with GCC; see the file COPYING3. If not see
#include "hard-reg-set.h"
#include "reload.h"
#include "expmed.h"
+#include "expr.h"
+#include "optabs.h"
#if SWITCHABLE_TARGET
struct target_globals default_target_globals = {
@@ -40,7 +42,8 @@ struct target_globals default_target_globals = {
&default_target_rtl,
&default_target_hard_regs,
&default_target_reload,
- &default_target_expmed
+ &default_target_expmed,
+ &default_target_optabs
};
struct target_globals *
@@ -55,6 +58,7 @@ save_target_globals (void)
g->hard_regs = XCNEW (struct target_hard_regs);
g->reload = XCNEW (struct target_reload);
g->expmed = XCNEW (struct target_expmed);
+ g->optabs = XCNEW (struct target_optabs);
restore_target_globals (g);
target_reinit ();
return g;