From: Jocelyn Mayer <l_indien@magic.fr>
To: qemu mailing list <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [ADD] PPC processor emulation
Date: 18 Nov 2003 15:59:58 +0100 [thread overview]
Message-ID: <1069167598.1768.47.camel@jma1.dev.netgem.com> (raw)
In-Reply-To: <Pine.LNX.4.50.0311181300340.3282-100000@thalys.mandrakesoft.com>
On Tue, 2003-11-18 at 13:24, Gwenole Beauchesne wrote:
> On Tue, 18 Nov 2003, J. Mayer wrote:
>
> > > I have a test program that covers around 600K variants with specific
> > > values to trigger flags updates. It requires a PPC host for now to
> > > validate results. It helped a lot to first write a correct interpreter and
> > > discover some hidden semantics in rare cases.
> > >
> > The program, ppc_test does this with a lot of different instruction,
> > using a huge set of values. With the ctrace program, I could check that
> > it runs the same on my Ibook and on my PC with qemu. Where could I find
> > yours to make more tests ?
>
> An oldish version is available here:
> <http://down.physik.uni-mainz.de/cgi-bin/viewcvs.cgi/SheepShaver/src/kpx_cpu/src/test/test-powerpc.cpp>
>
> I will commit a newer version tonight. The "JIT1" engine is not committed
> yet either.
Well, I'll take a look... and 'll try qemu with this test !
> > You found hidden semantics, as you say. What is confusing, also, is that
> > Motorola's implementation isn't the same than IBM's one for some strange
> > cases...
>
> Nevermind, you got divw implementation right at first sight, so forget
> about it. ;-)
There are some strange things with string and load/store multiples too:
IBM allows the memory operand to be in the range of loaded registers as
Motorolla says this is invalid. IBM says this reg won't be modified. I'm
sure my implementation is false for both point of vues !
> > My TBL/TBU implementation isn't a real time clock, but is a cycle
> > counter, as on "real" PPC.
>
> Doesn't a real PPC increments TBR after a time comparable to at least 4
> addi instructions? I think there was an Apple TN# about it.
In fact, I though the spec said that it increments at each clock tick,
but I just checked and I see: "The VEA does not specify a relathionship between
the frequency at which the time base is updated and other clocks, such as
the processor clock. The TB update frequency is not required to be constant;
... one of two things is required:
* the system provides an implementation dependant exception to software whenever
the update frequency of the time base changes and a means to determine the
current update frequency
or
* the system software controls the update frequency of the time base"
So things aren't so simple... I wonder if MacOS would run on all PPCs...
--
Jocelyn Mayer <l_indien@magic.fr>
Never organized
next prev parent reply other threads:[~2003-11-18 16:02 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-11-17 9:51 [Qemu-devel] new knoppix SegFault Jens Arm
2003-11-18 7:15 ` [Qemu-devel] [PATCH] Fixes for qemu J. Mayer
2003-11-18 7:30 ` J. Mayer
2003-11-18 7:31 ` Chad Page
2003-11-18 7:32 ` J. Mayer
2003-11-18 7:33 ` J. Mayer
2003-11-18 7:34 ` J. Mayer
2003-11-18 8:24 ` J. Mayer
2003-11-18 7:22 ` [Qemu-devel] [ADD] floppy disk emulation J. Mayer
2003-11-18 7:37 ` J. Mayer
2003-11-18 7:38 ` J. Mayer
2003-11-18 7:39 ` J. Mayer
2003-11-18 7:39 ` J. Mayer
2003-11-18 8:24 ` J. Mayer
2003-11-18 7:28 ` [Qemu-devel] [ADD] PPC processor emulation J. Mayer
2003-11-18 7:43 ` J. Mayer
2003-11-18 7:43 ` J. Mayer
2003-11-18 7:44 ` J. Mayer
2003-11-18 7:45 ` J. Mayer
2003-11-18 7:45 ` J. Mayer
2003-11-18 7:46 ` J. Mayer
2003-11-18 7:46 ` J. Mayer
2003-11-18 7:48 ` J. Mayer
2003-11-18 7:48 ` J. Mayer
2003-11-18 7:49 ` J. Mayer
2003-11-18 7:50 ` J. Mayer
2003-11-18 7:50 ` J. Mayer
2003-11-18 7:51 ` J. Mayer
2003-11-18 7:53 ` J. Mayer
2003-11-18 7:54 ` J. Mayer
2003-11-18 7:55 ` J. Mayer
2003-11-18 7:56 ` J. Mayer
2003-11-18 7:56 ` J. Mayer
2003-11-18 7:57 ` J. Mayer
2003-11-18 7:58 ` J. Mayer
2003-11-18 7:59 ` J. Mayer
2003-11-18 7:59 ` J. Mayer
2003-11-18 8:00 ` J. Mayer
2003-11-18 8:02 ` [Qemu-devel] [ADD] tests for PPC target J. Mayer
2003-11-18 8:06 ` J. Mayer
2003-11-18 8:08 ` J. Mayer
2003-11-18 8:08 ` J. Mayer
2003-11-18 8:09 ` J. Mayer
2003-11-18 8:10 ` J. Mayer
2003-11-18 8:25 ` J. Mayer
2003-11-18 8:24 ` [Qemu-devel] [ADD] PPC processor emulation J. Mayer
2003-11-18 9:37 ` Gwenole Beauchesne
2003-11-18 10:37 ` J. Mayer
2003-11-18 11:39 ` Raymond W. Lucke IV
2003-11-18 12:13 ` J. Mayer
2003-11-18 20:24 ` Raymond W. Lucke IV
2003-11-18 20:44 ` Jocelyn Mayer
2003-11-18 21:48 ` Chad Page
2003-11-18 22:50 ` J. Mayer
2003-11-19 1:11 ` Benjamin Herrenschmidt
2003-11-19 15:35 ` Jocelyn Mayer
2003-11-18 12:24 ` Gwenole Beauchesne
2003-11-18 12:57 ` Johan Rydberg
2003-11-18 14:52 ` Gwenole Beauchesne
2003-11-18 14:59 ` Jocelyn Mayer [this message]
2003-11-18 7:29 ` [Qemu-devel] [PATCH] Term prompt for qemu J. Mayer
2003-11-18 8:11 ` J. Mayer
2003-11-18 8:11 ` J. Mayer
2003-11-18 8:13 ` J. Mayer
2003-11-18 8:25 ` J. Mayer
-- strict thread matches above, loose matches on Subject: below --
2003-11-18 22:28 [Qemu-devel] [ADD] PPC processor emulation J. Mayer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1069167598.1768.47.camel@jma1.dev.netgem.com \
--to=l_indien@magic.fr \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).