diff options
author | Richard Henderson <rth@twiddle.net> | 2016-12-15 09:38:11 -0800 |
---|---|---|
committer | Richard Henderson <rth@twiddle.net> | 2017-01-22 18:14:10 -0800 |
commit | 7c4ee5bcc82e643836a5f32db85887d2475288f7 (patch) | |
tree | 4067c035d83da99b7f013d8079b6c2d30b4c4bf8 /linux-user/main.c | |
parent | 429b31a205bd3362a5eed22ca9b1a4c1b92f29f5 (diff) | |
download | qemu-7c4ee5bcc82e643836a5f32db85887d2475288f7.zip qemu-7c4ee5bcc82e643836a5f32db85887d2475288f7.tar.gz qemu-7c4ee5bcc82e643836a5f32db85887d2475288f7.tar.bz2 |
linux-user: Support stack-grows-up in elfload.c
HPPA is a (the) stack-grows-up target, and supporting that requires
rearranging how we compute addresses while laying out the initial
program stack. In addition, hppa32 requires 64-byte stack alignment
so parameterize that as well.
Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'linux-user/main.c')
-rw-r--r-- | linux-user/main.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/linux-user/main.c b/linux-user/main.c index 94a636f..aae29bd 100644 --- a/linux-user/main.c +++ b/linux-user/main.c @@ -4179,15 +4179,16 @@ int main(int argc, char **argv, char **envp) qemu_log("start_brk 0x" TARGET_ABI_FMT_lx "\n", info->start_brk); qemu_log("end_code 0x" TARGET_ABI_FMT_lx "\n", info->end_code); - qemu_log("start_code 0x" TARGET_ABI_FMT_lx "\n", - info->start_code); - qemu_log("start_data 0x" TARGET_ABI_FMT_lx "\n", - info->start_data); + qemu_log("start_code 0x" TARGET_ABI_FMT_lx "\n", info->start_code); + qemu_log("start_data 0x" TARGET_ABI_FMT_lx "\n", info->start_data); qemu_log("end_data 0x" TARGET_ABI_FMT_lx "\n", info->end_data); - qemu_log("start_stack 0x" TARGET_ABI_FMT_lx "\n", - info->start_stack); + qemu_log("start_stack 0x" TARGET_ABI_FMT_lx "\n", info->start_stack); qemu_log("brk 0x" TARGET_ABI_FMT_lx "\n", info->brk); qemu_log("entry 0x" TARGET_ABI_FMT_lx "\n", info->entry); + qemu_log("argv_start 0x" TARGET_ABI_FMT_lx "\n", info->arg_start); + qemu_log("env_start 0x" TARGET_ABI_FMT_lx "\n", + info->arg_end + (abi_ulong)sizeof(abi_ulong)); + qemu_log("auxv_start 0x" TARGET_ABI_FMT_lx "\n", info->saved_auxv); } target_set_brk(info->brk); |