Skip to content

Commit

Permalink
target/xtensa: Prefer fast cpu_env() over slower CPU QOM cast macro
Browse files Browse the repository at this point in the history
Mechanical patch produced running the command documented
in scripts/coccinelle/cpu_env.cocci_template header.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20240129164514.73104-29-philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
  • Loading branch information
philmd authored and huth committed Mar 12, 2024
1 parent 39ac0ba commit 5204926
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 20 deletions.
3 changes: 1 addition & 2 deletions target/xtensa/cpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -96,9 +96,8 @@ bool xtensa_abi_call0(void)
static void xtensa_cpu_reset_hold(Object *obj)
{
CPUState *cs = CPU(obj);
XtensaCPU *cpu = XTENSA_CPU(cs);
XtensaCPUClass *xcc = XTENSA_CPU_GET_CLASS(obj);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);
bool dfpu = xtensa_option_enabled(env->config,
XTENSA_OPTION_DFP_COPROCESSOR);

Expand Down
3 changes: 1 addition & 2 deletions target/xtensa/dbg_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,7 @@ void HELPER(wsr_ibreaka)(CPUXtensaState *env, uint32_t i, uint32_t v)

bool xtensa_debug_check_breakpoint(CPUState *cs)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);
unsigned int i;

if (xtensa_get_cintlevel(env) >= env->config->debug_level) {
Expand Down
3 changes: 1 addition & 2 deletions target/xtensa/exc_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -205,8 +205,7 @@ static void handle_interrupt(CPUXtensaState *env)
/* Called from cpu_handle_interrupt with BQL held */
void xtensa_cpu_do_interrupt(CPUState *cs)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);

if (cs->exception_index == EXC_IRQ) {
qemu_log_mask(CPU_LOG_INT,
Expand Down
6 changes: 2 additions & 4 deletions target/xtensa/gdbstub.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,7 @@ void xtensa_count_regs(const XtensaConfig *config,

int xtensa_cpu_gdb_read_register(CPUState *cs, GByteArray *mem_buf, int n)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);
const XtensaGdbReg *reg = env->config->gdb_regmap.reg + n;
#ifdef CONFIG_USER_ONLY
int num_regs = env->config->gdb_regmap.num_core_regs;
Expand Down Expand Up @@ -120,8 +119,7 @@ int xtensa_cpu_gdb_read_register(CPUState *cs, GByteArray *mem_buf, int n)

int xtensa_cpu_gdb_write_register(CPUState *cs, uint8_t *mem_buf, int n)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);
uint32_t tmp;
const XtensaGdbReg *reg = env->config->gdb_regmap.reg + n;
#ifdef CONFIG_USER_ONLY
Expand Down
9 changes: 3 additions & 6 deletions target/xtensa/helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -217,8 +217,7 @@ static uint32_t check_hw_breakpoints(CPUXtensaState *env)

void xtensa_breakpoint_handler(CPUState *cs)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);

if (cs->watchpoint_hit) {
if (cs->watchpoint_hit->flags & BP_CPU) {
Expand Down Expand Up @@ -266,8 +265,7 @@ bool xtensa_cpu_tlb_fill(CPUState *cs, vaddr address, int size,
MMUAccessType access_type, int mmu_idx,
bool probe, uintptr_t retaddr)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);
uint32_t paddr;
uint32_t page_size;
unsigned access;
Expand Down Expand Up @@ -297,8 +295,7 @@ void xtensa_cpu_do_transaction_failed(CPUState *cs, hwaddr physaddr, vaddr addr,
int mmu_idx, MemTxAttrs attrs,
MemTxResult response, uintptr_t retaddr)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);

cpu_restore_state(cs, retaddr);
HELPER(exception_cause_vaddr)(env, env->pc,
Expand Down
6 changes: 2 additions & 4 deletions target/xtensa/translate.c
Original file line number Diff line number Diff line change
Expand Up @@ -1127,10 +1127,9 @@ static void xtensa_tr_init_disas_context(DisasContextBase *dcbase,
CPUState *cpu)
{
DisasContext *dc = container_of(dcbase, DisasContext, base);
CPUXtensaState *env = cpu_env(cpu);
uint32_t tb_flags = dc->base.tb->flags;

dc->config = env->config;
dc->config = cpu_env(cpu)->config;
dc->pc = dc->base.pc_first;
dc->ring = tb_flags & XTENSA_TBFLAG_RING_MASK;
dc->cring = (tb_flags & XTENSA_TBFLAG_EXCM) ? 0 : dc->ring;
Expand Down Expand Up @@ -1248,8 +1247,7 @@ void gen_intermediate_code(CPUState *cpu, TranslationBlock *tb, int *max_insns,

void xtensa_cpu_dump_state(CPUState *cs, FILE *f, int flags)
{
XtensaCPU *cpu = XTENSA_CPU(cs);
CPUXtensaState *env = &cpu->env;
CPUXtensaState *env = cpu_env(cs);
xtensa_isa isa = env->config->isa;
int i, j;

Expand Down

0 comments on commit 5204926

Please sign in to comment.