On Sun, Nov 18, 2012 at 7:19 AM, Max Filippov <jcmvb...@gmail.com> wrote: > Hi Aurelien, > > starting with commit 2c0366f tcg: don't explicitly save globals and temps > I get the following abort on target-xtensa: > > qemu-system-xtensa: tcg/tcg.c:1665: temp_save: Assertion > `s->temps[temp].val_type == 2 || s->temps[temp].fixed_reg' failed. > Aborted > > I see that that commit only adds assertion and that bad thing happens > elsewhere. I've found that removal of tcg_gen_discard_i32 in the > gen_right_shift_sar makes it work again. The trace of the TB that fails > translation is below. If 'discard loc5' is removed it starts to work. > > Any idea of what might be wrong?
In the debugger loc5 looks like this when abort happens: (gdb) p s->temps[105] $2 = { base_type = TCG_TYPE_I32, type = TCG_TYPE_I32, val_type = 0, reg = 11, val = 32, mem_reg = 4, mem_offset = 128, fixed_reg = 0, mem_coherent = 0, mem_allocated = 0, temp_local = 1, temp_allocated = 0, next_free_temp = -1, name = 0x0 } [...] -- Thanks. -- Max