target/alpha: Use env_cpu, env_archcpu

Cleanup in the boilerplate that each target must define.
Replace alpha_env_get_cpu with env_archcpu.  The combination
CPU(alpha_env_get_cpu) should have used ENV_GET_CPU to begin;
use env_cpu now.

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
Richard Henderson 2019-03-22 17:26:58 -07:00
parent 083dc73d7a
commit 1c7ad26000
4 changed files with 8 additions and 15 deletions

View File

@ -23,7 +23,7 @@
void cpu_loop(CPUAlphaState *env) void cpu_loop(CPUAlphaState *env)
{ {
CPUState *cs = CPU(alpha_env_get_cpu(env)); CPUState *cs = env_cpu(env);
int trapnr; int trapnr;
target_siginfo_t info; target_siginfo_t info;
abi_long sysret; abi_long sysret;

View File

@ -278,11 +278,6 @@ struct AlphaCPU {
QEMUTimer *alarm_timer; QEMUTimer *alarm_timer;
}; };
static inline AlphaCPU *alpha_env_get_cpu(CPUAlphaState *env)
{
return container_of(env, AlphaCPU, env);
}
#define ENV_OFFSET offsetof(AlphaCPU, env) #define ENV_OFFSET offsetof(AlphaCPU, env)
#ifndef CONFIG_USER_ONLY #ifndef CONFIG_USER_ONLY

View File

@ -136,7 +136,7 @@ static int get_physical_address(CPUAlphaState *env, target_ulong addr,
int prot_need, int mmu_idx, int prot_need, int mmu_idx,
target_ulong *pphys, int *pprot) target_ulong *pphys, int *pprot)
{ {
CPUState *cs = CPU(alpha_env_get_cpu(env)); CPUState *cs = env_cpu(env);
target_long saddr = addr; target_long saddr = addr;
target_ulong phys = 0; target_ulong phys = 0;
target_ulong L1pte, L2pte, L3pte; target_ulong L1pte, L2pte, L3pte;
@ -486,8 +486,7 @@ void alpha_cpu_dump_state(CPUState *cs, FILE *f, int flags)
We expect that ENV->PC has already been updated. */ We expect that ENV->PC has already been updated. */
void QEMU_NORETURN helper_excp(CPUAlphaState *env, int excp, int error) void QEMU_NORETURN helper_excp(CPUAlphaState *env, int excp, int error)
{ {
AlphaCPU *cpu = alpha_env_get_cpu(env); CPUState *cs = env_cpu(env);
CPUState *cs = CPU(cpu);
cs->exception_index = excp; cs->exception_index = excp;
env->error_code = error; env->error_code = error;
@ -498,8 +497,7 @@ void QEMU_NORETURN helper_excp(CPUAlphaState *env, int excp, int error)
void QEMU_NORETURN dynamic_excp(CPUAlphaState *env, uintptr_t retaddr, void QEMU_NORETURN dynamic_excp(CPUAlphaState *env, uintptr_t retaddr,
int excp, int error) int excp, int error)
{ {
AlphaCPU *cpu = alpha_env_get_cpu(env); CPUState *cs = env_cpu(env);
CPUState *cs = CPU(cpu);
cs->exception_index = excp; cs->exception_index = excp;
env->error_code = error; env->error_code = error;

View File

@ -44,17 +44,17 @@ uint64_t helper_load_pcc(CPUAlphaState *env)
#ifndef CONFIG_USER_ONLY #ifndef CONFIG_USER_ONLY
void helper_tbia(CPUAlphaState *env) void helper_tbia(CPUAlphaState *env)
{ {
tlb_flush(CPU(alpha_env_get_cpu(env))); tlb_flush(env_cpu(env));
} }
void helper_tbis(CPUAlphaState *env, uint64_t p) void helper_tbis(CPUAlphaState *env, uint64_t p)
{ {
tlb_flush_page(CPU(alpha_env_get_cpu(env)), p); tlb_flush_page(env_cpu(env), p);
} }
void helper_tb_flush(CPUAlphaState *env) void helper_tb_flush(CPUAlphaState *env)
{ {
tb_flush(CPU(alpha_env_get_cpu(env))); tb_flush(env_cpu(env));
} }
void helper_halt(uint64_t restart) void helper_halt(uint64_t restart)
@ -78,7 +78,7 @@ uint64_t helper_get_walltime(void)
void helper_set_alarm(CPUAlphaState *env, uint64_t expire) void helper_set_alarm(CPUAlphaState *env, uint64_t expire)
{ {
AlphaCPU *cpu = alpha_env_get_cpu(env); AlphaCPU *cpu = env_archcpu(env);
if (expire) { if (expire) {
env->alarm_expire = expire; env->alarm_expire = expire;