backend is responsible for defining what lowering operations need to be performed...
[libfirm] / ir / lower / lower_copyb.c
index 2d5400a..f2209c7 100644 (file)
@@ -64,7 +64,8 @@ static ir_mode *get_ir_mode(unsigned bytes)
 /**
  * lower a CopyB node.
  */
-static void lower_copyb_nodes(ir_node *irn, unsigned mode_bytes) {
+static void lower_copyb_nodes(ir_node *irn, unsigned mode_bytes)
+{
        ir_graph        *irg = current_ir_graph;
        unsigned         size;
        unsigned         offset;
@@ -102,14 +103,14 @@ static void lower_copyb_nodes(ir_node *irn, unsigned mode_bytes) {
                        add        = new_r_Add(block, addr_src, addr_const, addr_mode);
 
                        load     = new_r_Load(block, mem, add, mode, 0);
-                       load_res = new_r_Proj(block, load, mode, pn_Load_res);
-                       load_mem = new_r_Proj(block, load, mode_M, pn_Load_M);
+                       load_res = new_r_Proj(load, mode, pn_Load_res);
+                       load_mem = new_r_Proj(load, mode_M, pn_Load_M);
 
                        addr_const = new_r_Const_long(irg, mode_Iu, offset);
                        add        = new_r_Add(block, addr_dst, addr_const, addr_mode);
 
                        store     = new_r_Store(block, load_mem, add, load_res, 0);
-                       store_mem = new_r_Proj(block, store, mode_M, pn_Store_M);
+                       store_mem = new_r_Proj(store, mode_M, pn_Store_M);
 
                        mem = store_mem;
                }
@@ -126,7 +127,8 @@ static void lower_copyb_nodes(ir_node *irn, unsigned mode_bytes) {
 /**
  * Post-Walker: find small CopyB nodes.
  */
-static void find_copyb_nodes(ir_node *irn, void *ctx) {
+static void find_copyb_nodes(ir_node *irn, void *ctx)
+{
        walk_env_t *env = ctx;
        ir_type    *tp;
        unsigned   size;
@@ -135,7 +137,7 @@ static void find_copyb_nodes(ir_node *irn, void *ctx) {
        if (is_Proj(irn)) {
                ir_node *pred = get_Proj_pred(irn);
 
-               if (is_CopyB(pred) && get_Proj_proj(irn) != pn_CopyB_M_regular) {
+               if (is_CopyB(pred) && get_Proj_proj(irn) != pn_CopyB_M) {
                        /* found an exception Proj: remove it from the list again */
                        entry = get_irn_link(pred);
                        list_del(&entry->list);