Skip to content

Commit 77b2f15

Browse files
authored
Merge branch 'OpenMathLib:develop' into gemmt_tests
2 parents 030bfd1 + cf9e34c commit 77b2f15

105 files changed

Lines changed: 3584 additions & 3123 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.cirrus.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ task:
5858
- export VALID_ARCHS="i386 x86_64"
5959
- xcrun --sdk macosx --show-sdk-path
6060
- xcodebuild -version
61-
- export CC=/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
62-
- export CFLAGS="-O2 -unwindlib=none -Wno-macro-redefined -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -arch x86_64"
61+
- export CC=/Applications/Xcode_16.3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
62+
- export CFLAGS="-O2 -unwindlib=none -Wno-macro-redefined -isysroot /Applications/Xcode_16.3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -arch x86_64"
6363
- make TARGET=CORE2 DYNAMIC_ARCH=1 NUM_THREADS=32 HOSTCC=clang NOFORTRAN=1 RANLIB="ls -l"
6464
always:
6565
config_artifacts:
@@ -78,8 +78,8 @@ task:
7878
- export #PATH=/opt/homebrew/opt/llvm/bin:$PATH
7979
- export #LDFLAGS="-L/opt/homebrew/opt/llvm/lib"
8080
- export #CPPFLAGS="-I/opt/homebrew/opt/llvm/include"
81-
- export CC=/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
82-
- export CFLAGS="-O2 -unwindlib=none -Wno-macro-redefined -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS17.5.sdk -arch arm64 -miphoneos-version-min=10.0"
81+
- export CC=/Applications/Xcode_16.3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
82+
- export CFLAGS="-O2 -unwindlib=none -Wno-macro-redefined -isysroot /Applications/Xcode_16.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.4.sdk -arch arm64 -miphoneos-version-min=10.0"
8383
- xcrun --sdk iphoneos --show-sdk-path
8484
- ls -l /Applications
8585
- make TARGET=ARMV8 NUM_THREADS=32 HOSTCC=clang NOFORTRAN=1 CROSS=1

.github/workflows/apple_m.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ jobs:
102102
mkdir build && cd build
103103
cmake -DDYNAMIC_ARCH=1 \
104104
-DUSE_OPENMP=${{matrix.openmp}} \
105+
-DOpenMP_Fortran_LIB_NAMES=omp \
105106
-DINTERFACE64=${{matrix.ilp64}} \
106107
-DNOFORTRAN=0 \
107108
-DBUILD_WITHOUT_LAPACK=0 \

.github/workflows/c910v.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131

3232
steps:
3333
- name: Checkout repository
34-
uses: actions/checkout@v3
34+
uses: actions/checkout@v4
3535

3636
- name: install build deps
3737
run: |
@@ -40,18 +40,18 @@ jobs:
4040
gcc-${{ matrix.apt_triple }} gfortran-${{ matrix.apt_triple }} libgomp1-riscv64-cross libglib2.0-dev
4141
4242
- name: checkout qemu
43-
uses: actions/checkout@v3
43+
uses: actions/checkout@v4
4444
with:
45-
repository: T-head-Semi/qemu
45+
repository: XUANTIE-RV/qemu
4646
path: qemu
47-
ref: 1e692ebb43d396c52352406323fc782c1ac99a42
47+
ref: e0ace167effcd36d1f82c7ccb4522b3126011479 # xuantie-qemu-9.0
4848

4949
- name: build qemu
5050
run: |
5151
# Force use c910v qemu-user
52-
wget https://github.com/revyos/qemu/commit/5164bca5a4bcde4534dc1a9aa3a7f619719874cf.patch
52+
wget https://github.com/revyos/qemu/commit/222729c7455784dd855216d7a2bec4bd8f2a6800.patch
5353
cd qemu
54-
patch -p1 < ../5164bca5a4bcde4534dc1a9aa3a7f619719874cf.patch
54+
patch -p1 < ../222729c7455784dd855216d7a2bec4bd8f2a6800.patch
5555
export CXXFLAGS="-Wno-error"; export CFLAGS="-Wno-error"
5656
./configure --prefix=$GITHUB_WORKSPACE/qemu-install --target-list=riscv64-linux-user --disable-system
5757
make -j$(nproc)

CMakeLists.txt

Lines changed: 93 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,17 @@ set(SYMBOLPREFIX "" CACHE STRING "Add a prefix to all exported symbol names in
7777

7878
set(SYMBOLSUFFIX "" CACHE STRING "Add a suffix to all exported symbol names in the shared library, e.g. _64 for INTERFACE64 builds" )
7979

80+
if (CMAKE_SYSTEM_NAME MATCHES "Windows" AND BUILD_SHARED_LIBS AND NOT ("${SYMBOLPREFIX}${SYMBOLSUFFIX}" STREQUAL ""))
81+
set (DELETE_STATIC_LIBS "")
82+
if (NOT BUILD_STATIC_LIBS)
83+
message (STATUS "forcing build of a temporary static library for symbol renaming")
84+
set (BUILD_SHARED_LIBS OFF CACHE BOOL "Build shared library" FORCE)
85+
set (BUILD_STATIC_LIBS ON CACHE BOOL "Build static library" FORCE)
86+
set (DELETE_STATIC_LIBS file (REMOVE $<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.lib))
87+
endif ()
88+
endif()
89+
90+
8091
#######
8192
if(BUILD_WITHOUT_LAPACK)
8293
set(NO_LAPACK 1)
@@ -109,10 +120,6 @@ endif()
109120

110121
message(WARNING "CMake support is experimental. It does not yet support all build options and may not produce the same Makefiles that OpenBLAS ships with.")
111122

112-
if (USE_OPENMP)
113-
find_package(OpenMP REQUIRED)
114-
endif ()
115-
116123
include("${PROJECT_SOURCE_DIR}/cmake/utils.cmake")
117124
include("${PROJECT_SOURCE_DIR}/cmake/system.cmake")
118125

@@ -230,6 +237,12 @@ endif ()
230237
# add objects to the openblas lib
231238
if(NOT NO_LAPACK)
232239
add_library(LAPACK_OVERRIDES OBJECT ${LA_SOURCES})
240+
if (USE_OPENMP AND (NOT NOFORTRAN))
241+
# Disable OpenMP for LAPACK Fortran codes on Windows.
242+
if(NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
243+
target_link_libraries(LAPACK_OVERRIDES OpenMP::OpenMP_Fortran)
244+
endif()
245+
endif()
233246
list(APPEND TARGET_OBJS "$<TARGET_OBJECTS:LAPACK_OVERRIDES>")
234247
endif()
235248
if(NOT NO_LAPACKE)
@@ -271,30 +284,59 @@ endif()
271284

272285
if (USE_OPENMP)
273286
if(BUILD_STATIC_LIBS)
274-
target_link_libraries(${OpenBLAS_LIBNAME}_static OpenMP::OpenMP_C)
287+
if(NOFORTRAN)
288+
target_link_libraries(${OpenBLAS_LIBNAME}_static OpenMP::OpenMP_C)
289+
else()
290+
target_link_libraries(${OpenBLAS_LIBNAME}_static OpenMP::OpenMP_C OpenMP::OpenMP_Fortran)
291+
endif()
275292
endif()
276293
if(BUILD_SHARED_LIBS)
277-
target_link_libraries(${OpenBLAS_LIBNAME}_shared OpenMP::OpenMP_C)
294+
if(NOFORTRAN)
295+
target_link_libraries(${OpenBLAS_LIBNAME}_shared OpenMP::OpenMP_C)
296+
else()
297+
target_link_libraries(${OpenBLAS_LIBNAME}_shared OpenMP::OpenMP_C OpenMP::OpenMP_Fortran)
298+
endif()
278299
endif()
279300
endif()
280301

281-
# Seems that this hack doesn't required since macOS 11 Big Sur
282-
if (APPLE AND BUILD_SHARED_LIBS AND CMAKE_HOST_SYSTEM_VERSION VERSION_LESS 20)
283-
set (CMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS 1)
284-
if (NOT NOFORTRAN)
285-
set (CMAKE_Fortran_USE_RESPONSE_FILE_FOR_OBJECTS 1)
286-
set (CMAKE_Fortran_CREATE_SHARED_LIBRARY
287-
"sh -c 'cat ${CMAKE_BINARY_DIR}/CMakeFiles/openblas_shared.dir/objects*.rsp | xargs -n 1024 ${CMAKE_AR} -ru libopenblas.a && exit 0' "
288-
"sh -c '${CMAKE_AR} -rs libopenblas.a ${CMAKE_BINARY_DIR}/driver/others/CMakeFiles/driver_others.dir/xerbla.c.o && exit 0' "
289-
"sh -c 'echo \"\" | ${CMAKE_Fortran_COMPILER} -o dummy.o -c -x f95-cpp-input - '"
290-
"sh -c '${CMAKE_Fortran_COMPILER} -fpic -shared -Wl,-all_load -Wl,-force_load,libopenblas.a -Wl,-noall_load dummy.o -o ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libopenblas.${OpenBLAS_MAJOR_VERSION}.${OpenBLAS_MINOR_VERSION}.dylib'"
291-
"sh -c 'ls -l ${CMAKE_BINARY_DIR}/lib'")
292-
else ()
293-
set (CMAKE_C_CREATE_SHARED_LIBRARY
294-
"sh -c 'cat ${CMAKE_BINARY_DIR}/CMakeFiles/openblas_shared.dir/objects*.rsp | xargs -n 1024 ${CMAKE_AR} -ru libopenblas.a && exit 0' "
295-
"sh -c '${CMAKE_AR} -rs libopenblas.a ${CMAKE_BINARY_DIR}/driver/others/CMakeFiles/driver_others.dir/xerbla.c.o && exit 0' "
296-
"sh -c '${CMAKE_C_COMPILER} -fpic -shared -Wl,-all_load -Wl,-force_load,libopenblas.a -Wl,-noall_load -o ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libopenblas.${OpenBLAS_MAJOR_VERSION}.${OpenBLAS_MINOR_VERSION}.dylib'")
297-
endif ()
302+
# Fix "Argument list too long" for macOS with Intel CPUs and DYNAMIC_ARCH turned on
303+
if(APPLE AND DYNAMIC_ARCH AND (NOT CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "arm64"))
304+
# Use response files
305+
set(CMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS 1)
306+
# Always build static library first
307+
if(BUILD_STATIC_LIBS)
308+
set(STATIC_PATH "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${OpenBLAS_LIBNAME}.a")
309+
else()
310+
add_library(${OpenBLAS_LIBNAME}_static STATIC ${TARGET_OBJS} ${OpenBLAS_DEF_FILE})
311+
set(STATIC_PATH "lib${OpenBLAS_LIBNAME}.a")
312+
endif()
313+
set(CREATE_STATIC_LIBRARY_COMMAND
314+
"sh -c 'cat ${CMAKE_BINARY_DIR}/CMakeFiles/${OpenBLAS_LIBNAME}_static.dir/objects*.rsp | xargs -n 1024 ${CMAKE_AR} -ru ${STATIC_PATH} && exit 0' "
315+
"sh -c '${CMAKE_AR} -rs ${STATIC_PATH} ${CMAKE_BINARY_DIR}/driver/others/CMakeFiles/driver_others.dir/xerbla.c.o && exit 0' ")
316+
if(BUILD_SHARED_LIBS)
317+
add_dependencies(${OpenBLAS_LIBNAME}_shared ${OpenBLAS_LIBNAME}_static)
318+
set(SHARED_PATH "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libopenblas.${OpenBLAS_MAJOR_VERSION}.${OpenBLAS_MINOR_VERSION}.dylib")
319+
endif()
320+
if(USE_OPENMP)
321+
get_target_property(OMP_LIB OpenMP::OpenMP_C INTERFACE_LINK_LIBRARIES)
322+
else()
323+
set(OMP_LIB "")
324+
endif()
325+
if(NOT NOFORTRAN)
326+
set(CMAKE_Fortran_USE_RESPONSE_FILE_FOR_OBJECTS 1)
327+
set(CMAKE_Fortran_CREATE_STATIC_LIBRARY ${CREATE_STATIC_LIBRARY_COMMAND})
328+
if(BUILD_SHARED_LIBS)
329+
set(CMAKE_Fortran_CREATE_SHARED_LIBRARY
330+
"sh -c 'echo \"\" | ${CMAKE_Fortran_COMPILER} -o dummy.o -c -x f95-cpp-input - '"
331+
"sh -c '${CMAKE_Fortran_COMPILER} -fpic -shared -Wl,-all_load -Wl,-force_load,${STATIC_PATH} dummy.o -o ${SHARED_PATH} ${OMP_LIB}'")
332+
endif()
333+
else()
334+
set(CMAKE_C_CREATE_STATIC_LIBRARY ${CREATE_STATIC_LIBRARY_COMMAND})
335+
if(BUILD_SHARED_LIBS)
336+
set(CMAKE_C_CREATE_SHARED_LIBRARY
337+
"sh -c '${CMAKE_C_COMPILER} -fpic -shared -Wl,-all_load -Wl,-force_load,${STATIC_PATH} -o ${SHARED_PATH} ${OMP_LIB}'")
338+
endif()
339+
endif()
298340
endif()
299341

300342
# Handle MSVC exports
@@ -379,7 +421,7 @@ if (BUILD_SHARED_LIBS AND BUILD_RELAPACK)
379421
endif()
380422
endif()
381423

382-
if (BUILD_SHARED_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "")
424+
if (BUILD_SHARED_LIBS OR DELETE_STATIC_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "")
383425
if (NOT DEFINED ARCH)
384426
set(ARCH_IN "x86_64")
385427
else()
@@ -467,10 +509,33 @@ if (BUILD_SHARED_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "")
467509
else ()
468510
set (BZ 0)
469511
endif()
512+
513+
if (CMAKE_SYSTEM_NAME MATCHES "Windows")
514+
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
515+
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
516+
if (CMAKE_BUILD_TYPE MATCHES "Debug")
517+
set (CRTLIB msvcrtd)
518+
set (PDBOPT -debug -pdb:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.pdb)
519+
set (PDB_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
520+
else ()
521+
set (CRTLIB msvcrt)
522+
set (PDBOPT "")
523+
endif()
524+
#if (USE_PERL)
525+
message(STATUS "adding postbuild instruction to rename syms")
526+
add_custom_command(TARGET ${OpenBLAS_LIBNAME}_static POST_BUILD
527+
COMMAND perl ${PROJECT_SOURCE_DIR}/exports/gensymbol.pl "win2k" "${ARCH}" "${BU}" "${EXPRECISION_IN}" "${NO_CBLAS_IN}" "${NO_LAPACK_IN}" "${NO_LAPACKE_IN}" "${NEED2UNDERSCORES_IN}" "${ONLY_CBLAS_IN}" "${SYMBOLPREFIX}" "${SYMBOLSUFFIX}" "${BLD}" "${BBF16}" "${BS}" "${BD}" "${BC}" "${BZ}" > ${PROJECT_BINARY_DIR}/renamesyms.def
528+
COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_FLAGS} -I${PROJECT_SOURCE_DIR} -I${PROJECT_BINARY_DIR} -c -o ${PROJECT_BINARY_DIR}/dllinit.o ${PROJECT_SOURCE_DIR}/exports/dllinit.c
529+
COMMAND lld-link -nodefaultlib:libcmt -defaultlib:${CRTLIB} ${CMAKE_LINKER_FLAGS} -errorlimit:0 -def:${PROJECT_BINARY_DIR}/renamesyms.def ${PROJECT_BINARY_DIR}/dllinit.o $<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -wholearchive:$<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -dll -out:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll -implib:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll.a ${PDBOPT}
530+
#COMMAND lld-link -nodefaultlib:libcmt -defaultlib:msvcrt ${CMAKE_LINKER_FLAGS} -errorlimit:0 -def:${PROJECT_BINARY_DIR}/renamesyms.def ${PROJECT_BINARY_DIR}/dllinit.o $<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -wholearchive:$<TARGET_FILE:${OpenBLAS_LIBNAME}_static> -dll -out:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll -implib:$<TARGET_FILE_DIR:${OpenBLAS_LIBNAME}_static>/${OpenBLAS_LIBNAME}.dll.a
531+
${REMOVE_STATIC_LIB} VERBATIM
532+
)
533+
#endif ()
534+
else ()
470535
if (NOT USE_PERL)
471536
add_custom_command(TARGET ${OpenBLAS_LIBNAME}_shared POST_BUILD
472-
COMMAND ${PROJECT_SOURCE_DIR}/exports/gensymbol "objcopy" "${ARCH}" "${BU}" "${EXPRECISION_IN}" "${NO_CBLAS_IN}" "${NO_LAPACK_IN}" "${NO_LAPACKE_IN}" "${NEED2UNDERSCORES_IN}" "${ONLY_CBLAS_IN}" \"${SYMBOLPREFIX}\" \"${SYMBOLSUFFIX}\" "${BLD}" "${BBF16}" "${BS}" "${BD}" "${BC}" "${BZ}" > ${PROJECT_BINARY_DIR}/objcopy.def
473-
COMMAND objcopy -v --redefine-syms ${PROJECT_BINARY_DIR}/objcopy.def ${PROJECT_BINARY_DIR}/lib/lib${OpenBLAS_LIBNAME}.so
537+
COMMAND sh ${PROJECT_SOURCE_DIR}/exports/gensymbol "objcopy" "${ARCH}" "${BU}" "${EXPRECISION_IN}" "${NO_CBLAS_IN}" "${NO_LAPACK_IN}" "${NO_LAPACKE_IN}" "${NEED2UNDERSCORES_IN}" "${ONLY_CBLAS_IN}" \"${SYMBOLPREFIX}\" \"${SYMBOLSUFFIX}\" "${BLD}" "${BBF16}" "${BS}" "${BD}" "${BC}" "${BZ}" > ${PROJECT_BINARY_DIR}/objcopy.def
538+
COMMAND objcopy -v --redefine-syms ${PROJECT_BINARY_DIR}/objcopy.def ${PROJECT_BINARY_DIR}/lib/${OpenBLAS_LIBNAME}.so
474539
COMMENT "renaming symbols"
475540
)
476541
else()
@@ -481,6 +546,7 @@ if (BUILD_SHARED_LIBS AND NOT ${SYMBOLPREFIX}${SYMBOLSUFFIX} STREQUAL "")
481546
)
482547
endif()
483548
endif()
549+
endif()
484550
485551
if (BUILD_BENCHMARKS)
486552
#find_package(OpenMP REQUIRED)
@@ -650,4 +716,4 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PN}ConfigVersion.cmake
650716
DESTINATION ${CMAKECONFIG_INSTALL_DIR})
651717
install(EXPORT "${PN}${SUFFIX64}Targets"
652718
NAMESPACE "${PN}${SUFFIX64}::"
653-
DESTINATION ${CMAKECONFIG_INSTALL_DIR})
719+
DESTINATION ${CMAKECONFIG_INSTALL_DIR})

CONTRIBUTORS.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@
2626
* Chris Sidebottom <chris.sidebottom@arm.com>
2727
* Optimizations and other improvements targeting AArch64
2828

29+
* Annop Wongwathanarat <annop.wongwathanarat@arm.com>
30+
* Optimizations and other improvements targeting AArch64
31+
2932
## Previous Developers
3033

3134
* Zaheer Chothia <zaheer.chothia@gmail.com>
@@ -247,4 +250,7 @@ In chronological order:
247250

248251
* Ye Tao <ye.tao@arm.com>
249252
* [2025-02-03] Optimize SBGEMM kernel on NEOVERSEV1
250-
* [2025-02-27] Add sbgemv_n_neon kernel
253+
* [2025-02-27] Add sbgemv_n_neon kernel
254+
255+
* Abhishek Kumar <https://github.com/abhishek-iitmadras>
256+
* [2025-04-22] Optimise dot kernel for NEOVERSE V1

Makefile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,11 @@ ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN)))
9393
echo " Fortran compiler ... $(F_COMPILER) (command line : $(FC))";\
9494
fi
9595
endif
96+
97+
ifeq ($(OSNAME), WINNT)
98+
@-$(LNCMD) $(LIBNAME) $(LIBPREFIX).$(LIBSUFFIX)
99+
endif
100+
96101
ifneq ($(OSNAME), AIX)
97102
@echo -n " Library Name ... $(LIBNAME)"
98103
else
@@ -447,7 +452,7 @@ endif
447452
@rm -f cblas.tmp cblas.tmp2
448453
@touch $(NETLIB_LAPACK_DIR)/make.inc
449454
@$(MAKE) -C $(NETLIB_LAPACK_DIR) clean
450-
@rm -f $(NETLIB_LAPACK_DIR)/make.inc $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_mangling.h
455+
@rm -f $(NETLIB_LAPACK_DIR)/make.inc
451456
@$(MAKE) -C relapack clean
452457
@rm -f *.grd Makefile.conf_last config_last.h
453458
@(cd $(NETLIB_LAPACK_DIR)/TESTING && rm -f x* *.out testing_results.txt)

Makefile.system

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -435,6 +435,11 @@ ifeq (x$(XCVER), x 15)
435435
CCOMMON_OPT += -Wl,-ld_classic
436436
FCOMMON_OPT += -Wl,-ld_classic
437437
endif
438+
ifeq (x$(XCVER), x 16)
439+
ifeq ($(F_COMPILER), GFORTRAN)
440+
override CEXTRALIB := $(filter-out(-lto_library, $(CEXTRALIB)))
441+
endif
442+
endif
438443
endif
439444

440445
ifneq (,$(findstring $(OSNAME), FreeBSD OpenBSD DragonFly))

azure-pipelines.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ jobs:
175175
- script: |
176176
brew update
177177
brew install llvm flang
178-
make TARGET=NEHALEM CC=/usr/local/opt/llvm/bin/clang FC=/usr/local/Cellar/flang/19.1.7_1/bin/flang-new NO_SHARED=1
178+
make TARGET=NEHALEM CC=/usr/local/opt/llvm/bin/clang FC=/usr/local/opt/flang/bin/flang NO_SHARED=1
179179
180180
- job: OSX_OpenMP_Clang
181181
pool:

cmake/arch.cmake

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -31,17 +31,6 @@ if (${CMAKE_C_COMPILER_ID} STREQUAL "Intel")
3131
set(CCOMMON_OPT "${CCOMMON_OPT} -wd981")
3232
endif ()
3333

34-
if (USE_OPENMP)
35-
# USE_SIMPLE_THREADED_LEVEL3 = 1
36-
# NO_AFFINITY = 1
37-
find_package(OpenMP REQUIRED)
38-
if (OpenMP_FOUND)
39-
set(CCOMMON_OPT "${CCOMMON_OPT} ${OpenMP_C_FLAGS} -DUSE_OPENMP")
40-
set(FCOMMON_OPT "${FCOMMON_OPT} ${OpenMP_Fortran_FLAGS}")
41-
endif()
42-
endif ()
43-
44-
4534
if (DYNAMIC_ARCH)
4635
if (ARM64)
4736
set(DYNAMIC_CORE ARMV8 CORTEXA53 CORTEXA57 THUNDERX THUNDERX2T99 TSV110 EMAG8180 NEOVERSEN1 THUNDERX3T110)

0 commit comments

Comments
 (0)