Re: [PATCH v2 3/7] target/ppc: powerpc_excp: Group unimplemented exceptions
On 1/5/22 12:40 PM, Fabiano Rosas wrote: Signed-off-by: Fabiano Rosas Reviewed-by: Cédric Le Goater --- target/ppc/excp_helper.c | 77 +--- 1 file changed, 8 insertions(+), 69 deletions(-) Reviewed-by: Richard Henderson r~
Re: [PATCH v2 3/7] target/ppc: powerpc_excp: Group unimplemented exceptions
On Wed, Jan 05, 2022 at 05:40:25PM -0300, Fabiano Rosas wrote: > Signed-off-by: Fabiano Rosas > Reviewed-by: Cédric Le Goater Reviewed-by: David Gibson > --- > target/ppc/excp_helper.c | 77 +--- > 1 file changed, 8 insertions(+), 69 deletions(-) > > diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c > index ce86b2ae37..fa41f8048d 100644 > --- a/target/ppc/excp_helper.c > +++ b/target/ppc/excp_helper.c > @@ -701,23 +701,6 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) > case POWERPC_EXCP_SPEU: /* SPE/embedded floating-point unavailable/VPU > */ > env->spr[SPR_BOOKE_ESR] = ESR_SPV; > break; > -case POWERPC_EXCP_EFPDI: /* Embedded floating-point data interrupt > */ > -/* XXX: TODO */ > -cpu_abort(cs, "Embedded floating point data exception " > - "is not implemented yet !\n"); > -env->spr[SPR_BOOKE_ESR] = ESR_SPV; > -break; > -case POWERPC_EXCP_EFPRI: /* Embedded floating-point round interrupt > */ > -/* XXX: TODO */ > -cpu_abort(cs, "Embedded floating point round exception " > - "is not implemented yet !\n"); > -env->spr[SPR_BOOKE_ESR] = ESR_SPV; > -break; > -case POWERPC_EXCP_EPERFM:/* Embedded performance monitor interrupt > */ > -/* XXX: TODO */ > -cpu_abort(cs, > - "Performance counter exception is not implemented yet > !\n"); > -break; > case POWERPC_EXCP_DOORI: /* Embedded doorbell interrupt > */ > break; > case POWERPC_EXCP_DOORCI:/* Embedded doorbell critical interrupt > */ > @@ -782,19 +765,6 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) > case POWERPC_EXCP_PIT: /* Programmable interval timer interrupt > */ > trace_ppc_excp_print("PIT"); > break; > -case POWERPC_EXCP_IO:/* IO error exception > */ > -/* XXX: TODO */ > -cpu_abort(cs, "601 IO error exception is not implemented yet !\n"); > -break; > -case POWERPC_EXCP_RUNM: /* Run mode exception > */ > -/* XXX: TODO */ > -cpu_abort(cs, "601 run mode exception is not implemented yet !\n"); > -break; > -case POWERPC_EXCP_EMUL: /* Emulation trap exception > */ > -/* XXX: TODO */ > -cpu_abort(cs, "602 emulation trap exception " > - "is not implemented yet !\n"); > -break; > case POWERPC_EXCP_IFTLB: /* Instruction fetch TLB error > */ > case POWERPC_EXCP_DLTLB: /* Data load TLB miss > */ > case POWERPC_EXCP_DSTLB: /* Data store TLB miss > */ > @@ -821,56 +791,25 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) > break; > } > break; > +case POWERPC_EXCP_EFPDI: /* Embedded floating-point data interrupt > */ > +case POWERPC_EXCP_EFPRI: /* Embedded floating-point round interrupt > */ > +case POWERPC_EXCP_EPERFM:/* Embedded performance monitor interrupt > */ > +case POWERPC_EXCP_IO:/* IO error exception > */ > +case POWERPC_EXCP_RUNM: /* Run mode exception > */ > +case POWERPC_EXCP_EMUL: /* Emulation trap exception > */ > case POWERPC_EXCP_FPA: /* Floating-point assist exception > */ > -/* XXX: TODO */ > -cpu_abort(cs, "Floating point assist exception " > - "is not implemented yet !\n"); > -break; > case POWERPC_EXCP_DABR: /* Data address breakpoint > */ > -/* XXX: TODO */ > -cpu_abort(cs, "DABR exception is not implemented yet !\n"); > -break; > case POWERPC_EXCP_IABR: /* Instruction address breakpoint > */ > -/* XXX: TODO */ > -cpu_abort(cs, "IABR exception is not implemented yet !\n"); > -break; > case POWERPC_EXCP_SMI: /* System management interrupt > */ > -/* XXX: TODO */ > -cpu_abort(cs, "SMI exception is not implemented yet !\n"); > -break; > case POWERPC_EXCP_THERM: /* Thermal interrupt > */ > -/* XXX: TODO */ > -cpu_abort(cs, "Thermal management exception " > - "is not implemented yet !\n"); > -break; > case POWERPC_EXCP_PERFM: /* Embedded performance monitor interrupt > */ > -/* XXX: TODO */ > -cpu_abort(cs, > - "Performance counter exception is not implemented yet > !\n"); > -break; > case POWERPC_EXCP_VPUA: /* Vector assist exception > */ > -/* XXX: TODO */ > -cpu_abort(cs, "VPU assist exception is not implemen
[PATCH v2 3/7] target/ppc: powerpc_excp: Group unimplemented exceptions
Signed-off-by: Fabiano Rosas Reviewed-by: Cédric Le Goater --- target/ppc/excp_helper.c | 77 +--- 1 file changed, 8 insertions(+), 69 deletions(-) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index ce86b2ae37..fa41f8048d 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -701,23 +701,6 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) case POWERPC_EXCP_SPEU: /* SPE/embedded floating-point unavailable/VPU */ env->spr[SPR_BOOKE_ESR] = ESR_SPV; break; -case POWERPC_EXCP_EFPDI: /* Embedded floating-point data interrupt */ -/* XXX: TODO */ -cpu_abort(cs, "Embedded floating point data exception " - "is not implemented yet !\n"); -env->spr[SPR_BOOKE_ESR] = ESR_SPV; -break; -case POWERPC_EXCP_EFPRI: /* Embedded floating-point round interrupt */ -/* XXX: TODO */ -cpu_abort(cs, "Embedded floating point round exception " - "is not implemented yet !\n"); -env->spr[SPR_BOOKE_ESR] = ESR_SPV; -break; -case POWERPC_EXCP_EPERFM:/* Embedded performance monitor interrupt */ -/* XXX: TODO */ -cpu_abort(cs, - "Performance counter exception is not implemented yet !\n"); -break; case POWERPC_EXCP_DOORI: /* Embedded doorbell interrupt */ break; case POWERPC_EXCP_DOORCI:/* Embedded doorbell critical interrupt */ @@ -782,19 +765,6 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) case POWERPC_EXCP_PIT: /* Programmable interval timer interrupt*/ trace_ppc_excp_print("PIT"); break; -case POWERPC_EXCP_IO:/* IO error exception */ -/* XXX: TODO */ -cpu_abort(cs, "601 IO error exception is not implemented yet !\n"); -break; -case POWERPC_EXCP_RUNM: /* Run mode exception */ -/* XXX: TODO */ -cpu_abort(cs, "601 run mode exception is not implemented yet !\n"); -break; -case POWERPC_EXCP_EMUL: /* Emulation trap exception */ -/* XXX: TODO */ -cpu_abort(cs, "602 emulation trap exception " - "is not implemented yet !\n"); -break; case POWERPC_EXCP_IFTLB: /* Instruction fetch TLB error */ case POWERPC_EXCP_DLTLB: /* Data load TLB miss */ case POWERPC_EXCP_DSTLB: /* Data store TLB miss */ @@ -821,56 +791,25 @@ static void powerpc_excp(PowerPCCPU *cpu, int excp) break; } break; +case POWERPC_EXCP_EFPDI: /* Embedded floating-point data interrupt */ +case POWERPC_EXCP_EFPRI: /* Embedded floating-point round interrupt */ +case POWERPC_EXCP_EPERFM:/* Embedded performance monitor interrupt */ +case POWERPC_EXCP_IO:/* IO error exception */ +case POWERPC_EXCP_RUNM: /* Run mode exception */ +case POWERPC_EXCP_EMUL: /* Emulation trap exception */ case POWERPC_EXCP_FPA: /* Floating-point assist exception */ -/* XXX: TODO */ -cpu_abort(cs, "Floating point assist exception " - "is not implemented yet !\n"); -break; case POWERPC_EXCP_DABR: /* Data address breakpoint */ -/* XXX: TODO */ -cpu_abort(cs, "DABR exception is not implemented yet !\n"); -break; case POWERPC_EXCP_IABR: /* Instruction address breakpoint */ -/* XXX: TODO */ -cpu_abort(cs, "IABR exception is not implemented yet !\n"); -break; case POWERPC_EXCP_SMI: /* System management interrupt */ -/* XXX: TODO */ -cpu_abort(cs, "SMI exception is not implemented yet !\n"); -break; case POWERPC_EXCP_THERM: /* Thermal interrupt*/ -/* XXX: TODO */ -cpu_abort(cs, "Thermal management exception " - "is not implemented yet !\n"); -break; case POWERPC_EXCP_PERFM: /* Embedded performance monitor interrupt */ -/* XXX: TODO */ -cpu_abort(cs, - "Performance counter exception is not implemented yet !\n"); -break; case POWERPC_EXCP_VPUA: /* Vector assist exception */ -/* XXX: TODO */ -cpu_abort(cs, "VPU assist exception is not implemented yet !\n"); -break; case POWERPC_EXCP_SOFTP: /* Soft patch exception */ -/* XXX: TODO */ -cpu_abort(cs, - "970 soft-patch exception is not implemented yet !\n"); -break; case POWERPC_EXCP_MAINT: /* Maintenance exception*/ -/* XXX: TODO */ -