aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé <philmd@linaro.org>2024-01-18 22:57:28 +1000
committerNicholas Piggin <npiggin@gmail.com>2024-02-23 23:24:42 +1000
commitaea75803a4da88a09526c86f79bbbcdd40d664c2 (patch)
treec8c4c140f38542a1855bda04dddb14b1a1f8fa21
parent6cd1da55e8626016a7a74134badee299889a00c0 (diff)
hw/ppc/spapr_hcall: Allow elision of softmmu_resize_hpt_prep
Check tcg_enabled() before calling softmmu_resize_hpt_prepare() and softmmu_resize_hpt_commit() to allow the compiler to elide their calls. The stubs are then unnecessary, remove them. Reviewed-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
-rw-r--r--hw/ppc/spapr_hcall.c12
-rw-r--r--target/ppc/tcg-stub.c15
2 files changed, 8 insertions, 19 deletions
diff --git a/hw/ppc/spapr_hcall.c b/hw/ppc/spapr_hcall.c
index fcefd1d1c7..0d7d523e6d 100644
--- a/hw/ppc/spapr_hcall.c
+++ b/hw/ppc/spapr_hcall.c
@@ -123,9 +123,11 @@ static target_ulong h_resize_hpt_prepare(PowerPCCPU *cpu,
if (kvm_enabled()) {
return H_HARDWARE;
+ } else if (tcg_enabled()) {
+ return softmmu_resize_hpt_prepare(cpu, spapr, shift);
+ } else {
+ g_assert_not_reached();
}
-
- return softmmu_resize_hpt_prepare(cpu, spapr, shift);
}
static void do_push_sregs_to_kvm_pr(CPUState *cs, run_on_cpu_data data)
@@ -191,9 +193,11 @@ static target_ulong h_resize_hpt_commit(PowerPCCPU *cpu,
if (kvm_enabled()) {
return H_HARDWARE;
+ } else if (tcg_enabled()) {
+ return softmmu_resize_hpt_commit(cpu, spapr, flags, shift);
+ } else {
+ g_assert_not_reached();
}
-
- return softmmu_resize_hpt_commit(cpu, spapr, flags, shift);
}
diff --git a/target/ppc/tcg-stub.c b/target/ppc/tcg-stub.c
index aadcf59d26..740d796b98 100644
--- a/target/ppc/tcg-stub.c
+++ b/target/ppc/tcg-stub.c
@@ -28,18 +28,3 @@ void create_ppc_opcodes(PowerPCCPU *cpu, Error **errp)
void destroy_ppc_opcodes(PowerPCCPU *cpu)
{
}
-
-target_ulong softmmu_resize_hpt_prepare(PowerPCCPU *cpu,
- SpaprMachineState *spapr,
- target_ulong shift)
-{
- g_assert_not_reached();
-}
-
-target_ulong softmmu_resize_hpt_commit(PowerPCCPU *cpu,
- SpaprMachineState *spapr,
- target_ulong flags,
- target_ulong shift)
-{
- g_assert_not_reached();
-}