]> git.proxmox.com Git - qemu.git/commit - tcg/arm/tcg-target.c
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)
commitfe33867b0dcea3cdbe276402694e15b7166e9a54
tree13ffc26d404fd1ac0ad5a281dd4e52aee3335118
parent1cb0661e009267a5d060c4686f0857784a8da228
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