Re: [Qemu-devel] [PATCH 2/2] target-mips: reimplement SC instruction and use cmpxchg

2016-09-27 Thread Leon Alrae
On Wed, Sep 21, 2016 at 01:16:28PM -0700, Richard Henderson wrote: > On 09/21/2016 01:07 AM, Leon Alrae wrote: > >+tcg_gen_brcond_tl(TCG_COND_EQ, addr, cpu_lladdr, l1); > >+tcg_temp_free(addr); > >+tcg_gen_movi_tl(t0, 0); > >+tcg_gen_br(done); > >+ > >+gen_set_label(l1); > >+

Re: [Qemu-devel] [PATCH 2/2] target-mips: reimplement SC instruction and use cmpxchg

2016-09-21 Thread Richard Henderson
On 09/21/2016 01:07 AM, Leon Alrae wrote: +tcg_gen_brcond_tl(TCG_COND_EQ, addr, cpu_lladdr, l1); +tcg_temp_free(addr); +tcg_gen_movi_tl(t0, 0); +tcg_gen_br(done); + +gen_set_label(l1); +/* generate cmpxchg */ +val = tcg_temp_new(); +gen_load_gpr(val, rt); +tcg_

Re: [Qemu-devel] [PATCH 2/2] target-mips: reimplement SC instruction and use cmpxchg

2016-09-19 Thread Leon Alrae
On Fri, Sep 16, 2016 at 09:48:51AM -0700, Richard Henderson wrote: > On 09/15/2016 01:44 AM, Leon Alrae wrote: > > /* Store conditional */ > >+static void gen_st_cond(DisasContext *ctx, int rt, int base, int offset, > >+int size) > > { > >+TCGv addr, t0, val; > >+TCG

Re: [Qemu-devel] [PATCH 2/2] target-mips: reimplement SC instruction and use cmpxchg

2016-09-16 Thread Richard Henderson
On 09/15/2016 01:44 AM, Leon Alrae wrote: /* Store conditional */ +static void gen_st_cond(DisasContext *ctx, int rt, int base, int offset, +int size) { +TCGv addr, t0, val; +TCGLabel *l1 = gen_new_label(); +TCGLabel *l2 = gen_new_label(); +TCGLabel *done