qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/2] target-arm: "any" CPUs for system-mode


From: Meador Inge
Subject: Re: [Qemu-devel] [PATCH 0/2] target-arm: "any" CPUs for system-mode
Date: Mon, 13 Jul 2015 13:34:46 -0700
User-agent: Mutt/1.5.20 (2009-06-14)

On Mon, Jul 06, 2015 at 04:05:46PM -0700, Peter Crosthwaite wrote:

> On Mon, Jul 6, 2015 at 3:49 PM, Peter Maydell <address@hidden> wrote:
> > On 6 July 2015 at 23:42, Peter Crosthwaite <address@hidden> wrote:
> >> On Mon, Jul 6, 2015 at 3:29 PM, Peter Maydell <address@hidden> wrote:
> >>> On 6 July 2015 at 19:53,  <address@hidden> wrote:
> >>>> From: Meador Inge <address@hidden>
> >>>>
> >>>> This patch series opens up the "any" CPU for system-mode and
> >>>> adds a new "any" variant named "anyvfp" that initializes the
> >>>> FP coprocessors as well.
> >>>
> >>> We deliberately removed cpu "any" for system mode in
> >>> commit f5f6d38b7458b8a back in 2013; I think the rationale
> >>> for its removal still holds. If you're emulating a system
> >>> you're emulating a specific system and you get a real
> >>> CPU. A CPU with no impdef sysregs or initialized feature
> >>> and ID registers is broken...
> >>
> >> You can still have a CPU+RAM only machine model, load elfs and get
> >> meaningful result on a debugger.
> >
> > Yeah, but what does "any" get you over just going ahead
> > and specifying your CPU type? What interrupt controller
> > should the "any" CPU type have? Generic timers? Etc.
> >
> 
> None and none. You are only interested in CPU internal state with no IO at 
> all.

Exactly.  We have a use-case where QEMU acts as basically an ISS and we
only care about architecture level support.  So, someone compiles their
application with various options (-march=armv7-a, -march=arv5te, etc...)
and runs those through GDB that connects to the QEMU GDB stub.  From
the QEMU side we can launch an instance with '-cpu any' and expect most
applications to run on it regardless of how it was built with GCC.

This is a reasonable use-case and it is a very small change to QEMU,
which introduces hardly any complexity or maintenance burden.

> > There isn't zero utility there, but I don't really think
> > there's enough to justify cluttering up QEMU with when
> > "-cpu cortex-a15" is not very much more to type, and
> > has the advantage of being something that actually
> > exists in reality.

As mentioned above, there is utility and saying that it is "clutter" is a
bit of an exaggeration (it is 5 deletions(-) that introduces *one* new
option).

> 
> There is a clean definition of an ARM CPU without any IO however which
> has utility in compiler testing.

I agree.

-- Meador



reply via email to

[Prev in Thread] Current Thread [Next in Thread]