38{
43 double* work = NULL;
45 double work_query;
48 return -1;
49 }
50#ifndef LAPACK_DISABLE_NAN_CHECK
52
54 return -6;
55 }
57 return -8;
58 }
59 }
60#endif
61
63 ldb, w, &work_query, lwork, &iwork_query,
64 liwork );
65 if( info != 0 ) {
66 goto exit_level_0;
67 }
68 liwork = iwork_query;
70
72 if( iwork == NULL ) {
74 goto exit_level_0;
75 }
77 if( work == NULL ) {
79 goto exit_level_1;
80 }
81
83 ldb, w, work, lwork, iwork, liwork );
84
86exit_level_1:
88exit_level_0:
91 }
92 return info;
93}
#define LAPACK_WORK_MEMORY_ERROR
lapack_int LAPACKE_dsygvd_work(int matrix_layout, lapack_int itype, char jobz, char uplo, lapack_int n, double *a, lapack_int lda, double *b, lapack_int ldb, double *w, double *work, lapack_int lwork, lapack_int *iwork, lapack_int liwork)
int LAPACKE_get_nancheck(void)
#define LAPACKE_malloc(size)
void LAPACKE_xerbla(const char *name, lapack_int info)
lapack_logical LAPACKE_dsy_nancheck(int matrix_layout, char uplo, lapack_int n, const double *a, lapack_int lda)