freebsd-nq/lib
David Schultz a1805f7bb9 When f[w]printf() is called on an unbuffered file like stdout, it
sets up a fake buffered FILE and then effectively calls itself
recursively. Unfortunately, gcc doesn't know how to do tail call
elimination in this case, and actually makes things worse by
inlining __sbprintf(). This means that f[w]printf() to stderr was
allocating about 5k of stack on 64-bit platforms, much of which was
never used.

I've reorganized things to eliminate the waste. In addition to saving
some stack space, this improves performance in my tests by anywhere
from 5% to 17% (depending on the test) when -fstack-protector is
enabled. I found no statistically significant performance difference
when stack protection is turned off. (The tests redirected stderr to
/dev/null.)
2009-01-17 18:57:12 +00:00
..
bind Updates for version 9.4.3 2008-12-23 22:50:39 +00:00
csu Add -fno-omit-frame-pointer to CFLAGS used to compile crt1.c on amd64. 2008-08-22 09:23:39 +00:00
libalias -Don't pass down the entire pkt to ProtoAliasIn, ProtoAliasOut, FragmentIn 2008-03-12 11:58:29 +00:00
libarchive "The first part is just to give more info, the latter part fixes 2009-01-13 04:56:41 +00:00
libauditd Merge OpenBSM alpha 4 from OpenBSM vendor branch to head, both 2008-12-31 11:12:24 +00:00
libautofs
libbegemot
libbluetooth Import handy shorthand Bluetooth address (BD_ADDR) utility functions 2008-08-13 19:35:31 +00:00
libbsm Merge OpenBSM alpha 5 from OpenBSM vendor branch to head, both 2009-01-14 10:44:16 +00:00
libbsnmp - Bump share library version which were missed in last bump 2007-06-18 18:47:54 +00:00
libbz2
libc When f[w]printf() is called on an unbuffered file like stdout, it 2009-01-17 18:57:12 +00:00
libc_r Call the fcntl compatiblity wrapper from the thread library fcntl wrappers 2008-05-30 14:47:42 +00:00
libcalendar
libcam Supply a valid Connect ID when issuing XPT_DEV_MATCH, which 2008-10-27 21:46:58 +00:00
libcom_err
libcompat Turn sgtty into a binary-only compatibility interface. 2008-06-14 10:42:18 +00:00
libcrypt
libdevinfo
libdevstat The devstat(3) manpage claims that only <devstat.h> is needed as a 2008-01-31 16:55:12 +00:00
libdisk Add MIPS support to libdisk 2008-05-04 22:24:40 +00:00
libdwarf Add a BSD licensed DWARF library for use by the DTrace clients. 2008-05-22 02:14:23 +00:00
libedit
libelf Add a README. 2009-01-05 05:14:26 +00:00
libexpat Update the lib/expat tree for the new v2.0.1 expat import. The bsdxml.h 2008-05-08 14:01:42 +00:00
libfetch 1. Update fetch to consistently return 1 on error, as the man page states, 2008-12-17 18:00:18 +00:00
libftpio Don't set the _file member of the FILE when opening a FTP connection. 2008-05-08 20:05:30 +00:00
libgeom - Update the libgeom manpage with a description of g_device_path and 2008-09-08 06:27:00 +00:00
libgpib
libgssapi Add an implementation of the RPCSEC_GSS authentication protocol for RPC. This 2008-08-06 14:02:05 +00:00
libipsec Commit IPv6 support for FAST_IPSEC to the tree. 2007-07-01 12:08:08 +00:00
libipx
libkiconv
libkse Call the fcntl compatiblity wrapper from the thread library fcntl wrappers 2008-05-30 14:47:42 +00:00
libkvm MFp4: 2008-11-29 14:32:14 +00:00
libmagic Don't make the MIME magic any longer. 2009-01-02 03:38:21 +00:00
libmd Remove reference to no longer existing document. 2009-01-09 11:45:13 +00:00
libmemstat
libmilter Switch libmilter from select(2) to poll(2) so milters are not limited 2008-02-17 05:14:47 +00:00
libmp
libncp
libnetgraph
libngatm
libopie
libpam Add new heimdal-1.1 library. 2008-05-15 15:28:18 +00:00
libpcap Add links to all libpcap functions. 2008-08-28 11:48:49 +00:00
libpmc Document processor errata that affect performance measurement. 2008-12-08 12:28:48 +00:00
libproc Merge latest DTrace changes from Perforce. 2008-11-05 19:35:43 +00:00
libradius
librpcsec_gss Implement support for RPCSEC_GSS authentication to both the NFS client 2008-11-03 10:38:00 +00:00
librpcsvc set WARNS to 1: with WARNS=2 an aliasing error in a file generated by 2008-02-05 20:03:45 +00:00
librt atomic_fetchadd_int works on unsigned quantities - change 2008-08-15 21:08:48 +00:00
libsbuf
libsdp Add mandatory "security description" SDP parameter to the PANU profile 2008-03-19 00:06:30 +00:00
libsm
libsmb
libsmdb
libsmutil
libstand put a prefix on dhcp options to avoid clobbering, even by mistake, 2009-01-05 23:25:35 +00:00
libtacplus
libtelnet
libthr When libthr and rtld start up, there are a number of magic spells cast 2008-12-07 02:32:49 +00:00
libthread_db Allow psaddr_t to be widened by using thr_pread_{int,long,ptr}, 2008-09-14 16:07:21 +00:00
libufs Add a berase() function which uses ioctl(DIOCGDELETE) to erase a slab 2007-12-16 18:02:37 +00:00
libugidfw
libusb20 MFp4: //depot/projects/usb@156092 2009-01-13 19:06:02 +00:00
libusbhid
libutil Include param.h instead of types.h when using user.h. Otherwise there is 2008-12-27 11:12:23 +00:00
libvgl
libwrap
liby
libypclnt
libz
msun Use __gnu89_inline so that these files will compile with newer versions 2009-01-13 05:13:20 +00:00
ncurses - Update ncurses to 5.7-20081102 (5.7 release) and build glue 2008-11-15 09:23:48 +00:00
Makefile Merge OpenBSM alpha 4 from OpenBSM vendor branch to head, both 2008-12-31 11:12:24 +00:00
Makefile.inc