plugin: add API symbols to qemu-plugins.symbols

Signed-off-by: Emilio G. Cota <cota@braap.org>
[AJB: moved into plugins]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
Emilio G. Cota
2019-10-28 15:12:38 +00:00
committed by Alex Bennée
parent 40e8c6f48a
commit 26fffe29c0
5 changed files with 133 additions and 0 deletions
+2
View File
@@ -0,0 +1,2 @@
qemu-plugins-ld.symbols
qemu-plugins-ld64.symbols
+14
View File
@@ -5,3 +5,17 @@
obj-y += loader.o
obj-y += core.o
obj-y += api.o
# Abuse -libs suffix to only link with --dynamic-list/-exported_symbols_list
# when the final binary includes the plugin object.
#
# Note that simply setting LDFLAGS is not enough: we build binaries that
# never link plugin.o, and the linker might fail (at least ld64 does)
# if the symbols in the list are not in the output binary.
ifdef CONFIG_HAS_LD_DYNAMIC_LIST
api.o-libs := -Wl,--dynamic-list=$(BUILD_DIR)/qemu-plugins-ld.symbols
else
ifdef CONFIG_HAS_LD_EXPORTED_SYMBOLS_LIST
api.o-libs := -Wl,-exported_symbols_list,$(BUILD_DIR)/qemu-plugins-ld64.symbols
endif
endif
+38
View File
@@ -0,0 +1,38 @@
{
qemu_plugin_uninstall;
qemu_plugin_reset;
qemu_plugin_register_vcpu_init_cb;
qemu_plugin_register_vcpu_exit_cb;
qemu_plugin_register_vcpu_idle_cb;
qemu_plugin_register_vcpu_resume_cb;
qemu_plugin_register_vcpu_insn_exec_cb;
qemu_plugin_register_vcpu_insn_exec_inline;
qemu_plugin_register_vcpu_mem_cb;
qemu_plugin_register_vcpu_mem_haddr_cb;
qemu_plugin_register_vcpu_mem_inline;
qemu_plugin_ram_addr_from_host;
qemu_plugin_register_vcpu_tb_trans_cb;
qemu_plugin_register_vcpu_tb_exec_cb;
qemu_plugin_register_vcpu_tb_exec_inline;
qemu_plugin_register_flush_cb;
qemu_plugin_register_vcpu_syscall_cb;
qemu_plugin_register_vcpu_syscall_ret_cb;
qemu_plugin_register_atexit_cb;
qemu_plugin_tb_n_insns;
qemu_plugin_tb_get_insn;
qemu_plugin_tb_vaddr;
qemu_plugin_insn_data;
qemu_plugin_insn_size;
qemu_plugin_insn_vaddr;
qemu_plugin_insn_haddr;
qemu_plugin_mem_size_shift;
qemu_plugin_mem_is_sign_extended;
qemu_plugin_mem_is_big_endian;
qemu_plugin_mem_is_store;
qemu_plugin_get_hwaddr;
qemu_plugin_hwaddr_is_io;
qemu_plugin_hwaddr_to_raddr;
qemu_plugin_vcpu_for_each;
qemu_plugin_n_vcpus;
qemu_plugin_n_max_vcpus;
};