File: pr-3718-ppc64el-segfault.patch

package info (click to toggle)
openblas 0.3.21%2Bds-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 55,584 kB
  • sloc: asm: 1,192,251; ansic: 327,031; fortran: 74,421; makefile: 13,364; sh: 4,649; perl: 4,414; python: 661; cpp: 244
file content (56 lines) | stat: -rw-r--r-- 1,721 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
https://github.com/xianyi/OpenBLAS/issues/3738
From d9dc015cfc78fc32f555995a89d6957ef0184ea2 Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Mon, 8 Aug 2022 14:52:10 +0200
Subject: [PATCH 1/2] Use blasint for INTERFACE64 compatibility

---
 test/compare_sgemm_sbgemm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
index a2c358cfa7..d4b5914506 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';

From 3d338b57de1837f1e2264a1262a9ee9203f31c6c Mon Sep 17 00:00:00 2001
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Date: Mon, 8 Aug 2022 17:09:45 +0200
Subject: [PATCH 2/2] remove spurious loops

---
 test/compare_sgemm_sbgemm.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
index d4b5914506..276fecae9d 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++;
 	}