-#define BE_SCHED_NODE(irn) (be_is_Keep(irn) || be_is_CopyKeep(irn) || be_is_RegParams(irn))
-
-enum {
- BE_SCHED_SELECT_TRIVIAL,
- BE_SCHED_SELECT_REGPRESS,
- BE_SCHED_SELECT_MUCHNIK,
- BE_SCHED_SELECT_HEUR,
- BE_SCHED_SELECT_HMUCHNIK,
- BE_SCHED_SELECT_RANDOM,
- BE_SCHED_SELECT_NORMAL,
-};
-
-enum {
- BE_SCHED_PREP_NONE = 0,
- BE_SCHED_PREP_MRIS = 2,
- BE_SCHED_PREP_RSS = 3
-};
-
-typedef struct _list_sched_options_t {
- int select; /**< the node selector */
- int prep; /**< schedule preparation */
-} list_sched_options_t;
-
-static list_sched_options_t list_sched_options = {
- BE_SCHED_SELECT_NORMAL, /* mueller heuristic selector */
- BE_SCHED_PREP_NONE, /* no scheduling preparation */
-};
-
-/* schedule selector options. */
-static const lc_opt_enum_int_items_t sched_select_items[] = {
- { "trivial", BE_SCHED_SELECT_TRIVIAL },
- { "random", BE_SCHED_SELECT_RANDOM },
- { "regpress", BE_SCHED_SELECT_REGPRESS },
- { "normal", BE_SCHED_SELECT_NORMAL },
- { "muchnik", BE_SCHED_SELECT_MUCHNIK },
- { "heur", BE_SCHED_SELECT_HEUR },
- { "hmuchnik", BE_SCHED_SELECT_HMUCHNIK },
- { NULL, 0 }
-};
-
-/* schedule preparation options. */
-static const lc_opt_enum_int_items_t sched_prep_items[] = {
- { "none", BE_SCHED_PREP_NONE },
- { "mris", BE_SCHED_PREP_MRIS },
- { "rss", BE_SCHED_PREP_RSS },
- { NULL, 0 }
-};
-
-static lc_opt_enum_int_var_t sched_select_var = {
- &list_sched_options.select, sched_select_items
-};
-
-static lc_opt_enum_int_var_t sched_prep_var = {
- &list_sched_options.prep, sched_prep_items
-};
-
-static const lc_opt_table_entry_t list_sched_option_table[] = {
- LC_OPT_ENT_ENUM_PTR("prep", "schedule preparation", &sched_prep_var),
- LC_OPT_ENT_ENUM_PTR("select", "node selector", &sched_select_var),
- LC_OPT_LAST
-};
-
-/**
- * All scheduling info needed per node.
- */
-typedef struct _sched_irn_t {
- unsigned num_not_sched_user; /**< The number of not yet scheduled users of this node */
- unsigned already_sched : 1; /**< Set if this node is already scheduled */
-} sched_irn_t;
-