[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal co
From: |
Emilio G. Cota |
Subject: |
Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code |
Date: |
Fri, 20 Apr 2018 14:35:57 -0400 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Fri, Apr 20, 2018 at 16:50:39 +0100, Alex Bennée wrote:
> Any questions/thoughts/comments?
Very nice!
I modified the style a little bit, namely to pass checkpatch and to
improve grepability by having
foo __attribute__((flatten))
function(arg1, arg2, ...)
as opposed to
foo __attribute__((flatten)) function(arg1,
arg2,
...)
I also changed the patches to make the series simpler: one patch
to add softmmu.c (without compiling it yet), one patch to
actually use softmmu.c, and a final patch to remove the template
file.
You can get my modifications from:
https://github.com/cota/qemu/tree/softmmu
Note that there are two stray references to softmmu_template
in comments:
$ git grep -i 'softmmu_template'
accel/tcg/translate-all.c: * Called via softmmu_template.h when code areas are
written to with
accel/tcg/translate-all.c: * Called by softmmu_template.h, with iothread mutex
not held.
I don't have time right now to test performance, but at least
the only function I checked (helper_ret_ldub_mmu) has only grown
in size by a little bit, from 584 bytes to 614.
The executable is now larger:
- before:
text data bss dec hex filename
9864951 2944592 4371560 17181103 10629af
aarch64-softmmu/qemu-system-aarch64
- after:
text data bss dec hex filename
9892095 2944592 4371560 17208247 10693b7
aarch64-softmmu/qemu-system-aarch64
By removing flatten we can decrease the overall size, but this might affect
perf:
text data bss dec hex filename
9849967 2944592 4371560 17166119 105ef27
aarch64-softmmu/qemu-system-aarch64
This is a slow path though so it might be worth looking into.
BTW I haven't done any testing, just compile-tested for all targets.
So overall I think this should be upgraded from RFC to a proper patch
series; hopefully we can get this done for 2.13!
Thanks,
Emilio
- [Qemu-devel] [RFC PATCH 3/6] accel/tcg: add DATA_SIZE = 2 to softmmu, (continued)
- [Qemu-devel] [RFC PATCH 3/6] accel/tcg: add DATA_SIZE = 2 to softmmu, Alex Bennée, 2018/04/20
- [Qemu-devel] [RFC PATCH 4/6] accel/tcg: create load_helper, Alex Bennée, 2018/04/20
- [Qemu-devel] [RFC PATCH 6/6] accel/tcg: convert 4/8 byte access and remove softmmu_template, Alex Bennée, 2018/04/20
- [Qemu-devel] [RFC PATCH 5/6] accel/tcg: create store_helper, Alex Bennée, 2018/04/20
- Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code, no-reply, 2018/04/20
- Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code, no-reply, 2018/04/20
- Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code, Paolo Bonzini, 2018/04/20
- Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code, Peter Maydell, 2018/04/20
- Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code, no-reply, 2018/04/20
- Re: [Qemu-devel] [RFC PATCH 0/6] Convert softmmu-template into normal code,
Emilio G. Cota <=