From owner-cvs-src@FreeBSD.ORG Mon Feb 25 22:19:20 2008 Return-Path: Delivered-To: cvs-src@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7BE2016A401; Mon, 25 Feb 2008 22:19:20 +0000 (UTC) (envelope-from bde@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 719C613C448; Mon, 25 Feb 2008 22:19:20 +0000 (UTC) (envelope-from bde@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1PMJKZd054635; Mon, 25 Feb 2008 22:19:20 GMT (envelope-from bde@repoman.freebsd.org) Received: (from bde@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1PMJKU9054633; Mon, 25 Feb 2008 22:19:20 GMT (envelope-from bde) Message-Id: <200802252219.m1PMJKU9054633@repoman.freebsd.org> From: Bruce Evans Date: Mon, 25 Feb 2008 22:19:17 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/lib/msun/src e_rem_pio2f.c s_cosf.c s_sinf.c s_tanf.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Feb 2008 22:19:20 -0000 bde 2008-02-25 22:19:17 UTC FreeBSD src repository Modified files: lib/msun/src e_rem_pio2f.c s_cosf.c s_sinf.c s_tanf.c Log: Inline __ieee754__rem_pio2f(). On amd64 (A64) and i386 (A64), this gives an average speedup of about 12 cycles or 17% for 9pi/4 < |x| <= 2**19pi/2 and a smaller speedup for larger x, and a small speeddown for |x| <= 9pi/4 (only 1-2 cycles average, but that is 4%). Inlining this is less likely to bust caches than inlining the float version since it is much smaller (about 220 bytes text and rodata) and has many fewer branches. However, the float version was already large due to its manual inlining of the branches and also the polynomial evaluations. Revision Changes Path 1.28 +3 -0 src/lib/msun/src/e_rem_pio2f.c 1.18 +4 -0 src/lib/msun/src/s_cosf.c 1.17 +4 -0 src/lib/msun/src/s_sinf.c 1.17 +4 -0 src/lib/msun/src/s_tanf.c