-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote-tracking branch 'remotes/stsquad/tags/pull-tcg-plugins-2…
…81019-4' into staging TCG Plugins initial implementation - use --enable-plugins @ configure - low impact introspection (-plugin empty.so to measure overhead) - plugins cannot alter guest state - example plugins included in source tree (tests/plugins) - -d plugin to enable plugin output in logs - check-tcg runs extra tests when plugins enabled - documentation in docs/devel/plugins.rst # gpg: Signature made Mon 28 Oct 2019 15:13:23 GMT # gpg: using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44 # gpg: Good signature from "Alex Bennée (Master Work Key) <[email protected]>" [full] # Primary key fingerprint: 6685 AE99 E751 67BC AFC8 DF35 FBD0 DB09 5A9E 2A44 * remotes/stsquad/tags/pull-tcg-plugins-281019-4: (57 commits) travis.yml: enable linux-gcc-debug-tcg cache MAINTAINERS: add me for the TCG plugins code scripts/checkpatch.pl: don't complain about (foo, /* empty */) .travis.yml: add --enable-plugins tests include/exec: wrap cpu_ldst.h in CONFIG_TCG accel/stubs: reduce headers from tcg-stub tests/plugin: add hotpages to analyse memory access patterns tests/plugin: add instruction execution breakdown tests/plugin: add a hotblocks plugin tests/tcg: enable plugin testing tests/tcg: drop test-i386-fprem from TESTS when not SLOW tests/tcg: move "virtual" tests to EXTRA_TESTS tests/tcg: set QEMU_OPTS for all cris runs tests/tcg/Makefile.target: fix path to config-host.mak tests/plugin: add sample plugins linux-user: support -plugin option vl: support -plugin option plugin: add qemu_plugin_outs helper plugin: add qemu_plugin_insn_disas helper plugin: expand the plugin_init function to include an info block ... Signed-off-by: Peter Maydell <[email protected]>
- Loading branch information
Showing
92 changed files
with
5,168 additions
and
165 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2360,6 +2360,12 @@ M: Richard Henderson <[email protected]> | |
S: Maintained | ||
F: tcg/ | ||
|
||
TCG Plugins | ||
M: Alex Bennée <[email protected]> | ||
S: Maintained | ||
F: plugins/ | ||
F: tests/plugin | ||
|
||
AArch64 TCG target | ||
M: Claudio Fontana <[email protected]> | ||
M: Claudio Fontana <[email protected]> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
/* | ||
* Common Atomic Helper Functions | ||
* | ||
* This file should be included before the various instantiations of | ||
* the atomic_template.h helpers. | ||
* | ||
* Copyright (c) 2019 Linaro | ||
* Written by Alex Bennée <[email protected]> | ||
* | ||
* SPDX-License-Identifier: GPL-2.0-or-later | ||
* | ||
* This work is licensed under the terms of the GNU GPL, version 2 or later. | ||
* See the COPYING file in the top-level directory. | ||
*/ | ||
|
||
static inline | ||
void atomic_trace_rmw_pre(CPUArchState *env, target_ulong addr, uint16_t info) | ||
{ | ||
CPUState *cpu = env_cpu(env); | ||
|
||
trace_guest_mem_before_exec(cpu, addr, info); | ||
trace_guest_mem_before_exec(cpu, addr, info | TRACE_MEM_ST); | ||
} | ||
|
||
static inline void | ||
atomic_trace_rmw_post(CPUArchState *env, target_ulong addr, uint16_t info) | ||
{ | ||
qemu_plugin_vcpu_mem_cb(env_cpu(env), addr, info); | ||
qemu_plugin_vcpu_mem_cb(env_cpu(env), addr, info | TRACE_MEM_ST); | ||
} | ||
|
||
static inline | ||
void atomic_trace_ld_pre(CPUArchState *env, target_ulong addr, uint16_t info) | ||
{ | ||
trace_guest_mem_before_exec(env_cpu(env), addr, info); | ||
} | ||
|
||
static inline | ||
void atomic_trace_ld_post(CPUArchState *env, target_ulong addr, uint16_t info) | ||
{ | ||
qemu_plugin_vcpu_mem_cb(env_cpu(env), addr, info); | ||
} | ||
|
||
static inline | ||
void atomic_trace_st_pre(CPUArchState *env, target_ulong addr, uint16_t info) | ||
{ | ||
trace_guest_mem_before_exec(env_cpu(env), addr, info); | ||
} | ||
|
||
static inline | ||
void atomic_trace_st_post(CPUArchState *env, target_ulong addr, uint16_t info) | ||
{ | ||
qemu_plugin_vcpu_mem_cb(env_cpu(env), addr, info); | ||
} |
Oops, something went wrong.