[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 4/7] target/hppa: exit tb on flush cache instructions
From: |
Sven Schnelle |
Subject: |
[PATCH 4/7] target/hppa: exit tb on flush cache instructions |
Date: |
Sun, 17 Mar 2024 23:14:28 +0100 |
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>
---
target/hppa/translate.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/target/hppa/translate.c b/target/hppa/translate.c
index 8ba31567e8..58d7ec1ade 100644
--- a/target/hppa/translate.c
+++ b/target/hppa/translate.c
@@ -1940,6 +1940,7 @@ static void do_page_zero(DisasContext *ctx)
static bool trans_nop(DisasContext *ctx, arg_nop *a)
{
cond_free(&ctx->null_cond);
+ ctx->base.is_jmp = DISAS_IAQ_N_STALE;
return true;
}
@@ -2290,6 +2291,7 @@ static bool trans_nop_addrx(DisasContext *ctx, arg_ldst
*a)
save_gpr(ctx, a->b, dest);
}
cond_free(&ctx->null_cond);
+ ctx->base.is_jmp = DISAS_IAQ_N_STALE;
return true;
}
--
2.43.2
- [PATCH 0/7] few fixes for hppa target, Sven Schnelle, 2024/03/17
- [PATCH 1/7] target/hppa: ldcw,s uses static shift of 3, Sven Schnelle, 2024/03/17
- [PATCH 5/7] target/hppa: copy new_spc to iasq_f on be,n instruction, Sven Schnelle, 2024/03/17
- [PATCH 2/7] target/hppa: fix shrp for wide mode, Sven Schnelle, 2024/03/17
- [PATCH 4/7] target/hppa: exit tb on flush cache instructions,
Sven Schnelle <=
- [PATCH 3/7] target/hppa: fix access_id check, Sven Schnelle, 2024/03/17
- [PATCH 7/7] target/hppa: fix do_stdby_e(), Sven Schnelle, 2024/03/17
- [PATCH 6/7] target/hppa: mask privilege bits in mfia, Sven Schnelle, 2024/03/17