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
Martin Kroeker
defafd1353
Add functions for Dynamic Mode Decomposition (Reference-LAPACK PR 736)
2023-06-20 15:07:53 +02:00
Martin Kroeker
83d6ce1289
Add interfaces for Dynamic Mode Decomposition (Reference-LAPACK PR 736)
2023-06-20 14:55:26 +02:00
Martin Kroeker
b6a28adeaf
Add ?TRSYL3 (Reference-LAPACK PR 651)
2023-06-20 11:33:03 +02:00
Martin Kroeker
c3a2d407a0
Merge pull request #4048 from imzhuhl/spr_sbgemm_fix
...
Sapphire Rapids sbgemm fix
2023-06-17 20:47:09 +02:00
Martin Kroeker
d2144b2981
Add NVHPC
2023-06-09 19:01:15 +02:00
Martin Kroeker
f8c8b22740
Add NVHPC(pgf95)
2023-06-09 18:58:52 +02:00
Martin Kroeker
2993a73262
Add NVHPC(nvc)
2023-06-09 18:56:13 +02:00
Martin Kroeker
f981e37dda
Treat f95 as gfortran
2023-06-05 20:34:31 +02:00
Honglin Zhu
d96d386d13
Add CMake dynamic build for Sapphire Rapids
2023-05-20 14:13:49 +08:00
Martin Kroeker
a789211a2e
Add interfaces for [cz]unhr_col and [sd]orhr_col (Reference-LAPACK PR 827)
2023-05-18 23:56:27 +02:00
Martin Kroeker
57bdc36c84
add conditionals for BUILD_LAPACK_DEPRECATED
2023-04-11 22:38:38 +02:00
Martin Kroeker
1659750861
Add ARMV5 to CMAKE prebuild.cmake for cross-compiles ( #3959 )
...
* Add ARMV5
2023-03-26 00:22:06 +01:00
Pieter Pas
a79ae116e2
Add ARMV6 to cmake/prebuild.cmake,
...
based on cpuid_arm.c and param.h
2023-03-25 16:30:42 +01:00
Johannes Schönberger
fbfe474583
f
2023-03-19 16:23:44 +01:00
Johannes Schönberger
ec4700087e
Wrap variables in cmake/prebuild in quotes to handle spaces in paths
2023-03-19 16:09:47 +01:00
Martin Kroeker
de937b3194
Add clang option to avoid running out of registers in AVX512 assembly
2023-03-17 21:22:37 +01:00
Martin Kroeker
50c263716e
Correct DGEMM_UNROLL_M value for A53 in cross-compile
2023-03-10 11:53:24 +01:00
Martin Kroeker
8272dfc552
Handle unrecognized ASM compiler (from Arm Compiler 22.1)
2023-03-03 00:21:59 +01:00
xctan
6a0de3aa39
Add missing RISC-V architecture in arch.cmake
...
RISC-V support exists in Makefile.system but is missing in arch.cmake. This patch adds riscv64 platform support to cmake building system just like 039e27545f/Makefile.system (L830-L832) did.
2023-02-26 20:21:57 +08:00
Martin Kroeker
fa5ff7d199
slarmm/dlarmm are needed by COMPLEX/COMPLEX16-only builds too
2023-02-22 00:25:12 +01:00
Martin Kroeker
19a696f8fe
fix nested conditionals
2023-02-02 19:59:49 +01:00
Martin Kroeker
e964ebd0d0
Add compiler option for AVX512-capable Ryzen(4)
2023-02-02 19:04:05 +01:00
Martin Kroeker
afff3f5510
Fix typo that could clear EXTRALIB settings
2023-02-02 10:43:44 +01:00
Martin Kroeker
5ddcc5ffa2
Update arch.cmake
2022-12-25 10:37:39 +01:00
Martin Kroeker
18cac5a34c
SVE-enabled ARM64 targets in DYNAMIC_ARCH require a recent compiler
2022-12-25 10:25:13 +01:00
Martin Kroeker
88cd91c490
Fix stray character
2022-11-19 23:15:20 +01:00
Martin Kroeker
5ff46f4092
Add ?GELST (Reference-LAPACK PR739)
2022-11-19 22:49:31 +01:00
Martin Kroeker
e4a31c0d23
add ?LANGB interface (Reference-LAPACK PR725)
2022-11-17 18:15:04 +01:00
Martin Kroeker
258a83a642
change line endings from CRLF to LF
2022-11-16 21:57:42 +01:00
Martin Kroeker
f16aa1ce7a
Merge pull request #3821 from martin-frbg/lapack651
...
Add a BLAS3-based triangular Sylvester equation solver (Reference-LAPACK PR 651)
2022-11-16 13:59:02 +01:00
Martin Kroeker
b6d74b7fff
Add f2c-converted files for the BLAS3-based Sylvester solver
2022-11-15 16:26:44 +01:00
Martin Kroeker
bb652f65a3
Typo fix
2022-11-14 16:35:13 +01:00
Martin Kroeker
fb42a0cf8b
Add a BLAS3-based triangular Sylvester equation solver (Reference-LAPACK PR 651)
2022-11-14 14:06:50 +01:00
Martin Kroeker
90d7451df5
Add NaN check functions for trapezoidal matrices (Reference-LAPACK PR738+742)
2022-11-13 15:10:00 +01:00
Martin Kroeker
be546ec1ad
Add gcc options for Neoverse cpus
2022-11-09 11:00:41 +01:00
Martin Kroeker
747ade5adf
fix INTERFACE64/USE64BITINT reporting
2022-10-18 17:28:07 +02:00
Martin Kroeker
32566bfb44
Disable the gfortran tree vectorizer for netlib LAPACK
2022-10-13 14:04:25 +02:00
Martin Kroeker
a0a4f7c447
Add -mfma to -mavx2 for clang, and add AVX2 declaration for Zen in DYNAMIC_ARCH builds
2022-09-13 22:47:00 +02:00
Martin Kroeker
ff58e9a7f1
Merge pull request #3609 from martin-frbg/lapack3101
...
Update LAPACK/LAPACKE to Reference-LAPACK 3.10.1
2022-08-06 14:31:56 +02:00
Martin Kroeker
2bee490287
Merge pull request #3714 from martin-frbg/crosscmake
...
Add more x86_64 target definitions for CMAKE cross-compiling
2022-08-04 23:58:21 +02:00
Martin Kroeker
85fd3c4279
Support compilation with the Cray C and Fortran compilers ( #3712 )
...
* Add support for the Cray Fortran compiler
2022-08-04 20:42:18 +02:00
Martin Kroeker
3784b3d45c
Add more x86_64 target definitions for cross-compiling
2022-08-04 19:18:32 +02:00
Nursultan Zarlyk
a7ac252fd9
Add TCORE Generic in prebuild.cmake
...
During the cross-compilation on x64 host with MSVC for ARMv8, the
build fails as there is no define directives for Generic core.
2022-08-02 10:50:58 +02:00
Nursultan Zarlyk
1bb7993a97
Fix MSVC ARM64 build. Add generic kernel for ARM64
2022-06-02 16:53:54 +02:00
Martin Kroeker
5cb0d23027
Support USE_PERL fallback for gensymbol
2022-05-22 18:36:24 +02:00
Owen Rafferty
42c7a27e6b
rewrite perl scripts in universal shell
2022-05-18 19:00:15 -05:00
martin-frbg
329cdc31b3
Update LAPACK/LAPACKE to Reference-LAPACK 3.10.1
2022-04-21 20:39:29 +02:00
Martin Kroeker
18b19d135b
C_LAPACK: Fixes to make it compile with MSVC ( #3605 )
...
* Fix f2c-like support functions to compile with MSVC, and
re-enable C_LAPACK for MSVC in CMAKE
* Add MSVC&flang build to Azure CI in order to check C_LAPACK correctness
2022-04-17 17:49:38 +02:00
Martin Kroeker
b7873605d4
Use f2c translations of LAPACK when no Fortran compiler is available ( #3539 )
...
* Add C equivalents of the Fortran routines from Reference-LAPACK as fallbacks, and C_LAPACK variable to trigger their use
2022-04-09 22:38:58 +02:00
Martin Kroeker
ad4598143b
Merge pull request #3575 from mmuetzel/lapacke-win64
...
Fix LAPACKE with 64-bit indexing on Windows.
2022-03-29 20:04:04 +02:00
Martin Kroeker
abbc65cff4
Cortex X1 is only Arm8.2
2022-03-28 17:40:27 +02:00
Martin Kroeker
57dd92a662
Add initial support for ARMV9 Cortex 510/710/X1/X2
2022-03-27 15:26:42 +02:00
Markus Mützel
aeb561d234
Add support for Intel Fortran compilers.
...
Port changes from upstream Reference-LAPACK.
2022-03-25 13:37:15 +01:00
Markus Mützel
00f44bfff7
cmake: Check if Fortran compiler is usable before enabling it.
2022-01-21 13:27:17 +01:00
Martin Kroeker
a9e297e476
Fix handling of ifdef/ifndef
2022-01-09 23:31:59 +01:00
Martin Kroeker
b6b024232d
Merge pull request #3508 from snadampal/v1_n2
...
OpenBLAS: aarch64: Add neoverse-v1/n2 architecture specifics
2022-01-09 14:50:26 +01:00
Sunita Nadampalli
19c8f615dc
OpenBLAS: aarch64: Add neoverse-v1/n2 architecture specifics
2022-01-07 00:28:17 +00:00
jgillis
ea3db69faa
Fix cmake crosscompilation for core2 target
...
Missing HAVE_SSE* cmake variables cause cc.cmake to forget about `-msse*` flags
2021-12-29 22:50:20 +01:00
Rafael Cardoso Fernandes Sousa
d38110a5ce
Use CMake variables instead of as
2021-12-10 17:46:53 -06:00
Rafael Cardoso Fernandes Sousa
214fbcee15
Fix cmake for power
2021-12-09 08:28:17 -06:00
Martin Kroeker
454edd741c
Merge pull request #3425 from binebrank/arm_sve_dgemm
...
Add dgemm kernel for arm64 SVE
2021-11-26 16:14:55 +01:00
Martin Kroeker
bcfbdc81b2
Merge pull request #3459 from rafaelcfsousa/fix_cmake
...
Fix issues when building OpenBLAS with cmake
2021-11-26 15:19:24 +01:00
Bine Brank
1af73ce38e
Adapt CMake for SVE
2021-11-26 10:35:01 +01:00
Rafael Cardoso Fernandes Sousa
d5c9353f1b
Modify the order that cmake set the KERNEL variables (generic now is fallback)
2021-11-24 20:08:35 -06:00
Rafael Cardoso Fernandes Sousa
fb891f33da
Fix the cmake parser to identify more patterns
2021-11-24 14:07:28 -06:00
Martin Kroeker
a3cd36acff
Add CMAKE support for cross-compiling to MIPS32
2021-11-20 17:34:28 +01:00
Markus Mützel
de2ed66596
cmake: Set SUFFIX64 also for NOFORTRAN
2021-11-15 08:53:52 +01:00
Martin Kroeker
02ea3db8e7
Merge pull request #3404 from guowangy/spr-build
...
Initial build support for Sapphire Rapids
2021-10-17 23:05:11 +02:00
مهدي شينون (Mehdi Chinoune)
efd7ac241d
Fix MinGW/Clang 64 bits detection.
...
CMAKE_COMPILER_IS_GNUCC is only valid for GCC.
2021-10-16 08:02:27 +01:00
Wangyang Guo
3dc6052c7e
initial support for Sapphire Rapids platform
2021-10-12 01:30:40 -07:00
Martin Kroeker
e02df9fc55
Propagate BUILD_BFLOAT16 to CFLAGS
2021-09-14 16:12:27 +02:00
Martin Kroeker
1c0a8a714a
Add defaults for SBGEMV kernels
2021-09-14 16:10:58 +02:00
Martin Kroeker
af19cda65a
Add "recursive" option for IBM xlf compiler ( #3359 )
...
* Add correct "recursive" option for xlf (from reference-lapack issue 606)
2021-09-04 18:26:59 +02:00
Martin Kroeker
bec9d9f63d
Merge pull request #3335 from guowangy/small-matrix-latest
...
Add GEMM optimization for small matrix and single/double kernel for skylakex
2021-08-29 22:33:33 +02:00
cianciosa
4c766cd11f
Fix a small syntax error. A ( was accidently deleted.
2021-08-11 12:08:34 -04:00
cianciosa
c28560129f
Check the total number of arguments passed insead of if the ARGV# is defined. This fixes a problem when compling openblas as a subproject of another code.
2021-08-11 12:00:07 -04:00
Wangyang Guo
76ea8db4da
Small Matrix: enable by default for x86_64 arch
...
If no customized GEMM_SMALL_M_PERMIT kernel defined, it will just by pass to normal path.
2021-08-05 02:59:36 +00:00
Wangyang Guo
fee5abd84b
Small Matrix: support cmake build
2021-08-04 08:50:15 +00:00
gxw
0b8f7c8c10
Add cmake support for LOONGARCH64
2021-08-02 10:00:41 +08:00
Martin Kroeker
47ba85f314
Fix regex to match kernels suffixed with cpuname too
2021-07-22 17:24:15 +02:00
Martin Kroeker
30f23be0f9
Rework setting of -mfma to only apply it where necessary
2021-07-22 12:00:03 +02:00
User User-User
91e2b11d3c
add to cmake listings too
2021-06-20 15:32:42 +02:00
Martin Kroeker
13fa9f737d
Modify defines for CR and RC to work around name collision on Windows
2021-06-16 12:17:25 +02:00