Date: Thu, 16 Jul 2020 17:49:48 -0300 From: Mitchell Horne <mhorne@freebsd.org> To: Mateusz Guzik <mjg@freebsd.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r363242 - head/sys/amd64/include Message-ID: <CADeAsy1yY_CL5vSvvkgYSutN4gmJi4n1qrc_Duw2M44O%2BH-%2B4w@mail.gmail.com> In-Reply-To: <202007161128.06GBSPSB045345@repo.freebsd.org> References: <202007161128.06GBSPSB045345@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jul 16, 2020 at 8:28 AM Mateusz Guzik <mjg@freebsd.org> wrote: > > Author: mjg > Date: Thu Jul 16 11:28:24 2020 > New Revision: 363242 > URL: https://svnweb.freebsd.org/changeset/base/363242 > > Log: > amd64: patch ffsl to use the compiler builtin > > This shortens fdalloc by over 60 bytes. Correctness verified by running both > variants at the same time and comparing the result of each call. > > Note someone(tm) should make a pass at converting everything else feasible. > I have a local version of such a change. I'll see about getting it up for review in the next little while. Mitchell > Modified: > head/sys/amd64/include/cpufunc.h > > Modified: head/sys/amd64/include/cpufunc.h > ============================================================================== > --- head/sys/amd64/include/cpufunc.h Thu Jul 16 10:20:35 2020 (r363241) > +++ head/sys/amd64/include/cpufunc.h Thu Jul 16 11:28:24 2020 (r363242) > @@ -167,7 +167,8 @@ enable_intr(void) > static __inline __pure2 int > ffsl(long mask) > { > - return (mask == 0 ? mask : (int)bsfq((u_long)mask) + 1); > + > + return (__builtin_ffsl(mask)); > } > > #define HAVE_INLINE_FFSLL
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADeAsy1yY_CL5vSvvkgYSutN4gmJi4n1qrc_Duw2M44O%2BH-%2B4w>