Message ID | 20210518150515.57983-2-bruno.larsen@eldorado.org.br (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target/ppc: Misc motion to support disabling TCG | expand |
On Tue, May 18, 2021 at 12:05:09PM -0300, Bruno Larsen (billionai) wrote: > When the function was moved to cpu.c, it should have been wrapped with > #if !defined(CONFIG_USER_ONLY), otherwise linux-user builds don't work. I already corrected this in my tree, folding it into the original change to avoid breaking bisect. > The cleanup suggested by Richard Henderson has also been applied, > changing error_report(...) to qemu_log_mask(LOG_GUEST_ERROR, ...) in > that function. That's a reasonable change, but doesn't belong with the compile fix. Please rebase and update the commit message. > > Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br> > --- > target/ppc/cpu.c | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/target/ppc/cpu.c b/target/ppc/cpu.c > index 0ab7ac1af1..82e276349a 100644 > --- a/target/ppc/cpu.c > +++ b/target/ppc/cpu.c > @@ -65,6 +65,7 @@ uint32_t ppc_get_vscr(CPUPPCState *env) > return env->vscr | (sat << VSCR_SAT); > } > > +#if !defined(CONFIG_USER_ONLY) > void ppc_store_sdr1(CPUPPCState *env, target_ulong value) > { > PowerPCCPU *cpu = env_archcpu(env); > @@ -76,13 +77,13 @@ void ppc_store_sdr1(CPUPPCState *env, target_ulong value) > target_ulong htabsize = value & SDR_64_HTABSIZE; > > if (value & ~sdr_mask) { > - error_report("Invalid bits 0x"TARGET_FMT_lx" set in SDR1", > - value & ~sdr_mask); > + qemu_log_mask(LOG_GUEST_ERROR, "Invalid bits 0x"TARGET_FMT_lx > + " set in SDR1", value & ~sdr_mask); > value &= sdr_mask; > } > if (htabsize > 28) { > - error_report("Invalid HTABSIZE 0x" TARGET_FMT_lx" stored in SDR1", > - htabsize); > + qemu_log_mask(LOG_GUEST_ERROR, "Invalid HTABSIZE 0x" TARGET_FMT_lx > + " stored in SDR1", htabsize); > return; > } > } > @@ -90,3 +91,4 @@ void ppc_store_sdr1(CPUPPCState *env, target_ulong value) > /* FIXME: Should check for valid HTABMASK values in 32-bit case */ > env->spr[SPR_SDR1] = value; > } > +#endif
diff --git a/target/ppc/cpu.c b/target/ppc/cpu.c index 0ab7ac1af1..82e276349a 100644 --- a/target/ppc/cpu.c +++ b/target/ppc/cpu.c @@ -65,6 +65,7 @@ uint32_t ppc_get_vscr(CPUPPCState *env) return env->vscr | (sat << VSCR_SAT); } +#if !defined(CONFIG_USER_ONLY) void ppc_store_sdr1(CPUPPCState *env, target_ulong value) { PowerPCCPU *cpu = env_archcpu(env); @@ -76,13 +77,13 @@ void ppc_store_sdr1(CPUPPCState *env, target_ulong value) target_ulong htabsize = value & SDR_64_HTABSIZE; if (value & ~sdr_mask) { - error_report("Invalid bits 0x"TARGET_FMT_lx" set in SDR1", - value & ~sdr_mask); + qemu_log_mask(LOG_GUEST_ERROR, "Invalid bits 0x"TARGET_FMT_lx + " set in SDR1", value & ~sdr_mask); value &= sdr_mask; } if (htabsize > 28) { - error_report("Invalid HTABSIZE 0x" TARGET_FMT_lx" stored in SDR1", - htabsize); + qemu_log_mask(LOG_GUEST_ERROR, "Invalid HTABSIZE 0x" TARGET_FMT_lx + " stored in SDR1", htabsize); return; } } @@ -90,3 +91,4 @@ void ppc_store_sdr1(CPUPPCState *env, target_ulong value) /* FIXME: Should check for valid HTABMASK values in 32-bit case */ env->spr[SPR_SDR1] = value; } +#endif
When the function was moved to cpu.c, it should have been wrapped with #if !defined(CONFIG_USER_ONLY), otherwise linux-user builds don't work. The cleanup suggested by Richard Henderson has also been applied, changing error_report(...) to qemu_log_mask(LOG_GUEST_ERROR, ...) in that function. Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br> --- target/ppc/cpu.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)