Assembly string functions in i386 libc

Sean C. Farley scf at FreeBSD.org
Wed Jul 11 23:43:20 UTC 2007


On Wed, 11 Jul 2007, Matthew Dillon wrote:

>    Long ago I decided that strlen() was simply not in the critical
>    path for virtually any program.  A few nanoseconds here or there is
>    not going to result in any noticeable improvement for any program
>    other then a benchmark designed to test strlen().  It isn't worth
>    the effort to optimize.

Since strlen() is used in every program directly or indirectly through
libc, I thought it was beneficial to make it faster.  In the case of
i386, the C version used by all the other architectures, except for ARM,
is much faster that the assembly version.  This is without any
optimization on its part.

I need to test out grep (FreeGrep) to see how it behaves when calling
regexec() (may use strlen() in certain cases) many times (i.e., grep -R
on the source tree) using both versions.

Sean
-- 
scf at FreeBSD.org


More information about the freebsd-arch mailing list