freebsd-dev/usr.sbin
David E. O'Brien 2bae1ab6a5 Remove s_strl*(). I am not sure what was thought they accomplished.
When reading the code I had to stop, say "ok, what does *these*
modifications of strl*() do?  Pull out grep.  Oh, not in add/, maybe above
in ../lib/?  Yep.  So what do they do?  Comments above them are misleading,
guess I'll have to read the code.  Oh, they just test strl* against the
size and return the result of the test.  Now I can continue to read the
code I was.

The uses of s_strl*() then test that result and errx()'s.
Lets think about the "optimized" code I am removing:

In general the compiler pushes the three args to strl* onto the stack and calls
s_strl*.  s_strl* has to indirectly access 3 args from the stack.  Then push
them on the stack a 2nd time for the real strl* call.  s_strl* then pops the
return from strl* off the stack; or moves it from the register it was returned
in, to the register where tests can happen.  s_strl* then pops the three
arguments to strl*.  Perform the test, push the result of the test, or move it
from the result register to the return value register.  The caller to s_strl*
now has to either pop the return value of s_strl* or move it from the return
value register to the test register.  The caller then pops the three args to
s_strl* off the stack (the same args that s_strl* itself had to pop off after
the real call to strl*).  The s_strl* caller then performs a simular test to
what has already been done, and conditionally jumps.  By doing things this way, we've given the compiler optimizer less to work with.

Also, please don't forget the that call to s_strl* has possibly jumped to code
not in the cache due to being far away from the calling code, thus causing a
pipeline stall.

So where is the "optimization" from s_strl*?
It isn't code clarity.
It isn't code execution speed.  It isn't code size either.
2001-07-28 01:59:58 +00:00
..
ac Replace strncpy -> strlcpy 2001-07-24 11:36:56 +00:00
accton Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
acpi ACPI CA doesn't recognis S4BIOS as a seperate sleep type anymore, so 2001-07-21 21:51:44 +00:00
adduser Use a safer method of creating the temporary password file. 2001-07-25 11:55:33 +00:00
amd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ancontrol Make ancontrol WARNS=2 clean. 2001-07-27 18:26:42 +00:00
apm Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
apmd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
arp Remove GCC'isms in CFLAGS. 2001-07-20 04:23:13 +00:00
atm Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
boot0cfg Unset MAINTAINER. 2001-07-21 14:32:47 +00:00
boot98cfg Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
bootparamd s/adress/address/ 2001-07-23 12:05:27 +00:00
btxld Unset MAINTAINER. 2001-07-21 14:32:47 +00:00
burncd Change to spell erasing right. 2001-05-30 08:13:39 +00:00
cdcontrol Fix some nits I missed in my style cleanup. 2001-07-20 15:33:04 +00:00
chkgrp Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
chown Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
chroot mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
ckdist Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
config Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
cron fix misspelling introduced in rev 1.14 (sames as -> same as) 2001-07-25 04:13:01 +00:00
crunch Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ctm Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The 2001-07-26 11:02:39 +00:00
dev_mkdb Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
devinfo Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
digictl mdoc(7) police: -xwidth has been fold into -width. 2001-07-13 09:09:52 +00:00
diskcheckd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
diskpart Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
edquota Fix the type of the NULL arg to execl() 2001-07-09 09:24:06 +00:00
elf2exe Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
extattrctl Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
faithd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
fdcontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
fdformat Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
fdread Remove GCC'isms in CFLAGS. 2001-07-20 04:23:13 +00:00
fdwrite Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
getextattr Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
gifconfig Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
i4b Another hangup bugfix from Juha: 2001-07-21 16:31:39 +00:00
ifmcstat Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
inetd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
iostat Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ipftest Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ipresend Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ipsend Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
iptest Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
IPXrouted Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
jail Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
kbdcontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
kbdmap Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
kernbb Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
keyadmin Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
keyserv Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
kgmon Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
kgzip Unset MAINTAINER. 2001-07-21 14:32:47 +00:00
lastlogin Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
lpr Basically rewrite the dofork() routine, to add more error-checking and 2001-07-23 23:13:39 +00:00
lptcontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mailstats Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mailwrapper Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
makemap Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
manctl Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
memcontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mergemaster Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mixer Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mld6query Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mlxcontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mount_nwfs Remove whitespace at EOL. 2001-07-15 07:53:42 +00:00
mount_portalfs Actually rename FDESC, PORTAL, UMAP and UNION file systems. 2001-05-24 15:20:11 +00:00
mountd Remove whitespace at EOL. 2001-07-15 07:53:42 +00:00
moused Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
mptable - Backout botched attempt to introduce MANSECT feature. 2001-03-26 14:42:20 +00:00
mrouted Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
mtest Include missing header files which define functions for which gcc has 2001-06-24 20:25:23 +00:00
mtree Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
named Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
named.reload Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
named.restart Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
ndc Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ndp Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
newsyslog Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
nfsd Remove whitespace at EOL. 2001-07-15 07:53:42 +00:00
ngctl Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
nghook Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The 2001-07-26 11:02:39 +00:00
nologin Remove whitespace at EOL. 2001-07-15 07:53:42 +00:00
nslookup Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
nsupdate Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ntp Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pccard Improve wording for pccard memory assignement. 2001-07-27 06:32:20 +00:00
pciconf Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pcvt Remove -traditional from CFLAGS and add unistd.h to header.h so this 2001-07-27 04:40:04 +00:00
periodic Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
pim6dd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pim6sd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pkg_install Remove s_strl*(). I am not sure what was thought they accomplished. 2001-07-28 01:59:58 +00:00
pnpinfo Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ppp Handle peer REQ/NAKs of >1500 byte MRUs when we have no preference. 2001-07-26 11:33:53 +00:00
pppctl Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The 2001-07-26 11:02:39 +00:00
pppd Install this mode 4550 owned by group dialer; there is unsafe code 2001-07-24 02:37:48 +00:00
pppstats Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
praliases Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
prefix Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
procctl Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pstat Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pw Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
pwd_mkdb Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
quot mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
quotaon Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rarpd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
raycontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
repquota mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
rip6query Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rmt Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The 2001-07-26 11:02:39 +00:00
route6d Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rpc.lockd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rpc.statd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rpc.umntall Fix some bugs and general brain damage in mounttab: 2001-07-22 12:17:51 +00:00
rpc.yppasswdd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rpc.ypupdated Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rpc.ypxfrd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rpcbind Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rrenumd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rtadvd Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The 2001-07-26 11:02:39 +00:00
rtprio Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
rtsold Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
rwhod Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
sa Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
sade Remove duplicate cvs tag. 2001-07-26 07:26:39 +00:00
sendmail Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
setextattr Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
setkey Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
sgsc - Backout botched attempt to introduce MANSECT feature. 2001-03-26 14:42:20 +00:00
sicontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
sliplogin mdoc(7) police: remove extraneous .Pp before and/or after .Sh. 2001-07-09 09:54:33 +00:00
slstat Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
spkrtest mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
spray Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
stallion Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
sysinstall Remove duplicate cvs tag. 2001-07-26 07:26:39 +00:00
syslogd Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
tcpdchk Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
tcpdmatch Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
tcpdump Use alignment-safe code on non-i386 architectures. 2001-07-26 21:54:47 +00:00
timed Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
traceroute Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
traceroute6 Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
trpt Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
tzsetup Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
usbd Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
usbdevs Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
vidcontrol Use the correct ioctl command to set a VESA mode. 2001-07-22 13:30:32 +00:00
vipw Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
vnconfig Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
watch Back out WARNS commenting - local fault 2001-07-23 12:38:00 +00:00
wicontrol Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
wlconfig Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
xten Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
yp_mkdb Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ypbind Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
yppoll Include missing header files which define functions for which gcc has 2001-06-24 20:25:23 +00:00
yppush Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
ypserv sprintf -> snprintf 2001-07-23 09:22:21 +00:00
ypset - Backout botched attempt to introduce MANSECT feature. 2001-03-26 14:42:20 +00:00
zic Perform a major cleanup of the usr.sbin Makefiles. 2001-07-20 06:20:32 +00:00
Makefile Add diskcheck-daemon. 2001-06-03 20:02:03 +00:00
Makefile.inc - Backout botched attempt to introduce MANSECT feature. 2001-03-26 14:42:20 +00:00