qemu-e2k/plugins
Pierrick Bouvier 8042e2eadf plugins: define qemu_plugin_u64
Additionally to the scoreboard, we define a qemu_plugin_u64, which is a
simple struct holding a pointer to a scoreboard, and a given offset.
This allows to have a scoreboard containing structs, without having to
bring offset to operate on a specific field.

Since most of the plugins are simply collecting a sum of per-cpu values,
qemu_plugin_u64 directly support this operation as well.

All inline operations defined later will use a qemu_plugin_u64 as input.

New functions:
- qemu_plugin_u64_add
- qemu_plugin_u64_get
- qemu_plugin_u64_set
- qemu_plugin_u64_sum
New macros:
- qemu_plugin_scoreboard_u64
- qemu_plugin_scoreboard_u64_in_struct

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20240304130036.124418-3-pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240305121005.3528075-16-alex.bennee@linaro.org>
2024-03-06 12:35:23 +00:00
..
api.c plugins: define qemu_plugin_u64 2024-03-06 12:35:23 +00:00
core.c plugins: scoreboard API 2024-03-06 12:35:19 +00:00
loader.c misc: Clean up includes 2024-01-30 21:20:20 +03:00
meson.build configure, meson: rename targetos to host_os 2023-12-31 09:11:29 +01:00
plugin.h plugins: scoreboard API 2024-03-06 12:35:19 +00:00
qemu-plugins.symbols plugins: define qemu_plugin_u64 2024-03-06 12:35:23 +00:00