Do not ignore costs of jump insns in combine.
authorBernd Schmidt <bernds_cb1@t-online.de>
Sun, 24 Nov 2019 13:11:55 +0000 (13:11 +0000)
committerBernd Schmidt <bernds@gcc.gnu.org>
Sun, 24 Nov 2019 13:11:55 +0000 (13:11 +0000)
* combine.c (combine_instructions): Record costs for jumps.

From-SVN: r278655

gcc/ChangeLog
gcc/combine.c

index cd4b96d7697d3ed2e0b9f35eb0d8b5e0c4bb2cd8..5f94745c0da4cb6a7688870836feb04d06eac161 100644 (file)
@@ -3,6 +3,8 @@
        * config/i386/i386.c (ix86_rtx_costs): Handle care of a PLUS in a
        COMPARE, representing an overflow detection.
 
+       * combine.c (combine_instructions): Record costs for jumps.
+
 2019-11-23  Jan Hubicka  <hubicka@ucw.cz>
 
        * cif-code.def (MAX_INLINE_INSNS_SINGLE_O2_LIMIT): Remove.
index a9721ebdcc0204edd78970b5c1594fa79e9584e8..f480633061d6baaece0993ddec23afeda3d3dcbd 100644 (file)
@@ -1233,8 +1233,7 @@ combine_instructions (rtx_insn *f, unsigned int nregs)
                                                    insn);
 
            /* Record the current insn_cost of this instruction.  */
-           if (NONJUMP_INSN_P (insn))
-             INSN_COST (insn) = insn_cost (insn, optimize_this_for_speed_p);
+           INSN_COST (insn) = insn_cost (insn, optimize_this_for_speed_p);
            if (dump_file)
              {
                fprintf (dump_file, "insn_cost %d for ", INSN_COST (insn));