qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 02/12] ARM: Prepare translation for AArch64 c


From: John Rigby
Subject: Re: [Qemu-devel] [PATCH v2 02/12] ARM: Prepare translation for AArch64 code
Date: Thu, 2 May 2013 15:25:13 -0600

On Tue, Apr 30, 2013 at 6:36 AM, Peter Maydell <address@hidden> wrote:
>
> On 30 April 2013 10:36, Alexander Graf <address@hidden> wrote:
> >
> > On 30.04.2013, at 08:36, John Rigby wrote:
> >> - remove many uses of is_a64 as that is a indicator the target arch is
> >> aarch64 not what mode it is running in.
> >
> > It indicates what mode the CPU is running on. The only reason it
> > was defined statically so far, was that linux-user was the only
> > target I implemented. And that one can't switch during runtime.
>
> Agreed. "target arch supports aarch64" is a compile time thing --
> compare use of TARGET_X86_64 vs CODE64() in target-i386.
>
> So there are actually three different kinds of check here:
>  * TARGET_AARCH64 (or whatever we're using as the #define)
>     -- indicates whether this CPU supports 64 bit mode
Yes,  TARGET_AARCH64 is the define so we have this.
>  * a function that tests env to see if we're currently
>    running in 64 bit mode
Using thumb as an example I added  aarch64_state to serve the same
purpose for 32 vs 64.  I propose renaming this to just aarch64 and
then testing it in is_a64.
>  * testing the DisasContext to see whether we're currently
>    translating for 64 or 32 bit [which is something to
>    initialize from the tb* at the top of
>    gen_intermediate_code_internal]
This is what the new  ARM_TBFLAG_AARCH64_STATE* defines are for so
with some cleanup we have all three?

>
> -- PMM



reply via email to

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