target/sparc: Use DYNAMIC_PC_LOOKUP for conditional branches

When resolving JUMP_PC, we know this is for a plain branch
with no other side effects.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230628071202.230991-6-richard.henderson@linaro.org>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
This commit is contained in:
Richard Henderson 2023-06-28 09:11:59 +02:00 committed by Mark Cave-Ayland
parent 633c42834c
commit 99c82c479b
1 changed files with 3 additions and 3 deletions

View File

@ -941,7 +941,7 @@ static void flush_cond(DisasContext *dc)
{
if (dc->npc == JUMP_PC) {
gen_generic_branch(dc);
dc->npc = DYNAMIC_PC;
dc->npc = DYNAMIC_PC_LOOKUP;
}
}
@ -951,7 +951,7 @@ static void save_npc(DisasContext *dc)
switch (dc->npc) {
case JUMP_PC:
gen_generic_branch(dc);
dc->npc = DYNAMIC_PC;
dc->npc = DYNAMIC_PC_LOOKUP;
break;
case DYNAMIC_PC:
case DYNAMIC_PC_LOOKUP:
@ -997,7 +997,7 @@ static void gen_mov_pc_npc(DisasContext *dc)
case JUMP_PC:
gen_generic_branch(dc);
tcg_gen_mov_tl(cpu_pc, cpu_npc);
dc->pc = DYNAMIC_PC;
dc->pc = DYNAMIC_PC_LOOKUP;
break;
case DYNAMIC_PC:
case DYNAMIC_PC_LOOKUP: