[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 27/76] target/microblaze: Check singlestep_enabled in gen_
From: |
Edgar E. Iglesias |
Subject: |
Re: [PATCH v2 27/76] target/microblaze: Check singlestep_enabled in gen_goto_tb |
Date: |
Mon, 31 Aug 2020 15:54:16 +0200 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Fri, Aug 28, 2020 at 07:18:40AM -0700, Richard Henderson wrote:
> Do not use goto_tb if we're single-stepping.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> target/microblaze/translate.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/target/microblaze/translate.c b/target/microblaze/translate.c
> index 53ca0bfb38..7d5b96c38b 100644
> --- a/target/microblaze/translate.c
> +++ b/target/microblaze/translate.c
> @@ -140,7 +140,12 @@ static inline bool use_goto_tb(DisasContext *dc,
> target_ulong dest)
>
> static void gen_goto_tb(DisasContext *dc, int n, target_ulong dest)
> {
> - if (use_goto_tb(dc, dest)) {
> + if (dc->singlestep_enabled) {
> + TCGv_i32 tmp = tcg_const_i32(EXCP_DEBUG);
> + tcg_gen_movi_i64(cpu_SR[SR_PC], dest);
This needs to be i32 cpu_pc to avoid breaking bisection. Looks like this
part slipped over to the next patch.
With that fixed:
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
> + gen_helper_raise_exception(cpu_env, tmp);
> + tcg_temp_free_i32(tmp);
> + } else if (use_goto_tb(dc, dest)) {
> tcg_gen_goto_tb(n);
> tcg_gen_movi_i32(cpu_pc, dest);
> tcg_gen_exit_tb(dc->tb, n);
> --
> 2.25.1
>
- [PATCH v2 19/76] target/microblaze: Remove cpu_ear, (continued)
- [PATCH v2 19/76] target/microblaze: Remove cpu_ear, Richard Henderson, 2020/08/28
- [PATCH v2 20/76] target/microblaze: Tidy raising of exceptions, Richard Henderson, 2020/08/28
- [PATCH v2 21/76] target/microblaze: Mark raise_exception as noreturn, Richard Henderson, 2020/08/28
- [PATCH v2 22/76] target/microblaze: Remove helper_debug and env->debug, Richard Henderson, 2020/08/28
- [PATCH v2 24/76] target/microblaze: Tidy mb_tcg_init, Richard Henderson, 2020/08/28
- [PATCH v2 23/76] target/microblaze: Rename env_* tcg variables to cpu_*, Richard Henderson, 2020/08/28
- [PATCH v2 26/76] target/microblaze: Use DISAS_NORETURN, Richard Henderson, 2020/08/28
- [PATCH v2 25/76] target/microblaze: Split out MSR[C] to its own variable, Richard Henderson, 2020/08/28
- [PATCH v2 27/76] target/microblaze: Check singlestep_enabled in gen_goto_tb, Richard Henderson, 2020/08/28
- Re: [PATCH v2 27/76] target/microblaze: Check singlestep_enabled in gen_goto_tb,
Edgar E. Iglesias <=
- [PATCH v2 29/76] target/microblaze: Convert to translator_loop, Richard Henderson, 2020/08/28
- [PATCH v2 30/76] target/microblaze: Remove SIM_COMPAT, Richard Henderson, 2020/08/28
- [PATCH v2 28/76] target/microblaze: Convert to DisasContextBase, Richard Henderson, 2020/08/28
- [PATCH v2 31/76] target/microblaze: Remove DISAS_GNU, Richard Henderson, 2020/08/28
- [PATCH v2 33/76] target/microblaze: Remove LOG_DIS, Richard Henderson, 2020/08/28
- [PATCH v2 32/76] target/microblaze: Remove empty D macros, Richard Henderson, 2020/08/28
- [PATCH v2 35/76] target/microblaze: Add decodetree infrastructure, Richard Henderson, 2020/08/28
- [PATCH v2 37/76] target/microblaze: Convert dec_sub to decodetree, Richard Henderson, 2020/08/28