Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 27caded

Browse files
Use fortran_int for emscripten, remove debug prints
emscripten doesn't use external BLAS / LAPACK. It uses a f2c version that's embedded in NumPy. They happen to declare some LAPACK APIs as returning int instead of void, because that's the way that f2c worked for subroutines. Also remove some debug prints from umath_linalg
1 parent 73f4631 commit 27caded

File tree

2 files changed

+40
-46
lines changed

2 files changed

+40
-46
lines changed

numpy/core/src/common/npy_blas_lapack.h

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,19 @@ typedef double fortran_doublereal;
1515
typedef f2c_complex fortran_complex;
1616
typedef f2c_doublecomplex fortran_doublecomplex;
1717

18-
void
18+
fortran_int
1919
BLAS_FUNC(sgeev)(char *jobvl, char *jobvr, fortran_int *n,
2020
float a[], fortran_int *lda, float wr[], float wi[],
2121
float vl[], fortran_int *ldvl, float vr[], fortran_int *ldvr,
2222
float work[], fortran_int lwork[],
2323
fortran_int *info);
24-
void
24+
fortran_int
2525
BLAS_FUNC(dgeev)(char *jobvl, char *jobvr, fortran_int *n,
2626
double a[], fortran_int *lda, double wr[], double wi[],
2727
double vl[], fortran_int *ldvl, double vr[], fortran_int *ldvr,
2828
double work[], fortran_int lwork[],
2929
fortran_int *info);
30-
void
30+
fortran_int
3131
BLAS_FUNC(cgeev)(char *jobvl, char *jobvr, fortran_int *n,
3232
f2c_complex a[], fortran_int *lda,
3333
f2c_complex w[],
@@ -36,7 +36,7 @@ BLAS_FUNC(cgeev)(char *jobvl, char *jobvr, fortran_int *n,
3636
f2c_complex work[], fortran_int *lwork,
3737
float rwork[],
3838
fortran_int *info);
39-
void
39+
fortran_int
4040
BLAS_FUNC(zgeev)(char *jobvl, char *jobvr, fortran_int *n,
4141
f2c_doublecomplex a[], fortran_int *lda,
4242
f2c_doublecomplex w[],
@@ -46,52 +46,52 @@ BLAS_FUNC(zgeev)(char *jobvl, char *jobvr, fortran_int *n,
4646
double rwork[],
4747
fortran_int *info);
4848

49-
void
49+
fortran_int
5050
BLAS_FUNC(ssyevd)(char *jobz, char *uplo, fortran_int *n,
5151
float a[], fortran_int *lda, float w[], float work[],
5252
fortran_int *lwork, fortran_int iwork[], fortran_int *liwork,
5353
fortran_int *info);
54-
void
54+
fortran_int
5555
BLAS_FUNC(dsyevd)(char *jobz, char *uplo, fortran_int *n,
5656
double a[], fortran_int *lda, double w[], double work[],
5757
fortran_int *lwork, fortran_int iwork[], fortran_int *liwork,
5858
fortran_int *info);
59-
void
59+
fortran_int
6060
BLAS_FUNC(cheevd)(char *jobz, char *uplo, fortran_int *n,
6161
f2c_complex a[], fortran_int *lda,
6262
float w[], f2c_complex work[],
6363
fortran_int *lwork, float rwork[], fortran_int *lrwork, fortran_int iwork[],
6464
fortran_int *liwork,
6565
fortran_int *info);
66-
void
66+
fortran_int
6767
BLAS_FUNC(zheevd)(char *jobz, char *uplo, fortran_int *n,
6868
f2c_doublecomplex a[], fortran_int *lda,
6969
double w[], f2c_doublecomplex work[],
7070
fortran_int *lwork, double rwork[], fortran_int *lrwork, fortran_int iwork[],
7171
fortran_int *liwork,
7272
fortran_int *info);
7373

74-
void
74+
fortran_int
7575
BLAS_FUNC(sgelsd)(fortran_int *m, fortran_int *n, fortran_int *nrhs,
7676
float a[], fortran_int *lda, float b[], fortran_int *ldb,
7777
float s[], float *rcond, fortran_int *rank,
7878
float work[], fortran_int *lwork, fortran_int iwork[],
7979
fortran_int *info);
80-
void
80+
fortran_int
8181
BLAS_FUNC(dgelsd)(fortran_int *m, fortran_int *n, fortran_int *nrhs,
8282
double a[], fortran_int *lda, double b[], fortran_int *ldb,
8383
double s[], double *rcond, fortran_int *rank,
8484
double work[], fortran_int *lwork, fortran_int iwork[],
8585
fortran_int *info);
86-
void
86+
fortran_int
8787
BLAS_FUNC(cgelsd)(fortran_int *m, fortran_int *n, fortran_int *nrhs,
8888
f2c_complex a[], fortran_int *lda,
8989
f2c_complex b[], fortran_int *ldb,
9090
float s[], float *rcond, fortran_int *rank,
9191
f2c_complex work[], fortran_int *lwork,
9292
float rwork[], fortran_int iwork[],
9393
fortran_int *info);
94-
void
94+
fortran_int
9595
BLAS_FUNC(zgelsd)(fortran_int *m, fortran_int *n, fortran_int *nrhs,
9696
f2c_doublecomplex a[], fortran_int *lda,
9797
f2c_doublecomplex b[], fortran_int *ldb,
@@ -100,43 +100,43 @@ BLAS_FUNC(zgelsd)(fortran_int *m, fortran_int *n, fortran_int *nrhs,
100100
double rwork[], fortran_int iwork[],
101101
fortran_int *info);
102102

103-
void
103+
fortran_int
104104
BLAS_FUNC(dgeqrf)(fortran_int *m, fortran_int *n, double a[], fortran_int *lda,
105105
double tau[], double work[],
106106
fortran_int *lwork, fortran_int *info);
107-
void
107+
fortran_int
108108
BLAS_FUNC(zgeqrf)(fortran_int *m, fortran_int *n, f2c_doublecomplex a[], fortran_int *lda,
109109
f2c_doublecomplex tau[], f2c_doublecomplex work[],
110110
fortran_int *lwork, fortran_int *info);
111111

112-
void
112+
fortran_int
113113
BLAS_FUNC(dorgqr)(fortran_int *m, fortran_int *n, fortran_int *k, double a[], fortran_int *lda,
114114
double tau[], double work[],
115115
fortran_int *lwork, fortran_int *info);
116-
void
116+
fortran_int
117117
BLAS_FUNC(zungqr)(fortran_int *m, fortran_int *n, fortran_int *k, f2c_doublecomplex a[],
118118
fortran_int *lda, f2c_doublecomplex tau[],
119119
f2c_doublecomplex work[], fortran_int *lwork, fortran_int *info);
120120

121-
void
121+
fortran_int
122122
BLAS_FUNC(sgesv)(fortran_int *n, fortran_int *nrhs,
123123
float a[], fortran_int *lda,
124124
fortran_int ipiv[],
125125
float b[], fortran_int *ldb,
126126
fortran_int *info);
127-
void
127+
fortran_int
128128
BLAS_FUNC(dgesv)(fortran_int *n, fortran_int *nrhs,
129129
double a[], fortran_int *lda,
130130
fortran_int ipiv[],
131131
double b[], fortran_int *ldb,
132132
fortran_int *info);
133-
void
133+
fortran_int
134134
BLAS_FUNC(cgesv)(fortran_int *n, fortran_int *nrhs,
135135
f2c_complex a[], fortran_int *lda,
136136
fortran_int ipiv[],
137137
f2c_complex b[], fortran_int *ldb,
138138
fortran_int *info);
139-
void
139+
fortran_int
140140
BLAS_FUNC(zgesv)(fortran_int *n, fortran_int *nrhs,
141141
f2c_doublecomplex a[], fortran_int *lda,
142142
fortran_int ipiv[],
@@ -164,82 +164,82 @@ BLAS_FUNC(zgetrf)(fortran_int *m, fortran_int *n,
164164
fortran_int ipiv[],
165165
fortran_int *info);
166166

167-
void
167+
fortran_int
168168
BLAS_FUNC(spotrf)(char *uplo, fortran_int *n,
169169
float a[], fortran_int *lda,
170170
fortran_int *info);
171-
void
171+
fortran_int
172172
BLAS_FUNC(dpotrf)(char *uplo, fortran_int *n,
173173
double a[], fortran_int *lda,
174174
fortran_int *info);
175-
void
175+
fortran_int
176176
BLAS_FUNC(cpotrf)(char *uplo, fortran_int *n,
177177
f2c_complex a[], fortran_int *lda,
178178
fortran_int *info);
179-
void
179+
fortran_int
180180
BLAS_FUNC(zpotrf)(char *uplo, fortran_int *n,
181181
f2c_doublecomplex a[], fortran_int *lda,
182182
fortran_int *info);
183183

184-
void
184+
fortran_int
185185
BLAS_FUNC(sgesdd)(char *jobz, fortran_int *m, fortran_int *n,
186186
float a[], fortran_int *lda, float s[], float u[],
187187
fortran_int *ldu, float vt[], fortran_int *ldvt, float work[],
188188
fortran_int *lwork, fortran_int iwork[], fortran_int *info);
189-
void
189+
fortran_int
190190
BLAS_FUNC(dgesdd)(char *jobz, fortran_int *m, fortran_int *n,
191191
double a[], fortran_int *lda, double s[], double u[],
192192
fortran_int *ldu, double vt[], fortran_int *ldvt, double work[],
193193
fortran_int *lwork, fortran_int iwork[], fortran_int *info);
194-
void
194+
fortran_int
195195
BLAS_FUNC(cgesdd)(char *jobz, fortran_int *m, fortran_int *n,
196196
f2c_complex a[], fortran_int *lda,
197197
float s[], f2c_complex u[], fortran_int *ldu,
198198
f2c_complex vt[], fortran_int *ldvt,
199199
f2c_complex work[], fortran_int *lwork,
200200
float rwork[], fortran_int iwork[], fortran_int *info);
201-
void
201+
fortran_int
202202
BLAS_FUNC(zgesdd)(char *jobz, fortran_int *m, fortran_int *n,
203203
f2c_doublecomplex a[], fortran_int *lda,
204204
double s[], f2c_doublecomplex u[], fortran_int *ldu,
205205
f2c_doublecomplex vt[], fortran_int *ldvt,
206206
f2c_doublecomplex work[], fortran_int *lwork,
207207
double rwork[], fortran_int iwork[], fortran_int *info);
208208

209-
void
209+
fortran_int
210210
BLAS_FUNC(spotrs)(char *uplo, fortran_int *n, fortran_int *nrhs,
211211
float a[], fortran_int *lda,
212212
float b[], fortran_int *ldb,
213213
fortran_int *info);
214-
void
214+
fortran_int
215215
BLAS_FUNC(dpotrs)(char *uplo, fortran_int *n, fortran_int *nrhs,
216216
double a[], fortran_int *lda,
217217
double b[], fortran_int *ldb,
218218
fortran_int *info);
219-
void
219+
fortran_int
220220
BLAS_FUNC(cpotrs)(char *uplo, fortran_int *n, fortran_int *nrhs,
221221
f2c_complex a[], fortran_int *lda,
222222
f2c_complex b[], fortran_int *ldb,
223223
fortran_int *info);
224-
void
224+
fortran_int
225225
BLAS_FUNC(zpotrs)(char *uplo, fortran_int *n, fortran_int *nrhs,
226226
f2c_doublecomplex a[], fortran_int *lda,
227227
f2c_doublecomplex b[], fortran_int *ldb,
228228
fortran_int *info);
229229

230-
void
230+
fortran_int
231231
BLAS_FUNC(spotri)(char *uplo, fortran_int *n,
232232
float a[], fortran_int *lda,
233233
fortran_int *info);
234-
void
234+
fortran_int
235235
BLAS_FUNC(dpotri)(char *uplo, fortran_int *n,
236236
double a[], fortran_int *lda,
237237
fortran_int *info);
238-
void
238+
fortran_int
239239
BLAS_FUNC(cpotri)(char *uplo, fortran_int *n,
240240
f2c_complex a[], fortran_int *lda,
241241
fortran_int *info);
242-
void
242+
fortran_int
243243
BLAS_FUNC(zpotri)(char *uplo, fortran_int *n,
244244
f2c_doublecomplex a[], fortran_int *lda,
245245
fortran_int *info);
@@ -286,31 +286,31 @@ BLAS_FUNC(zdotc)(f2c_doublecomplex *ret, fortran_int *n,
286286
f2c_doublecomplex *sx, fortran_int *incx,
287287
f2c_doublecomplex *sy, fortran_int *incy);
288288

289-
void
289+
fortran_int
290290
BLAS_FUNC(sgemm)(char *transa, char *transb,
291291
fortran_int *m, fortran_int *n, fortran_int *k,
292292
float *alpha,
293293
float *a, fortran_int *lda,
294294
float *b, fortran_int *ldb,
295295
float *beta,
296296
float *c, fortran_int *ldc);
297-
void
297+
fortran_int
298298
BLAS_FUNC(dgemm)(char *transa, char *transb,
299299
fortran_int *m, fortran_int *n, fortran_int *k,
300300
double *alpha,
301301
double *a, fortran_int *lda,
302302
double *b, fortran_int *ldb,
303303
double *beta,
304304
double *c, fortran_int *ldc);
305-
void
305+
fortran_int
306306
BLAS_FUNC(cgemm)(char *transa, char *transb,
307307
fortran_int *m, fortran_int *n, fortran_int *k,
308308
f2c_complex *alpha,
309309
f2c_complex *a, fortran_int *lda,
310310
f2c_complex *b, fortran_int *ldb,
311311
f2c_complex *beta,
312312
f2c_complex *c, fortran_int *ldc);
313-
void
313+
fortran_int
314314
BLAS_FUNC(zgemm)(char *transa, char *transb,
315315
fortran_int *m, fortran_int *n, fortran_int *k,
316316
f2c_doublecomplex *alpha,

numpy/linalg/umath_linalg.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -298,34 +298,28 @@ dump_linearize_data(const char* name, const LINEARIZE_DATA_t* params)
298298
}
299299

300300
static inline void
301-
print(npy_float s)
302301
{
303302
TRACE_TXT(" %8.4f", s);
304303
}
305304
static inline void
306-
print(npy_double d)
307305
{
308306
TRACE_TXT(" %10.6f", d);
309307
}
310308
static inline void
311-
print(npy_cfloat c)
312309
{
313310
float* c_parts = (float*)&c;
314311
TRACE_TXT("(%8.4f, %8.4fj)", c_parts[0], c_parts[1]);
315312
}
316313
static inline void
317-
print(f2c_complex c)
318314
{
319315
TRACE_TXT("(%8.4f, %8.4fj)", c.r, c.i);
320316
}
321317
static inline void
322-
print(npy_cdouble z)
323318
{
324319
double* z_parts = (double*)&z;
325320
TRACE_TXT("(%8.4f, %8.4fj)", z_parts[0], z_parts[1]);
326321
}
327322
static inline void
328-
print(f2c_doublecomplex z)
329323
{
330324
TRACE_TXT("(%8.4f, %8.4fj)", z.r, z.i);
331325
}

0 commit comments

Comments
 (0)