diff options
author | Julia Suvorova | 2019-02-01 15:55:46 +0100 |
---|---|---|
committer | Peter Maydell | 2019-02-01 15:55:46 +0100 |
commit | 42f6ed919325413392bea247a1e6f135deb469cd (patch) | |
tree | e0c08124c77ac0a831e03234dfde0bac665fe679 /hw/arm | |
parent | target/arm: Enable API, APK bits in SCR, HCR (diff) | |
download | qemu-42f6ed919325413392bea247a1e6f135deb469cd.tar.gz qemu-42f6ed919325413392bea247a1e6f135deb469cd.tar.xz qemu-42f6ed919325413392bea247a1e6f135deb469cd.zip |
arm: Clarify the logic of set_pc()
Until now, the set_pc logic was unclear, which raised questions about
whether it should be used directly, applying a value to PC or adding
additional checks, for example, set the Thumb bit in Arm cpu. Let's set
the set_pc logic for “Configure the PC, as was done in the ELF file”
and implement synchronize_with_tb hook for preserving PC to cpu_tb_exec.
Signed-off-by: Julia Suvorova <jusual@mail.ru>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20190129121817.7109-1-jusual@mail.ru
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/arm')
-rw-r--r-- | hw/arm/boot.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/hw/arm/boot.c b/hw/arm/boot.c index c7a67af7a9..05762d0fc1 100644 --- a/hw/arm/boot.c +++ b/hw/arm/boot.c @@ -697,10 +697,6 @@ static void do_cpu_reset(void *opaque) g_assert_not_reached(); } - if (!env->aarch64) { - env->thumb = info->entry & 1; - entry &= 0xfffffffe; - } cpu_set_pc(cs, entry); } else { /* If we are booting Linux then we need to check whether we are |