]> git.proxmox.com Git - mirror_qemu.git/blame - linux-user/sparc/target_mman.h
linux-user: Define ELF_ET_DYN_BASE in $guest/target_mman.h
[mirror_qemu.git] / linux-user / sparc / target_mman.h
CommitLineData
492fe4e7
RH
1#ifndef SPARC_TARGET_MMAN_H
2#define SPARC_TARGET_MMAN_H
3
4#define TARGET_MAP_NORESERVE 0x40
5#define TARGET_MAP_LOCKED 0x100
6#define TARGET_MAP_GROWSDOWN 0x0200
7
2d708164
RH
8/*
9 * arch/sparc/include/asm/page_64.h:
10 * TASK_UNMAPPED_BASE (test_thread_flag(TIF_32BIT) ? \
11 * _AC(0x0000000070000000,UL) : \
12 * VA_EXCLUDE_END)
13 * But VA_EXCLUDE_END is > 0xffff800000000000UL which doesn't work
14 * in userland emulation.
15 */
16#ifdef TARGET_ABI32
17#define TASK_UNMAPPED_BASE 0x70000000
18#else
19#define TASK_UNMAPPED_BASE (1ull << (TARGET_VIRT_ADDR_SPACE_BITS - 2))
20#endif
21
da2b71fa
RH
22/*
23 * arch/sparc/include/asm/elf_64.h
24 * Except that COMPAT_ELF_ET_DYN_BASE exactly matches TASK_UNMAPPED_BASE,
25 * so move it up a bit.
26 */
27#ifdef TARGET_ABI32
28#define ELF_ET_DYN_BASE 0x78000000
29#else
30#define ELF_ET_DYN_BASE 0x0000010000000000ull
31#endif
32
9f22020b 33#include "../generic/target_mman.h"
492fe4e7
RH
34
35#endif