[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 4/9] target/alpha: Inline DISAS_PC_UPDATED and return DISAS_NORETU
From: |
Richard Henderson |
Subject: |
[PULL 4/9] target/alpha: Inline DISAS_PC_UPDATED and return DISAS_NORETURN |
Date: |
Sat, 4 May 2024 08:39:21 -0700 |
Inline DISAS_PC_UPDATED switch case from alpha_tr_tb_stop():
switch (ctx->base.is_jmp) {
...
case DISAS_PC_UPDATED:
tcg_gen_lookup_and_goto_ptr();
break;
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20240424234436.995410-4-richard.henderson@linaro.org>
[PMD: Split bigger patch, part 2/5]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20240503072014.24751-5-philmd@linaro.org>
---
target/alpha/translate.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/target/alpha/translate.c b/target/alpha/translate.c
index 9ad7bf6e5f..01914e7b56 100644
--- a/target/alpha/translate.c
+++ b/target/alpha/translate.c
@@ -450,7 +450,8 @@ static DisasJumpType gen_bdirect(DisasContext *ctx, int ra,
int32_t disp)
return DISAS_NORETURN;
} else {
tcg_gen_movi_i64(cpu_pc, dest);
- return DISAS_PC_UPDATED;
+ tcg_gen_lookup_and_goto_ptr();
+ return DISAS_NORETURN;
}
}
@@ -479,7 +480,8 @@ static DisasJumpType gen_bcond_internal(DisasContext *ctx,
TCGCond cond,
TCGv_i64 p = tcg_constant_i64(ctx->base.pc_next);
tcg_gen_movcond_i64(cond, cpu_pc, cmp, i, d, p);
- return DISAS_PC_UPDATED;
+ tcg_gen_lookup_and_goto_ptr();
+ return DISAS_NORETURN;
}
}
--
2.34.1
- [PULL 0/9] target/alpha: Implement CF_PCREL, Richard Henderson, 2024/05/04
- [PULL 1/9] target/alpha: Use cpu_env in preference to ALPHA_CPU, Richard Henderson, 2024/05/04
- [PULL 3/9] target/alpha: Use DISAS_NEXT definition instead of magic '0' value, Richard Henderson, 2024/05/04
- [PULL 2/9] target/alpha: Hoist branch shift to initial decode, Richard Henderson, 2024/05/04
- [PULL 4/9] target/alpha: Inline DISAS_PC_UPDATED and return DISAS_NORETURN,
Richard Henderson <=
- [PULL 5/9] target/alpha: Return DISAS_NORETURN once, Richard Henderson, 2024/05/04
- [PULL 6/9] target/alpha: Simplify gen_bcond_internal(), Richard Henderson, 2024/05/04
- [PULL 7/9] target/alpha: Split out gen_goto_tb, Richard Henderson, 2024/05/04
- [PULL 8/9] target/alpha: Split out gen_pc_disp, Richard Henderson, 2024/05/04
- [PULL 9/9] target/alpha: Implement CF_PCREL, Richard Henderson, 2024/05/04
- Re: [PULL 0/9] target/alpha: Implement CF_PCREL, Richard Henderson, 2024/05/04