Displaced stepping doesn't work for Thumb instructions so far. This set
of patches are about support displaced stepping of 16-bit Thumb
instructions. There are much more 32-bit Thumb instructions than 16-bit
Thumb instructions, so it takes more time to support 32-bit Thumb
instructions. I'd like to send these three patches first to review.
Once these three are done, it is straight forward to support 32-bit
Thumb instructions.
Regression tested these three patches along with another pending patch
on armv7l-unknown-linux-gnueabi.
http://sourceware.org/ml/gdb-patches/2010-12/msg00427.html
No regressions and some test failures are fixed.
-FAIL: gdb.base/moribund-step.exp: running to main in runto
-FAIL: gdb.mi/mi-nonstop-exit.exp: mi runto main (timeout)
-FAIL: gdb.mi/mi-nonstop.exp: mi runto main (timeout)
-FAIL: gdb.mi/mi-ns-stale-regcache.exp: mi runto main (timeout)
-FAIL: gdb.mi/mi-nsintrall.exp: mi runto main (timeout)
-FAIL: gdb.mi/mi-nsmoribund.exp: mi runto main (timeout)
-FAIL: gdb.mi/mi-nsthrexec.exp: mi runto main (timeout)