aboutsummaryrefslogtreecommitdiff
path: root/target-arm/cpu64.c
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2013-12-03 15:26:18 +0000
committerPeter Maydell <peter.maydell@linaro.org>2013-12-03 15:36:45 +0000
commitdec82c63b284491eaacd08b5f1532cc494f22c2f (patch)
treecdc145062f319b5f2d9a2d2cc0a4a1410bce4444 /target-arm/cpu64.c
parentd69a94788bec85b597a9d0a656c7dcfa29a8ef00 (diff)
target-arm: Split A64 from A32/T32 gen_intermediate_code_internal()
The A32/T32 gen_intermediate_code_internal() is complicated because it has to deal with: * conditionally executed instructions * Thumb IT blocks * kernel helper page * M profile exception-exit special casing None of these apply to A64, so putting the "this is A64 so call the A64 decoder" check in the middle of the A32/T32 loop is confusing and means the A64 decoder's handling of things like conditional jump and singlestepping has to take account of the conditional-execution jumps the main loop might emit. Refactor the code to give A64 its own gen_intermediate_code_internal function instead. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target-arm/cpu64.c')
0 files changed, 0 insertions, 0 deletions