qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC][PATCH v2 2/4] tcg: add extended MMU helpers to so


From: Yeongkyoon Lee
Subject: Re: [Qemu-devel] [RFC][PATCH v2 2/4] tcg: add extended MMU helpers to softmmu targets
Date: Fri, 06 Jul 2012 21:16:08 +0900
User-agent: Mozilla/5.0 (X11; Linux i686; rv:13.0) Gecko/20120615 Thunderbird/13.0.1

On 2012년 07월 06일 03:49, Blue Swirl wrote:
On Thu, Jul 5, 2012 at 1:43 PM, Peter Maydell <address@hidden> wrote:
On 5 July 2012 14:23, Yeongkyoon Lee <address@hidden> wrote:
Add extended MMU helpers to softmmu targets, where the targets are alpha, arm, 
cris, i386, lm32, m68k, microblaze, mips, ppc, s390x, sh4, sparc and xtensa.

Signed-off-by: Yeongkyoon Lee <address@hidden>
---
  target-alpha/mem_helper.c     |   22 ++++++++++++++++++++++
  target-arm/op_helper.c        |   23 +++++++++++++++++++++++
  target-cris/op_helper.c       |   22 ++++++++++++++++++++++
  target-i386/mem_helper.c      |   22 ++++++++++++++++++++++
  target-lm32/op_helper.c       |   23 ++++++++++++++++++++++-
  target-m68k/op_helper.c       |   22 ++++++++++++++++++++++
  target-microblaze/op_helper.c |   22 ++++++++++++++++++++++
  target-mips/op_helper.c       |   22 ++++++++++++++++++++++
  target-ppc/mem_helper.c       |   22 ++++++++++++++++++++++
  target-s390x/op_helper.c      |   22 ++++++++++++++++++++++
  target-sh4/op_helper.c        |   22 ++++++++++++++++++++++
  target-sparc/ldst_helper.c    |   23 +++++++++++++++++++++++
  target-xtensa/op_helper.c     |   22 ++++++++++++++++++++++
  13 files changed, 288 insertions(+), 1 deletions(-)
This makes the already slightly repetitive inclusion of the
softmmu_templates even more repetitive. Perhaps we could abstract
it all out into a single header which the targets can include?
I'd just replace standard versions with extended versions
unconditionally, no CONFIG_*. Both AREG0 and !AREG0 cases must be
handled.


I've only modified the code related to the MMU call from generated code because this patch is focused optimize that kind of runtime generated code. As I mentioned another thread, basically I agree to apply AREG0 case if ldst optimization is accepted as default (no macros). But when replacing standard versions with extended versions, there is an issue of non-x86 (and x64) hosts which has no ldst optimization impl. It needs to conserve the usage of conditional macro for standard versions, however, it looks better have a type of version per a host, which is different from current my patch.
How do you think about it?





reply via email to

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