merged with Michael Felts latest version
This commit is contained in:
@@ -21,17 +21,8 @@ EXTEND *e1;
|
||||
register unsigned long *mant_2;
|
||||
|
||||
/* local CAST conversion */
|
||||
#ifdef PRT_EXT
|
||||
prt_ext("before NRM_EXT() e1:",e1);
|
||||
#endif PRT_EXT
|
||||
mant_1 = (unsigned long *) &e1->m1;
|
||||
/*
|
||||
THIS RESULTS IN A BAD CODE !!!!
|
||||
ANOTHER BUG IN EM CODE MAYBE????
|
||||
mant_2 = (unsigned long *) &e1->m2;
|
||||
*/
|
||||
/* statement that works */
|
||||
mant_2 = mant_1 + 1;
|
||||
|
||||
/* we assume that the mantissa != 0 */
|
||||
/* if it is then just return */
|
||||
@@ -51,18 +42,6 @@ EXTEND *e1;
|
||||
*mant_1-- = 0L;
|
||||
e1->exp -= 32;
|
||||
}
|
||||
#ifdef OLD
|
||||
/* check that e1->m1 is not too large */
|
||||
if (*mant_1 & CARRYBIT) { /* carry occured */
|
||||
e1->exp++; /* increase exponent */
|
||||
*mant_2 >>= 1; /* right shift mantissa */
|
||||
if ((short) *mant_1 & 01)
|
||||
*mant_2 |= CARRYBIT;
|
||||
*mant_1 >>= 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
while ((*mant_1 & NORMBIT) == 0) {
|
||||
e1->exp--;
|
||||
*mant_1 <<= 1;
|
||||
@@ -73,7 +52,4 @@ EXTEND *e1;
|
||||
}
|
||||
*mant_2 <<= 1;
|
||||
}
|
||||
#ifdef PRT_EXT
|
||||
prt_ext("after NRM_EXT() e1:",e1);
|
||||
#endif PRT_EXT
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user