target/ppc: Replace POWERPC_EXCP_SYNC with DISAS_EXIT
Remove the synthetic "exception" after no more uses. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br> Message-Id: <20210512185441.3619828-9-matheus.ferst@eldorado.org.br> Reviewed-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
a9b5b3d06c
commit
59bf23faf5
@ -135,7 +135,6 @@ enum {
|
||||
POWERPC_EXCP_STOP = 0x200, /* stop translation */
|
||||
POWERPC_EXCP_BRANCH = 0x201, /* branch instruction */
|
||||
/* QEMU exceptions: special cases we want to stop translation */
|
||||
POWERPC_EXCP_SYNC = 0x202, /* context synchronizing instruction */
|
||||
POWERPC_EXCP_SYSCALL_USER = 0x203, /* System call in user mode only */
|
||||
};
|
||||
|
||||
|
@ -362,14 +362,6 @@ static inline void gen_stop_exception(DisasContext *ctx)
|
||||
ctx->exception = POWERPC_EXCP_STOP;
|
||||
}
|
||||
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
/* No need to update nip here, as execution flow will change */
|
||||
static inline void gen_sync_exception(DisasContext *ctx)
|
||||
{
|
||||
ctx->exception = POWERPC_EXCP_SYNC;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*****************************************************************************/
|
||||
/* SPR READ/WRITE CALLBACKS */
|
||||
|
||||
@ -5032,7 +5024,7 @@ static void gen_rfi(DisasContext *ctx)
|
||||
}
|
||||
gen_update_cfar(ctx, ctx->cia);
|
||||
gen_helper_rfi(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -5049,7 +5041,7 @@ static void gen_rfid(DisasContext *ctx)
|
||||
}
|
||||
gen_update_cfar(ctx, ctx->cia);
|
||||
gen_helper_rfid(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -5066,7 +5058,7 @@ static void gen_rfscv(DisasContext *ctx)
|
||||
}
|
||||
gen_update_cfar(ctx, ctx->cia);
|
||||
gen_helper_rfscv(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
@ -5079,7 +5071,7 @@ static void gen_hrfid(DisasContext *ctx)
|
||||
/* Restore CPU state */
|
||||
CHK_HV;
|
||||
gen_helper_hrfid(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
@ -6920,7 +6912,7 @@ static void gen_rfsvc(DisasContext *ctx)
|
||||
CHK_SV;
|
||||
|
||||
gen_helper_rfsvc(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif /* defined(CONFIG_USER_ONLY) */
|
||||
}
|
||||
|
||||
@ -7300,7 +7292,7 @@ static void gen_rfci_40x(DisasContext *ctx)
|
||||
CHK_SV;
|
||||
/* Restore CPU state */
|
||||
gen_helper_40x_rfci(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif /* defined(CONFIG_USER_ONLY) */
|
||||
}
|
||||
|
||||
@ -7312,7 +7304,7 @@ static void gen_rfci(DisasContext *ctx)
|
||||
CHK_SV;
|
||||
/* Restore CPU state */
|
||||
gen_helper_rfci(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif /* defined(CONFIG_USER_ONLY) */
|
||||
}
|
||||
|
||||
@ -7327,7 +7319,7 @@ static void gen_rfdi(DisasContext *ctx)
|
||||
CHK_SV;
|
||||
/* Restore CPU state */
|
||||
gen_helper_rfdi(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif /* defined(CONFIG_USER_ONLY) */
|
||||
}
|
||||
|
||||
@ -7340,7 +7332,7 @@ static void gen_rfmci(DisasContext *ctx)
|
||||
CHK_SV;
|
||||
/* Restore CPU state */
|
||||
gen_helper_rfmci(cpu_env);
|
||||
gen_sync_exception(ctx);
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
#endif /* defined(CONFIG_USER_ONLY) */
|
||||
}
|
||||
|
||||
@ -9238,7 +9230,6 @@ static void ppc_tr_translate_insn(DisasContextBase *dcbase, CPUState *cs)
|
||||
case POWERPC_EXCP_BRANCH:
|
||||
ctx->base.is_jmp = DISAS_NORETURN;
|
||||
break;
|
||||
case POWERPC_EXCP_SYNC:
|
||||
case POWERPC_EXCP_STOP:
|
||||
ctx->base.is_jmp = DISAS_EXIT;
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user