[ARC] Update ARC600 multiplication cost.
authorClaudiu Zissulescu <claziss@gmail.com>
Mon, 27 Jan 2020 12:51:03 +0000 (14:51 +0200)
committerClaudiu Zissulescu <claziss@gmail.com>
Mon, 27 Jan 2020 12:51:03 +0000 (14:51 +0200)
gcc/
xxxx-xx-xx  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.c (arc_rtx_costs): Update mul64 cost.

gcc/ChangeLog
gcc/config/arc/arc.c

index d75d5634fbc7efd6cab8858c533d313a591f32e0..a7ad5fa5f932473222736ff30f5c4e00a3fbaa24 100644 (file)
@@ -1,3 +1,7 @@
+2020-01-27  Claudiu Zissulescu  <claziss@synopsys.com>
+
+       * config/arc/arc.c (arc_rtx_costs): Update mul64 cost.
+
 2020-01-27  Claudiu Zissulescu  <claziss@synopsys.com>
 
        * config/arc/arc-protos.h (gen_mlo): Remove.
index a1f863f17ca8fe8ef88d2aa069d45b5f210388ca..bc342350440929d3f02a0180008f589f0b2ffb3e 100644 (file)
@@ -5877,6 +5877,12 @@ arc_rtx_costs (rtx x, machine_mode mode, int outer_code,
                  nolimm = true;
                if (satisfies_constraint_Clo (x))
                  nolimm = true;
+               break;
+             case MULT:
+               if (TARGET_MUL64_SET)
+                 if (SIGNED_INT12 (INTVAL (x)))
+                   nolimm = true;
+               break;
              default:
                break;
              }