Commit Graph

235 Commits

Author SHA1 Message Date
christos
cf1d6b55f3 Modify the floating point part of our context to reflect reality. 1995-01-25 04:18:52 +00:00
jtc
9540190d45 This file, which will be included by <sys/cdefs.h>, will contain macros
such as __warn_references() and __weak_reference() which are actually
machine dependant.  This will make it easier for ports that are being
bootstraped with ELF and ECOFF based toolchains.

This change also introduces a new macro, _C_LABEL(x).  _C_LABEL expands
its argument, an identifier, to a character string of the identifier
name as it is represented in an object file.

For most ports, _C_LABEL(x) will expand to "_x", for ELF based ports
_C_LABEL(x) will expand to "x".
1995-01-19 01:38:36 +00:00
mycroft
ecef8fddfa Remove PSL_USERCLR, and add a PSL_USERSTATIC. Change the bit descriptions to
more closely match the 386 manual.  (Probably the mnemonics should be changed,
too.)
1995-01-15 00:57:50 +00:00
jtc
d7a8b2964f Only define sig_atomic_t when _ANSI_SOURCE is defined. 1995-01-10 19:01:00 +00:00
christos
b006bf7e68 Added missing forward declaration 1995-01-09 01:05:24 +00:00
christos
e1c97cde06 New file for signal handling and {g,s}etcontext(). 1995-01-08 21:23:31 +00:00
mycroft
d16dcced99 Add interrupt sharing types. 1995-01-03 01:19:19 +00:00
cgd
7b8535b554 do the right thing with strange-sized varargs objects. 1994-12-28 22:45:42 +00:00
cgd
e5049f4d59 make the definition of _JBLEN mach. dep. header-dependent. 1994-12-20 10:36:27 +00:00
mycroft
d2d4dc4654 Use immediate constants for port numbers < 0x100. 1994-11-20 21:36:44 +00:00
christos
f63115591a Included <sys/cdefs.h> since this file is now using __signed.
It broke non gnu compilers.
1994-11-20 18:50:18 +00:00
mycroft
e075f8c13d Convert port, IRQ, and DRQ numbers to ints. 1994-11-18 22:18:35 +00:00
mycroft
1c5ac2e88c pcb.h requires segments.h now. 1994-11-08 23:09:21 +00:00
mycroft
205d425f2f As pointed out by Bruce, splsoftclock() needs to process pending interrupts
when lowering the priority.  Do this by simply calling splx().  For the
benefit of NFS (for now), modify splx() to return a value so that
splsoftclock() does.  This work is optimized out for every use of splx()
that ignores the value, so it only affects relevant code.
Also, clean up this file a little.
1994-11-06 01:37:47 +00:00
mycroft
c2191a2ad0 Fully prototype ssdtosd() and sdtossd(). 1994-11-05 03:20:36 +00:00
mycroft
34c4570d61 Only use ssdtosd() when creating, expanding, or copying the LDT. Keep a copy
of the result in the PCB so it can be loaded quickly on context switches.
1994-11-05 03:17:33 +00:00
andrew
20cc8b6c5c Increase NKPDE to cope with 64MB RAM. 1994-10-31 06:30:52 +00:00
cgd
022ee8f7fe new RCS ID format. 1994-10-27 04:14:23 +00:00
cgd
77e4fe47ef update for new syscall args description mechanism 1994-10-20 04:43:21 +00:00
cgd
f501e4e128 make <stdarg.h> a symlink, and clean up ports' stdarg.h and varargs.h files. 1994-10-15 04:57:29 +00:00
cgd
49c34d3337 move arch dependence to archs. clean up a bit. deal with weird MAXPARTITONS. 1994-10-14 18:26:22 +00:00
mycroft
c3fa5122d6 #include cpufunc.h from pmap.h. 1994-10-09 15:00:38 +00:00
mycroft
e19b0472c8 Make multiple-inclusion protection consistent. 1994-10-09 13:33:53 +00:00
mycroft
c87fbde918 Fix typo. 1994-10-09 13:31:19 +00:00
mycroft
701c0f0058 Eliminate i386_saved_state. 1994-10-09 13:27:07 +00:00
mycroft
8295e4b8f2 Nuke dirty(). 1994-10-09 13:23:21 +00:00
mycroft
ebbc8e0476 Make the conversion macros more consistent. 1994-10-09 13:20:37 +00:00
mycroft
18830ce0ea Define pmap_update() using tlbflush(). 1994-10-09 13:11:18 +00:00
mycroft
47db98b4d9 Eliminate register restrictions where possible. 1994-10-09 13:02:56 +00:00
mycroft
112dac786c Make reg, frame, and sigcontext more similar. 1994-10-09 12:39:05 +00:00
mycroft
13c1794b82 Eliminate tf_isp. 1994-10-09 09:20:28 +00:00
jtc
badcc17a6d Add constants required by XPG3 1994-10-05 17:16:29 +00:00
jtc
62db8972b1 Updated bde's comments wrt. i387 control word settings so that they
describe NetBSD, rather than 386BSD 0.1.
Removed 386BSD and BDE control word constants, since we don't need and
will never use them.  However, The iBCS control word constant is kept,
since we might want to use it in the iBCS binary compatibility code.
1994-09-22 00:37:13 +00:00
mycroft
1c8e17fb63 Prototype spllower(). 1994-09-19 05:05:15 +00:00
jtc
bdd26b125c asm -> __asm (PR #463). 1994-09-10 01:07:08 +00:00
mycroft
0d3651018e Make kernel_pmap a macro that points directly to kernel_pmap_store. 1994-09-09 23:58:48 +00:00
mycroft
4116a4243e Various changes:
* Inline some functions.
* Eliminate redundant calls to pmap_page_index().
* Reduce the number of TLB flushes in accordance with the i386 SSWG.
* Inline pmap_remove() in pmap_remove_all().  (Most if it is unnecessary.)
* Allocate pv_entry's in pages, and keep a list of free entries in each page,
and a list of pages with free entries.  (Trying to reduce malloc() overhead,
and improve locality of reference.)
* Remove a couple of macros that aren't really useful.
* Remove pmap_kernel() completely.
1994-09-07 20:48:52 +00:00
jtc
b3b55d02f1 Misc changes to make this file more like the asm.h headers used by other
architectures:
	Renamed _C_FUNC() to _C_LABEL()
	Renamed _ASM_FUNC() to _ASM_LABEL()
	Merged _BEGIN_ENTRY with _ENTRY
	Renamed _END_ENTRY to _PROF_PROLOGUE

When assembling with profiling enabled, set up stack frame before calling
mcount() in _PROF_PROLOGUE.  Also omit emitting .long 0's, as they are no
longer used by the profiling code.
1994-09-02 05:02:47 +00:00
mycroft
d20de15399 Add USPACE. 1994-08-24 19:32:36 +00:00
mycroft
01c2a3243e Add flags for iBCS2 compat. 1994-08-15 22:19:44 +00:00
mycroft
5f27568164 Eliminate struct pte and struct pde. 1994-08-15 14:46:45 +00:00
mycroft
60280d9735 Don't allow VM86 mode, for now. 1994-08-13 06:55:47 +00:00
deraadt
ffb9d6e173 document cyrix configuration registers 1994-08-03 21:39:16 +00:00
cgd
3fbc338a62 define __BIT_TYPES_DEFINED__ for compatibility with things like BIND and nvi 1994-07-20 05:44:19 +00:00
mycroft
551f7bc780 Since we're no longer using xchg instructions, there's no reason to prefer
a q reg over and other.  Also, fix some types in the case of _POSIX_SOURCE.
1994-07-15 21:10:21 +00:00
deraadt
50b13742e4 _MACHINE_VARGS_H_ 1994-06-29 00:45:01 +00:00
mycroft
470742fbc0 profile_tick() is no longer needed. 1994-06-14 19:37:39 +00:00
mycroft
9a87e0deef Increase default NKPDE. 1994-06-02 09:29:01 +00:00
mycroft
65a32ed04c Add cpu_set_init_frame(). 1994-05-27 11:22:58 +00:00
mycroft
736870802e Add some more constants. 1994-05-24 11:54:24 +00:00
deraadt
f90fda8fd6 cyrix CPU_486DLC 1994-05-24 07:24:37 +00:00
cgd
979f061754 use __signed instead of signed, per Lite 1994-05-24 00:51:36 +00:00
cgd
4d7a245049 can't use u_long 1994-05-23 07:41:24 +00:00
cgd
d158bd71a6 add cpu_swapin 1994-05-23 03:00:56 +00:00
cgd
30f3283f7d cast to quiet warning 1994-05-23 02:59:44 +00:00
cgd
81193600f0 update from lite 1994-05-21 06:48:13 +00:00
cgd
9e66548df2 struct md_coredump 1994-05-21 06:48:05 +00:00
cgd
aa81f487b0 new way of naming things 1994-05-21 06:47:54 +00:00
cgd
7e860c9159 make cpu_wait a macro, and define cpu_coredump 1994-05-19 08:09:49 +00:00
cgd
c9d464003e USL copyright foo 1994-05-16 10:58:26 +00:00
mycroft
8d17074a03 Duh. 1994-05-13 11:12:38 +00:00
mycroft
a4ea4bf624 Need some more macros not in the 4.4-Lite version. 1994-05-13 10:47:57 +00:00
mycroft
65d3a66647 Do this better. 1994-05-13 10:40:19 +00:00
mycroft
365ea433a5 Needed for new profiling code. 1994-05-13 09:37:23 +00:00
cgd
70b556d027 new defn's 1994-05-09 03:23:03 +00:00
cgd
2636f2c86a cpu-dependent sysctl structs 1994-05-07 00:53:14 +00:00
mycroft
62b418de75 Correct comment. 1994-05-06 12:23:10 +00:00
mycroft
895e9ed71a Mostly stylistic change. 1994-05-05 07:39:28 +00:00
cgd
a0a7429482 lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around.  kill some unnecessary type and macro
definitions.  standardize clock handling.  More changes than you'd want.
1994-05-05 05:35:42 +00:00
cgd
4bbabd8e7a Rename a lot of process flags. 1994-05-04 03:41:12 +00:00
mycroft
fb12ba70e2 Only #include other stuff #ifdef KERNEL. 1994-04-08 04:24:16 +00:00
mycroft
3f5e4f423f Implement dynamic IRQ configuration and IRQ sharing. Inline spl*() calls.
Reorganize and clean up the relevant code.
1994-04-07 06:48:19 +00:00
mycroft
beb5680d81 This is #included multiple times. 1994-04-03 22:36:41 +00:00
mycroft
0234c30a00 Clean up #includes. 1994-04-03 22:28:23 +00:00
mycroft
3a8dd5d6b1 Clean up #includes. 1994-04-03 18:58:55 +00:00
mycroft
3ce26e4f42 Make sure we get psl.h. 1994-04-03 18:54:21 +00:00
mycroft
c075fee1b2 Clean this up a little. 1994-04-03 18:53:53 +00:00
jtc
91906bc019 Inline assembly [hn]to[nh][sl] functions used xchgb %h1,%b1 instead of the
faster (on the i486 & i586) rorw $8, %w1.  The inline assembly for GCC 1.X
already used rorw.  Using rorw is one byte longer, but we wouldn't be
inlining at all if we weren't optimizing for speed.
1994-03-16 17:20:24 +00:00
cgd
6c218e563f add basic integral types (a la sparc port) that new nvi wants. 1994-03-14 02:10:40 +00:00
jtc
427a14083c Added RCSID macro, for RCS ID's (what else?). 1994-03-12 01:23:21 +00:00
mycroft
3a57542a30 Back out previous change for now. 1994-03-09 07:58:39 +00:00
mycroft
a692d2185a Inline spl*() calls. 1994-03-08 13:24:46 +00:00
mycroft
917559fb12 Add `com' softintr. 1994-03-08 06:57:28 +00:00
hpeyerl
6d35bd3f7f Move some machine dependant disklabel stuff in here. 1994-02-22 17:16:41 +00:00
cgd
efa03b9a6c fix from Thomas Eberhardt <thomas@mathematik.uni-Bremen.de>:
byte swap macros used a variable "X" internally, which would get
screwed up if user programs #defined "X".  change uses of X to __x.
1994-02-12 07:23:49 +00:00
jtc
5235180083 Fix spelling error in Copyright notice 1994-01-28 23:43:26 +00:00
cgd
5444802ec5 getting and setting FP regs aren't appropriate yet 1994-01-28 07:06:32 +00:00
pk
24e4cb4bad move varargs stuff to arch/<machine>/include. 1994-01-27 00:18:18 +00:00
jtc
2a51c00a70 FPU control word of 0x137f doesn't work well in "real" world applications
so I've changed it to 0x127f.  64 bit precision causes errors in paranoia
and our math library, changing to 53 bit precision solves these problems.

I've been told that long double support in Gcc 2.5 requires 64 bit mode,
so a comprehensive FP strategy (compiler, library, FPU, emulator) will
have to be addressed in the future.
1994-01-25 19:58:30 +00:00
jtc
c4b7945dca My previous checkin didn't really change the FPU Exception Mask -- it was
trapped inside an #ifdef -- this commit changes it as I had originally
intended.
1994-01-17 18:10:01 +00:00
mycroft
900084ce24 Clean up deleted files. 1994-01-16 02:00:01 +00:00
cgd
ea52295d11 SHMMAXPGS now pegged at 1024, where it belongs 1994-01-16 01:36:07 +00:00
mycroft
c8b8051b89 Gratuitous formatting changes. 1994-01-11 13:30:40 +00:00
cgd
cb875046b8 LBL "/dev/audio" include file.
probably will need to be hacked if "the right things" are done to bsd_audio.c
1994-01-09 19:30:17 +00:00
cgd
8cdc8d997d define PT_STEP, and clean up some 1994-01-09 16:53:03 +00:00
mycroft
4eb1bbfb0b Use PSL_MBO and PSL_MBZ in the more traditional way. 1994-01-09 14:58:14 +00:00
cgd
23c144e8b3 code reorg 1994-01-08 11:13:52 +00:00
jtc
ceb7f9888d Change default NetBSD NPX control word to 0x137f.
This masks all FP exceptions (like every other UNIX system), and makes
it possible for gcc 2.5's long double support to work.
1994-01-08 01:19:06 +00:00
pk
6f81dd8136 Add .type directive to ENRTY().
Move PIC_ macros over here from SYS.h
1994-01-07 00:46:20 +00:00
mycroft
d5bb16fdb2 Move kernel to 0xf8000000. 1994-01-05 16:02:36 +00:00