From owner-svn-src-all@freebsd.org Fri Oct 2 16:33:40 2015 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BFE1EA0EBDD; Fri, 2 Oct 2015 16:33:40 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-ig0-x231.google.com (mail-ig0-x231.google.com [IPv6:2607:f8b0:4001:c05::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8CC201CFE; Fri, 2 Oct 2015 16:33:40 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by igbni9 with SMTP id ni9so20087091igb.0; Fri, 02 Oct 2015 09:33:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=KvW7vBCRCdXgAm1mqloHmqF4Fhx5taqEZoZIJahXO94=; b=0a+pCOH/S4XgEVQi8tK5wqJx6A23vOH5BDy9TKKYxiupqZ762R+eZ7NBMw8zur87NR kFIC8GTI4TtFEdv4XQEGF4oqsTgZjYKF440TMqYnZJuRziFk0ih4RXRiHBbIOZpGK+rC TRSDlv+csm9lV7KlZfrq+LMqzCQlQM0YHSJSeL7s4kqK3IiASqk/j1cmpOjmz+h9EKL2 MCXtKD/KVLjhikigNk6GHsIBFoEsStKFxDo1aen0YYaoJgMAPm8OILSL8RTOiMF5U06q 7vpzlh21gJn5UKnIbI6L1s2dROyo8UXUKmThzkTcez32KtSuDkLJB9Qee9sIPhT1aWjo TikQ== MIME-Version: 1.0 X-Received: by 10.50.64.243 with SMTP id r19mr5028113igs.22.1443803620079; Fri, 02 Oct 2015 09:33:40 -0700 (PDT) Received: by 10.36.46.15 with HTTP; Fri, 2 Oct 2015 09:33:40 -0700 (PDT) In-Reply-To: <201510021326.t92DQ0Ds002986@repo.freebsd.org> References: <201510021326.t92DQ0Ds002986@repo.freebsd.org> Date: Fri, 2 Oct 2015 09:33:40 -0700 Message-ID: Subject: Re: svn commit: r288492 - head/sys/arm/arm From: Adrian Chadd To: Konstantin Belousov Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.20 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: Fri, 02 Oct 2015 16:33:40 -0000 Hi, When you run this stuff on ARM (and MIPS, too) - would you please report in the commit message(s) which platforms you ran it on? I'd hate to see this break an existing platform that it mostly works on just to fix it on a platform it doesn't. -a On 2 October 2015 at 06:26, Konstantin Belousov wrote: > Author: kib > Date: Fri Oct 2 13:25:59 2015 > New Revision: 288492 > URL: https://svnweb.freebsd.org/changeset/base/288492 > > Log: > Do not set 'flush to zero' VFPSCR_FZ bit by default. The correct > implementation of IEEE 754 arithmetic depends on denormals operating > correctly. Both perl test suite and paranoia tripped over the > setting. > > Reported by: Stefan Parvu > Discussed with: andrew > Sponsored by: The FreeBSD Foundation > MFC after: 1 week > > Modified: > head/sys/arm/arm/machdep.c > head/sys/arm/arm/vm_machdep.c > > Modified: head/sys/arm/arm/machdep.c > ============================================================================== > --- head/sys/arm/arm/machdep.c Fri Oct 2 13:21:08 2015 (r288491) > +++ head/sys/arm/arm/machdep.c Fri Oct 2 13:25:59 2015 (r288492) > @@ -1069,7 +1069,7 @@ init_proc0(vm_offset_t kstack) > (thread0.td_kstack + kstack_pages * PAGE_SIZE) - 1; > thread0.td_pcb->pcb_flags = 0; > thread0.td_pcb->pcb_vfpcpu = -1; > - thread0.td_pcb->pcb_vfpstate.fpscr = VFPSCR_DN | VFPSCR_FZ; > + thread0.td_pcb->pcb_vfpstate.fpscr = VFPSCR_DN; > thread0.td_frame = &proc0_tf; > pcpup->pc_curpcb = thread0.td_pcb; > } > > Modified: head/sys/arm/arm/vm_machdep.c > ============================================================================== > --- head/sys/arm/arm/vm_machdep.c Fri Oct 2 13:21:08 2015 (r288491) > +++ head/sys/arm/arm/vm_machdep.c Fri Oct 2 13:25:59 2015 (r288492) > @@ -134,7 +134,7 @@ cpu_fork(register struct thread *td1, re > pcb2->pcb_regs.sf_sp = STACKALIGN(td2->td_frame); > > pcb2->pcb_vfpcpu = -1; > - pcb2->pcb_vfpstate.fpscr = VFPSCR_DN | VFPSCR_FZ; > + pcb2->pcb_vfpstate.fpscr = VFPSCR_DN; > > tf = td2->td_frame; > tf->tf_spsr &= ~PSR_C; >