aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2015-12-02 10:16:53 +0000
committerPeter Maydell <peter.maydell@linaro.org>2015-12-02 10:16:53 +0000
commit9d7b969ea6d9663a94760c6c131481b366f4d38a (patch)
tree16eb1242b7732dd55d7eaccb35fd153ffabc99dc
parent8d3a5d9b0f76e3f965ce2b845f6e9027fd98fd30 (diff)
parentb17a6d3390f87620735f7efb03bb1c96682ff449 (diff)
Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20151201' into staging
Last minute fix # gpg: Signature made Tue 01 Dec 2015 22:37:25 GMT using RSA key ID 4DD0279B # gpg: Good signature from "Richard Henderson <rth7680@gmail.com>" # gpg: aka "Richard Henderson <rth@redhat.com>" # gpg: aka "Richard Henderson <rth@twiddle.net>" * remotes/rth/tags/pull-tcg-20151201: tcg: Increase the highwater reservation Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--tcg/tcg.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/tcg/tcg.c b/tcg/tcg.c
index b20ed19879..a163541d3c 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -388,7 +388,11 @@ void tcg_prologue_init(TCGContext *s)
/* Compute a high-water mark, at which we voluntarily flush the buffer
and start over. The size here is arbitrary, significantly larger
than we expect the code generation for any one opcode to require. */
- s->code_gen_highwater = s->code_gen_buffer + (total_size - 1024);
+ /* ??? We currently have no good estimate for, or checks in,
+ tcg_out_tb_finalize. If there are quite a lot of guest memory ops,
+ the number of out-of-line fragments could be quite high. In the
+ short-term, increase the highwater buffer. */
+ s->code_gen_highwater = s->code_gen_buffer + (total_size - 64*1024);
tcg_register_jit(s->code_gen_buffer, total_size);