mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 07:13:54 -06:00
plugins/api: split out binary path/start/end/entry code
To move the main api.c to a single build compilation object we need to start splitting out user and system specific code. As we need to grob around host headers we move these particular helpers into the *-user mode directories. The binary/start/end/entry helpers are all NOPs for system mode. While using the plugin-api.c.inc trick means we build for both linux-user and bsd-user the BSD user-mode command line is still missing -plugin. This can be enabled once we have reliable check-tcg tests working for the BSDs. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Warner Losh <imp@bsdimp.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20250304222439.2035603-27-alex.bennee@linaro.org>
This commit is contained in:
parent
8c15f6e435
commit
903e870f24
8 changed files with 115 additions and 44 deletions
|
@ -471,49 +471,6 @@ bool qemu_plugin_bool_parse(const char *name, const char *value, bool *ret)
|
|||
return name && value && qapi_bool_parse(name, value, ret, NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* Binary path, start and end locations
|
||||
*/
|
||||
const char *qemu_plugin_path_to_binary(void)
|
||||
{
|
||||
char *path = NULL;
|
||||
#ifdef CONFIG_USER_ONLY
|
||||
TaskState *ts = get_task_state(current_cpu);
|
||||
path = g_strdup(ts->bprm->filename);
|
||||
#endif
|
||||
return path;
|
||||
}
|
||||
|
||||
uint64_t qemu_plugin_start_code(void)
|
||||
{
|
||||
uint64_t start = 0;
|
||||
#ifdef CONFIG_USER_ONLY
|
||||
TaskState *ts = get_task_state(current_cpu);
|
||||
start = ts->info->start_code;
|
||||
#endif
|
||||
return start;
|
||||
}
|
||||
|
||||
uint64_t qemu_plugin_end_code(void)
|
||||
{
|
||||
uint64_t end = 0;
|
||||
#ifdef CONFIG_USER_ONLY
|
||||
TaskState *ts = get_task_state(current_cpu);
|
||||
end = ts->info->end_code;
|
||||
#endif
|
||||
return end;
|
||||
}
|
||||
|
||||
uint64_t qemu_plugin_entry_code(void)
|
||||
{
|
||||
uint64_t entry = 0;
|
||||
#ifdef CONFIG_USER_ONLY
|
||||
TaskState *ts = get_task_state(current_cpu);
|
||||
entry = ts->info->entry;
|
||||
#endif
|
||||
return entry;
|
||||
}
|
||||
|
||||
/*
|
||||
* Create register handles.
|
||||
*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue