-const list_sched_selector_t reg_pressure_selector = {
- reg_pressure_graph_init,
- reg_pressure_block_init,
- reg_pressure_select,
- NULL, /* to_appear_in_schedule */
- NULL, /* node_ready */
- NULL, /* node_selected */
- NULL, /* exectime */
- NULL, /* latency */
- reg_pressure_block_free,
- free
-};
+static void sched_reg_pressure(ir_graph *irg)
+{
+ static const list_sched_selector_t reg_pressure_selector = {
+ reg_pressure_graph_init,
+ reg_pressure_block_init,
+ reg_pressure_select,
+ NULL, /* node_ready */
+ NULL, /* node_selected */
+ reg_pressure_block_free,
+ free
+ };
+ be_list_sched_graph(irg, ®_pressure_selector);
+}
+
+BE_REGISTER_MODULE_CONSTRUCTOR(be_init_sched_regpress)
+void be_init_sched_regpress(void)
+{
+ be_register_scheduler("regpress", sched_reg_pressure);
+}