plugins/stoptrigger: TCG plugin to stop execution under conditions
authorSimon Hamelin <simon.hamelin@grenoble-inp.org>
Thu, 18 Jul 2024 09:45:12 +0000 (10:45 +0100)
committerAlex Bennée <alex.bennee@linaro.org>
Mon, 22 Jul 2024 08:37:56 +0000 (09:37 +0100)
commit58fc249d9ebd7c6ed979cbf039ccfa93d1bae2b9
treebff7c6d8adee16755e9fb24ee0ed61de0aa46eeb
parente8122a7118eb22ace9e60c91bfbf2d4bbfc6f15a
plugins/stoptrigger: TCG plugin to stop execution under conditions

This new plugin allows to stop emulation using conditions on the
emulation state. By setting this plugin arguments, it is possible
to set an instruction count limit and/or trigger address(es) to stop at.
The code returned at emulation exit can be customized.

This plugin demonstrates how someone could stop QEMU execution.
It could be used for research purposes to launch some code and
deterministically stop it and understand where its execution flow went.

Co-authored-by: Alexandre Iooss <erdnaxe@crans.org>
Signed-off-by: Simon Hamelin <simon.hamelin@grenoble-inp.org>
Signed-off-by: Alexandre Iooss <erdnaxe@crans.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20240715081521.19122-2-simon.hamelin@grenoble-inp.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240718094523.1198645-5-alex.bennee@linaro.org>
contrib/plugins/Makefile
contrib/plugins/stoptrigger.c [new file with mode: 0644]
docs/devel/tcg-plugins.rst