mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
target/hppa: exit tb on flush cache instructions
When the guest modifies the tb it is currently executing from, it executes a fic instruction. Exit the tb on such instruction, otherwise we might execute stale code. Signed-off-by: Sven Schnelle <svens@stackframe.org> Message-Id: <20240319161921.487080-5-svens@stackframe.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
ae157fc250
commit
ad1fdacd1b
2 changed files with 10 additions and 3 deletions
|
@ -2343,6 +2343,13 @@ static bool trans_nop_addrx(DisasContext *ctx, arg_ldst *a)
|
|||
return true;
|
||||
}
|
||||
|
||||
static bool trans_fic(DisasContext *ctx, arg_ldst *a)
|
||||
{
|
||||
/* End TB for flush instruction cache, so we pick up new insns. */
|
||||
ctx->base.is_jmp = DISAS_IAQ_N_STALE;
|
||||
return trans_nop_addrx(ctx, a);
|
||||
}
|
||||
|
||||
static bool trans_probe(DisasContext *ctx, arg_probe *a)
|
||||
{
|
||||
TCGv_i64 dest, ofs;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue