freebsd-dev/lib/libc
Jason Evans 5355c74026 Use some math tricks in arena_run_reg_dalloc() to avoid actual division, as
well as avoiding a switch statement.  This change has no significant impact
to performance when branch prediction is successful at predicting the sizes
of objects passed to free(), but in the case that the object sizes are
semi-random, this change has the potential to prevent many branch prediction
misses, thus improving performance substantially.

Take advantage of alignment guarantees in ipalloc(), and pad object sizes to
something less than a power of two when possible.  This has the potential
to substantially reduce internal fragmentation for objects allocated via
posix_memalign().

Avoid an unnecessary pow2_ceil() call in arena_ralloc().

Submitted by:	djam8193ah@hotmail.com
2006-07-01 16:51:10 +00:00
..
alpha Desupport the undocumented NO_QUAD option, just don't compile 2006-03-16 14:22:19 +00:00
amd64 Desupport the undocumented NO_QUAD option, just don't compile 2006-03-16 14:22:19 +00:00
arm GC old a.out and K&R support. 2006-05-23 02:52:14 +00:00
compat-43 Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
db o dbm_close(3) returns void not zero or anything else. Touch .Dd. 2006-04-16 16:33:26 +00:00
gdtoa Don't export __gdtoa. The only known ports that rely on 2006-04-15 15:35:20 +00:00
gen - ANSIfy. 2006-06-05 18:22:13 +00:00
gmon Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
i386 Replace absolute addressing in the call instructions with position-independend 2006-06-05 14:59:33 +00:00
ia64 Fix comment. 2006-03-16 14:27:17 +00:00
include Upgrade res_update(3) and the friends to BIND9's one excluding TSIG 2006-05-21 11:19:36 +00:00
inet It's not enough to provide symbol map files; you also have to add them 2006-03-23 16:55:13 +00:00
isc - Merge our local changes. 2006-03-21 15:37:16 +00:00
locale Fix a bug where, for 6-byte sequences, the top 6 bits get compared to 2006-03-30 09:04:12 +00:00
nameser Upgrade res_update(3) and the friends to BIND9's one excluding TSIG 2006-05-21 11:19:36 +00:00
net Fix gethostbyaddr() prototype to conform to IEEE Std 1003.1 on 64 bit 2006-05-21 11:27:28 +00:00
nls Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
posix1e Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
powerpc Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
quad Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
regex Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
resolv Nuke some compatibility crufts of resolver for 6.X and earlier. 2006-05-21 11:29:26 +00:00
rpc - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
softfloat Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
sparc64 For _Qp_{fge,fgt,fle,flt}() the SCD states that "Exceptions mimic fcmpeq", 2006-04-16 14:32:53 +00:00
stdio Oops, correct the weak reference (s/fclose/fcloseall). 2006-04-22 16:47:59 +00:00
stdlib Use some math tricks in arena_run_reg_dalloc() to avoid actual division, as 2006-07-01 16:51:10 +00:00
stdtime Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
string o Make grep ^strlcpy work: put a return value type on separate line. 2006-06-15 15:56:55 +00:00
sys Make the mincore(2) return ENOMEM when requested range is not fully mapped. 2006-06-21 12:59:05 +00:00
uuid Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
xdr Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
yp Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
Makefile Remove pending actions asked in comments for SHLIB_MAJOR bump, done. 2006-05-22 05:12:44 +00:00
Versions.def Add symbol maps and initial symbol version definitions to libc. 2006-03-13 00:53:21 +00:00