Date: Mon, 21 Nov 2005 04:57:12 +0000 (UTC) From: Bruce Evans <bde@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/msun/src k_cosf.c k_sinf.c k_tanf.c s_cosf.c s_sinf.c s_tanf.c Message-ID: <200511210457.jAL4vCCb002470@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
bde 2005-11-21 04:57:12 UTC FreeBSD src repository Modified files: lib/msun/src k_cosf.c k_sinf.c k_tanf.c s_cosf.c s_sinf.c s_tanf.c Log: Mess up the "kernel" float trig function .c files with ifdefs so that they can be #included in other .c files to give inline functions, and use them to inline the functions in most callers (not in e_lgammaf_r.c). __kernel_tanf() is too large and complicated for gcc to inline very well. An athlons, this gives a speed increase under favourable pipeline conditions of about 10% overall (larger for AXP, smaller for A64). E.g., on AXP, sinf() on uniformly distributed args in [-2Pi, 2Pi] now takes 30-56 cycles; it used to take 45-61 cycles; hardware fsin takes 65-129. Revision Changes Path 1.13 +5 -0 src/lib/msun/src/k_cosf.c 1.11 +5 -0 src/lib/msun/src/k_sinf.c 1.15 +5 -0 src/lib/msun/src/k_tanf.c 1.11 +4 -0 src/lib/msun/src/s_cosf.c 1.11 +4 -0 src/lib/msun/src/s_sinf.c 1.12 +2 -0 src/lib/msun/src/s_tanf.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200511210457.jAL4vCCb002470>