From: Claudiu Zissulescu Date: Tue, 17 Oct 2023 09:23:19 +0000 (+0300) Subject: arc: Remove mpy_dest_reg_operand predicate X-Git-Tag: basepoints/gcc-15~5249 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2287fa29fd28ae39963de80d5f845be2c6ab8675;p=thirdparty%2Fgcc.git arc: Remove mpy_dest_reg_operand predicate The mpy_dest_reg_operand is just a wrapper for register_operand. Remove it. gcc/ * config/arc/arc.md (mulsi3_700): Update pattern. (mulsi3_v2): Likewise. * config/arc/predicates.md (mpy_dest_reg_operand): Remove it. Signed-off-by: Claudiu Zissulescu --- diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md index 22af0bf47ddb..325e4f56b9bc 100644 --- a/gcc/config/arc/arc.md +++ b/gcc/config/arc/arc.md @@ -2293,7 +2293,7 @@ archs4x, archs4xd" ; registers, since it cannot be the destination of a multi-cycle insn ; like MPY or MPYU. (define_insn "mulsi3_700" - [(set (match_operand:SI 0 "mpy_dest_reg_operand" "=r, r,r, r,r") + [(set (match_operand:SI 0 "register_operand" "=r, r,r, r,r") (mult:SI (match_operand:SI 1 "register_operand" "%0, r,0, 0,r") (match_operand:SI 2 "nonmemory_operand" "rL,rL,I,Cal,Cal")))] "TARGET_ARC700_MPY" @@ -2306,8 +2306,8 @@ archs4x, archs4xd" ; ARCv2 has no penalties between mpy and mpyu. So, we use mpy because of its ; short variant. LP_COUNT constraints are still valid. (define_insn "mulsi3_v2" - [(set (match_operand:SI 0 "mpy_dest_reg_operand" "=q,q, r, r,r, r, r") - (mult:SI (match_operand:SI 1 "register_operand" "%0,q, 0, r,0, 0, c") + [(set (match_operand:SI 0 "register_operand" "=q,q, r, r,r, r, r") + (mult:SI (match_operand:SI 1 "register_operand" "%0,q, 0, r,0, 0, r") (match_operand:SI 2 "nonmemory_operand" "q,0,rL,rL,I,Cal,Cal")))] "TARGET_MULTI" "@ diff --git a/gcc/config/arc/predicates.md b/gcc/config/arc/predicates.md index e37d8844979a..e0aef86fd247 100644 --- a/gcc/config/arc/predicates.md +++ b/gcc/config/arc/predicates.md @@ -23,13 +23,6 @@ return register_operand (op, mode); }) -(define_predicate "mpy_dest_reg_operand" - (match_code "reg,subreg") -{ - return register_operand (op, mode); -}) - - ;; Returns 1 if OP is a symbol reference. (define_predicate "symbolic_operand" (match_code "symbol_ref, label_ref, const")