Fix ARM64 build

There is some weird issues regarding linking `__clear_cache` under `clang-cl`, therefore we just call the Windows API instead on these builds.
This commit is contained in:
David Hrdlička
2021-08-27 15:16:49 +02:00
committed by GitHub
parent 042bd74420
commit a68ac70c47

View File

@@ -120,7 +120,11 @@ void codegen_allocator_clean_blocks(struct mem_block_t *block)
#if defined __ARM_EABI__ || defined _ARM_ || defined __aarch64__ || defined _M_ARM || defined _M_ARM64
while (1)
{
#ifndef _MSC_VER
__clear_cache(&mem_block_alloc[block->offset], &mem_block_alloc[block->offset + MEM_BLOCK_SIZE]);
#else
FlushInstructionCache(GetCurrentProcess(), &mem_block_alloc[block->offset], MEM_BLOCK_SIZE);
#endif
if (block->next)
block = &mem_blocks[block->next - 1];
else