From owner-freebsd-ia64@FreeBSD.ORG Fri Feb 25 23:24:06 2011 Return-Path: Delivered-To: freebsd-ia64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 667211065670; Fri, 25 Feb 2011 23:24:06 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from asmtpout022.mac.com (asmtpout022.mac.com [17.148.16.97]) by mx1.freebsd.org (Postfix) with ESMTP id 4C4398FC0A; Fri, 25 Feb 2011 23:24:06 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII Received: from sa-nc-common3-156.static.jnpr.net (natint3.juniper.net [66.129.224.36]) by asmtp022.mac.com (Oracle Communications Messaging Exchange Server 7u4-20.01 64bit (built Nov 21 2010)) with ESMTPSA id <0LH70053Z503RV50@asmtp022.mac.com>; Fri, 25 Feb 2011 15:24:05 -0800 (PST) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15,1.0.148,0.0.0000 definitions=2011-02-25_08:2011-02-25, 2011-02-25, 1970-01-01 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 suspectscore=2 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1012030000 definitions=main-1102250151 From: Marcel Moolenaar In-reply-to: <20110225093345.GA2123@mech-cluster241.men.bris.ac.uk> Date: Fri, 25 Feb 2011 15:24:03 -0800 Message-id: <6809984C-1CEA-4BB6-AC6E-EFC65FCBBBBE@mac.com> References: <20110225093345.GA2123@mech-cluster241.men.bris.ac.uk> To: Anton Shterenlikht X-Mailer: Apple Mail (2.1082) Cc: freebsd-current@freebsd.org, freebsd-ia64@freebsd.org Subject: Re: ieee denormal on ia64? X-BeenThere: freebsd-ia64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the IA-64 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Feb 2011 23:24:06 -0000 On Feb 25, 2011, at 1:33 AM, Anton Shterenlikht wrote: > Can somebody please confirm that denormal > are not available on ia64, see below. Itanium has denormals. However FP_X_DNML has not been defined, because it's non-standard: ns1% svn log -c121332 lib/libc/ia64/gen/fpsetmask.c ------------------------------------------------------------------------ r121332 | marcel | 2003-10-22 02:00:07 -0700 (Wed, 22 Oct 2003) | 11 lines The FP status register allows for 6 traps to be masked. One of them, the denormal/unnormal trap, is not a standard IEEE trap. We did not exclude it from being returned by fpgetmask(), nor did we make sure that fpsetmask() didn't clobber it. Since the non-IEEE trap is not part of fp_except_t, users of ifpgetmask()/fpsetmask() would be confronted with unexpected behaviour, one of which is a SIGFPE for denormal/unnormal FP results. This commit makes sure that we don't leak the denormal/unnormal mask bit in fp_except_t and also that we don't clobber it. ------------------------------------------------------------------------ -- Marcel Moolenaar xcllnt@mac.com