diff options
author | Emilio Cota <cota@braap.org> | 2023-01-24 18:01:23 +0000 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2023-02-02 11:48:20 +0000 |
commit | 3fd62e73ad8193b58a1bc15ad6f6d8b4f284f6a7 (patch) | |
tree | ef5fa3fc37fea7c0d0279d385cdc521cfe347667 /ui/icons/qemu_32x32.png | |
parent | 2bbbc1be8d9a21b25d0c80b9a7345074d54abd51 (diff) | |
download | qemu-3fd62e73ad8193b58a1bc15ad6f6d8b4f284f6a7.zip qemu-3fd62e73ad8193b58a1bc15ad6f6d8b4f284f6a7.tar.gz qemu-3fd62e73ad8193b58a1bc15ad6f6d8b4f284f6a7.tar.bz2 |
plugins: fix optimization in plugin_gen_disable_mem_helpers
We were mistakenly checking tcg_ctx->plugin_insn as a canary to know
whether the TB had emitted helpers that might have accessed memory.
The problem is that tcg_ctx->plugin_insn gets updated on every
instruction in the TB, which results in us wrongly performing the
optimization (i.e. not clearing cpu->plugin_mem_cbs) way too often,
since it's not rare that the last instruction in the TB doesn't
use helpers.
Fix it by tracking a per-TB canary.
While at it, expand documentation.
Related: #1381
Signed-off-by: Emilio Cota <cota@braap.org>
Message-Id: <20230108164731.61469-2-cota@braap.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230124180127.1881110-32-alex.bennee@linaro.org>
Diffstat (limited to 'ui/icons/qemu_32x32.png')
0 files changed, 0 insertions, 0 deletions