freebsd-dev/lib/libc/i386
Konstantin Belousov 35dfc644f5 Copy the fencing of the algorithm to do lock-less update and reading
of the timehands, from the kern_tc.c implementation to vdso.  Add
comments giving hints where to look for the algorithm explanation.

To compensate the removal of rmb() in userspace binuptime(), add
explicit lfence instruction before rdtsc.  On i386, add usual
complications to detect SSE2 presence; assume that old CPUs which do
not implement SSE2 also execute rdtsc almost in order.

Reviewed by:	alc, bde (previous version)
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2015-08-04 12:33:51 +00:00
..
gen siglongjmp(): Preserve floating point exception flags on i386 and amd64. 2014-06-09 21:35:36 +00:00
stdlib
string Replace the WEAK_ALIAS() alias with the WEAK_REFERENCE() alias. Use it and 2013-11-21 22:31:18 +00:00
sys Copy the fencing of the algorithm to do lock-less update and reading 2015-08-04 12:33:51 +00:00
_fpmath.h
arith.h
gd_qnan.h
Makefile.inc Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP} 2014-03-04 02:19:39 +00:00
Symbol.map libc/i386: Do not export .cerror. 2012-09-05 21:41:05 +00:00
SYS.h Replace the WEAK_ALIAS() alias with the WEAK_REFERENCE() alias. Use it and 2013-11-21 22:31:18 +00:00