qemu-cr16/docs
Alex Bennée af6e4e0a22 contrib/plugins: extend execlog to track register changes
With the new plugin register API we can now track changes to register
values. Currently the implementation is fairly dumb which will slow
down if a large number of register values are being tracked. This
could be improved by only instrumenting instructions which mention
registers we are interested in tracking.

Example usage:

  ./qemu-aarch64 -D plugin.log -d plugin \
     -cpu max,sve256=on \
     -plugin contrib/plugins/libexeclog.so,reg=sp,reg=z\* \
     ./tests/tcg/aarch64-linux-user/sha512-sve

will display in the execlog any changes to the stack pointer (sp) and
the SVE Z registers.

As testing registers every instruction will be quite a heavy operation
there is an additional flag which attempts to optimise the register
tracking by only instrumenting instructions which are likely to change
its value. This relies on the QEMU disassembler showing up the register
names in disassembly so is an explicit opt-in.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Cc: Akihiko Odaki <akihiko.odaki@daynix.com>
Based-On:  <20231025093128.33116-19-akihiko.odaki@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-27-alex.bennee@linaro.org>
2024-02-28 09:11:42 +00:00
..
_templates
about * m68k: Fix exception frame format for 68010 2024-02-24 16:12:51 +00:00
config vl: recognize audiodev groups in configuration files 2023-09-22 17:35:11 +02:00
devel contrib/plugins: extend execlog to track register changes 2024-02-28 09:11:42 +00:00
interop docs: correct typos 2024-02-20 22:20:48 +03:00
specs hw/fsi: Added FSI documentation 2024-02-01 08:33:18 +01:00
sphinx qapi: Rename QAPIDoc.Section.name to .tag 2024-02-26 10:43:56 +01:00
sphinx-static docs/sphinx: add 's' keyboard binding to focus search 2021-11-08 12:27:23 +04:00
spin
system docs/system/arm: Add RPi4B to raspi.rst 2024-02-27 15:24:20 +00:00
tools docs/tools/qemu-img.rst: fix typo (sumarizes) 2023-12-23 19:35:47 +03:00
user cli: Remove deprecated '-singlestep' command line option 2024-01-19 11:38:32 +01:00
block-replication.txt docs/block-replication.txt: Fix replication top-id command demo 2021-12-17 11:35:00 +01:00
bypass-iommu.txt
COLO-FT.txt migration: block incoming colo when capability is disabled 2023-05-10 18:48:12 +02:00
colo-proxy.txt colo: examples: remove mentions of script= and (wrong) downscript= 2024-01-30 21:20:20 +03:00
conf.py Update copyright dates to 2023 2023-05-30 15:50:17 +01:00
defs.rst.inc
igd-assign.txt
image-fuzzer.txt docs: Render binary names as monospaced text 2021-11-22 15:02:38 +01:00
index.rst
memory-hotplug.txt
meson.build configure: bootstrap sphinx with mkvenv 2023-05-18 08:53:51 +02:00
multi-thread-compression.txt docs tests: Fix use of migrate_set_parameter 2023-09-08 13:08:52 +03:00
multiseat.txt docs: Spell QEMU all caps 2021-11-19 10:16:58 +01:00
nvdimm.txt
pci_expander_bridge.txt
pcie.txt docs/pcie.txt: Replace ioh3420 with pcie-root-port 2023-01-28 06:21:30 -05:00
pcie_pci_bridge.txt
pcie_sriov.txt pcie: Use common ARI next function number 2023-07-10 18:59:32 -04:00
pvrdma.txt
qcow2-cache.txt
qdev-device-use.txt util: remove support -chardev tty and -chardev parport 2023-01-06 00:51:02 +01:00
qemu-option-trace.rst.inc
qemupciserial.inf
rdma.txt docs tests: Fix use of migrate_set_parameter 2023-09-08 13:08:52 +03:00
requirements.txt readthodocs: fully specify a build environment 2024-01-12 13:23:48 +00:00
spice-port-fqdn.txt
throttle.txt docs: Drop deprecated 'props' from object-add 2021-11-22 15:02:38 +01:00
xbzrle.txt
xen-save-devices-state.txt