mirror of
https://git.planet-casio.com/Lephenixnoir/OpenLibm.git
synced 2024-12-28 04:23:41 +01:00
Merge pull request #124 from NuxiNL/cloudabi-fixes
Upstream local modifications to openlibm.
This commit is contained in:
commit
1bba495716
6 changed files with 9 additions and 9 deletions
|
@ -39,7 +39,7 @@ nanl(const char *s)
|
|||
uint32_t bits[4];
|
||||
} u;
|
||||
|
||||
_scan_nan(u.bits, 4, s);
|
||||
__scan_nan(u.bits, 4, s);
|
||||
u.ieee.bits.exp = 0x7fff;
|
||||
u.ieee.bits.manh |= 1ULL << 47; /* make it a quiet NaN */
|
||||
return (u.ieee.e);
|
||||
|
|
|
@ -38,7 +38,7 @@ nanl(const char *s)
|
|||
uint32_t bits[3];
|
||||
} u;
|
||||
|
||||
_scan_nan(u.bits, 3, s);
|
||||
__scan_nan(u.bits, 3, s);
|
||||
u.ieee.bits.exp = 0x7fff;
|
||||
u.ieee.bits.manh |= 0xc0000000; /* make it a quiet NaN */
|
||||
return (u.ieee.e);
|
||||
|
|
|
@ -229,7 +229,7 @@ do { \
|
|||
/*
|
||||
* Common routine to process the arguments to nan(), nanf(), and nanl().
|
||||
*/
|
||||
void _scan_nan(u_int32_t *__words, int __num_words, const char *__s);
|
||||
void __scan_nan(u_int32_t *__words, int __num_words, const char *__s);
|
||||
|
||||
#ifdef __GNUCLIKE_ASM
|
||||
|
||||
|
|
|
@ -205,7 +205,7 @@ do { \
|
|||
/*
|
||||
* Common routine to process the arguments to nan(), nanf(), and nanl().
|
||||
*/
|
||||
void _scan_nan(uint32_t *__words, int __num_words, const char *__s);
|
||||
void __scan_nan(uint32_t *__words, int __num_words, const char *__s);
|
||||
|
||||
/*
|
||||
* Functions internal to the math package, yet not static.
|
||||
|
|
|
@ -375,14 +375,14 @@ exp2(double x)
|
|||
/* Compute r = exp2(y) = exp2t[i0] * p(z - eps[i]). */
|
||||
t = tbl[i0]; /* exp2t[i0] */
|
||||
z -= tbl[i0 + 1]; /* eps[i0] */
|
||||
if (k >= -1021 << 20)
|
||||
if (k >= -(1021 << 20))
|
||||
INSERT_WORDS(twopk, 0x3ff00000 + k, 0);
|
||||
else
|
||||
INSERT_WORDS(twopkp1000, 0x3ff00000 + k + (1000 << 20), 0);
|
||||
r = t + t * z * (P1 + z * (P2 + z * (P3 + z * (P4 + z * P5))));
|
||||
|
||||
/* Scale by 2**(k>>20). */
|
||||
if(k >= -1021 << 20) {
|
||||
if(k >= -(1021 << 20)) {
|
||||
if (k == 1024 << 20)
|
||||
return (r * 2.0 * 0x1p1023);
|
||||
return (r * twopk);
|
||||
|
|
|
@ -62,7 +62,7 @@ static __inline int digittoint(int c) {
|
|||
* impossible to use nan(3) portably anyway, so this seems good enough.
|
||||
*/
|
||||
DLLEXPORT void
|
||||
_scan_nan(u_int32_t *words, int num_words, const char *s)
|
||||
__scan_nan(u_int32_t *words, int num_words, const char *s)
|
||||
{
|
||||
int si; /* index into s */
|
||||
int bitpos; /* index into words (in bits) */
|
||||
|
@ -97,7 +97,7 @@ nan(const char *s)
|
|||
u_int32_t bits[2];
|
||||
} u;
|
||||
|
||||
_scan_nan(u.bits, 2, s);
|
||||
__scan_nan(u.bits, 2, s);
|
||||
#if _BYTE_ORDER == _LITTLE_ENDIAN
|
||||
u.bits[1] |= 0x7ff80000;
|
||||
#else
|
||||
|
@ -114,7 +114,7 @@ nanf(const char *s)
|
|||
u_int32_t bits[1];
|
||||
} u;
|
||||
|
||||
_scan_nan(u.bits, 1, s);
|
||||
__scan_nan(u.bits, 1, s);
|
||||
u.bits[0] |= 0x7fc00000;
|
||||
return (u.f);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue