On 08/31/2018 06:39 AM, Aleksandar Markovic wrote: >> + gen_load_mxu_cr(t0); >> + tcg_gen_andi_tl(t0, t0, MXUEN); >> + tcg_gen_brcondi_tl(TCG_COND_NE, t0, MXUEN, l0); >> + >> + gen_load_gpr(t0, rb); >> + tcg_gen_addi_tl(t0, t0, (int8_t)s8); > > I am not sure if this works as desired, with respect to branching. In order > to survive branching, tcg variables must be initialized with > tcg_temp_local_new(), rather than with tcg_tem_new(). Please retest, and > amend if needed.
There is no value live across the branch here. T0 is used before the branch, yes, but it is also reset immediately via the gen_load_gpr after the branch. This is fine. r~