]> git.proxmox.com Git - qemu.git/commitdiff
cpu: Introduce ENV_OFFSET macros
authorAndreas Färber <afaerber@suse.de>
Fri, 22 Feb 2013 18:10:01 +0000 (18:10 +0000)
committerBlue Swirl <blauwirbel@gmail.com>
Sun, 3 Mar 2013 14:28:28 +0000 (14:28 +0000)
Introduce ENV_OFFSET macros which can be used in non-target-specific
code that needs to generate TCG instructions which reference CPUState
fields given the cpu_env register that TCG targets set up with a
pointer to the CPUArchState struct.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
15 files changed:
target-alpha/cpu-qom.h
target-arm/cpu-qom.h
target-cris/cpu-qom.h
target-i386/cpu-qom.h
target-lm32/cpu-qom.h
target-m68k/cpu-qom.h
target-microblaze/cpu-qom.h
target-mips/cpu-qom.h
target-openrisc/cpu.h
target-ppc/cpu-qom.h
target-s390x/cpu-qom.h
target-sh4/cpu-qom.h
target-sparc/cpu-qom.h
target-unicore32/cpu-qom.h
target-xtensa/cpu-qom.h

index c0f6c6d165bdafa1fb5275439683b53dc7e0109c..252bd14821342ab150918ac97b60096aa21e5602 100644 (file)
@@ -72,5 +72,6 @@ static inline AlphaCPU *alpha_env_get_cpu(CPUAlphaState *env)
 
 #define ENV_GET_CPU(e) CPU(alpha_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(AlphaCPU, env)
 
 #endif
index aff7bf302e7bd1bd5413a27dfe17f7cbbdf1d234..7539727768803bdba8ffa6bb3665d3b4a030fc9c 100644 (file)
@@ -109,6 +109,8 @@ static inline ARMCPU *arm_env_get_cpu(CPUARMState *env)
 
 #define ENV_GET_CPU(e) CPU(arm_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(ARMCPU, env)
+
 void register_cp_regs_for_features(ARMCPU *cpu);
 
 #endif
index 2bac71fd817749ce24248a27cdec967870e93430..11e528661d03d703c0cd42ee7b9498a5912ba8ee 100644 (file)
@@ -71,5 +71,6 @@ static inline CRISCPU *cris_env_get_cpu(CPUCRISState *env)
 
 #define ENV_GET_CPU(e) CPU(cris_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(CRISCPU, env)
 
 #endif
index 48e6b54b1fb16bdc9a0652f74d6884b068715b32..b7bdcb689293beb99c475f1e6e713d25527ca7d7 100644 (file)
@@ -74,5 +74,6 @@ static inline X86CPU *x86_env_get_cpu(CPUX86State *env)
 
 #define ENV_GET_CPU(e) CPU(x86_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(X86CPU, env)
 
 #endif
index d7525b300c992c8f9c72665f6b374f2b01319755..c0b6ce5897f55dadb4fe77a109cb4aca6701e6bf 100644 (file)
@@ -69,5 +69,6 @@ static inline LM32CPU *lm32_env_get_cpu(CPULM32State *env)
 
 #define ENV_GET_CPU(e) CPU(lm32_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(LM32CPU, env)
 
 #endif
index 20e5684552ff9f80888fd0787d4efe22bc0463bf..f4c33b2eb332fa8f146e94b3f54ea9e5e8dd27e5 100644 (file)
@@ -68,5 +68,6 @@ static inline M68kCPU *m68k_env_get_cpu(CPUM68KState *env)
 
 #define ENV_GET_CPU(e) CPU(m68k_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(M68kCPU, env)
 
 #endif
index 5ea911c8e48810d67c8d0e7474685cbbc396c500..a0248a5a22f8b5381fb402237df6378bcfbdf1d2 100644 (file)
@@ -68,5 +68,6 @@ static inline MicroBlazeCPU *mb_env_get_cpu(CPUMBState *env)
 
 #define ENV_GET_CPU(e) CPU(mb_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(MicroBlazeCPU, env)
 
 #endif
index 55aa692a853198097c9dba6fcb086e967c549f0c..c6bcddfb9ac221372f63ff96092ca61ef77c0966 100644 (file)
@@ -72,5 +72,6 @@ static inline MIPSCPU *mips_env_get_cpu(CPUMIPSState *env)
 
 #define ENV_GET_CPU(e) CPU(mips_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(MIPSCPU, env)
 
 #endif
index 419f007991d3b8f1057ae1354e8abf9d8ead1182..4cfd1c74fb1c20cefda8ea69d7accdbcf70970db 100644 (file)
@@ -340,6 +340,8 @@ static inline OpenRISCCPU *openrisc_env_get_cpu(CPUOpenRISCState *env)
 
 #define ENV_GET_CPU(e) CPU(openrisc_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(OpenRISCCPU, env)
+
 OpenRISCCPU *cpu_openrisc_init(const char *cpu_model);
 
 void cpu_openrisc_list(FILE *f, fprintf_function cpu_fprintf);
index 2b82cdbe40cd99a13120258058213eb96c64db61..4e8ceca57462930d7366566364af85d69988a9ae 100644 (file)
@@ -78,7 +78,8 @@ static inline PowerPCCPU *ppc_env_get_cpu(CPUPPCState *env)
 
 #define ENV_GET_CPU(e) CPU(ppc_env_get_cpu(e))
 
-PowerPCCPUClass *ppc_cpu_class_by_pvr(uint32_t pvr);
+#define ENV_OFFSET offsetof(PowerPCCPU, env)
 
+PowerPCCPUClass *ppc_cpu_class_by_pvr(uint32_t pvr);
 
 #endif
index 237184f55acc4d248e68d9be5c54cfd7bfa21fdd..f6e514570c7042f983d79b14d481ad91699554dd 100644 (file)
@@ -69,5 +69,6 @@ static inline S390CPU *s390_env_get_cpu(CPUS390XState *env)
 
 #define ENV_GET_CPU(e) CPU(s390_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(S390CPU, env)
 
 #endif
index d368db1b0a4c0f45b0d98835292540086a9dfd28..f4e89764781abfda4cb51a9e147aff0301429c9d 100644 (file)
@@ -68,5 +68,6 @@ static inline SuperHCPU *sh_env_get_cpu(CPUSH4State *env)
 
 #define ENV_GET_CPU(e) CPU(sh_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(SuperHCPU, env)
 
 #endif
index 89cd1cf2d343bf91fd55afac0f1227a5675c39c1..efeeca0d9717a52b207705e20a56561488627f70 100644 (file)
@@ -73,5 +73,6 @@ static inline SPARCCPU *sparc_env_get_cpu(CPUSPARCState *env)
 
 #define ENV_GET_CPU(e) CPU(sparc_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(SPARCCPU, env)
 
 #endif
index 625c6143db0f626f21f5d33940b8911a2ef4bf8b..c6590bdf018c6d0b247f47b1e4a778905ad5d2b0 100644 (file)
@@ -58,5 +58,6 @@ static inline UniCore32CPU *uc32_env_get_cpu(CPUUniCore32State *env)
 
 #define ENV_GET_CPU(e) CPU(uc32_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(UniCore32CPU, env)
 
 #endif
index 270de1658336f8e96df3368a66fd5d036313fb57..c78136bf72d569b87c3cd3850552192e8c629c49 100644 (file)
@@ -78,5 +78,6 @@ static inline XtensaCPU *xtensa_env_get_cpu(const CPUXtensaState *env)
 
 #define ENV_GET_CPU(e) CPU(xtensa_env_get_cpu(e))
 
+#define ENV_OFFSET offsetof(XtensaCPU, env)
 
 #endif