aboutsummaryrefslogtreecommitdiff
path: root/target/alpha/cpu.c
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2024-07-04 16:57:10 +0100
committerPeter Maydell <peter.maydell@linaro.org>2024-07-11 11:41:34 +0100
commit4f7b1ecba81c9dab8066e891ead8a4fff95781af (patch)
tree66dc2e1823447fbe28bbd33a93417b5af97ae8a7 /target/alpha/cpu.c
parentfcee3707eb0331a7270d9c93ba68e832e8ff8b98 (diff)
downloadqemu-4f7b1ecba81c9dab8066e891ead8a4fff95781af.zip
qemu-4f7b1ecba81c9dab8066e891ead8a4fff95781af.tar.gz
qemu-4f7b1ecba81c9dab8066e891ead8a4fff95781af.tar.bz2
target: Set TCGCPUOps::cpu_exec_halt to target's has_work implementation
Currently the TCGCPUOps::cpu_exec_halt method is optional, and if it is not set then the default is to call the CPUClass::has_work method (which has an identical function signature). We would like to make the cpu_exec_halt method mandatory so we can remove the runtime check and fallback handling. In preparation for that, make all the targets which don't need special handling in their cpu_exec_halt set it to their cpu_has_work implementation instead of leaving it unset. (This is every target except for arm and i386.) In the riscv case this requires us to make the function not be local to the source file it's defined in. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'target/alpha/cpu.c')
-rw-r--r--target/alpha/cpu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/target/alpha/cpu.c b/target/alpha/cpu.c
index 0e2fbcb..9db1dff 100644
--- a/target/alpha/cpu.c
+++ b/target/alpha/cpu.c
@@ -219,6 +219,7 @@ static const TCGCPUOps alpha_tcg_ops = {
#else
.tlb_fill = alpha_cpu_tlb_fill,
.cpu_exec_interrupt = alpha_cpu_exec_interrupt,
+ .cpu_exec_halt = alpha_cpu_has_work,
.do_interrupt = alpha_cpu_do_interrupt,
.do_transaction_failed = alpha_cpu_do_transaction_failed,
.do_unaligned_access = alpha_cpu_do_unaligned_access,