[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] tcg problem running SPARC program on x86
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] tcg problem running SPARC program on x86 |
Date: |
Tue, 19 Aug 2008 19:37:07 +0300 |
On 8/18/08, Vince Weaver <address@hidden> wrote:
> Hello
>
> I'm continuing on my quest to get the SPEC2000 benchmarks running under
> sparc32-linux-user (so far 8 out of 48 work).
>
> Many of the benchmarks die early on with the following error:
>
> /fusion/research4/vince/qemu/svn/tcg/tcg.c:1455: tcg
> fatal error
>
> This error is caused when tcg_reg_alloc_mov() is called but ts->val_type
> is equal to 0 (which is TEMP_VAL_DEAD). So maybe the optimizer is
> optimizing away something that it shouldn't?
>
> This happens in a block with multiple calls to the SPARC "mulscc"
> instruction which is a complicated instruction, so maybe this is finding an
> obscure corner case.
>
> I've attached a very small sample program that exhibits the bug when run
> with ./sparc32-linux-user/qemu-sparc32plus
Okay, I can finally reproduce this. Strangely it does not occur if -d
flag is used and "op" is one of the log items. I have to check if
older reports where I could not reproduce the bug were suffering from
the same problem.
But I haven't found any fix yet.