Commit Graph

426 Commits

Author SHA1 Message Date
moluopro ecc04e57cf Fix RISC-V GEMM/GEMV forwarding in Make builds 2026-08-03 22:05:43 +08:00
Martin Kroeker b080247a21
Revert "Mark temporaries as volatile to avoid SIGBUS in multithreaded builds with gcc15+ on 32bit FreeBSD/x86" 2026-07-26 22:51:58 +02:00
Martin Kroeker 63ad298a67
Merge branch 'develop' into attrib-hidden 2026-07-21 20:00:16 +02:00
Martin Kroeker cefdaed87c
translate BSD's i386 hostarch name and automatically set BINARY=32 for it 2026-07-16 18:30:17 +02:00
Martin Kroeker 8af8d8f4b6
Merge branch 'develop' into jn/build-exe 2026-07-08 16:39:07 +02:00
Martin Kroeker aae00921a9
Fix conditional 2026-06-24 00:19:32 +02:00
Martin Kroeker 3ae1586d3f
Add tool prefix to symbols when compiling with the fil-c memory checker 2026-06-23 21:08:15 +02:00
Martin Kroeker 3dc0ba50e2
Merge pull request #5812 from pkubaj/patch-4
Makefile.system: -lm is necessary on power as well
2026-05-15 17:01:02 +02:00
Piotr Kubaj 9cb7d3932f
Makefile.system: -lm is necessary on power as well 2026-05-14 09:41:52 +00:00
Piotr Kubaj 1dc25c14cd
Makefile.system: when Clang is used, check if gfortran is used
At least on power, GCCVERSIONGT4 is checked for when gfortran is used, like at Makefile.power:59
2026-05-06 09:52:44 +00:00
Martin Kroeker 525070fdcd
Reduce the default list of DYNAMIC_ARCH targets for ARM64-based Apple systems 2026-05-02 19:51:08 +02:00
Martin Kroeker 3b23194778
Map 32bit ZEN to NEHALEM rather than old BARCELONA 2026-05-01 23:15:38 +02:00
Martin Kroeker a90ffae6b2
Automate use of MAKE_NB_JOBS=-1 to avoid adding a conflicting job count entry to MAKEFLAGS 2026-04-25 14:14:34 +02:00
Martin Kroeker 983fca52d5
Merge branch 'develop' into jn/build-exe 2026-03-23 18:59:02 +01:00
Matti Picus a5eeb2bb08 move cflag modification in Makefile and fixup lapack c compilation 2026-02-05 21:24:33 +11:00
Matti Picus fc243a36e8 cleanup, set '-fvisibility=hidden' flag 2026-02-05 06:31:18 +11:00
Martin Kroeker 5133aac055
Make VORTEXM4 available in DYNAMIC_ARCH on Apple 2026-01-15 16:26:03 +01:00
Jameson Nash 7414e363f0 Add $(EXE) suffix to executables in Makefiles
Define EXE variable in Makefile.system (set to .exe on Windows,
empty otherwise) and update all test executables to use it for
Windows compatibility.

- Makefile.system: Add EXE variable definition
- test/Makefile: Update all executables with $(EXE) suffix
- ctest/Makefile: Update all executables with $(EXE) suffix
- utest/Makefile: Update UTESTBIN and UTESTEXTBIN with $(EXE) suffix
- Makefile.install: Update install_tests target with $(EXE) suffix
- .gitignore: Add *.exe pattern

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 14:49:34 -05:00
Martin Kroeker ea85b6696f
Merge branch 'OpenMathLib:develop' into issue5414 2025-11-23 10:14:07 +01:00
Jan André Reuter ccef6ccde7 Recognize -fdefault-integer-8 for LLVMs flang
Signed-off-by: Jan André Reuter <jan@zyten.de>
2025-11-18 19:19:15 +01:00
Martin Kroeker 1b591ea4ed
export HAVE_SME setting and exclude VortexM4 from DYNAMIC_ARCH if gcc-compiled 2025-10-19 13:49:26 -07:00
Martin Kroeker fc516af155
Merge branch 'develop' into issue5414 2025-10-01 14:12:59 -07:00
Chris Marsh c1f607c43c
fix `-lto_library` filtering for apple-clang + gfortran on sdk26 (#5474)
* ensure filter-out applies to subsequent sdk versions
2025-09-30 16:28:37 +02:00
Martin Kroeker 1c7251ca20
remove the -llto_library option for any osx fortran compiler 2025-09-02 18:36:02 +02:00
Martin Kroeker ccfd0170fb
Enable SME on MacOS and add VORTEXM4 to DYNAMIC_ARCH list 2025-08-18 01:50:13 -07:00
abhishek-fujitsu 4c8dcb3a8f Darwin/arm64: disable SVE/SME and fix gfortran link path 2025-07-26 16:59:46 +05:30
abhishek-fujitsu 05fc88180c ARM64: Enable bfloat16 kernels by default 2025-07-25 11:08:22 +05:30
Chris Sidebottom 2c3cdaf74e Optimized BGEMV for NEOVERSEV1 target
- Adds bgemv T based off of sbgemv T kernel
- Adds bgemv N which is slightly alterated to not use Y as an
accumulator due to the output being bf16 which results in loss of
precision
- Enables BGEMM_GEMV_FORWARD to proxy BGEMM to BGEMV with new kernels
2025-07-23 10:51:41 +01:00
Chris Sidebottom f95e7b0e32 Add infrastructure for BGEMM
Setting up all the infrastructure for BGEMM support in OpenBLAS, hopefully I found all the right places.

Derived mostly from the previous work done in https://github.com/OpenMathLib/OpenBLAS/pull/5287

Co-authored-by: Ye Tao <ye.tao@arm.com>
2025-07-08 16:22:41 +01:00
Martin Kroeker d96daa220d
Merge pull request #5290 from Srangrang/develop
Add support for FP16 to openBLAS and shgemm on RISCV
2025-06-24 23:10:15 +02:00
Martin Kroeker 12591caa91
Merge pull request #5334 from azuresky01/develop
Fix INTERFACE64 builds on Loongarch64 with LLVM
2025-06-24 16:09:25 +02:00
azuresky01 8953ba9c2f
Fix INTERFACE64 builds on Loongarch64 with LLVM
fix https://github.com/OpenMathLib/OpenBLAS/issues/5331
2025-06-24 14:27:15 +08:00
davidz-ampere be68ef03b4 Add support for Ampere processors 2025-06-15 22:00:40 -04:00
Srangrang ec14e1648c fix: resolve non-RISCV host build failed issue
- adjust interface to disable "small matrix" pathway
- separate HFLOAT16 from BFLOAT16
- remove SHGEMM_UNROLL_M and SHGEMM_UNROLL_N equal conditions

Related to PR#5290
Co-authored-by Martin
2025-06-15 20:25:15 +08:00
Srangrang 4e1a381e5b fix: resolve the compilation failure without zfh instruction
- modify the macro conditions in Makefile.system
- Delete development test code

Related to issue#5279
2025-06-04 20:00:12 +08:00
gkdddd 670ec6f757 Added shgemm_kernel_8x8 for RISCV64_ZVL128B and shgemm_kernel_16x8 for RISCV64_ZVL256B
Added HFLOAT16 support for RISCV64
Added shgemm_kernel_8x8 for RISCV64_ZVL128B and shgemm_kernel_16x8 for RISCV64_ZVL256B based on HFLOAT16
The instruction sets used are ZVFH and ZFH, which need to be supported by RVV1.0

Related to issue #5279
Co-authored-by Linjin Li <linjin_li@163.com>
2025-06-03 20:14:30 +08:00
Srangrang 0a967797a1 Add FP16 support for RISCV 2025-05-27 14:34:57 +08:00
Ye Tao 7321444660 enable sbgemm to be forward to sbgemv on arm64 2025-05-12 15:37:32 +00:00
Harmen Stoppels 51ba70f47b test_potrs.c: remove pragma darwin-aarch64 support
Using GCC 14.2.0 on Darwin, the pragma ultimately causes a linker error
"ld: invalid r_symbolnum=". The current workaround is to use the old
linker, but (a) it's deprecated and (b) it can produce libraries that
are subsequently not linkable with the newer linker in dependents: the
new ld64 does not link to libraries with duplicate rpaths created by the
classic linker.
2025-04-10 15:20:34 +02:00
Martin Kroeker 1ed962d259
Fix compilation with xcode16.3/clang17/gcc14 2025-04-06 10:44:48 -07:00
Vaisakh K V f66ca05b31
Merge branch 'develop' into topic/sgemm_direct_sme1 2025-02-13 14:54:37 +05:30
Vaisakh K V d23eb3b93e Support for SME1 based sgemm_direct kernel for cblas_sgemm level 3 API
* Added ARMV9SME target
* Added SGEMM_DIRECT kernel based on SME1
2025-02-13 14:51:21 +05:30
Martin Kroeker c1258662db
Merge branch 'OpenMathLib:develop' into m3m_exprec 2024-12-30 15:58:15 +01:00
Martin Kroeker 9db51f790a
Remove any optimization flags from DEBUG builds on POWER architecture 2024-11-17 23:19:58 +01:00
Martin Kroeker d04686acd8
Re-enable the EXPRECISION option for non-Windows x86/x86_64 2024-11-14 14:09:01 -08:00
Caroline Newcombe 760bf7aa37 Update Fortran return for complex data types (Cray and Nvidia compilers) 2024-11-13 14:05:20 -06:00
Chip Kerchner 36bd3eeddf Vectorize BF16 GEMV (VSX & MMA). Use GEMM_GEMV_FORWARD_BF16 (for Power). 2024-10-13 13:46:11 -05:00
Martin Kroeker a492181665
filter out Loongarch -mabi options for flang-new 2024-10-03 15:58:47 +02:00
Martin Kroeker a1073f5eed
Merge pull request #4900 from XiWeiGu/la64_core_rename
LoongArch64: Rename core
2024-10-01 15:29:16 +02:00
gxw 48698b2b1d LoongArch64: Rename core
Use microarchitecture name instead of meaningless strings to name the core,
the legacy core is still retained.
1. Rename LOONGSONGENERIC to LA64_GENERIC
2. Rename LOONGSON3R5 to LA464
3. Rename LOONGSON2K1000 to LA264
2024-09-29 09:35:21 +08:00