Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Feb 2008 18:28:58 +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 e_rem_pio2.c e_rem_pio2f.c
Message-ID:  <200802251828.m1PISwno002525@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
bde         2008-02-25 18:28:58 UTC

  FreeBSD src repository

  Modified files:
    lib/msun/src         e_rem_pio2.c e_rem_pio2f.c 
  Log:
  Use a temporary array instead of the arg array y[] for calling
  __kernel_rem_pio2().  This simplifies analysis of aliasing and thus
  results in better code for the usual case where __kernel_rem_pio2()
  is not called.  In particular, when __ieee854_rem_pio2[f]() is inlined,
  it normally results in y[] being returned in registers.  I couldn't
  get this to work using the restrict qualifier.
  
  In float precision, this saves 2-3% in most cases on amd64 and i386
  (A64) despite it not being inlined in float precision yet.  In double
  precision, this has high variance, with an average gain of 2% for
  amd64 and 0.7% for i386 (but a much larger gain for usual cases) and
  some losses.
  
  Revision  Changes    Path
  1.17      +4 -4      src/lib/msun/src/e_rem_pio2.c
  1.27      +4 -4      src/lib/msun/src/e_rem_pio2f.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200802251828.m1PISwno002525>