Hi, all: In the second version of this patch, I addressed the issue that other vector instructions didn't check for vstart >= vl correctly.
I refactored the VSTART_CHECK_EARLY_EXIT() macro. This change is intended to: Vector instructions with special vl values can also be checked with this macro, such as vlm.v instruction (real vl = ceil(vl / 8)). PATCH v1: https://lore.kernel.org/qemu-riscv/cover.1734423785.git.lc00...@tecorigin.com/ Chao Liu (2): target/riscv: refactor VSTART_CHECK_EARLY_EXIT() to accept vl as a parameter target/riscv: fix handling of nop for vstart >= vl in some vector instruction target/riscv/vcrypto_helper.c | 32 ++++++------- target/riscv/vector_helper.c | 83 ++++++++++++++++++--------------- target/riscv/vector_internals.c | 4 +- target/riscv/vector_internals.h | 12 ++--- 4 files changed, 69 insertions(+), 62 deletions(-) -- 2.47.1