43{
46
47 LAPACK_chprfs( &uplo, &n, &nrhs, ap, afp, ipiv, b, &ldb, x, &ldx, ferr,
48 berr, work, rwork, &info );
49 if( info < 0 ) {
50 info = info - 1;
51 }
59
60 if( ldb < nrhs ) {
61 info = -9;
63 return info;
64 }
65 if( ldx < nrhs ) {
66 info = -11;
68 return info;
69 }
70
73 ldb_t *
MAX(1,nrhs) );
74 if( b_t == NULL ) {
76 goto exit_level_0;
77 }
80 ldx_t *
MAX(1,nrhs) );
81 if( x_t == NULL ) {
83 goto exit_level_1;
84 }
87 (
MAX(1,n) *
MAX(2,n+1) ) / 2 );
88 if( ap_t == NULL ) {
90 goto exit_level_2;
91 }
94 (
MAX(1,n) *
MAX(2,n+1) ) / 2 );
95 if( afp_t == NULL ) {
97 goto exit_level_3;
98 }
99
104
105 LAPACK_chprfs( &uplo, &n, &nrhs, ap_t, afp_t, ipiv, b_t, &ldb_t, x_t,
106 &ldx_t, ferr, berr, work, rwork, &info );
107 if( info < 0 ) {
108 info = info - 1;
109 }
110
112
114exit_level_3:
116exit_level_2:
118exit_level_1:
120exit_level_0:
123 }
124 } else {
125 info = -1;
127 }
128 return info;
129}
#define LAPACK_chprfs(...)
#define lapack_complex_float
#define LAPACKE_malloc(size)
#define LAPACK_TRANSPOSE_MEMORY_ERROR
void LAPACKE_xerbla(const char *name, lapack_int info)
void LAPACKE_cge_trans(int matrix_layout, lapack_int m, lapack_int n, const lapack_complex_float *in, lapack_int ldin, lapack_complex_float *out, lapack_int ldout)
void LAPACKE_chp_trans(int matrix_layout, char uplo, lapack_int n, const lapack_complex_float *in, lapack_complex_float *out)