mirror of https://github.com/xemu-project/xemu.git
target/riscv: rvv: Replace VSTART_CHECK_EARLY_EXIT in vext_ldst_us
Because the real vl (evl) of vext_ldst_us may be different (e.g. vlm.v/vsm.v/etc.), so the VSTART_CHECK_EARLY_EXIT checking function should be replaced by checking evl in vext_ldst_us. Signed-off-by: Max Chou <max.chou@sifive.com> Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> Message-ID: <20240918171412.150107-3-max.chou@sifive.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
b48381b1ee
commit
2f077842f2
|
@ -277,7 +277,10 @@ vext_ldst_us(void *vd, target_ulong base, CPURISCVState *env, uint32_t desc,
|
|||
uint32_t max_elems = vext_max_elems(desc, log2_esz);
|
||||
uint32_t esz = 1 << log2_esz;
|
||||
|
||||
VSTART_CHECK_EARLY_EXIT(env);
|
||||
if (env->vstart >= evl) {
|
||||
env->vstart = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
/* load bytes from guest memory */
|
||||
for (i = env->vstart; i < evl; env->vstart = ++i) {
|
||||
|
|
Loading…
Reference in New Issue