diff options
author | Matthew Green <mrg@redhat.com> | 2002-02-03 09:24:18 +0000 |
---|---|---|
committer | Matthew Green <mrg@redhat.com> | 2002-02-03 09:24:18 +0000 |
commit | 8195aff714f2ea5d680a5129a1d54af388e90355 (patch) | |
tree | 683ff47f4802385e669491dda42bf8050772dbdf /newlib/libc/stdlib/ldtoa.c | |
parent | ad67ada2fc7cdb361643d506701e274a67d796f9 (diff) | |
download | newlib-8195aff714f2ea5d680a5129a1d54af388e90355.zip newlib-8195aff714f2ea5d680a5129a1d54af388e90355.tar.gz newlib-8195aff714f2ea5d680a5129a1d54af388e90355.tar.bz2 |
* implement a new `struct _reent' that is significantly smaller. use this
if _REENT_SMALL is defined in config.h. define this for xstormy16.
Diffstat (limited to 'newlib/libc/stdlib/ldtoa.c')
-rw-r--r-- | newlib/libc/stdlib/ldtoa.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/newlib/libc/stdlib/ldtoa.c b/newlib/libc/stdlib/ldtoa.c index b332d2a..0a4c323 100644 --- a/newlib/libc/stdlib/ldtoa.c +++ b/newlib/libc/stdlib/ldtoa.c @@ -2711,13 +2711,15 @@ char *outstr; rnd.rlast = -1; rnd.rndprc = NBITS; + _REENT_CHECK_MP(ptr); + /* reentrancy addition to use mprec storage pool */ -if (ptr->_result) +if (_REENT_MP_RESULT(ptr)) { - ptr->_result->_k = ptr->_result_k; - ptr->_result->_maxwds = 1 << ptr->_result_k; - Bfree (ptr, ptr->_result); - ptr->_result = 0; + _REENT_MP_RESULT(ptr)->_k = _REENT_MP_RESULT_K(ptr); + _REENT_MP_RESULT(ptr)->_maxwds = 1 << _REENT_MP_RESULT_K(ptr); + Bfree (ptr, _REENT_MP_RESULT(ptr)); + _REENT_MP_RESULT(ptr) = 0; } #if LDBL_MANT_DIG == 24 @@ -2748,9 +2750,9 @@ if( ndigits > NDEC ) ndigits = NDEC; /* reentrancy addition to use mprec storage pool */ -ptr->_result = Balloc (ptr, 3); -ptr->_result_k = 3; -outstr = (char *)ptr->_result; +_REENT_MP_RESULT(ptr) = Balloc (ptr, 3); +_REENT_MP_RESULT_K(ptr) = 3; +outstr = (char *)_REENT_MP_RESULT(ptr); etoasc( e, outstr, ndigits, mode, ldp ); s = outstr; |