mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 15:23:53 -06:00
plugins: extend execlog to filter matches
Sometimes the whole execlog is just two much so add the ability to filter by instruction opcode or address. [AJB: this shows for example qemu-system-aarch64 -display none -serial mon:stdio \ -M virt -cpu max \ -semihosting-config enable=on \ -kernel ./tests/tcg/aarch64-softmmu/memory-sve \ -plugin ./contrib/plugins/libexeclog.so,ifilter=st1w,afilter=0x40001808 -d plugin -D plugin.out the st1w SVE instruction is not instrumenting its stores.] Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Alexandre Iooss <erdnaxe@crans.org> Cc: Robert Henry <robhenry@microsoft.com> Cc: Aaron Lindsay <aaron@os.amperecomputing.com> Message-Id: <20220929114231.583801-36-alex.bennee@linaro.org>
This commit is contained in:
parent
90bbf9d9db
commit
b7855bf65f
2 changed files with 90 additions and 15 deletions
|
@ -346,7 +346,7 @@ The execlog tool traces executed instructions with memory access. It can be used
|
|||
for debugging and security analysis purposes.
|
||||
Please be aware that this will generate a lot of output.
|
||||
|
||||
The plugin takes no argument::
|
||||
The plugin needs default argument::
|
||||
|
||||
qemu-system-arm $(QEMU_ARGS) \
|
||||
-plugin ./contrib/plugins/libexeclog.so -d plugin
|
||||
|
@ -364,6 +364,13 @@ which will output an execution trace following this structure::
|
|||
0, 0xd34, 0xf9c8f000, "bl #0x10c8"
|
||||
0, 0x10c8, 0xfff96c43, "ldr r3, [r0, #0x44]", load, 0x200000e4, RAM
|
||||
|
||||
the output can be filtered to only track certain instructions or
|
||||
addresses using the `ifilter` or `afilter` options. You can stack the
|
||||
arguments if required::
|
||||
|
||||
qemu-system-arm $(QEMU_ARGS) \
|
||||
-plugin ./contrib/plugins/libexeclog.so,ifilter=st1w,afilter=0x40001808 -d plugin
|
||||
|
||||
- contrib/plugins/cache.c
|
||||
|
||||
Cache modelling plugin that measures the performance of a given L1 cache
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue