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/bfin/bfin.md (movdi_insn, movdf_insn): Fix split condition. --- gcc/config/bfin/bfin.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/config/bfin/bfin.md b/gcc/config/bfin/bfin.md index fd65f4d9e63..41a50974136 100644 --- a/gcc/config/bfin/bfin.md +++ b/gcc/config/bfin/bfin.md @@ -506,7 +506,7 @@ (define_insn_and_split "movdi_insn" (match_operand:DI 1 "general_operand" "iFx,r,mx"))] "GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) == REG" "#" - "reload_completed" + "&& reload_completed" [(set (match_dup 2) (match_dup 3)) (set (match_dup 4) (match_dup 5))] { @@ -718,7 +718,7 @@ (define_insn_and_split "movdf_insn" (match_operand:DF 1 "general_operand" "iFx,r,mx"))] "GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) == REG" "#" - "reload_completed" + "&& reload_completed" [(set (match_dup 2) (match_dup 3)) (set (match_dup 4) (match_dup 5))] { -- 2.27.0