refactor mode_b lowerer to have a create_set callback
[libfirm] / ir / be / bemain.c
index 3feeb6c..ad6a23d 100644 (file)
 
 #define NEW_ID(s) new_id_from_chars(s, sizeof(s) - 1)
 
-#ifdef WITH_ILP
-#include "beilpsched.h"
-#endif /* WITH_ILP */
-
 /* options visible for anyone */
 static be_options_t be_options = {
        DUMP_NONE,                         /* dump flags */
        BE_TIME_OFF,                       /* no timing */
        0,                                 /* no opt profile */
        0,                                 /* try to omit frame pointer */
-       0,                                 /* try to omit leaf frame pointer */
        0,                                 /* create PIC code */
        0,                                 /* create gprof compatible profiling code */
        BE_VERIFY_WARN,                    /* verification level: warn */
-       BE_SCHED_LIST,                     /* scheduler: list scheduler */
        "linux",                           /* target OS name */
        "i44pc52.info.uni-karlsruhe.de",   /* ilp server */
        "cplex",                           /* ilp solver */
@@ -127,15 +121,6 @@ static const lc_opt_enum_int_items_t verify_items[] = {
        { NULL,     0 }
 };
 
-/* scheduling options. */
-static const lc_opt_enum_int_items_t sched_items[] = {
-       { "list", BE_SCHED_LIST },
-#ifdef WITH_ILP
-       { "ilp",  BE_SCHED_ILP  },
-#endif /* WITH_ILP */
-       { NULL,   0 }
-};
-
 static lc_opt_enum_mask_var_t dump_var = {
        &be_options.dump_flags, dump_items
 };
@@ -144,21 +129,15 @@ static lc_opt_enum_int_var_t verify_var = {
        &be_options.verify_option, verify_items
 };
 
-static lc_opt_enum_int_var_t sched_var = {
-       &be_options.scheduler, sched_items
-};
-
 static const lc_opt_table_entry_t be_main_options[] = {
        LC_OPT_ENT_STR      ("config",     "read another config file containing backend options", config_file, sizeof(config_file)),
        LC_OPT_ENT_ENUM_MASK("dump",       "dump irg on several occasions",                       &dump_var),
        LC_OPT_ENT_BOOL     ("omitfp",     "omit frame pointer",                                  &be_options.omit_fp),
-       LC_OPT_ENT_BOOL     ("omitleaffp", "omit frame pointer in leaf routines",                 &be_options.omit_leaf_fp),
        LC_OPT_ENT_BOOL     ("pic",        "create PIC code",                                     &be_options.pic),
        LC_OPT_ENT_BOOL     ("gprof",      "create gprof profiling code",                         &be_options.gprof),
        LC_OPT_ENT_ENUM_PTR ("verify",     "verify the backend irg",                              &verify_var),
        LC_OPT_ENT_BOOL     ("time",       "get backend timing statistics",                       &be_options.timing),
        LC_OPT_ENT_BOOL     ("profile",    "instrument the code for execution count profiling",   &be_options.opt_profile),
-       LC_OPT_ENT_ENUM_PTR ("sched",      "select a scheduler",                                  &sched_var),
        LC_OPT_ENT_STR      ("os",         "specify target operating system",                     &be_options.target_os, sizeof(be_options.target_os)),
 #ifdef FIRM_STATISTICS
        LC_OPT_ENT_BOOL     ("statev",     "dump statistic events",                               &be_options.statev),
@@ -671,18 +650,7 @@ static void be_main_loop(FILE *file_handle, const char *cup_name)
 
                /* schedule the irg */
                be_timer_push(T_SCHED);
-               switch (be_options.scheduler) {
-                       default:
-                               fprintf(stderr, "Warning: invalid scheduler (%d) selected, falling back to list scheduler.\n", be_options.scheduler);
-                       case BE_SCHED_LIST:
-                               list_sched(irg);
-                               break;
-#ifdef WITH_ILP
-                       case BE_SCHED_ILP:
-                               be_ilp_sched(irg);
-                               break;
-#endif /* WITH_ILP */
-               };
+               list_sched(irg);
                be_timer_pop(T_SCHED);
 
                dump(DUMP_SCHED, irg, "sched");
@@ -697,7 +665,6 @@ static void be_main_loop(FILE *file_handle, const char *cup_name)
                /* we switch off optimizations here, because they might cause trouble */
                save_optimization_state(&state);
                set_optimize(0);
-               set_opt_normalize(0);
                set_opt_cse(0);
 
                /* add Keeps for should_be_different constrained nodes  */