22 float * X,
int * IX,
int * JX,
int * DESCX,
int * INCX )
24 void pcsscal_( N, ALPHA, X, IX, JX, DESCX, INCX )
28 int * INCX, * IX, * JX, * N;
159 int Xcol, Xi, Xii, Xj, Xjj, Xld, Xnp, Xnq, Xrow, ctxt, info,
160 mycol, myrow, npcol, nprow;
176 if( !( info = ( ( nprow == -1 ) ? -( 601 +
CTXT_ ) : 0 ) ) )
177 PB_Cchkvec( ctxt,
"PCSSCAL",
"X", *N, 1, Xi, Xj, Xd, *INCX, 6, &info );
178 if( info ) {
PB_Cabort( ctxt,
"PCSSCAL", info );
return; }
183 if( ( *N == 0 ) || ( ALPHA[
REAL_PART] ==
ONE ) )
return;
193 PB_Cinfog2l( Xi, Xj, Xd, nprow, npcol, myrow, mycol, &Xii, &Xjj, &Xrow,
198 if( *INCX == Xd[
M_] )
203 if( ( myrow == Xrow ) || ( Xrow < 0 ) )
216 type->
size ), &Xld );
220 csscal_( &Xnq, ((
char *) ALPHA),
Mptr( ((
char *) X),
221 Xii, Xjj, Xld, type->
size ), &Xld );
232 if( ( mycol == Xcol ) || ( Xcol < 0 ) )
248 csscal_( &Xnp, ((
char *) ALPHA),
Mptr( ((
char *) X),
249 Xii, Xjj, Xd[
LLD_], type->
size ), INCX );