freebsd-dev/lib/libc
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
..
amd64 Use struct vdso_timehands data to implement fast gettimeofday(2) and 2012-06-22 07:13:30 +00:00
arm Merging of projects/armv6, part 2 2012-08-15 03:09:00 +00:00
compat-43 General mdoc(7) and typo fixes. 2012-05-08 18:56:21 +00:00
db Globally replace u_int*_t from (non-contributed) man pages. 2012-02-12 18:29:56 +00:00
gdtoa Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
gen Remove trailing whitespace. 2012-08-21 13:33:48 +00:00
gmon mdoc: end list context with El. 2012-05-12 07:52:45 +00:00
i386 libc/i386: Do not export .cerror. 2012-09-05 21:41:05 +00:00
ia64 Make the sys/ucontext.h self-contained by changing the return type 2012-02-01 13:33:53 +00:00
iconv Fix Fo arguments. 2012-03-28 19:20:28 +00:00
include Use struct vdso_timehands data to implement fast gettimeofday(2) and 2012-06-22 07:13:30 +00:00
inet A new jail(8) with a configuration file, to replace the work currently done 2010-10-19 21:32:13 +00:00
isc A new jail(8) with a configuration file, to replace the work currently done 2010-10-19 21:32:13 +00:00
locale Remove trailing whitespace. 2012-07-30 21:02:44 +00:00
mips Implement _set_tp 2012-03-06 03:30:09 +00:00
nameser A new jail(8) with a configuration file, to replace the work currently done 2010-10-19 21:32:13 +00:00
net Return zero from get_addrselectpolicy() when no source-address-selection 2012-07-18 15:52:09 +00:00
nls A new jail(8) with a configuration file, to replace the work currently done 2010-10-19 21:32:13 +00:00
posix1e Minor mdoc nits. 2012-05-13 14:16:04 +00:00
powerpc Doh... Don't add __eabi to an old version tag (i.e. FBSD_1.0). Add it to the 2012-05-25 16:30:42 +00:00
powerpc64 Do not restore the register holding the TLS pointer when doing various 2012-04-11 00:00:40 +00:00
quad A new jail(8) with a configuration file, to replace the work currently done 2010-10-19 21:32:13 +00:00
regex Remove some duplicated copyright notices. 2012-03-06 12:53:44 +00:00
resolv Remove meaningless self-assignment in res_send.c, otherwise clang will 2011-12-15 20:10:12 +00:00
rpc Rework all non-contributed files that use `struct timezone'. 2012-09-01 14:45:15 +00:00
softfloat Conditionalize the __floatunsisf and __floatunsidf functions, added in 2012-01-20 14:44:21 +00:00
sparc64 Make the sys/ucontext.h self-contained by changing the return type 2012-02-01 13:33:53 +00:00
stdio The register_printf_render_std() function expects regular string. 2012-07-04 17:35:07 +00:00
stdlib Bump dates. 2012-09-04 22:03:16 +00:00
stdtime Add more locale-specific functions to the relevant man pages and 2012-06-25 21:51:40 +00:00
string Correct BUGS description of static buffer use 2012-07-27 21:38:14 +00:00
sys When WIFCONTINUED was added, the number of "first" macros grew from 2012-09-05 11:55:53 +00:00
uuid Note that memory should be freed after uuid_to_string(3) call. 2012-03-01 14:39:01 +00:00
xdr Add a HISTORY section 2011-07-10 06:57:00 +00:00
yp Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessor 2012-02-07 09:27:07 +00:00
Makefile Disable NLS catalog use in libc if built with WITHOUT_NLS option. 2012-05-21 08:10:42 +00:00
Versions.def Add a FBSD_1.3 namespace for FreeBSD 10. 2011-10-10 15:42:33 +00:00