From a8a024202d1ba80142eacc09dab10c7780874582 Mon Sep 17 00:00:00 2001 From: Evgenii Stepanov Date: Thu, 22 Aug 2019 18:05:34 -0700 Subject: [PATCH 1/4] Fix STGP offset scale. --- target/arm/translate-a64.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c index 9a554856e9..0a168506d2 100644 --- a/target/arm/translate-a64.c +++ b/target/arm/translate-a64.c @@ -2763,7 +2763,8 @@ static void disas_ldst_pair(DisasContext *s, uint32_t insn) return; } - offset <<= size; + // STGP offset is 16-scaled. + offset <<= (size + set_tag); if (rn == 31) { gen_check_sp_alignment(s); -- 2.23.0.700.g56cf767bdb-goog