X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmisc.cpp;h=e65faab9422cc33473a72be0ecf22cdf146ee95a;hb=e5f6d71b96b5149e5e1df30721e1870abdb218ce;hp=7d848d32693e2091b3ced5eab4820c8e210cfeb1;hpb=05dea2ca4657dec10637bb53c4ad583f680e0677;p=stockfish diff --git a/src/misc.cpp b/src/misc.cpp index 7d848d32..e65faab9 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -448,8 +448,10 @@ void* std_aligned_alloc(size_t alignment, size_t size) { #if defined(POSIXALIGNEDALLOC) void *mem; return posix_memalign(&mem, alignment, size) ? nullptr : mem; -#elif defined(_WIN32) +#elif defined(_WIN32) && !defined(_M_ARM) && !defined(_M_ARM64) return _mm_malloc(size, alignment); +#elif defined(_WIN32) + return _aligned_malloc(size, alignment); #else return std::aligned_alloc(alignment, size); #endif @@ -459,8 +461,10 @@ void std_aligned_free(void* ptr) { #if defined(POSIXALIGNEDALLOC) free(ptr); -#elif defined(_WIN32) +#elif defined(_WIN32) && !defined(_M_ARM) && !defined(_M_ARM64) _mm_free(ptr); +#elif defined(_WIN32) + _aligned_free(ptr); #else free(ptr); #endif