xtensa: Fix non-robust split condition in define_insn_and_split
authorKewen Lin <linkw@linux.ibm.com>
Mon, 22 Nov 2021 02:18:31 +0000 (20:18 -0600)
committerKewen Lin <linkw@linux.ibm.com>
Mon, 22 Nov 2021 02:18:31 +0000 (20:18 -0600)
This patch is to fix some non-robust split conditions in some
define_insn_and_splits, to make each of them applied on top of
the corresponding condition for define_insn part, otherwise the
splitting could perform unexpectedly.

gcc/ChangeLog:

* config/xtensa/xtensa.md (movdi_internal, movdf_internal): Fix split
condition.

gcc/config/xtensa/xtensa.md

index cdf22f1..e0bf720 100644 (file)
   "register_operand (operands[0], DImode)
    || register_operand (operands[1], DImode)"
   "#"
-  "reload_completed"
+  "&& reload_completed"
   [(set (match_dup 0) (match_dup 2))
    (set (match_dup 1) (match_dup 3))]
 {
   "register_operand (operands[0], DFmode)
    || register_operand (operands[1], DFmode)"
   "#"
-  "reload_completed"
+  "&& reload_completed"
   [(set (match_dup 0) (match_dup 2))
    (set (match_dup 1) (match_dup 3))]
 {