Coverage Report

Created: 2025-09-05 19:41

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/root/doris/contrib/openblas/common.h
Line
Count
Source
1
/*********************************************************************/
2
/* Copyright 2009, 2010 The University of Texas at Austin.           */
3
/* All rights reserved.                                              */
4
/*                                                                   */
5
/* Redistribution and use in source and binary forms, with or        */
6
/* without modification, are permitted provided that the following   */
7
/* conditions are met:                                               */
8
/*                                                                   */
9
/*   1. Redistributions of source code must retain the above         */
10
/*      copyright notice, this list of conditions and the following  */
11
/*      disclaimer.                                                  */
12
/*                                                                   */
13
/*   2. Redistributions in binary form must reproduce the above      */
14
/*      copyright notice, this list of conditions and the following  */
15
/*      disclaimer in the documentation and/or other materials       */
16
/*      provided with the distribution.                              */
17
/*                                                                   */
18
/*    THIS  SOFTWARE IS PROVIDED  BY THE  UNIVERSITY OF  TEXAS AT    */
19
/*    AUSTIN  ``AS IS''  AND ANY  EXPRESS OR  IMPLIED WARRANTIES,    */
20
/*    INCLUDING, BUT  NOT LIMITED  TO, THE IMPLIED  WARRANTIES OF    */
21
/*    MERCHANTABILITY  AND FITNESS FOR  A PARTICULAR  PURPOSE ARE    */
22
/*    DISCLAIMED.  IN  NO EVENT SHALL THE UNIVERSITY  OF TEXAS AT    */
23
/*    AUSTIN OR CONTRIBUTORS BE  LIABLE FOR ANY DIRECT, INDIRECT,    */
24
/*    INCIDENTAL,  SPECIAL, EXEMPLARY,  OR  CONSEQUENTIAL DAMAGES    */
25
/*    (INCLUDING, BUT  NOT LIMITED TO,  PROCUREMENT OF SUBSTITUTE    */
26
/*    GOODS  OR  SERVICES; LOSS  OF  USE,  DATA,  OR PROFITS;  OR    */
27
/*    BUSINESS INTERRUPTION) HOWEVER CAUSED  AND ON ANY THEORY OF    */
28
/*    LIABILITY, WHETHER  IN CONTRACT, STRICT  LIABILITY, OR TORT    */
29
/*    (INCLUDING NEGLIGENCE OR OTHERWISE)  ARISING IN ANY WAY OUT    */
30
/*    OF  THE  USE OF  THIS  SOFTWARE,  EVEN  IF ADVISED  OF  THE    */
31
/*    POSSIBILITY OF SUCH DAMAGE.                                    */
32
/*                                                                   */
33
/* The views and conclusions contained in the software and           */
34
/* documentation are those of the authors and should not be          */
35
/* interpreted as representing official policies, either expressed   */
36
/* or implied, of The University of Texas at Austin.                 */
37
/*********************************************************************/
38
39
#ifndef COMMON_H
40
#define COMMON_H
41
42
#ifdef __cplusplus
43
extern "C" {
44
  /* Assume C declarations for C++ */
45
#endif  /* __cplusplus */
46
47
#ifndef _GNU_SOURCE
48
#define _GNU_SOURCE
49
#endif
50
51
#ifndef __USE_XOPEN
52
#define __USE_XOPEN
53
#endif
54
55
#ifndef __USE_SVID
56
#define __USE_SVID
57
#endif
58
59
#ifdef BUILD_KERNEL
60
#include "config_kernel.h"
61
#else
62
#include "config.h"
63
#endif
64
65
#undef ENABLE_SSE_EXCEPTION
66
67
#if defined(SMP_SERVER) || defined(SMP_ONDEMAND)
68
#define SMP
69
#endif
70
71
#if defined(OS_WINNT) || defined(OS_CYGWIN_NT) || defined(OS_INTERIX)
72
#define WINDOWS_ABI
73
#define OS_WINDOWS
74
75
#ifdef DOUBLE
76
#define DOUBLE_DEFINED DOUBLE
77
#undef  DOUBLE
78
#endif
79
#endif
80
81
#if !defined(NOINCLUDE) && !defined(ASSEMBLER)
82
#include <stdio.h>
83
#include <stdlib.h>
84
#include <string.h>
85
86
#if !defined(_MSC_VER)
87
#include <unistd.h>
88
#elif _MSC_VER < 1900
89
#define snprintf _snprintf
90
#endif
91
#include <time.h>
92
93
#if defined(OS_LINUX) || defined(OS_QNX)
94
#include <malloc.h>
95
#include <sched.h>
96
#endif
97
98
#if defined(OS_DARWIN) || defined(OS_FREEBSD) || defined(OS_NETBSD) || defined(OS_OPENBSD) || defined(OS_DRAGONFLY) || defined(OS_ANDROID)
99
#include <sched.h>
100
#endif
101
102
#ifdef OS_ANDROID
103
#define NO_SYSV_IPC
104
//Android NDK only supports complex.h since Android 5.0
105
#if __ANDROID_API__ < 21
106
#define FORCE_OPENBLAS_COMPLEX_STRUCT
107
#endif
108
#endif
109
110
#if defined(OS_HAIKU) || defined(OS_QNX)
111
#define NO_SYSV_IPC
112
#endif
113
114
#ifdef OS_WINDOWS
115
#ifdef  ATOM
116
#define GOTO_ATOM ATOM
117
#undef  ATOM
118
#endif
119
#include <windows.h>
120
#include <math.h>
121
#ifdef  GOTO_ATOM
122
#define ATOM GOTO_ATOM
123
#undef  GOTO_ATOM
124
#endif
125
#elif !defined(OS_EMBEDDED)
126
#include <sys/mman.h>
127
#ifndef NO_SYSV_IPC
128
#include <sys/shm.h>
129
#endif
130
#include <sys/time.h>
131
#include <time.h>
132
#include <unistd.h>
133
#include <math.h>
134
#if defined(SMP) || defined(USE_LOCKING)
135
#include <pthread.h>
136
#endif
137
#else
138
#include <time.h>
139
#include <math.h>
140
#endif
141
142
#if defined(OS_SUNOS)
143
#include <thread.h>
144
#endif
145
146
#ifdef __DECC
147
#include <c_asm.h>
148
#include <machine/builtins.h>
149
#endif
150
151
#if defined(ARCH_IA64) && defined(ENABLE_SSE_EXCEPTION)
152
#include <fenv.h>
153
#endif
154
155
#endif
156
157
#if defined(OS_WINDOWS) && defined(DOUBLE_DEFINED)
158
#define DOUBLE DOUBLE_DEFINED
159
#undef DOUBLE_DEFINED
160
#endif
161
162
#undef DEBUG_INFO
163
#define SMP_DEBUG
164
#undef MALLOC_DEBUG
165
#undef SMP_ALLOC_DEBUG
166
167
#ifndef ZERO
168
#ifdef XDOUBLE
169
#define ZERO  0.e0L
170
#elif defined DOUBLE
171
0
#define ZERO  0.e0
172
#else
173
0
#define ZERO  0.e0f
174
#endif
175
#endif
176
177
#ifndef ONE
178
#ifdef XDOUBLE
179
#define ONE  1.e0L
180
#elif defined DOUBLE
181
0
#define ONE  1.e0
182
#else
183
0
#define ONE  1.e0f
184
#endif
185
#endif
186
187
0
#define BITMASK(a, b, c) ((((a) >> (b)) & (c)))
188
189
#define ALLOCA_ALIGN 63UL
190
191
156
#define NUM_BUFFERS MAX(50,(MAX_CPU_NUMBER * 2 * MAX_PARALLEL_NUMBER))
192
193
#ifdef NEEDBUNDERSCORE
194
1
#define BLASFUNC(FUNC) FUNC##_
195
#else
196
#define BLASFUNC(FUNC) FUNC
197
#endif
198
199
#undef  USE_PTHREAD_LOCK
200
#undef  USE_PTHREAD_SPINLOCK
201
202
#if defined(USE_PTHREAD_LOCK) && defined(USE_PTHREAD_SPINLOCK)
203
#error "You can't specify both LOCK operation!"
204
#endif
205
206
#if defined(SMP) || defined(USE_LOCKING)
207
#define USE_PTHREAD_LOCK
208
#undef  USE_PTHREAD_SPINLOCK
209
#endif
210
211
#ifdef OS_WINDOWS
212
#undef  USE_PTHREAD_LOCK
213
#undef  USE_PTHREAD_SPINLOCK
214
#endif
215
216
#if   defined(USE_PTHREAD_LOCK)
217
0
#define   LOCK_COMMAND(x)   pthread_mutex_lock(x)
218
0
#define UNLOCK_COMMAND(x)   pthread_mutex_unlock(x)
219
#elif defined(USE_PTHREAD_SPINLOCK)
220
#ifndef ASSEMBLER
221
typedef volatile int pthread_spinlock_t;
222
int pthread_spin_lock (pthread_spinlock_t *__lock);
223
int pthread_spin_unlock (pthread_spinlock_t *__lock);
224
#endif
225
#define   LOCK_COMMAND(x)   pthread_spin_lock(x)
226
#define UNLOCK_COMMAND(x)   pthread_spin_unlock(x)
227
#else
228
#define   LOCK_COMMAND(x)   blas_lock(x)
229
#define UNLOCK_COMMAND(x)   blas_unlock(x)
230
#endif
231
232
#define GOTO_SHMID  0x510510
233
234
#if 0
235
#ifndef __CUDACC__
236
#define __global__
237
#define __device__
238
#define __host__
239
#define __shared__
240
#endif
241
#endif
242
243
#ifndef ASSEMBLER
244
245
#ifdef QUAD_PRECISION
246
typedef struct {
247
  unsigned long x[2];
248
}  xdouble;
249
#elif defined EXPRECISION
250
#define xdouble long double
251
#else
252
#define xdouble double
253
#endif
254
255
#if defined(OS_WINDOWS) && defined(__64BIT__)
256
typedef long long BLASLONG;
257
typedef unsigned long long BLASULONG;
258
#else
259
typedef long BLASLONG;
260
typedef unsigned long BLASULONG;
261
#endif
262
263
#ifndef bfloat16
264
#include <stdint.h>
265
typedef uint16_t bfloat16;
266
#define BFLOAT16CONVERSION 1
267
#endif
268
269
#ifdef USE64BITINT
270
typedef BLASLONG blasint;
271
#if defined(OS_WINDOWS) && defined(__64BIT__)
272
#define blasabs(x) llabs(x)
273
#else
274
#define blasabs(x) labs(x)
275
#endif
276
#else
277
typedef int blasint;
278
0
#define blasabs(x) abs(x)
279
#endif
280
#else
281
#ifdef USE64BITINT
282
#define INTSHIFT  3
283
#define INTSIZE   8
284
#else
285
#define INTSHIFT  2
286
#define INTSIZE   4
287
#endif
288
#endif
289
290
#ifdef XDOUBLE
291
#define FLOAT xdouble
292
#ifdef QUAD_PRECISION
293
#define XFLOAT  xidouble
294
#endif
295
#ifdef QUAD_PRECISION
296
#define SIZE  32
297
#define  BASE_SHIFT 5
298
#define ZBASE_SHIFT 6
299
#else
300
#define SIZE  16
301
#define  BASE_SHIFT 4
302
#define ZBASE_SHIFT 5
303
#endif
304
#elif defined(DOUBLE)
305
0
#define FLOAT double
306
0
#define SIZE  8
307
#define  BASE_SHIFT 3
308
#define ZBASE_SHIFT 4
309
#elif defined(BFLOAT16)
310
#define IFLOAT  bfloat16
311
#define XFLOAT IFLOAT
312
#define FLOAT float
313
#define SIZE   2
314
#define BASE_SHIFT 1
315
#define ZBASE_SHIFT 2
316
#else
317
0
#define FLOAT float
318
0
#define SIZE    4
319
#define  BASE_SHIFT 2
320
#define ZBASE_SHIFT 3
321
#endif
322
323
#ifndef XFLOAT
324
#define XFLOAT  FLOAT
325
#endif
326
327
#ifndef IFLOAT
328
0
#define IFLOAT  FLOAT
329
#endif
330
331
#ifndef COMPLEX
332
0
#define COMPSIZE  1
333
#else
334
#define COMPSIZE  2
335
#endif
336
337
338
#define Address_H(x) (((x)+(1<<15))>>16)
339
#define Address_L(x) ((x)-((Address_H(x))<<16))
340
341
#ifndef MAX_CPU_NUMBER
342
#define MAX_CPU_NUMBER 2
343
#endif
344
345
#if defined(OS_SUNOS)
346
#define YIELDING  thr_yield()
347
#endif
348
349
#if defined(OS_WINDOWS)
350
#if defined(_MSC_VER) && !defined(__clang__)
351
#define YIELDING    YieldProcessor()
352
#else
353
#define YIELDING  SwitchToThread()
354
#endif
355
#endif
356
357
#if defined(ARMV7) || defined(ARMV6) || defined(ARMV8) || defined(ARMV5)
358
#define YIELDING        __asm__ __volatile__ ("nop;nop;nop;nop;nop;nop;nop;nop; \n");
359
#endif
360
361
362
#if defined(POWER8) || defined(POWER9) || defined(POWER10)
363
#ifndef YIELDING
364
#define YIELDING        __asm__ __volatile__ ("nop;nop;nop;nop;nop;nop;nop;nop;\n");
365
#endif
366
#endif
367
368
369
#if defined(ARCH_X86_64)
370
#ifndef YIELDING
371
0
#define YIELDING        __asm__ __volatile__ ("nop;nop;nop;nop;nop;nop;nop;nop;\n");
372
#endif
373
#endif
374
375
#if defined(ARCH_RISCV64)
376
#ifndef YIELDING
377
#define YIELDING        __asm__ __volatile__ ("nop;nop;nop;nop;nop;nop;nop;nop;\n");
378
#endif
379
#endif
380
381
382
#ifdef __EMSCRIPTEN__
383
#define YIELDING
384
#endif
385
386
#ifndef YIELDING
387
#define YIELDING  sched_yield()
388
#endif
389
390
/***
391
To alloc job_t on heap or stack.
392
please https://github.com/xianyi/OpenBLAS/issues/246
393
***/
394
#if defined(OS_WINDOWS)
395
#define GETRF_MEM_ALLOC_THRESHOLD 32
396
#define BLAS3_MEM_ALLOC_THRESHOLD 32
397
#endif
398
399
#ifndef GETRF_MEM_ALLOC_THRESHOLD
400
#define GETRF_MEM_ALLOC_THRESHOLD 80
401
#endif
402
403
#ifndef BLAS3_MEM_ALLOC_THRESHOLD
404
#define BLAS3_MEM_ALLOC_THRESHOLD 32 
405
#endif
406
407
#ifdef QUAD_PRECISION
408
#include "common_quad.h"
409
#endif
410
411
#ifdef ARCH_ALPHA
412
#include "common_alpha.h"
413
#endif
414
415
#if (defined(ARCH_X86) || defined(ARCH_X86_64)) && defined(__CET__) && defined(__has_include)
416
#if __has_include(<cet.h>)
417
#include <cet.h>
418
#endif
419
#endif
420
#ifndef _CET_ENDBR
421
#define _CET_ENDBR
422
#endif
423
424
#ifdef ARCH_X86
425
#include "common_x86.h"
426
#endif
427
428
#ifdef ARCH_X86_64
429
#include "common_x86_64.h"
430
#endif
431
432
#ifdef ARCH_IA64
433
#include "common_ia64.h"
434
#endif
435
436
#ifdef ARCH_POWER
437
#include "common_power.h"
438
#endif
439
440
#ifdef sparc
441
#include "common_sparc.h"
442
#endif
443
444
#ifdef ARCH_MIPS
445
#include "common_mips.h"
446
#endif
447
448
449
#ifdef ARCH_RISCV64
450
#include "common_riscv64.h"
451
#endif
452
453
#ifdef ARCH_MIPS64
454
#include "common_mips64.h"
455
#endif
456
457
#ifdef ARCH_ARM
458
#include "common_arm.h"
459
#endif
460
461
#ifdef ARCH_ARM64
462
#include "common_arm64.h"
463
#endif
464
465
#ifdef ARCH_ZARCH
466
#include "common_zarch.h"
467
#endif
468
469
#ifdef ARCH_LOONGARCH64
470
#include "common_loongarch64.h"
471
#endif
472
473
#ifdef ARCH_E2K
474
#include "common_e2k.h"
475
#endif
476
477
#ifdef ARCH_CSKY
478
#include "common_csky.h"
479
#endif
480
481
#ifndef ASSEMBLER
482
#ifdef OS_WINDOWSSTORE
483
typedef char env_var_t[MAX_PATH];
484
#define readenv(p, n) 0
485
#else
486
#if defined(OS_WINDOWS) && !defined(OS_CYGWIN_NT)
487
typedef char env_var_t[MAX_PATH];
488
#define readenv(p, n) GetEnvironmentVariable((LPCTSTR)(n), (LPTSTR)(p), sizeof(p))
489
#else
490
typedef char* env_var_t;
491
8
#define readenv(p, n) ((p)=getenv(n))
492
#endif
493
#endif
494
495
#if !defined(RPCC_DEFINED) && !defined(OS_WINDOWS)
496
#ifdef _POSIX_MONOTONIC_CLOCK
497
#if defined(__GLIBC_PREREQ) // cut the if condition if two lines, otherwise will fail at __GLIBC_PREREQ(2, 17)
498
#if __GLIBC_PREREQ(2, 17) // don't require -lrt
499
#define USE_MONOTONIC
500
#endif
501
#elif defined(OS_ANDROID)
502
#define USE_MONOTONIC
503
#endif
504
#endif
505
/* use similar scale as x86 rdtsc for timeouts to work correctly */
506
static inline unsigned long long rpcc(void){
507
#ifdef USE_MONOTONIC
508
  struct timespec ts;
509
  clock_gettime(CLOCK_MONOTONIC, &ts);
510
  return (unsigned long long)ts.tv_sec * 1000000000ull + ts.tv_nsec;
511
#elif !defined(OS_EMBEDDED)
512
  struct timeval tv;
513
  gettimeofday(&tv,NULL);
514
  return (unsigned long long)tv.tv_sec * 1000000000ull + tv.tv_usec * 1000;
515
#else
516
  return 0;
517
#endif
518
}
519
#define RPCC_DEFINED
520
#define RPCC64BIT
521
#endif // !RPCC_DEFINED
522
523
#if !defined(BLAS_LOCK_DEFINED) && defined(__GNUC__)
524
static __inline void blas_lock(volatile BLASULONG *address){
525
526
  do {
527
    while (*address) {YIELDING;};
528
529
  } while (!__sync_bool_compare_and_swap(address, 0, 1));
530
}
531
#define BLAS_LOCK_DEFINED
532
#endif
533
534
#ifndef RPCC_DEFINED
535
#error "rpcc() implementation is missing for your platform"
536
#endif
537
#ifndef BLAS_LOCK_DEFINED
538
#error "blas_lock() implementation is missing for your platform"
539
#endif
540
#endif // !ASSEMBLER
541
542
#ifdef OS_LINUX
543
#include "common_linux.h"
544
#endif
545
546
#ifdef OS_EMBEDDED
547
#define DTB_DEFAULT_ENTRIES 64
548
#endif
549
550
12
#define MMAP_ACCESS (PROT_READ | PROT_WRITE)
551
552
#ifdef __NetBSD__
553
#define MMAP_POLICY (MAP_PRIVATE | MAP_ANON)
554
#else
555
12
#define MMAP_POLICY (MAP_PRIVATE | MAP_ANONYMOUS)
556
#endif
557
558
#ifndef ASSEMBLER
559
/* C99 supports complex floating numbers natively, which GCC also offers as an
560
   extension since version 3.0.  If neither are available, use a compatible
561
   structure as fallback (see Clause 6.2.5.13 of the C99 standard). */
562
#if ((defined(__STDC_IEC_559_COMPLEX__) || __STDC_VERSION__ >= 199901L || \
563
      (__GNUC__ >= 3 && !defined(__cplusplus))) && !(defined(FORCE_OPENBLAS_COMPLEX_STRUCT))) && !defined(_MSC_VER)
564
  #define OPENBLAS_COMPLEX_C99
565
  #ifndef __cplusplus
566
    #include <complex.h>
567
  #endif
568
  typedef float _Complex openblas_complex_float;
569
  typedef double _Complex openblas_complex_double;
570
  typedef xdouble _Complex openblas_complex_xdouble;
571
  #define openblas_make_complex_float(real, imag)    ((real) + ((imag) * _Complex_I))
572
  #define openblas_make_complex_double(real, imag)   ((real) + ((imag) * _Complex_I))
573
  #define openblas_make_complex_xdouble(real, imag)  ((real) + ((imag) * _Complex_I))
574
#else
575
  #define OPENBLAS_COMPLEX_STRUCT
576
  typedef struct { float real, imag; } openblas_complex_float;
577
  typedef struct { double real, imag; } openblas_complex_double;
578
  typedef struct { xdouble real, imag; } openblas_complex_xdouble;
579
  #define openblas_make_complex_float(real, imag)    {(real), (imag)}
580
  #define openblas_make_complex_double(real, imag)   {(real), (imag)}
581
  #define openblas_make_complex_xdouble(real, imag)  {(real), (imag)}
582
#endif
583
#endif
584
585
#include "param.h"
586
#include "common_param.h"
587
588
#ifndef STDERR
589
#define STDERR stderr
590
#endif
591
592
#ifndef MASK
593
#define MASK(a, b) (((a) + ((b) - 1)) & ~((b) - 1))
594
#endif
595
596
#if defined(XDOUBLE) || defined(DOUBLE)
597
0
#define FLOATRET  FLOAT
598
#else
599
#ifdef NEED_F2CCONV
600
#define FLOATRET  double
601
#else
602
0
#define FLOATRET  float
603
#endif
604
#endif
605
606
#ifndef ASSEMBLER
607
#ifndef NOINCLUDE
608
/* Inclusion of a standard header file is needed for definition of __STDC_*
609
   predefined macros with some compilers (e.g. GCC 4.7 on Linux).  This occurs
610
   as a side effect of including either <features.h> or <stdc-predef.h>. */
611
#include <stdio.h>
612
#endif  // NOINCLUDE
613
614
#ifdef XDOUBLE
615
#define OPENBLAS_COMPLEX_FLOAT openblas_complex_xdouble
616
#define OPENBLAS_MAKE_COMPLEX_FLOAT(r,i) openblas_make_complex_xdouble(r,i)
617
#elif defined(DOUBLE)
618
#define OPENBLAS_COMPLEX_FLOAT openblas_complex_double
619
#define OPENBLAS_MAKE_COMPLEX_FLOAT(r,i) openblas_make_complex_double(r,i)
620
#else
621
#define OPENBLAS_COMPLEX_FLOAT openblas_complex_float
622
#define OPENBLAS_MAKE_COMPLEX_FLOAT(r,i) openblas_make_complex_float(r,i)
623
#endif
624
625
#if defined(C_PGI) || defined(C_SUN)
626
  #if defined(__STDC_IEC_559_COMPLEX__)
627
     #define CREAL(X)   creal(X)
628
     #define CIMAG(X)   cimag(X)
629
  #else
630
     #define CREAL(X) (*((FLOAT *)&X + 0))
631
     #define CIMAG(X) (*((FLOAT *)&X + 1))
632
  #endif
633
#else
634
#ifdef OPENBLAS_COMPLEX_STRUCT
635
#define CREAL(Z)  ((Z).real)
636
#define CIMAG(Z)  ((Z).imag)
637
#else
638
#define CREAL __real__
639
#define CIMAG __imag__
640
#endif
641
#endif
642
643
#endif  // ASSEMBLER
644
645
#ifndef IFLUSH
646
#define IFLUSH
647
#endif
648
649
#ifndef IFLUSH_HALF
650
#define IFLUSH_HALF
651
#endif
652
653
#if defined(C_GCC) && (( __GNUC__ <= 3) || ((__GNUC__ == 4) && (__GNUC_MINOR__ < 2)))
654
#ifdef USE_OPENMP
655
#undef USE_OPENMP
656
#endif
657
#endif
658
659
#if defined(C_MSVC)
660
#define inline __inline
661
#endif
662
663
#ifndef ASSEMBLER
664
665
#ifndef MIN
666
0
#define MIN(a,b)   (a>b? b:a)
667
#endif
668
669
#ifndef MAX
670
168
#define MAX(a,b)   (a<b? b:a)
671
#endif
672
673
0
#define TOUPPER(a) {if ((a) > 0x60) (a) -= 0x20;}
674
675
#if defined(__FreeBSD__) || defined(__APPLE__)
676
#define MAP_ANONYMOUS MAP_ANON
677
#endif
678
679
/* Common Memory Management Routine */
680
void  blas_set_parameter(void);
681
int   blas_get_cpu_number(void);
682
void *blas_memory_alloc  (int);
683
void  blas_memory_free   (void *);
684
void *blas_memory_alloc_nolock  (int); //use malloc without blas_lock
685
void  blas_memory_free_nolock   (void *);
686
687
int  get_num_procs (void);
688
689
#if defined(OS_LINUX) && defined(SMP) && !defined(NO_AFFINITY)
690
int  get_num_nodes (void);
691
int get_num_proc   (int);
692
int get_node_equal (void);
693
#endif
694
695
void goto_set_num_threads(int);
696
697
void gotoblas_affinity_init(void);
698
void gotoblas_affinity_quit(void);
699
void gotoblas_dynamic_init(void);
700
void gotoblas_dynamic_quit(void);
701
void gotoblas_profile_init(void);
702
void gotoblas_profile_quit(void);
703
  
704
int support_avx512(void); 
705
int support_sme1(void); 
706
707
#ifdef USE_OPENMP
708
709
#ifndef C_MSVC
710
int omp_in_parallel(void);
711
int omp_get_num_procs(void);
712
#else
713
__declspec(dllimport) int __cdecl omp_in_parallel(void);
714
__declspec(dllimport) int __cdecl omp_get_num_procs(void);
715
#endif
716
717
#ifdef HAVE_C11
718
#if defined(C_GCC) && ( __GNUC__ < 7) 
719
// workaround for GCC bug 65467
720
#ifndef _Atomic
721
#define _Atomic volatile
722
#endif
723
#endif
724
#include <stdatomic.h>
725
#else
726
#ifndef _Atomic
727
#define _Atomic volatile
728
#endif
729
#endif
730
731
#else
732
#ifdef __ELF__
733
int omp_in_parallel  (void) __attribute__ ((weak));
734
int omp_get_num_procs(void) __attribute__ ((weak));
735
#endif
736
#endif
737
738
12
static __inline void blas_unlock(volatile BLASULONG *address){
739
12
  MB;
740
12
  *address = 0;
741
12
}
Unexecuted instantiation: sgemm.c:blas_unlock
Unexecuted instantiation: ssyrk.c:blas_unlock
Unexecuted instantiation: dgemm.c:blas_unlock
Unexecuted instantiation: sgetrf.c:blas_unlock
Unexecuted instantiation: dgetrf.c:blas_unlock
Unexecuted instantiation: sgemm_nn.c:blas_unlock
Unexecuted instantiation: dgemm_nn.c:blas_unlock
Unexecuted instantiation: sgemm_thread_nn.c:blas_unlock
Unexecuted instantiation: dgemm_thread_nn.c:blas_unlock
Unexecuted instantiation: sgemm_nt.c:blas_unlock
Unexecuted instantiation: dgemm_nt.c:blas_unlock
Unexecuted instantiation: sgemm_thread_nt.c:blas_unlock
Unexecuted instantiation: dgemm_thread_nt.c:blas_unlock
Unexecuted instantiation: sgemm_tn.c:blas_unlock
Unexecuted instantiation: dgemm_tn.c:blas_unlock
Unexecuted instantiation: sgemm_thread_tn.c:blas_unlock
Unexecuted instantiation: dgemm_thread_tn.c:blas_unlock
Unexecuted instantiation: sgemm_tt.c:blas_unlock
Unexecuted instantiation: dgemm_tt.c:blas_unlock
Unexecuted instantiation: sgemm_thread_tt.c:blas_unlock
Unexecuted instantiation: dgemm_thread_tt.c:blas_unlock
Unexecuted instantiation: ssyrk_UN.c:blas_unlock
Unexecuted instantiation: ssyrk_LN.c:blas_unlock
Unexecuted instantiation: ssyrk_UT.c:blas_unlock
Unexecuted instantiation: ssyrk_LT.c:blas_unlock
Unexecuted instantiation: ssyrk_kernel_U.c:blas_unlock
Unexecuted instantiation: ssyrk_kernel_L.c:blas_unlock
Unexecuted instantiation: ssyrk_thread_UN.c:blas_unlock
Unexecuted instantiation: ssyrk_thread_LN.c:blas_unlock
Unexecuted instantiation: ssyrk_thread_UT.c:blas_unlock
Unexecuted instantiation: ssyrk_thread_LT.c:blas_unlock
memory.c:blas_unlock
Line
Count
Source
738
12
static __inline void blas_unlock(volatile BLASULONG *address){
739
12
  MB;
740
12
  *address = 0;
741
12
}
Unexecuted instantiation: blas_server_omp.c:blas_unlock
Unexecuted instantiation: divtable.c:blas_unlock
Unexecuted instantiation: blas_server_callback.c:blas_unlock
Unexecuted instantiation: xerbla.c:blas_unlock
Unexecuted instantiation: openblas_error_handle.c:blas_unlock
Unexecuted instantiation: openblas_env.c:blas_unlock
Unexecuted instantiation: parameter.c:blas_unlock
Unexecuted instantiation: sscal_k.c:blas_unlock
Unexecuted instantiation: sgemm_kernel.c:blas_unlock
Unexecuted instantiation: sgemm_incopy.c:blas_unlock
Unexecuted instantiation: sgemm_itcopy.c:blas_unlock
Unexecuted instantiation: sgemm_oncopy.c:blas_unlock
Unexecuted instantiation: sgemm_otcopy.c:blas_unlock
Unexecuted instantiation: sgemm_beta.c:blas_unlock
Unexecuted instantiation: sgemm_small_matrix_permit.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_nn.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_nt.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_tn.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_tt.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_b0_nn.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_b0_nt.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_b0_tn.c:blas_unlock
Unexecuted instantiation: sgemm_small_kernel_b0_tt.c:blas_unlock
Unexecuted instantiation: dgemm_incopy.c:blas_unlock
Unexecuted instantiation: dgemm_itcopy.c:blas_unlock
Unexecuted instantiation: dgemm_oncopy.c:blas_unlock
Unexecuted instantiation: dgemm_otcopy.c:blas_unlock
Unexecuted instantiation: dgemm_beta.c:blas_unlock
Unexecuted instantiation: dgemm_small_matrix_permit.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_nn.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_nt.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_tn.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_tt.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_b0_nn.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_b0_nt.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_b0_tn.c:blas_unlock
Unexecuted instantiation: dgemm_small_kernel_b0_tt.c:blas_unlock
Unexecuted instantiation: sgetrf_single.c:blas_unlock
Unexecuted instantiation: sgetf2_k.c:blas_unlock
Unexecuted instantiation: sgemv_n.c:blas_unlock
Unexecuted instantiation: sdot_k.c:blas_unlock
Unexecuted instantiation: strsm_iltucopy.c:blas_unlock
Unexecuted instantiation: slaswp_plus.c:blas_unlock
Unexecuted instantiation: strsm_kernel_LT.c:blas_unlock
Unexecuted instantiation: dgetrf_single.c:blas_unlock
Unexecuted instantiation: dgetf2_k.c:blas_unlock
Unexecuted instantiation: dscal_k.c:blas_unlock
Unexecuted instantiation: ddot_k.c:blas_unlock
Unexecuted instantiation: blas_l1_thread.c:blas_unlock
Unexecuted instantiation: dgemv_n.c:blas_unlock
Unexecuted instantiation: dtrsm_iltucopy.c:blas_unlock
Unexecuted instantiation: dlaswp_plus.c:blas_unlock
Unexecuted instantiation: dtrsm_kernel_LT.c:blas_unlock
Unexecuted instantiation: sgetrf_parallel.c:blas_unlock
Unexecuted instantiation: gemm_thread_n.c:blas_unlock
Unexecuted instantiation: dgetrf_parallel.c:blas_unlock
Unexecuted instantiation: strtri.c:blas_unlock
Unexecuted instantiation: strtri_UU_single.c:blas_unlock
Unexecuted instantiation: strti2_UU.c:blas_unlock
Unexecuted instantiation: strmv_NUU.c:blas_unlock
Unexecuted instantiation: saxpy_k.c:blas_unlock
Unexecuted instantiation: strmm_LNUU.c:blas_unlock
Unexecuted instantiation: strmm_iutucopy.c:blas_unlock
Unexecuted instantiation: strmm_kernel_LN.c:blas_unlock
Unexecuted instantiation: strsm_RNUU.c:blas_unlock
Unexecuted instantiation: strsm_ounucopy.c:blas_unlock
Unexecuted instantiation: strsm_kernel_RN.c:blas_unlock
Unexecuted instantiation: strtri_UN_single.c:blas_unlock
Unexecuted instantiation: strti2_UN.c:blas_unlock
Unexecuted instantiation: strmv_NUN.c:blas_unlock
Unexecuted instantiation: strmm_LNUN.c:blas_unlock
Unexecuted instantiation: strmm_iutncopy.c:blas_unlock
Unexecuted instantiation: strsm_RNUN.c:blas_unlock
Unexecuted instantiation: strsm_ounncopy.c:blas_unlock
Unexecuted instantiation: strtri_LU_single.c:blas_unlock
Unexecuted instantiation: strti2_LU.c:blas_unlock
Unexecuted instantiation: strmv_NLU.c:blas_unlock
Unexecuted instantiation: strmm_LNLU.c:blas_unlock
Unexecuted instantiation: strmm_iltucopy.c:blas_unlock
Unexecuted instantiation: strmm_kernel_LT.c:blas_unlock
Unexecuted instantiation: strsm_RNLU.c:blas_unlock
Unexecuted instantiation: strsm_olnucopy.c:blas_unlock
Unexecuted instantiation: strsm_kernel_RT.c:blas_unlock
Unexecuted instantiation: strtri_LN_single.c:blas_unlock
Unexecuted instantiation: strti2_LN.c:blas_unlock
Unexecuted instantiation: strmv_NLN.c:blas_unlock
Unexecuted instantiation: strmm_LNLN.c:blas_unlock
Unexecuted instantiation: strmm_iltncopy.c:blas_unlock
Unexecuted instantiation: strsm_RNLN.c:blas_unlock
Unexecuted instantiation: strsm_olnncopy.c:blas_unlock
Unexecuted instantiation: strtri_UU_parallel.c:blas_unlock
Unexecuted instantiation: gemm_thread_m.c:blas_unlock
Unexecuted instantiation: strtri_UN_parallel.c:blas_unlock
Unexecuted instantiation: strtri_LU_parallel.c:blas_unlock
Unexecuted instantiation: strtri_LN_parallel.c:blas_unlock
Unexecuted instantiation: strsm.c:blas_unlock
Unexecuted instantiation: strsm_LNUU.c:blas_unlock
Unexecuted instantiation: strsm_iutucopy.c:blas_unlock
Unexecuted instantiation: strsm_kernel_LN.c:blas_unlock
Unexecuted instantiation: strsm_LNUN.c:blas_unlock
Unexecuted instantiation: strsm_iutncopy.c:blas_unlock
Unexecuted instantiation: strsm_LNLU.c:blas_unlock
Unexecuted instantiation: strsm_LNLN.c:blas_unlock
Unexecuted instantiation: strsm_iltncopy.c:blas_unlock
Unexecuted instantiation: strsm_LTUU.c:blas_unlock
Unexecuted instantiation: strsm_iunucopy.c:blas_unlock
Unexecuted instantiation: strsm_LTUN.c:blas_unlock
Unexecuted instantiation: strsm_iunncopy.c:blas_unlock
Unexecuted instantiation: strsm_LTLU.c:blas_unlock
Unexecuted instantiation: strsm_ilnucopy.c:blas_unlock
Unexecuted instantiation: strsm_LTLN.c:blas_unlock
Unexecuted instantiation: strsm_ilnncopy.c:blas_unlock
Unexecuted instantiation: strsm_RTUU.c:blas_unlock
Unexecuted instantiation: strsm_outucopy.c:blas_unlock
Unexecuted instantiation: strsm_RTUN.c:blas_unlock
Unexecuted instantiation: strsm_outncopy.c:blas_unlock
Unexecuted instantiation: strsm_RTLU.c:blas_unlock
Unexecuted instantiation: strsm_oltucopy.c:blas_unlock
Unexecuted instantiation: strsm_RTLN.c:blas_unlock
Unexecuted instantiation: strsm_oltncopy.c:blas_unlock
Unexecuted instantiation: sgemv.c:blas_unlock
Unexecuted instantiation: sgemv_t.c:blas_unlock
Unexecuted instantiation: sgemv_thread_n.c:blas_unlock
Unexecuted instantiation: sgemv_thread_t.c:blas_unlock
Unexecuted instantiation: sswap.c:blas_unlock
Unexecuted instantiation: sscal.c:blas_unlock
Unexecuted instantiation: srot.c:blas_unlock
Unexecuted instantiation: srot_k.c:blas_unlock
Unexecuted instantiation: scopy.c:blas_unlock
Unexecuted instantiation: snrm2.c:blas_unlock
Unexecuted instantiation: isamax.c:blas_unlock
Unexecuted instantiation: sger.c:blas_unlock
Unexecuted instantiation: sger_k.c:blas_unlock
Unexecuted instantiation: sger_thread.c:blas_unlock
Unexecuted instantiation: strmm.c:blas_unlock
Unexecuted instantiation: strmm_LTUU.c:blas_unlock
Unexecuted instantiation: strmm_iunucopy.c:blas_unlock
Unexecuted instantiation: strmm_LTUN.c:blas_unlock
Unexecuted instantiation: strmm_iunncopy.c:blas_unlock
Unexecuted instantiation: strmm_LTLU.c:blas_unlock
Unexecuted instantiation: strmm_ilnucopy.c:blas_unlock
Unexecuted instantiation: strmm_LTLN.c:blas_unlock
Unexecuted instantiation: strmm_ilnncopy.c:blas_unlock
Unexecuted instantiation: strmm_RNUU.c:blas_unlock
Unexecuted instantiation: strmm_ounucopy.c:blas_unlock
Unexecuted instantiation: strmm_kernel_RN.c:blas_unlock
Unexecuted instantiation: strmm_RNUN.c:blas_unlock
Unexecuted instantiation: strmm_ounncopy.c:blas_unlock
Unexecuted instantiation: strmm_RNLU.c:blas_unlock
Unexecuted instantiation: strmm_olnucopy.c:blas_unlock
Unexecuted instantiation: strmm_kernel_RT.c:blas_unlock
Unexecuted instantiation: strmm_RNLN.c:blas_unlock
Unexecuted instantiation: strmm_olnncopy.c:blas_unlock
Unexecuted instantiation: strmm_RTUU.c:blas_unlock
Unexecuted instantiation: strmm_outucopy.c:blas_unlock
Unexecuted instantiation: strmm_RTUN.c:blas_unlock
Unexecuted instantiation: strmm_outncopy.c:blas_unlock
Unexecuted instantiation: strmm_RTLU.c:blas_unlock
Unexecuted instantiation: strmm_oltucopy.c:blas_unlock
Unexecuted instantiation: strmm_RTLN.c:blas_unlock
Unexecuted instantiation: strmm_oltncopy.c:blas_unlock
Unexecuted instantiation: strmv.c:blas_unlock
Unexecuted instantiation: strmv_TUU.c:blas_unlock
Unexecuted instantiation: strmv_TUN.c:blas_unlock
Unexecuted instantiation: strmv_TLU.c:blas_unlock
Unexecuted instantiation: strmv_TLN.c:blas_unlock
Unexecuted instantiation: strmv_thread_NUU.c:blas_unlock
Unexecuted instantiation: strmv_thread_NUN.c:blas_unlock
Unexecuted instantiation: strmv_thread_NLU.c:blas_unlock
Unexecuted instantiation: strmv_thread_NLN.c:blas_unlock
Unexecuted instantiation: strmv_thread_TUU.c:blas_unlock
Unexecuted instantiation: strmv_thread_TUN.c:blas_unlock
Unexecuted instantiation: strmv_thread_TLU.c:blas_unlock
Unexecuted instantiation: strmv_thread_TLN.c:blas_unlock
Unexecuted instantiation: sdot.c:blas_unlock
Unexecuted instantiation: dtrtri.c:blas_unlock
Unexecuted instantiation: dtrtri_UU_single.c:blas_unlock
Unexecuted instantiation: dtrti2_UU.c:blas_unlock
Unexecuted instantiation: dtrmv_NUU.c:blas_unlock
Unexecuted instantiation: daxpy_k.c:blas_unlock
Unexecuted instantiation: dtrmm_LNUU.c:blas_unlock
Unexecuted instantiation: dtrmm_iutucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_kernel_LN.c:blas_unlock
Unexecuted instantiation: dtrsm_RNUU.c:blas_unlock
Unexecuted instantiation: dtrsm_ounucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_kernel_RN.c:blas_unlock
Unexecuted instantiation: dtrtri_UN_single.c:blas_unlock
Unexecuted instantiation: dtrti2_UN.c:blas_unlock
Unexecuted instantiation: dtrmv_NUN.c:blas_unlock
Unexecuted instantiation: dtrmm_LNUN.c:blas_unlock
Unexecuted instantiation: dtrmm_iutncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_RNUN.c:blas_unlock
Unexecuted instantiation: dtrsm_ounncopy.c:blas_unlock
Unexecuted instantiation: dtrtri_LU_single.c:blas_unlock
Unexecuted instantiation: dtrti2_LU.c:blas_unlock
Unexecuted instantiation: dtrmv_NLU.c:blas_unlock
Unexecuted instantiation: dtrmm_LNLU.c:blas_unlock
Unexecuted instantiation: dtrmm_iltucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_kernel_LT.c:blas_unlock
Unexecuted instantiation: dtrsm_RNLU.c:blas_unlock
Unexecuted instantiation: dtrsm_olnucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_kernel_RT.c:blas_unlock
Unexecuted instantiation: dtrtri_LN_single.c:blas_unlock
Unexecuted instantiation: dtrti2_LN.c:blas_unlock
Unexecuted instantiation: dtrmv_NLN.c:blas_unlock
Unexecuted instantiation: dtrmm_LNLN.c:blas_unlock
Unexecuted instantiation: dtrmm_iltncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_RNLN.c:blas_unlock
Unexecuted instantiation: dtrsm_olnncopy.c:blas_unlock
Unexecuted instantiation: dtrtri_UU_parallel.c:blas_unlock
Unexecuted instantiation: dtrtri_UN_parallel.c:blas_unlock
Unexecuted instantiation: dtrtri_LU_parallel.c:blas_unlock
Unexecuted instantiation: dtrtri_LN_parallel.c:blas_unlock
Unexecuted instantiation: dtrsm.c:blas_unlock
Unexecuted instantiation: dtrsm_LNUU.c:blas_unlock
Unexecuted instantiation: dtrsm_iutucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_kernel_LN.c:blas_unlock
Unexecuted instantiation: dtrsm_LNUN.c:blas_unlock
Unexecuted instantiation: dtrsm_iutncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_LNLU.c:blas_unlock
Unexecuted instantiation: dtrsm_LNLN.c:blas_unlock
Unexecuted instantiation: dtrsm_iltncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_LTUU.c:blas_unlock
Unexecuted instantiation: dtrsm_iunucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_LTUN.c:blas_unlock
Unexecuted instantiation: dtrsm_iunncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_LTLU.c:blas_unlock
Unexecuted instantiation: dtrsm_ilnucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_LTLN.c:blas_unlock
Unexecuted instantiation: dtrsm_ilnncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_RTUU.c:blas_unlock
Unexecuted instantiation: dtrsm_outucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_RTUN.c:blas_unlock
Unexecuted instantiation: dtrsm_outncopy.c:blas_unlock
Unexecuted instantiation: dtrsm_RTLU.c:blas_unlock
Unexecuted instantiation: dtrsm_oltucopy.c:blas_unlock
Unexecuted instantiation: dtrsm_RTLN.c:blas_unlock
Unexecuted instantiation: dtrsm_oltncopy.c:blas_unlock
Unexecuted instantiation: dgemv.c:blas_unlock
Unexecuted instantiation: dgemv_t.c:blas_unlock
Unexecuted instantiation: dgemv_thread_n.c:blas_unlock
Unexecuted instantiation: dgemv_thread_t.c:blas_unlock
Unexecuted instantiation: dswap.c:blas_unlock
Unexecuted instantiation: dscal.c:blas_unlock
Unexecuted instantiation: dger.c:blas_unlock
Unexecuted instantiation: dger_k.c:blas_unlock
Unexecuted instantiation: dger_thread.c:blas_unlock
Unexecuted instantiation: dcopy.c:blas_unlock
Unexecuted instantiation: dtrmm.c:blas_unlock
Unexecuted instantiation: dtrmm_LTUU.c:blas_unlock
Unexecuted instantiation: dtrmm_iunucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_LTUN.c:blas_unlock
Unexecuted instantiation: dtrmm_iunncopy.c:blas_unlock
Unexecuted instantiation: dtrmm_LTLU.c:blas_unlock
Unexecuted instantiation: dtrmm_ilnucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_LTLN.c:blas_unlock
Unexecuted instantiation: dtrmm_ilnncopy.c:blas_unlock
Unexecuted instantiation: dtrmm_RNUU.c:blas_unlock
Unexecuted instantiation: dtrmm_ounucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_kernel_RN.c:blas_unlock
Unexecuted instantiation: dtrmm_RNUN.c:blas_unlock
Unexecuted instantiation: dtrmm_ounncopy.c:blas_unlock
Unexecuted instantiation: dtrmm_RNLU.c:blas_unlock
Unexecuted instantiation: dtrmm_olnucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_kernel_RT.c:blas_unlock
Unexecuted instantiation: dtrmm_RNLN.c:blas_unlock
Unexecuted instantiation: dtrmm_olnncopy.c:blas_unlock
Unexecuted instantiation: dtrmm_RTUU.c:blas_unlock
Unexecuted instantiation: dtrmm_outucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_RTUN.c:blas_unlock
Unexecuted instantiation: dtrmm_outncopy.c:blas_unlock
Unexecuted instantiation: dtrmm_RTLU.c:blas_unlock
Unexecuted instantiation: dtrmm_oltucopy.c:blas_unlock
Unexecuted instantiation: dtrmm_RTLN.c:blas_unlock
Unexecuted instantiation: dtrmm_oltncopy.c:blas_unlock
Unexecuted instantiation: dnrm2.c:blas_unlock
Unexecuted instantiation: dtrmv.c:blas_unlock
Unexecuted instantiation: dtrmv_TUU.c:blas_unlock
Unexecuted instantiation: dtrmv_TUN.c:blas_unlock
Unexecuted instantiation: dtrmv_TLU.c:blas_unlock
Unexecuted instantiation: dtrmv_TLN.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_NUU.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_NUN.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_NLU.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_NLN.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_TUU.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_TUN.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_TLU.c:blas_unlock
Unexecuted instantiation: dtrmv_thread_TLN.c:blas_unlock
Unexecuted instantiation: dsymv.c:blas_unlock
Unexecuted instantiation: dsymv_U.c:blas_unlock
Unexecuted instantiation: dsymv_L.c:blas_unlock
Unexecuted instantiation: dsymv_thread_U.c:blas_unlock
Unexecuted instantiation: dsymv_thread_L.c:blas_unlock
Unexecuted instantiation: ddot.c:blas_unlock
Unexecuted instantiation: daxpy.c:blas_unlock
Unexecuted instantiation: dsyr2k.c:blas_unlock
Unexecuted instantiation: syrk_thread.c:blas_unlock
Unexecuted instantiation: dsyr2k_UN.c:blas_unlock
Unexecuted instantiation: dsyr2k_kernel_U.c:blas_unlock
Unexecuted instantiation: dsyr2k_UT.c:blas_unlock
Unexecuted instantiation: dsyr2k_LN.c:blas_unlock
Unexecuted instantiation: dsyr2k_kernel_L.c:blas_unlock
Unexecuted instantiation: dsyr2k_LT.c:blas_unlock
Unexecuted instantiation: dsyr2.c:blas_unlock
Unexecuted instantiation: dsyr2_U.c:blas_unlock
Unexecuted instantiation: dsyr2_L.c:blas_unlock
Unexecuted instantiation: dsyr2_thread_U.c:blas_unlock
Unexecuted instantiation: dsyr2_thread_L.c:blas_unlock
Unexecuted instantiation: drot.c:blas_unlock
Unexecuted instantiation: drot_k.c:blas_unlock
742
743
#ifdef OS_WINDOWSSTORE
744
static __inline int readenv_atoi(char *env) {
745
  return 0;
746
}
747
#else
748
#ifdef OS_WINDOWS
749
static __inline int readenv_atoi(char *env) {
750
  env_var_t p;
751
  return readenv(p,env) ? 0 : atoi(p);
752
}
753
#else
754
0
static __inline int readenv_atoi(char *env) {
755
0
  char *p;
756
0
  if (( p = getenv(env) ))
757
0
    return (atoi(p));
758
0
  else
759
0
  return(0);
760
0
}
Unexecuted instantiation: sgemm.c:readenv_atoi
Unexecuted instantiation: ssyrk.c:readenv_atoi
Unexecuted instantiation: dgemm.c:readenv_atoi
Unexecuted instantiation: sgetrf.c:readenv_atoi
Unexecuted instantiation: dgetrf.c:readenv_atoi
Unexecuted instantiation: sgemm_nn.c:readenv_atoi
Unexecuted instantiation: dgemm_nn.c:readenv_atoi
Unexecuted instantiation: sgemm_thread_nn.c:readenv_atoi
Unexecuted instantiation: dgemm_thread_nn.c:readenv_atoi
Unexecuted instantiation: sgemm_nt.c:readenv_atoi
Unexecuted instantiation: dgemm_nt.c:readenv_atoi
Unexecuted instantiation: sgemm_thread_nt.c:readenv_atoi
Unexecuted instantiation: dgemm_thread_nt.c:readenv_atoi
Unexecuted instantiation: sgemm_tn.c:readenv_atoi
Unexecuted instantiation: dgemm_tn.c:readenv_atoi
Unexecuted instantiation: sgemm_thread_tn.c:readenv_atoi
Unexecuted instantiation: dgemm_thread_tn.c:readenv_atoi
Unexecuted instantiation: sgemm_tt.c:readenv_atoi
Unexecuted instantiation: dgemm_tt.c:readenv_atoi
Unexecuted instantiation: sgemm_thread_tt.c:readenv_atoi
Unexecuted instantiation: dgemm_thread_tt.c:readenv_atoi
Unexecuted instantiation: ssyrk_UN.c:readenv_atoi
Unexecuted instantiation: ssyrk_LN.c:readenv_atoi
Unexecuted instantiation: ssyrk_UT.c:readenv_atoi
Unexecuted instantiation: ssyrk_LT.c:readenv_atoi
Unexecuted instantiation: ssyrk_kernel_U.c:readenv_atoi
Unexecuted instantiation: ssyrk_kernel_L.c:readenv_atoi
Unexecuted instantiation: ssyrk_thread_UN.c:readenv_atoi
Unexecuted instantiation: ssyrk_thread_LN.c:readenv_atoi
Unexecuted instantiation: ssyrk_thread_UT.c:readenv_atoi
Unexecuted instantiation: ssyrk_thread_LT.c:readenv_atoi
Unexecuted instantiation: memory.c:readenv_atoi
Unexecuted instantiation: blas_server_omp.c:readenv_atoi
Unexecuted instantiation: divtable.c:readenv_atoi
Unexecuted instantiation: blas_server_callback.c:readenv_atoi
Unexecuted instantiation: xerbla.c:readenv_atoi
Unexecuted instantiation: openblas_error_handle.c:readenv_atoi
Unexecuted instantiation: openblas_env.c:readenv_atoi
Unexecuted instantiation: parameter.c:readenv_atoi
Unexecuted instantiation: sscal_k.c:readenv_atoi
Unexecuted instantiation: sgemm_kernel.c:readenv_atoi
Unexecuted instantiation: sgemm_incopy.c:readenv_atoi
Unexecuted instantiation: sgemm_itcopy.c:readenv_atoi
Unexecuted instantiation: sgemm_oncopy.c:readenv_atoi
Unexecuted instantiation: sgemm_otcopy.c:readenv_atoi
Unexecuted instantiation: sgemm_beta.c:readenv_atoi
Unexecuted instantiation: sgemm_small_matrix_permit.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_nn.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_nt.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_tn.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_tt.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_b0_nn.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_b0_nt.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_b0_tn.c:readenv_atoi
Unexecuted instantiation: sgemm_small_kernel_b0_tt.c:readenv_atoi
Unexecuted instantiation: dgemm_incopy.c:readenv_atoi
Unexecuted instantiation: dgemm_itcopy.c:readenv_atoi
Unexecuted instantiation: dgemm_oncopy.c:readenv_atoi
Unexecuted instantiation: dgemm_otcopy.c:readenv_atoi
Unexecuted instantiation: dgemm_beta.c:readenv_atoi
Unexecuted instantiation: dgemm_small_matrix_permit.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_nn.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_nt.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_tn.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_tt.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_b0_nn.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_b0_nt.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_b0_tn.c:readenv_atoi
Unexecuted instantiation: dgemm_small_kernel_b0_tt.c:readenv_atoi
Unexecuted instantiation: sgetrf_single.c:readenv_atoi
Unexecuted instantiation: sgetf2_k.c:readenv_atoi
Unexecuted instantiation: sgemv_n.c:readenv_atoi
Unexecuted instantiation: sdot_k.c:readenv_atoi
Unexecuted instantiation: strsm_iltucopy.c:readenv_atoi
Unexecuted instantiation: slaswp_plus.c:readenv_atoi
Unexecuted instantiation: strsm_kernel_LT.c:readenv_atoi
Unexecuted instantiation: dgetrf_single.c:readenv_atoi
Unexecuted instantiation: dgetf2_k.c:readenv_atoi
Unexecuted instantiation: dscal_k.c:readenv_atoi
Unexecuted instantiation: ddot_k.c:readenv_atoi
Unexecuted instantiation: blas_l1_thread.c:readenv_atoi
Unexecuted instantiation: dgemv_n.c:readenv_atoi
Unexecuted instantiation: dtrsm_iltucopy.c:readenv_atoi
Unexecuted instantiation: dlaswp_plus.c:readenv_atoi
Unexecuted instantiation: dtrsm_kernel_LT.c:readenv_atoi
Unexecuted instantiation: sgetrf_parallel.c:readenv_atoi
Unexecuted instantiation: gemm_thread_n.c:readenv_atoi
Unexecuted instantiation: dgetrf_parallel.c:readenv_atoi
Unexecuted instantiation: strtri.c:readenv_atoi
Unexecuted instantiation: strtri_UU_single.c:readenv_atoi
Unexecuted instantiation: strti2_UU.c:readenv_atoi
Unexecuted instantiation: strmv_NUU.c:readenv_atoi
Unexecuted instantiation: saxpy_k.c:readenv_atoi
Unexecuted instantiation: strmm_LNUU.c:readenv_atoi
Unexecuted instantiation: strmm_iutucopy.c:readenv_atoi
Unexecuted instantiation: strmm_kernel_LN.c:readenv_atoi
Unexecuted instantiation: strsm_RNUU.c:readenv_atoi
Unexecuted instantiation: strsm_ounucopy.c:readenv_atoi
Unexecuted instantiation: strsm_kernel_RN.c:readenv_atoi
Unexecuted instantiation: strtri_UN_single.c:readenv_atoi
Unexecuted instantiation: strti2_UN.c:readenv_atoi
Unexecuted instantiation: strmv_NUN.c:readenv_atoi
Unexecuted instantiation: strmm_LNUN.c:readenv_atoi
Unexecuted instantiation: strmm_iutncopy.c:readenv_atoi
Unexecuted instantiation: strsm_RNUN.c:readenv_atoi
Unexecuted instantiation: strsm_ounncopy.c:readenv_atoi
Unexecuted instantiation: strtri_LU_single.c:readenv_atoi
Unexecuted instantiation: strti2_LU.c:readenv_atoi
Unexecuted instantiation: strmv_NLU.c:readenv_atoi
Unexecuted instantiation: strmm_LNLU.c:readenv_atoi
Unexecuted instantiation: strmm_iltucopy.c:readenv_atoi
Unexecuted instantiation: strmm_kernel_LT.c:readenv_atoi
Unexecuted instantiation: strsm_RNLU.c:readenv_atoi
Unexecuted instantiation: strsm_olnucopy.c:readenv_atoi
Unexecuted instantiation: strsm_kernel_RT.c:readenv_atoi
Unexecuted instantiation: strtri_LN_single.c:readenv_atoi
Unexecuted instantiation: strti2_LN.c:readenv_atoi
Unexecuted instantiation: strmv_NLN.c:readenv_atoi
Unexecuted instantiation: strmm_LNLN.c:readenv_atoi
Unexecuted instantiation: strmm_iltncopy.c:readenv_atoi
Unexecuted instantiation: strsm_RNLN.c:readenv_atoi
Unexecuted instantiation: strsm_olnncopy.c:readenv_atoi
Unexecuted instantiation: strtri_UU_parallel.c:readenv_atoi
Unexecuted instantiation: gemm_thread_m.c:readenv_atoi
Unexecuted instantiation: strtri_UN_parallel.c:readenv_atoi
Unexecuted instantiation: strtri_LU_parallel.c:readenv_atoi
Unexecuted instantiation: strtri_LN_parallel.c:readenv_atoi
Unexecuted instantiation: strsm.c:readenv_atoi
Unexecuted instantiation: strsm_LNUU.c:readenv_atoi
Unexecuted instantiation: strsm_iutucopy.c:readenv_atoi
Unexecuted instantiation: strsm_kernel_LN.c:readenv_atoi
Unexecuted instantiation: strsm_LNUN.c:readenv_atoi
Unexecuted instantiation: strsm_iutncopy.c:readenv_atoi
Unexecuted instantiation: strsm_LNLU.c:readenv_atoi
Unexecuted instantiation: strsm_LNLN.c:readenv_atoi
Unexecuted instantiation: strsm_iltncopy.c:readenv_atoi
Unexecuted instantiation: strsm_LTUU.c:readenv_atoi
Unexecuted instantiation: strsm_iunucopy.c:readenv_atoi
Unexecuted instantiation: strsm_LTUN.c:readenv_atoi
Unexecuted instantiation: strsm_iunncopy.c:readenv_atoi
Unexecuted instantiation: strsm_LTLU.c:readenv_atoi
Unexecuted instantiation: strsm_ilnucopy.c:readenv_atoi
Unexecuted instantiation: strsm_LTLN.c:readenv_atoi
Unexecuted instantiation: strsm_ilnncopy.c:readenv_atoi
Unexecuted instantiation: strsm_RTUU.c:readenv_atoi
Unexecuted instantiation: strsm_outucopy.c:readenv_atoi
Unexecuted instantiation: strsm_RTUN.c:readenv_atoi
Unexecuted instantiation: strsm_outncopy.c:readenv_atoi
Unexecuted instantiation: strsm_RTLU.c:readenv_atoi
Unexecuted instantiation: strsm_oltucopy.c:readenv_atoi
Unexecuted instantiation: strsm_RTLN.c:readenv_atoi
Unexecuted instantiation: strsm_oltncopy.c:readenv_atoi
Unexecuted instantiation: sgemv.c:readenv_atoi
Unexecuted instantiation: sgemv_t.c:readenv_atoi
Unexecuted instantiation: sgemv_thread_n.c:readenv_atoi
Unexecuted instantiation: sgemv_thread_t.c:readenv_atoi
Unexecuted instantiation: sswap.c:readenv_atoi
Unexecuted instantiation: sscal.c:readenv_atoi
Unexecuted instantiation: srot.c:readenv_atoi
Unexecuted instantiation: srot_k.c:readenv_atoi
Unexecuted instantiation: scopy.c:readenv_atoi
Unexecuted instantiation: snrm2.c:readenv_atoi
Unexecuted instantiation: isamax.c:readenv_atoi
Unexecuted instantiation: sger.c:readenv_atoi
Unexecuted instantiation: sger_k.c:readenv_atoi
Unexecuted instantiation: sger_thread.c:readenv_atoi
Unexecuted instantiation: strmm.c:readenv_atoi
Unexecuted instantiation: strmm_LTUU.c:readenv_atoi
Unexecuted instantiation: strmm_iunucopy.c:readenv_atoi
Unexecuted instantiation: strmm_LTUN.c:readenv_atoi
Unexecuted instantiation: strmm_iunncopy.c:readenv_atoi
Unexecuted instantiation: strmm_LTLU.c:readenv_atoi
Unexecuted instantiation: strmm_ilnucopy.c:readenv_atoi
Unexecuted instantiation: strmm_LTLN.c:readenv_atoi
Unexecuted instantiation: strmm_ilnncopy.c:readenv_atoi
Unexecuted instantiation: strmm_RNUU.c:readenv_atoi
Unexecuted instantiation: strmm_ounucopy.c:readenv_atoi
Unexecuted instantiation: strmm_kernel_RN.c:readenv_atoi
Unexecuted instantiation: strmm_RNUN.c:readenv_atoi
Unexecuted instantiation: strmm_ounncopy.c:readenv_atoi
Unexecuted instantiation: strmm_RNLU.c:readenv_atoi
Unexecuted instantiation: strmm_olnucopy.c:readenv_atoi
Unexecuted instantiation: strmm_kernel_RT.c:readenv_atoi
Unexecuted instantiation: strmm_RNLN.c:readenv_atoi
Unexecuted instantiation: strmm_olnncopy.c:readenv_atoi
Unexecuted instantiation: strmm_RTUU.c:readenv_atoi
Unexecuted instantiation: strmm_outucopy.c:readenv_atoi
Unexecuted instantiation: strmm_RTUN.c:readenv_atoi
Unexecuted instantiation: strmm_outncopy.c:readenv_atoi
Unexecuted instantiation: strmm_RTLU.c:readenv_atoi
Unexecuted instantiation: strmm_oltucopy.c:readenv_atoi
Unexecuted instantiation: strmm_RTLN.c:readenv_atoi
Unexecuted instantiation: strmm_oltncopy.c:readenv_atoi
Unexecuted instantiation: strmv.c:readenv_atoi
Unexecuted instantiation: strmv_TUU.c:readenv_atoi
Unexecuted instantiation: strmv_TUN.c:readenv_atoi
Unexecuted instantiation: strmv_TLU.c:readenv_atoi
Unexecuted instantiation: strmv_TLN.c:readenv_atoi
Unexecuted instantiation: strmv_thread_NUU.c:readenv_atoi
Unexecuted instantiation: strmv_thread_NUN.c:readenv_atoi
Unexecuted instantiation: strmv_thread_NLU.c:readenv_atoi
Unexecuted instantiation: strmv_thread_NLN.c:readenv_atoi
Unexecuted instantiation: strmv_thread_TUU.c:readenv_atoi
Unexecuted instantiation: strmv_thread_TUN.c:readenv_atoi
Unexecuted instantiation: strmv_thread_TLU.c:readenv_atoi
Unexecuted instantiation: strmv_thread_TLN.c:readenv_atoi
Unexecuted instantiation: sdot.c:readenv_atoi
Unexecuted instantiation: dtrtri.c:readenv_atoi
Unexecuted instantiation: dtrtri_UU_single.c:readenv_atoi
Unexecuted instantiation: dtrti2_UU.c:readenv_atoi
Unexecuted instantiation: dtrmv_NUU.c:readenv_atoi
Unexecuted instantiation: daxpy_k.c:readenv_atoi
Unexecuted instantiation: dtrmm_LNUU.c:readenv_atoi
Unexecuted instantiation: dtrmm_iutucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_kernel_LN.c:readenv_atoi
Unexecuted instantiation: dtrsm_RNUU.c:readenv_atoi
Unexecuted instantiation: dtrsm_ounucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_kernel_RN.c:readenv_atoi
Unexecuted instantiation: dtrtri_UN_single.c:readenv_atoi
Unexecuted instantiation: dtrti2_UN.c:readenv_atoi
Unexecuted instantiation: dtrmv_NUN.c:readenv_atoi
Unexecuted instantiation: dtrmm_LNUN.c:readenv_atoi
Unexecuted instantiation: dtrmm_iutncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_RNUN.c:readenv_atoi
Unexecuted instantiation: dtrsm_ounncopy.c:readenv_atoi
Unexecuted instantiation: dtrtri_LU_single.c:readenv_atoi
Unexecuted instantiation: dtrti2_LU.c:readenv_atoi
Unexecuted instantiation: dtrmv_NLU.c:readenv_atoi
Unexecuted instantiation: dtrmm_LNLU.c:readenv_atoi
Unexecuted instantiation: dtrmm_iltucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_kernel_LT.c:readenv_atoi
Unexecuted instantiation: dtrsm_RNLU.c:readenv_atoi
Unexecuted instantiation: dtrsm_olnucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_kernel_RT.c:readenv_atoi
Unexecuted instantiation: dtrtri_LN_single.c:readenv_atoi
Unexecuted instantiation: dtrti2_LN.c:readenv_atoi
Unexecuted instantiation: dtrmv_NLN.c:readenv_atoi
Unexecuted instantiation: dtrmm_LNLN.c:readenv_atoi
Unexecuted instantiation: dtrmm_iltncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_RNLN.c:readenv_atoi
Unexecuted instantiation: dtrsm_olnncopy.c:readenv_atoi
Unexecuted instantiation: dtrtri_UU_parallel.c:readenv_atoi
Unexecuted instantiation: dtrtri_UN_parallel.c:readenv_atoi
Unexecuted instantiation: dtrtri_LU_parallel.c:readenv_atoi
Unexecuted instantiation: dtrtri_LN_parallel.c:readenv_atoi
Unexecuted instantiation: dtrsm.c:readenv_atoi
Unexecuted instantiation: dtrsm_LNUU.c:readenv_atoi
Unexecuted instantiation: dtrsm_iutucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_kernel_LN.c:readenv_atoi
Unexecuted instantiation: dtrsm_LNUN.c:readenv_atoi
Unexecuted instantiation: dtrsm_iutncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_LNLU.c:readenv_atoi
Unexecuted instantiation: dtrsm_LNLN.c:readenv_atoi
Unexecuted instantiation: dtrsm_iltncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_LTUU.c:readenv_atoi
Unexecuted instantiation: dtrsm_iunucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_LTUN.c:readenv_atoi
Unexecuted instantiation: dtrsm_iunncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_LTLU.c:readenv_atoi
Unexecuted instantiation: dtrsm_ilnucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_LTLN.c:readenv_atoi
Unexecuted instantiation: dtrsm_ilnncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_RTUU.c:readenv_atoi
Unexecuted instantiation: dtrsm_outucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_RTUN.c:readenv_atoi
Unexecuted instantiation: dtrsm_outncopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_RTLU.c:readenv_atoi
Unexecuted instantiation: dtrsm_oltucopy.c:readenv_atoi
Unexecuted instantiation: dtrsm_RTLN.c:readenv_atoi
Unexecuted instantiation: dtrsm_oltncopy.c:readenv_atoi
Unexecuted instantiation: dgemv.c:readenv_atoi
Unexecuted instantiation: dgemv_t.c:readenv_atoi
Unexecuted instantiation: dgemv_thread_n.c:readenv_atoi
Unexecuted instantiation: dgemv_thread_t.c:readenv_atoi
Unexecuted instantiation: dswap.c:readenv_atoi
Unexecuted instantiation: dscal.c:readenv_atoi
Unexecuted instantiation: dger.c:readenv_atoi
Unexecuted instantiation: dger_k.c:readenv_atoi
Unexecuted instantiation: dger_thread.c:readenv_atoi
Unexecuted instantiation: dcopy.c:readenv_atoi
Unexecuted instantiation: dtrmm.c:readenv_atoi
Unexecuted instantiation: dtrmm_LTUU.c:readenv_atoi
Unexecuted instantiation: dtrmm_iunucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_LTUN.c:readenv_atoi
Unexecuted instantiation: dtrmm_iunncopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_LTLU.c:readenv_atoi
Unexecuted instantiation: dtrmm_ilnucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_LTLN.c:readenv_atoi
Unexecuted instantiation: dtrmm_ilnncopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_RNUU.c:readenv_atoi
Unexecuted instantiation: dtrmm_ounucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_kernel_RN.c:readenv_atoi
Unexecuted instantiation: dtrmm_RNUN.c:readenv_atoi
Unexecuted instantiation: dtrmm_ounncopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_RNLU.c:readenv_atoi
Unexecuted instantiation: dtrmm_olnucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_kernel_RT.c:readenv_atoi
Unexecuted instantiation: dtrmm_RNLN.c:readenv_atoi
Unexecuted instantiation: dtrmm_olnncopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_RTUU.c:readenv_atoi
Unexecuted instantiation: dtrmm_outucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_RTUN.c:readenv_atoi
Unexecuted instantiation: dtrmm_outncopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_RTLU.c:readenv_atoi
Unexecuted instantiation: dtrmm_oltucopy.c:readenv_atoi
Unexecuted instantiation: dtrmm_RTLN.c:readenv_atoi
Unexecuted instantiation: dtrmm_oltncopy.c:readenv_atoi
Unexecuted instantiation: dnrm2.c:readenv_atoi
Unexecuted instantiation: dtrmv.c:readenv_atoi
Unexecuted instantiation: dtrmv_TUU.c:readenv_atoi
Unexecuted instantiation: dtrmv_TUN.c:readenv_atoi
Unexecuted instantiation: dtrmv_TLU.c:readenv_atoi
Unexecuted instantiation: dtrmv_TLN.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_NUU.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_NUN.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_NLU.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_NLN.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_TUU.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_TUN.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_TLU.c:readenv_atoi
Unexecuted instantiation: dtrmv_thread_TLN.c:readenv_atoi
Unexecuted instantiation: dsymv.c:readenv_atoi
Unexecuted instantiation: dsymv_U.c:readenv_atoi
Unexecuted instantiation: dsymv_L.c:readenv_atoi
Unexecuted instantiation: dsymv_thread_U.c:readenv_atoi
Unexecuted instantiation: dsymv_thread_L.c:readenv_atoi
Unexecuted instantiation: ddot.c:readenv_atoi
Unexecuted instantiation: daxpy.c:readenv_atoi
Unexecuted instantiation: dsyr2k.c:readenv_atoi
Unexecuted instantiation: syrk_thread.c:readenv_atoi
Unexecuted instantiation: dsyr2k_UN.c:readenv_atoi
Unexecuted instantiation: dsyr2k_kernel_U.c:readenv_atoi
Unexecuted instantiation: dsyr2k_UT.c:readenv_atoi
Unexecuted instantiation: dsyr2k_LN.c:readenv_atoi
Unexecuted instantiation: dsyr2k_kernel_L.c:readenv_atoi
Unexecuted instantiation: dsyr2k_LT.c:readenv_atoi
Unexecuted instantiation: dsyr2.c:readenv_atoi
Unexecuted instantiation: dsyr2_U.c:readenv_atoi
Unexecuted instantiation: dsyr2_L.c:readenv_atoi
Unexecuted instantiation: dsyr2_thread_U.c:readenv_atoi
Unexecuted instantiation: dsyr2_thread_L.c:readenv_atoi
Unexecuted instantiation: drot.c:readenv_atoi
Unexecuted instantiation: drot_k.c:readenv_atoi
761
#endif
762
#endif
763
764
#if !defined(XDOUBLE) || !defined(QUAD_PRECISION)
765
766
0
static __inline void compinv(FLOAT *b, FLOAT ar, FLOAT ai){
767
0
768
0
#ifndef UNIT
769
0
  FLOAT ratio, den;
770
0
771
0
  if (
772
0
#ifdef XDOUBLE
773
0
      (fabsl(ar)) >= (fabsl(ai))
774
0
#elif defined DOUBLE
775
0
      (fabs (ar)) >= (fabs (ai))
776
0
#else
777
0
      (fabsf(ar)) >= (fabsf(ai))
778
0
#endif
779
0
      ) {
780
0
    ratio = ai / ar;
781
0
    den   = (FLOAT)(ONE / (ar * (ONE + ratio * ratio)));
782
0
    ar =  den;
783
0
    ai = -ratio * den;
784
0
  } else {
785
0
    ratio = ar / ai;
786
0
    den   = (FLOAT)(ONE /(ai * (ONE + ratio * ratio)));
787
0
    ar =  ratio * den;
788
0
    ai = -den;
789
0
  }
790
0
  b[0] = ar;
791
0
  b[1] = ai;
792
0
#else
793
0
  b[0] = ONE;
794
0
  b[1] = ZERO;
795
0
#endif
796
0
797
0
}
Unexecuted instantiation: sgemm.c:compinv
Unexecuted instantiation: ssyrk.c:compinv
Unexecuted instantiation: dgemm.c:compinv
Unexecuted instantiation: sgetrf.c:compinv
Unexecuted instantiation: dgetrf.c:compinv
Unexecuted instantiation: sgemm_nn.c:compinv
Unexecuted instantiation: dgemm_nn.c:compinv
Unexecuted instantiation: sgemm_thread_nn.c:compinv
Unexecuted instantiation: dgemm_thread_nn.c:compinv
Unexecuted instantiation: sgemm_nt.c:compinv
Unexecuted instantiation: dgemm_nt.c:compinv
Unexecuted instantiation: sgemm_thread_nt.c:compinv
Unexecuted instantiation: dgemm_thread_nt.c:compinv
Unexecuted instantiation: sgemm_tn.c:compinv
Unexecuted instantiation: dgemm_tn.c:compinv
Unexecuted instantiation: sgemm_thread_tn.c:compinv
Unexecuted instantiation: dgemm_thread_tn.c:compinv
Unexecuted instantiation: sgemm_tt.c:compinv
Unexecuted instantiation: dgemm_tt.c:compinv
Unexecuted instantiation: sgemm_thread_tt.c:compinv
Unexecuted instantiation: dgemm_thread_tt.c:compinv
Unexecuted instantiation: ssyrk_UN.c:compinv
Unexecuted instantiation: ssyrk_LN.c:compinv
Unexecuted instantiation: ssyrk_UT.c:compinv
Unexecuted instantiation: ssyrk_LT.c:compinv
Unexecuted instantiation: ssyrk_kernel_U.c:compinv
Unexecuted instantiation: ssyrk_kernel_L.c:compinv
Unexecuted instantiation: ssyrk_thread_UN.c:compinv
Unexecuted instantiation: ssyrk_thread_LN.c:compinv
Unexecuted instantiation: ssyrk_thread_UT.c:compinv
Unexecuted instantiation: ssyrk_thread_LT.c:compinv
Unexecuted instantiation: memory.c:compinv
Unexecuted instantiation: blas_server_omp.c:compinv
Unexecuted instantiation: divtable.c:compinv
Unexecuted instantiation: blas_server_callback.c:compinv
Unexecuted instantiation: xerbla.c:compinv
Unexecuted instantiation: openblas_error_handle.c:compinv
Unexecuted instantiation: openblas_env.c:compinv
Unexecuted instantiation: parameter.c:compinv
Unexecuted instantiation: sscal_k.c:compinv
Unexecuted instantiation: sgemm_kernel.c:compinv
Unexecuted instantiation: sgemm_incopy.c:compinv
Unexecuted instantiation: sgemm_itcopy.c:compinv
Unexecuted instantiation: sgemm_oncopy.c:compinv
Unexecuted instantiation: sgemm_otcopy.c:compinv
Unexecuted instantiation: sgemm_beta.c:compinv
Unexecuted instantiation: sgemm_small_matrix_permit.c:compinv
Unexecuted instantiation: sgemm_small_kernel_nn.c:compinv
Unexecuted instantiation: sgemm_small_kernel_nt.c:compinv
Unexecuted instantiation: sgemm_small_kernel_tn.c:compinv
Unexecuted instantiation: sgemm_small_kernel_tt.c:compinv
Unexecuted instantiation: sgemm_small_kernel_b0_nn.c:compinv
Unexecuted instantiation: sgemm_small_kernel_b0_nt.c:compinv
Unexecuted instantiation: sgemm_small_kernel_b0_tn.c:compinv
Unexecuted instantiation: sgemm_small_kernel_b0_tt.c:compinv
Unexecuted instantiation: dgemm_incopy.c:compinv
Unexecuted instantiation: dgemm_itcopy.c:compinv
Unexecuted instantiation: dgemm_oncopy.c:compinv
Unexecuted instantiation: dgemm_otcopy.c:compinv
Unexecuted instantiation: dgemm_beta.c:compinv
Unexecuted instantiation: dgemm_small_matrix_permit.c:compinv
Unexecuted instantiation: dgemm_small_kernel_nn.c:compinv
Unexecuted instantiation: dgemm_small_kernel_nt.c:compinv
Unexecuted instantiation: dgemm_small_kernel_tn.c:compinv
Unexecuted instantiation: dgemm_small_kernel_tt.c:compinv
Unexecuted instantiation: dgemm_small_kernel_b0_nn.c:compinv
Unexecuted instantiation: dgemm_small_kernel_b0_nt.c:compinv
Unexecuted instantiation: dgemm_small_kernel_b0_tn.c:compinv
Unexecuted instantiation: dgemm_small_kernel_b0_tt.c:compinv
Unexecuted instantiation: sgetrf_single.c:compinv
Unexecuted instantiation: sgetf2_k.c:compinv
Unexecuted instantiation: sgemv_n.c:compinv
Unexecuted instantiation: sdot_k.c:compinv
Unexecuted instantiation: strsm_iltucopy.c:compinv
Unexecuted instantiation: slaswp_plus.c:compinv
Unexecuted instantiation: strsm_kernel_LT.c:compinv
Unexecuted instantiation: dgetrf_single.c:compinv
Unexecuted instantiation: dgetf2_k.c:compinv
Unexecuted instantiation: dscal_k.c:compinv
Unexecuted instantiation: ddot_k.c:compinv
Unexecuted instantiation: blas_l1_thread.c:compinv
Unexecuted instantiation: dgemv_n.c:compinv
Unexecuted instantiation: dtrsm_iltucopy.c:compinv
Unexecuted instantiation: dlaswp_plus.c:compinv
Unexecuted instantiation: dtrsm_kernel_LT.c:compinv
Unexecuted instantiation: sgetrf_parallel.c:compinv
Unexecuted instantiation: gemm_thread_n.c:compinv
Unexecuted instantiation: dgetrf_parallel.c:compinv
Unexecuted instantiation: strtri.c:compinv
Unexecuted instantiation: strtri_UU_single.c:compinv
Unexecuted instantiation: strti2_UU.c:compinv
Unexecuted instantiation: strmv_NUU.c:compinv
Unexecuted instantiation: saxpy_k.c:compinv
Unexecuted instantiation: strmm_LNUU.c:compinv
Unexecuted instantiation: strmm_iutucopy.c:compinv
Unexecuted instantiation: strmm_kernel_LN.c:compinv
Unexecuted instantiation: strsm_RNUU.c:compinv
Unexecuted instantiation: strsm_ounucopy.c:compinv
Unexecuted instantiation: strsm_kernel_RN.c:compinv
Unexecuted instantiation: strtri_UN_single.c:compinv
Unexecuted instantiation: strti2_UN.c:compinv
Unexecuted instantiation: strmv_NUN.c:compinv
Unexecuted instantiation: strmm_LNUN.c:compinv
Unexecuted instantiation: strmm_iutncopy.c:compinv
Unexecuted instantiation: strsm_RNUN.c:compinv
Unexecuted instantiation: strsm_ounncopy.c:compinv
Unexecuted instantiation: strtri_LU_single.c:compinv
Unexecuted instantiation: strti2_LU.c:compinv
Unexecuted instantiation: strmv_NLU.c:compinv
Unexecuted instantiation: strmm_LNLU.c:compinv
Unexecuted instantiation: strmm_iltucopy.c:compinv
Unexecuted instantiation: strmm_kernel_LT.c:compinv
Unexecuted instantiation: strsm_RNLU.c:compinv
Unexecuted instantiation: strsm_olnucopy.c:compinv
Unexecuted instantiation: strsm_kernel_RT.c:compinv
Unexecuted instantiation: strtri_LN_single.c:compinv
Unexecuted instantiation: strti2_LN.c:compinv
Unexecuted instantiation: strmv_NLN.c:compinv
Unexecuted instantiation: strmm_LNLN.c:compinv
Unexecuted instantiation: strmm_iltncopy.c:compinv
Unexecuted instantiation: strsm_RNLN.c:compinv
Unexecuted instantiation: strsm_olnncopy.c:compinv
Unexecuted instantiation: strtri_UU_parallel.c:compinv
Unexecuted instantiation: gemm_thread_m.c:compinv
Unexecuted instantiation: strtri_UN_parallel.c:compinv
Unexecuted instantiation: strtri_LU_parallel.c:compinv
Unexecuted instantiation: strtri_LN_parallel.c:compinv
Unexecuted instantiation: strsm.c:compinv
Unexecuted instantiation: strsm_LNUU.c:compinv
Unexecuted instantiation: strsm_iutucopy.c:compinv
Unexecuted instantiation: strsm_kernel_LN.c:compinv
Unexecuted instantiation: strsm_LNUN.c:compinv
Unexecuted instantiation: strsm_iutncopy.c:compinv
Unexecuted instantiation: strsm_LNLU.c:compinv
Unexecuted instantiation: strsm_LNLN.c:compinv
Unexecuted instantiation: strsm_iltncopy.c:compinv
Unexecuted instantiation: strsm_LTUU.c:compinv
Unexecuted instantiation: strsm_iunucopy.c:compinv
Unexecuted instantiation: strsm_LTUN.c:compinv
Unexecuted instantiation: strsm_iunncopy.c:compinv
Unexecuted instantiation: strsm_LTLU.c:compinv
Unexecuted instantiation: strsm_ilnucopy.c:compinv
Unexecuted instantiation: strsm_LTLN.c:compinv
Unexecuted instantiation: strsm_ilnncopy.c:compinv
Unexecuted instantiation: strsm_RTUU.c:compinv
Unexecuted instantiation: strsm_outucopy.c:compinv
Unexecuted instantiation: strsm_RTUN.c:compinv
Unexecuted instantiation: strsm_outncopy.c:compinv
Unexecuted instantiation: strsm_RTLU.c:compinv
Unexecuted instantiation: strsm_oltucopy.c:compinv
Unexecuted instantiation: strsm_RTLN.c:compinv
Unexecuted instantiation: strsm_oltncopy.c:compinv
Unexecuted instantiation: sgemv.c:compinv
Unexecuted instantiation: sgemv_t.c:compinv
Unexecuted instantiation: sgemv_thread_n.c:compinv
Unexecuted instantiation: sgemv_thread_t.c:compinv
Unexecuted instantiation: sswap.c:compinv
Unexecuted instantiation: sscal.c:compinv
Unexecuted instantiation: srot.c:compinv
Unexecuted instantiation: srot_k.c:compinv
Unexecuted instantiation: scopy.c:compinv
Unexecuted instantiation: snrm2.c:compinv
Unexecuted instantiation: isamax.c:compinv
Unexecuted instantiation: sger.c:compinv
Unexecuted instantiation: sger_k.c:compinv
Unexecuted instantiation: sger_thread.c:compinv
Unexecuted instantiation: strmm.c:compinv
Unexecuted instantiation: strmm_LTUU.c:compinv
Unexecuted instantiation: strmm_iunucopy.c:compinv
Unexecuted instantiation: strmm_LTUN.c:compinv
Unexecuted instantiation: strmm_iunncopy.c:compinv
Unexecuted instantiation: strmm_LTLU.c:compinv
Unexecuted instantiation: strmm_ilnucopy.c:compinv
Unexecuted instantiation: strmm_LTLN.c:compinv
Unexecuted instantiation: strmm_ilnncopy.c:compinv
Unexecuted instantiation: strmm_RNUU.c:compinv
Unexecuted instantiation: strmm_ounucopy.c:compinv
Unexecuted instantiation: strmm_kernel_RN.c:compinv
Unexecuted instantiation: strmm_RNUN.c:compinv
Unexecuted instantiation: strmm_ounncopy.c:compinv
Unexecuted instantiation: strmm_RNLU.c:compinv
Unexecuted instantiation: strmm_olnucopy.c:compinv
Unexecuted instantiation: strmm_kernel_RT.c:compinv
Unexecuted instantiation: strmm_RNLN.c:compinv
Unexecuted instantiation: strmm_olnncopy.c:compinv
Unexecuted instantiation: strmm_RTUU.c:compinv
Unexecuted instantiation: strmm_outucopy.c:compinv
Unexecuted instantiation: strmm_RTUN.c:compinv
Unexecuted instantiation: strmm_outncopy.c:compinv
Unexecuted instantiation: strmm_RTLU.c:compinv
Unexecuted instantiation: strmm_oltucopy.c:compinv
Unexecuted instantiation: strmm_RTLN.c:compinv
Unexecuted instantiation: strmm_oltncopy.c:compinv
Unexecuted instantiation: strmv.c:compinv
Unexecuted instantiation: strmv_TUU.c:compinv
Unexecuted instantiation: strmv_TUN.c:compinv
Unexecuted instantiation: strmv_TLU.c:compinv
Unexecuted instantiation: strmv_TLN.c:compinv
Unexecuted instantiation: strmv_thread_NUU.c:compinv
Unexecuted instantiation: strmv_thread_NUN.c:compinv
Unexecuted instantiation: strmv_thread_NLU.c:compinv
Unexecuted instantiation: strmv_thread_NLN.c:compinv
Unexecuted instantiation: strmv_thread_TUU.c:compinv
Unexecuted instantiation: strmv_thread_TUN.c:compinv
Unexecuted instantiation: strmv_thread_TLU.c:compinv
Unexecuted instantiation: strmv_thread_TLN.c:compinv
Unexecuted instantiation: sdot.c:compinv
Unexecuted instantiation: dtrtri.c:compinv
Unexecuted instantiation: dtrtri_UU_single.c:compinv
Unexecuted instantiation: dtrti2_UU.c:compinv
Unexecuted instantiation: dtrmv_NUU.c:compinv
Unexecuted instantiation: daxpy_k.c:compinv
Unexecuted instantiation: dtrmm_LNUU.c:compinv
Unexecuted instantiation: dtrmm_iutucopy.c:compinv
Unexecuted instantiation: dtrmm_kernel_LN.c:compinv
Unexecuted instantiation: dtrsm_RNUU.c:compinv
Unexecuted instantiation: dtrsm_ounucopy.c:compinv
Unexecuted instantiation: dtrsm_kernel_RN.c:compinv
Unexecuted instantiation: dtrtri_UN_single.c:compinv
Unexecuted instantiation: dtrti2_UN.c:compinv
Unexecuted instantiation: dtrmv_NUN.c:compinv
Unexecuted instantiation: dtrmm_LNUN.c:compinv
Unexecuted instantiation: dtrmm_iutncopy.c:compinv
Unexecuted instantiation: dtrsm_RNUN.c:compinv
Unexecuted instantiation: dtrsm_ounncopy.c:compinv
Unexecuted instantiation: dtrtri_LU_single.c:compinv
Unexecuted instantiation: dtrti2_LU.c:compinv
Unexecuted instantiation: dtrmv_NLU.c:compinv
Unexecuted instantiation: dtrmm_LNLU.c:compinv
Unexecuted instantiation: dtrmm_iltucopy.c:compinv
Unexecuted instantiation: dtrmm_kernel_LT.c:compinv
Unexecuted instantiation: dtrsm_RNLU.c:compinv
Unexecuted instantiation: dtrsm_olnucopy.c:compinv
Unexecuted instantiation: dtrsm_kernel_RT.c:compinv
Unexecuted instantiation: dtrtri_LN_single.c:compinv
Unexecuted instantiation: dtrti2_LN.c:compinv
Unexecuted instantiation: dtrmv_NLN.c:compinv
Unexecuted instantiation: dtrmm_LNLN.c:compinv
Unexecuted instantiation: dtrmm_iltncopy.c:compinv
Unexecuted instantiation: dtrsm_RNLN.c:compinv
Unexecuted instantiation: dtrsm_olnncopy.c:compinv
Unexecuted instantiation: dtrtri_UU_parallel.c:compinv
Unexecuted instantiation: dtrtri_UN_parallel.c:compinv
Unexecuted instantiation: dtrtri_LU_parallel.c:compinv
Unexecuted instantiation: dtrtri_LN_parallel.c:compinv
Unexecuted instantiation: dtrsm.c:compinv
Unexecuted instantiation: dtrsm_LNUU.c:compinv
Unexecuted instantiation: dtrsm_iutucopy.c:compinv
Unexecuted instantiation: dtrsm_kernel_LN.c:compinv
Unexecuted instantiation: dtrsm_LNUN.c:compinv
Unexecuted instantiation: dtrsm_iutncopy.c:compinv
Unexecuted instantiation: dtrsm_LNLU.c:compinv
Unexecuted instantiation: dtrsm_LNLN.c:compinv
Unexecuted instantiation: dtrsm_iltncopy.c:compinv
Unexecuted instantiation: dtrsm_LTUU.c:compinv
Unexecuted instantiation: dtrsm_iunucopy.c:compinv
Unexecuted instantiation: dtrsm_LTUN.c:compinv
Unexecuted instantiation: dtrsm_iunncopy.c:compinv
Unexecuted instantiation: dtrsm_LTLU.c:compinv
Unexecuted instantiation: dtrsm_ilnucopy.c:compinv
Unexecuted instantiation: dtrsm_LTLN.c:compinv
Unexecuted instantiation: dtrsm_ilnncopy.c:compinv
Unexecuted instantiation: dtrsm_RTUU.c:compinv
Unexecuted instantiation: dtrsm_outucopy.c:compinv
Unexecuted instantiation: dtrsm_RTUN.c:compinv
Unexecuted instantiation: dtrsm_outncopy.c:compinv
Unexecuted instantiation: dtrsm_RTLU.c:compinv
Unexecuted instantiation: dtrsm_oltucopy.c:compinv
Unexecuted instantiation: dtrsm_RTLN.c:compinv
Unexecuted instantiation: dtrsm_oltncopy.c:compinv
Unexecuted instantiation: dgemv.c:compinv
Unexecuted instantiation: dgemv_t.c:compinv
Unexecuted instantiation: dgemv_thread_n.c:compinv
Unexecuted instantiation: dgemv_thread_t.c:compinv
Unexecuted instantiation: dswap.c:compinv
Unexecuted instantiation: dscal.c:compinv
Unexecuted instantiation: dger.c:compinv
Unexecuted instantiation: dger_k.c:compinv
Unexecuted instantiation: dger_thread.c:compinv
Unexecuted instantiation: dcopy.c:compinv
Unexecuted instantiation: dtrmm.c:compinv
Unexecuted instantiation: dtrmm_LTUU.c:compinv
Unexecuted instantiation: dtrmm_iunucopy.c:compinv
Unexecuted instantiation: dtrmm_LTUN.c:compinv
Unexecuted instantiation: dtrmm_iunncopy.c:compinv
Unexecuted instantiation: dtrmm_LTLU.c:compinv
Unexecuted instantiation: dtrmm_ilnucopy.c:compinv
Unexecuted instantiation: dtrmm_LTLN.c:compinv
Unexecuted instantiation: dtrmm_ilnncopy.c:compinv
Unexecuted instantiation: dtrmm_RNUU.c:compinv
Unexecuted instantiation: dtrmm_ounucopy.c:compinv
Unexecuted instantiation: dtrmm_kernel_RN.c:compinv
Unexecuted instantiation: dtrmm_RNUN.c:compinv
Unexecuted instantiation: dtrmm_ounncopy.c:compinv
Unexecuted instantiation: dtrmm_RNLU.c:compinv
Unexecuted instantiation: dtrmm_olnucopy.c:compinv
Unexecuted instantiation: dtrmm_kernel_RT.c:compinv
Unexecuted instantiation: dtrmm_RNLN.c:compinv
Unexecuted instantiation: dtrmm_olnncopy.c:compinv
Unexecuted instantiation: dtrmm_RTUU.c:compinv
Unexecuted instantiation: dtrmm_outucopy.c:compinv
Unexecuted instantiation: dtrmm_RTUN.c:compinv
Unexecuted instantiation: dtrmm_outncopy.c:compinv
Unexecuted instantiation: dtrmm_RTLU.c:compinv
Unexecuted instantiation: dtrmm_oltucopy.c:compinv
Unexecuted instantiation: dtrmm_RTLN.c:compinv
Unexecuted instantiation: dtrmm_oltncopy.c:compinv
Unexecuted instantiation: dnrm2.c:compinv
Unexecuted instantiation: dtrmv.c:compinv
Unexecuted instantiation: dtrmv_TUU.c:compinv
Unexecuted instantiation: dtrmv_TUN.c:compinv
Unexecuted instantiation: dtrmv_TLU.c:compinv
Unexecuted instantiation: dtrmv_TLN.c:compinv
Unexecuted instantiation: dtrmv_thread_NUU.c:compinv
Unexecuted instantiation: dtrmv_thread_NUN.c:compinv
Unexecuted instantiation: dtrmv_thread_NLU.c:compinv
Unexecuted instantiation: dtrmv_thread_NLN.c:compinv
Unexecuted instantiation: dtrmv_thread_TUU.c:compinv
Unexecuted instantiation: dtrmv_thread_TUN.c:compinv
Unexecuted instantiation: dtrmv_thread_TLU.c:compinv
Unexecuted instantiation: dtrmv_thread_TLN.c:compinv
Unexecuted instantiation: dsymv.c:compinv
Unexecuted instantiation: dsymv_U.c:compinv
Unexecuted instantiation: dsymv_L.c:compinv
Unexecuted instantiation: dsymv_thread_U.c:compinv
Unexecuted instantiation: dsymv_thread_L.c:compinv
Unexecuted instantiation: ddot.c:compinv
Unexecuted instantiation: daxpy.c:compinv
Unexecuted instantiation: dsyr2k.c:compinv
Unexecuted instantiation: syrk_thread.c:compinv
Unexecuted instantiation: dsyr2k_UN.c:compinv
Unexecuted instantiation: dsyr2k_kernel_U.c:compinv
Unexecuted instantiation: dsyr2k_UT.c:compinv
Unexecuted instantiation: dsyr2k_LN.c:compinv
Unexecuted instantiation: dsyr2k_kernel_L.c:compinv
Unexecuted instantiation: dsyr2k_LT.c:compinv
Unexecuted instantiation: dsyr2.c:compinv
Unexecuted instantiation: dsyr2_U.c:compinv
Unexecuted instantiation: dsyr2_L.c:compinv
Unexecuted instantiation: dsyr2_thread_U.c:compinv
Unexecuted instantiation: dsyr2_thread_L.c:compinv
Unexecuted instantiation: drot.c:compinv
Unexecuted instantiation: drot_k.c:compinv
798
#endif
799
800
#ifdef MALLOC_DEBUG
801
void *blas_debug_alloc(int);
802
void *blas_debug_free(void *);
803
#undef malloc
804
#undef free
805
#define malloc(a) blas_debug_alloc(a)
806
#define free(a)   blas_debug_free (a)
807
#endif
808
809
#ifndef COPYOVERHEAD
810
#define GEMMRETTYPE  int
811
#else
812
813
typedef struct {
814
  double outercopy;
815
  double innercopy;
816
  double kernel;
817
  double mflops;
818
} copyoverhead_t;
819
820
#define GEMMRETTYPE  copyoverhead_t
821
#endif
822
#endif
823
824
#ifndef BUILD_KERNEL
825
#define KNAME(A, B) A
826
#else
827
#define KNAME(A, B) A##B
828
#endif
829
830
#include "common_interface.h"
831
#ifdef SANITY_CHECK
832
#include "common_reference.h"
833
#endif
834
#include "common_macro.h"
835
#include "common_level1.h"
836
#include "common_level2.h"
837
#include "common_level3.h"
838
#include "common_lapack.h"
839
840
#ifdef CBLAS
841
# define OPENBLAS_CONST     /* see comment in cblas.h */
842
# include "cblas.h"
843
#endif
844
845
#ifndef ASSEMBLER
846
#include "common_stackalloc.h"
847
#if 0
848
#include "symcopy.h"
849
#endif
850
851
#if defined(SMP_SERVER) && defined(SMP_ONDEMAND)
852
#error Both SMP_SERVER and SMP_ONDEMAND are specified.
853
#endif
854
855
#if defined(SMP_SERVER) || defined(SMP_ONDEMAND)
856
#include "common_thread.h"
857
#endif
858
859
#endif
860
861
#define INFO_NUM 99
862
863
#ifndef DEFAULT_CPU_NUMBER
864
#define DEFAULT_CPU_NUMBER 4
865
#endif
866
867
#ifndef IDEBUG_START
868
#define IDEBUG_START
869
#endif
870
871
#ifndef IDEBUG_END
872
#define IDEBUG_END
873
#endif
874
875
#if !defined(ASSEMBLER) && defined(FUNCTION_PROFILE)
876
877
typedef struct {
878
  int func;
879
  unsigned long long calls, fops, area, cycles, tcycles;
880
} func_profile_t;
881
882
extern func_profile_t function_profile_table[];
883
extern int gotoblas_profile;
884
885
#ifdef XDOUBLE
886
#define NUMOPT  QNUMOPT
887
#elif defined DOUBLE
888
#define NUMOPT  DNUMOPT
889
#else
890
#define NUMOPT  SNUMOPT
891
#endif
892
893
#define FUNCTION_PROFILE_START() { unsigned long long profile_start = rpcc(), profile_end;
894
#ifdef SMP
895
#define FUNCTION_PROFILE_END(COMP, AREA, OPS) \
896
  if (gotoblas_profile) { \
897
  profile_end = rpcc(); \
898
  function_profile_table[PROFILE_FUNC_NAME].calls ++; \
899
  function_profile_table[PROFILE_FUNC_NAME].area    += SIZE * COMPSIZE * (AREA); \
900
  function_profile_table[PROFILE_FUNC_NAME].fops    += (COMP) * (OPS) / NUMOPT; \
901
  function_profile_table[PROFILE_FUNC_NAME].cycles  += (profile_end - profile_start); \
902
  function_profile_table[PROFILE_FUNC_NAME].tcycles += blas_cpu_number * (profile_end - profile_start); \
903
  } \
904
  }
905
#else
906
#define FUNCTION_PROFILE_END(COMP, AREA, OPS) \
907
  if (gotoblas_profile) { \
908
  profile_end = rpcc(); \
909
  function_profile_table[PROFILE_FUNC_NAME].calls ++; \
910
  function_profile_table[PROFILE_FUNC_NAME].area    += SIZE * COMPSIZE * (AREA); \
911
  function_profile_table[PROFILE_FUNC_NAME].fops    += (COMP) * (OPS) / NUMOPT; \
912
  function_profile_table[PROFILE_FUNC_NAME].cycles  += (profile_end - profile_start); \
913
  function_profile_table[PROFILE_FUNC_NAME].tcycles += (profile_end - profile_start); \
914
  } \
915
  }
916
#endif
917
918
#else
919
#define FUNCTION_PROFILE_START()
920
#define FUNCTION_PROFILE_END(COMP, AREA, OPS)
921
#endif
922
923
#if 1
924
#define PRINT_DEBUG_CNAME
925
#define PRINT_DEBUG_NAME
926
#else
927
#define PRINT_DEBUG_CNAME if (readenv_atoi("GOTO_DEBUG")) fprintf(stderr, "GotoBLAS : %s\n", CHAR_CNAME)
928
#define PRINT_DEBUG_NAME  if (readenv_atoi("GOTO_DEBUG")) fprintf(stderr, "GotoBLAS : %s\n", CHAR_NAME)
929
#endif
930
931
#ifdef __cplusplus
932
}
933
934
#endif  /* __cplusplus */
935
936
#endif