summaryrefslogtreecommitdiffstats
path: root/hw/intc/armv7m_nvic.c
diff options
context:
space:
mode:
authorPeter Maydell2017-09-12 20:13:50 +0200
committerPeter Maydell2017-09-21 17:29:23 +0200
commite93bc2ac11cd37796fd48e11eaeacec3aff20f9c (patch)
treecab4b58e036475b4181edf17adb14686397d634c /hw/intc/armv7m_nvic.c
parentnvic: Add banked exception states (diff)
downloadqemu-e93bc2ac11cd37796fd48e11eaeacec3aff20f9c.tar.gz
qemu-e93bc2ac11cd37796fd48e11eaeacec3aff20f9c.tar.xz
qemu-e93bc2ac11cd37796fd48e11eaeacec3aff20f9c.zip
nvic: Add cached vectpending_is_s_banked state
With banked exceptions, just the exception number in s->vectpending is no longer sufficient to uniquely identify the pending exception. Add a vectpending_is_s_banked bool which is true if the exception is using the sec_vectors[] array. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1505240046-11454-4-git-send-email-peter.maydell@linaro.org
Diffstat (limited to 'hw/intc/armv7m_nvic.c')
-rw-r--r--hw/intc/armv7m_nvic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/intc/armv7m_nvic.c b/hw/intc/armv7m_nvic.c
index 8793f75af1..a11df3d155 100644
--- a/hw/intc/armv7m_nvic.c
+++ b/hw/intc/armv7m_nvic.c
@@ -1254,6 +1254,7 @@ static void armv7m_nvic_reset(DeviceState *dev)
s->exception_prio = NVIC_NOEXC_PRIO;
s->vectpending = 0;
+ s->vectpending_is_s_banked = false;
}
static void nvic_systick_trigger(void *opaque, int n, int level)