diff options
author | Richard Henderson <rth@twiddle.net> | 2010-05-06 08:50:41 -0700 |
---|---|---|
committer | Aurelien Jarno <aurelien@aurel32.net> | 2010-05-21 18:41:21 +0200 |
commit | 9002ec794e8154ff774270cf9fac5f850a1c5751 (patch) | |
tree | 2944aa4e144835c7e0da805cdb33252f4ea3749e /bsd-user | |
parent | a5b3b13bedc545b5e571480b9cf47d2d378ad193 (diff) |
tcg: Initialize the prologue after GUEST_BASE is fixed.
This will allow backends to make intelligent choices about how
to implement GUEST_BASE.
Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'bsd-user')
-rw-r--r-- | bsd-user/main.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/bsd-user/main.c b/bsd-user/main.c index b1c438d89..05cc3d92b 100644 --- a/bsd-user/main.c +++ b/bsd-user/main.c @@ -30,7 +30,7 @@ #include "qemu-common.h" /* For tb_lock */ #include "exec-all.h" - +#include "tcg.h" #include "qemu-timer.h" #include "envlist.h" @@ -970,6 +970,13 @@ int main(int argc, char **argv) syscall_init(); signal_init(); +#if defined(CONFIG_USE_GUEST_BASE) + /* Now that we've loaded the binary, GUEST_BASE is fixed. Delay + generating the prologue until now so that the prologue can take + the real value of GUEST_BASE into account. */ + tcg_prologue_init(&tcg_ctx); +#endif + /* build Task State */ memset(ts, 0, sizeof(TaskState)); init_task_state(ts); |