On 10/27/21 23:20, Richard Henderson wrote:
> On 10/27/21 11:07 AM, Philippe Mathieu-Daudé wrote:
>> +static bool trans_msa_bit(DisasContext *ctx, arg_msa_bit *a,
>> +                          gen_helper_piiii *gen_msa_bit)
>>  {
>> +    if (a->df < 0) {
>> +        return false;
>>      }
> 
> This test should happen before the msa check...
>>   +    gen_msa_bit(cpu_env,
>> +                tcg_constant_i32(a->df),
>> +                tcg_constant_i32(a->wd),
>> +                tcg_constant_i32(a->ws),
>> +                tcg_constant_i32(a->m));
>>   +    return true;
>>   }
>>   +TRANS_MSA(SLLI,     trans_msa_bit, gen_helper_msa_slli_df);
> 
> ... currently being hidden in here.
> 
> This is the reason why I suggest TRANS_MSA be dispensed with.  You won't
> have over-many explicit trans_* functions in which you need to place the
> msa check, I think.

Yes, you are right.

Reply via email to