diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2023-01-30 18:24:40 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2023-02-03 12:59:22 +0000 |
commit | 9ada333982c3d5ae4c15b8ba8dcfd7cb6cd6cb44 (patch) | |
tree | f9b0eb8281a8a9bc0dc955a5b3b6f75e00b5e158 /qapi/qobject-output-visitor.c | |
parent | 80ea70f2e53469b468598508513d50c5f80d6bb9 (diff) | |
download | qemu-9ada333982c3d5ae4c15b8ba8dcfd7cb6cd6cb44.zip qemu-9ada333982c3d5ae4c15b8ba8dcfd7cb6cd6cb44.tar.gz qemu-9ada333982c3d5ae4c15b8ba8dcfd7cb6cd6cb44.tar.bz2 |
target/arm: Move do_coproc_insn() syndrome calculation earlier
Rearrange the code in do_coproc_insn() so that we calculate the
syndrome value for a potential trap early; we're about to add a
second check that wants this value earlier than where it is currently
determined.
(Specifically, a trap to EL2 because of HSTR_EL2 should take
priority over an UNDEF to EL1, even when the UNDEF is because
the register does not exist at all or because its ri->access
bits non-configurably fail the access. So the check we put in
for HSTR_EL2 trapping at EL1 (which needs the syndrome) is
going to have to be done before the check "is the ARMCPRegInfo
pointer NULL".)
This commit is just code motion; the change to HSTR_EL2
handling that will use the 'syndrome' variable is in a
subsequent commit.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Tested-by: Fuad Tabba <tabba@google.com>
Message-id: 20230130182459.3309057-5-peter.maydell@linaro.org
Message-id: 20230127175507.2895013-5-peter.maydell@linaro.org
Diffstat (limited to 'qapi/qobject-output-visitor.c')
0 files changed, 0 insertions, 0 deletions