aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPan Li <pan2.li@intel.com>2024-04-25 08:55:08 +0800
committerPan Li <pan2.li@intel.com>2024-04-25 14:36:32 +0800
commit10ad46bc191f8aa90b0d7b00963bfd52c6d7b09c (patch)
treeb6ab95ae65c6c077704c1a59b31886e0084a34b3
parentc058105bc47a0701e157d1028e60f48554561f9f (diff)
downloadgcc-10ad46bc191f8aa90b0d7b00963bfd52c6d7b09c.zip
gcc-10ad46bc191f8aa90b0d7b00963bfd52c6d7b09c.tar.gz
gcc-10ad46bc191f8aa90b0d7b00963bfd52c6d7b09c.tar.bz2
RISC-V: Add early clobber to the dest of vwsll
We missed the existing early clobber for the dest operand of vwsll pattern when resolve the conflict of revert register overlap. Thus add it back to the pattern. Unfortunately, we have no test to cover this part and will improve this after GCC-15 open. The below tests are passed for this patch: * The rv64gcv fully regression test with isl build. gcc/ChangeLog: * config/riscv/vector-crypto.md: Add early clobber to the dest operand of vwsll. Signed-off-by: Pan Li <pan2.li@intel.com>
-rwxr-xr-xgcc/config/riscv/vector-crypto.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/config/riscv/vector-crypto.md b/gcc/config/riscv/vector-crypto.md
index 8a4888a..e474ddf 100755
--- a/gcc/config/riscv/vector-crypto.md
+++ b/gcc/config/riscv/vector-crypto.md
@@ -303,7 +303,7 @@
(set_attr "mode" "<V_DOUBLE_TRUNC>")])
(define_insn "@pred_vwsll<mode>_scalar"
- [(set (match_operand:VWEXTI 0 "register_operand" "=vr, vr")
+ [(set (match_operand:VWEXTI 0 "register_operand" "=&vr, &vr")
(if_then_else:VWEXTI
(unspec:<VM>
[(match_operand:<VM> 1 "vector_mask_operand" "vmWc1, vmWc1")