Since the RFC was well received, and the MIPS TCG patches have been posted, here is the cpu_ldst.h series again. As requested by Peter, I extracted the nseries coding style cleanup. And as Andreas suggested do_unaligned_access is now a method.
Also, since this patch has to be tested with TCI as well, I'm including Stefan's pending fix. Paolo Bonzini (12): nseries: clean up coding style hw: use ld_p/st_p instead of ld_raw/st_raw softmmu: start introducing SOFTMMU_CODE_ACCESS in softmmu_header.h softmmu: move MMUSUFFIX under SOFTMMU_CODE_ACCESS softmmu: move definition of CPU_MMU_INDEX to inclusion site, drop ACCESS_TYPE softmmu: make do_unaligned_access a method of CPU softmmu: move ALIGNED_ONLY to cpu.h softmmu: commonize helper definitions softmmu: move softmmu_template.h out of include/ target-arm: move arm_*_code to a separate file softmmu: introduce cpu_ldst.h softmmu: move all load/store functions to cpu_ldst.h Stefan Weil (1): cputlb: Fix regression with TCG interpreter (bug 1310324) bsd-user/qemu.h | 1 + cputlb.c | 33 ++- hw/9pfs/virtio-9p-device.c | 2 +- hw/arm/nseries.c | 316 ++++++++-------- hw/block/virtio-blk.c | 12 +- hw/display/omap_lcd_template.h | 10 +- hw/display/sm501_template.h | 6 +- hw/display/vga_template.h | 4 +- hw/mips/mips_fulong2e.c | 28 +- hw/mips/mips_malta.c | 176 +++++----- hw/scsi/vhost-scsi.c | 4 +- hw/scsi/virtio-scsi.c | 28 +- include/exec/cpu-all.h | 119 ------ include/exec/cpu_ldst.h | 400 ++++++++++++++++++++ .../exec/{softmmu_header.h => cpu_ldst_template.h} | 32 +-- include/exec/exec-all.h | 23 -- include/exec/softmmu_exec.h | 216 ----------- include/qom/cpu.h | 15 +- linux-user/qemu.h | 1 + monitor.c | 1 + .../exec/softmmu_template.h => softmmu_template.h | 32 +- target-alpha/cpu-qom.h | 2 + target-alpha/cpu.c | 1 + target-alpha/cpu.h | 1 + target-alpha/mem_helper.c | 27 +-- target-alpha/translate.c | 1 + target-arm/arm_ldst.h | 48 +++ target-arm/cpu.h | 22 -- target-arm/helper.c | 4 +- target-arm/op_helper.c | 17 +- target-arm/translate-a64.c | 1 + target-arm/translate.c | 1 + target-cris/helper.c | 1 + target-cris/op_helper.c | 17 +- target-cris/translate.c | 1 + target-i386/fpu_helper.c | 5 +- target-i386/mem_helper.c | 23 +-- target-i386/misc_helper.c | 5 +- target-i386/seg_helper.c | 5 +- target-i386/svm_helper.c | 5 +- target-i386/translate.c | 1 + target-lm32/op_helper.c | 12 +- target-lm32/translate.c | 1 + target-m68k/op_helper.c | 17 +- target-m68k/translate.c | 1 + target-microblaze/op_helper.c | 12 +- target-microblaze/translate.c | 1 + target-mips/cpu-qom.h | 2 + target-mips/cpu.c | 1 + target-mips/cpu.h | 1 + target-mips/op_helper.c | 31 +-- target-mips/translate.c | 1 + target-moxie/helper.c | 16 +- target-moxie/translate.c | 1 + target-openrisc/mmu_helper.c | 15 +- target-openrisc/translate.c | 1 + target-ppc/excp_helper.c | 1 + target-ppc/mem_helper.c | 5 +- target-ppc/mmu_helper.c | 17 +- target-ppc/translate.c | 1 + target-s390x/fpu_helper.c | 5 +- target-s390x/helper.c | 1 + target-s390x/mem_helper.c | 16 +- target-s390x/misc_helper.c | 2 +- target-s390x/translate.c | 1 + target-sh4/op_helper.c | 16 +- target-sh4/translate.c | 1 + target-sparc/cpu-qom.h | 3 + target-sparc/cpu.c | 1 + target-sparc/cpu.h | 2 + target-sparc/ldst_helper.c | 32 +-- target-sparc/translate.c | 1 + target-unicore32/op_helper.c | 17 +- target-unicore32/translate.c | 1 + target-xtensa/cpu-qom.h | 2 + target-xtensa/cpu.c | 1 + target-xtensa/cpu.h | 1 + target-xtensa/op_helper.c | 28 +-- target-xtensa/translate.c | 1 + tcg/tcg.h | 13 - tci.c | 1 + user-exec.c | 1 + 82 files changed, 902 insertions(+), 1029 deletions(-) create mode 100644 include/exec/cpu_ldst.h rename include/exec/{softmmu_header.h => cpu_ldst_template.h} (89%) delete mode 100644 include/exec/softmmu_exec.h rename include/exec/softmmu_template.h => softmmu_template.h (93%) create mode 100644 target-arm/arm_ldst.h