[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] sparc y register
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] sparc y register |
Date: |
Thu, 11 Sep 2008 19:04:00 +0300 |
On 9/11/08, Vince Weaver <address@hidden> wrote:
> Hello
>
> I'm wasting a lot of time trying to get the sixtrack spec2k benchmark
> going. (It crashes 30 minutes into the program, deep in a long FORTRAN
> program). One of the problems eventually traces back to a routine reading
> long floating point numbers from a text file.
>
> In any case, part of the problem is that the write y instruction is writing
> a 64-bit value, but from what I can tell in the documentation the top
> 32-bits of y should always be zero.
>
> What this means is sometimes in sparc32plus mode, we write a register to y
> that has some of the higher 32 bits set, which causes later mulscc
> instructions to get the wrong results.
>
> The patch below seems to fix this particular problem (and a test case I
> have that exhibits it) but it seems as if there's still another bug at work
> somewhere because sixtrack still won't run.
Thanks, I applied a fix based on this. There was also a similar
problem in mulscc, maybe your tests run better now?