re PR c++/52772 (internal compiler error: Segmentation fault)
[gcc.git] / gcc / target-globals.c
index 7a340322240f6275318d0889a0e5568938952a2a..7a4058ebd181b90cc84159a2d61468572a5cd732 100644 (file)
@@ -36,6 +36,10 @@ along with GCC; see the file COPYING3.  If not see
 #include "optabs.h"
 #include "libfuncs.h"
 #include "cfgloop.h"
+#include "ira-int.h"
+#include "builtins.h"
+#include "gcse.h"
+#include "bb-reorder.h"
 
 #if SWITCHABLE_TARGET
 struct target_globals default_target_globals = {
@@ -47,7 +51,12 @@ struct target_globals default_target_globals = {
   &default_target_expmed,
   &default_target_optabs,
   &default_target_libfuncs,
-  &default_target_cfgloop
+  &default_target_cfgloop,
+  &default_target_ira,
+  &default_target_ira_int,
+  &default_target_builtins,
+  &default_target_gcse,
+  &default_target_bb_reorder
 };
 
 struct target_globals *
@@ -65,7 +74,13 @@ save_target_globals (void)
   g->optabs = XCNEW (struct target_optabs);
   g->libfuncs = ggc_alloc_cleared_target_libfuncs ();
   g->cfgloop = XCNEW (struct target_cfgloop);
+  g->ira = XCNEW (struct target_ira);
+  g->ira_int = XCNEW (struct target_ira_int);
+  g->builtins = XCNEW (struct target_builtins);
+  g->gcse = XCNEW (struct target_gcse);
+  g->bb_reorder = XCNEW (struct target_bb_reorder);
   restore_target_globals (g);
+  init_reg_sets ();
   target_reinit ();
   return g;
 }