Date: Thu, 5 May 2005 01:21:36 +0200 From: Marc Olzheim <marcolz@stack.nl> To: Daniel Eischen <deischen@freebsd.org> Cc: freebsd-threads@freebsd.org Subject: Re: Floating point exceptions with -pthread Message-ID: <20050504232136.GD1886@stack.nl> In-Reply-To: <Pine.GSO.4.43.0505041905430.498-200000@sea.ntplx.net> References: <20050504230157.GA1886@stack.nl> <Pine.GSO.4.43.0505041905430.498-200000@sea.ntplx.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--kvUQC+jR9YzypDnK Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, May 04, 2005 at 07:07:48PM -0400, Daniel Eischen wrote: > > Question remains why the truncf() doesn't trigger it and the ceilf() and > > floorf() does. I just checked all files in /usr/src/lib/msun/i387/. The following functions are the only ones using stackspace in the i387 dir, the rest just uses the arguments directly: ceil*(), floor*(), {,l}lrint*(), trunc*(). Of those, only the ceilf(),floorf() and truncf() used more than %esp was lowered. > > And why it only triggers with threads (even a single thread is enough). >=20 > For the latter, the threads library may place a stackframe on > top of the swapped-out thread's stack. Without threads, or > even with libthr, the thread's stack doesn't get used by > anything else. Ah, that explains. Thanks a lot, Daniel and David, for your help and time today! Marc --kvUQC+jR9YzypDnK Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (FreeBSD) iD8DBQFCeVkAezjnobFOgrERAmFmAKC/zsD38W54raMw3i+b/Au/TuNX3gCgzCDx oweH6vCoN1c0I0N00YZS8XY= =nkLN -----END PGP SIGNATURE----- --kvUQC+jR9YzypDnK--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050504232136.GD1886>