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

Reply via email to