Hi Brian,
On 27/2/26 21:35, Brian Cain wrote:
> From: Brian Cain <bcain@quicinc.com>
>
> Reviewed-by: Taylor Simpson <ltaylorsimpson@gmail.com>
> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
> ---
> target/hexagon/translate.h | 2 ++
> target/hexagon/translate.c | 6 +++---
> 2 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/target/hexagon/translate.h b/target/hexagon/translate.h
> index b37cb492381..2804e08ce57 100644
> --- a/target/hexagon/translate.h
> +++ b/target/hexagon/translate.h
> @@ -282,6 +282,8 @@ extern TCGv hex_vstore_addr[VSTORES_MAX];
> extern TCGv hex_vstore_size[VSTORES_MAX];
> extern TCGv hex_vstore_pending[VSTORES_MAX];
>
> +void hex_gen_exception_end_tb(DisasContext *ctx, int excp);
> +
> void process_store(DisasContext *ctx, int slot_num);
>
> FIELD(PROBE_PKT_SCALAR_STORE_S0, MMU_IDX, 0, 2)
> diff --git a/target/hexagon/translate.c b/target/hexagon/translate.c
> index 8a223f6e13e..877cb38ae77 100644
> --- a/target/hexagon/translate.c
> +++ b/target/hexagon/translate.c
> @@ -189,7 +189,7 @@ static void gen_end_tb(DisasContext *ctx)
> ctx->base.is_jmp = DISAS_NORETURN;
> }
>
> -static void gen_exception_end_tb(DisasContext *ctx, int excp)
> +void hex_gen_exception_end_tb(DisasContext *ctx, int excp)
> {
> gen_exec_counters(ctx);
> tcg_gen_movi_tl(hex_gpr[HEX_REG_PC], ctx->next_PC);
> @@ -207,7 +207,7 @@ static void gen_exception_decode_fail(DisasContext *ctx, int nwords, int excp)
>
> gen_exec_counters(ctx);
> tcg_gen_movi_tl(hex_gpr[HEX_REG_PC], fail_pc);
> - gen_exception_raw(excp);
> + gen_exception(excp, fail_pc);
gen_exception() is not introduced in this series, future
commit https://github.com/quic/qemu/commit/ff8ac066dd8d
rename gen_exception_raw() to it. I don't expect this
commit to build.
Maybe keep the gen_exception_raw(excp) call in this
commit and convert to gen_exception(excp, fail_pc)
in ff8ac066dd8d?
> ctx->base.is_jmp = DISAS_NORETURN;
> ctx->base.pc_next = fail_pc;
> }
> @@ -590,7 +590,7 @@ static void gen_insn(DisasContext *ctx)
> ctx->insn->generate(ctx);
> mark_store_width(ctx);
> } else {
> - gen_exception_end_tb(ctx, HEX_CAUSE_INVALID_OPCODE);
> + hex_gen_exception_end_tb(ctx, HEX_CAUSE_INVALID_OPCODE);
> }
> }
>