Commit Graph

495 Commits

Author SHA1 Message Date
kleink ed6d5be482 Sync with libc: use _ALIGN_TEXT from <machine/asm.h>. 1999-08-23 09:07:35 +00:00
eeh 4f46ad62b9 Find the udivrem.m4 in the proper directory. 1999-05-09 18:51:36 +00:00
pk 502e9c5778 Add .PATH.m4 1999-05-09 09:16:15 +00:00
eeh 06e7ea9afe Allocating a byte-array and then accessing it as 32-bit integers just won't work
on any machine that has alignment restrictions.
1999-05-09 00:22:46 +00:00
drochner e6b49c7863 move intoa() from libsa:net.c to libkern, turn inet_ntoa() into a macro,
nuke ip_convertaddr()
1999-05-07 14:49:52 +00:00
drochner 192b3c733c Build libraries for kernel/standalone code from within their compilation
directories and use .PATH to lookup the source files.
(Formerly, the libs were built from the source dirs, with MAKEOBJDIR
set to the compilation directory.)
This solves 2 problems:
-"mkdep" and "make" are now consistent about the file lookup, this fixes
 bad interactions with amd reported in PR bin/7374 (Arne Juul) and
 lossage reported by Andrew Gillham ("obj" dirs and relative paths still
 don't work well together)
-kernel compile trees can be moved around without forcing a new
 "make depend" - fixing PR kern/4021 by Martin Husemann
1999-05-07 14:28:50 +00:00
tsubai a5bf1bf4a2 Copy from libc. 1999-05-05 12:36:40 +00:00
simonb 955a0aba21 Until <bsd.lib.mk> is fixed, don't try to guess whether or not to
use abicalls in kernel source.
1999-04-20 00:45:24 +00:00
ws 5423093850 Modify syncicache on PowerPC from an inline to a real function.
Support different cache line sizes with the same object code in userland.
While here, move the function to implementation name space.
1999-04-17 21:16:45 +00:00
drochner 2269d36c97 make libkern compile in userland - for testing purposes 1999-04-13 19:00:30 +00:00
drochner b6ab6f5dc1 This was an n_long, not u_long, so u_int32_t is correct. 1999-04-12 17:23:23 +00:00
ross 4634c0e3d4 libkern just got an inet_addr(), but it won't compile, no prototype. Cleanup...
* Add prototype to libkern.h.
* Remove the almost-identical-copy from libsa/net.[ch].
* Change its type back to the (wrong, but harmless) historical one. (u_long)
* Kill the XXX local prototype in nfs_bootparam.c
1999-04-12 01:05:01 +00:00
gwr c0300346be Add inet_addr.c (for nfs_bootparam.c) 1999-04-11 22:08:06 +00:00
simonb 6ce60662b5 Sync with src/lib/libc/string/bcmp.c 1999-04-01 00:30:39 +00:00
simonb 5e5bf63bc1 Don't add .abicalls if NO_ABICALLS is defined even if ABICALLS is defined. 1999-03-17 13:31:43 +00:00
jonathan 4c6134d7c8 Use merged memcpy()/memset() based on old bcopy rather than C-coded memmove.
TODO: change register usage so memcpy()/memmove() is default, put test
for back-copy before memcpy() and back-copy loop after memcpy().
1999-03-15 07:04:04 +00:00
jonathan e22fd3b59d Fix bug in construction of word-length version of 'c'.
Preserve input string and return it as per userlevel spec.
1999-03-15 06:34:10 +00:00
pk fabda9a224 Sync with libc 1999-03-05 09:18:32 +00:00
drochner 66f3455141 make the mipse[lb]->mips translation really work
(the S/// doesn't work as I'm now telling the 3rd time),
put the translation onto a separate line to make it more understandable
1999-03-04 19:46:09 +00:00
jonathan 3eeb52dee0 Makefile ${MACHINE_ARCH} changes for mips{eb,el}, as suggested by
Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
1999-03-03 12:00:18 +00:00
chs 5e59fee53a use RODATA(__ffstab) instead of ENTRY().
this makes profiling kernels work on the sparc.
1999-02-24 16:27:01 +00:00
chs b2546175a6 don't list any *.S files in SRCS multiple times, once is enough. 1999-02-24 16:25:43 +00:00
chs 5a0258140e no need to add ${OBJS} to POBJS here, bsd.lib.mk does it automatically. 1999-02-24 16:22:42 +00:00
simonb faca98eb71 Add memset.S instead of memset.c, and remove __main.c. 1999-02-23 11:06:38 +00:00
hubertf 56f2d188fc RCS ID police 1999-02-15 04:54:34 +00:00
lukem dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
pk 14b924800a Can't include libkern.h twice which is what happens if _KERNEL is on.
For now, protect here with _STANDALONE.
XXX - must probably fix sys/systm.h
1999-02-11 15:39:31 +00:00
pk a24b899029 Pull libkern.h in. 1999-02-11 09:13:03 +00:00
bouyer ca083f6095 Sync with libc version. 1999-02-05 16:34:13 +00:00
fvdl 50217a8b50 Check for _STANDALONE as well as _KERNEL to make it compile again. Fold
some includes together in one #if as a result of this.
1999-02-04 15:26:42 +00:00
explorer 24729226e5 sync with userland 1999-02-04 05:36:36 +00:00
matthias 437e1d2f00 sync with libc version 1999-02-01 21:35:36 +00:00
jonathan 9bd63525f8 memset, derived from old kernel bcopy.
Uses negative register offsets in memory writes, to avoid r4k silicon bugs.
1999-01-28 03:08:57 +00:00
mycroft ef50bbf452 Sync with libc. 1999-01-22 11:01:32 +00:00
mycroft 6b11ebb854 Sync with libc. 1999-01-22 09:17:47 +00:00
ragge 482b6ca70d #include <machine/asm.h> instead of (nonexistent) "DEFS.h". 1999-01-19 22:54:53 +00:00
castor 2e0007e017 Make bswap32 be the "real" entrypoint and htonl, ntohl aliases. 1999-01-18 01:24:55 +00:00
mrg 24fb50ca7d update from libc; RCSID, register. 1999-01-17 01:30:06 +00:00
thorpej e2a60769a0 Fix an unterminated macro call. 1999-01-15 20:34:31 +00:00
bouyer dc306354b0 Move the bswap functions from libutil to libc (this bups the
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
castor cfdc52bfa9 Break out utility functions from locore.S 1999-01-15 08:44:27 +00:00
eeh a5f6f68714 Fixup ffstab naming conflict between locore.s, libkern/arch/sparc/ffs.S and
libkern/arch/sparc64/ffs.S
1998-11-26 19:32:10 +00:00
eeh 8cc6435bf8 Forgot to specify a label for the branch target. Oops. 1998-11-26 19:08:21 +00:00
drochner 337bfd46a5 change handling of libkern:
-sys/lib/libkern builds as library per default (as it was documented all
 the time)
-ports able to LKM set "KERN_AS=obj" explicitely in their Makefiles
1998-10-15 18:46:37 +00:00
leo e325a47307 Fix "unused variable `c'" warning. (From Julian Coleman) 1998-09-14 11:50:59 +00:00
ragge 35662aa6e6 Include <sys/param.h> instead of <sys/types.h>, to get mem* inlines.
(At least on vax)
1998-09-12 08:31:23 +00:00
jonathan 008816ea4f Changes to sys/arch/mips from ARC port, from Noriyuki Soda <soda@sra.co.jp>.
Adds (most) support for ARC platform to port-independent mips code.

Some changes (e.g., clean up of overlapping CPU/FPU ids) inspired by
comparison to the OpenBSD 2.1 codebase of Soda's ARC port.

Open issues:
 * Still no support for r4600 or mipsIV CPUs with two-way L1 cache.
   Code derived from Per Fogelstrom's OpenBSD source  doesn't work
   on mips3 pmaxes with L2 cache.

 * Still some port-specific  #ifdefs, for interrupt enable and
   pmax L2 cache-size.  Needs more thought, but overlaps with
   work-in-progress by Tohru and Tsubai on spl()s and related stuff.
1998-09-11 16:46:31 +00:00
lukem c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
eeh 26d2d906c7 Some more 64-bit cleanup. Now everything compiles. 1998-08-30 15:32:16 +00:00
enami 47e906e5d9 As a temporary work around to make kernel links again, protect
renaming of quad type library only when !__NetBSD__ && sun && __svr4__.
XXX. Probably need to check __GNUC_MINOR__.
1998-08-30 05:29:39 +00:00
eeh d581aadc3e Some more 64-bit-ification. 1998-08-29 18:16:56 +00:00
tls 8a146cd406 update for b->mem change in sys/kern; now we need memcmp and memset, not just memchr. AFAIK, memcpy is provided by the compiler or by locore on this platform. 1998-08-20 17:56:22 +00:00
mycroft cc8a78e783 Assign my copyrights to TNF. 1998-08-15 04:42:42 +00:00
mycroft df9baf2311 Assign copyrights to TNF. 1998-08-15 03:51:30 +00:00
mycroft 6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
ragge 8fdb1c8ebe Lots of kernlib functions rewritten as inline macros. 1998-08-08 11:18:32 +00:00
perry 242ff31b91 update bzero.c to stub from libc/string 1998-08-04 06:27:08 +00:00
perry 974739923b replace several special targets with stub .c files, as in libc/string 1998-08-04 05:01:58 +00:00
perry 4d4aa090e9 add memcmp.c 1998-08-04 03:40:43 +00:00
perry 16039920c8 remove memcpy.c -- I forgot this gets built anyway 1998-08-04 03:40:12 +00:00
perry 612c53d05f add memcmp.c 1998-08-04 03:39:49 +00:00
perry 0b8f8ffda2 remove memmove.c -- I forgot this gets built anyway 1998-08-04 03:38:28 +00:00
perry 58af7a969a add memcmp.c memcpy.c memmove.c 1998-08-04 03:37:03 +00:00
perry a611b37e29 add memcmp.S memmove.S 1998-08-04 03:35:59 +00:00
perry 6ee9cbf929 add memcmp.S memmove.S 1998-08-04 03:30:30 +00:00
perry 5ede68eddb add memcmp.c memmove.S 1998-08-04 03:17:39 +00:00
perry e0f41ebe62 add memmove.S 1998-08-04 03:16:19 +00:00
perry 542f66b672 add memmove.S 1998-08-04 01:41:26 +00:00
perry 6ea886d397 add memcmp.S 1998-08-04 01:40:57 +00:00
perry a8627d22ba Fix formatting, and add memmove.S 1998-08-04 01:14:36 +00:00
perry 534fb67f27 fix silly comment typo 1998-08-03 20:32:48 +00:00
perry 2b8a659f68 make libkern build memmove() properly 1998-07-31 23:44:41 +00:00
drochner d408ddc6c7 Make the combination "profiled kernel" and "${KERN_AS} == "library""
work too. (mcount.po was forgotten)
1998-07-19 18:35:16 +00:00
christos 16a9632e4d Add a small string pattern matching function to facilitate pcmcia cis string
matches.
1998-06-21 18:43:35 +00:00
eeh 9979577545 Second half of the sparc64 stuff. 1998-06-20 05:18:14 +00:00
hannken 3028e5f93b Didn't find sha1.h compiling sys/arch/sparc/stand/boot. 1998-05-29 16:50:14 +00:00
matthias 6511ae105e bugfix from libc. 1998-05-28 22:07:59 +00:00
matthias c22871bec0 refresh from libc. 1998-05-27 20:07:48 +00:00
explorer 7c17ff519d add sha1.c, and build it. 1998-05-27 00:46:32 +00:00
pk 4d48eb7a4b Sync with libc. 1998-05-07 22:15:23 +00:00
matthias 35d6e9297e Prepare assembler source files for -mrtd kernels. 1998-04-03 22:59:28 +00:00
cgd 066f971d37 copy from libc:
limits.h if user-land, machine/limits.h if kernel or standalone
1998-03-27 05:35:47 +00:00
cgd 33b3e7101b sync with libc 1998-03-27 01:29:58 +00:00
fvdl e5bc90f40c Merge with Lite2 + local changes 1998-03-01 02:20:01 +00:00
mycroft a81d3c2db8 Fix omission in last. 1998-02-22 15:24:08 +00:00
mycroft bf94e4e2cd Copy up. 1998-02-22 15:11:28 +00:00
mycroft 8a66afbcba Move random() from kernel. 1998-02-22 09:33:27 +00:00
mycroft 8ad4f24f50 Add memcpy() and memset(), and sort. 1998-02-22 09:18:38 +00:00
mycroft 79376487cb Sync with libc. 1998-02-22 09:13:16 +00:00
mycroft 4477c62148 Add various things from libc. 1998-02-22 09:08:34 +00:00
mycroft 5ba0f1cae2 Move random.S from kernel. 1998-02-22 08:53:33 +00:00
mycroft 0625ac391b Use the new .S files. 1998-02-22 08:45:04 +00:00
mycroft 799bd513de Sync with libc, and add random.S. 1998-02-22 08:43:27 +00:00
mycroft 52541a2efb Move random.S from arch/i386/i386. 1998-02-22 08:14:56 +00:00
mycroft 28edc3d334 Fix typo. 1998-02-22 07:33:11 +00:00
mycroft cf02652abc And rindex.S... 1998-02-22 07:21:32 +00:00
mycroft 6b7f2d0f92 And index.S... 1998-02-22 07:20:24 +00:00
mycroft b65caec4a0 Add strchr.S and strrchr.S. 1998-02-22 07:03:08 +00:00
mycroft 8c0dc3f1e8 Add these as well. 1998-02-22 07:01:44 +00:00
mycroft 196103b90b Don't list bcopy.c here, since we only want memcpy() and not bcopy().
XXX What a kluge!
1998-02-22 06:57:31 +00:00
mycroft 650b9558c0 Need bcopy.c to generate memcpy(). 1998-02-22 06:55:42 +00:00
mycroft ab530e2db7 Build memcpy() out of bcopy() by default. 1998-02-22 06:54:38 +00:00
mycroft 6e8ffbdd58 Use the assembler version of memcpy(). 1998-02-22 06:49:57 +00:00
mycroft 354ce440d2 We need memcpy(). 1998-02-22 06:44:44 +00:00
mycroft 943421399e Sync with libc. 1998-02-22 06:40:17 +00:00
mycroft ab7671a45e Add some missing things. 1998-02-22 06:08:37 +00:00
mycroft e1a2c2904a Pull in [hn]to[nh][ls].c. 1998-02-22 05:54:54 +00:00
mycroft 01277a19c0 Don't even think about cdefs.h here... 1998-02-22 05:10:55 +00:00
cgd 26d7b63bd3 make sure that LORDER, TSORT, AR, NM, RANLIB, and SIZE are correctly
and consistently set when doing kernel library builds.
1998-02-07 00:11:29 +00:00
mrg 1a8c7604f4 initial import of the new virtual memory system, UVM, into -current.
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)
1998-02-05 07:59:28 +00:00
thorpej 529b95c8d9 Add offsetof(). 1998-01-28 02:22:14 +00:00
cgd b92943e80a update to match (now-fixed) libc rules for strchr and strrchr.
Brokenness pointed out by Matthias Drochner.
1998-01-23 19:01:17 +00:00
drochner 7e5c045bb6 remove prototypes for deprecated index() and rindex() 1998-01-23 12:56:39 +00:00
drochner 8968860bab add prototype for index() 1998-01-22 15:42:24 +00:00
cgd 4369378a6c add rules like those in libc to build strchr() and strrchr() (the latter
is being added to libkern by this commit).  remove strchr.c from
archs' Makefile.inc files to go along with this.  (If an arch has
a .S version, it should be copied down and added to the apropriate
Makefile.inc.)
1998-01-21 21:23:18 +00:00
cgd 61a021f836 sync with libc 1998-01-21 21:17:08 +00:00
cgd 0bc1621f94 add strrchr 1998-01-21 21:16:52 +00:00
cgd 40894919ec sync with libc version. (just rcs id changes.) 1998-01-21 19:43:23 +00:00
perry 24920eefb1 RCSID Police. 1998-01-05 19:40:40 +00:00
gwr f5bbc0b3ec Copied from src/lib/libc/net/inet_pton.c
and adapted for kernel and libsa use.
1997-12-12 20:14:01 +00:00
mark 0053558a70 Fix a glaring bug in the assembly stubs for memcpy() and memmove() that
meant the src address was being returned rather than the dst address.
Spotted by Chris Demetriou.
1997-11-22 03:27:12 +00:00
gwr 5e82d82867 Pass down the values of: AR NM RANLIB
(Fixes PR#4426 from SAITOH Masanobu)
Also pass down LORDER TSORT.
1997-11-04 21:18:24 +00:00
gwr 0919e2346b Use LORDER, TSORT 1997-11-04 20:33:11 +00:00
mjacob 23a59f497a Add missing NULL define for KERNEL case and prototype into libkern.h. 1997-10-24 18:10:30 +00:00
chuck cf924e3bc0 add memchr() to libkern 1997-10-24 15:32:24 +00:00
mark 680595e7c3 Fix extra 'S' character typo that resulted in the condition codes being
incorrectly internally on certain divides.
Handle the case where the internal result appears negative. This condition
can occur when dividing MIN_INT by certain values.
1997-10-17 18:35:19 +00:00
lukem 7656b49be6 rcsid fascism 1997-10-13 11:55:15 +00:00
mark 4428e19e76 Updated with new files from libc. 1997-10-12 21:26:37 +00:00
mark ce8b7a418a Copy files over from libc. 1997-10-12 21:24:00 +00:00
mark 8121735fb0 This file is replaced by divsi3.S 1997-10-12 21:23:36 +00:00
bouyer 7a337eca27 Ops, forgot to 'cvs add' theses. Pointed out by enami tsugutomo. 1997-10-12 13:27:59 +00:00
scottr c49762b3d3 Implement assembly byte-swap functions. 1997-10-11 04:28:40 +00:00
bouyer 6ab3092b11 Add byte-swapping functions (bswap16, bswap32, bswap64) to libkern.
Only assembly version for i386 bswap16 and bswap32 for now (bswap64 uses
bswap32). Contribution of assembly versions of these are welcome.
Add byte-swapping of ext2fs metadata for big-endian systems.
Tested on i386 and sparc.
1997-10-09 15:42:19 +00:00
cgd 6ac982f2a0 mark prototypes for static inline functions as possibly unused (with
__attribute__ ((unused))), to avoid generating warnings when compiling
without optimization but with most ports' default warning flags.
1997-07-07 22:45:34 +00:00
jtc b92f5604b7 sync with libc 1997-06-20 02:08:04 +00:00
drochner aab2edd1d4 Add prototype for bzero() (since it is implemented here). 1997-06-13 14:27:04 +00:00
cjs 7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs 75380e08a1 Use new NOINSTALL option for libraries that are used only during the build
of a program, and not installed into the final system.
1997-05-30 01:55:09 +00:00
jtc 94815a35ee Sync with libc 1997-05-15 16:20:54 +00:00
jtc f99d42b623 Sync with libc. 1997-05-13 19:32:01 +00:00
mycroft 185b24dd5b Use libinstall::, not install:, to prevent instaling LIB. 1997-05-07 16:20:26 +00:00
thorpej 13f5393c88 Build md5c.c 1997-04-30 00:53:38 +00:00
thorpej f2afed0bb1 Add the libc md5 implementation to libkern. 1997-04-30 00:53:02 +00:00
thorpej 0b07209248 Allow depend target to be parallized, from Andrew Wheadon
<andrew@wipux2.wifo.uni-mannheim.de>, PR #3257.
1997-03-07 00:50:30 +00:00
cgd 72a6422a5e allow includers to specify library-specific CPP flags via ${LIB}MISCCPPFLAGS 1997-02-16 21:25:18 +00:00
cgd 3ca5f41d59 clean up substantially. Transform clean, depend, cleandir targets from ::
to :, so they can be used e.g. with <bsd.prog.mk>.  Standardize variable
names used to configure kernel libraries.

Variables used by these Makefile.inc's are:

S		must be set to the top of the 'sys' tree.
${LIB}DST	may be set to the location of the directory where library
		objects are to be built.  Defaults to ${.OBJDIR}/lib/${lib}.
${LIB}_AS	may be set to 'obj' to build a object from the library's
		object files.  (Otherwise, a library will be built.)
		Defaults to 'library'.
${LIB}MISCMAKEFLAGS
		Miscellaneous flags to be passed to the library's Makefile when
		building.  See library's Makefile for more details about
		supported flags and their default values.

(where LIB is KERN, SA, or Z, and lib is kern, sa, or z, depending on which
library's Makefile.inc is being discussed.)
1997-01-23 22:29:07 +00:00
cgd d867ed50cc add strchr() to libkern. strchr.c copied from libc's "index.c", but with
appropriate definitions so that it'll build strchr(), and so that it builds
correctly in libkern (needed to #define NULL).
1997-01-18 02:33:38 +00:00
christos 3463f39651 PR/2981: use ${VAR:Q} instead of '${VAR}' to avoid quoting problems 1996-12-26 21:32:37 +00:00
fvdl 8f3917c76e Move _MCOUNT_DECL prototype back here again (grmbl). 1996-12-07 12:58:25 +00:00
fvdl 4827ca5603 Remove _MCOUNT_DECL prototype declaration of _mcount() again; move it
to <machine/profile.h>
1996-12-05 10:18:46 +00:00
fvdl 1a260961e0 Add prototype for _mcount, to make this compile with warnings on. 1996-12-04 00:04:40 +00:00
thorpej 15dc36463a We use C flavors of the quad support functions in libkern. 1996-12-03 19:35:42 +00:00
jtc 6621382048 Sync with libc 1996-11-30 02:06:27 +00:00
pk 87e006459e sync with libc source: remove DEFS.h 1996-11-18 22:50:28 +00:00
pk fa80fdb243 Remove `chmod 444's. 1996-11-18 22:48:59 +00:00
cgd 458e5a37c9 include libkern.h, not types.h, to get prototype. (libkern.h includes types.h) 1996-11-13 19:30:39 +00:00
matthias eb8718eafb * Pull up files from lib/libc/arch/ns32/string.
* DEFS.h and setjmp.S are no longer in use.
1996-11-07 07:36:05 +00:00
cgd bba547e063 second and third args to scanc() (string and table) are not and should not
be modified.  Make them 'const'.
1996-10-24 23:50:31 +00:00
cgd 311fcee75f when casting const pointers, preserve const qualifiers. (-Wcast-qual) 1996-10-24 23:45:32 +00:00
cgd e6d0f7439f copy down changes from libc 1996-10-17 04:26:20 +00:00
cgd f929fef799 pull down from libc 1996-10-17 01:41:35 +00:00
ws 5804d3f648 PowerPC port 1996-09-30 16:34:14 +00:00
ws d67d39b37c Allow compilation of libkern as library for standalone programs 1996-09-30 15:54:35 +00:00
cgd f4888b894a label changes, pulled down from libc 1996-09-26 23:04:30 +00:00
ghudson a08c3a1feb Handle relative paths to the source directory if they begin with a '.'. 1996-09-23 05:00:45 +00:00
cgd 788923c1ab add a missing #else, pointed out by Wolfgang Solfrank 1996-09-22 16:23:31 +00:00
mycroft 79e03b2967 Pass $STRIP to the sub-make. 1996-09-09 18:03:46 +00:00
thorpej 0794023752 RCS id police. 1996-08-30 17:43:56 +00:00
cgd bdbfa48c0b Add machine-independent assertion-checking support. macros are:
assert()	which always does assertion checking
			unless "NDEBUG" is defined.

	KASSERT()	which does assertion checking if DIAGNOSTIC
			is defined.

	KDASSERT()	which does assertion checking if DEBUG is
			define.  This macro exists for compatibility
			with existing ports' assertion checking macros.
			(Assertion checking is not typically an
			"expensive" operation, and DIAGNOSTIC should be
			used for inexpensive consistency checks.)
1996-08-27 00:44:20 +00:00
cgd fb6d196140 fix up for new libkern path specs 1996-08-21 19:18:47 +00:00
jtc 030f7ba872 Added to libkern in preparation for change from b* to mem*. 1996-08-15 22:59:11 +00:00
mycroft 811315ca92 Add anchors so that only exactly `-I. is modified. 1996-08-10 04:01:29 +00:00
mycroft 9c5b0780c0 Convert the -I. to -I${.OBJDIR}, so that the `machine symlink is available. 1996-08-10 03:00:51 +00:00
mycroft 44f440543f We dont need to pass down COMPATDIR and KERNDIR. 1996-08-08 15:15:16 +00:00
mycroft 3f0b5a641e Run the child make in the source directory, so that nothing here needs to be
changed when the compile directory is outside the source tree.
1996-08-08 15:06:39 +00:00
cgd a906c164d2 frob the mask so that only the low set bit is set, to avoid lossage. 1996-07-15 05:20:19 +00:00
cgd 3f38b4d7ad add an assembly version of ffs(), copied down from libc 1996-07-15 03:13:41 +00:00
abrown de7ece6ce5 Prevent recursive invocation of mcount() while in kernel by setting profiling
state to BUSY while in mcount(). This allows profiling to work when mcount()
calls a profiled routine (for example, udiv on the SPARC).
1996-06-29 14:30:32 +00:00
cgd e1078396e5 copy down from libkern:
>use p->hashfraction when doing non-time-critical calculations, rather than
>using HASHFRACTION directly.  in time-critical calculations, if HASHFRACTION
>is a power of two, check that p->hashfraction == HASHFRACTION and if so do
>the calculation with the compiled-in value so that the compiler can optimize
>out (potentially) expensive divisions.  if p->hashfraction != HASHFRACTION,
>actually do the division.  This has the result that on machines with slow
>division, the division can be optimized out of the common case, but that
>if HASHFRACTION changes from the compiled-in value (for whatever reason),
>profiling will still work.  Changes suggested by Chris Torek.
1996-06-12 04:16:53 +00:00
cgd 352d972c94 locc() is unused. Remove it from the machine-independent kernel interface. 1996-06-10 15:33:33 +00:00
cgd efd9d2dc7f Copy from libkern:
Add some casts so that we're not bitten by type promotions on 64-bit
systems.  Not a great concern since the only 64-bit system currently
supported by NetBSD (Alpha) uses assembly versions of these routines.
1996-05-29 23:39:30 +00:00
mrg 663808dfc5 use ' not " when passing variables to a sub-make. pr#1199/pr#1296 1996-05-20 17:23:25 +00:00
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
scottr ba554befe5 Make sure we clean up libkern.o and libkern.po, too. Closes PRs 1951
and 2387.
1996-05-10 21:27:32 +00:00
mark d4fcd14ee3 No longer needed. The netbsd config for gcc/arm has been fixed to generate
correct profiling code.
1996-04-26 20:07:43 +00:00
mark 39b959c810 Added copyright message. 1996-04-26 20:05:28 +00:00
christos 0ca6a87952 Remove memset.c; it is not currently used, and .c files should belong in
the MI portion of libkern. When/if we move to use mem* routines in the kernel
we can add it to the MI portion/write a memset.s.
1996-04-23 23:05:22 +00:00
cgd 4a134a0780 don't include user-land headers in libkern files when compiling for
the kernel.
1996-04-18 02:19:59 +00:00
cgd 1813cc71d0 don't include user-land headers in libkern files when compiling for
the kernel.  memset.c does not belong here.  it either belongs in
the MI libkern directory, or does not belong in libkern at all.
1996-04-18 02:19:07 +00:00
cgd 55afd9912f don't get rid of the -D_KERNEL in KERNCPPFLAGS 1996-04-18 02:14:48 +00:00
cgd a5dc646be0 use assembly version of strcat (copied down from libc) 1996-04-18 01:53:04 +00:00
cgd eccf43e127 files copied from libc 1996-04-17 22:46:34 +00:00
cgd e70b1375c9 add strncasecmp.c to ports' libkern Makefile.inc's. When adding a new
source file to libkern, it should be added to _ALL_ ports makefiles if
it is machine-independent and used by machine-independent code (in
this case adosfs).  (There are several arguments that say that
strncasecmp should not be in libkern at all, and i think they're
good ones, but as long as ADOSFS needs it to link, it has to be here
for all architectures.)
1996-04-13 01:17:27 +00:00
christos fb901eb966 - Add missing prototypes
- Bring prototypes into scope
- Correct prototype for skpc
1996-03-14 18:52:03 +00:00
scottr e494b8793f Back out previous change. 1996-03-11 05:46:51 +00:00
scottr c31eae0510 Back out previous change. 1996-03-11 05:31:59 +00:00
thorpej e142a2195f Provide a memset() for the i386 (assembly version), and move memset.c
out into the libkern proper in case other ports want to use it.
i386 kernels with COMPAT_LINUX should compile now.
1996-03-11 03:19:37 +00:00
christos 1cb0b13391 Add declaration of strncasecmp. 1996-02-13 23:48:26 +00:00
christos b07937f401 Make it really work like strncasecmp, instead of 0/1 return codes. 1996-02-06 21:35:31 +00:00
christos 70552d3392 Add strncasecmp.c; extracted from ADOSFS adlookup.c. 1996-02-06 21:22:00 +00:00
mycroft f96fc7f12e Simplify, and add support for passing CPPFLAGS. 1996-02-02 20:34:38 +00:00
mark f56b429c95 Initial commit of the NetBSD/arm32 port. 1996-01-31 23:44:43 +00:00
jtc 0cd793449e merge in changes from 1.1 release branch 1995-11-30 00:56:23 +00:00
cgd 6b49a2ceed copy from libkern 1995-10-20 01:16:02 +00:00
cgd 35742ffe0a use NetBSD RCS id format. use bzero.S, not bzerro.c 1995-10-20 01:15:37 +00:00
cgd 47667c7df1 set, don't add to, CFLAGS from KERNCFLAGS. Do assignment of CC and
CFLAGS earlier, so that the arch-specific Makefile can add to them.
1995-10-20 01:10:06 +00:00
cgd d7a207fd49 update from libc 1995-10-20 00:53:28 +00:00
jtc af8ead3302 Fix from Jochen Pohl which fixes case where quad multiply
goes awry if bit 31 of at least one of the operands is set
(PR #1591).
1995-10-12 15:05:35 +00:00
mycroft 9782971b02 Remove setjmp() and ffs(). 1995-10-07 22:26:53 +00:00
mycroft 209bd1b877 Build libkern as one .o file, so that all symbols defined therein are
always available to loadable modules.
1995-10-07 09:56:54 +00:00
mycroft 120925e7c3 Remove bzero.S and setjmp.S, as these functions are in locore. 1995-10-07 09:52:48 +00:00
mycroft a09832e624 Update from libc. 1995-10-07 09:26:14 +00:00
jonathan 65c53f255c Remove old .PATH directives that referenced libc source.
Libkern has its own copies of all the requisite source files.
1995-09-26 18:27:24 +00:00
leo 230fb12a7a Add abs() function as an 'inline'. The atari-port needs it since the
-fno-builtin is used in the kernel Makefile.
1995-09-23 20:35:47 +00:00
cgd 26fbf3bbb8 prototype inline functions, almost as suggested by Jonathan Stone in PR 1258. 1995-08-14 05:43:24 +00:00
cgd 8357feb486 update dependencies to deal with the alpha 1995-06-28 02:59:12 +00:00
christos 2cb09c2709 Add the ability to override KERNREL and KERNDST. 1995-06-26 03:25:46 +00:00
christos fc5a8cffa2 Build libkern in the kernel compilation directory, like libcompat. 1995-06-24 20:31:12 +00:00
pk 1778fc8e4a eserve the equality "x == y*(x/y)+(x%y)" for negative y; from Lon Willett. 1995-04-22 09:37:39 +00:00
ragge dfcfbc4f03 Added VAX specific makefile. (In libkern/arch/vax) 1995-04-18 21:59:46 +00:00
jtc db0046c14d KERNEL -> _KERNEL 1995-03-28 19:59:56 +00:00
cgd b5d8c76eb5 copy down from libc. 1995-03-03 01:14:11 +00:00
mycroft 4c34be6b52 Clean up deleted files. 1995-03-01 00:00:00 +00:00
cgd e133097a8e Alpha support from libc. 1995-02-13 21:49:11 +00:00
cgd 537b309ca7 slight cleanup/reorg. don't use quad code on the alpha. 1995-02-13 21:48:17 +00:00
mycroft e9b92ad027 Sync with libc. 1995-02-08 18:35:50 +00:00
mycroft c318fc2e81 Sync with libc. 1995-02-05 15:06:43 +00:00
cgd daf1f43606 copy back from libc 1995-01-06 00:48:11 +00:00
cgd 50c2ab0cd0 from libc 1995-01-06 00:10:05 +00:00
mycroft ccfbdee90e Change a dependency to work when not using `all' target. 1994-12-31 04:32:23 +00:00
mycroft ee9082a163 Only build the version of the library that's needed. 1994-12-31 04:26:58 +00:00
deraadt f4713b5e96 silence link creation 1994-12-07 14:53:53 +00:00
cgd aa9eacdd59 new RCS ID format. 1994-10-26 06:39:02 +00:00
deraadt 2b10ae150f compile -O3 1994-09-16 01:27:58 +00:00
deraadt 9d977e669b gcc automatically calls memset in certain situations. 1994-09-15 01:46:37 +00:00
mycroft 6ba85483c3 Use bfffo rather than a slow loop. 1994-09-09 03:07:23 +00:00
cgd d7fc64af84 don't use inline, use __inline, like cdefs intends (so it can kill it if nongcc 1994-07-15 22:29:22 +00:00
deraadt c5656ed1f6 clean obj better 1994-06-30 20:17:47 +00:00
deraadt cb2b615c65 to find the DEFS.h files here, not in libc.. 1994-06-30 06:54:22 +00:00
deraadt 983c6f33c3 auto-copied from libc 1994-06-30 06:52:54 +00:00
deraadt b13e4ea39a find divrem.m4 automatically 1994-06-30 06:51:51 +00:00
mycroft 7762f58480 Clean up deleted files. 1994-06-30 04:49:02 +00:00
mycroft 4908dd6ed9 Clean up deleted files. 1994-06-30 04:26:23 +00:00
deraadt b70d67af03 mv ${arch}/ to arch/${arch}, so that libkern builds without obj/ 1994-06-30 04:26:07 +00:00
glass 9e3c581a30 wierd fix for very wierd pmax compile problem. terry hit this too 1994-06-16 05:17:20 +00:00
glass 48967285da fix typo: scan.c -> scanc.c 1994-06-15 15:27:42 +00:00
glass 78bf21476b works in bootstrapping caseee 1994-06-03 03:44:41 +00:00
glass ae4959931e needed by some multicast thing 1994-06-03 03:37:30 +00:00
cgd 2ae7f39161 be careful about mcount.po 1994-05-21 03:22:42 +00:00
cgd 17ab905850 need a backslash! 1994-05-16 11:01:45 +00:00