On 2022/10/25 11:39, Alistair Francis wrote:
> On Fri, Sep 30, 2022 at 11:28 AM Weiwei Li <liweiwei@iscas.ac.cn> wrote:
>> All the check for Zcd instructions have been done in their trans function
>>
>> Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
>> Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
>> ---
>> target/riscv/translate.c | 7 -------
>> 1 file changed, 7 deletions(-)
>>
>> diff --git a/target/riscv/translate.c b/target/riscv/translate.c
>> index 347bc913eb..a55b4a7849 100644
>> --- a/target/riscv/translate.c
>> +++ b/target/riscv/translate.c
>> @@ -1087,13 +1087,6 @@ static void decode_opc(CPURISCVState *env, DisasContext *ctx, uint16_t opcode)
>> ((opcode & 0xe003) == 0xe000) ||
>> ((opcode & 0xe003) == 0xe002))) {
>> gen_exception_illegal(ctx);
>> - } else if (!(has_ext(ctx, RVC) || ctx->cfg_ptr->ext_zcd ||
>> - ctx->cfg_ptr->ext_zcmp || ctx->cfg_ptr->ext_zcmt) &&
>> - (((opcode & 0xe003) == 0x2000) ||
>> - ((opcode & 0xe003) == 0x2002) ||
>> - ((opcode & 0xe003) == 0xa000) ||
>> - ((opcode & 0xe003) == 0xa002))) {
>> - gen_exception_illegal(ctx);
> It's probably best to never add this in the first place.
>
> Remember that the extension can't be enabled until the last patch, so
> it's ok if we don't support it all in one go
>
> Alistair
OK. I'll update it in next version.
Regards,
Weiwei Li
>
>> } else {
>> ctx->opcode = opcode;
>> ctx->pc_succ_insn = ctx->base.pc_next + 2;
>> --
>> 2.25.1
>>
>>