This patch set is based upon git://github.com/rth7680/qemu.git tcg-arm-pull
With the first patch, to convert aarch64 away from the old ldst helpers, we wean exec-all.h from any knowledge of the tcg backend implementation. Which means we no longer need to involve configure in the backend implementation either. The structure I've chosen, a TCGBackendData structure that is (technically) totally private to the backend, is based on my long-term assumption that many targets would do better with some sort of constant pool. Or allowing ia64 to save data with which it could produce better instruction bundling across tcg opcodes. That said, until there is some need for the TCGBackendData structure to be unique, let's share as much code as we can. Thus the two helper header files, which allow all of the boilerplate code for ldst optimization to be shared. r~ Richard Henderson (5): tcg-aarch64: Update to helper_ret_*_mmu routines exec: Delete is_tcg_gen_code and GETRA_EXT tcg: Add tcg-be-null.h tcg: Add tcg-be-ldst.h configure: Remove CONFIG_QEMU_LDST_OPTIMIZATION configure | 8 ---- include/exec/exec-all.h | 30 -------------- include/exec/softmmu_template.h | 4 +- tcg/aarch64/tcg-target.c | 51 +++++++++-------------- tcg/arm/tcg-target.c | 27 ++----------- tcg/i386/tcg-target.c | 30 ++------------ tcg/ia64/tcg-target.c | 2 + tcg/mips/tcg-target.c | 2 + tcg/ppc/tcg-target.c | 28 ++----------- tcg/ppc64/tcg-target.c | 26 ++---------- tcg/s390/tcg-target.c | 2 + tcg/sparc/tcg-target.c | 2 + tcg/tcg-be-ldst.h | 90 +++++++++++++++++++++++++++++++++++++++++ tcg/tcg-be-null.h | 43 ++++++++++++++++++++ tcg/tcg.c | 15 +++---- tcg/tcg.h | 31 +------------- tcg/tci/tcg-target.c | 2 + translate-all.c | 12 ------ 18 files changed, 183 insertions(+), 222 deletions(-) create mode 100644 tcg/tcg-be-ldst.h create mode 100644 tcg/tcg-be-null.h -- 1.8.3.1