-static INLINE pset *_put_live_out(const ir_node *block, pset *s)
-{
- _put_live(block, live_state_out, s);
- return s;
-}
-
-static INLINE pset *_put_live_end(const ir_node *block, pset *s)
-{
- _put_live(block, live_state_end, s);
- return s;
-}
-
-static INLINE int _is_phi_arg(const ir_node *irn)
-{
- const ir_edge_t *edge;
-
- assert(edges_activated(get_irn_irg(irn)) && "Please compute the out edges");
- foreach_out_edge(irn, edge)
- if(is_Phi(edge->src))
- return 1;
-
- return 0;
-}
-
-
-#define is_live_in(bl,irn) _is_live_in(bl, irn)
-#define is_live_out(bl,irn) _is_live_out(bl, irn)
-#define is_live_end(bl,irn) _is_live_end(bl, irn)
-#define put_live_in(bl,s) _put_live_in(bl, s)
-#define put_live_out(bl,s) _put_live_out(bl, s)
-#define put_live_end(bl,s) _put_live_end(bl, s)
-#define is_phi_arg(irn) _is_phi_arg(irn)
-
-/**
- * Initialize the liveness module.
- * To be called from be_init().
- */
-void be_liveness_init(void);
+#define be_lv_foreach_cls(lv, block, flags, cls, node) \
+ for (bool once = true; once;) \
+ for (lv_iterator_t iter = be_lv_iteration_begin((lv), (block)); once; once = false) \
+ for (ir_node *node; (node = be_lv_iteration_cls_next(&iter, (flags), (cls))) != NULL;)