|  | 
| #define | BI_DistType   unsigned short | 
|  | 
| #define | BI_MpiDistType   MPI_UNSIGNED_SHORT | 
|  | 
| #define | BUFFALIGN   8      /* force all buffers to 8 byte alignment */ | 
|  | 
| #define | BANYNODE   MPI_ANY_SOURCE | 
|  | 
| #define | PT2PTID   9976   /* TAG used for point to point */ | 
|  | 
| #define | NOTINCONTEXT   -1  /* Indicates node called gridmap, but not in grid */ | 
|  | 
| #define | MAXNCTXT   10      /* initial guess at max # of contexts */ | 
|  | 
| #define | MAXNSYSCTXT   10   /* initial guess at max # of system context */ | 
|  | 
| #define | AOPDONE   MPI_REQUEST_NULL | 
|  | 
| #define | BUFWAIT   120      /* Length of time to wait for emergency buff */ | 
|  | 
| #define | NORV   1          /* No receiver (only 1 proc in scoped op) */ | 
|  | 
| #define | NPOW2   2         /* Number of procs is not a power of 2 */ | 
|  | 
| #define | BADSCP   3        /* Scope not row, column or all */ | 
|  | 
| #define | INTEGER   3 | 
|  | 
| #define | SINGLE   4 | 
|  | 
| #define | DOUBLE   6 | 
|  | 
| #define | COMPLEX8   5 | 
|  | 
| #define | COMPLEX16   7 | 
|  | 
| #define | FULLCON   0      /* top is fully connected */ | 
|  | 
| #define | RT_SD   1 | 
|  | 
| #define | RT_RV   2 | 
|  | 
| #define | RT_BS   3 | 
|  | 
| #define | RT_BR   4 | 
|  | 
| #define | RT_COMB   5 | 
|  | 
| #define | SGET_SYSCONTXT   0 | 
|  | 
| #define | SGET_MSGIDS   1 | 
|  | 
| #define | SGET_DEBUGLVL   2 | 
|  | 
| #define | SGET_BLACSCONTXT   10 | 
|  | 
| #define | SGET_NR_BS   11 | 
|  | 
| #define | SGET_NB_BS   12 | 
|  | 
| #define | SGET_NR_CO   13 | 
|  | 
| #define | SGET_NB_CO   14 | 
|  | 
| #define | SGET_TOPSREPEAT   15 | 
|  | 
| #define | SGET_TOPSCOHRNT   16 | 
|  | 
| #define | BVOID   void | 
|  | 
| #define | Mlowcase(C)   ( ((C) > 64 && (C) < 91) ? (C) | 32 : (C) ) | 
|  | 
| #define | Mgridinfo(ctxt,  Ng0,  nprow0,  npcol0,  myrow0,  mycol0) | 
|  | 
| #define | Mpcoord(ctxt,  node,  prow,  pcol) | 
|  | 
| #define | Mvpcoord(ctxt,  node,  prow,  pcol)           Mpcoord((ctxt), (node), (prow), (pcol)); | 
|  | 
| #define | Mkpnum(ctxt,  prow,  pcol)   ( (prow)*(ctxt)->rscp.Np+(pcol) ) | 
|  | 
| #define | Mvkpnum(ctxt,  prow,  pcol)   ( (prow)*(ctxt)->rscp.Np+(pcol) ) | 
|  | 
| #define | Mscopeid(ctxt) | 
|  | 
| #define | MGetConTxt(Context,  ctxtptr) | 
|  | 
| #define | Mmpierror(ierr,  rout,  ctxt,  line,  file) | 
|  | 
| #define | ErrPrint | 
|  | 
| #define | F_VOID_FUNC   void | 
|  | 
| #define | F_INT_FUNC   Int | 
|  | 
| #define | F_DOUBLE_FUNC   double | 
|  | 
| #define | F2C_CharTrans(c)   *(c) | 
|  | 
| #define | F_CHAR   char * | 
|  | 
| #define | Mpval(para)   (*(para)) | 
|  | 
| #define | Mpaddress(para)   (para) | 
|  | 
| #define | Mwalltime   dwalltime00_ | 
|  | 
| #define | Rabs(x)   ( (x) < 0 ? (x) * -1 : (x) ) | 
|  | 
| #define | Cabs(z)   ( (((z).i) < 0 ? ((z).i) * -1 : ((z).i)) + (((z).r) < 0 ? ((z).r) * -1 : ((z).r)) ) | 
|  | 
| #define | trsize(diag,  m,  n,  bytes,  length) | 
|  | 
| #define | BI_cmvcopy(m,  n,  A,  lda,  buff)           BI_smvcopy(2*(m), (n), (float *) (A), 2*(lda), (float *) (buff)) | 
|  | 
| #define | BI_cvmcopy(m,  n,  A,  lda,  buff)           BI_svmcopy(2*(m), (n), (float *) (A), 2*(lda), (float *) (buff)) | 
|  | 
| #define | BI_zmvcopy(m,  n,  A,  lda,  buff)           BI_dmvcopy(2*(m), (n), (double *) (A), 2*(lda), (double *) (buff)) | 
|  | 
| #define | BI_zvmcopy(m,  n,  A,  lda,  buff)           BI_dvmcopy(2*(m), (n), (double *) (A), 2*(lda), (double *) (buff)) | 
|  | 
| #define | BI_MPI_TYPE_FREE(t)   MPI_Type_free(t) | 
|  |