From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS31976 209.132.180.0/23 X-Spam-Status: No, score=-3.9 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 721521F463 for ; Thu, 19 Sep 2019 18:47:41 +0000 (UTC) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id:in-reply-to :references; q=dns; s=default; b=PFI+oi3j0KkiMHWLJwjsjxkI9cE4/7O Uk+39PVLbDTcCJFI8ZUwC3uWtvZMU9JarUSpJXANYRev0swgoKTDhfC73xaTzFjJ Rq72Ph/f4/FCuDhFWIpXBgCIcOT0CoK3pi4qhctvvTRyf4e0v6R6nkBTxF0b1N4e 4k/PvdL/QdhA= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id:in-reply-to :references; s=default; bh=R8EIRJEY119N2Vb6W0biNNJFeaA=; b=iYcis qZDRGOHWtYDVXUu/Y1Gr96YZUacytj/pKu+vzOkb81WA6Mn7jd4CilR5SbR05gdZ oy+TfnS19Os+bKATC/d8GNBL8LiLd3++JLfhi5Z0SaXvVw6a34Dm9iajB//z4DUP NYS+wMuOpoduApFtpC4U60DTuMyeR9qo/qAiTQ= Received: (qmail 70745 invoked by alias); 19 Sep 2019 18:47:02 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 70690 invoked by uid 89); 19 Sep 2019 18:47:01 -0000 Authentication-Results: sourceware.org; auth=none X-HELO: mx0a-001b2d01.pphosted.com From: "Paul A. Clarke" To: libc-alpha@sourceware.org Cc: tuliom@ascii.art.br, murphyp@linux.ibm.com Subject: [PATCH v2 4/6] [powerpc] libc_feholdsetround_noex_ppc_ctx: optimize FPSCR write Date: Thu, 19 Sep 2019 13:46:48 -0500 Message-Id: <1568918810-20393-5-git-send-email-pc@us.ibm.com> In-Reply-To: <1568918810-20393-1-git-send-email-pc@us.ibm.com> References: <1568918810-20393-1-git-send-email-pc@us.ibm.com> From: "Paul A. Clarke" libc_feholdsetround_noex_ppc_ctx currently does, basically: 1. Read FPSCR, save to context. 2. Create new FPSCR value: clear enables and set new rounding mode. 3. Write new value to FPSCR. Since other bits just pass through, there is no need to write them. Instead, write just the changed values (enables and rounding mode), which can be a bit more efficient. 2019-09-19 Paul A. Clarke * sysdeps/powerpc/fpu/fenv_private.h (libc_feholdsetround_noex_ppc_ctx): Call fesetenv_mode instead of fesetenv_register. --- v2: No change. sysdeps/powerpc/fpu/fenv_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysdeps/powerpc/fpu/fenv_private.h b/sysdeps/powerpc/fpu/fenv_private.h index 9496026..ade0bfa 100644 --- a/sysdeps/powerpc/fpu/fenv_private.h +++ b/sysdeps/powerpc/fpu/fenv_private.h @@ -142,7 +142,7 @@ libc_feholdsetround_noex_ppc_ctx (struct rm_ctx *ctx, int r) if (__glibc_unlikely (new.l != old.l)) { __TEST_AND_ENTER_NON_STOP (old.l, 0ULL); - fesetenv_register (new.fenv); + fesetenv_mode (new.fenv); ctx->updated_status = true; } else -- 1.8.3.1