Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-01-07 10:10:52

0001 #ifndef OPENBLAS_CONFIG_H
0002 #define OPENBLAS_CONFIG_H
0003 #define OPENBLAS_OS_LINUX   1
0004 #define OPENBLAS_ARCH_X86_64    1
0005 #define OPENBLAS_C_GCC  1
0006 #define OPENBLAS___64BIT__  1
0007 #define OPENBLAS_FUNDERSCORE    
0008 #define OPENBLAS_BUNDERSCORE _
0009 #define OPENBLAS_NEEDBUNDERSCORE 1
0010 #define OPENBLAS_GENERIC
0011 #define OPENBLAS_L1_DATA_SIZE 32768
0012 #define OPENBLAS_L1_DATA_LINESIZE 128
0013 #define OPENBLAS_L2_SIZE 512488
0014 #define OPENBLAS_L2_LINESIZE 128
0015 #define OPENBLAS_DTB_DEFAULT_ENTRIES 128
0016 #define OPENBLAS_DTB_SIZE 4096
0017 #define OPENBLAS_L2_ASSOCIATIVE 8
0018 #define OPENBLAS_CORE_generic
0019 #define OPENBLAS_CHAR_CORENAME "generic"
0020 #define OPENBLAS_SLOCAL_BUFFER_SIZE 4096
0021 #define OPENBLAS_DLOCAL_BUFFER_SIZE 4096
0022 #define OPENBLAS_CLOCAL_BUFFER_SIZE 8192
0023 #define OPENBLAS_ZLOCAL_BUFFER_SIZE 8192
0024 #define OPENBLAS_GEMM_MULTITHREAD_THRESHOLD 4
0025 #define OPENBLAS_VERSION "OpenBLAS 0.3.30"
0026 /*This is only for "make install" target.*/
0027 
0028 #if defined(OPENBLAS_OS_WINNT) || defined(OPENBLAS_OS_CYGWIN_NT) || defined(OPENBLAS_OS_INTERIX)
0029 #define OPENBLAS_WINDOWS_ABI
0030 #define OPENBLAS_OS_WINDOWS
0031 
0032 #ifdef DOUBLE
0033 #define DOUBLE_DEFINED DOUBLE
0034 #undef  DOUBLE
0035 #endif
0036 #endif
0037 
0038 #ifdef OPENBLAS_NEEDBUNDERSCORE
0039 #define BLASFUNC(FUNC) FUNC##_
0040 #else
0041 #define BLASFUNC(FUNC) FUNC
0042 #endif
0043 
0044 #ifdef OPENBLAS_QUAD_PRECISION
0045 typedef struct {
0046   unsigned long x[2];
0047 }  xdouble;
0048 #elif defined OPENBLAS_EXPRECISION
0049 #define xdouble long double
0050 #else
0051 #define xdouble double
0052 #endif
0053 
0054 #if defined(OPENBLAS_OS_WINDOWS) && defined(OPENBLAS___64BIT__)
0055 typedef long long BLASLONG;
0056 typedef unsigned long long BLASULONG;
0057 #else
0058 typedef long BLASLONG;
0059 typedef unsigned long BLASULONG;
0060 #endif
0061 
0062 #ifndef BFLOAT16
0063 #include <stdint.h>
0064 typedef uint16_t bfloat16;
0065 #endif
0066 
0067 #ifdef OPENBLAS_USE64BITINT
0068 typedef BLASLONG blasint;
0069 #else
0070 typedef int blasint;
0071 #endif
0072 
0073 #if defined(XDOUBLE) || defined(DOUBLE)
0074 #define FLOATRET    FLOAT
0075 #else
0076 #ifdef NEED_F2CCONV
0077 #define FLOATRET    double
0078 #else
0079 #define FLOATRET    float
0080 #endif
0081 #endif
0082 
0083 /* Inclusion of a standard header file is needed for definition of __STDC_*
0084    predefined macros with some compilers (e.g. GCC 4.7 on Linux).  This occurs
0085    as a side effect of including either <features.h> or <stdc-predef.h>. */
0086 #include <stdio.h>
0087 
0088 /* C99 supports complex floating numbers natively, which GCC also offers as an
0089    extension since version 3.0.  If neither are available, use a compatible
0090    structure as fallback (see Clause 6.2.5.13 of the C99 standard). */
0091 #if ((defined(__STDC_IEC_559_COMPLEX__) || __STDC_VERSION__ >= 199901L || \
0092       (__GNUC__ >= 3 && !defined(__cplusplus))) && !(defined(FORCE_OPENBLAS_COMPLEX_STRUCT))) && !defined(_MSC_VER)
0093   #define OPENBLAS_COMPLEX_C99
0094 #ifndef __cplusplus
0095   #include <complex.h>
0096 #endif
0097   typedef float _Complex openblas_complex_float;
0098   typedef double _Complex openblas_complex_double;
0099   typedef xdouble _Complex openblas_complex_xdouble;
0100   #define openblas_make_complex_float(real, imag)    ((real) + ((imag) * _Complex_I))
0101   #define openblas_make_complex_double(real, imag)   ((real) + ((imag) * _Complex_I))
0102   #define openblas_make_complex_xdouble(real, imag)  ((real) + ((imag) * _Complex_I))
0103   #define openblas_complex_float_real(z)             (creal(z))
0104   #define openblas_complex_float_imag(z)             (cimag(z))
0105   #define openblas_complex_double_real(z)            (creal(z))
0106   #define openblas_complex_double_imag(z)            (cimag(z))
0107   #define openblas_complex_xdouble_real(z)           (creal(z))
0108   #define openblas_complex_xdouble_imag(z)           (cimag(z))
0109 #else
0110   #define OPENBLAS_COMPLEX_STRUCT
0111   typedef struct { float real, imag; } openblas_complex_float;
0112   typedef struct { double real, imag; } openblas_complex_double;
0113   typedef struct { xdouble real, imag; } openblas_complex_xdouble;
0114   #define openblas_make_complex_float(real, imag)    {(real), (imag)}
0115   #define openblas_make_complex_double(real, imag)   {(real), (imag)}
0116   #define openblas_make_complex_xdouble(real, imag)  {(real), (imag)}
0117   #define openblas_complex_float_real(z)             ((z).real)
0118   #define openblas_complex_float_imag(z)             ((z).imag)
0119   #define openblas_complex_double_real(z)            ((z).real)
0120   #define openblas_complex_double_imag(z)            ((z).imag)
0121   #define openblas_complex_xdouble_real(z)           ((z).real)
0122   #define openblas_complex_xdouble_imag(z)           ((z).imag)
0123 #endif
0124 
0125 /* Inclusion of Linux-specific header is needed for definition of cpu_set_t. */
0126 #ifdef OPENBLAS_OS_LINUX
0127 #ifndef _GNU_SOURCE
0128  #define _GNU_SOURCE
0129 #endif
0130 #include <sched.h>
0131 #endif
0132 
0133 #endif /* OPENBLAS_CONFIG_H */