fixed again
This commit is contained in:
parent
0d45d9da11
commit
0406776361
2 changed files with 4 additions and 2 deletions
|
@ -21,13 +21,14 @@ _float s1,s2;
|
||||||
/* is faster than the code: */
|
/* is faster than the code: */
|
||||||
/* s2 = -s2 */
|
/* s2 = -s2 */
|
||||||
char unsigned *p;
|
char unsigned *p;
|
||||||
|
_float *result = &s1; /* s1 may not be in a register! */
|
||||||
|
|
||||||
if (s2 == (_float) 0) {
|
if (s2 == (_float) 0) {
|
||||||
return s1;
|
return s1;
|
||||||
}
|
}
|
||||||
p = (char unsigned *) &s2;
|
p = (char unsigned *) &s2;
|
||||||
*p ^= 0x80; /* change sign of s2 */
|
*p ^= 0x80; /* change sign of s2 */
|
||||||
s1 = adf4(s2,s1);
|
*result = adf4(s2,s1);
|
||||||
return(s1); /* add and return result */
|
return(s1); /* add and return result */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,12 +21,13 @@ _double s1,s2;
|
||||||
/* is faster than the code line */
|
/* is faster than the code line */
|
||||||
/* s2 = -s2; */
|
/* s2 = -s2; */
|
||||||
char unsigned *p; /* sufficient to access sign bit */
|
char unsigned *p; /* sufficient to access sign bit */
|
||||||
|
_double *result = &s1; /* s1 may not be in a register! */
|
||||||
|
|
||||||
if (s2.__double[0] == 0 && s2.__double[1] == 0) {
|
if (s2.__double[0] == 0 && s2.__double[1] == 0) {
|
||||||
return s1;
|
return s1;
|
||||||
}
|
}
|
||||||
p = (char unsigned *) &s2;
|
p = (char unsigned *) &s2;
|
||||||
*p ^= 0x80; /* change sign of s2 */
|
*p ^= 0x80; /* change sign of s2 */
|
||||||
s1 = adf8(s2,s1); /* add and return result */
|
*result = adf8(s2,s1); /* add and return result */
|
||||||
return(s1);
|
return(s1);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue