The following patch fixes a typo in usage of register_move_cost. For most targets, the change does not matter as the cost function is symmetric relative to args.

  The patch was bootstrapped on x86-64.

  Committed as rev. 218875.

2014-12-18  Vladimir Makarov  <vmaka...@redhat.com>

        * lra-constraints.c (lra-constraints.c): Exchange places of sclass
        and dclass.
Index: lra-constraints.c
===================================================================
--- lra-constraints.c   (revision 218835)
+++ lra-constraints.c   (working copy)
@@ -3197,7 +3197,7 @@ simple_move_p (void)
          && (sclass = get_op_class (src)) != NO_REGS
          /* The backend guarantees that register moves of cost 2
             never need reloads.  */
-         && targetm.register_move_cost (GET_MODE (src), dclass, sclass) == 2);
+         && targetm.register_move_cost (GET_MODE (src), sclass, dclass) == 2);
  }
 
 /* Swap operands NOP and NOP + 1. */

Reply via email to