mirror of https://github.com/xemu-project/xemu.git
target/riscv: rvv-1.0: relax RV_VLEN_MAX to 1024-bits
Signed-off-by: Frank Chang <frank.chang@sifive.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Message-Id: <20211210075704.23951-66-frank.chang@sifive.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
ff679b58e3
commit
8a4b52575a
|
@ -100,7 +100,7 @@ typedef struct CPURISCVState CPURISCVState;
|
|||
#include "pmp.h"
|
||||
#endif
|
||||
|
||||
#define RV_VLEN_MAX 256
|
||||
#define RV_VLEN_MAX 1024
|
||||
|
||||
FIELD(VTYPE, VLMUL, 0, 3)
|
||||
FIELD(VTYPE, VSEW, 3, 3)
|
||||
|
|
|
@ -567,8 +567,8 @@ static bool ldst_us_trans(uint32_t vd, uint32_t rs1, uint32_t data,
|
|||
base = get_gpr(s, rs1, EXT_NONE);
|
||||
|
||||
/*
|
||||
* As simd_desc supports at most 256 bytes, and in this implementation,
|
||||
* the max vector group length is 2048 bytes. So split it into two parts.
|
||||
* As simd_desc supports at most 2048 bytes, and in this implementation,
|
||||
* the max vector group length is 4096 bytes. So split it into two parts.
|
||||
*
|
||||
* The first part is vlen in bytes, encoded in maxsz of simd_desc.
|
||||
* The second part is lmul, encoded in data of simd_desc.
|
||||
|
|
|
@ -124,7 +124,7 @@ static inline int32_t vext_lmul(uint32_t desc)
|
|||
static inline uint32_t vext_max_elems(uint32_t desc, uint32_t esz)
|
||||
{
|
||||
/*
|
||||
* As simd_desc support at most 256 bytes, the max vlen is 256 bits.
|
||||
* As simd_desc support at most 2048 bytes, the max vlen is 1024 bits.
|
||||
* so vlen in bytes (vlenb) is encoded as maxsz.
|
||||
*/
|
||||
uint32_t vlenb = simd_maxsz(desc);
|
||||
|
|
Loading…
Reference in New Issue