freebsd-dev/lib
Jilles Tjoelker a8599e090f libc/i386: Do not export .cerror.
For some reason, libc exports the symbol .cerror (HIDENAME(cerror)), albeit
in the FBSDprivate_1.0 version. It looks like there is no reason for this
since it is not used from other libraries. Given that it cannot be accessed
from C and its strange calling convention, it is rather unlikely that other
things rely on it. Perhaps it is from a time when symbols could not be
hidden.

Not exporting .cerror causes it to be jumped to directly instead of via the
PLT.

This change also takes advantage of .cerror's new status by not saving and
loading %ebx before jumping to it. (Therefore, .cerror now saves and loads
%ebx itself.) Where there was a conditional jump to a jump to .cerror, the
conditional jump has been changed to jump to .cerror directly (many modern
CPUs don't do static prediction and in any case it is not much of a benefit
anyway).

This change makes libc.so.7 a few kilobytes smaller.

Reviewed by:	kib
2012-09-05 21:41:05 +00:00
..
bind Upgrade to BIND version 9.8.3, the latest from ISC. 2012-05-28 19:47:56 +00:00
clang Sprinkle a bit of style.Makefile(5) across various clang Makefiles. No 2012-08-23 17:08:07 +00:00
csu Revert r234356 for now, as it leads to run-time problems on 32-bit 2012-04-23 06:33:27 +00:00
libalias
libarchive Backport NFSv4 ACL fix from libarchive master branch. 2012-07-30 14:47:35 +00:00
libauditd
libbegemot
libblocksruntime
libbluetooth General mdoc(7) and typo fixes. 2012-05-11 20:06:46 +00:00
libbsm
libbsnmp Bump shared libraries version numbers in preparation for 9.0. 2011-08-28 09:26:48 +00:00
libbz2
libc libc/i386: Do not export .cerror. 2012-09-05 21:41:05 +00:00
libc++ Add libcxxrt's objects (prefixing them with cxxrt_ to avoid collisions) 2012-08-25 13:15:44 +00:00
libcalendar
libcam Use snprintf(3) constantly when generating CAM error messages. 2012-03-03 09:19:20 +00:00
libcom_err - Update FreeBSD Heimdal distribution to version 1.5.1. This also brings 2012-03-22 08:48:42 +00:00
libcompat
libcompiler_rt Switch sparc64 to using libcompiler_rt; since r230021 we have a workaround 2012-05-15 22:47:34 +00:00
libcrypt Stop using auth_getval() now that it always returns NULL. Instead, 2012-06-12 17:14:19 +00:00
libcxxrt Clean up some symbol versions for libsupc++ / libcxxrt. 2012-06-11 15:40:57 +00:00
libdevinfo
libdevstat Globally replace u_int*_t from (non-contributed) man pages. 2012-02-12 18:29:56 +00:00
libdisk Remove an errant `#define dprintf printf'. It seems to be leftover 2012-01-20 06:59:29 +00:00
libdwarf Teach libdwarf about the DW_FORM_flag_present dwarf attribute, so 2012-08-29 18:49:41 +00:00
libedit Drop non-portable libedit's el_data_set() and el_data_get() for 2012-07-26 15:48:07 +00:00
libefi
libelf Don't ever build files depending on the directory where they are placed in. 2012-07-24 16:03:28 +00:00
libexpat
libfetch Merge OpenSSL 1.0.1c. 2012-07-12 19:30:53 +00:00
libgeom Back out r233646. Although it fixed most libgeom consumers under 32-bit 2012-04-10 17:37:24 +00:00
libgpib mdoc: minor Bl improvements. 2012-06-02 08:47:26 +00:00
libgssapi mdoc: add missing -width argument to Bl -tag. 2012-06-08 12:09:00 +00:00
libiconv Remove redundant assignments to WARNS. 2011-06-06 20:24:17 +00:00
libiconv_modules
libipsec MFp4 204292: 2012-02-11 20:43:01 +00:00
libipx
libjail The fix in r235291 re-broke the "allow.nomount" case. Re-fix it 2012-05-22 18:30:32 +00:00
libkiconv Make sure libkiconv.so.4 is installed into /lib, not into /usr/lib, 2012-06-12 20:24:57 +00:00
libkse Fix typo in ".PATH" 2012-04-18 07:02:53 +00:00
libkvm General mdoc(7) and typo fixes. 2012-05-11 20:06:46 +00:00
liblzma Update xz to git snapshot of v5.0 branch as of 20110711 (post-5.0.3) 2011-07-11 14:15:27 +00:00
libmagic Correct a regression introduced during the import of file(1) 5.11. 2012-08-17 02:27:17 +00:00
libmd Remove the RFC 1319 MD2 Message-Digest Algorithm routines from libmd. 2012-04-28 02:48:51 +00:00
libmemstat Fix various typos in manual pages. 2012-02-25 14:31:25 +00:00
libmilter
libmp Fix whitespace inconsistencies found in homegrown Symbol.maps. 2011-10-07 15:05:24 +00:00
libnandfs Import work done under project/nand (@235533) into head. 2012-05-17 10:11:18 +00:00
libncp Add characters mapping for codepages used in Germany. 2012-06-01 03:59:08 +00:00
libnetgraph
libngatm
libopie X11BASE has been deprecated for a long time and will die soon 2012-01-09 00:48:19 +00:00
libpam Fix an instance in pam_krb5(8), where the variable 'user' could be used 2012-08-06 18:44:59 +00:00
libpcap Merge from vendor branch: update libpcap to 1.2.1. 2012-05-14 05:12:56 +00:00
libpmc mdoc: minor Bl improvements. 2012-06-02 08:47:26 +00:00
libproc Make sure we visit both symbol sections even if one of them doesn't 2012-09-02 18:14:01 +00:00
libprocstat Add __BEGIN_DECLS and __END_DECLS to make libprocstat more C++-friendly. 2012-09-04 05:51:50 +00:00
libradius General mdoc(7) and typo fixes. 2012-05-11 20:06:46 +00:00
librpcsec_gss mdoc: add missing -width argument to Bl -tag. 2012-06-06 08:07:47 +00:00
librpcsvc Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessor 2012-02-07 09:27:07 +00:00
librt Register signal 33 explicitly as reserved by real-time library, and 2012-03-26 19:12:09 +00:00
librtld_db Bump shared libraries version numbers in preparation for 9.0. 2011-08-28 09:26:48 +00:00
libsbuf Ok, so we use different comment conventions in Symbol.map and Version.def 2011-05-17 19:20:32 +00:00
libsdp Change the SDP_GET* macros to cast to a const buffer. 2011-10-16 08:45:16 +00:00
libsm Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, to 2012-02-28 18:30:18 +00:00
libsmb
libsmdb
libsmutil
libstand MFV: Update zlib to 1.2.7. 2012-06-21 21:47:08 +00:00
libstdbuf Fix small documentation mistakes. 2012-04-28 21:50:30 +00:00
libstdthreads Pull up vendor changes to mdoc(7) 2012-01-05 21:36:12 +00:00
libtacplus General mdoc(7) and typo fixes. 2012-05-11 20:06:46 +00:00
libtelnet - Do not use deprecated krb5 error message reporting functions in libtelnet. 2012-04-06 00:03:45 +00:00
libthr In suspend_common(), don't wait for a thread which is in creation, because 2012-08-27 03:09:39 +00:00
libthread_db Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, to 2012-02-28 18:30:18 +00:00
libufs Make berase() work on platforms whose kernel lacks DIOCGDELETE ioctl. 2011-12-08 12:31:47 +00:00
libugidfw
libulog Properly use SHA1_Final() instead of SHA_Final(). 2012-04-19 15:28:15 +00:00
libusb Add support for streams to LibUSB v2.0. 2012-08-13 18:10:52 +00:00
libusbhid HID Report ID is unsigned value, so clear the rest of bits from possible 2012-05-16 17:51:56 +00:00
libutil Switch the default password hash from md5 to sha512. 2012-06-19 14:46:18 +00:00
libvgl Fix various typos in manual pages. 2012-02-25 14:31:25 +00:00
libwrap
liby
libypclnt Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessor 2012-02-07 09:27:07 +00:00
libz MFV: Update zlib to 1.2.7. 2012-06-21 21:47:08 +00:00
msun Add __always_inline to __ieee754_rem_pio2() and __ieee754_rem_pio2f(), 2012-08-11 15:47:22 +00:00
ncurses
Makefile Vendor import of clang trunk r161861: 2012-08-15 20:02:54 +00:00
Makefile.inc