summaryrefslogtreecommitdiff
path: root/target/sh4
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2021-06-20 16:51:23 -0700
committerRichard Henderson <richard.henderson@linaro.org>2021-07-09 09:42:28 -0700
commit3f1e20984519ad3823438b73ea10035c0b2a9ffd (patch)
treed0ec39e3e08d90fa0cf86deef865b8a7d5e5f21f /target/sh4
parent95cc1cb39e12fbb5cca3688f8a7ce22116846520 (diff)
target/sh4: Use translator_use_goto_tb
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target/sh4')
-rw-r--r--target/sh4/translate.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/target/sh4/translate.c b/target/sh4/translate.c
index 8a25a4362e..40898e2393 100644
--- a/target/sh4/translate.c
+++ b/target/sh4/translate.c
@@ -224,17 +224,12 @@ static inline bool use_exit_tb(DisasContext *ctx)
return (ctx->tbflags & GUSA_EXCLUSIVE) != 0;
}
-static inline bool use_goto_tb(DisasContext *ctx, target_ulong dest)
+static bool use_goto_tb(DisasContext *ctx, target_ulong dest)
{
- /* Use a direct jump if in same page and singlestep not enabled */
- if (unlikely(ctx->base.singlestep_enabled || use_exit_tb(ctx))) {
+ if (use_exit_tb(ctx)) {
return false;
}
-#ifndef CONFIG_USER_ONLY
- return (ctx->base.tb->pc & TARGET_PAGE_MASK) == (dest & TARGET_PAGE_MASK);
-#else
- return true;
-#endif
+ return translator_use_goto_tb(&ctx->base, dest);
}
static void gen_goto_tb(DisasContext *ctx, int n, target_ulong dest)