Commit Graph

415 Commits

Author SHA1 Message Date
Martin Kroeker d25ee4d0f5
Fix detection of Intel ifx and apply -fp-model option to it 2024-06-14 23:58:45 +02:00
Martin Kroeker 21c0f769ef
ensure that cpu-specific -march options are always applied to icx 2024-06-14 23:54:27 +02:00
Alexander Neumann dd4505c5dd
Fix CMake warning 2024-05-30 09:04:23 +02:00
Martin Kroeker 8b4996a2d5
Override icx's default fast math mode to ensure correct NaN handling 2024-05-26 13:16:03 +02:00
Martin Kroeker 6494f432df
Fix INTERFACE64 builds on Loongarch64 2024-05-18 16:49:03 +02:00
Martin Kroeker a3f6b13bc9
remove spurious brace 2024-05-16 09:25:53 +02:00
Martin Kroeker 668f48f4fc
Use CMAKE_C_COMPILER_VERSION instead of dumpversion calls (#4698)
* Use CMAKE_C_COMPILER_VERSION throughout
2024-05-15 23:58:14 +02:00
Martin Kroeker f5c080f083
Fix CMAKE syntax in kernel file parsing of IFNEQ conditionals (#4695)
* Fix syntax in parsing of IFNEQ
2024-05-15 20:58:31 +02:00
Martin Kroeker 3d26837a35
Suppress GCC14 error exit in the f2c-converted LAPACK 2024-04-30 19:05:18 +02:00
Martin Kroeker 69aa93e34f
Fix Loongson compiler flag check 2024-04-23 21:57:42 +02:00
Martin Kroeker 015042f7b5
Fix Loongson compiler flag test 2024-04-23 21:55:57 +02:00
مهدي شينون (Mehdi Chinoune) cda55f2fd2
Don't pass `-exhaustive-register-search` directly to clang compiler
`-exhaustive-register-search` is an LLVM code generation flag that shouldn't be passed directly to clang compiler.
2024-04-06 05:54:48 +01:00
Martin Kroeker 3af736fb9d
Add support for Cortex-A76 2024-04-02 19:42:23 +02:00
Martin Kroeker 52b71a1673
Filter out FFLAGS that flang-new from LLVM18 no longer supports (#4569)
* Filter out FFLAGS that flang-new from LLVM18 no longer supports
2024-03-22 17:02:39 +01:00
Martin Kroeker 2e86faa657
Merge branch 'develop' into issue4468 2024-02-23 11:39:49 +01:00
Martin Kroeker 8fc2c2db04
Fix missing support for INTERFACE64 on ARM64 and MIPS64 2024-02-22 22:14:13 +01:00
Martin Kroeker 82b81c0bbe
Dont fail if there is no Fortran compiler 2024-02-22 22:11:50 +01:00
Martin Kroeker a0e3f77e0b
add FIXED_LIBNAME, PREFIX and SUFFIX 2024-02-15 12:17:38 +01:00
Martin Kroeker ffbfc3c692
Add libname prefix and suffix 2024-02-15 12:16:34 +01:00
Martin Kroeker 0c43c6fa99
Merge pull request #4341 from catap/openblas.pc.in
cmake/openblas.pc.in: fixed version and URL
2023-12-31 13:25:06 +01:00
Martin Kroeker e9c32ed165
Merge pull request #4384 from yetist/develop
Fix: build failed on LoongArch
2023-12-27 14:05:01 +01:00
Martin Kroeker 1106460bb3
remove redundant targets from the default ARM64 DYNAMIC_ARCH list 2023-12-25 12:29:56 +01:00
Wu Xiaotian 0baf462dbc Fix: build failed on LoongArch
According to the documentation at https://github.com/loongson/la-abi-specs/blob/release/lapcs.adoc#the-base-abi-variants, valid -mabi parameters are lp64s, lp64f, lp64d, ilp32s, ilp32f and ilp32d.
2023-12-25 16:04:43 +08:00
barracuda156 8c143331b0 PPC970: drop -mcpu=970 which seems to produce faulty code
Fixes: https://github.com/OpenMathLib/OpenBLAS/issues/4376
2023-12-15 22:56:06 +08:00
barracuda156 981e315b30 cc.cmake: use -force_cpusubtype_ALL for Darwin PPC 2023-12-14 12:01:31 +08:00
barracuda156 a8d3619f65 cc.cmake: add optflags for G5 and G4 kernels 2023-12-13 19:42:56 +08:00
barracuda156 c732f275a2 system_check.cmake: fix arch detection for Darwin PowerPC 2023-12-11 21:05:31 +08:00
Kirill A. Korinsky 08fde5ebd2
Use 64bit build on `CMAKE_SYSTEM_PROCESSOR=i386` on Darwin
Here a bit tricky things.

A value `CMAKE_SYSTEM_PROCESSOR` is came from output of `uname -m` which
migth be 32bit with 64bit building applicaiton.

So, for that case use `CMAKE_SIZEOF_VOID_P` to detect the target.

See https://trac.macports.org/ticket/68488
2023-11-30 21:24:58 +00:00
Kirill A. Korinsky 01c7010543
cmake/openblas.pc.in: fixed version and URL 2023-11-27 14:51:58 +00:00
Martin Kroeker 5bf87c86f5
Implement truncated QR with pivoting (Reference-LAPACK PR 891) 2023-11-15 12:10:20 +01:00
Martin Kroeker 58427ff74d
Deprecate ?GELQS and ?GEQRS from TESTING/LIN (Reference-LAPACK PR 900) (#4307)
* Move ?GELQS and ?GEQRS from TESTING/LIN to DEPRECATED (Reference-LAPACK PR 900)

* Add f2c-converted versions of ?GELQS and ?GEQRS
2023-11-12 10:54:39 +01:00
Martin Kroeker 49689fbef7
Add support for compiling SVE kernels with the NVIDIA HPC compiler 2023-08-25 17:11:04 +02:00
Martin Kroeker 562ef5fdca
Merge pull request #4169 from felixonmars/patch-1
Use defined variable for riscv64 in arch.cmake
2023-08-12 17:20:56 +02:00
Martin Kroeker 0e5d56ae4a
Merge pull request #4170 from felixonmars/patch-2
Fix 64-bit fortran options for riscv64
2023-08-12 09:21:05 +02:00
Markus Mützel 57256623f4 fc.cmake: Add support for LLVM Flang. 2023-08-05 13:16:06 +02:00
Felix Yan f5506b002c
Add 64-bit flag on INTERFACE64 only 2023-07-28 16:19:14 +03:00
Felix Yan 4ed6414c17
Fix 64-bit fortran options for riscv64
64-bit builds are currently broken without this flag.

Makefiles have done this already: 5720fa02c5/Makefile.system (L831)
2023-07-28 04:53:27 +03:00
Felix Yan 007cd834c1
Use defined variable for riscv64 in arch.cmake
It's defined in #4137
2023-07-28 04:50:16 +03:00
Chris Sidebottom f971ef55f2 Add ARMV8SVE to AArch64 Dynamic Dispatch
In order to enable support for future cores which have similar tunings
(in this case I'm doing this for the Arm(R) Neoverse(TM) V2 core), this generically detects SVE support and enables it. This should better manage the size and complexity of dynamic dispatch rather than just copy pasting the same parameters.

To make `ARMV8SVE` more representive of the common 128-bit SVE case,
I've split it and similar parameters from A64FX which has the wider
512-bit SVE.
2023-07-25 18:35:15 +01:00
Martin Kroeker b61e64da6f
Merge pull request #4142 from exyntech/armv8-as-arm64
Fix armv8 detection in system_check.cmake
2023-07-15 23:15:49 +02:00
Martin Kroeker f82a197143
Merge pull request #4137 from felixonmars/patch-1
Fix riscv64 detection in system_check.cmake
2023-07-15 19:41:06 +02:00
Andy Mroczkowski 45b2cd2fb2 treat armv8 CMAKE_SYSTEM_PROCESSOR as arm64
The cmake scripts incorrectly treated armv8 as 32-bit arm, causing
compilation issues. This just adds 'armv8' to the arm64 condition check.
2023-07-12 09:37:45 -04:00
Martin Kroeker 35dedb68ce
Add C versions of C/ZRSCL 2023-07-11 17:07:30 +02:00
Felix Yan a721fccfdc
Fix riscv64 detection in system_check.cmake 2023-07-11 16:34:20 +03:00
Martin Kroeker 22ad23abb1
Merge pull request #4126 from martin-frbg/lapack839
Add C/ZRSCL for reciprocal scaling of a complex vector (Reference-LAPACK PR 839)
2023-07-10 01:49:33 +02:00
Martin Kroeker e3277e134c
Add CRSCL/ZRSCL (Reference-LAPACK PR 839) 2023-07-05 14:22:59 +02:00
Martin Kroeker 2f9f70584e
Fix target list syntax for ARM64 DYNAMIC_ARCH 2023-07-05 09:48:54 +02:00
Martin Kroeker ac698cedad
Add compiler options for ARM64 SVE targets in DYNAMIC_ARCH builds 2023-07-05 09:47:49 +02:00
Martin Kroeker fa6d06359a
correct list placement of zgedmd/zgedmdq 2023-06-21 17:17:31 +02:00
Martin Kroeker 2bfd7ff126
Add dummy C sources for ?GEDMD 2023-06-20 21:39:29 +02:00