Compare commits

...

37 Commits
master ... f38

Author SHA1 Message Date
Fedora Release Engineering 108e16551f Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 22:44:37 +00:00
Florian Weimer 5f27d51ceb Apply upstream patches to support building in stricter C99 mode
Related to:

  <https://fedoraproject.org/wiki/Changes/PortingToModernC>
  <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
2022-11-18 15:41:55 +01:00
Honza Horak ba2ad36288 Adding tmt test plan as ci.fmf 2022-08-29 13:01:26 +02:00
Honza Horak 219f52b0f1 Re-add flags for tests
The patch was removed as part of rebase to 0.3.19 (4720c1464), but only
half of the patch was included upstream. The flags added to tests seem
to be still valid for the current version.
2022-08-26 09:55:38 +02:00
Honza Horak 3967337978 Fix SBGEMM test to work with INTERFACE64
Upstream issue: https://github.com/xianyi/OpenBLAS/issues/3738
Upstream fix: https://github.com/xianyi/OpenBLAS/pull/3718

Resolves: #2120974
2022-08-25 16:48:27 +02:00
aekoroglu 0b19ade739 update to 0.3.21 2022-08-08 20:14:00 +03:00
Fedora Release Engineering b3e0dd98f5 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 01:59:41 +00:00
Susi Lehtola 6399f178dd Update to 0.3.20. 2022-03-08 18:17:21 +00:00
Fedora Release Engineering 3ef1d5e9d5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 22:17:47 +00:00
Susi Lehtola 95a8f0fa3e Fix BZ#1982856. 2022-01-03 21:25:45 +00:00
Susi Lehtola 4720c14646 Update to 0.3.19 2021-12-20 00:44:17 +00:00
Susi Lehtola edcce2ff97 Update to 0.3.18. 2021-10-11 13:10:33 +00:00
Fedora Release Engineering cedd2e10d7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 17:09:52 +00:00
Susi Lehtola ad35a6455c Update to 0.3.17 2021-07-19 18:05:37 +00:00
Susi Lehtola 9e7216f7d0 Update to 0.3.16. 2021-07-12 14:38:59 +00:00
Susi Lehtola dfacab6ca1 Update to 0.3.15 2021-05-03 16:37:10 +00:00
Susi Lehtola cbeaa9d626 Update to 0.3.14. 2021-03-18 18:04:04 +01:00
Fedora Release Engineering 6573a842f1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 22:26:40 +00:00
Tom Stellard 4961e05b60 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-07 06:28:12 +00:00
Susi Lehtola 516beadbb3 Update to 0.3.12, which should fix the FTBFS. 2020-10-25 19:48:32 +01:00
Susi Lehtola ebe26476b5 Try another way suggested by upstream 2020-10-19 18:21:59 +02:00
Susi Lehtola 860d1cd580 Try to fix ftbfs as instructed by upstream 2020-10-19 16:15:27 +02:00
Susi Lehtola 7d66ff068d Try to fix ftbfs as instructed by upstream 2020-10-19 16:12:22 +02:00
Susi Lehtola 6b5c3faa04 Update patch 2020-10-18 18:22:44 +02:00
Susi Lehtola b114a34fb3 Update patch 2020-10-18 18:20:44 +02:00
Susi Lehtola 209524874e Update to 0.3.11. 2020-10-18 18:14:52 +02:00
Susi Lehtola 6ba14f0bda Fix for BZ #1878449 2020-09-18 11:21:12 +02:00
Susi Lehtola dc5c41fc4e Change order of patch application 2020-08-29 14:48:35 +02:00
Susi Lehtola 6b70620c6f Drop obsolete patches 2020-08-29 14:48:21 +02:00
Susi Lehtola af61eb4146 Fix #1873667 2020-08-29 14:11:07 +02:00
Susi Lehtola 5641975e5c Obsolete Rblas package. 2020-08-14 12:49:47 +02:00
Jeff Law a07fac9b19 Disable LTO 2020-08-11 10:49:26 -06:00
Susi Lehtola 766d57e663 Include upstream patch 2672 by request of Marius Hillenbrand. 2020-07-28 11:57:13 +02:00
Susi Lehtola 4ab33d8758 This should fix the build on s390x. 2020-06-16 19:36:41 +02:00
Susi Lehtola a23aac5aed Remove DYNAMIC_OLDER=1 on s390x to see what happens. 2020-06-16 10:54:24 +02:00
Susi Lehtola a1a0f15fec Update to 0.3.10. 2020-06-15 11:46:43 +02:00
Susi Lehtola c0e5ad7d26 Toggle USE_LOCKING in the serial libraries for safety under threaded code. 2020-05-28 10:01:17 +02:00
16 changed files with 892 additions and 334 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

23
.gitignore vendored
View File

@ -1,21 +1,2 @@
/v0.2.5.tar.gz
/v0.2.7.tar.gz
/v0.2.8.tar.gz
/v0.2.9.tar.gz
/v0.2.10.tar.gz
/v0.2.11.tar.gz
/v0.2.12.tar.gz
/v0.2.13.tar.gz
/v0.2.14.tar.gz
/v0.2.15.tar.gz
/v0.2.16.tar.gz
/openblas-0.2.17.tar.gz
/v0.2.18.tar.gz
/v0.2.19.tar.gz
/v0.3.0.tar.gz
/v0.3.1.tar.gz
/openblas-0.3.2.tar.gz
/openblas-0.3.6.tar.gz
/openblas-0.3.7.tar.gz
/openblas-0.3.8.tar.gz
/openblas-0.3.9.tar.gz
/v*.tar.gz
/openblas-*.tar.gz

View File

@ -1,73 +0,0 @@
From ee2e758278b5d82b7242f505ea694f082ef65879 Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Fri, 13 Mar 2020 20:34:13 +0100
Subject: [PATCH] Move declarations of lapack_complex_custom types outside the
extern C
fixes #2510
---
lapack-netlib/LAPACKE/include/lapack.h | 44 ++++++++++++++------------
1 file changed, 23 insertions(+), 21 deletions(-)
diff --git a/lapack-netlib/LAPACKE/include/lapack.h b/lapack-netlib/LAPACKE/include/lapack.h
index 0a6226fe4..36e53ec24 100644
--- a/lapack-netlib/LAPACKE/include/lapack.h
+++ b/lapack-netlib/LAPACKE/include/lapack.h
@@ -12,27 +12,6 @@
#include <stdlib.h>
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*----------------------------------------------------------------------------*/
-#ifndef lapack_int
-#define lapack_int int
-#endif
-
-#ifndef lapack_logical
-#define lapack_logical lapack_int
-#endif
-
-/* f2c, hence clapack and MacOS Accelerate, returns double instead of float
- * for sdot, slange, clange, etc. */
-#if defined(LAPACK_F2C)
- typedef double lapack_float_return;
-#else
- typedef float lapack_float_return;
-#endif
-
/* Complex types are structures equivalent to the
* Fortran complex types COMPLEX(4) and COMPLEX(8).
*
@@ -88,6 +67,29 @@ extern "C" {
#endif /* LAPACK_COMPLEX_CUSTOM */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*----------------------------------------------------------------------------*/
+#ifndef lapack_int
+#define lapack_int int
+#endif
+
+#ifndef lapack_logical
+#define lapack_logical lapack_int
+#endif
+
+/* f2c, hence clapack and MacOS Accelerate, returns double instead of float
+ * for sdot, slange, clange, etc. */
+#if defined(LAPACK_F2C)
+ typedef double lapack_float_return;
+#else
+ typedef float lapack_float_return;
+#endif
+
+
/* Callback logical functions of one, two, or three arguments are used
* to select eigenvalues to sort to the top left of the Schur form.
* The value is selected if function returns TRUE (non-zero). */

View File

@ -1,140 +0,0 @@
diff -up OpenBLAS-0.2.10/exports/gensymbol.lapacke OpenBLAS-0.2.10/exports/gensymbol
--- OpenBLAS-0.2.10/exports/gensymbol.lapacke 2014-07-16 12:04:30.000000000 +0200
+++ OpenBLAS-0.2.10/exports/gensymbol 2014-07-16 19:35:48.856855925 +0200
@@ -175,7 +175,7 @@
sggglm, sgghrd, sgglse, sggqrf,
sggrqf, sggsvd, sggsvp, sgtcon, sgtrfs, sgtsv,
sgtsvx, sgttrf, sgttrs, sgtts2, shgeqz,
- shsein, shseqr, slabrd, slacon, slacn2,
+ shsein, shseqr, slabrd, slacon,
slaein, slaexc, slag2, slags2, slagtm, slagv2, slahqr,
slahrd, slahr2, slaic1, slaln2, slals0, slalsa, slalsd,
slangb, slange, slangt, slanhs, slansb, slansp,
@@ -256,7 +256,7 @@
chpevx, chpgst, chpgv, chpgvd, chpgvx, chprfs, chpsv,
chpsvx,
chptrd, chptrf, chptri, chptrs, chsein, chseqr, clabrd,
- clacgv, clacon, clacn2, clacp2, clacpy, clacrm, clacrt, cladiv,
+ clacgv, clacon, clacpy, clacrm, clacrt, cladiv,
claed0, claed7, claed8,
claein, claesy, claev2, clags2, clagtm,
clahef, clahqr,
@@ -323,7 +323,7 @@
dggglm, dgghrd, dgglse, dggqrf,
dggrqf, dggsvd, dggsvp, dgtcon, dgtrfs, dgtsv,
dgtsvx, dgttrf, dgttrs, dgtts2, dhgeqz,
- dhsein, dhseqr, dlabrd, dlacon, dlacn2,
+ dhsein, dhseqr, dlabrd, dlacon,
dlaein, dlaexc, dlag2, dlags2, dlagtm, dlagv2, dlahqr,
dlahrd, dlahr2, dlaic1, dlaln2, dlals0, dlalsa, dlalsd,
dlangb, dlange, dlangt, dlanhs, dlansb, dlansp,
@@ -398,7 +398,7 @@
zhpevx, zhpgst, zhpgv, zhpgvd, zhpgvx, zhprfs, zhpsv,
zhpsvx,
zhptrd, zhptrf, zhptri, zhptrs, zhsein, zhseqr, zlabrd,
- zlacgv, zlacon, zlacn2, zlacp2, zlacpy, zlacrm, zlacrt, zladiv,
+ zlacgv, zlacon, zlacpy, zlacrm, zlacrt, zladiv,
zlaed0, zlaed7, zlaed8,
zlaein, zlaesy, zlaev2, zlags2, zlagtm,
zlahef, zlahqr,
@@ -845,10 +845,6 @@
LAPACKE_chseqr_work,
LAPACKE_clacgv,
LAPACKE_clacgv_work,
- LAPACKE_clacn2,
- LAPACKE_clacn2_work,
- LAPACKE_clacp2,
- LAPACKE_clacp2_work,
LAPACKE_clacpy,
LAPACKE_clacpy_work,
LAPACKE_clag2z,
@@ -984,8 +980,6 @@
LAPACKE_csyrfs,
LAPACKE_csyrfs_work,
LAPACKE_csysv,
- LAPACKE_csysv_rook,
- LAPACKE_csysv_rook_work,
LAPACKE_csysv_work,
LAPACKE_csysvx,
LAPACKE_csysvx_work,
@@ -1259,8 +1253,6 @@
LAPACKE_dhsein_work,
LAPACKE_dhseqr,
LAPACKE_dhseqr_work,
- LAPACKE_dlacn2,
- LAPACKE_dlacn2_work,
LAPACKE_dlacpy,
LAPACKE_dlacpy_work,
LAPACKE_dlag2s,
@@ -1510,8 +1502,6 @@
LAPACKE_dsyrfs,
LAPACKE_dsyrfs_work,
LAPACKE_dsysv,
- LAPACKE_dsysv_rook,
- LAPACKE_dsysv_rook_work,
LAPACKE_dsysv_work,
LAPACKE_dsysvx,
LAPACKE_dsysvx_work,
@@ -1749,8 +1739,6 @@
LAPACKE_shsein_work,
LAPACKE_shseqr,
LAPACKE_shseqr_work,
- LAPACKE_slacn2,
- LAPACKE_slacn2_work,
LAPACKE_slacpy,
LAPACKE_slacpy_work,
LAPACKE_slag2d,
@@ -1996,8 +1984,6 @@
LAPACKE_ssyrfs,
LAPACKE_ssyrfs_work,
LAPACKE_ssysv,
- LAPACKE_ssysv_rook,
- LAPACKE_ssysv_rook_work,
LAPACKE_ssysv_work,
LAPACKE_ssysvx,
LAPACKE_ssysvx_work,
@@ -2321,10 +2307,6 @@
LAPACKE_zhseqr_work,
LAPACKE_zlacgv,
LAPACKE_zlacgv_work,
- LAPACKE_zlacn2,
- LAPACKE_zlacn2_work,
- LAPACKE_zlacp2,
- LAPACKE_zlacp2_work,
LAPACKE_zlacpy,
LAPACKE_zlacpy_work,
LAPACKE_zlag2c,
@@ -2460,8 +2442,6 @@
LAPACKE_zsyrfs,
LAPACKE_zsyrfs_work,
LAPACKE_zsysv,
- LAPACKE_zsysv_rook,
- LAPACKE_zsysv_rook_work,
LAPACKE_zsysv_work,
LAPACKE_zsysvx,
LAPACKE_zsysvx_work,
@@ -2705,20 +2685,20 @@
#These function may need 2 underscores.
@lapack_embeded_underscore_objs=(xerbla_array, chla_transtype, slasyf_rook,
ssytf2_rook, ssytrf_rook, ssytrs_rook,
- ssytri_rook, ssycon_rook, ssysv_rook,
+ ssytri_rook, ssycon_rook,
chetf2_rook, chetrf_rook, chetri_rook,
chetrs_rook, checon_rook, chesv_rook,
clahef_rook, clasyf_rook,
csytf2_rook, csytrf_rook, csytrs_rook,
- csytri_rook, csycon_rook, csysv_rook,
+ csytri_rook, csycon_rook,
dlasyf_rook,
dsytf2_rook, dsytrf_rook, dsytrs_rook,
- dsytri_rook, dsycon_rook, dsysv_rook,
+ dsytri_rook, dsycon_rook,
zhetf2_rook, zhetrf_rook, zhetri_rook,
zhetrs_rook, zhecon_rook, zhesv_rook,
zlahef_rook, zlasyf_rook,
zsytf2_rook, zsytrf_rook, zsytrs_rook,
- zsytri_rook, zsycon_rook, zsysv_rook,
+ zsytri_rook, zsycon_rook,

View File

@ -1,18 +0,0 @@
diff -up OpenBLAS-0.2.19/Makefile.tests OpenBLAS-0.2.19/Makefile
--- OpenBLAS-0.2.19/Makefile.tests 2016-09-01 05:58:42.000000000 +0200
+++ OpenBLAS-0.2.19/Makefile 2016-09-01 22:52:27.092706000 +0200
@@ -110,11 +110,11 @@ tests :
ifndef NOFORTRAN
touch $(LIBNAME)
ifndef NO_FBLAS
- $(MAKE) -C test all
- $(MAKE) -C utest all
+ $(MAKE) -C test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
+ $(MAKE) -C utest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
ifndef NO_CBLAS
- $(MAKE) -C ctest all
+ $(MAKE) -C ctest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
endif

View File

@ -0,0 +1,26 @@
diff -up OpenBLAS-0.3.21/Makefile.fixtests OpenBLAS-0.3.21/Makefile
--- OpenBLAS-0.3.21/Makefile.fixtests 2022-08-26 07:37:06.257272957 +0200
+++ OpenBLAS-0.3.21/Makefile 2022-08-26 07:37:53.168414307 +0200
@@ -147,18 +147,18 @@ tests :
ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN)))
touch $(LIBNAME)
ifndef NO_FBLAS
- $(MAKE) -C test all
+ $(MAKE) -C test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
endif
ifneq ($(ONLY_CBLAS), 1)
- $(MAKE) -C utest all
+ $(MAKE) -C utest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
ifneq ($(NO_CBLAS), 1)
ifneq ($(ONLY_CBLAS), 1)
- $(MAKE) -C ctest all
+ $(MAKE) -C ctest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
ifeq ($(CPP_THREAD_SAFETY_TEST), 1)
- $(MAKE) -C cpp_thread_test all
+ $(MAKE) -C cpp_thread_test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
endif

View File

@ -0,0 +1,64 @@
From f703846ad9400a8ea175cb8dd43e18c152aeab93 Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Sat, 13 Aug 2022 11:38:27 +0200
Subject: [PATCH] Add function prototypes
Content-type: text/plain
---
exports/gensymbol | 16 ++++++++++++++++
exports/gensymbol.pl | 12 ++++++++++++
2 files changed, 28 insertions(+)
diff --git a/exports/gensymbol b/exports/gensymbol
index 83222a21..f05de626 100755
--- a/exports/gensymbol
+++ b/exports/gensymbol
@@ -4000,6 +4000,22 @@ case "$p1" in
no_underscore_objs="$no_underscore_objs $misc_common_objs"
printf 'int main(void){\n'
+ for obj in $underscore_objs; do
+ [ "$obj" != "xerbla" ] && printf 'extern void %s%s%s%s();\n' \
+ "$symbolprefix" "$obj" "$bu" "$symbolsuffix"
+ done
+
+ for obj in $need_2underscore_objs; do
+ printf 'extern void %s%s%s%s%s();\n' \
+ "$symbolprefix" "$obj" "$bu" "$bu" "$symbolsuffix"
+ done
+
+ for obj in $no_underscore_objs; do
+ printf 'extern void %s%s%s();\n' \
+ "$symbolprefix" "$obj" "$symbolsuffix"
+ done
+
+ printf '\n'
for obj in $underscore_objs; do
[ "$obj" != "xerbla" ] && printf '%s%s%s%s();\n' \
"$symbolprefix" "$obj" "$bu" "$symbolsuffix"
diff --git a/exports/gensymbol.pl b/exports/gensymbol.pl
index ac62bc05..e38a3cc8 100644
--- a/exports/gensymbol.pl
+++ b/exports/gensymbol.pl
@@ -3955,6 +3955,18 @@ if ($ARGV[0] eq "linktest") {
@no_underscore_objs = (@no_underscore_objs, @misc_common_objs);
print "int main(void){\n";
+ foreach $objs (@underscore_objs) {
+ print "extern void ", $symbolprefix, $objs, $bu, $symbolsuffix, "();\n" if $objs ne "xerbla";
+ }
+
+ foreach $objs (@need_2underscore_objs) {
+ print "extern void ", $symbolprefix, $objs, $bu, $bu, $symbolsuffix, "();\n";
+ }
+
+ foreach $objs (@no_underscore_objs) {
+ print "extern void ", $symbolprefix, $objs, $symbolsuffix, "();\n";
+ }
+
foreach $objs (@underscore_objs) {
print $symbolprefix, $objs, $bu, $symbolsuffix, "();\n" if $objs ne "xerbla";
}
--
2.37.3

510
openblas-0.3.21-c99-2.patch Normal file
View File

@ -0,0 +1,510 @@
From 515cf269291bec0d43651fe7bf99a71fb074a0ad Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Wed, 14 Sep 2022 11:48:36 +0200
Subject: [PATCH] Fix pointer/integer argument mismatch in calls to pow()
Content-type: text/plain
---
lapack-netlib/SRC/claed0.c | 4 ++--
lapack-netlib/SRC/claed7.c | 4 ++--
lapack-netlib/SRC/clalsa.c | 6 +++---
lapack-netlib/SRC/cstedc.c | 4 ++--
lapack-netlib/SRC/dlaed0.c | 4 ++--
lapack-netlib/SRC/dlaed7.c | 4 ++--
lapack-netlib/SRC/dlaeda.c | 8 ++++----
lapack-netlib/SRC/dlalsa.c | 6 +++---
lapack-netlib/SRC/dlasd0.c | 2 +-
lapack-netlib/SRC/dlasda.c | 4 ++--
lapack-netlib/SRC/dstedc.c | 4 ++--
lapack-netlib/SRC/slaed0.c | 4 ++--
lapack-netlib/SRC/slaed7.c | 4 ++--
lapack-netlib/SRC/slaeda.c | 8 ++++----
lapack-netlib/SRC/slalsa.c | 6 +++---
lapack-netlib/SRC/slasd0.c | 2 +-
lapack-netlib/SRC/slasda.c | 4 ++--
lapack-netlib/SRC/sstedc.c | 4 ++--
lapack-netlib/SRC/zlaed0.c | 4 ++--
lapack-netlib/SRC/zlaed7.c | 4 ++--
lapack-netlib/SRC/zlalsa.c | 6 +++---
lapack-netlib/SRC/zstedc.c | 4 ++--
22 files changed, 50 insertions(+), 50 deletions(-)
diff --git a/lapack-netlib/SRC/claed0.c b/lapack-netlib/SRC/claed0.c
index 21e40839..2b696508 100644
--- a/lapack-netlib/SRC/claed0.c
+++ b/lapack-netlib/SRC/claed0.c
@@ -796,10 +796,10 @@ L10:
temp = log((real) (*n)) / log(2.f);
lgn = (integer) temp;
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
iprmpt = indxq + *n + 1;
diff --git a/lapack-netlib/SRC/claed7.c b/lapack-netlib/SRC/claed7.c
index 49fc9ed4..1eaa7e9c 100644
--- a/lapack-netlib/SRC/claed7.c
+++ b/lapack-netlib/SRC/claed7.c
@@ -864,11 +864,11 @@ f"> */
/* Form the z-vector which consists of the last row of Q_1 and the */
/* first row of Q_2. */
- ptr = pow_ii(&c__2, tlvls) + 1;
+ ptr = pow_ii(c__2, *tlvls) + 1;
i__1 = *curlvl - 1;
for (i__ = 1; i__ <= i__1; ++i__) {
i__2 = *tlvls - i__;
- ptr += pow_ii(&c__2, &i__2);
+ ptr += pow_ii(c__2, i__2);
/* L10: */
}
curr = ptr + *curpbm;
diff --git a/lapack-netlib/SRC/clalsa.c b/lapack-netlib/SRC/clalsa.c
index 4bc3830a..2ef3e123 100644
--- a/lapack-netlib/SRC/clalsa.c
+++ b/lapack-netlib/SRC/clalsa.c
@@ -1051,7 +1051,7 @@ f"> */
/* Finally go through the left singular vector matrices of all */
/* the other subproblems bottom-up on the tree. */
- j = pow_ii(&c__2, &nlvl);
+ j = pow_ii(c__2, nlvl);
sqre = 0;
for (lvl = nlvl; lvl >= 1; --lvl) {
@@ -1065,7 +1065,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
@@ -1110,7 +1110,7 @@ L170:
ll = 1;
} else {
i__2 = lvl - 1;
- lf = pow_ii(&c__2, &i__2);
+ lf = pow_ii(c__2, i__2);
ll = (lf << 1) - 1;
}
i__2 = lf;
diff --git a/lapack-netlib/SRC/cstedc.c b/lapack-netlib/SRC/cstedc.c
index 437c39e9..8f047d1c 100644
--- a/lapack-netlib/SRC/cstedc.c
+++ b/lapack-netlib/SRC/cstedc.c
@@ -836,10 +836,10 @@ f"> */
lrwmin = *n - 1 << 1;
} else if (icompz == 1) {
lgn = (integer) (log((real) (*n)) / log(2.f));
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
lwmin = *n * *n;
diff --git a/lapack-netlib/SRC/dlaed0.c b/lapack-netlib/SRC/dlaed0.c
index 95e39b0d..74e58dd2 100644
--- a/lapack-netlib/SRC/dlaed0.c
+++ b/lapack-netlib/SRC/dlaed0.c
@@ -827,10 +827,10 @@ L10:
temp = log((doublereal) (*n)) / log(2.);
lgn = (integer) temp;
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
iprmpt = indxq + *n + 1;
diff --git a/lapack-netlib/SRC/dlaed7.c b/lapack-netlib/SRC/dlaed7.c
index fd851526..d23a72be 100644
--- a/lapack-netlib/SRC/dlaed7.c
+++ b/lapack-netlib/SRC/dlaed7.c
@@ -885,11 +885,11 @@ f"> */
/* Form the z-vector which consists of the last row of Q_1 and the */
/* first row of Q_2. */
- ptr = pow_ii(&c__2, tlvls) + 1;
+ ptr = pow_ii(c__2, *tlvls) + 1;
i__1 = *curlvl - 1;
for (i__ = 1; i__ <= i__1; ++i__) {
i__2 = *tlvls - i__;
- ptr += pow_ii(&c__2, &i__2);
+ ptr += pow_ii(c__2, i__2);
/* L10: */
}
curr = ptr + *curpbm;
diff --git a/lapack-netlib/SRC/dlaeda.c b/lapack-netlib/SRC/dlaeda.c
index f4bb214d..202e1b63 100644
--- a/lapack-netlib/SRC/dlaeda.c
+++ b/lapack-netlib/SRC/dlaeda.c
@@ -754,7 +754,7 @@ f"> */
/* scheme */
i__1 = *curlvl - 1;
- curr = ptr + *curpbm * pow_ii(&c__2, curlvl) + pow_ii(&c__2, &i__1) - 1;
+ curr = ptr + *curpbm * pow_ii(c__2, *curlvl) + pow_ii(c__2, i__1) - 1;
/* Determine size of these matrices. We add HALF to the value of */
/* the SQRT in case the machine underestimates one of these square */
@@ -781,12 +781,12 @@ f"> */
/* rotations and permutation and then multiplying the center matrices */
/* against the current Z. */
- ptr = pow_ii(&c__2, tlvls) + 1;
+ ptr = pow_ii(c__2, *tlvls) + 1;
i__1 = *curlvl - 1;
for (k = 1; k <= i__1; ++k) {
i__2 = *curlvl - k;
i__3 = *curlvl - k - 1;
- curr = ptr + *curpbm * pow_ii(&c__2, &i__2) + pow_ii(&c__2, &i__3) -
+ curr = ptr + *curpbm * pow_ii(c__2, i__2) + pow_ii(c__2, i__3) -
1;
psiz1 = prmptr[curr + 1] - prmptr[curr];
psiz2 = prmptr[curr + 2] - prmptr[curr + 1];
@@ -847,7 +847,7 @@ f"> */
c__1);
i__2 = *tlvls - k;
- ptr += pow_ii(&c__2, &i__2);
+ ptr += pow_ii(c__2, i__2);
/* L70: */
}
diff --git a/lapack-netlib/SRC/dlalsa.c b/lapack-netlib/SRC/dlalsa.c
index 891ed66a..4d5c347c 100644
--- a/lapack-netlib/SRC/dlalsa.c
+++ b/lapack-netlib/SRC/dlalsa.c
@@ -951,7 +951,7 @@ f"> */
/* Finally go through the left singular vector matrices of all */
/* the other subproblems bottom-up on the tree. */
- j = pow_ii(&c__2, &nlvl);
+ j = pow_ii(c__2, nlvl);
sqre = 0;
for (lvl = nlvl; lvl >= 1; --lvl) {
@@ -965,7 +965,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
@@ -1010,7 +1010,7 @@ L50:
ll = 1;
} else {
i__2 = lvl - 1;
- lf = pow_ii(&c__2, &i__2);
+ lf = pow_ii(c__2, i__2);
ll = (lf << 1) - 1;
}
i__2 = lf;
diff --git a/lapack-netlib/SRC/dlasd0.c b/lapack-netlib/SRC/dlasd0.c
index c702665b..0f88527e 100644
--- a/lapack-netlib/SRC/dlasd0.c
+++ b/lapack-netlib/SRC/dlasd0.c
@@ -824,7 +824,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
diff --git a/lapack-netlib/SRC/dlasda.c b/lapack-netlib/SRC/dlasda.c
index 72f9d55f..a9190f80 100644
--- a/lapack-netlib/SRC/dlasda.c
+++ b/lapack-netlib/SRC/dlasda.c
@@ -1027,7 +1027,7 @@ f"> */
/* Now conquer each subproblem bottom-up. */
- j = pow_ii(&c__2, &nlvl);
+ j = pow_ii(c__2, nlvl);
for (lvl = nlvl; lvl >= 1; --lvl) {
lvl2 = (lvl << 1) - 1;
@@ -1039,7 +1039,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
diff --git a/lapack-netlib/SRC/dstedc.c b/lapack-netlib/SRC/dstedc.c
index ef2eeabe..56511d6c 100644
--- a/lapack-netlib/SRC/dstedc.c
+++ b/lapack-netlib/SRC/dstedc.c
@@ -806,10 +806,10 @@ f"> */
lwmin = *n - 1 << 1;
} else {
lgn = (integer) (log((doublereal) (*n)) / log(2.));
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
if (icompz == 1) {
diff --git a/lapack-netlib/SRC/slaed0.c b/lapack-netlib/SRC/slaed0.c
index 33f7134c..4c523090 100644
--- a/lapack-netlib/SRC/slaed0.c
+++ b/lapack-netlib/SRC/slaed0.c
@@ -823,10 +823,10 @@ L10:
temp = log((real) (*n)) / log(2.f);
lgn = (integer) temp;
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
iprmpt = indxq + *n + 1;
diff --git a/lapack-netlib/SRC/slaed7.c b/lapack-netlib/SRC/slaed7.c
index 210d796d..22fcaf76 100644
--- a/lapack-netlib/SRC/slaed7.c
+++ b/lapack-netlib/SRC/slaed7.c
@@ -883,11 +883,11 @@ f"> */
/* Form the z-vector which consists of the last row of Q_1 and the */
/* first row of Q_2. */
- ptr = pow_ii(&c__2, tlvls) + 1;
+ ptr = pow_ii(c__2, *tlvls) + 1;
i__1 = *curlvl - 1;
for (i__ = 1; i__ <= i__1; ++i__) {
i__2 = *tlvls - i__;
- ptr += pow_ii(&c__2, &i__2);
+ ptr += pow_ii(c__2, i__2);
/* L10: */
}
curr = ptr + *curpbm;
diff --git a/lapack-netlib/SRC/slaeda.c b/lapack-netlib/SRC/slaeda.c
index 7edaf8a7..3806427c 100644
--- a/lapack-netlib/SRC/slaeda.c
+++ b/lapack-netlib/SRC/slaeda.c
@@ -753,7 +753,7 @@ f"> */
/* scheme */
i__1 = *curlvl - 1;
- curr = ptr + *curpbm * pow_ii(&c__2, curlvl) + pow_ii(&c__2, &i__1) - 1;
+ curr = ptr + *curpbm * pow_ii(c__2, *curlvl) + pow_ii(c__2, i__1) - 1;
/* Determine size of these matrices. We add HALF to the value of */
/* the SQRT in case the machine underestimates one of these square */
@@ -779,12 +779,12 @@ f"> */
/* rotations and permutation and then multiplying the center matrices */
/* against the current Z. */
- ptr = pow_ii(&c__2, tlvls) + 1;
+ ptr = pow_ii(c__2, *tlvls) + 1;
i__1 = *curlvl - 1;
for (k = 1; k <= i__1; ++k) {
i__2 = *curlvl - k;
i__3 = *curlvl - k - 1;
- curr = ptr + *curpbm * pow_ii(&c__2, &i__2) + pow_ii(&c__2, &i__3) -
+ curr = ptr + *curpbm * pow_ii(c__2, i__2) + pow_ii(c__2, i__3) -
1;
psiz1 = prmptr[curr + 1] - prmptr[curr];
psiz2 = prmptr[curr + 2] - prmptr[curr + 1];
@@ -844,7 +844,7 @@ f"> */
c__1);
i__2 = *tlvls - k;
- ptr += pow_ii(&c__2, &i__2);
+ ptr += pow_ii(c__2, i__2);
/* L70: */
}
diff --git a/lapack-netlib/SRC/slalsa.c b/lapack-netlib/SRC/slalsa.c
index 53da2c7b..77a79b80 100644
--- a/lapack-netlib/SRC/slalsa.c
+++ b/lapack-netlib/SRC/slalsa.c
@@ -946,7 +946,7 @@ f"> */
/* Finally go through the left singular vector matrices of all */
/* the other subproblems bottom-up on the tree. */
- j = pow_ii(&c__2, &nlvl);
+ j = pow_ii(c__2, nlvl);
sqre = 0;
for (lvl = nlvl; lvl >= 1; --lvl) {
@@ -960,7 +960,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
@@ -1005,7 +1005,7 @@ L50:
ll = 1;
} else {
i__2 = lvl - 1;
- lf = pow_ii(&c__2, &i__2);
+ lf = pow_ii(c__2, i__2);
ll = (lf << 1) - 1;
}
i__2 = lf;
diff --git a/lapack-netlib/SRC/slasd0.c b/lapack-netlib/SRC/slasd0.c
index aa553579..be1a7419 100644
--- a/lapack-netlib/SRC/slasd0.c
+++ b/lapack-netlib/SRC/slasd0.c
@@ -821,7 +821,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
diff --git a/lapack-netlib/SRC/slasda.c b/lapack-netlib/SRC/slasda.c
index 71424c3f..1d336d1c 100644
--- a/lapack-netlib/SRC/slasda.c
+++ b/lapack-netlib/SRC/slasda.c
@@ -1023,7 +1023,7 @@ f"> */
/* Now conquer each subproblem bottom-up. */
- j = pow_ii(&c__2, &nlvl);
+ j = pow_ii(c__2, nlvl);
for (lvl = nlvl; lvl >= 1; --lvl) {
lvl2 = (lvl << 1) - 1;
@@ -1035,7 +1035,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
diff --git a/lapack-netlib/SRC/sstedc.c b/lapack-netlib/SRC/sstedc.c
index 46ed15a1..61ad3dd3 100644
--- a/lapack-netlib/SRC/sstedc.c
+++ b/lapack-netlib/SRC/sstedc.c
@@ -804,10 +804,10 @@ f"> */
lwmin = *n - 1 << 1;
} else {
lgn = (integer) (log((real) (*n)) / log(2.f));
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
if (icompz == 1) {
diff --git a/lapack-netlib/SRC/zlaed0.c b/lapack-netlib/SRC/zlaed0.c
index 37bd12b0..2b25f6e4 100644
--- a/lapack-netlib/SRC/zlaed0.c
+++ b/lapack-netlib/SRC/zlaed0.c
@@ -793,10 +793,10 @@ L10:
temp = log((doublereal) (*n)) / log(2.);
lgn = (integer) temp;
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
iprmpt = indxq + *n + 1;
diff --git a/lapack-netlib/SRC/zlaed7.c b/lapack-netlib/SRC/zlaed7.c
index 09305191..8665ee12 100644
--- a/lapack-netlib/SRC/zlaed7.c
+++ b/lapack-netlib/SRC/zlaed7.c
@@ -864,11 +864,11 @@ f"> */
/* Form the z-vector which consists of the last row of Q_1 and the */
/* first row of Q_2. */
- ptr = pow_ii(&c__2, tlvls) + 1;
+ ptr = pow_ii(c__2, *tlvls) + 1;
i__1 = *curlvl - 1;
for (i__ = 1; i__ <= i__1; ++i__) {
i__2 = *tlvls - i__;
- ptr += pow_ii(&c__2, &i__2);
+ ptr += pow_ii(c__2, i__2);
/* L10: */
}
curr = ptr + *curpbm;
diff --git a/lapack-netlib/SRC/zlalsa.c b/lapack-netlib/SRC/zlalsa.c
index d17016e7..cd0819c3 100644
--- a/lapack-netlib/SRC/zlalsa.c
+++ b/lapack-netlib/SRC/zlalsa.c
@@ -1051,7 +1051,7 @@ f"> */
/* Finally go through the left singular vector matrices of all */
/* the other subproblems bottom-up on the tree. */
- j = pow_ii(&c__2, &nlvl);
+ j = pow_ii(c__2, nlvl);
sqre = 0;
for (lvl = nlvl; lvl >= 1; --lvl) {
@@ -1065,7 +1065,7 @@ f"> */
ll = 1;
} else {
i__1 = lvl - 1;
- lf = pow_ii(&c__2, &i__1);
+ lf = pow_ii(c__2, i__1);
ll = (lf << 1) - 1;
}
i__1 = ll;
@@ -1110,7 +1110,7 @@ L170:
ll = 1;
} else {
i__2 = lvl - 1;
- lf = pow_ii(&c__2, &i__2);
+ lf = pow_ii(c__2, i__2);
ll = (lf << 1) - 1;
}
i__2 = lf;
diff --git a/lapack-netlib/SRC/zstedc.c b/lapack-netlib/SRC/zstedc.c
index 4cfc4184..55baba2d 100644
--- a/lapack-netlib/SRC/zstedc.c
+++ b/lapack-netlib/SRC/zstedc.c
@@ -836,10 +836,10 @@ f"> */
lrwmin = *n - 1 << 1;
} else if (icompz == 1) {
lgn = (integer) (log((doublereal) (*n)) / log(2.));
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
- if (pow_ii(&c__2, &lgn) < *n) {
+ if (pow_ii(c__2, lgn) < *n) {
++lgn;
}
lwmin = *n * *n;
--
2.37.3

View File

@ -0,0 +1,26 @@
From 91110f92d218492d0efbdc1fdf34277ca45f4b36 Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Wed, 14 Sep 2022 14:03:31 +0200
Subject: [PATCH] fix missing return type in function declaration
Content-type: text/plain
---
ctest/c_sblat1c.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ctest/c_sblat1c.c b/ctest/c_sblat1c.c
index 4993d31b..57e4707a 100644
--- a/ctest/c_sblat1c.c
+++ b/ctest/c_sblat1c.c
@@ -969,7 +969,7 @@ real *sfac;
1.17 };
/* Local variables */
- extern /* Subroutine */ srottest_();
+ extern /* Subroutine */ void srottest_();
static integer i__, k, ksize;
extern /* Subroutine */ int stest_(), srotmtest_();
static integer ki, kn;
--
2.37.3

View File

@ -0,0 +1,26 @@
From 9402df5604e69f86f58953e3883f33f98c930baf Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Wed, 14 Sep 2022 21:44:34 +0200
Subject: [PATCH] Fix missing external declaration
Content-type: text/plain
---
driver/others/blas_server_omp.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/driver/others/blas_server_omp.c b/driver/others/blas_server_omp.c
index 1a5fd06a..c158f92e 100644
--- a/driver/others/blas_server_omp.c
+++ b/driver/others/blas_server_omp.c
@@ -69,6 +69,8 @@
int blas_server_avail = 0;
+extern int openblas_omp_adaptive_env();
+
static void * blas_thread_buffer[MAX_PARALLEL_NUMBER][MAX_CPU_NUMBER];
#ifdef HAVE_C11
static atomic_bool blas_buffer_inuse[MAX_PARALLEL_NUMBER];
--
2.37.3

View File

@ -0,0 +1,62 @@
From 101a2c77c3f3610933f450cefca3e312edab2186 Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Thu, 15 Sep 2022 09:19:19 +0200
Subject: [PATCH] Fix warnings
Content-type: text/plain
---
kernel/x86_64/dgemm_ncopy_8_skylakex.c | 24 ++++++++++++------------
kernel/x86_64/omatcopy_rt.c | 2 +-
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/kernel/x86_64/dgemm_ncopy_8_skylakex.c b/kernel/x86_64/dgemm_ncopy_8_skylakex.c
index 74b336f3..874ef68d 100644
--- a/kernel/x86_64/dgemm_ncopy_8_skylakex.c
+++ b/kernel/x86_64/dgemm_ncopy_8_skylakex.c
@@ -52,18 +52,18 @@ int CNAME(BLASLONG m, BLASLONG n, FLOAT * __restrict a, BLASLONG lda, FLOAT * __
FLOAT ctemp05, ctemp06, ctemp07, ctemp08;
FLOAT ctemp09, ctemp10, ctemp11, ctemp12;
FLOAT ctemp13, ctemp14, ctemp15, ctemp16;
- FLOAT ctemp17, ctemp18, ctemp19, ctemp20;
- FLOAT ctemp21, ctemp22, ctemp23, ctemp24;
- FLOAT ctemp25, ctemp26, ctemp27, ctemp28;
- FLOAT ctemp29, ctemp30, ctemp31, ctemp32;
- FLOAT ctemp33, ctemp34, ctemp35, ctemp36;
- FLOAT ctemp37, ctemp38, ctemp39, ctemp40;
- FLOAT ctemp41, ctemp42, ctemp43, ctemp44;
- FLOAT ctemp45, ctemp46, ctemp47, ctemp48;
- FLOAT ctemp49, ctemp50, ctemp51, ctemp52;
- FLOAT ctemp53, ctemp54, ctemp55, ctemp56;
- FLOAT ctemp57, ctemp58, ctemp59, ctemp60;
- FLOAT ctemp61, ctemp62, ctemp63, ctemp64;
+ FLOAT ctemp17 /*, ctemp18, ctemp19, ctemp20*/ ;
+ FLOAT /*ctemp21, ctemp22,*/ ctemp23, ctemp24;
+ FLOAT ctemp25 /*, ctemp26, ctemp27, ctemp28*/ ;
+ FLOAT /*ctemp29, ctemp30,*/ ctemp31, ctemp32;
+ FLOAT ctemp33 /*, ctemp34, ctemp35, ctemp36*/ ;
+ FLOAT /*ctemp37, ctemp38,*/ ctemp39, ctemp40;
+ FLOAT ctemp41 /*, ctemp42, ctemp43, ctemp44*/ ;
+ FLOAT /*ctemp45, ctemp46,*/ ctemp47, ctemp48;
+ FLOAT ctemp49 /*, ctemp50, ctemp51, ctemp52*/ ;
+ FLOAT /*ctemp53, ctemp54,*/ ctemp55, ctemp56;
+ FLOAT ctemp57 /*, ctemp58, ctemp59, ctemp60*/ ;
+ FLOAT /*ctemp61, ctemp62,*/ ctemp63, ctemp64;
aoffset = a;
diff --git a/kernel/x86_64/omatcopy_rt.c b/kernel/x86_64/omatcopy_rt.c
index e695f00c..b11893f5 100644
--- a/kernel/x86_64/omatcopy_rt.c
+++ b/kernel/x86_64/omatcopy_rt.c
@@ -142,7 +142,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
,"xmm0","xmm1","xmm2","xmm3","xmm4","xmm5","xmm6","xmm7","xmm8","xmm9","xmm10","xmm11","xmm12","xmm13","xmm14","xmm15");\
}
int CNAME(BLASLONG rows, BLASLONG cols, FLOAT alpha, FLOAT *a, BLASLONG lda, FLOAT *b, BLASLONG ldb){
- float *src, *dst, *dst_tmp, *src_base, *dst_base;
+ float *src, *dst, *dst_tmp=0, *src_base, *dst_base;
uint64_t src_ld_bytes = (uint64_t)lda * sizeof(float), dst_ld_bytes = (uint64_t)ldb * sizeof(float), num_rows = 0;
BLASLONG cols_left, rows_done; float ALPHA = alpha;
if(ALPHA==0.0){
--
2.37.3

View File

@ -0,0 +1,55 @@
Fixing FTBFS on power:
https://bugzilla.redhat.com/show_bug.cgi?id=2120974
Upstream issue: https://github.com/xianyi/OpenBLAS/issues/3738
Upstream fix: https://github.com/xianyi/OpenBLAS/pull/3718
commit d9dc015cfc78fc32f555995a89d6957ef0184ea2
Author: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Mon Aug 8 14:52:10 2022 +0200
Use blasint for INTERFACE64 compatibility
diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
index a2c358cf..d4b59145 100644
--- a/test/compare_sgemm_sbgemm.c
+++ b/test/compare_sgemm_sbgemm.c
@@ -76,9 +76,9 @@ float16to32 (bfloat16_bits f16)
int
main (int argc, char *argv[])
{
- int m, n, k;
+ blasint m, n, k;
int i, j, l;
- int x;
+ blasint x;
int ret = 0;
int loop = 100;
char transA = 'N', transB = 'N';
commit 3d338b57de1837f1e2264a1262a9ee9203f31c6c
Author: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Mon Aug 8 17:09:45 2022 +0200
remove spurious loops
diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
index d4b59145..276fecae 100644
--- a/test/compare_sgemm_sbgemm.c
+++ b/test/compare_sgemm_sbgemm.c
@@ -112,7 +112,6 @@ main (int argc, char *argv[])
&m, BB, &k, &beta, CC, &m);
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
- for (l = 0; l < k; l++)
if (fabs (CC[i * m + j] - C[i * m + j]) > 1.0)
ret++;
if (transA == 'N' && transB == 'N')
@@ -126,7 +125,6 @@ main (int argc, char *argv[])
}
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
- for (l = 0; l < k; l++)
if (CC[i * m + j] != DD[i * m + j])
ret++;
}

View File

@ -1,42 +0,0 @@
diff -up OpenBLAS-0.3.7/Makefile.tests OpenBLAS-0.3.7/Makefile
--- OpenBLAS-0.3.7/Makefile.tests 2019-08-11 23:23:27.000000000 +0200
+++ OpenBLAS-0.3.7/Makefile 2019-08-12 11:32:09.937281485 +0200
@@ -123,13 +123,13 @@ tests :
ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN)))
touch $(LIBNAME)
ifndef NO_FBLAS
- $(MAKE) -C test all
+ $(MAKE) -C test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
- $(MAKE) -C utest all
+ $(MAKE) -C utest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
ifndef NO_CBLAS
- $(MAKE) -C ctest all
+ $(MAKE) -C ctest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
ifeq ($(CPP_THREAD_SAFETY_TEST), 1)
- $(MAKE) -C cpp_thread_test all
+ $(MAKE) -C cpp_thread_test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
endif
endif
endif
diff -up OpenBLAS-0.3.7/cpp_thread_test/Makefile.tests OpenBLAS-0.3.7/cpp_thread_test/Makefile
--- OpenBLAS-0.3.7/cpp_thread_test/Makefile.tests 2019-08-11 19:23:00.000000000 +0000
+++ OpenBLAS-0.3.7/cpp_thread_test/Makefile 2019-12-12 11:05:51.426334062 +0000
@@ -1,13 +1,14 @@
-include ../Makefile.rule
+TOPDIR = ..
+include $(TOPDIR)/Makefile.system
all :: dgemv_tester dgemm_tester
dgemv_tester :
- $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemv_thread_safety.cpp ../libopenblas.a -lpthread -o dgemv_tester
+ $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemv_thread_safety.cpp ../$(LIBNAME) -lpthread -o dgemv_tester
./dgemv_tester
dgemm_tester : dgemv_tester
- $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemm_thread_safety.cpp ../libopenblas.a -lpthread -o dgemm_tester
+ $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemm_thread_safety.cpp ../$(LIBNAME) -lpthread -o dgemm_tester
./dgemm_tester
clean ::

View File

@ -1,6 +1,6 @@
%bcond_with system_lapack
# Version of bundled lapack
%global lapackver 3.9.0
%global lapackver 3.9.1
# DO NOT "CLEAN UP" OR MODIFY THIS SPEC FILE WITHOUT ASKING THE
# MAINTAINER FIRST!
@ -14,8 +14,8 @@
# "obsoleted" features are still kept in the spec.
Name: openblas
Version: 0.3.9
Release: 2%{?dist}
Version: 0.3.21
Release: 5%{?dist}
Summary: An optimized BLAS library based on GotoBLAS2
License: BSD
URL: https://github.com/xianyi/OpenBLAS/
@ -26,18 +26,29 @@ Patch0: openblas-0.2.15-system_lapack.patch
Patch1: openblas-0.2.5-libname.patch
# Don't use constructor priorities on too old architectures
Patch2: openblas-0.2.15-constructor.patch
# Fix SBGEMM test to work with INTERFACE64
Patch3: openblas-0.3.21-sbgemm-test.patch
# Supply the proper flags to the test makefile
Patch3: openblas-0.3.7-tests.patch
# Fix C++ compatibility (BZ #1820131)
Patch4: https://github.com/xianyi/OpenBLAS/commit/ee2e758278b5d82b7242f505ea694f082ef65879.patch
Patch4: openblas-0.3.11-tests.patch
# C99 porting.
Patch5: openblas-0.3.21-c99-1.patch
Patch6: openblas-0.3.21-c99-2.patch
Patch7: openblas-0.3.21-c99-3.patch
Patch8: openblas-0.3.21-c99-4.patch
Patch9: openblas-0.3.21-c99-5.patch
BuildRequires: make
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: gcc-gfortran
BuildRequires: perl-devel
BuildRequires: multilib-rpm-config
# Rblas library is no longer necessary
%if 0%{?fedora} >= 31 || 0%{?rhel} >= 8
Obsoletes: %{name}-Rblas < %{version}-%{release}
%endif
# Do we have execstack?
%if 0%{?rhel} == 7
%ifarch ppc64le aarch64
@ -100,12 +111,6 @@ Computational Science, ISCAS. http://www.rdcps.ac.cn
%description
%{base_description}
%package Rblas
Summary: A version of OpenBLAS for R to use as libRblas
%description Rblas
%{base_description}
%package serial
Summary: An optimized BLAS library based on GotoBLAS2, serial version
Requires: %{name} = %{version}-%{release}
@ -243,8 +248,13 @@ cd OpenBLAS-%{version}
%if 0%{?rhel} == 5
%patch2 -p1 -b .constructor
%endif
%patch3 -p1 -b .tests
%patch4 -p1 -b .cplusplus
%patch3 -p1 -b .sbgemm
%patch4 -p1 -b .tests
%patch5 -p1 -b .c99-1
%patch6 -p1 -b .c99-2
%patch7 -p1 -b .c99-3
%patch8 -p1 -b .c99-4
%patch9 -p1 -b .c99-5
# Fix source permissions
find -name \*.f -exec chmod 644 {} \;
@ -255,7 +265,6 @@ rm -rf lapack-netlib
%endif
# Make serial, threaded and OpenMP versions; as well as 64-bit versions
# Also make an libRblas.so
cd ..
cp -ar OpenBLAS-%{version} openmp
cp -ar OpenBLAS-%{version} threaded
@ -264,14 +273,8 @@ for d in {serial,threaded,openmp}64{,_}; do
cp -ar OpenBLAS-%{version} $d
done
%endif
cp -ar OpenBLAS-%{version} Rblas
mv OpenBLAS-%{version} serial
# Hackup Rblas Makefiles
sed -i 's|.so.$(MAJOR_VERSION)|.so|g' Rblas/Makefile
sed -i 's|.so.$(MAJOR_VERSION)|.so|g' Rblas/exports/Makefile
sed -i 's|@ln -fs $(LIBSONAME) $(LIBPREFIX).so|#@ln -fs $(LIBSONAME) $(LIBPREFIX).so|g' Rblas/Makefile
%if %{with system_lapack}
# Setup 32-bit interface LAPACK
mkdir netliblapack
@ -348,6 +351,9 @@ rm -rf netliblapack64
%endif
%build
# openblas fails to build with LTO due to undefined symbols. These could
# well be the result of the assembly code used in this package
%define _lto_cflags %{nil}
%if !%{lapacke}
LAPACKE="NO_LAPACKE=1"
%endif
@ -398,12 +404,10 @@ FCOMMON="%{optflags} -fPIC -frecursive"
# Use Fedora linker flags
export LDFLAGS="%{__global_ldflags}"
make -C Rblas $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libRblas" LIBSONAME="libRblas.so" $AVX $LAPACKE INTERFACE64=0
# Declare some necessary build flags
COMMON="%{optflags} -fPIC"
FCOMMON="$COMMON -frecursive"
make -C serial $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas" $AVX $LAPACKE INTERFACE64=0
make -C serial $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas" $AVX $LAPACKE INTERFACE64=0
make -C threaded $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp" $AVX $LAPACKE INTERFACE64=0
# USE_THREAD determines use of SMP, not of pthreads
@ -414,7 +418,7 @@ make -C openmp $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_O
%if %build64
COMMON="%{optflags} -fPIC"
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
make -C serial64 $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64" $AVX $LAPACKE INTERFACE64=1
make -C serial64 $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64" $AVX $LAPACKE INTERFACE64=1
make -C threaded64 $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp64" $AVX $LAPACKE INTERFACE64=1
COMMON="%{optflags} -fPIC -fopenmp -pthread"
@ -423,7 +427,7 @@ make -C openmp64 $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_O
COMMON="%{optflags} -fPIC"
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
make -C serial64_ $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
make -C serial64_ $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
make -C threaded64_ $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
COMMON="%{optflags} -fPIC -fopenmp -pthread"
@ -459,10 +463,6 @@ else
sname=${slibname}
fi
# Install the Rblas library
mkdir -p %{buildroot}%{_libdir}/R/lib/
install -p -m 755 Rblas/libRblas.so %{buildroot}%{_libdir}/R/lib/
# Install the OpenMP library
olibname=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o|g"`
install -D -p -m 644 openmp/${olibname}.a %{buildroot}%{_libdir}/lib%{name}o.a
@ -566,9 +566,6 @@ ln -sf ${pname64_}.so lib%{name}p64_.so.0
for lib in %{buildroot}%{_libdir}/libopenblas*.so; do
execstack -c $lib
done
for lib in %{buildroot}%{_libdir}/R/lib/libRblas*.so; do
execstack -c $lib
done
%endif
# Get rid of generated CMake config
@ -580,8 +577,6 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
%ldconfig_scriptlets openmp
%ldconfig_scriptlets Rblas
%ldconfig_scriptlets threads
%if %build64
@ -651,9 +646,6 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
%{_libdir}/lib%{name}p64_.so
%endif
%files Rblas
%{_libdir}/R/lib/libRblas.so
%files static
%{_libdir}/lib%{name}.a
%{_libdir}/lib%{name}o.a
@ -668,6 +660,86 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
%endif
%changelog
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.21-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Nov 18 2022 Florian Weimer <fweimer@redhat.com> - 0.3.21-4
- Apply upstream patches to support building in stricter C99 mode
* Fri Aug 26 2022 Honza Horak <hhorak@redhat.com> - 0.3.21-3
- Re-add flags for tests
* Wed Aug 24 2022 Honza Horak <hhorak@redhat.com> - 0.3.21-2
- Fix SBGEMM test to work with INTERFACE64
Resolves: #2120974
* Mon Aug 08 2022 Ali Erdinc Koroglu <aekoroglu@fedoraproject.org> - 0.3.21-1
- Update to 0.3.21 (RHBZ #2116398)
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.20-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Mar 08 2022 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.20-1
- Update to 0.3.20.
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.19-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Jan 03 2022 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.19-2
- Fix BZ#1982856.
* Sun Dec 19 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.19-1
- Update to 0.3.19.
* Mon Oct 11 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.18-1
- Update to 0.3.18.
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.17-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jul 19 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.17-1
- Update to 0.3.17.
* Mon Jul 12 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.16-1
- Update to 0.3.16.
* Mon May 03 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.15-1
- Update to 0.3.15.
* Thu Mar 18 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.14-1
- Update to 0.3.14.
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.12-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sun Oct 25 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.12-1
- Update to 0.3.12.
* Sun Oct 18 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.11-1
- Update to 0.3.11.
* Fri Sep 18 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-6
- Fix incorrect result of cblas_zdotc_sub on ppc64le (BZ #1878449).
* Sat Aug 29 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-5
- Fix unresolved bfloat16 datatype (BZ #1873667).
* Fri Aug 14 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-4
- Obsolete Rblas package (BZ #1849966).
* Tue Aug 11 2020 Jeff Law <law@redhat.com> - 0.3.10-3
- Disable LTO
* Tue Jul 28 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-2
- Include upstream patch 2672 to fix test suite on systems with few CPUs.
* Mon Jun 15 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-1
- Update to 0.3.10.
* Thu May 28 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-3
- Enable USE_LOCKING in the sequential versions of the library for
thread safety.
* Thu Apr 02 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-2
- Patch for BZ #1820131.

8
plans/ci.fmf Normal file
View File

@ -0,0 +1,8 @@
summary: CI plan, picks Tier1 tests, runs in beakerlib.
discover:
- name: fedora
how: fmf
filter: 'tier: 1'
url: https://src.fedoraproject.org/tests/openblas.git
execute:
how: tmt

View File

@ -1 +1 @@
SHA512 (openblas-0.3.9.tar.gz) = e34da25b3aaf959ec12826ac68c81e739e453d44f2dba28b15e57d7a827edc4d5f42988e9b6d98ac07999940be7b5876246cb3a980e590ae87f77f4c2f12f40a
SHA512 (openblas-0.3.21.tar.gz) = 4625c8e6ccfa9120281fd714d3f6b7c3ba2265470c1be76121d6b25dc3dacb899d26e5d9a417ddc616d23909f1411495aa995ef8d8d6df8511cd5cefbabcb1c5