On Thu, Jul 29, 2010 at 3:40 PM, amateur <tianlei.z...@gmail.com> wrote:
> Hi, All
>
> I'm trying to run benchmarks from SPEC CPU2006 compiled for SPARC on
> top of qemu-sparc32plus. However, several benchmarks failed to get the
> correct result.
>
> One of the failed benchmarks, 403.gcc, runs for a while and then print
> an error message and exit. However, the same compiled gcc binary for
> SPARC runs quite well in Simics(a commercial emulator) and give the
> correct result. So I think there may be a bug in Qemu.
>
> Has anyone meet the same kind of problem before?
>
> I can do some debug, but I have no clue on how to do it. Could anyone
> please give me some hint on this? I have read the source code, but
> find it really hard to track down guest program miss-behavior problem.

There's '-d in_asm,op,out_asm' but it may not help much.

Once I singlestepped a program under GDB, simultaneously both in
native host and in QEMU. After each step, both GDBs calculated and
displayed a XOR checksum from all registers. I had to do some hacks to
make address layout and register values match in QEMU.

> BTW, when I use sparc-linux-gdb with qemu-sparc32plus, it connect, but
> give the wrong value when print local variables. So, I'm really lost.
> Can anyone confirm on this, or I'm doing it the wrong way?

You may need to use sparc64-linux-gdb.

Reply via email to