On 6/16/22 05:16, Song Gao wrote:
> Raising EXCCODE_BCE instead of EXCCODE_ADEM for helper_asrtle_d/asrtgt_d.
>
> Signed-off-by: Song Gao <gaosong@loongson.cn>
> Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn>
> ---
> target/loongarch/cpu.c | 2 ++
> target/loongarch/op_helper.c | 4 ++--
> 2 files changed, 4 insertions(+), 2 deletions(-)
"Raise" not "Raising".
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
>
> diff --git a/target/loongarch/cpu.c b/target/loongarch/cpu.c
> index e32d4cc269..0013582a3a 100644
> --- a/target/loongarch/cpu.c
> +++ b/target/loongarch/cpu.c
> @@ -51,6 +51,7 @@ static const char * const excp_names[] = {
> [EXCCODE_IPE] = "Instruction privilege error",
> [EXCCODE_FPE] = "Floating Point Exception",
> [EXCCODE_DBP] = "Debug breakpoint",
> + [EXCCODE_BCE] = "Bound Check Exception",
> };
>
> const char *loongarch_exception_name(int32_t exception)
> @@ -176,6 +177,7 @@ static void loongarch_cpu_do_interrupt(CPUState *cs)
> case EXCCODE_INE:
> case EXCCODE_IPE:
> case EXCCODE_FPE:
> + case EXCCODE_BCE:
> env->CSR_BADV = env->pc;
> QEMU_FALLTHROUGH;
> case EXCCODE_ADEM:
> diff --git a/target/loongarch/op_helper.c b/target/loongarch/op_helper.c
> index d87049851f..df049cec59 100644
> --- a/target/loongarch/op_helper.c
> +++ b/target/loongarch/op_helper.c
> @@ -49,14 +49,14 @@ target_ulong helper_bitswap(target_ulong v)
> void helper_asrtle_d(CPULoongArchState *env, target_ulong rj, target_ulong rk)
> {
> if (rj > rk) {
> - do_raise_exception(env, EXCCODE_ADEM, GETPC());
> + do_raise_exception(env, EXCCODE_BCE, 0);
> }
> }
>
> void helper_asrtgt_d(CPULoongArchState *env, target_ulong rj, target_ulong rk)
> {
> if (rj <= rk) {
> - do_raise_exception(env, EXCCODE_ADEM, GETPC());
> + do_raise_exception(env, EXCCODE_BCE, 0);
> }
> }
>