Commit Graph

581 Commits

Author SHA1 Message Date
fredette 3a6e3c55cb Added the crucial "packed" attribute to the type 8 frame structure. 2001-08-16 23:45:12 +00:00
jdolecek a95aa7326a g/c _remque()/_insque(); use the C version in libkern 2001-08-13 06:10:09 +00:00
matt c7d43df086 If = is in a constraint, it must be the first character. 2001-08-05 04:40:03 +00:00
tsutsui 6be7c15373 bcopy -> memcpy 2001-07-28 13:21:26 +00:00
tsutsui 88fbdda31f bcopy -> memcpy 2001-07-28 13:08:34 +00:00
scw d228a76237 Use PCB_ONFAULT instead of hardcoding a value of 64. This is fine
for Amiga and Atari but not for other m68k ports which use m68k/pcb.h.
2001-07-12 17:17:45 +00:00
toshii 4866f1a22b Fix typo. s/extention/extension/ 2001-07-05 08:38:24 +00:00
christos 59abdecf4b Add a linux specific trapsignal() function. This is just a passthrough
on all platforms but the i386. On the i386 we look at T_PROTFLT and send
a SIGSEGV instead of SIGBUS. This makes allegro lisp 5.0 and pvs (a proof
verification system) to work.

XXX[1]: We need to go through each architecture and verify that we send
        the correct signal on each trap type.
XXX[2]: trap.c on all other architectures but i386 needs to be modified
        to s/trapsignal/(*p->p_emul->e_trapsignal)/g
2001-06-18 02:04:42 +00:00
thorpej 8eb3b954f1 Don't need to prototype child_return() here, it's in <sys/proc.h>. 2001-06-14 22:56:55 +00:00
fredette e20baedfd4 Added prototypes for w16zero and w16copy, found
in the new w16copy.s.
2001-06-14 15:49:05 +00:00
fredette c7154a0bfd Added two functions that zero memory and copy memory
in an optimized fashion using only properly aligned
8- and 16-bit accesses.
2001-06-14 15:38:16 +00:00
wiz 40ac848024 Fix various misspellings of compatible/compatibility. 2001-06-11 01:50:48 +00:00
mrg 67afbd6270 use _KERNEL_OPT 2001-05-30 11:57:16 +00:00
chs 6ebe782061 mcount() is named __mcount() on ELF, do the right thing. 2001-05-27 01:01:08 +00:00
chs f5065c9c55 change the one non-extended asm back to using a single % before a
register name.  the rule is that extended asms should have the
regsiter-prefix %s escaped by doubling them, but non-extended asms
don't do the escaping thing, so there the %s should not be doubled.
2001-05-27 00:58:57 +00:00
fredette 878353d5a8 Added support for kernel cores on the sun2. This
increases sizeof(struct cpu_kcore_hdr).
2001-05-21 14:48:58 +00:00
fredette 4cb4a99c18 Don't define __LDPGSZ if it's already defined. 2001-05-18 15:34:28 +00:00
fredette 69c174610f Only on the 68010, define a different mcount() function,
one that doesn't use the memory-indirect addressing mode.
2001-05-18 15:33:03 +00:00
fredette 8160155f03 Only on the 68010, assemble versions of copypage
and zeropage that use the 68010's loop mode.
2001-05-18 15:31:38 +00:00
chs 1aeca5a83b define VECTOR() and friends in non-_KERNEL environments too. 2001-05-12 22:27:05 +00:00
simonb 6a511e05e2 Be consistent with limit constants:
- use "U" suffix for unsigned constants
 - use "L" suffix for long constants
 - use "UL" suffix for unsigned long constants
 - use hexadecimal instead of decimal

Fixes build problems with vi (now that warnings/errors are enabled) on
mips, powerpc and arm platforms.
2001-05-04 15:12:32 +00:00
fredette 53b83715c9 Now only define MACHINE_ARCH, _MACHINE_ARCH, and
MID_MACHINE if they haven't already been defined.
2001-05-03 20:59:55 +00:00
fredette 2b9b967cc2 Add a CPU_68010 macro. 2001-05-03 20:55:11 +00:00
fredette 166d9e1ede Add an EXTBL macro. 2001-05-03 20:53:44 +00:00
kleink fe3c9ceaf7 * Move definitions of exact-width integer types from <machine/types.h>
to <sys/types.h> and <sys/stdint.h>.
* Add a new C99 <stdint.h> header, which provides integer types of
  explicit width, related limits and integer constant macros.
* Extend <inttypes.h> to provide <stdint.h> definitions and format
  macros for printf() and scanf().
* Add C99 strtoimax() and strtoumax() functions.
* Use the latter within scanf().
* Add C99 %j, %t and %z printf()/scanf() conversions for
  intmax_t, pointer-type and size_t arguments.
2001-04-28 15:41:28 +00:00
kleink 99054d7a6c Add definitions for C99 fastest minimum-width integer types. 2001-04-26 16:25:19 +00:00
thorpej 1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
kleink f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink 739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
kleink 9133b51cd8 Replace the 'unsigned __COMPILER_INT64__' construct with a new name,
__COMPILER_UINT64__, to be supplied - if such a case is made, it shouldn't
be assumed that the unsigned type-specifier may be applied to it.
2001-04-12 22:01:18 +00:00
leo 3aabea5c70 Remove '_KERNEL' conditionalizing. This break userland apps.
Noted by Steve Allan.
2001-04-09 05:35:32 +00:00
tsutsui 06c28be1fe Install byte_swap.h on make includes. 2001-04-06 14:11:20 +00:00
is 3a27b85296 This only works with data registers. 2001-04-04 19:53:05 +00:00
leo a22b0cbf4d Optimize bswap16() and bswap32() functions to inline assembly. 2001-03-30 20:00:05 +00:00
fredette 3eb7866aaa Added support for the 68010 bus error frame. 2001-03-28 23:08:15 +00:00
is 8931aeb7a9 Don't use the frames' provided EA yet; something is wrong. 2001-03-01 22:01:52 +00:00
chs c5030d24f4 rename round() to fpu_round() to avoid a name conflict with
the "round" assembly function in FPSP when building with ELF.
2001-02-18 20:05:58 +00:00
chs 59674580ab missed an underscore in previous. 2001-02-07 23:30:27 +00:00
chs aaf5efe492 fix previous to work with a.out as well. 2001-02-07 06:13:21 +00:00
chs f889fd6ff9 remove signal trampoline stuff since it'll never be used in the kernel.
clean up the ELF support.
2001-02-05 12:37:33 +00:00
chs 5f244b1055 conditionalize the ddb hook on DDB && DEBUG_FPE rather than DDB && DEBUG,
since that's the condition under which we include the header file that
allows it to compile.
2001-02-05 12:35:13 +00:00
jmc ece49e13a9 Back out last change. m68k.h is now in cpu.h (which got updated in between
my noticing this problem here on a sun3).
2001-02-04 23:53:31 +00:00
jmc 36f1b05b1f Include m68k/m68k.h to pickup definition for fputype. 2001-02-04 10:13:08 +00:00
jdolecek d5d431e8ae make db_[e]regs[] const 2001-01-18 10:54:27 +00:00
scw 7aaf4adfb6 const'ify the 1st parameter of db_var_short() to account for the
recent "struct db_variable" change.
2001-01-18 09:49:02 +00:00
is b90c4c82d9 Make this actually sort-of-work for 68060 w. disabled FPU (tested), 68LC060,
and I suspect, 68LC040 and 68040V machines. Method used:

1. do NOT use the frames effective address at all
2. do NOT use the frames next instruction address, but
3. restore the "this instruction" pc into the pc field of the frame at the
   beginning of the emulation, if we got a frame format 4.

TODO:
A. find the bug in the usage of the frame EA, and revert to using it.
B. find the bug in the usage of the frames next instruction address, and
   consider whether it's worthwhile to use it.
C. make the emulation complete.... FEXP FETOM1, and the trigonometric functions
   are missing.
2001-01-05 19:54:30 +00:00
takemura c5fd828440 replace 'long long' with int64_t to compile stand alone program with
compiler other than GCC.
2001-01-03 10:08:55 +00:00