OSDN Git Service

PR target/39942
[pf3gnuchains/gcc-fork.git] / gcc / ira-lives.c
index c7d9572..4390c6f 100644 (file)
@@ -782,10 +782,11 @@ process_single_reg_class_operands (bool in_p, int freq)
                  [ira_class_hard_regs[cl][0]]) >= 0
              && reg_class_size[cl] <= (unsigned) CLASS_MAX_NREGS (cl, mode))
            {
-             /* ??? FREQ */
-             cost = freq * (in_p
-                            ? ira_register_move_cost[mode][cover_class][cl]
-                            : ira_register_move_cost[mode][cl][cover_class]);
+             cost
+               = (freq
+                  * (in_p
+                     ? ira_get_register_move_cost (mode, cover_class, cl)
+                     : ira_get_register_move_cost (mode, cl, cover_class)));
              ira_allocate_and_set_costs
                (&ALLOCNO_CONFLICT_HARD_REG_COSTS (operand_a), cover_class, 0);
              ALLOCNO_CONFLICT_HARD_REG_COSTS (operand_a)
@@ -838,7 +839,7 @@ process_bb_node_lives (ira_loop_tree_node_t loop_tree_node)
          high_pressure_start_point[ira_reg_class_cover[i]] = -1;
        }
       curr_bb_node = loop_tree_node;
-      reg_live_out = df_get_live_out (bb);
+      reg_live_out = DF_LR_OUT (bb);
       sparseset_clear (allocnos_live);
       REG_SET_TO_HARD_REG_SET (hard_regs_live, reg_live_out);
       AND_COMPL_HARD_REG_SET (hard_regs_live, eliminable_regset);