56 int i, j, browtype, cblktype;
65 for ( i = 0; i < solvmtx->
cblknbr; i++, cblk++ ) {
67 assert( cblk->
lock == PASTIX_ATOMIC_UNLOCKED );
74 assert( (cblk->
ownerid >= 0) && (cblk->
ownerid < solvmtx->clustnbr) );
82 assert( (cblk[1].fblokptr - cblk[0].fblokptr) >= 1 );
97 assert( i < fcblk->fblokptr->lcblknm );
100 assert( cblk->
ownerid != solvmtx->clustnum );
110 assert( ( cblk[0].brownum == cblk[0].brown2d ) &&
111 ( cblk[0].brown2d == cblk[1].brownum ) );
118 for ( ; blok < cblk[1].
fblokptr; blok++ ) {
129 assert( cblk[0].lcolnum < cblk[1].fcolnum );
132 assert( cblk[1].brownum >= cblk[0].brownum );
133 assert( ( cblk[0].brownum <= cblk[0].brown2d ) &&
134 ( cblk[0].brown2d <= cblk[1].brownum ) );
137 assert( fblok->
browind == -1 );
139 if ( cblk->
cblktype & CBLK_FANIN ) {
143 assert( cblk->
ownerid != solvmtx->clustnum );
146 assert( fblok->
fcblknm == -1 );
156 assert( (solvmtx->
gcbl2loc == NULL) ||
157 (cblk->
ownerid == solvmtx->clustnum) );
160 assert( (cblk[1].cblktype & CBLK_FANIN) ||
161 (!(cblk[1].cblktype & CBLK_FANIN) && (cblk[0].lcolidx < cblk[1].lcolidx)) );
167 for ( ; blok < cblk[1].
fblokptr; blok++ ) {
172 assert( (blok[1].lcblknm != blok[0].lcblknm) ||
173 ((blok[1].lcblknm == blok[0].lcblknm) && (blok[0].lrownum < blok[1].frownum)) );
175 if ( cblk->
cblktype & CBLK_FANIN ) {
178 else if ( cblk->
cblktype & CBLK_RECV ) {
205 for ( j = cblk[0].brownum; j < cblk[1].
brownum; j++ ) {
207 blok = solvmtx->
bloktab + bloknum;
214 assert( !(fcblk->
cblktype & CBLK_FANIN) );
217 if ( fcblk->
cblktype & CBLK_RECV ) {
218 assert( fcblk->
ownerid != solvmtx->clustnum );
224 assert( (solvmtx->
gcbl2loc == NULL) || (fcblk->
ownerid == solvmtx->clustnum) );
228 cblktype = fcblk->
cblktype & ( CBLK_TASKS_2D | CBLK_RECV );
229 assert( cblktype >= browtype );
230 browtype = browtype | cblktype;