Message ID | 20210902161543.417092-9-f4bug@amsat.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | accel: Move has_work() from SysemuCPUOps to AccelOpsClass | expand |
On 9/2/21 6:15 PM, Philippe Mathieu-Daudé wrote: > Restrict has_work() to TCG sysemu. > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > target/alpha/cpu.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/target/alpha/cpu.c b/target/alpha/cpu.c > index 93e16a2ffb4..32cf5a2ea9f 100644 > --- a/target/alpha/cpu.c > +++ b/target/alpha/cpu.c > @@ -33,6 +33,7 @@ static void alpha_cpu_set_pc(CPUState *cs, vaddr value) > cpu->env.pc = value; > } > > +#if defined(CONFIG_TCG) && !defined(CONFIG_USER_ONLY) > static bool alpha_cpu_has_work(CPUState *cs) Drop CONFIG_TCG for alpha; it's always true. Otherwise, Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On 9/3/21 10:18 PM, Richard Henderson wrote: > On 9/2/21 6:15 PM, Philippe Mathieu-Daudé wrote: >> Restrict has_work() to TCG sysemu. >> >> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >> --- >> target/alpha/cpu.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/target/alpha/cpu.c b/target/alpha/cpu.c >> index 93e16a2ffb4..32cf5a2ea9f 100644 >> --- a/target/alpha/cpu.c >> +++ b/target/alpha/cpu.c >> @@ -33,6 +33,7 @@ static void alpha_cpu_set_pc(CPUState *cs, vaddr value) >> cpu->env.pc = value; >> } >> +#if defined(CONFIG_TCG) && !defined(CONFIG_USER_ONLY) >> static bool alpha_cpu_has_work(CPUState *cs) > > Drop CONFIG_TCG for alpha; it's always true. What is the rational? "Old" architectures (with no active / official hw development) are unlikely to add hardware acceleration, so TCG is the single one possible? Thus no need to clutter the code with obvious #ifdef'ry? > Otherwise, > Reviewed-by: Richard Henderson <richard.henderson@linaro.org> > > r~ >
On 9/3/21 10:34 PM, Philippe Mathieu-Daudé wrote: >> Drop CONFIG_TCG for alpha; it's always true. > > What is the rational? "Old" architectures (with no active / > official hw development) are unlikely to add hardware > acceleration, so TCG is the single one possible? Thus no > need to clutter the code with obvious #ifdef'ry? Correct. Broadly, if git grep CONFIG_TCG is empty in a subdirectory, don't add the first instance. r~
diff --git a/target/alpha/cpu.c b/target/alpha/cpu.c index 93e16a2ffb4..32cf5a2ea9f 100644 --- a/target/alpha/cpu.c +++ b/target/alpha/cpu.c @@ -33,6 +33,7 @@ static void alpha_cpu_set_pc(CPUState *cs, vaddr value) cpu->env.pc = value; } +#if defined(CONFIG_TCG) && !defined(CONFIG_USER_ONLY) static bool alpha_cpu_has_work(CPUState *cs) { /* Here we are checking to see if the CPU should wake up from HALT. @@ -47,6 +48,7 @@ static bool alpha_cpu_has_work(CPUState *cs) | CPU_INTERRUPT_SMP | CPU_INTERRUPT_MCHK); } +#endif /* CONFIG_TCG && !CONFIG_USER_ONLY */ static void alpha_cpu_disas_set_info(CPUState *cpu, disassemble_info *info) { @@ -221,6 +223,7 @@ static const struct TCGCPUOps alpha_tcg_ops = { .tlb_fill = alpha_cpu_tlb_fill, #ifndef CONFIG_USER_ONLY + .has_work = alpha_cpu_has_work, .cpu_exec_interrupt = alpha_cpu_exec_interrupt, .do_interrupt = alpha_cpu_do_interrupt, .do_transaction_failed = alpha_cpu_do_transaction_failed, @@ -238,7 +241,6 @@ static void alpha_cpu_class_init(ObjectClass *oc, void *data) &acc->parent_realize); cc->class_by_name = alpha_cpu_class_by_name; - cc->has_work = alpha_cpu_has_work; cc->dump_state = alpha_cpu_dump_state; cc->set_pc = alpha_cpu_set_pc; cc->gdb_read_register = alpha_cpu_gdb_read_register;
Restrict has_work() to TCG sysemu. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- target/alpha/cpu.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)