- renamed option end-melt to shape-blocks
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Thu, 6 Nov 2008 15:09:52 +0000 (15:09 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Thu, 6 Nov 2008 15:09:52 +0000 (15:09 +0000)
- let the switch lowerer run after the block shaper

[r23490]

driver/firm_cmdline.c
driver/firm_cmdline.h
driver/firm_opt.c

index d15e13f..9a559a8 100644 (file)
@@ -58,7 +58,7 @@ struct a_firm_opt firm_opt = {
   /* deconv          = */ FALSE,
   /* cc_opt          = */ TRUE,
   /* bool_opt        = */ FALSE,
-  /* end_melt        = */ FALSE,
+  /* shape_blocks    = */ FALSE,
   /* freestanding;   = */ FALSE,
   /* fp_model        = */ fp_model_precise,
   /* lower_ll        = */ FALSE,
@@ -199,8 +199,8 @@ static const struct params {
   { X("no-opt-cc"),              &firm_opt.cc_opt,           0, "firm: disable calling conventions optimization" },
   { X("bool"),                   &firm_opt.bool_opt,         1, "firm: enable bool simplification optimization" },
   { X("no-bool"),                &firm_opt.bool_opt,         0, "firm: disable bool simplification optimization" },
-  { X("end-melt"),               &firm_opt.end_melt,         1, "firm: enable end block melting" },
-  { X("no-end-melt"),            &firm_opt.end_melt,         0, "firm: disable end block melting" },
+  { X("shape-blocks"),           &firm_opt.shape_blocks,     1, "firm: enable block shaping" },
+  { X("no-shape-blcoks"),        &firm_opt.shape_blocks,     0, "firm: disable block shaping" },
   { X("freestanding"),           &firm_opt.freestanding,     1, "firm: freestanding environment" },
   { X("hosted"),                 &firm_opt.freestanding,     0, "firm: hosted environment" },
 
@@ -326,7 +326,7 @@ static void disable_opts(void) {
   firm_opt.deconv          = FALSE;
   firm_opt.cc_opt          = FALSE;
   firm_opt.bool_opt        = FALSE;
-  firm_opt.end_melt        = FALSE;
+  firm_opt.shape_blocks    = FALSE;
   firm_opt.freestanding    = TRUE;
 }  /* disable_opts */
 
index 7da2d8e..75d1408 100644 (file)
@@ -63,7 +63,7 @@ struct a_firm_opt {
   a_byte   deconv;          /**< enable conv node optimization */
   a_byte   cc_opt;          /**< optimize calling conventions */
   a_byte   bool_opt;        /**< perform bool simplification */
-  a_byte   end_melt;        /**< end block melting */
+  a_byte   shape_blocks;    /**< block shaping */
   a_byte   freestanding;    /**< if set, freestanding mode is enabled */
   a_byte   fp_model;        /**< fp model */
   a_byte   lower_ll;        /**< lower double word access */
index f7ef189..665dd5b 100644 (file)
@@ -387,7 +387,7 @@ static opt_config_t opts[] = {
        { OPT_TARGET_IRG, "gvnpre",      (func_ptr_t) do_gvn_pre,              true, true,  true,  -1 },
        { OPT_TARGET_IRG, "ifconv",      (func_ptr_t) do_if_conv,              true, true,  true,  TV_IF_CONV },
        { OPT_TARGET_IRG, "bool",        (func_ptr_t) opt_bool,                true, true,  true,  -1 },
-       { OPT_TARGET_IRG, "end-melt",    (func_ptr_t) melt_end_blocks,         true, true,  true,  TV_END_MELT },
+       { OPT_TARGET_IRG, "shape-blocks",(func_ptr_t) shape_blocks,            true, true,  true,  TV_END_MELT },
        { OPT_TARGET_IRG, "stred",       (func_ptr_t) do_stred,                true, true,  true,  TV_OSR },
        { OPT_TARGET_IRG, "dead",        (func_ptr_t) dead_node_elimination,   true, false, true,  TV_DEAD_NODE },
        { OPT_TARGET_IRP, "inline",      (func_ptr_t) do_inline,               true, true,  true,  -1 },
@@ -506,7 +506,7 @@ static void do_firm_optimizations(const char *input_filename)
   set_opt_enabled("gvnpre", firm_opt.gvn_pre);
   set_opt_enabled("ifconv", firm_opt.if_conversion);
   set_opt_enabled("bool", firm_opt.bool_opt);
-  set_opt_enabled("end-melt", firm_opt.end_melt);
+  set_opt_enabled("shape-blocks", firm_opt.shape_blocks);
   set_opt_enabled("inline", firm_opt.do_inline);
   set_opt_enabled("clone", firm_opt.cloning);
   set_opt_enabled("combo", firm_opt.combo);
@@ -563,7 +563,6 @@ static void do_firm_optimizations(const char *input_filename)
     do_irg_opt(irg, "lower");
     do_irg_opt(irg, "deconv");
     do_irg_opt(irg, "condeval");
-    do_irg_opt(irg, "lower_switch");
     do_irg_opt(irg, "remove_confirms");
     do_irg_opt(irg, "gvnpre");
     do_irg_opt(irg, "place");
@@ -576,7 +575,8 @@ static void do_firm_optimizations(const char *input_filename)
     }
 
     do_irg_opt(irg, "bool");
-    do_irg_opt(irg, "end-melt");
+    do_irg_opt(irg, "shape-blocks");
+    do_irg_opt(irg, "lower_switch");
     do_irg_opt(irg, "stred");
     do_irg_opt(irg, "local");
     do_irg_opt(irg, "dead");