Don't rely on ARM tcg_out_goto() generating just a single insn.
authorbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 1 Dec 2008 02:17:12 +0000 (02:17 +0000)
committerbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 1 Dec 2008 02:17:12 +0000 (02:17 +0000)
commit79c7b08f1b6c4e0e6d11e28d4e1847af2cd14843
tree13ffc26d404fd1ac0ad5a281dd4e52aee3335118
parentd6d4e8ed8e7ea0a64f08af4dfb0a063265c7213b
Don't rely on ARM tcg_out_goto() generating just a single insn.

Otherwise when tb_exit generates a jump beyond the pc-relative range,
tcg_out_goto() spans two/three instructions and we load the tb return
value from a wrong address.  This is #ifdefed out currently because
we take care for the jumps to be local.
Problem spotted by Steffen Liebergeld.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5845 c046a42c-6fe2-441c-8c8c-71466251a162
tcg/arm/tcg-target.c