mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2024-11-26 15:32:05 +00:00
Revert "Do not use pagezero size option if osx version >= 13 (#3025)" and "Enable MAP_32BIT for macOS (#2992)". Discussion: https://github.com/bytecodealliance/wasm-micro-runtime/issues/3009
This commit is contained in:
parent
a9807058a6
commit
d13a54f860
|
@ -473,14 +473,3 @@ else ()
|
|||
# Disable quick aot/jit entries for interp and fast-jit
|
||||
add_definitions (-DWASM_ENABLE_QUICK_AOT_ENTRY=0)
|
||||
endif ()
|
||||
if (APPLE)
|
||||
EXEC_PROGRAM(sw_vers ARGS -productVersion OUTPUT_VARIABLE OS_X_VERSION)
|
||||
STRING(REGEX MATCH "([0-9]+)" OS_X_VERSION ${OS_X_VERSION})
|
||||
if (OS_X_VERSION LESS 13)
|
||||
set(PAGE_ZERO_SIZE_OPTION "-Wl,-pagezero_size,0x4000")
|
||||
endif ()
|
||||
|
||||
# On recent macOS versions, by default, the size of page zero is 4GB.
|
||||
# Shrink it to make MAP_32BIT mmap can work.
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PAGE_ZERO_SIZE_OPTION}")
|
||||
endif ()
|
||||
|
|
|
@ -78,19 +78,15 @@ os_mmap(void *hint, size_t size, int prot, int flags, os_file_handle file)
|
|||
map_prot |= PROT_EXEC;
|
||||
|
||||
#if defined(BUILD_TARGET_X86_64) || defined(BUILD_TARGET_AMD_64)
|
||||
#ifndef __APPLE__
|
||||
if (flags & MMAP_MAP_32BIT)
|
||||
map_flags |= MAP_32BIT;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
if (flags & MMAP_MAP_FIXED)
|
||||
map_flags |= MAP_FIXED;
|
||||
|
||||
#if defined(BUILD_TARGET_X86_64) || defined(BUILD_TARGET_AMD_64)
|
||||
#if defined(__APPLE__)
|
||||
retry_without_map_32bit:
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(BUILD_TARGET_RISCV64_LP64D) || defined(BUILD_TARGET_RISCV64_LP64)
|
||||
/* As AOT relocation in RISCV64 may require that the code/data mapped
|
||||
* is in range 0 to 2GB, we try to map the memory with hint address
|
||||
|
@ -148,14 +144,6 @@ retry_without_map_32bit:
|
|||
}
|
||||
|
||||
if (addr == MAP_FAILED) {
|
||||
#if defined(BUILD_TARGET_X86_64) || defined(BUILD_TARGET_AMD_64)
|
||||
#if defined(__APPLE__)
|
||||
if ((map_flags & MAP_32BIT) != 0) {
|
||||
map_flags &= ~MAP_32BIT;
|
||||
goto retry_without_map_32bit;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
#if BH_ENABLE_TRACE_MMAP != 0
|
||||
os_printf("mmap failed\n");
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue
Block a user