|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?
|[Prev in Thread]||Current Thread||[Next in Thread]|