diff --git a/CMakeLists.txt b/CMakeLists.txt index 9a50933..38e4cd7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -143,8 +143,8 @@ if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES else() message(STATUS "x86 detected") if (MSVC) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:AVX2") - set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /arch:AVX2") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX2") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /arch:AVX2") else() if (EMSCRIPTEN) # we require support for WASM SIMD 128-bit diff --git a/ggml.c b/ggml.c index 79b910b..484b6dc 100644 --- a/ggml.c +++ b/ggml.c @@ -37,8 +37,14 @@ typedef HANDLE pthread_t; typedef DWORD thread_ret_t; static int pthread_create(pthread_t* out, void* unused, thread_ret_t(*func)(void*), void* arg) { - out = CreateThread(NULL, 0, func, arg, 0, NULL); - return out != NULL; + HANDLE handle = CreateThread(NULL, 0, func, arg, 0, NULL); + if (handle == NULL) + { + return EAGAIN; + } + + *out = handle; + return 0; } static int pthread_join(pthread_t thread, void* unused) {