[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 36/48] target/nios2: Hoist set of is_jmp into gen_goto_tb
From: |
Richard Henderson |
Subject: |
[PATCH v5 36/48] target/nios2: Hoist set of is_jmp into gen_goto_tb |
Date: |
Thu, 10 Mar 2022 03:27:13 -0800 |
Rather than force all callers to set this, do it
within the subroutine.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
target/nios2/translate.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/target/nios2/translate.c b/target/nios2/translate.c
index f61ba92052..51907586ab 100644
--- a/target/nios2/translate.c
+++ b/target/nios2/translate.c
@@ -165,6 +165,7 @@ static void gen_goto_tb(DisasContext *dc, int n, uint32_t
dest)
tcg_gen_movi_tl(cpu_pc, dest);
tcg_gen_exit_tb(NULL, 0);
}
+ dc->base.is_jmp = DISAS_NORETURN;
}
static void gen_jumpr(DisasContext *dc, int regno, bool is_call)
@@ -208,7 +209,6 @@ static void jmpi(DisasContext *dc, uint32_t code, uint32_t
flags)
{
J_TYPE(instr, code);
gen_goto_tb(dc, 0, (dc->pc & 0xF0000000) | (instr.imm26 << 2));
- dc->base.is_jmp = DISAS_NORETURN;
}
static void call(DisasContext *dc, uint32_t code, uint32_t flags)
@@ -251,7 +251,6 @@ static void br(DisasContext *dc, uint32_t code, uint32_t
flags)
I_TYPE(instr, code);
gen_goto_tb(dc, 0, dc->base.pc_next + (instr.imm16.s & -4));
- dc->base.is_jmp = DISAS_NORETURN;
}
static void gen_bxx(DisasContext *dc, uint32_t code, uint32_t flags)
@@ -263,7 +262,6 @@ static void gen_bxx(DisasContext *dc, uint32_t code,
uint32_t flags)
gen_goto_tb(dc, 0, dc->base.pc_next);
gen_set_label(l1);
gen_goto_tb(dc, 1, dc->base.pc_next + (instr.imm16.s & -4));
- dc->base.is_jmp = DISAS_NORETURN;
}
/* Comparison instructions */
--
2.25.1
- [PATCH v5 29/48] target/nios2: Remove CPU_INTERRUPT_NMI, (continued)
- [PATCH v5 29/48] target/nios2: Remove CPU_INTERRUPT_NMI, Richard Henderson, 2022/03/10
- [PATCH v5 30/48] target/nios2: Support division error exception, Richard Henderson, 2022/03/10
- [PATCH v5 28/48] target/nios2: Implement CR_STATUS.RSIE, Richard Henderson, 2022/03/10
- [PATCH v5 33/48] target/nios2: Drop CR_STATUS_EH from tb->flags, Richard Henderson, 2022/03/10
- [PATCH v5 32/48] target/nios2: Introduce dest_gpr, Richard Henderson, 2022/03/10
- [PATCH v5 34/48] target/nios2: Enable unaligned traps for system mode, Richard Henderson, 2022/03/10
- [PATCH v5 38/48] target/nios2: Use tcg_gen_lookup_and_goto_ptr, Richard Henderson, 2022/03/10
- [PATCH v5 31/48] target/nios2: Use tcg_constant_tl, Richard Henderson, 2022/03/10
- [PATCH v5 35/48] target/nios2: Create gen_jumpr, Richard Henderson, 2022/03/10
- [PATCH v5 37/48] target/nios2: Use gen_goto_tb for DISAS_TOO_MANY, Richard Henderson, 2022/03/10
- [PATCH v5 36/48] target/nios2: Hoist set of is_jmp into gen_goto_tb,
Richard Henderson <=
- [PATCH v5 39/48] target/nios2: Implement Misaligned destination exception, Richard Henderson, 2022/03/10
- [PATCH v5 41/48] target/nios2: Introduce shadow register sets, Richard Henderson, 2022/03/10
- [PATCH v5 46/48] hw/nios2: Introduce Nios2MachineState, Richard Henderson, 2022/03/10
- [PATCH v5 40/48] linux-user/nios2: Handle various SIGILL exceptions, Richard Henderson, 2022/03/10
- [PATCH v5 42/48] target/nios2: Implement rdprs, wrprs, Richard Henderson, 2022/03/10