PLASMA
Parallel Linear Algebra Software for Multicore Architectures
core_lapack_c.h
1 
13 #ifndef ICL_CORE_LAPACK_C_H
14 #define ICL_CORE_LAPACK_C_H
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 // LAPACK_GLOBAL is Fortran name mangling macro from LAPACKE
21 
22 // LAPACKE_clantr broken (returns 0) in LAPACKE < 3.6.1
23 #ifndef LAPACK_clantr
24 #define LAPACK_clantr LAPACK_GLOBAL(clantr, CLANTR)
25 float LAPACK_clantr(const char *norm, const char *uplo, const char *diag,
26  const int *m, const int *n,
27  const plasma_complex32_t *A, const int *lda,
28  float *work);
29 #endif
30 
31 // LAPACKE_clascl not available in LAPACKE < 3.6.0
32 #ifndef LAPACK_clascl
33 #define LAPACK_clascl LAPACK_GLOBAL(clascl, CLASCL)
34 void LAPACK_clascl(const char *type, const int *kl, const int *ku,
35  const float *cfrom, const float *cto,
36  const int *m, const int *n,
37  plasma_complex32_t *A, const int *lda,
38  int *info);
39 #endif
40 
41 // LAPACKE_classq not available yet
42 #ifndef LAPACK_classq
43 #define LAPACK_classq LAPACK_GLOBAL(classq, CLASSQ)
44 void LAPACK_classq(const int *n, const plasma_complex32_t *x, const int *incx,
45  float *scale, float *sumsq);
46 #endif
47 
48 #ifdef __cplusplus
49 } // extern "C"
50 #endif
51 
52 #endif // ICL_CORE_LAPACK_C_H