diff options
Diffstat (limited to 'sci-libs/openblas/files')
4 files changed, 0 insertions, 921 deletions
diff --git a/sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch b/sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch deleted file mode 100644 index 55fb7d7c66ca..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.12-shared-blas-lapack.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/interface/Makefile b/interface/Makefile -index 6b247b4..1297c73 100644 ---- a/interface/Makefile -+++ b/interface/Makefile -@@ -330,7 +330,7 @@ CCBLAS3OBJS = \ - cblas_chemm.$(SUFFIX) cblas_cherk.$(SUFFIX) cblas_cher2k.$(SUFFIX) \ - cblas_comatcopy.$(SUFFIX) cblas_cimatcopy.$(SUFFIX)\ - cblas_cgeadd.$(SUFFIX) -- -+ - CXERBLAOBJ = \ - cblas_xerbla.$(SUFFIX) - -@@ -2310,3 +2310,22 @@ cblas_zgeadd.$(SUFFIX) cblas_zgeadd.$(PSUFFIX) : zgeadd.c - cblas_xerbla.$(SUFFIX) cblas_xerbla.$(PSUFFIX) : xerbla.c - $(CC) -c $(CFLAGS) -DCBLAS $< -o $(@F) - -+##### -+shared-blas-lapack: libblas.so.3 libcblas.so.3 liblapack.so.3 liblapacke.so.3 -+ -+# The list of prerequisite is created by comparing with NETLIB BLAS public API. -+libblas.so.3: $(SBLAS1OBJS) $(SBLAS2OBJS) $(SBLAS3OBJS) $(DBLAS1OBJS) $(DBLAS2OBJS) $(DBLAS3OBJS) $(CBLAS1OBJS) $(CBLAS2OBJS) $(CBLAS3OBJS) $(ZBLAS1OBJS) $(ZBLAS2OBJS) $(ZBLAS3OBJS) ../kernel/lsame.o ../kernel/scabs1.o ../kernel/dcabs1.o ../driver/others/xerbla.o -+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,libblas.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+libcblas.so.3: $(CSBLAS1OBJS) $(CSBLAS2OBJS) $(CSBLAS3OBJS) $(CDBLAS1OBJS) $(CDBLAS2OBJS) $(CDBLAS3OBJS) $(CCBLAS1OBJS) $(CCBLAS2OBJS) $(CCBLAS3OBJS) $(CZBLAS1OBJS) $(CZBLAS2OBJS) $(CZBLAS3OBJS) ../kernel/lsame.o ../kernel/scabs1.o ../kernel/dcabs1.o ../driver/others/xerbla.o -+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,libcblas.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+# The prerequisites must match the symbols deleted in target delete-duplicate-lapack-objects -+liblapack.so.3: $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) ../kernel/lsame.o ../driver/others/xerbla.o -+ $(CC) $(LDFLAGS) -shared -o $@ $^ ../lapack-netlib/SRC/*.o -Wl,-soname,liblapack.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+liblapacke.so.3: liblapack.so.3 -+ $(CC) $(LDFLAGS) -shared -o $@ `find ../lapack-netlib/LAPACKE -name "*.o"` -Wl,-soname,liblapacke.so.3 -L.. -lopenblas $(EXTRALIB) -+ -+clean:: -+ rm -f libblas.so.3 libcblas.so.3 liblapack.so.3 diff --git a/sci-libs/openblas/files/openblas-0.3.21-clang16.patch b/sci-libs/openblas/files/openblas-0.3.21-clang16.patch deleted file mode 100644 index 051966b0a870..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.21-clang16.patch +++ /dev/null @@ -1,581 +0,0 @@ -https://github.com/xianyi/OpenBLAS/commit/f703846ad9400a8ea175cb8dd43e18c152aeab93 -https://github.com/xianyi/OpenBLAS/commit/515cf269291bec0d43651fe7bf99a71fb074a0ad -https://github.com/xianyi/OpenBLAS/commit/91110f92d218492d0efbdc1fdf34277ca45f4b36 -https://github.com/xianyi/OpenBLAS/commit/9402df5604e69f86f58953e3883f33f98c930baf -https://github.com/xianyi/OpenBLAS/commit/101a2c77c3f3610933f450cefca3e312edab2186 -https://src.fedoraproject.org/rpms/openblas/c/5f27d51cebe1c1bb6598d38326ece8dc0ac71ec7?branch=rawhide - -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 - ---- 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" ---- a/exports/gensymbol.pl -+++ b/exports/gensymbol.pl -@@ -3955,6 +3955,18 @@ - @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"; - } - -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() - ---- a/lapack-netlib/SRC/claed0.c -+++ b/lapack-netlib/SRC/claed0.c -@@ -796,10 +796,10 @@ f"> */ - - 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; ---- 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; ---- 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 @@ f"> */ - 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; ---- 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; ---- a/lapack-netlib/SRC/dlaed0.c -+++ b/lapack-netlib/SRC/dlaed0.c -@@ -827,10 +827,10 @@ f"> */ - - 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; ---- 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; ---- 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: */ - } - ---- 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 @@ f"> */ - 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; ---- 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; ---- 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; ---- 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) { ---- a/lapack-netlib/SRC/slaed0.c -+++ b/lapack-netlib/SRC/slaed0.c -@@ -823,10 +823,10 @@ f"> */ - - 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; ---- 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; ---- 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: */ - } - ---- 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 @@ f"> */ - 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; ---- 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; ---- 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; ---- 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) { ---- a/lapack-netlib/SRC/zlaed0.c -+++ b/lapack-netlib/SRC/zlaed0.c -@@ -793,10 +793,10 @@ f"> */ - - 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; ---- 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; ---- 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 @@ f"> */ - 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; ---- 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; - -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 - ---- 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; - -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 - ---- 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]; - -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 - ---- 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; ---- 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){ - diff --git a/sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch b/sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch deleted file mode 100644 index ed112d62380b..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.21-fix-loong.patch +++ /dev/null @@ -1,237 +0,0 @@ -https://github.com/xianyi/OpenBLAS/pull/3626 - -From 5af7b8638b3b972bd0e25597ec07927fffd52108 Mon Sep 17 00:00:00 2001 -From: WANG Xuerui <xen0n@gentoo.org> -Date: Fri, 13 May 2022 15:26:33 +0800 -Subject: [PATCH 1/3] Move LoongArch make rules to Makefile.loongarch64 - ---- - Makefile.loongarch64 | 5 +++-- - Makefile.system | 5 ----- - 2 files changed, 3 insertions(+), 7 deletions(-) - -diff --git a/Makefile.loongarch64 b/Makefile.loongarch64 -index 05ea9c679d..fced1a9462 100644 ---- a/Makefile.loongarch64 -+++ b/Makefile.loongarch64 -@@ -1,3 +1,4 @@ --ifdef BINARY64 --else -+ifeq ($(CORE), LOONGSON3R5) -+CCOMMON_OPT += -march=loongarch64 -mabi=lp64 -+FCOMMON_OPT += -march=loongarch64 -mabi=lp64 - endif -diff --git a/Makefile.system b/Makefile.system -index 3be5efa0c2..9c91425b0f 100644 ---- a/Makefile.system -+++ b/Makefile.system -@@ -895,11 +895,6 @@ ifeq ($(OSNAME), AIX) - BINARY_DEFINED = 1 - endif - --ifeq ($(ARCH), loongarch64) --CCOMMON_OPT += -march=loongarch64 -mabi=lp64 --FCOMMON_OPT += -march=loongarch64 -mabi=lp64 --endif -- - endif - - ifndef BINARY_DEFINED - -From 869061c783d60ba0b799fab643952c493b57fb0a Mon Sep 17 00:00:00 2001 -From: WANG Xuerui <xen0n@gentoo.org> -Date: Fri, 13 May 2022 15:53:22 +0800 -Subject: [PATCH 2/3] Probe for old-world LASX flavor on LoongArch and use - generic DGEMM kernel otherwise - -See: https://bugs.gentoo.org/844013 ---- - Makefile.system | 1 + - c_check | 27 ++++++++++++++++++++++++++- - kernel/loongarch64/KERNEL.LOONGSON3R5 | 5 +++++ - 3 files changed, 32 insertions(+), 1 deletion(-) - -diff --git a/Makefile.system b/Makefile.system -index 9c91425b0f..b86aafbddb 100644 ---- a/Makefile.system -+++ b/Makefile.system -@@ -1702,6 +1702,7 @@ export TARGET_CORE - export NO_AVX512 - export NO_AVX2 - export BUILD_BFLOAT16 -+export NO_LASX - - export SBGEMM_UNROLL_M - export SBGEMM_UNROLL_N -diff --git a/c_check b/c_check -index 01d4f4a7cf..a37e91f82c 100755 ---- a/c_check -+++ b/c_check -@@ -112,7 +112,7 @@ case "$architecture" in - defined=1 - ;; - arm|arm64) defined=1 ;; -- zarch|e2k|alpha|ia64|riscv64|loonarch64) -+ zarch|e2k|alpha|ia64|riscv64|loongarch64) - defined=1 - BINARY=64 - ;; -@@ -240,6 +240,29 @@ if [ "$architecture" = "riscv64" ]; then - rm -rf "$tmpd" - fi - -+no_lasx=0 -+if [ "$architecture" = "loongarch64" ]; then -+ tmpd=`mktemp -d` -+ tmpf="$tmpd/a.c" -+ # Old-world assembly flavor: LASX registers named "$xrNN", different -+ # from the ISA manual which suggests "$xNN". This is the flavor we -+ # currently support. -+ # -+ # As the LASX ISA manual is not out yet, we cannot predict what the -+ # new-world flavor would look like, so do not probe flavor for now. -+ # The compiler flags are also unsuitable for new-world gcc. -+ code='"xvld $xr0, $a0, 0\n"' -+ printf "int main(void){ __asm__ volatile(%s); }\n" "$code" >> "$tmpf" -+ args=" -march=loongarch64 -mabi=lp64 -mlasx -c -o $tmpf.o $tmpf" -+ no_lasx=0 -+ { -+ $compiler_name $flags $args >/dev/null 2>&1 -+ } || { -+ no_lasx=1 -+ } -+ rm -rf "$tmpd" -+fi -+ - c11_atomics=0 - case "$data" in - *HAVE_C11*) -@@ -350,6 +373,7 @@ done - - [ "$makefile" = "-" ] && { - [ "$no_rv64gv" -eq 1 ] && printf "NO_RV64GV=1\n" -+ [ "$no_lasx" -eq 1 ] && printf "NO_LASX=1\n" - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -@@ -380,6 +404,7 @@ done - printf "MSA_FLAGS=%s\n" "$msa_flags" - } - [ "$no_rv64gv" -eq 1 ] && printf "NO_RV64GV=1\n" -+ [ "$no_lasx" -eq 1 ] && printf "NO_LASX=1\n" - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -diff --git a/kernel/loongarch64/KERNEL.LOONGSON3R5 b/kernel/loongarch64/KERNEL.LOONGSON3R5 -index cda3590402..79b57d1e4d 100644 ---- a/kernel/loongarch64/KERNEL.LOONGSON3R5 -+++ b/kernel/loongarch64/KERNEL.LOONGSON3R5 -@@ -1,3 +1,7 @@ -+ifeq ($(NO_LASX), 1) -+# No LASX support in compiler, unable to consume the optimized version -+# leave out DGEMMKERNEL to pull in the generic version -+else - DGEMMKERNEL = dgemm_kernel_16x4.S - DGEMMINCOPY = dgemm_ncopy_16.S - DGEMMITCOPY = dgemm_tcopy_16.S -@@ -7,6 +11,7 @@ DGEMMINCOPYOBJ = dgemm_incopy$(TSUFFIX).$(SUFFIX) - DGEMMITCOPYOBJ = dgemm_itcopy$(TSUFFIX).$(SUFFIX) - DGEMMONCOPYOBJ = dgemm_oncopy$(TSUFFIX).$(SUFFIX) - DGEMMOTCOPYOBJ = dgemm_otcopy$(TSUFFIX).$(SUFFIX) -+endif - - DTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c - DTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c - -From 699c57d3767c9a5a5a69262a4b70a1f80e0bb2e2 Mon Sep 17 00:00:00 2001 -From: WANG Xuerui <xen0n@gentoo.org> -Date: Fri, 13 May 2022 16:23:46 +0800 -Subject: [PATCH 3/3] Fix ABI CFLAGS setting on new-world LoongArch - -See: https://bugs.gentoo.org/844013 ---- - Makefile.loongarch64 | 13 +++++++++++-- - Makefile.system | 1 + - c_check | 14 ++++++++++++++ - 3 files changed, 26 insertions(+), 2 deletions(-) - -diff --git a/Makefile.loongarch64 b/Makefile.loongarch64 -index fced1a9462..d6cbe848cd 100644 ---- a/Makefile.loongarch64 -+++ b/Makefile.loongarch64 -@@ -1,4 +1,13 @@ - ifeq ($(CORE), LOONGSON3R5) --CCOMMON_OPT += -march=loongarch64 -mabi=lp64 --FCOMMON_OPT += -march=loongarch64 -mabi=lp64 -+CCOMMON_OPT += -march=loongarch64 -+FCOMMON_OPT += -march=loongarch64 -+ -+ifeq ($(LOONGARCH_CC_FLAVOR), NEW) -+CCOMMON_OPT += -mabi=lp64d -+FCOMMON_OPT += -mabi=lp64d -+endif -+ifeq ($(LOONGARCH_CC_FLAVOR), OLD) -+CCOMMON_OPT += -mabi=lp64 -+FCOMMON_OPT += -mabi=lp64 -+endif - endif -diff --git a/Makefile.system b/Makefile.system -index b86aafbddb..4360a861cb 100644 ---- a/Makefile.system -+++ b/Makefile.system -@@ -1702,6 +1702,7 @@ export TARGET_CORE - export NO_AVX512 - export NO_AVX2 - export BUILD_BFLOAT16 -+export LOONGARCH_CC_FLAVOR - export NO_LASX - - export SBGEMM_UNROLL_M -diff --git a/c_check b/c_check -index a37e91f82c..573f0e52fd 100755 ---- a/c_check -+++ b/c_check -@@ -240,8 +240,19 @@ if [ "$architecture" = "riscv64" ]; then - rm -rf "$tmpd" - fi - -+loongarch_cc_flavor="" - no_lasx=0 - if [ "$architecture" = "loongarch64" ]; then -+ # Currently there are only 2 flavors: new-world and old-world. -+ # They differ in ABI names accepted, so check it to avoid creating temp -+ # files. -+ loongarch_cc_flavor="NEW" -+ { -+ $compiler_name -mabi=lp64d -E -o - /dev/null >/dev/null 2>&1 -+ } || { -+ loongarch_cc_flavor="OLD" -+ } -+ - tmpd=`mktemp -d` - tmpf="$tmpd/a.c" - # Old-world assembly flavor: LASX registers named "$xrNN", different -@@ -260,6 +271,7 @@ if [ "$architecture" = "loongarch64" ]; then - } || { - no_lasx=1 - } -+ - rm -rf "$tmpd" - fi - -@@ -377,6 +389,7 @@ done - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -+ [ -n "$loongarch_cc_flavor" ] && printf "LOONGARCH_CC_FLAVOR=%s\n" "$loongarch_cc_flavor" - exit 0 - } - -@@ -408,6 +421,7 @@ done - [ "$no_avx512" -eq 1 ] && printf "NO_AVX512=1\n" - [ "$no_avx2" -eq 1 ] && printf "NO_AVX2=1\n" - [ "$oldgcc" -eq 1 ] && printf "OLDGCC=1\n" -+ [ -n "$loongarch_cc_flavor" ] && printf "LOONGARCH_CC_FLAVOR=%s\n" "$loongarch_cc_flavor" - } >> "$makefile" - - os=`echo "$os" | tr '[[:lower:]]' '[[:upper:]]'/ ` diff --git a/sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch b/sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch deleted file mode 100644 index ce0487a6b2c0..000000000000 --- a/sci-libs/openblas/files/openblas-0.3.23-parallel-make.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 281e834566a06f1c756d262dc31e809faaf8933f Mon Sep 17 00:00:00 2001 -From: Guillaume Horel <guillaume.horel@gmail.com> -Date: Thu, 30 Mar 2023 15:15:25 -0400 -Subject: [PATCH 1/2] do not pass -j flag to the MAKE variable - ---- - getarch.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/getarch.c b/getarch.c -index 937a8db68c..87384c0840 100644 ---- a/getarch.c -+++ b/getarch.c -@@ -1930,15 +1930,15 @@ printf("ELF_VERSION=2\n"); - - #ifdef MAKE_NB_JOBS - #if MAKE_NB_JOBS > 0 -- printf("MAKE += -j %d\n", MAKE_NB_JOBS); -+ printf("MAKEFLAGS += -j %d\n", MAKE_NB_JOBS); - #else - // Let make use parent -j argument or -j1 if there - // is no make parent - #endif - #elif NO_PARALLEL_MAKE==1 -- printf("MAKE += -j 1\n"); -+ printf("MAKEFLAGS += -j 1\n"); - #else -- printf("MAKE += -j %d\n", get_num_cores()); -+ printf("MAKEFLAGS += -j %d\n", get_num_cores()); - #endif - - break; - -From 397108fba299c87ce17957452d57469af914f516 Mon Sep 17 00:00:00 2001 -From: Guillaume Horel <guillaume.horel@gmail.com> -Date: Fri, 31 Mar 2023 09:22:40 -0400 -Subject: [PATCH 2/2] serialize shared prerequisites - ---- - Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index 144b3400db..3c4b8948af 100644 ---- a/Makefile -+++ b/Makefile -@@ -40,9 +40,9 @@ LAPACK_NOOPT := $(filter-out -O0 -O1 -O2 -O3 -Ofast -O -Og -Os,$(LAPACK_FFLAGS)) - SUBDIRS_ALL = $(SUBDIRS) test ctest utest exports benchmark ../laswp ../bench cpp_thread_test - - .PHONY : all libs netlib $(RELA) test ctest shared install --.NOTPARALLEL : all libs $(RELA) prof lapack-test install blas-test -+.NOTPARALLEL : shared - --all :: libs netlib $(RELA) tests shared -+all :: tests - @echo - @echo " OpenBLAS build complete. ($(LIB_COMPONENTS))" - @echo -@@ -150,7 +150,7 @@ ifeq ($(OSNAME), CYGWIN_NT) - endif - endif - --tests : libs netlib $(RELA) shared -+tests : shared - ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN))) - touch $(LIBNAME) - ifndef NO_FBLAS |