On Wed, Oct 30, 2024 at 2:37 PM Anton Blanchard <[email protected]> wrote:
>
> vcompress packs vl or less fields into vd, so the tail starts after the
> last packed field. This could be more clearly expressed in the ISA,
> but for now this thread helps to explain it:
>
> https://github.com/riscv/riscv-v-spec/issues/796
>
> Signed-off-by: Anton Blanchard <[email protected]>

Reviewed-by: Alistair Francis <[email protected]>

Alistair

> ---
>  target/riscv/vector_helper.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/target/riscv/vector_helper.c b/target/riscv/vector_helper.c
> index 072bd444b1..ccb32e6122 100644
> --- a/target/riscv/vector_helper.c
> +++ b/target/riscv/vector_helper.c
> @@ -5132,7 +5132,7 @@ void HELPER(NAME)(void *vd, void *v0, void *vs1, void 
> *vs2,               \
>      }                                                                     \
>      env->vstart = 0;                                                      \
>      /* set tail elements to 1s */                                         \
> -    vext_set_elems_1s(vd, vta, vl * esz, total_elems * esz);              \
> +    vext_set_elems_1s(vd, vta, num * esz, total_elems * esz);             \
>  }
>
>  /* Compress into vd elements of vs2 where vs1 is enabled */
> --
> 2.34.1
>
>

Reply via email to