You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit c42cc0d
Browse filesBrowse the repository at this point in the historyBrowse files
[jsc] Add option to force the address of JIT memory
https://bugs.webkit.org/show_bug.cgi?id=297560
rdar://158636737
Reviewed by Yusuke Suzuki and Mark Lam.
The new JSC_jitMemoryReservationAddress option allows us to specify an
address at which to mmap JIT memory. If the operating system is not able
to do so, then we will instead crash.
Notably we do not use MAP_FIXED as we don't want to clobber existing
mappings, but would rather bail out if someone else has already mapped
the location requested.
Canonical link: https://commits.webkit.org/299073@main
RELEASE_ASSERT(std::bit_cast<uintptr_t>(reservation.pageReservation.base()) == Options::jitMemoryReservationAddress() && "Failed to accomodate JSC_jitMemoryReservationAddress");
406
409
407
410
if (Options::verboseExecutablePoolAllocation())
408
411
dataLog(getpid(), ": Got executable pool reservation at ", RawPointer(reservation.pageReservation.base()), "...", RawPointer(reservation.pageReservation.end()), ", while I'm at ", RawPointer(reinterpret_cast<void*>(initializeJITPageReservation)), "\n");
v(Unsigned, jitMemoryReservationSize, 0, Normal, "Set this number to change the executable allocation size in ExecutableAllocatorFixedVMPool. (In bytes.)"_s) \
102
+
v(Size, jitMemoryReservationAddress, 0, Restricted, "If non-zero, we will attempt to allocate JIT memory at the address provided and crash if we cannot.") \
0 commit comments