From f08b617018e424134a0a012b08253d567c62f7ee Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Fri, 28 Mar 2014 19:42:10 +0100 Subject: [PATCH] softmmu: introduce cpu_ldst.h This will collect all load and store helpers soon. For now it is just a replacement for softmmu_exec.h, which this patch stops including directly, but we also include it where this will be necessary in order to simplify the next patch. Reviewed-by: Richard Henderson Signed-off-by: Paolo Bonzini --- bsd-user/qemu.h | 1 + cputlb.c | 1 + include/exec/cpu_ldst.h | 35 +++++++++++++++++++++++++++++++++++ linux-user/qemu.h | 1 + monitor.c | 1 + target-alpha/mem_helper.c | 4 +--- target-alpha/translate.c | 1 + target-arm/arm_ldst.h | 1 + target-arm/helper.c | 3 +-- target-arm/op_helper.c | 3 +-- target-cris/helper.c | 1 + target-cris/op_helper.c | 3 +-- target-cris/translate.c | 1 + target-i386/fpu_helper.c | 5 +---- target-i386/mem_helper.c | 5 +---- 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 | 2 +- target-lm32/translate.c | 1 + target-m68k/op_helper.c | 3 +-- target-m68k/translate.c | 1 + target-microblaze/op_helper.c | 2 +- target-microblaze/translate.c | 1 + target-mips/op_helper.c | 6 +----- target-mips/translate.c | 1 + target-moxie/helper.c | 2 +- target-moxie/translate.c | 1 + target-openrisc/mmu_helper.c | 2 +- target-openrisc/translate.c | 1 + target-ppc/excp_helper.c | 1 + target-ppc/mem_helper.c | 5 +---- target-ppc/mmu_helper.c | 3 +-- target-ppc/translate.c | 1 + target-s390x/fpu_helper.c | 5 +---- target-s390x/helper.c | 1 + target-s390x/mem_helper.c | 2 +- target-s390x/misc_helper.c | 2 +- target-s390x/translate.c | 1 + target-sh4/op_helper.c | 2 +- target-sh4/translate.c | 1 + target-sparc/ldst_helper.c | 5 +---- target-sparc/translate.c | 1 + target-unicore32/op_helper.c | 3 +-- target-unicore32/translate.c | 1 + target-xtensa/op_helper.c | 2 +- target-xtensa/translate.c | 1 + tci.c | 1 + user-exec.c | 1 + 50 files changed, 84 insertions(+), 60 deletions(-) create mode 100644 include/exec/cpu_ldst.h diff --git a/bsd-user/qemu.h b/bsd-user/qemu.h index ddc74ed0d72..9d90668ddda 100644 --- a/bsd-user/qemu.h +++ b/bsd-user/qemu.h @@ -5,6 +5,7 @@ #include #include "cpu.h" +#include "exec/cpu_ldst.h" #undef DEBUG_REMAP #ifdef DEBUG_REMAP diff --git a/cputlb.c b/cputlb.c index e70cf7a739d..afd3705ff38 100644 --- a/cputlb.c +++ b/cputlb.c @@ -22,6 +22,7 @@ #include "exec/exec-all.h" #include "exec/memory.h" #include "exec/address-spaces.h" +#include "exec/cpu_ldst.h" #include "exec/cputlb.h" diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h new file mode 100644 index 00000000000..a6b7884a673 --- /dev/null +++ b/include/exec/cpu_ldst.h @@ -0,0 +1,35 @@ +/* + * Software MMU support + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + * + */ + +/* + * Generate inline load/store functions for all MMU modes (typically + * at least _user and _kernel) as well as _data versions, for all data + * sizes. + * + * Used by target op helpers. + * + * MMU mode suffixes are defined in target cpu.h. + */ +#ifndef CPU_LDST_H +#define CPU_LDST_H + +#if !defined(CONFIG_USER_ONLY) +#include "exec/softmmu_exec.h" +#endif + +#endif /* CPU_LDST_H */ diff --git a/linux-user/qemu.h b/linux-user/qemu.h index 36d4a738ea2..ba3d8ab378f 100644 --- a/linux-user/qemu.h +++ b/linux-user/qemu.h @@ -5,6 +5,7 @@ #include #include "cpu.h" +#include "exec/cpu_ldst.h" #undef DEBUG_REMAP #ifdef DEBUG_REMAP diff --git a/monitor.c b/monitor.c index 593679a17a2..05658169104 100644 --- a/monitor.c +++ b/monitor.c @@ -66,6 +66,7 @@ #include "trace/simple.h" #endif #include "exec/memory.h" +#include "exec/cpu_ldst.h" #include "qmp-commands.h" #include "hmp.h" #include "qemu/thread.h" diff --git a/target-alpha/mem_helper.c b/target-alpha/mem_helper.c index 7860c05e483..fc4f57a6447 100644 --- a/target-alpha/mem_helper.c +++ b/target-alpha/mem_helper.c @@ -19,7 +19,7 @@ #include "cpu.h" #include "exec/helper-proto.h" - +#include "exec/cpu_ldst.h" /* Softmmu support */ #ifndef CONFIG_USER_ONLY @@ -131,8 +131,6 @@ void alpha_cpu_unassigned_access(CPUState *cs, hwaddr addr, dynamic_excp(env, 0, EXCP_MCHK, 0); } -#include "exec/softmmu_exec.h" - /* try to fill the TLB and return an exception if error. If retaddr is NULL, it means that the function was called in C code (i.e. not from generated code or from helper.c) */ diff --git a/target-alpha/translate.c b/target-alpha/translate.c index e31d56c629f..cc81e774df5 100644 --- a/target-alpha/translate.c +++ b/target-alpha/translate.c @@ -21,6 +21,7 @@ #include "disas/disas.h" #include "qemu/host-utils.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-arm/arm_ldst.h b/target-arm/arm_ldst.h index 007a7d7705f..b1ece01731f 100644 --- a/target-arm/arm_ldst.h +++ b/target-arm/arm_ldst.h @@ -20,6 +20,7 @@ #ifndef ARM_LDST_H #define ARM_LDST_H +#include "exec/cpu_ldst.h" #include "qemu/bswap.h" /* Load an instruction and return it in the standard little-endian order */ diff --git a/target-arm/helper.c b/target-arm/helper.c index 861baf5d7b7..95af6241265 100644 --- a/target-arm/helper.c +++ b/target-arm/helper.c @@ -7,12 +7,11 @@ #include "sysemu/sysemu.h" #include "qemu/bitops.h" #include "qemu/crc32c.h" +#include "exec/cpu_ldst.h" #include "arm_ldst.h" #include /* For crc32 */ #ifndef CONFIG_USER_ONLY -#include "exec/softmmu_exec.h" - static inline int get_phys_addr(CPUARMState *env, target_ulong address, int access_type, int is_user, hwaddr *phys_ptr, int *prot, diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c index 41fd6f6fd05..9c1ef525a39 100644 --- a/target-arm/op_helper.c +++ b/target-arm/op_helper.c @@ -19,6 +19,7 @@ #include "cpu.h" #include "exec/helper-proto.h" #include "internals.h" +#include "exec/cpu_ldst.h" #define SIGNBIT (uint32_t)0x80000000 #define SIGNBIT64 ((uint64_t)1 << 63) @@ -56,8 +57,6 @@ uint32_t HELPER(neon_tbl)(CPUARMState *env, uint32_t ireg, uint32_t def, #if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" - /* try to fill the TLB and return an exception if error. If retaddr is * NULL, it means that the function was called in C code (i.e. not * from generated code or from helper.c) diff --git a/target-cris/helper.c b/target-cris/helper.c index 4092d279ba8..e8b8261fe9e 100644 --- a/target-cris/helper.c +++ b/target-cris/helper.c @@ -21,6 +21,7 @@ #include "cpu.h" #include "mmu.h" #include "qemu/host-utils.h" +#include "exec/cpu_ldst.h" //#define CRIS_HELPER_DEBUG diff --git a/target-cris/op_helper.c b/target-cris/op_helper.c index 0ce5f09fa9a..5c0c14d9928 100644 --- a/target-cris/op_helper.c +++ b/target-cris/op_helper.c @@ -22,6 +22,7 @@ #include "mmu.h" #include "exec/helper-proto.h" #include "qemu/host-utils.h" +#include "exec/cpu_ldst.h" //#define CRIS_OP_HELPER_DEBUG @@ -35,8 +36,6 @@ #endif #if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" - /* Try to fill the TLB and return an exception if error. If retaddr is NULL, it means that the function was called in C code (i.e. not from generated code or from helper.c) */ diff --git a/target-cris/translate.c b/target-cris/translate.c index 90fe0a24b52..f26c3236864 100644 --- a/target-cris/translate.c +++ b/target-cris/translate.c @@ -28,6 +28,7 @@ #include "tcg-op.h" #include "exec/helper-proto.h" #include "mmu.h" +#include "exec/cpu_ldst.h" #include "crisv32-decode.h" #include "exec/helper-gen.h" diff --git a/target-i386/fpu_helper.c b/target-i386/fpu_helper.c index a04e754e61c..1b2900d5d2f 100644 --- a/target-i386/fpu_helper.c +++ b/target-i386/fpu_helper.c @@ -22,10 +22,7 @@ #include "exec/helper-proto.h" #include "qemu/aes.h" #include "qemu/host-utils.h" - -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ +#include "exec/cpu_ldst.h" #define FPU_RC_MASK 0xc00 #define FPU_RC_NEAR 0x000 diff --git a/target-i386/mem_helper.c b/target-i386/mem_helper.c index 16bc91bcb46..1aec8a5f191 100644 --- a/target-i386/mem_helper.c +++ b/target-i386/mem_helper.c @@ -19,10 +19,7 @@ #include "cpu.h" #include "exec/helper-proto.h" - -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ +#include "exec/cpu_ldst.h" /* broken thread support */ diff --git a/target-i386/misc_helper.c b/target-i386/misc_helper.c index 9cfa25f9ec3..4f1e30f1fd8 100644 --- a/target-i386/misc_helper.c +++ b/target-i386/misc_helper.c @@ -20,10 +20,7 @@ #include "cpu.h" #include "exec/ioport.h" #include "exec/helper-proto.h" - -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ +#include "exec/cpu_ldst.h" /* check if Port I/O is allowed in TSS */ static inline void check_io(CPUX86State *env, int addr, int size) diff --git a/target-i386/seg_helper.c b/target-i386/seg_helper.c index 258aae806a7..ba472154e88 100644 --- a/target-i386/seg_helper.c +++ b/target-i386/seg_helper.c @@ -21,13 +21,10 @@ #include "cpu.h" #include "qemu/log.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" //#define DEBUG_PCALL -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ - #ifdef DEBUG_PCALL # define LOG_PCALL(...) qemu_log_mask(CPU_LOG_PCALL, ## __VA_ARGS__) # define LOG_PCALL_STATE(cpu) \ diff --git a/target-i386/svm_helper.c b/target-i386/svm_helper.c index 852e2baf5dc..d250d18e277 100644 --- a/target-i386/svm_helper.c +++ b/target-i386/svm_helper.c @@ -20,10 +20,7 @@ #include "cpu.h" #include "exec/cpu-all.h" #include "exec/helper-proto.h" - -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ +#include "exec/cpu_ldst.h" /* Secure Virtual Machine helpers */ diff --git a/target-i386/translate.c b/target-i386/translate.c index 3aa52eb795d..2359787b42b 100644 --- a/target-i386/translate.c +++ b/target-i386/translate.c @@ -27,6 +27,7 @@ #include "cpu.h" #include "disas/disas.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-lm32/op_helper.c b/target-lm32/op_helper.c index c54de3e0e68..308742a74ea 100644 --- a/target-lm32/op_helper.c +++ b/target-lm32/op_helper.c @@ -6,7 +6,7 @@ #include "hw/lm32/lm32_pic.h" #include "hw/char/lm32_juart.h" -#include "exec/softmmu_exec.h" +#include "exec/cpu_ldst.h" #ifndef CONFIG_USER_ONLY #include "sysemu/sysemu.h" diff --git a/target-lm32/translate.c b/target-lm32/translate.c index 51eca065912..a51ade9a156 100644 --- a/target-lm32/translate.c +++ b/target-lm32/translate.c @@ -22,6 +22,7 @@ #include "exec/helper-proto.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "hw/lm32/lm32_pic.h" #include "exec/helper-gen.h" diff --git a/target-m68k/op_helper.c b/target-m68k/op_helper.c index e11990c5396..9dd3e74ab8c 100644 --- a/target-m68k/op_helper.c +++ b/target-m68k/op_helper.c @@ -18,6 +18,7 @@ */ #include "cpu.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" #if defined(CONFIG_USER_ONLY) @@ -34,8 +35,6 @@ void do_interrupt_m68k_hardirq(CPUM68KState *env) extern int semihosting_enabled; -#include "exec/softmmu_exec.h" - /* Try to fill the TLB and return an exception if error. If retaddr is NULL, it means that the function was called in C code (i.e. not from generated code or from helper.c) */ diff --git a/target-m68k/translate.c b/target-m68k/translate.c index fa248d96b53..50df4d38441 100644 --- a/target-m68k/translate.c +++ b/target-m68k/translate.c @@ -22,6 +22,7 @@ #include "disas/disas.h" #include "tcg-op.h" #include "qemu/log.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-microblaze/op_helper.c b/target-microblaze/op_helper.c index 72c1bdf61d6..a4c8f047057 100644 --- a/target-microblaze/op_helper.c +++ b/target-microblaze/op_helper.c @@ -22,11 +22,11 @@ #include "cpu.h" #include "exec/helper-proto.h" #include "qemu/host-utils.h" +#include "exec/cpu_ldst.h" #define D(x) #if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" /* Try to fill the TLB and return an exception if error. If retaddr is * NULL, it means that the function was called in C code (i.e. not diff --git a/target-microblaze/translate.c b/target-microblaze/translate.c index 488df2d60d5..c422bdc7189 100644 --- a/target-microblaze/translate.c +++ b/target-microblaze/translate.c @@ -23,6 +23,7 @@ #include "tcg-op.h" #include "exec/helper-proto.h" #include "microblaze-decode.h" +#include "exec/cpu_ldst.h" #include "exec/helper-gen.h" #define SIM_COMPAT 0 diff --git a/target-mips/op_helper.c b/target-mips/op_helper.c index f1ec18b0b39..4704216834c 100644 --- a/target-mips/op_helper.c +++ b/target-mips/op_helper.c @@ -19,12 +19,8 @@ #include #include "cpu.h" #include "qemu/host-utils.h" - #include "exec/helper-proto.h" - -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ +#include "exec/cpu_ldst.h" #ifndef CONFIG_USER_ONLY static inline void cpu_mips_tlb_flush (CPUMIPSState *env, int flush_global); diff --git a/target-mips/translate.c b/target-mips/translate.c index 13cf29b9d91..76deb7b138c 100644 --- a/target-mips/translate.c +++ b/target-mips/translate.c @@ -24,6 +24,7 @@ #include "cpu.h" #include "disas/disas.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-moxie/helper.c b/target-moxie/helper.c index 481a33039cc..6c98965b932 100644 --- a/target-moxie/helper.c +++ b/target-moxie/helper.c @@ -25,7 +25,7 @@ #include "cpu.h" #include "mmu.h" #include "exec/exec-all.h" -#include "exec/softmmu_exec.h" +#include "exec/cpu_ldst.h" #include "qemu/host-utils.h" #include "exec/helper-proto.h" diff --git a/target-moxie/translate.c b/target-moxie/translate.c index 7f0dfb66f25..4541b9bff4c 100644 --- a/target-moxie/translate.c +++ b/target-moxie/translate.c @@ -32,6 +32,7 @@ #include "exec/exec-all.h" #include "disas/disas.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-openrisc/mmu_helper.c b/target-openrisc/mmu_helper.c index 526363435b4..ee1c6f61184 100644 --- a/target-openrisc/mmu_helper.c +++ b/target-openrisc/mmu_helper.c @@ -19,9 +19,9 @@ */ #include "cpu.h" +#include "exec/cpu_ldst.h" #ifndef CONFIG_USER_ONLY -#include "exec/softmmu_exec.h" void tlb_fill(CPUState *cs, target_ulong addr, int is_write, int mmu_idx, uintptr_t retaddr) diff --git a/target-openrisc/translate.c b/target-openrisc/translate.c index 40084f9a527..b728718b641 100644 --- a/target-openrisc/translate.c +++ b/target-openrisc/translate.c @@ -26,6 +26,7 @@ #include "qemu/log.h" #include "config.h" #include "qemu/bitops.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-ppc/excp_helper.c b/target-ppc/excp_helper.c index a0c9fdc84b2..7dfc52d1598 100644 --- a/target-ppc/excp_helper.c +++ b/target-ppc/excp_helper.c @@ -18,6 +18,7 @@ */ #include "cpu.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" #include "helper_regs.h" diff --git a/target-ppc/mem_helper.c b/target-ppc/mem_helper.c index d9c8c367120..02b627e47b0 100644 --- a/target-ppc/mem_helper.c +++ b/target-ppc/mem_helper.c @@ -21,10 +21,7 @@ #include "exec/helper-proto.h" #include "helper_regs.h" - -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif /* !defined(CONFIG_USER_ONLY) */ +#include "exec/cpu_ldst.h" //#define DEBUG_OP diff --git a/target-ppc/mmu_helper.c b/target-ppc/mmu_helper.c index 1875636621a..f029f41965a 100644 --- a/target-ppc/mmu_helper.c +++ b/target-ppc/mmu_helper.c @@ -22,6 +22,7 @@ #include "kvm_ppc.h" #include "mmu-hash64.h" #include "mmu-hash32.h" +#include "exec/cpu_ldst.h" //#define DEBUG_MMU //#define DEBUG_BATS @@ -2903,8 +2904,6 @@ void helper_booke206_tlbflush(CPUPPCState *env, uint32_t type) /*****************************************************************************/ -#include "exec/softmmu_exec.h" - /* try to fill the TLB and return an exception if error. If retaddr is NULL, it means that the function was called in C code (i.e. not from generated code or from helper.c) */ diff --git a/target-ppc/translate.c b/target-ppc/translate.c index 6283b2c36c6..f08901470b1 100644 --- a/target-ppc/translate.c +++ b/target-ppc/translate.c @@ -22,6 +22,7 @@ #include "disas/disas.h" #include "tcg-op.h" #include "qemu/host-utils.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-s390x/fpu_helper.c b/target-s390x/fpu_helper.c index d879ad63a16..b946ec1d514 100644 --- a/target-s390x/fpu_helper.c +++ b/target-s390x/fpu_helper.c @@ -19,12 +19,9 @@ */ #include "cpu.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif - /* #define DEBUG_HELPER */ #ifdef DEBUG_HELPER #define HELPER_LOG(x...) qemu_log(x) diff --git a/target-s390x/helper.c b/target-s390x/helper.c index 3d756cae6ce..67ab1065aa4 100644 --- a/target-s390x/helper.c +++ b/target-s390x/helper.c @@ -21,6 +21,7 @@ #include "cpu.h" #include "exec/gdbstub.h" #include "qemu/timer.h" +#include "exec/cpu_ldst.h" #ifndef CONFIG_USER_ONLY #include "sysemu/sysemu.h" #endif diff --git a/target-s390x/mem_helper.c b/target-s390x/mem_helper.c index 3a0376ead30..5a55de86a13 100644 --- a/target-s390x/mem_helper.c +++ b/target-s390x/mem_helper.c @@ -20,11 +20,11 @@ #include "cpu.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" /*****************************************************************************/ /* Softmmu support */ #if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" /* try to fill the TLB and return an exception if error. If retaddr is NULL, it means that the function was called in C code (i.e. not diff --git a/target-s390x/misc_helper.c b/target-s390x/misc_helper.c index 44c08f370d6..9dae0256fac 100644 --- a/target-s390x/misc_helper.c +++ b/target-s390x/misc_helper.c @@ -28,9 +28,9 @@ #ifdef CONFIG_KVM #include #endif +#include "exec/cpu_ldst.h" #if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" #include "sysemu/cpus.h" #include "sysemu/sysemu.h" #include "hw/s390x/ebcdic.h" diff --git a/target-s390x/translate.c b/target-s390x/translate.c index cf65f01f606..8ca4824d609 100644 --- a/target-s390x/translate.c +++ b/target-s390x/translate.c @@ -33,6 +33,7 @@ #include "tcg-op.h" #include "qemu/log.h" #include "qemu/host-utils.h" +#include "exec/cpu_ldst.h" /* global register indexes */ static TCGv_ptr cpu_env; diff --git a/target-sh4/op_helper.c b/target-sh4/op_helper.c index ddd4186c7bf..74a5c4ea779 100644 --- a/target-sh4/op_helper.c +++ b/target-sh4/op_helper.c @@ -20,9 +20,9 @@ #include #include "cpu.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" #ifndef CONFIG_USER_ONLY -#include "exec/softmmu_exec.h" void tlb_fill(CPUState *cs, target_ulong addr, int is_write, int mmu_idx, uintptr_t retaddr) diff --git a/target-sh4/translate.c b/target-sh4/translate.c index 169c87fc1b0..81268181420 100644 --- a/target-sh4/translate.c +++ b/target-sh4/translate.c @@ -23,6 +23,7 @@ #include "cpu.h" #include "disas/disas.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-sparc/ldst_helper.c b/target-sparc/ldst_helper.c index 0843c77244e..03bd9f97065 100644 --- a/target-sparc/ldst_helper.c +++ b/target-sparc/ldst_helper.c @@ -19,6 +19,7 @@ #include "cpu.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" //#define DEBUG_MMU //#define DEBUG_MXCC @@ -64,10 +65,6 @@ #define QT0 (env->qt0) #define QT1 (env->qt1) -#if !defined(CONFIG_USER_ONLY) -#include "exec/softmmu_exec.h" -#endif - #if defined(TARGET_SPARC64) && !defined(CONFIG_USER_ONLY) /* Calculates TSB pointer value for fault page size 8k or 64k */ static uint64_t ultrasparc_tsb_pointer(uint64_t tsb_register, diff --git a/target-sparc/translate.c b/target-sparc/translate.c index 652a181763e..1ab07a18a2b 100644 --- a/target-sparc/translate.c +++ b/target-sparc/translate.c @@ -28,6 +28,7 @@ #include "disas/disas.h" #include "exec/helper-proto.h" #include "tcg-op.h" +#include "exec/cpu_ldst.h" #include "exec/helper-gen.h" diff --git a/target-unicore32/op_helper.c b/target-unicore32/op_helper.c index a369ac6464a..0266dbdf7b9 100644 --- a/target-unicore32/op_helper.c +++ b/target-unicore32/op_helper.c @@ -10,6 +10,7 @@ */ #include "cpu.h" #include "exec/helper-proto.h" +#include "exec/cpu_ldst.h" #define SIGNBIT (uint32_t)0x80000000 #define SIGNBIT64 ((uint64_t)1 << 63) @@ -241,8 +242,6 @@ uint32_t HELPER(ror_cc)(CPUUniCore32State *env, uint32_t x, uint32_t i) } #ifndef CONFIG_USER_ONLY -#include "exec/softmmu_exec.h" - void tlb_fill(CPUState *cs, target_ulong addr, int is_write, int mmu_idx, uintptr_t retaddr) { diff --git a/target-unicore32/translate.c b/target-unicore32/translate.c index 3cccafe5ad9..5a8c7c89eeb 100644 --- a/target-unicore32/translate.c +++ b/target-unicore32/translate.c @@ -18,6 +18,7 @@ #include "disas/disas.h" #include "tcg-op.h" #include "qemu/log.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/target-xtensa/op_helper.c b/target-xtensa/op_helper.c index a772295109e..dae13866efb 100644 --- a/target-xtensa/op_helper.c +++ b/target-xtensa/op_helper.c @@ -28,7 +28,7 @@ #include "cpu.h" #include "exec/helper-proto.h" #include "qemu/host-utils.h" -#include "exec/softmmu_exec.h" +#include "exec/cpu_ldst.h" #include "exec/address-spaces.h" #include "qemu/timer.h" diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c index 57e56bd34dc..2f22cce8450 100644 --- a/target-xtensa/translate.c +++ b/target-xtensa/translate.c @@ -36,6 +36,7 @@ #include "tcg-op.h" #include "qemu/log.h" #include "sysemu/sysemu.h" +#include "exec/cpu_ldst.h" #include "exec/helper-proto.h" #include "exec/helper-gen.h" diff --git a/tci.c b/tci.c index 6523ab82f4d..0acf1a177e9 100644 --- a/tci.c +++ b/tci.c @@ -26,6 +26,7 @@ #include "qemu-common.h" #include "exec/exec-all.h" /* MAX_OPC_PARAM_IARGS */ +#include "exec/cpu_ldst.h" #include "tcg-op.h" /* Marker for missing code. */ diff --git a/user-exec.c b/user-exec.c index 8ed6fec8147..1ff8673acbd 100644 --- a/user-exec.c +++ b/user-exec.c @@ -21,6 +21,7 @@ #include "disas/disas.h" #include "tcg.h" #include "qemu/bitops.h" +#include "exec/cpu_ldst.h" #undef EAX #undef ECX -- 2.39.5