On 09/26/2013 05:48 PM, Alexander Graf wrote: > + tcg_cmp = tcg_temp_new_i64(); > + tcg_mask = tcg_const_i64(mask); > + tcg_gen_and_i64(tcg_cmp, cpu_reg(source), tcg_mask); > + > + no_match = gen_new_label(); > + if (is_one) { > + tcg_gen_brcond_i64(TCG_COND_NE, tcg_cmp, tcg_mask, no_match); > + } else { > + tcg_gen_brcond_i64(TCG_COND_EQ, tcg_cmp, tcg_mask, no_match); > + }
You'd do better to brcond vs zero after the and. r~