All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode?
@ 2015-05-18  9:55 Jun Koi
  2015-05-18 10:20 ` Peter Maydell
  0 siblings, 1 reply; 6+ messages in thread
From: Jun Koi @ 2015-05-18  9:55 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 403 bytes --]

Hi,

I am trying to find the definition of cpu_ldub_code() in Softmmu mode.
However, the only thing I can find is like this in include/exec/cpu_ldst.h:

    #define cpu_ldub_code(env1, p) ldub_raw(p)

Unfortunately, this is only for Usermode (CONFIG_USER_ONLY), so still I
have no idea where cpu_ldub_code() is defined for Softmmu mode.

Perhaps this is hidden after some tricky macros?

Thank you,
Jun

[-- Attachment #2: Type: text/html, Size: 523 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode?
  2015-05-18  9:55 [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode? Jun Koi
@ 2015-05-18 10:20 ` Peter Maydell
  2015-05-19  7:41   ` Jun Koi
  2015-06-12  7:29   ` Jun Koi
  0 siblings, 2 replies; 6+ messages in thread
From: Peter Maydell @ 2015-05-18 10:20 UTC (permalink / raw)
  To: Jun Koi; +Cc: qemu-devel

On 18 May 2015 at 10:55, Jun Koi <junkoi2004@gmail.com> wrote:
> Hi,
>
> I am trying to find the definition of cpu_ldub_code() in Softmmu mode.
> However, the only thing I can find is like this in include/exec/cpu_ldst.h:
>
>     #define cpu_ldub_code(env1, p) ldub_raw(p)

Your QEMU tree is out of date -- this macro was removed in
commit 9220fe54c6.

> Unfortunately, this is only for Usermode (CONFIG_USER_ONLY), so
> still I have no idea where cpu_ldub_code() is defined for Softmmu mode.

In cpu_ldst.h we #define MEMSUFFIX _code and then include
"exec/cpu_ldst_template.h" multiple times to define the
accessor functions for the various widths. (For the usermode
version we include "exec/cpu_ldst_useronly_template.h", for
similar effect.)

-- PMM

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode?
  2015-05-18 10:20 ` Peter Maydell
@ 2015-05-19  7:41   ` Jun Koi
  2015-06-12  7:29   ` Jun Koi
  1 sibling, 0 replies; 6+ messages in thread
From: Jun Koi @ 2015-05-19  7:41 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 928 bytes --]

On Mon, May 18, 2015 at 6:20 PM, Peter Maydell <peter.maydell@linaro.org>
wrote:

> On 18 May 2015 at 10:55, Jun Koi <junkoi2004@gmail.com> wrote:
> > Hi,
> >
> > I am trying to find the definition of cpu_ldub_code() in Softmmu mode.
> > However, the only thing I can find is like this in
> include/exec/cpu_ldst.h:
> >
> >     #define cpu_ldub_code(env1, p) ldub_raw(p)
>
> Your QEMU tree is out of date -- this macro was removed in
> commit 9220fe54c6.
>

Yes, I am using 2.2.0 version.



>
> > Unfortunately, this is only for Usermode (CONFIG_USER_ONLY), so
> > still I have no idea where cpu_ldub_code() is defined for Softmmu mode.
>
> In cpu_ldst.h we #define MEMSUFFIX _code and then include
> "exec/cpu_ldst_template.h" multiple times to define the
> accessor functions for the various widths. (For the usermode
> version we include "exec/cpu_ldst_useronly_template.h", for
> similar effect.)
>
>
Thank you a lot!

Jun

[-- Attachment #2: Type: text/html, Size: 1620 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode?
  2015-05-18 10:20 ` Peter Maydell
  2015-05-19  7:41   ` Jun Koi
@ 2015-06-12  7:29   ` Jun Koi
  2015-06-12  7:59     ` Peter Maydell
  1 sibling, 1 reply; 6+ messages in thread
From: Jun Koi @ 2015-06-12  7:29 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1018 bytes --]

On Mon, May 18, 2015 at 6:20 PM, Peter Maydell <peter.maydell@linaro.org>
wrote:

> On 18 May 2015 at 10:55, Jun Koi <junkoi2004@gmail.com> wrote:
> > Hi,
> >
> > I am trying to find the definition of cpu_ldub_code() in Softmmu mode.
> > However, the only thing I can find is like this in
> include/exec/cpu_ldst.h:
> >
> >     #define cpu_ldub_code(env1, p) ldub_raw(p)
>
> Your QEMU tree is out of date -- this macro was removed in
> commit 9220fe54c6.
>
> > Unfortunately, this is only for Usermode (CONFIG_USER_ONLY), so
> > still I have no idea where cpu_ldub_code() is defined for Softmmu mode.
>
> In cpu_ldst.h we #define MEMSUFFIX _code and then include
> "exec/cpu_ldst_template.h" multiple times to define the
> accessor functions for the various widths. (For the usermode
> version we include "exec/cpu_ldst_useronly_template.h", for
> similar effect.)
>

Looking closer to this code, this leads to the function helper_ldb_cmmu(),
but I cannot find where this code is defined.

Any hints, please?

Thanks.

[-- Attachment #2: Type: text/html, Size: 1607 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode?
  2015-06-12  7:29   ` Jun Koi
@ 2015-06-12  7:59     ` Peter Maydell
  2015-06-12  8:25       ` Jun Koi
  0 siblings, 1 reply; 6+ messages in thread
From: Peter Maydell @ 2015-06-12  7:59 UTC (permalink / raw)
  To: Jun Koi; +Cc: qemu-devel

On 12 June 2015 at 08:29, Jun Koi <junkoi2004@gmail.com> wrote:
> On Mon, May 18, 2015 at 6:20 PM, Peter Maydell <peter.maydell@linaro.org>
> wrote:
>> In cpu_ldst.h we #define MEMSUFFIX _code and then include
>> "exec/cpu_ldst_template.h" multiple times to define the
>> accessor functions for the various widths. (For the usermode
>> version we include "exec/cpu_ldst_useronly_template.h", for
>> similar effect.)
>
>
> Looking closer to this code, this leads to the function helper_ldb_cmmu(),
> but I cannot find where this code is defined.

manooth$ git grep cmmu
cputlb.c:#define MMUSUFFIX _cmmu
include/exec/cpu_ldst.h:uint8_t helper_ldb_cmmu(CPUArchState *env,
target_ulong addr, int mmu_idx);
include/exec/cpu_ldst.h:uint16_t helper_ldw_cmmu(CPUArchState *env,
target_ulong addr, int mmu_idx);
include/exec/cpu_ldst.h:uint32_t helper_ldl_cmmu(CPUArchState *env,
target_ulong addr, int mmu_idx);
include/exec/cpu_ldst.h:uint64_t helper_ldq_cmmu(CPUArchState *env,
target_ulong addr, int mmu_idx);
include/exec/cpu_ldst_template.h:#define MMUSUFFIX _cmmu

The first of these is where cputlb.c includes
softmmu_template.h, which is what's defining the
function you're interested in.

-- PMM

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode?
  2015-06-12  7:59     ` Peter Maydell
@ 2015-06-12  8:25       ` Jun Koi
  0 siblings, 0 replies; 6+ messages in thread
From: Jun Koi @ 2015-06-12  8:25 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1355 bytes --]

On Fri, Jun 12, 2015 at 3:59 PM, Peter Maydell <peter.maydell@linaro.org>
wrote:

> On 12 June 2015 at 08:29, Jun Koi <junkoi2004@gmail.com> wrote:
> > On Mon, May 18, 2015 at 6:20 PM, Peter Maydell <peter.maydell@linaro.org
> >
> > wrote:
> >> In cpu_ldst.h we #define MEMSUFFIX _code and then include
> >> "exec/cpu_ldst_template.h" multiple times to define the
> >> accessor functions for the various widths. (For the usermode
> >> version we include "exec/cpu_ldst_useronly_template.h", for
> >> similar effect.)
> >
> >
> > Looking closer to this code, this leads to the function
> helper_ldb_cmmu(),
> > but I cannot find where this code is defined.
>
> manooth$ git grep cmmu
> cputlb.c:#define MMUSUFFIX _cmmu
> include/exec/cpu_ldst.h:uint8_t helper_ldb_cmmu(CPUArchState *env,
> target_ulong addr, int mmu_idx);
> include/exec/cpu_ldst.h:uint16_t helper_ldw_cmmu(CPUArchState *env,
> target_ulong addr, int mmu_idx);
> include/exec/cpu_ldst.h:uint32_t helper_ldl_cmmu(CPUArchState *env,
> target_ulong addr, int mmu_idx);
> include/exec/cpu_ldst.h:uint64_t helper_ldq_cmmu(CPUArchState *env,
> target_ulong addr, int mmu_idx);
> include/exec/cpu_ldst_template.h:#define MMUSUFFIX _cmmu
>
> The first of these is where cputlb.c includes
> softmmu_template.h, which is what's defining the
> function you're interested in.
>
>
Excellent, thanks!!!

[-- Attachment #2: Type: text/html, Size: 1986 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-06-12  8:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-18  9:55 [Qemu-devel] where is the definition of cpu_ldub_code() for Softmmu mode? Jun Koi
2015-05-18 10:20 ` Peter Maydell
2015-05-19  7:41   ` Jun Koi
2015-06-12  7:29   ` Jun Koi
2015-06-12  7:59     ` Peter Maydell
2015-06-12  8:25       ` Jun Koi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.