numeric-linalg
Educational material on the SciPy implementation of numerical linear algebra algorithms
Name | Size | Mode | |
.. | |||
lapack/CBLAS/src/xerbla.c | 928B | -rw-r--r-- |
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
#include <stdio.h> #include <ctype.h> #include "cblas.h" #include "cblas_f77.h" #define XerblaStrLen 6 #define XerblaStrLen1 7 void #ifdef HAS_ATTRIBUTE_WEAK_SUPPORT __attribute__((weak)) #endif F77_xerbla_base #ifdef F77_CHAR (F77_CHAR F77_srname, void *vinfo #else (char *srname, void *vinfo #endif #ifdef BLAS_FORTRAN_STRLEN_END , FORTRAN_STRLEN len #endif ) { #ifdef F77_CHAR char *srname; #endif char rout[] = {'c','b','l','a','s','_','\0','\0','\0','\0','\0','\0','\0'}; int *info=vinfo; int i; extern int CBLAS_CallFromC; #ifdef F77_CHAR srname = F2C_STR(F77_srname, XerblaStrLen); #endif if (CBLAS_CallFromC) { for(i=0; i != XerblaStrLen; i++) rout[i+6] = tolower(srname[i]); rout[XerblaStrLen+6] = '\0'; API_SUFFIX(cblas_xerbla)(*info+1,rout,""); } else { fprintf(stderr, "Parameter %d to routine %s was incorrect\n", *info, srname); } }