1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-29 12:03:03 +00:00
freebsd/sys/i386/include
Mike Barcroft 8cf5ed5125 Implement fpclassify():
o Add a MD header private to libc called _fpmath.h; this header
  contains bitfield layouts of MD floating-point types.
o Add a MI header private to libc called fpmath.h; this header
  contains bitfield layouts of MI floating-point types.
o Add private libc variables to lib/libc/$arch/gen/infinity.c for
  storing NaN values.
o Add __double_t and __float_t to <machine/_types.h>, and provide
  double_t and float_t typedefs in <math.h>.
o Add some C99 manifest constants (FP_ILOGB0, FP_ILOGBNAN, HUGE_VALF,
  HUGE_VALL, INFINITY, NAN, and return values for fpclassify()) to
  <math.h> and others (FLT_EVAL_METHOD, DECIMAL_DIG) to <float.h> via
  <machine/float.h>.
o Add C99 macro fpclassify() which calls __fpclassify{d,f,l}() based
  on the size of its argument.  __fpclassifyl() is never called on
  alpha because (sizeof(long double) == sizeof(double)), which is good
  since __fpclassifyl() can't deal with such a small `long double'.

This was developed by David Schultz and myself with input from bde and
fenner.

PR:		23103
Submitted by:	David Schultz <dschultz@uclink.Berkeley.EDU>
		(significant portions)
Reviewed by:	bde, fenner (earlier versions)
2003-02-08 20:37:55 +00:00
..
pc Removed bits related to MBRs now that they have a proper home in 2002-10-02 03:29:00 +00:00
_inttypes.h
_limits.h Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
_stdint.h
_types.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
acpica_machdep.h
apic.h Nuke CHEAP_TPR stuff, including LOPRIO_LEVEL (bogus) and ALLHWI_LEVEL 2003-01-23 01:03:34 +00:00
apicreg.h Nuke CHEAP_TPR stuff, including LOPRIO_LEVEL (bogus) and ALLHWI_LEVEL 2003-01-23 01:03:34 +00:00
apm_bios.h
apm_segments.h
asc_ioctl.h
asm.h PIC_GOTOFF is OBE. 2002-09-23 07:27:45 +00:00
asmacros.h
atomic.h Add a knob to turn on and off the CMPXCHG instruction on > i386 IA32 systems. 2002-10-14 19:33:12 +00:00
bootinfo.h
bus_at386.h
bus_dma.h Implement bus_dmamem_alloc_size() and bus_dmamem_free_size() as 2003-01-29 07:25:27 +00:00
bus_memio.h
bus_pc98.h
bus_pio.h
bus.h
cdk.h
clock.h i386/i386/tsc.c was repo-copied from i386/isa/clock.c. 2003-02-05 09:20:40 +00:00
comstats.h
cpu.h Make get_cyclecount() use binuptime() when no tsc is available: it is cheaper. 2003-02-05 08:55:10 +00:00
cpufunc.h Create inlines for ltr(sel), lldt(sel), lidt(addr) rather than 2002-09-22 04:45:21 +00:00
cputypes.h
critical.h
cronyx.h
db_machdep.h
dvcfg.h
elf.h
endian.h Be careful not to define GCC-specific optimizations in the non-GCC 2002-09-23 04:32:17 +00:00
exec.h
float.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
floatingpoint.h o Move the contents of <machine/floatingpoint.h> over to 2003-01-19 06:01:33 +00:00
frame.h
gsc.h
i4b_cause.h
i4b_debug.h
i4b_ioctl.h
i4b_rbch_ioctl.h
i4b_tel_ioctl.h
i4b_trace.h
ieeefp.h o Move the contents of <machine/floatingpoint.h> over to 2003-01-19 06:01:33 +00:00
if_wl_wavelan.h
in_cksum.h
ioctl_bt848.h
ioctl_ctx.h
ioctl_meteor.h
kse.h
legacyvar.h Add a new legacy(4) device driver for use on machines that do not have 2002-09-23 15:50:06 +00:00
limits.h Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, 2003-01-01 18:49:04 +00:00
md_var.h - Move enable_sse()'s prototype to machine/md_var.h. 2003-01-22 18:18:45 +00:00
mpapic.h
mptable.h Split statclock into statclock and profclock, and made the method for driving 2003-02-03 17:53:15 +00:00
mtpr.h
mutex.h
npx.h At great personal risk, add a __packed and __aligned(x) define that 2002-09-23 05:55:10 +00:00
param.h
pcaudioio.h
pcb_ext.h
pcb.h 1.Fix smp race between kernel vm86 BIOS calling and userland vm86 mode code, 2002-11-07 01:34:23 +00:00
pci_cfgreg.h
pcpu.h A more lint friendly #ifdef lint section. 2002-10-01 14:01:58 +00:00
pcvt_ioctl.h
pecoff_machdep.h
perfmon.h
physio_proc.h
pmap.h
privatespace.h
proc.h Note that the sched_lock protects md_ldt of struct mdproc. 2002-10-25 20:06:16 +00:00
profile.h Fix a declaration that is actually supposed to be a macro definition. 2002-09-25 13:46:23 +00:00
psl.h
ptrace.h
reg.h Properly parenthesize the DBREG_DRX macro's variables to allow for 2002-11-07 22:42:31 +00:00
reloc.h
resource.h
runq.h
segments.h Remove BDE_DEBUGGER. 2003-01-28 19:05:44 +00:00
setjmp.h Fix namespace issues by using visibility conditionals from 2002-10-05 05:47:56 +00:00
sigframe.h Split 4.x and 5.x signal handling so that we can keep 4.x signal 2002-10-25 19:10:58 +00:00
signal.h Align the FPU state in the ucontext and sigcontext to 16 bytes 2002-12-02 19:58:55 +00:00
smapi.h A driver for the System Management Application Program 2003-01-17 08:10:18 +00:00
smp.h Split statclock into statclock and profclock, and made the method for driving 2003-02-03 17:53:15 +00:00
smptests.h Clean up some junk defines, and GC the TPR options. 2003-01-23 01:04:27 +00:00
speaker.h Very minor whitespace/style nit. 2002-10-23 10:14:30 +00:00
specialreg.h Bah, add in a missing space char I noticed when MFC'ing this. 2003-01-22 17:26:18 +00:00
spigot.h
stdarg.h Fix for non-GCC compilers. 2002-11-27 16:28:18 +00:00
sysarch.h There is no need for start/num to be signed in i386_ldt_args. 2002-09-28 20:42:04 +00:00
trap.h
tss.h Delete a whole bunch of compatability defines that we dont use anymore. 2002-09-23 05:04:05 +00:00
ucontext.h Align the FPU state in the ucontext and sigcontext to 16 bytes 2002-12-02 19:58:55 +00:00
varargs.h Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
vm86.h 1.Fix smp race between kernel vm86 BIOS calling and userland vm86 mode code, 2002-11-07 01:34:23 +00:00
vmparam.h
wtio.h