- void (*_hook_tail_rec)(void *context, ir_graph *irg);
- void (*_hook_strength_red)(void *context, ir_graph *irg, ir_node *strong, ir_node *cmp);
- void (*_hook_dead_node_elim_start)(void *context, ir_graph *irg);
- void (*_hook_dead_node_elim_stop)(void *context, ir_graph *irg);
+
+ /** This hook is called, before tail recursion is applied to a graph. */
+ void (*_hook_tail_rec)(void *context, ir_graph *irg, int n_calls);
+
+ /** This hook is called, before a node is replaced due to strength reduction */
+ void (*_hook_strength_red)(void *context, ir_graph *irg, ir_node *node);
+
+ /** This hook is called, when dead node elimination is started/stopped. */
+ void (*_hook_dead_node_elim)(void *context, ir_graph *irg, int start);
+
+ /** This hook is called, when a node is substituted during dead node elimination. */
+ void (*_hook_dead_node_elim_subst)(void *context, ir_graph *irg, ir_node *old, ir_node *nw);
+
+ /** This hook is called after if conversion has run. */