freebsd-dev/sys/amd64/include
David Schultz 7b74e4a759 Remove fpsetsticky(). This was added for SysV compatibility, but due
to mistakes from day 1, it has always had semantics inconsistent with
SVR4 and its successors.  In particular, given argument M:

- On Solaris and FreeBSD/{alpha,sparc64}, it clobbers the old flags
  and *sets* the new flag word to M.  (NetBSD, too?)
- On FreeBSD/{amd64,i386}, it *clears* the flags that are specified in M
  and leaves the remaining flags unchanged (modulo a small bug on amd64.)
- On FreeBSD/ia64, it is not implemented.

There is no way to fix fpsetsticky() to DTRT for both old FreeBSD apps
and apps ported from other operating systems, so the best approach
seems to be to kill the function and fix any apps that break.  I
couldn't find any ports that use it, and any such ports would already
be broken on FreeBSD/ia64 and Linux anyway.

By the way, the routine has always been undocumented in FreeBSD,
except for an MLINK to a manpage that doesn't describe it.  This
manpage has stated since 5.3-RELEASE that the functions it describes
are deprecated, so that must mean that functions that it is *supposed*
to describe but doesn't are even *more* deprecated.  ;-)

Note that fpresetsticky() has been retained on FreeBSD/i386.  As far
as I can tell, no other operating systems or ports of FreeBSD
implement it, so there's nothing for it to be inconsistent with.

PR:		75862
Suggested by:	bde
2005-03-15 15:53:39 +00:00
..
pc PC98 will never be defined for amd64 2005-01-05 20:11:13 +00:00
_inttypes.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
_limits.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
_stdint.h <stdint.h> should define WINT_M{AX,IN} independent from whether WCHAR_MIN is 2004-05-18 16:04:57 +00:00
_types.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
acpica_machdep.h Move the code for halting the CPU (acpi_cpu_c1) into machdep files. 2004-10-11 05:39:15 +00:00
apicreg.h JumboMFi386: use bitmapped IPI handler. Update elcr and default mptable 2005-01-21 06:01:20 +00:00
apicvar.h MFi386: Bring over John's local apic timer code 2005-02-28 23:37:35 +00:00
asm.h Argh. Add the mini-stack-frame back in for mcount's benefit for syscall 2004-06-10 22:02:26 +00:00
asmacros.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
atomic.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
bus_amd64.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
bus_dma.h Refactor the bus_dma header files so that the interface is described in 2005-03-14 16:46:28 +00:00
bus_memio.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
bus_pio.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
bus.h AMD64 physical space is much larger than i386, de-i386 the bus_space and 2003-05-12 02:44:37 +00:00
clock.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
cpu.h Instead of calling ia32_pause() conditionally on __i386__ or __amd64__ 2004-08-03 18:44:27 +00:00
cpufunc.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
cputypes.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
critical.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
db_machdep.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
elf.h Add style(9) foolishness. 2004-08-03 08:21:48 +00:00
endian.h Match i386 rev 1.38 with __cplusplus support 2005-03-11 21:46:01 +00:00
exec.h Use a common multi-inclusion protection, and add such a 2005-02-19 21:16:48 +00:00
float.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
floatingpoint.h o Move the contents of <machine/floatingpoint.h> over to 2003-01-19 06:01:33 +00:00
fpu.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
frame.h Remove obsolete prototype of kdb_trap(). 2004-07-10 22:39:56 +00:00
gdb_machdep.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
ieeefp.h Remove fpsetsticky(). This was added for SysV compatibility, but due 2005-03-15 15:53:39 +00:00
in_cksum.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
intr_machdep.h JumboMFi386: use bitmapped IPI handler. Update elcr and default mptable 2005-01-21 06:01:20 +00:00
iodev.h Break out the MI part of the /dev/[k]mem and /dev/io drivers into 2004-08-01 11:40:54 +00:00
kdb.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
legacyvar.h MFi386: numerous interrupt and acpi updates 2004-05-16 20:30:47 +00:00
limits.h netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
md_var.h Remove atdevbase and replace it's remaining uses with direct references to 2004-06-10 20:31:00 +00:00
memdev.h Break out the MI part of the /dev/[k]mem and /dev/io drivers into 2004-08-01 11:40:54 +00:00
metadata.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
mp_watchdog.h Add an "options MP_WATCHDOG" to i386. This option allows one of the 2004-08-15 18:02:09 +00:00
mptable.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
mutex.h Kill the ASM versions of the mtx_lock_spin and friends. They were never 2003-12-06 23:17:18 +00:00
param.h MFi386: whitespace, copyright header, etc updates 2005-01-21 05:56:41 +00:00
pcb_ext.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
pcb.h Implement makectx(). The makectx() function is used by KDB to create 2004-07-10 19:56:00 +00:00
pci_cfgreg.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
pcpu.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
pmap.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
proc.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
profile.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
psl.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
ptrace.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
reg.h Remove advertising clause from University of California Regent's license, 2004-04-05 23:55:14 +00:00
reloc.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
resource.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
runq.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
segments.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
setjmp.h Make this more compatable with libc_r. Make the internal types for storing 2003-06-02 21:49:35 +00:00
sf_buf.h MFi386: Update alc's copyright notice 2005-02-28 23:38:15 +00:00
sigframe.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
signal.h Begin all license/copyright comments with /*- 2005-01-05 20:17:21 +00:00
smp.h MFi386: Bring over John's local apic timer code 2005-02-28 23:37:35 +00:00
specialreg.h Initial PG_NX support (no-execute page bit) 2004-06-08 01:02:52 +00:00
stdarg.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
sysarch.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
trap.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
tss.h Remove advertising clause from University of California Regent's license, 2004-04-05 21:29:41 +00:00
ucontext.h Update the graffiti. 2003-11-08 04:39:22 +00:00
varargs.h Remove diffs to i386 version that came in via the compiler support ifdefs. 2005-03-11 22:16:09 +00:00
vmparam.h Raise MAXDSIZ from 8G to 32G. The old limit was just an arbitary choice 2004-10-27 17:21:15 +00:00