Skip to content

Commit 0b54dd1

Browse files
authored
Merge pull request #5933 from martin-frbg/issue5932
Fix compilation with MinGW-W64-Clang under Windows-Arm64
2 parents d496ab1 + 4ab4f1e commit 0b54dd1

4 files changed

Lines changed: 6 additions & 8 deletions

File tree

Makefile.arm64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ CCOMMON_OPT += -march=armv9-a+sve2+sme
6363
FCOMMON_OPT += -march=armv9-a+sve2
6464
ifdef OS_WINDOWS
6565
ifeq ($(C_COMPILER), CLANG)
66-
CCOMMON_OPT += --aarch64-stack-hazard-size=0
66+
CCOMMON_OPT += -mllvm --aarch64-stack-hazard-size=0
6767
endif
6868
endif
6969
endif

cmake/cc.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -317,7 +317,7 @@ if (${CORE} STREQUAL ARMV9SME)
317317
else ()
318318
set (CCOMMON_OPT "${CCOMMON_OPT} -march=armv9-a+sme")
319319
if (CMAKE_SYSTEM_NAME STREQUAL "Windows" AND CMAKE_C_COMPILER_ID MATCHES "Clang")
320-
set (CCOMMON_OPT "${CCOMMON_OPT} --aarch64-stack-hazard-size=0")
320+
set (CCOMMON_OPT "${CCOMMON_OPT} -mllvm --aarch64-stack-hazard-size=0")
321321
endif ()
322322
endif ()
323323
endif ()

cmake/system.cmake

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -368,22 +368,20 @@ if (${TARGET} STREQUAL NEOVERSEV1)
368368
if (${TARGET} STREQUAL ARMV9SME)
369369
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=armv9-a+sme -O3")
370370
if (${CMAKE_SYSTEM_NAME} STREQUAL Windows AND ${CMAKE_C_COMPILER_ID} MATCHES "Clang")
371-
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} --aarch64-stack-hazard-size=0")
371+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mllvm --aarch64-stack-hazard-size=0")
372372
endif()
373373
endif()
374374
if (${TARGET} STREQUAL VORTEXM4)
375375
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=armv8.4-a+sme -O3")
376376
if (${CMAKE_SYSTEM_NAME} STREQUAL Windows AND ${CMAKE_C_COMPILER_ID} MATCHES "Clang")
377-
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} --aarch64-stack-hazard-size=0")
377+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mllvm --aarch64-stack-hazard-size=0")
378378
endif()
379379
endif()
380380
if (${TARGET} STREQUAL A64FX)
381381
if (${CMAKE_C_COMPILER_ID} STREQUAL "PGI" AND NOT NO_SVE)
382382
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -Msve-intrinsics -march=armv8.2-a+sve -mtune=a64fx")
383383
else ()
384-
set (GCC_VERSION 0.0)
385-
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
386-
if (${GCC_VERSION} VERSION_GREATER 10.4 OR ${GCC_VERSION} VERSION_EQUAL 10.4)
384+
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER 10.4 OR CMAKE_C_COMPILER_VERSION VERSION_EQUAL 10.4)
387385
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=armv8.2-a+sve -mtune=a64fx")
388386
else ()
389387
message(FATAL_ERROR "Compiler $${CMAKE_C_COMPILER} {GCC_VERSION} does not support A64FX.")

cmake/system_check.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ if(MINGW)
2828
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpmachine
2929
OUTPUT_VARIABLE OPENBLAS_MINGW_TARGET_MACHINE
3030
OUTPUT_STRIP_TRAILING_WHITESPACE)
31-
if(OPENBLAS_MINGW_TARGET_MACHINE MATCHES "amd64|x86_64|AMD64")
31+
if(OPENBLAS_MINGW_TARGET_MACHINE MATCHES "amd64|x86_64|AMD64|aarch64")
3232
set(MINGW64 1)
3333
endif()
3434
endif()

0 commit comments

Comments
 (0)