NetBSD Problem Report #33295

From simonb@thistledown.com.au  Thu Apr 20 09:58:19 2006
Return-Path: <simonb@thistledown.com.au>
Received: from thoreau.thistledown.com.au (thoreau.thistledown.com.au [203.217.30.154])
	by narn.netbsd.org (Postfix) with ESMTP id 7A3DF63B884
	for <gnats-bugs@gnats.NetBSD.org>; Thu, 20 Apr 2006 09:58:19 +0000 (UTC)
Message-Id: <20060420095818.6B78F23403@thoreau.thistledown.com.au>
Date: Thu, 20 Apr 2006 19:58:18 +1000 (EST)
From: Simon Burge <simonb@wasabisystems.com>
Reply-To: Simon Burge <simonb@wasabisystems.com>
To: gnats-bugs@netbsd.org
Subject: ieeefp/except regression test fails on soft-float userlands
X-Send-Pr-Version: 3.95

>Number:         33295
>Category:       bin
>Synopsis:       ieeefp/except regression test fails on soft-float userlands
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Apr 20 10:00:00 +0000 2006
>Last-Modified:  Thu Apr 20 11:45:01 +0000 2006
>Originator:     Simon Burge <simonb@wasabisystems.com>
>Release:        NetBSD 3.99.18, from around April 18 2006
>Organization:
Wasabi Systems
>Environment:
System: NetBSD iq80321 3.99.18 NetBSD 3.99.18 (IQ80321) #0: Thu Apr 20 13:01:00 EST 2006 simonb@bigkev.thistledown.com.au:/home/simonb/netbsd/src-virgin/sys/arch/evbarm/compile/IQ80321 evbarm
Architecture: arm
Machine: evbarm
>Description:

        The ieeefp/except regression test fails on soft-float userlands,
        because the softfloat library uses raise(3) to send SIGFPE when
        exceptions should occur, but has no way of setting the si_code
        field of siginfo with the correct code.

        The failure reported by the regression test is:

		assertion "sicode == ops[i].sicode" failed: file "except.c", line 164, function "main"

        This same failure occurs on PowerPC when built with softfloat
        userland.

>How-To-Repeat:

	cd .../regress/lib/libc/ieeefp/except
	make
	make regress

>Fix:
	None given.

>Audit-Trail:
From: Matthias Drochner <M.Drochner@fz-juelich.de>
To: gnats-bugs@netbsd.org
Cc: gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: bin/33295: ieeefp/except regression test fails on soft-float 
 userlands
Date: Thu, 20 Apr 2006 13:41:50 +0200

 This is a multipart MIME message.

 --==_Exmh_54691082924720
 Content-Type: text/plain; charset=us-ascii


 simonb@wasabisystems.com said:
 > the softfloat library uses raise(3) to send SIGFPE

 How about the appended patch?
 best regards
 Matthias



 --==_Exmh_54691082924720
 Content-Type: text/plain ; name="fpexc.txt"; charset=us-ascii
 Content-Description: fpexc.txt
 Content-Disposition: attachment; filename="fpexc.txt"

 Index: Makefile
 ===================================================================
 RCS file: /cvsroot/src/regress/lib/libc/ieeefp/except/Makefile,v
 retrieving revision 1.5
 diff -u -r1.5 Makefile
 --- Makefile	18 Sep 2002 05:41:38 -0000	1.5
 +++ Makefile	20 Apr 2006 11:37:31 -0000
 @@ -4,6 +4,11 @@

  PROG=		except

 +.include <bsd.own.mk>
 +.if defined(MKSOFTFLOAT) && (${MKSOFTFLOAT} != "no")
 +CPPFLAGS+=	-DSOFTFLOAT
 +.endif
 +
  regress: ${PROG}
  	./${PROG}

 Index: except.c
 ===================================================================
 RCS file: /cvsroot/src/regress/lib/libc/ieeefp/except/except.c,v
 retrieving revision 1.9
 diff -u -r1.9 except.c
 --- except.c	25 Mar 2004 15:12:42 -0000	1.9
 +++ except.c	20 Apr 2006 11:37:31 -0000
 @@ -161,7 +161,11 @@
  			BARRIER();
  		}
  		assert(signal_caught == 1);
 -		assert(sicode == ops[i].sicode);
 +		assert(sicode == ops[i].sicode
 +#ifdef SOFTFLOAT /* sent by raise(3) */
 +			|| sicode == SI_USER
 +#endif
 +		);
  		signal_caught = 0;
  	}


 --==_Exmh_54691082924720--

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.