require MAP_FIXED_NOREPLACE on linux for JIT

This commit is contained in:
dzaima 2023-12-26 02:48:47 +02:00
parent 7c50d210ff
commit add8ba353e

View File

@ -3,7 +3,12 @@
#include <sys/mman.h>
#endif
#if defined(JIT_ENABLED)? JIT_ENABLED : ((defined(__x86_64) || defined(__amd64__)) && (__APPLE__ || __MACH__ || __linux__ || __FreeBSD__ || __unix || __unix__) && defined(MAP_32BIT) && MM!=0)
#if defined(JIT_ENABLED)? JIT_ENABLED : ( \
(defined(__x86_64) || defined(__amd64__)) \
&& (__APPLE__ || __MACH__ || __linux__ || __FreeBSD__ || __unix || __unix__) \
&& (defined(__linux__)? defined(MAP_FIXED_NOREPLACE) : 1) \
&& defined(MAP_32BIT) && MM!=0 \
)
#ifndef JIT_START
#define JIT_START 2 // number of calls for when to start JITting. -1: never JIT; 0: JIT everything, n: JIT after n non-JIT invocations; max ¯1+2⋆16
#endif