On 12/06/2016 08:22 AM, Alex Bennée wrote:
>> > +                if (fv == 1 && tv == 0) {
>> > +                    cond = tcg_invert_cond(cond);
>> > +                } else if (!(tv == 1 && fv == 0)) {
>> > +                    goto do_default;
>> > +                }
> Why the weird exit early here on an inverted test. Couldn't it just be
> 
>                 } else if (tv == 1 && fv == 0) {
>                     args[3] = cond;
>                     op->opc = opc = (opc == INDEX_op_movcond_i32
>                                      ? INDEX_op_setcond_i32
>                                      : INDEX_op_setcond_i64);
>                     nb_iargs = 2;
>                 }
> 
> And fall through to the goto do_default as before?
> 

Not if you want to share the update code with the first case above.


r~

Reply via email to