On 08/03/2018 03:48 AM, Aleksandar Rikalo wrote: >> > However, it looks there is a bigger problem now in SCWP. QEMU crashes with >> > this message: >> > >> > /qemu/tcg/tcg.c:2862: tcg fatal error
I said remove all of the tcg_temp_local_new that were not necessary. You removed one that was necessary. This value is live across a branch. r~ diff --git a/target/mips/translate.c b/target/mips/translate.c index 8306986c86..b1525adff3 100644 --- a/target/mips/translate.c +++ b/target/mips/translate.c @@ -2473,7 +2473,7 @@ static void gen_st_cond static void gen_scwp(DisasContext *ctx, uint32_t base, int16_t offset, uint32_t reg1, uint32_t reg2) { - TCGv taddr = tcg_temp_new(); + TCGv taddr = tcg_temp_local_new(); TCGv lladdr = tcg_temp_new(); TCGv_i64 tval = tcg_temp_new_i64(); TCGv_i64 llval = tcg_temp_new_i64();