Fix some testsuite failures for H8/SX multilibs where short branches where used when...
authorJeff Law <law@torsion.usersys.redhat.com>
Tue, 28 Apr 2020 20:34:45 +0000 (16:34 -0400)
committerJeff Law <law@torsion.usersys.redhat.com>
Tue, 28 Apr 2020 20:37:48 +0000 (16:37 -0400)
* config/h8300/h8300.md (H8/SX mult patterns): All H8/SX specific
multiply patterns are 4 bytes long.

gcc/ChangeLog
gcc/config/h8300/h8300.md

index 905d2b8a2f5377e8d6f526cfcbc0d7ddc4ac9aa8..9c94729996418512d6e2d6ca05898f3ccf027469 100644 (file)
@@ -1,3 +1,8 @@
+2020-04-28  Jeff Law  <law@redhat.com>
+
+       * config/h8300/h8300.md (H8/SX mult patterns): All H8/SX specific
+       multiply patterns are 4 bytes long.
+
 2020-04-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * config/arm/arm-cpus.in (cortex-m55): Remove +nofp option.
index fdd2d8b02d73a46b4e76f521e0ff3763d687ea7c..3e5cdbeeebe1b66e6a7080ce483d1fb92947aa80 100644 (file)
                  (match_operand:HSI 2 "reg_or_nibble_operand" "r IP4>X")))]
   "TARGET_H8300SX"
   { return <MODE>mode == HImode ? "muls.w\\t%T2,%T0" : "muls.l\\t%S2,%S0"; }
-  [(set_attr "length" "2")
+  [(set_attr "length" "4")
    (set_attr "cc" "set_zn")])
 
 (define_insn "smulsi3_highpart"
          (const_int 32))))]
   "TARGET_H8300SXMUL"
   "muls/u.l\\t%S2,%S0"
-  [(set_attr "length" "2")
+  [(set_attr "length" "4")
    (set_attr "cc" "set_zn")])
 
 (define_insn "umulsi3_highpart"
            (const_int 32))))]
   "TARGET_H8300SX"
   "mulu/u.l\\t%S2,%S0"
-  [(set_attr "length" "2")
+  [(set_attr "length" "4")
    (set_attr "cc" "none_0hit")])
 
 ;; This is a "bridge" instruction.  Combine can't cram enough insns