From: colin AT fu DOT is DOT saga-u DOT ac DOT jp (Colin Peters) Subject: Trouble optimizing floating point 13 Oct 1996 19:02:46 -0700 Sender: daemon AT cygnus DOT com Approved: cygnus DOT gnu-win32 AT cygnus DOT com Distribution: cygnus Message-ID: <199610140114.KAA27890.cygnus.gnu-win32@bird.fu.is.saga-u.ac.jp> Original-To: ewallace AT ichips DOT intel DOT com Original-CC: rasumner AT uwaterloo DOT ca, gnu-win32 AT cygnus DOT com In-reply-to: Eric Wallace's message of Fri, 11 Oct 1996 08:32:52 -0700 <325E68A4.15FB@ichips.intel.com> Original-Sender: owner-gnu-win32 AT cygnus DOT com > Date: Fri, 11 Oct 1996 08:32:52 -0700 > From: Eric Wallace > > This problem is due to a bug in the Cygnus version of gcc. If you have > the source (and can successfully build it!) you can fix it. There is a > define in config/cygwin32.h that reads: > > #define LONG_DOUBLE_TYPE_SIZE 64 > > It should read: > > #define LONG_DOUBLE_TYPE_SIZE 96 > > If it doesn't, then gcc will generate code for 80-bit extended reals > under optimization, but will only generate *storage* for 64-bit reals. > Obviously this is not good... Might this have something to do with the fact that the 'float.h' header file in b14 (maybe b16? Haven't checked) defines constants for doubles and long doubles as exactly the same? I was slightly puzzled by this when I noticed it. Not that these header constants have anything to do with the bugs being reported... Colin. ------------------------------------------------------------------------------ Colin Peters ------------ Saga Univ. Dept. of Information Science, Saga, JAPAN http://www.fu.is.saga-u.ac.jp/~colin/home.html - colin AT bird DOT fu DOT is DOT saga-u DOT ac DOT jp $@%3%j%s(J $@%T!<%?!<%:(J - $@:42lBg3XM}9)3XIt>pJs2J3X2J>pJs4pAC3X9V:B(J - Current favorite kanji: $@@2$l(J $@