1492fe4e7SRichard Henderson #ifndef SPARC_TARGET_MMAN_H 2492fe4e7SRichard Henderson #define SPARC_TARGET_MMAN_H 3492fe4e7SRichard Henderson 4492fe4e7SRichard Henderson #define TARGET_MAP_NORESERVE 0x40 5492fe4e7SRichard Henderson #define TARGET_MAP_LOCKED 0x100 6492fe4e7SRichard Henderson #define TARGET_MAP_GROWSDOWN 0x0200 7492fe4e7SRichard Henderson 82d708164SRichard Henderson /* 92d708164SRichard Henderson * arch/sparc/include/asm/page_64.h: 102d708164SRichard Henderson * TASK_UNMAPPED_BASE (test_thread_flag(TIF_32BIT) ? \ 112d708164SRichard Henderson * _AC(0x0000000070000000,UL) : \ 122d708164SRichard Henderson * VA_EXCLUDE_END) 132d708164SRichard Henderson * But VA_EXCLUDE_END is > 0xffff800000000000UL which doesn't work 142d708164SRichard Henderson * in userland emulation. 152d708164SRichard Henderson */ 162d708164SRichard Henderson #ifdef TARGET_ABI32 172d708164SRichard Henderson #define TASK_UNMAPPED_BASE 0x70000000 182d708164SRichard Henderson #else 192d708164SRichard Henderson #define TASK_UNMAPPED_BASE (1ull << (TARGET_VIRT_ADDR_SPACE_BITS - 2)) 202d708164SRichard Henderson #endif 212d708164SRichard Henderson 22*da2b71faSRichard Henderson /* 23*da2b71faSRichard Henderson * arch/sparc/include/asm/elf_64.h 24*da2b71faSRichard Henderson * Except that COMPAT_ELF_ET_DYN_BASE exactly matches TASK_UNMAPPED_BASE, 25*da2b71faSRichard Henderson * so move it up a bit. 26*da2b71faSRichard Henderson */ 27*da2b71faSRichard Henderson #ifdef TARGET_ABI32 28*da2b71faSRichard Henderson #define ELF_ET_DYN_BASE 0x78000000 29*da2b71faSRichard Henderson #else 30*da2b71faSRichard Henderson #define ELF_ET_DYN_BASE 0x0000010000000000ull 31*da2b71faSRichard Henderson #endif 32*da2b71faSRichard Henderson 339f22020bSIlya Leoshkevich #include "../generic/target_mman.h" 34492fe4e7SRichard Henderson 35492fe4e7SRichard Henderson #endif 36