summaryrefslogtreecommitdiff
path: root/math/openblas64/files
diff options
context:
space:
mode:
authorThierry Thomas <thierry@FreeBSD.org>2024-06-08 15:46:43 +0200
committerThierry Thomas <thierry@FreeBSD.org>2024-06-08 20:41:54 +0200
commitaebc677df1e11d529cd203488f568a088f5187d3 (patch)
tree0145f5d87005ed430d8584b9325f6b55667b4009 /math/openblas64/files
parentx11/kanshi: update to 1.7.0 (diff)
math/openblas64: repocopy from math/openblas
Diffstat (limited to 'math/openblas64/files')
-rw-r--r--math/openblas64/files/patch-common__arm.h20
-rw-r--r--math/openblas64/files/patch-cpuid__arm.c16
-rw-r--r--math/openblas64/files/patch-exports_Makefile11
-rw-r--r--math/openblas64/files/patch-interface__ztrmv.c11
4 files changed, 58 insertions, 0 deletions
diff --git a/math/openblas64/files/patch-common__arm.h b/math/openblas64/files/patch-common__arm.h
new file mode 100644
index 000000000000..1ffd13a2c63b
--- /dev/null
+++ b/math/openblas64/files/patch-common__arm.h
@@ -0,0 +1,20 @@
+--- common_arm.h.orig 2023-04-01 20:18:01 UTC
++++ common_arm.h
+@@ -95,6 +95,17 @@ static inline int blas_quickdivide(blasint x, blasint
+
+ #endif
+
++/* Translate pre-UAL asm to UAL equivalents */
++#if defined(__clang__)
++#define fnmacs vmls.f32
++#define fnmacd vmls.f64
++#define fnmuls vnmul.f32
++#define fnmuld vnmul.f64
++#define fldmias vldmia
++#define fstmias vstmia
++#define fldmiad vldmia
++#define fstmiad vstmia
++#endif
+
+ #ifndef F_INTERFACE
+ #define REALNAME ASMNAME
diff --git a/math/openblas64/files/patch-cpuid__arm.c b/math/openblas64/files/patch-cpuid__arm.c
new file mode 100644
index 000000000000..0aa24dc52a12
--- /dev/null
+++ b/math/openblas64/files/patch-cpuid__arm.c
@@ -0,0 +1,16 @@
+--- cpuid_arm.c.orig 2016-09-01 03:58:42 UTC
++++ cpuid_arm.c
+@@ -181,7 +181,12 @@ int detect(void)
+ }
+
+ }
+-
++#else
++#if (__ARM_ARCH == 7)
++ return CPU_ARMV7;
++#else
++ return CPU_ARMV6;
++#endif
+ #endif
+
+ return CPU_UNKNOWN;
diff --git a/math/openblas64/files/patch-exports_Makefile b/math/openblas64/files/patch-exports_Makefile
new file mode 100644
index 000000000000..7e7692de9ce0
--- /dev/null
+++ b/math/openblas64/files/patch-exports_Makefile
@@ -0,0 +1,11 @@
+--- exports/Makefile.orig 2023-04-01 20:18:01 UTC
++++ exports/Makefile
+@@ -222,7 +222,7 @@ else
+ endif
+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -o ../$(LIBSONAME) \
+ -Wl,--whole-archive $< -Wl,--no-whole-archive \
+- $(FEXTRALIB) $(EXTRALIB)
++ -Wl,-soname,$(LIBSONAME) $(FEXTRALIB) $(EXTRALIB)
+ $(CC) $(CFLAGS) $(LDFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK.
+ rm -f linktest
+
diff --git a/math/openblas64/files/patch-interface__ztrmv.c b/math/openblas64/files/patch-interface__ztrmv.c
new file mode 100644
index 000000000000..854a83bf42ea
--- /dev/null
+++ b/math/openblas64/files/patch-interface__ztrmv.c
@@ -0,0 +1,11 @@
+--- interface/ztrmv.c.orig 2019-04-29 17:22:19 UTC
++++ interface/ztrmv.c
+@@ -245,7 +245,7 @@ void CNAME(enum CBLAS_ORDER order, enum CBLAS_UPLO Upl
+ else
+ #endif
+ {
+- buffer_size = ((n - 1) / DTB_ENTRIES) * 2 * DTB_ENTRIES + 32 / sizeof(FLOAT);
++ buffer_size = (((n - 1) / DTB_ENTRIES) * 2 * DTB_ENTRIES + 32 / sizeof(FLOAT)) + 8;
+ // It seems to be required for some K8 or Barcelona CPU
+ buffer_size += 8;
+ if(incx != 1)