Actual source code: slepcblaslapack_stdcall.h
slepc-3.12.0 2019-09-30
1: /*
2: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
3: SLEPc - Scalable Library for Eigenvalue Problem Computations
4: Copyright (c) 2002-2019, Universitat Politecnica de Valencia, Spain
6: This file is part of SLEPc.
7: SLEPc is distributed under a 2-clause BSD license (see LICENSE).
8: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
9: */
11: #if !defined(SLEPCBLASLAPACK_STDCALL_H)
12: #define SLEPCBLASLAPACK_STDCALL_H
14: /* LAPACK functions without string parameters */
15: #define BLASrot_ PETSCBLAS(rot,ROT)
16: #define BLASMIXEDrot_ PETSCBLASMIXED(rot,ROT)
17: #define LAPACKlaev2_ PETSCBLAS(laev2,LAEV2)
18: #define LAPACKgehrd_ PETSCBLAS(gehrd,GEHRD)
19: #define LAPACKgelqf_ PETSCBLAS(gelqf,GELQF)
20: #define LAPACKlarfg_ PETSCBLAS(larfg,LARFG)
21: #define LAPACKlag2_ PETSCBLASREAL(lag2,LAG2)
22: #define LAPACKlasv2_ PETSCBLASREAL(lasv2,LASV2)
23: #define LAPACKlartg_ PETSCBLAS(lartg,LARTG)
24: #define LAPACKREALlartg_ PETSCBLASREAL(lartg,LARTG)
25: #define LAPACKlaln2_ PETSCBLASREAL(laln2,LALN2)
26: #define LAPACKlaed4_ PETSCBLASREAL(laed4,LAED4)
27: #define LAPACKlamrg_ PETSCBLASREAL(lamrg,LAMRG)
28: #define LAPACKlapy2_ PETSCBLASREAL(lapy2,LAPY2)
29: #if !defined(PETSC_USE_COMPLEX)
30: #define LAPACKorghr_ PETSCBLAS(orghr,ORGHR)
31: #else
32: #define LAPACKorghr_ PETSCBLAS(unghr,UNGHR)
33: #endif
34: #define LAPACKtgexc_ PETSCBLAS(tgexc,TGEXC)
35: #define LAPACKgeqp3_ PETSCBLAS(geqp3,GEQP3)
37: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASR(rot,ROT) (PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscReal*);
38: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(laev2,LAEV2) (PetscScalar*,PetscScalar*,PetscScalar*,PetscReal*,PetscReal*,PetscReal*,PetscScalar*);
39: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(gehrd,GEHRD) (PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
40: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(gelqf,GELQF) (PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
41: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(larfg,LARFG) (PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*);
42: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(lag2,LAG2) (PetscReal*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*);
43: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(lasv2,LASV2) (PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*);
44: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(lartg,LARTG) (PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*);
45: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(laln2,LALN2) (PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscBLASInt*,PetscReal*,PetscReal*,PetscBLASInt*);
46: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(laed4,LAED4) (PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscBLASInt*);
47: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(lamrg,LAMRG) (PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
48: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLASREAL(lapy2,LAPY2) (PetscReal*,PetscReal*);
49: #if !defined(PETSC_USE_COMPLEX)
50: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(orghr,ORGHR) (PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
51: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(tgexc,TGEXC) (PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
52: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(geqp3,GEQP3) (PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
53: #else
54: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(unghr,UNGHR) (PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
55: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(tgexc,TGEXC) (PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
56: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(geqp3,GEQP3) (PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*);
57: #endif
59: /* LAPACK functions with string parameters */
61: /* same name for real and complex */
62: #define BLAStrmm_(a,b,c,d,e,f,g,h,i,j,k) PETSCBLAS(trmm,TRMM) ((a),1,(b),1,(c),1,(d),1,(e),(f),(g),(h),(i),(j),(k))
63: #define LAPACKlanhs_(a,b,c,d,e) PETSCBLAS(lanhs,LANHS) ((a),1,(b),(c),(d),(e))
64: #define LAPACKlange_(a,b,c,d,e,f) PETSCBLAS(lange,LANGE) ((a),1,(b),(c),(d),(e),(f))
65: #define LAPACKpbtrf_(a,b,c,d,e,f) PETSCBLAS(pbtrf,PBTRF) ((a),1,(b),(c),(d),(e),(f))
66: #define LAPACKlarf_(a,b,c,d,e,f,g,h,i) PETSCBLAS(larf,LARF) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i))
67: #define LAPACKlacpy_(a,b,c,d,e,f,g) PETSCBLAS(lacpy,LACPY) ((a),1,(b),(c),(d),(e),(f),(g))
68: #define LAPACKlansy_(a,b,c,d,e,f) PETSCBLAS(lansy,LANSY) ((a),1,(b),1,(c),(d),(e),(f))
69: #define LAPACKlaset_(a,b,c,d,e,f,g) PETSCBLAS(laset,LASET) ((a),1,(b),(c),(d),(e),(f),(g))
70: #define LAPACKtrsyl_(a,b,c,d,e,f,g,h,i,j,k,l,m) PETSCBLAS(trsyl,TRSYL) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m))
71: #define LAPACKtrtri_(a,b,c,d,e,f) PETSCBLAS(trtri,TRTRI) ((a),1,(b),1,(c),(d),(e),(f))
73: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trmm,TRMM) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*);
74: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLAS(lanhs,LANHS) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*);
75: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLAS(lange,LANGE) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*);
76: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLAS(pbtrf,PBTRF) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
77: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(larf,LARF) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*);
78: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(lacpy,LACPY) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*);
79: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLAS(lansy,LANSY) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*);
80: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(laset,LASET) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*);
81: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trsyl,TRSYL) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*);
82: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trtri,TRTRI) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
84: /* subroutines in which we use only the real version, do not care whether they have different name */
85: #define LAPACKstevr_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) PETSCBLASREAL(stevr,STEVR) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t))
86: #define LAPACKbdsdc_(a,b,c,d,e,f,g,h,i,j,k,l,m,n) PETSCBLASREAL(bdsdc,BDSDC) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n))
87: #define LAPACKlamch_(a) PETSCBLASREAL(lamch,LAMCH) ((a),1)
88: #define LAPACKlamc3_(a,b) PETSCBLASREAL(lamc3,LAMC3) ((a),(b))
90: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(stevr,STEVR) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscReal*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
91: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASREAL(bdsdc,BDSDC) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*);
92: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLASREAL(lamch,LAMCH) (const char*,PetscBLASInt);
93: SLEPC_EXTERN SlepcLRT PETSC_STDCALL PETSCBLASREAL(lamc3,LAMC3) (PetscReal*,PetscReal*);
95: /* subroutines with different name in real/complex */
96: #if !defined(PETSC_USE_COMPLEX)
97: #define LAPACKormlq_(a,b,c,d,e,f,g,h,i,j,k,l,m) PETSCBLAS(ormlq,ORMLQ) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m))
98: #define LAPACKorgtr_(a,b,c,d,e,f,g,h) PETSCBLAS(orgtr,ORGTR) ((a),1,(b),(c),(d),(e),(f),(g),(h))
99: #define LAPACKsytrd_(a,b,c,d,e,f,g,h,i,j) PETSCBLAS(sytrd,SYTRD) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j))
100: #define LAPACKsyevr_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u) PETSCBLAS(syevr,SYEVR) ((a),1,(b),1,(c),1,(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t),(u))
101: #define LAPACKsyevd_(a,b,c,d,e,f,g,h,i,j,k) PETSCBLAS(syevd,SYEVD) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k))
102: #define LAPACKsygvd_(a,b,c,d,e,f,g,h,i,j,k,l,m,n) PETSCBLAS(sygvd,SYGVD) ((a),(b),1,(c),1,(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n))
103: #else
104: #define LAPACKormlq_(a,b,c,d,e,f,g,h,i,j,k,l,m) PETSCBLAS(unmlq,UNMLQ) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m))
105: #define LAPACKorgtr_(a,b,c,d,e,f,g,h) PETSCBLAS(ungtr,UNGTR) ((a),1,(b),(c),(d),(e),(f),(g),(h))
106: #define LAPACKsytrd_(a,b,c,d,e,f,g,h,i,j) PETSCBLAS(hetrd,HETRD) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j))
107: #define LAPACKsyevr_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w) PETSCBLAS(heevr,HEEVR) ((a),1,(b),1,(c),1,(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t),(u),(v),(w))
108: #define LAPACKsyevd_(a,b,c,d,e,f,g,h,i,j,k,l,m) PETSCBLAS(heevd,HEEVD) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m))
109: #define LAPACKsygvd_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) PETSCBLAS(hegvd,HEGVD) ((a),(b),1,(c),1,(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p))
110: #endif
112: #if !defined(PETSC_USE_COMPLEX)
113: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(ormlq,ORMLQ) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
114: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(orgtr,ORGTR) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
115: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(sytrd,SYTRD) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscReal*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
116: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(syevr,SYEVR) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
117: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(syevd,SYEVD) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
118: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(sygvd,SYGVD) (PetscBLASInt*,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
119: #else
120: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(unmlq,UNMLQ) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
121: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(ungtr,UNGTR) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
122: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(hetrd,HETRD) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscReal*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
123: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(heevr,HEEVR) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscBLASInt*, PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
124: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(heevd,HEEVD) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
125: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(hegvd,HEGVD) (PetscBLASInt*,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
126: #endif
128: /* subroutines with different signature in real/complex */
129: #if !defined(PETSC_USE_COMPLEX)
130: #define LAPACKggevx_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,aa,ab,ac) PETSCBLAS(ggevx,GGEVX) ((a),1,(b),1,(c),1,(d),1,(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t),(u),(v),(w),(x),(y),(z),(aa),(ab),(ac))
131: #define LAPACKggev_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) PETSCBLAS(ggev,GGEV) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q))
132: #define LAPACKtrevc_(a,b,c,d,e,f,g,h,i,j,k,l,m,n) PETSCBLAS(trevc,TREVC) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n))
133: #define LAPACKgeevx_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w) PETSCBLAS(geevx,GEEVX) ((a),1,(b),1,(c),1,(d),1,(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t),(u),(v),(w))
134: #define LAPACKgees_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) PETSCBLAS(gees,GEES) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o))
135: #define LAPACKtrexc_(a,b,c,d,e,f,g,h,i,j) PETSCBLAS(trexc,TREXC) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j))
136: #define LAPACKgesdd_(a,b,c,d,e,f,g,h,i,j,k,l,m,n) PETSCBLAS(gesdd,GESDD) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n))
137: #define LAPACKtgevc_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) PETSCBLAS(tgevc,TGEVC) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p))
138: #define LAPACKhsein_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) PETSCBLAS(hsein,HSEIN) ((a),1,(b),1,(c),1,(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s))
139: #define LAPACKstedc_(a,b,c,d,e,f,g,h,i,j,k) PETSCBLAS(stedc,STEDC) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j),(k))
140: #define LAPACKlascl_(a,b,c,d,e,f,g,h,i,j) PETSCBLAS(lascl,LASCL) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j))
141: #else
142: #define LAPACKggevx_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,aa,ab,ac) PETSCBLAS(ggevx,GGEVX) ((a),1,(b),1,(c),1,(d),1,(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t),(u),(v),(w),(x),(y),(z),(aa),(ab),(ac))
143: #define LAPACKggev_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) PETSCBLAS(ggev,GGEV) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q))
144: #define LAPACKtrevc_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) PETSCBLAS(trevc,TREVC) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o))
145: #define LAPACKgeevx_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v) PETSCBLAS(geevx,GEEVX) ((a),1,(b),1,(c),1,(d),1,(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s),(t),(u),(v))
146: #define LAPACKgees_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) PETSCBLAS(gees,GEES) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o))
147: #define LAPACKtrexc_(a,b,c,d,e,f,g,h,i) PETSCBLAS(trexc,TREXC) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i))
148: #define LAPACKgesdd_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) PETSCBLAS(gesdd,GESDD) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o))
149: #define LAPACKtgevc_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) PETSCBLAS(tgevc,TGEVC) ((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q))
150: #define LAPACKhsein_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) PETSCBLAS(hsein,HSEIN) ((a),1,(b),1,(c),1,(d),(e),(f),(g),(h),(i),(j),(k),(l),(m),(n),(o),(p),(q),(r),(s))
151: #define LAPACKstedc_(a,b,c,d,e,f,g,h,i,j,k,l,m) PETSCBLAS(stedc,STEDC) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m))
152: #define LAPACKlascl_(a,b,c,d,e,f,g,h,i,j) PETSCBLAS(lascl,LASCL) ((a),1,(b),(c),(d),(e),(f),(g),(h),(i),(j))
153: #endif
155: #if !defined(PETSC_USE_COMPLEX)
156: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(ggevx,GGEVX) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
157: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(ggev,GGEV) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
158: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trevc,TREVC) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*);
159: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(geevx,GEEVX) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
160: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(gees,GEES) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt(*)(PetscReal,PetscReal),PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
161: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trexc,TREXC) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*);
162: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(gesdd,GESDD) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
163: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(tgevc,TGEVC) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*);
164: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(hsein,HSEIN) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
165: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(stedc,STEDC) (const char*,PetscBLASInt,PetscBLASInt*,PetscReal*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
166: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(lascl,LASCL) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
167: #else
168: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(ggevx,GGEVX) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
169: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(ggev,GGEV) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*);
170: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trevc,TREVC) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscReal*,PetscBLASInt*);
171: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(geevx,GEEVX) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscReal*,PetscReal*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*);
172: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(gees,GEES) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt(*)(PetscScalar),PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*);
173: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(trexc,TREXC) (const char*,PetscBLASInt,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
174: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(gesdd,GESDD) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*);
175: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(tgevc,TGEVC) (const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscReal*,PetscBLASInt*);
176: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(hsein,HSEIN) (const char*,PetscBLASInt,const char*,PetscBLASInt,const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
177: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(stedc,STEDC) (const char*,PetscBLASInt,PetscBLASInt*,PetscReal*,PetscReal*,PetscScalar*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*);
178: SLEPC_EXTERN void PETSC_STDCALL PETSCBLAS(lascl,LASCL) (const char*,PetscBLASInt,PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscReal*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscBLASInt*,PetscBLASInt*);
179: #endif
181: #if defined(PETSC_HAVE_COMPLEX)
182: /* complex subroutines to be called with scalar-type=real */
183: #define BLASCOMPLEXgemm_(a,b,c,d,e,f,g,h,i,j,k,l,m) PETSCBLASCOMPLEX(gemm,GEMM)((a),1,(b),1,(c),(d),(e),(f),(g),(h),(i),(j),(k),(l),(m))
184: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASCOMPLEX(gemm,GEMM)(const char*,const char*,PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscComplex*,PetscComplex*,PetscBLASInt*,PetscComplex*,PetscBLASInt*,PetscComplex*,PetscComplex*,PetscBLASInt*);
185: #define BLASCOMPLEXscal_ PETSCBLASCOMPLEX(scal,SCAL)
186: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASCOMPLEX(scal,SCAL)(const PetscBLASInt*,const PetscComplex*,PetscComplex*,const PetscBLASInt*);
187: #define LAPACKCOMPLEXgesv_ PETSCBLASCOMPLEX(gesv,GESV)
188: SLEPC_EXTERN void PETSC_STDCALL PETSCBLASCOMPLEX(gesv,GESV)(const PetscBLASInt*,const PetscBLASInt*,PetscComplex*,const PetscBLASInt*,PetscBLASInt*,PetscComplex*,const PetscBLASInt*,PetscBLASInt*);
189: #endif
191: #endif