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.