ARM: standard disassembler uses Thumb2 entry
commit91ac164d95e1101120b938c684b78934d23dd51c
authorDavid Brownell <dbrownell@users.sourceforge.net>
Mon, 16 Nov 2009 23:29:14 +0000 (16 15:29 -0800)
committerDavid Brownell <dbrownell@users.sourceforge.net>
Mon, 16 Nov 2009 23:29:14 +0000 (16 15:29 -0800)
tree168693f52c4e17a9173b4eddf20670c7512684ec
parentbf972374011359a1d160b0359e59c4350e78aefe
ARM: standard disassembler uses Thumb2 entry

Tweak "standard" ARM disassembler diagnostics to fail if the target
is not "an ARM" (vs. not "an ARMV4/5"), so it makes more sense for
cores inheriting this as the "generic" disassembler.

Also, to use the Thumb2 entry instead of the original Thumb entry.
This makes it work better for both newer cores (which support those
added instructions) and for BL and BLX instructions on older cores.
(Those instructions are 32-bits, which requires curious state-aware
code to go through a 16-bit decode interface...)

Plus minor cleanups, notably to have fewer exit paths and to make
sure they all return failure codes.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
src/target/arm_disassembler.c
src/target/armv4_5.c