Commit Graph

308 Commits

Author SHA1 Message Date
kleink 6d25a1e180 Don't define __HAVE_LONG_DOUBLE for __mc68010__. 2003-10-30 13:18:24 +00:00
mycroft c948a7f77b Allow a port to override MAXPHYS. 2003-10-30 06:13:19 +00:00
kleink dbecd8cc2e Similar to sparc, make available the extended-precision definitions for
_KERNEL; the FPE package will require it once it's used on sun2.
2003-10-28 21:23:47 +00:00
kleink 91af1eaa96 #define __HAVE_LONG_DOUBLE on platforms which implement a distinct
`long double' type.
2003-10-28 00:55:28 +00:00
kleink 964d6747b5 Err, rename some members added in previous to make them reflect their
semantics better.
2003-10-27 01:11:46 +00:00
cl 16d49327a2 appease lint's ``warning: nonportable bit-field type'' in MD header 2003-10-27 01:05:08 +00:00
kleink b37192f049 For convenient use in libc, add unions of the C floating types and their
corresponding structure definitions.
2003-10-26 21:46:46 +00:00
kleink 95971b8759 Correct the position of the QUIETNAN bit. 2003-10-26 20:59:51 +00:00
kleink a3fabb9e7f Use <sys/ieee754.h> where applicable. 2003-10-26 20:55:30 +00:00
kleink 7bc235809e Hide the extended-precision definitions from __mc68010__. 2003-10-26 10:08:02 +00:00
kleink 422697679e * Move the definitions for types other than single-precision and double-
precision back to machine-dependent headers.  C99 has no strict
  requirement which, if any, extended-precision type `long double' must
  match, and even between 80-bit formats there are differences in
  implementation (m68k vs. x86).
* On arm, consider __VFP_FP__.
2003-10-23 23:26:06 +00:00
kleink e015c8ea64 Account separately for the explicit integer bit in extended-precision
format, due to its role in denormal representation; inspired by communication
with Charles Hannum.
2003-10-23 16:57:20 +00:00
kleink d216ee1de2 Make struct ieee_ext actually match the layout of m68k extended-precision. 2003-10-23 15:04:00 +00:00
briggs 093821886e Define SIGTRAMP_VALID(v). 2003-10-18 17:57:06 +00:00
thorpej 901da40cf9 Add some accessor macros for the ucontext:
* _UC_MACHINE_PC() - access the program counter
* _UC_MACHINE_INTRV() - access the integer return value register
* _UC_MACHINE_SET_PC() - set the program counter (this requires
  special handling on some platforms).
2003-10-08 22:43:01 +00:00
nathanw 4d59420344 Move __cpu_simple_lock_t and __SIMPLELOCK_{UN,}LOCKED to machine/types.h
so that they can be used in a namespace-friendly way.
2003-09-26 22:45:41 +00:00
christos ecfb034cb3 constify siginfo/trapsignal 2003-09-25 22:04:17 +00:00
cl 3337c2e727 move #defines back to frame.h 2003-09-23 11:33:50 +00:00
cl 9289d63920 SA_SIGINFO support for m68k 2003-09-22 14:18:33 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
kleink 776138ea69 Rename <sys/float_ieee.h> to <sys/float_ieee754.h>, following libc's
convention for these.
2003-05-12 15:22:53 +00:00
scw 8c5c893bf7 Add a BKPT_ADDR() macro which gives MD code a chance to munge a
breakpoint address before it's used. Currently a no-op on all but sh5.

This is useful on sh5, for example, to mask off the instruction
type encoding in the bottom two address bits, and makes it possible
to do "db> break $rXX" instead of manually munging the address.
2003-04-29 17:06:03 +00:00
bjh21 4be7a2dcf3 Add a new feature-test macro, _NETBSD_SOURCE. If this is defined
by the application, all NetBSD interfaces are made visible, even
if some other feature-test macro (like _POSIX_C_SOURCE) is defined.
<sys/featuretest.h> defined _NETBSD_SOURCE if none of _ANSI_SOURCE,
_POSIX_C_SOURCE and _XOPEN_SOURCE is defined, so as to preserve
existing behaviour.

This has two major advantages:
+ Programs that require non-POSIX facilities but define _POSIX_C_SOURCE
  can trivially be overruled by putting -D_NETBSD_SOURCE in their CFLAGS.
+ It makes most of the #ifs simpler, in that they're all now ORs of the
  various macros, rather than having checks for (!defined(_ANSI_SOURCE) ||
  !defined(_POSIX_C_SOURCE) || !defined(_XOPEN_SOURCE)) all over the place.

I've tried not to change the semantics of the headers in any case where
_NETBSD_SOURCE wasn't defined, but there were some places where the
current semantics were clearly mad, and retaining them was harder than
correcting them.  In particular, I've mostly normalised things so that
_ANSI_SOURCE gets you the smallest set of stuff, then _POSIX_C_SOURCE,
_XOPEN_SOURCE and _NETBSD_SOURCE in that order.

Tested by building for vax, encouraged by thorpej, and uncontested in
tech-userlevel for a week.
2003-04-28 23:16:11 +00:00
bjh21 2020a72f18 Use <sys/float_ieee.h> rather than <sys/math_ieee.h>, which doesn't exist. 2003-04-20 12:57:43 +00:00
christos a2dfb1b570 PR/3012: Greg A. Woods: Write all float.h files [except the vax of course]
in terms of float_ieee.h
2003-04-19 23:05:28 +00:00
thorpej cc2c493bc4 Use PAGE_SIZE rather than NBPG. 2003-04-02 07:35:54 +00:00
kristerw 820df2464a Remove unneeded cast that prevents PC_REGS from being used as lvalue. 2003-03-30 02:03:12 +00:00
tshiozak 31e2cbf0b5 add some ISO C 1995 I18N functions and types:
btowc, wctrans, towctrans, wcscoll, wcsxfrm, wctype_t and wctrans_t.
2003-03-02 22:18:11 +00:00
kent cd7d9faeaf Introduce BUS_DMA_NOCACHE, and bus_dmamem_map() of i386 supports it. 2003-01-28 01:07:51 +00:00
thorpej 5819507df3 Merge the nathanw_sa branch. 2003-01-19 16:30:13 +00:00
thorpej a50e3bc1cb Merge the nathanw_sa branch. 2003-01-17 22:58:53 +00:00
thorpej e8cc3884de Rename __LDPGSZ to AOUT_LDPGSZ, to accurately reflect what it is. 2002-12-10 17:14:02 +00:00
lukem 0635de35a3 Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more. 2002-11-26 23:30:07 +00:00
chs f9c2080322 merge pmap.c for all 4k-page motorola-MMU (or compatible) m68k platforms. 2002-11-05 07:41:17 +00:00
chs 6348674004 merge pmap.h for all 4k-page motorola-MMU (or compatible) m68k platforms. 2002-11-03 19:56:27 +00:00
chs 42a0d8fa15 use "static __inline" instead of "extern __inline" so that we can
build without optimization.
2002-11-03 01:34:41 +00:00
chs 40e5b8394f finish conversion to the common m68k cacheops:
add support for machine-specific flavors of the ops for off-chip caches.
many thanks to Izumi Tsutsui for his help with this.
2002-11-02 20:03:04 +00:00
chs cb76676a56 merge pte.h for m68k w/ motorola or compatible MMU
(only 4k-page platforms so far).
2002-10-14 05:18:45 +00:00
wiz b1c7ac0e6d "definitions" has lots of 'i's, but that's not reason to leave one out. 2002-09-29 23:23:56 +00:00
simonb 63096043b3 Use "#define\t" instead of "#define ". 2002-09-22 08:30:56 +00:00
gmcgarry dca80f08fd Add __HAVE_MD_RUNQUEUE flag for MD code to override MI run queue primitives. 2002-09-22 04:11:32 +00:00
briggs 0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
drochner 79c6003c2b make sure struct proc and struct frame are declared 2002-07-13 12:30:11 +00:00
scw bef00d4895 m68k syscall rototill:
- Switch all m68k-based ports over to __HAVE_SYSCALL_INTERN.
 - Add systrace glue.
 - Define struct mdproc in <m68k/proc.h> instead of <machine/proc.h>.
   (They were all defined exactly the same anyway, other than a couple
   of the MDP_* flags.)
2002-07-13 08:28:40 +00:00
thorpej 584c5c23d3 During signal delivery, arrange to have the signal handler invoked
directly, using the trampoline only for the return path.  Saves a
"jsr" in the trampoline.

Reviewed, tested and OK'd by Steve Woodford.
2002-07-04 01:50:39 +00:00
thorpej 4c0113def4 Swap the order of the sigcontext and hardware state in the sigframe. 2002-06-23 21:31:12 +00:00
briggs 0844eedc55 bus_dma(9) pulled pretty much verbatim from next68k. 2002-04-10 04:36:20 +00:00
simonb d9ab16ba2f Purge CLSIZE, CLSIZELOG2 and MCLOFSET.
Be consistant in the way that MSIZE, MCLSHIFT, MCLBYTES and NMBCLUSTERS
  are defined.
Remove old VM constants from cesfic port.
Bump MSIZE to 256 on mipsco (the only one that wasn't already 256).
2002-02-26 15:13:19 +00:00
simonb 2d8577fb83 Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
 - Use the above for the __infinity and __nan constants on all
   architectures that use the standard ieee754 representation of
   those constants.
 - Add a single copy of various ieee754 math functions (frexp, isinf,
   isnan, ldexp and modf) that had numerous duplicates among the
   arch-specific directories.
 - Use the above functions on all architectures where the generic C
   versions where used.  Architectures that had local assembly
   routines are untouched (for those functions only).
2002-02-19 13:08:12 +00:00
thorpej 2ef9623f96 Define EF_CPU32 and EF_M68000. 2002-01-28 21:34:48 +00:00