freebsd-dev/lib/libc
Bruce Evans d2012f3333 Add an alternative view of the bits in an 80-bit long double (64+16
instead of 32+32+15+1) on all arches that have such long doubles (amd64,
ia64 and i386).  Large objects should be be accessed in large units,
and the 32+32+15+1[+padding] decomposition asks for almost the opposite
of that, sometimes resulting in very slow accesses depending on how
well the compiler ignores what we ask for and converts to the best
units for the given machine.  E.g., on Athlons, there is a 10-20 cycle
penalty for accessing the middle 32-bit word immediately after an
80-bit store.

Whether actually using the alternative view is better is very machine-
dependent.  A 32+32+16 view is probably best with old 32-bit systems
and gcc through 4.2.1.  The compiler should mostly avoid the view and
generate best accesses, but gcc-4.2.1 is far from doing that.  I think
64+16 is best for now.  Similarly for doubles -- they should be using
64+0 especially on 64-bit machines, but fdlibm uses 32+32 extensively
for them.  Fortunately, in 64-bit mode for doubles, gcc already ignores
the 32+32-bit view and generates best accesses in many cases.
2008-01-17 16:39:07 +00:00
..
amd64 Add an alternative view of the bits in an 80-bit long double (64+16 2008-01-17 16:39:07 +00:00
arm Arrange so that the NaN returned by strtod("nan", NULL) is the same as 2007-12-16 21:15:09 +00:00
compat-43 Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
db The usage of "info" in init_hash() is read-only, so constify 2007-05-25 09:57:48 +00:00
gdtoa Export gdtoa's __ULto{x,Q}_D2A routine in a private namespace so 2007-12-16 21:15:57 +00:00
gen In getttyent(3), if /etc/ttys doesn't end in a newline, don't 2008-01-15 06:50:50 +00:00
gmon Remove .mcount from gmon's Symbol map and add it to the appropriate 2007-05-13 14:16:55 +00:00
i386 Add an alternative view of the bits in an 80-bit long double (64+16 2008-01-17 16:39:07 +00:00
ia64 Add an alternative view of the bits in an 80-bit long double (64+16 2008-01-17 16:39:07 +00:00
include Change the C wrappers for mmap/lseek/pread/pwrite/truncate/ftruncate to 2007-07-04 23:27:38 +00:00
inet Fix issues which allow snooping on ptys. [08:01] 2008-01-14 22:56:05 +00:00
isc Merge BIND 9.4.1 into main chunk. 2007-06-03 17:20:27 +00:00
locale Remove 3rd clause of license 2007-12-12 07:43:23 +00:00
nameser This commit was generated by cvs2svn to compensate for changes in r174223, 2007-12-03 15:07:58 +00:00
net Moved logging out of the nss_method_lookup() in order not to 2007-12-17 16:12:57 +00:00
nls Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
posix1e Some libc symbol map cleanups. 2007-05-31 13:01:34 +00:00
powerpc Fix build from errors exposed with recent version_gen.awk commit. 2007-10-18 07:23:31 +00:00
quad Fix a typo that prevented the quad symbols from being exported 2007-07-06 13:42:24 +00:00
regex Diff reduction against other *BSDs: ANSIfy function 2007-06-11 03:05:54 +00:00
resolv Merge BIND 9.4.2 into main chunk. 2007-12-03 15:13:44 +00:00
rpc Use intermediate pointers to avoid strict alias type check failures 2007-11-20 01:51:20 +00:00
softfloat Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
sparc64 Since nan() is supposed to work the same as strtod("nan(...)", NULL), 2007-12-18 23:46:32 +00:00
stdio Move all the xprintf-related symbols to FBSDprivate_1.0. 2007-12-18 23:49:05 +00:00
stdlib Remove some now-unused macros. 2008-01-15 18:55:52 +00:00
stdtime Reduce lock contention for simple cases. 2007-12-19 04:30:10 +00:00
string Remove license clause 3 to agree with the now-standard BSD license. 2007-12-12 18:33:06 +00:00
sys Fix some style nits. 2008-01-16 19:36:21 +00:00
uuid Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
xdr Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
yp Set timeout for all NIS RPC requests to 1 second and not just for 2007-07-24 13:06:08 +00:00
Makefile Fixed "make checkdpadd" (missing library dependencies). 2007-10-01 18:15:11 +00:00
Versions.def Increment the version namespace for 8.0-current. New symbols and 2007-12-14 20:49:06 +00:00