From owner-svn-src-all@FreeBSD.ORG Mon Jan 16 13:26:48 2012 Return-Path: Delivered-To: svn-src-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 87CB7106564A; Mon, 16 Jan 2012 13:26:48 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail08.syd.optusnet.com.au (mail08.syd.optusnet.com.au [211.29.132.189]) by mx1.freebsd.org (Postfix) with ESMTP id 0A33B8FC13; Mon, 16 Jan 2012 13:26:47 +0000 (UTC) Received: from c211-30-171-136.carlnfd1.nsw.optusnet.com.au (c211-30-171-136.carlnfd1.nsw.optusnet.com.au [211.30.171.136]) by mail08.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id q0GDQitS003972 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 17 Jan 2012 00:26:46 +1100 Date: Tue, 17 Jan 2012 00:26:44 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: David Schultz In-Reply-To: <201201160409.q0G49kHt014841@svn.freebsd.org> Message-ID: <20120116235547.P3191@besplex.bde.org> References: <201201160409.q0G49kHt014841@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r230193 - head/lib/libc/sparc64/fpu X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Jan 2012 13:26:48 -0000 On Mon, 16 Jan 2012, David Schultz wrote: > Log: > Computations on NaNs are supposed to return one of the input NaNs unchanged. > Fix a few places in the sparc64 floating-point emulator where this wasn't > being handled properly. > > Submitted by: bde Thanks. The only remaining large bug that I noticed near this is that without -mhard-quad-float, signaling NaNs are not quieted and (IIRC) FE_INVALID is not raised. BTW, NetBSD in 2005 uses Hauser soft-float for long doubles on sparc64, and at least the MI parts of it are almost identical with the Hauser soft-float in FreeBSD. But FreeBSD uses a completely different version of soft-float for sparc64. It was apparently what NetBSD was using in 2002 when it was imported into FreeBSD. Perhaps the Hauser version is better (more correct or faster). However, the other version is much simpler and looks much nicer -- it was originally from Berkeley and has almost perfect KNF formatting (over 95% of lines are perfectly formatted accoring to knfom; that is much better than 4.4BSD-Lite2 sys/kern/*.c (88%) and FreeBSD-current sys/kern/*.c (89%, not counting kern_intr.c which is about 0% after a single C++ comment in it confuses indent(1)) and contrib/nvi/*/*.c (94%). Hauser soft-float has a Gnuish style with 4-char indents amd is 26% KNF (probably mainly for the the empty lines and some comments). Bruce