Merge pull request #259 from SChernykh/fix_invalidate_order

Invalidate CPU I-cache on Apple Silicon
This commit is contained in:
SChernykh 2022-12-17 13:00:27 +01:00 committed by GitHub
commit 5bb4c7760d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 1 additions and 0 deletions

View File

@ -189,6 +189,7 @@ void setPagesRX(void* ptr, size_t bytes) {
&& MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_VERSION_11_0
if (__builtin_available(macOS 11.0, *)) {
pthread_jit_write_protect_np(1);
__builtin___clear_cache((char*)ptr, ((char*)ptr) + bytes);
} else {
pageProtect(ptr, bytes, PAGE_EXECUTE_READ, &errfunc);
}