From: Pan Li Date: Mon, 22 Apr 2024 12:44:38 +0000 (+0800) Subject: Revert "RISC-V: Robostify the W43, W86, W87 constraint enabled attribute" X-Git-Tag: basepoints/gcc-15~66 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b78c88438cf3672987736edc013ffc0b20e879f7;p=thirdparty%2Fgcc.git Revert "RISC-V: Robostify the W43, W86, W87 constraint enabled attribute" This reverts commit d3544cea63d0a642b6357a7be55986f5562beaa0. --- diff --git a/gcc/config/riscv/riscv.md b/gcc/config/riscv/riscv.md index f0928398698c..3628e2215dab 100644 --- a/gcc/config/riscv/riscv.md +++ b/gcc/config/riscv/riscv.md @@ -552,28 +552,13 @@ (match_test "riscv_get_v_regno_alignment (GET_MODE (operands[0])) != 2")) (const_string "no") - (and (eq_attr "group_overlap" "W42") + (and (eq_attr "group_overlap" "W42,W43") (match_test "riscv_get_v_regno_alignment (GET_MODE (operands[0])) != 4")) (const_string "no") - (and (eq_attr "group_overlap" "W84") + (and (eq_attr "group_overlap" "W84,W86,W87") (match_test "riscv_get_v_regno_alignment (GET_MODE (operands[0])) != 8")) (const_string "no") - - ;; According to RVV ISA: - ;; The destination EEW is greater than the source EEW, the source EMUL is at least 1, - ;; and the overlap is in the highest-numbered part of the destination register group - ;; (e.g., when LMUL=8, vzext.vf4 v0, v6 is legal, but a source of v0, v2, or v4 is not). - ;; So the source operand should have LMUL >= 1. - (and (eq_attr "group_overlap" "W43") - (match_test "riscv_get_v_regno_alignment (GET_MODE (operands[0])) != 4 - && riscv_get_v_regno_alignment (GET_MODE (operands[3])) >= 1")) - (const_string "no") - - (and (eq_attr "group_overlap" "W86,W87") - (match_test "riscv_get_v_regno_alignment (GET_MODE (operands[0])) != 8 - && riscv_get_v_regno_alignment (GET_MODE (operands[3])) >= 1")) - (const_string "no") ] (const_string "yes")))