*BSD News Article 9314


Return to BSD News archive

Received: by minnie.vk1xwt.ampr.org with NNTP
	id AA5563 ; Fri, 01 Jan 93 01:49:10 EST
Path: sserve!manuel.anu.edu.au!munnari.oz.au!uunet!cis.ohio-state.edu!zaphod.mps.ohio-state.edu!saimiri.primate.wisc.edu!ames!olivea!mintaka.lcs.mit.edu!ai-lab!hal.gnu.ai.mit.edu!mycroft
From: mycroft@hal.gnu.ai.mit.edu (Charles Hannum)
Newsgroups: comp.unix.bsd
Subject: [386BSD] GCC 2.3.2 floating point problems [FIX/2]
Message-ID: <1hdf4sINNess@life.ai.mit.edu>
Date: 24 Dec 92 22:55:24 GMT
Organization: MIT Artificial Intelligence Lab
Lines: 25
NNTP-Posting-Host: hal.gnu.ai.mit.edu


Some people have mentioned that `enquire' fails to compile while
building GCC 2.3.2.  Well, this is really a sign of a much larger
problem.

Basically, something is leaving junk on the floating point stack, and
it's overflowing, causing `cc1' to get a floating point exception.  In
some cases, it abort()s, yielding a message about `signal 6', and in
some cases, it cuases a `floating constant out of range' message.  Both
messages are false.

I'm not certain yet exactly what's causing this, but I've fixed it
*TEMPORARILY* [read: long enough to build GCC 2.3.2 and (hopefully) GDB
4.7] by compiling atof.c to assembler code, inserting a `FINIT'
instruction at the beginning of the function, and sticking the modified
version in libc.

NOTE: THIS IS A HORRIBLE KLUDGE.  I will try to do it right once I get
a few key tools built and can actually isolate the problem.  Meanwhile,
if anyone else has already tracked this down, *please* email me info so
I don't waste my time.
-- 
 \  /   Charles Hannum, mycroft@ai.mit.edu
 /\ \   PGP public key available on request.  MIME, AMS, NextMail accepted.
Scheme  White heterosexual atheist male (WHAM) pride!