diff options
author | Alex Bennée <alex.bennee@linaro.org> | 2019-11-04 13:18:36 +0000 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2019-11-12 14:32:55 +0000 |
commit | 3fb356cc86461a14450802e14fa79e8436dbbf31 (patch) | |
tree | 1fa66d329a0031fcdc7b7ac7117bdf921236a1d8 /tests/plugin | |
parent | 05273a43af5f9e71152ad1b877bc3a898857e989 (diff) | |
download | qemu-3fb356cc86461a14450802e14fa79e8436dbbf31.zip qemu-3fb356cc86461a14450802e14fa79e8436dbbf31.tar.gz qemu-3fb356cc86461a14450802e14fa79e8436dbbf31.tar.bz2 |
tcg plugins: expose an API version concept
This is a very simple versioning API which allows the plugin
infrastructure to check the API a plugin was built against. We also
expose a min/cur API version to the plugin via the info block in case
it wants to avoid using old deprecated APIs in the future.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Robert Foley <robert.foley@linaro.org>
Diffstat (limited to 'tests/plugin')
-rw-r--r-- | tests/plugin/bb.c | 2 | ||||
-rw-r--r-- | tests/plugin/empty.c | 2 | ||||
-rw-r--r-- | tests/plugin/hotblocks.c | 2 | ||||
-rw-r--r-- | tests/plugin/hotpages.c | 2 | ||||
-rw-r--r-- | tests/plugin/howvec.c | 2 | ||||
-rw-r--r-- | tests/plugin/insn.c | 2 | ||||
-rw-r--r-- | tests/plugin/mem.c | 2 |
7 files changed, 14 insertions, 0 deletions
diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c index 45e1de5..f30bea0 100644 --- a/tests/plugin/bb.c +++ b/tests/plugin/bb.c @@ -14,6 +14,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + static uint64_t bb_count; static uint64_t insn_count; static bool do_inline; diff --git a/tests/plugin/empty.c b/tests/plugin/empty.c index 3f60f69..8fa6bac 100644 --- a/tests/plugin/empty.c +++ b/tests/plugin/empty.c @@ -13,6 +13,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + /* * Empty TB translation callback. * This allows us to measure the overhead of injecting and then diff --git a/tests/plugin/hotblocks.c b/tests/plugin/hotblocks.c index 1bd1838..3942a2c 100644 --- a/tests/plugin/hotblocks.c +++ b/tests/plugin/hotblocks.c @@ -15,6 +15,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + static bool do_inline; /* Plugins need to take care of their own locking */ diff --git a/tests/plugin/hotpages.c b/tests/plugin/hotpages.c index 77df07a..ecd6c18 100644 --- a/tests/plugin/hotpages.c +++ b/tests/plugin/hotpages.c @@ -18,6 +18,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) static uint64_t page_size = 4096; diff --git a/tests/plugin/howvec.c b/tests/plugin/howvec.c index 58fa675..4ca555e 100644 --- a/tests/plugin/howvec.c +++ b/tests/plugin/howvec.c @@ -20,6 +20,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) typedef enum { diff --git a/tests/plugin/insn.c b/tests/plugin/insn.c index e5fd07f..0a8f5a0 100644 --- a/tests/plugin/insn.c +++ b/tests/plugin/insn.c @@ -14,6 +14,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + static uint64_t insn_count; static bool do_inline; diff --git a/tests/plugin/mem.c b/tests/plugin/mem.c index d967388..878abf0 100644 --- a/tests/plugin/mem.c +++ b/tests/plugin/mem.c @@ -14,6 +14,8 @@ #include <qemu-plugin.h> +QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; + static uint64_t mem_count; static uint64_t io_count; static bool do_inline; |