]> git.proxmox.com Git - mirror_qemu.git/commit
tcg: Restart TB generation after relocation overflow
authorRichard Henderson <richard.henderson@linaro.org>
Sun, 21 Apr 2019 20:34:35 +0000 (13:34 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Wed, 24 Apr 2019 20:05:21 +0000 (13:05 -0700)
commit7ecd02a06f8f4c0bbf872ecc15e37035b7e1df5f
tree256d78a31338de5ca775b6529409d3d6d7ae6bb2
parent6e6c4efed995d9eca6ae0cfdb2252df830262f50
tcg: Restart TB generation after relocation overflow

If the TB generates too much code, such that backend relocations
overflow, try again with a smaller TB.  In support of this, move
relocation processing from a random place within tcg_out_op, in
the handling of branch opcodes, to a new function at the end of
tcg_gen_code.

This is not a complete solution, as there are additional relocs
generated for out-of-line ldst handling and constant pools.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
tcg/tcg.c
tcg/tcg.h