Commit Graph

82 Commits

Author SHA1 Message Date
lukem 95c969f245 add RCSID 2001-11-15 07:03:28 +00:00
thorpej f5c35acc6c Eliminate a needless test, pointed out by Bill Sommerfeld. 2001-09-03 17:49:31 +00:00
thorpej 518ad20222 Upon further reading of the manual, don't save the MXCSR-at-last-exception.
Its status bits are sticky, and unaffacted by FNINIT.
2001-08-03 01:46:08 +00:00
thorpej f72ee0a9c6 Remember the MXCSR at last-exception the way we do the FPU SW/TW. 2001-08-03 01:11:49 +00:00
thorpej f0449fd933 - Rename cpu_use_fxsave to i386_use_fxsave.
- If we detect SSE/SSE2 support in the CPU, enable SSE exceptions
  and set i386_has_{sse,sse2} as appropriate.
- Expose i386_use_fxsave and i386_has_{sse,sse2} through sysctl
  as machdep.{osfsxr,sse,sse2}.
2001-08-02 22:04:28 +00:00
thorpej 99a7f640fe Add support for saving/restoring SSE/SSE2 state using FXSAVE/FXRSTOR.
Reviewed by Frank.
2001-08-02 21:04:43 +00:00
lukem 9c92176b44 don't bother providing duplicate code for {read,write}_eflags() since it's in cpufuncs.h anyway 2001-05-17 16:35:06 +00:00
thorpej 9d7220db23 Explicitly include <machine/pio.h>. 2001-04-26 17:56:37 +00:00
fvdl 0546607276 Export some variables. 2001-01-17 00:03:02 +00:00
mrg b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +00:00
thorpej ff36cd64b7 Rearrange the npx driver a little to allow for multiple attachments
and add a pnpbios atttachment for it.
2000-06-16 03:47:24 +00:00
tron 5bfc315184 Fix typo in comment. 2000-04-17 07:57:21 +00:00
fvdl 7bae87cae4 Set variable i386_fpu_present to 1 if a functional FPU was detected. For
later retrieval by sysctl.
1999-10-06 20:03:51 +00:00
mrg d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
christos 12bbb63ed7 move the assembly functions to locore.s and make the variables used by
them non-static
1999-01-26 14:27:08 +00:00
drochner 06471a2eed switch to non-BROKEN_INDIRECT_CONFIG 1998-03-22 12:52:03 +00:00
mycroft 919340aaa5 In npxdna(), if there was an exception state in the FPU but npxproc was
null, the frstor would fault on a PPro.  I'm pretty sure this is not
how the chip is supposed to behave, but it's easy enough to do a fninit
to throw away the exception state.
Also, some other minor changes to the documentation.
1998-03-20 20:15:14 +00:00
mrg d90485202c - add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
mrg 29e93b8bea add the i386 MD portions for UVM. 1998-02-06 07:21:42 +00:00
mycroft a963fe5864 Store the initial NPX control word appropriate for the emulation in the saved
FPU state, and use it when initializing the FPU on demand.
1998-01-24 13:19:46 +00:00
mycroft 22c1670658 Some rearrangement of the startup code:
* Move some of the memory bootstrapping and the DDB startup earlier.
* Always put the IDT and the initial GDT and LDT in a separate page.
* Various minor changes.
1998-01-23 00:44:02 +00:00
thorpej 36760d9d94 Update for changes to config. 1998-01-12 18:59:04 +00:00
mycroft 37e189d6a8 Need vmmeter.h here now. 1997-10-16 03:22:54 +00:00
christos bd73314ed9 backout previous kprintf changes 1996-10-13 03:19:38 +00:00
christos 06555645c2 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:24:36 +00:00
mycroft eda98d375d Use intr.h. 1996-05-12 23:11:54 +00:00
christos 099b45aa2a - Add missing prototypes.
- Fix gcc warnings
1996-05-03 19:14:50 +00:00
cgd 79e0a8a2b9 update for addition of a machine-dependent cookie as the first argument
to isa_intr_{,dis}establish().
1996-04-11 22:15:08 +00:00
thorpej 82d914d090 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:26:49 +00:00
mycroft 7f6d0eaf9b Put #includes in the right order. 1996-01-07 02:00:31 +00:00
mycroft 3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
mycroft 25f53a986f Add USERMODE() and KERNELMODE() macros, and use them. 1995-10-10 04:45:03 +00:00
mycroft f2d15e5b48 Remove unneeded input operands to fnsave(), fnstcw(), and fnstsw(). 1995-10-05 23:06:15 +00:00
mycroft bc59b73733 Merge npxinit() into npxdna(), and remove duplicated code. 1995-08-06 19:48:58 +00:00
mycroft b725d8b30b Update the comment describing how this works. 1995-08-06 19:31:49 +00:00
mycroft ef504e724d Fix oversight in previous. 1995-08-06 18:05:22 +00:00
mycroft d730fead60 Eliminate direct uses of curproc in npxdna() and npxinit(). 1995-08-06 17:59:10 +00:00
mycroft a326c49adf Stop using cr0 to flag that the FPU has not been used. 1995-08-06 06:05:28 +00:00
mycroft ce7cc0c18a Move the `used fpu' flag into mdproc, so it can be referenced when a process
is swapped out.  Implement process_{read,write}_fpregs.
1995-08-06 05:32:59 +00:00
mycroft 0175317fc3 If we decide to use IRQ 13, explicitly turn off CR0_NE to be sure. 1995-05-04 00:30:56 +00:00
mycroft 94f4346537 Update a comment to match that last change. 1995-05-04 00:20:40 +00:00
mycroft f0a42753e4 npxinit() should not be called during autoconfig now. Watch for this
condition.
1995-05-04 00:16:40 +00:00
mycroft e03a827a0a Move some comments from before npxsave1() to before npxsave(). 1995-05-04 00:00:25 +00:00
mycroft bfef4c14c5 Slight rearrangement, to make the TS handling easier to follow. 1995-05-03 23:09:37 +00:00
mycroft e772f7c5ef Set PCB_USEDFPU. 1995-05-03 00:09:13 +00:00
mycroft 87b25c7f5c Update to match include files. Eliminate _ucodesel, _udatasel, and IdlePTD. 1995-05-01 08:25:30 +00:00
mycroft 17a5f987ba Be more aggressive about lazy saving and initialization. 1995-05-01 04:47:43 +00:00
cgd 8a640328ed clean up several ISA device interfaces: autoconfiguration, header
inclusion, and interrupt configuration.  more work still needs to be done,
but it's getting better...
1995-04-17 12:06:30 +00:00
mycroft 431ccddc77 Remove redundant assignments. 1995-01-26 06:35:42 +00:00
mycroft 133ff42fa2 Introduce a `npx_softc' to make this driver more normal. Some other minor
cleanup.
1995-01-26 06:14:14 +00:00