59 Int negone=-1, errornum;
73 ix = (
unsigned Int *) &x;
74 if(( *ix == 0xbff00000) && ( *(ix+1) == 0x0) )
77 }
else if(( *(ix+1) == 0xbff00000) && ( *ix == 0x0) ) {
134 double lsigma, tmp, *pd, *pe2;
142 tmp = *pd - lsigma; pd += 2;
143 *count = (*((
Int *)&tmp) >> 31) & 1;
144 for(i = 1;i < *n;i++){
145 tmp = *pd - *pe2/tmp - lsigma;
147 *count += ((*((
Int *)&tmp)) >> 31) & 1;
200 double lsigma, tmp, *pd, *pe2;
208 tmp = *pd - lsigma; pd += 2;
209 *count = (*(((
Int *)&tmp)+1) >> 31) & 1;
210 for(i = 1;i < *n;i++){
211 tmp = *pd - *pe2/tmp - lsigma;
213 *count += (*(((
Int *)&tmp)+1) >> 31) & 1;
253 double x, pinf, pzero, ninf, nzero;
254 Int ieflag, *ix, sbit1, sbit2, negone=-1, errornum;
261 pinf = *rmax / *rmin;
266 printf(
"pzero = %g should be zero\n",pzero);
271 sbit1 = (*((
Int *)&pzero) >> 31) & 1;
272 sbit2 = (*((
Int *)&pinf) >> 31) & 1;
273 }
else if(ieflag == 2){
274 sbit1 = (*(((
Int *)&pzero)+1) >> 31) & 1;
275 sbit2 = (*(((
Int *)&pinf)+1) >> 31) & 1;
278 printf(
"Sign of positive infinity is incorrect\n");
282 printf(
"Sign of positive zero is incorrect\n");
291 printf(
"nzero = %g should be zero\n",nzero);
295 sbit1 = (*((
Int *)&nzero) >> 31) & 1;
296 sbit2 = (*((
Int *)&ninf) >> 31) & 1;
297 }
else if(ieflag == 2){
298 sbit1 = (*(((
Int *)&nzero)+1) >> 31) & 1;
299 sbit2 = (*(((
Int *)&ninf)+1) >> 31) & 1;
302 printf(
"Sign of negative infinity is incorrect\n");
306 printf(
"Sign of negative zero is incorrect\n");
void pdlaiectl_(double *sigma, Int *n, double *d, Int *count)
void pdlasnbt_(Int *ieflag)
void pdlachkieee_(Int *isieee, double *rmax, double *rmin)
void pdlaiectb_(double *sigma, Int *n, double *d, Int *count)