pk
fabda9a224
Sync with libc
1999-03-05 09:18:32 +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
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
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
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
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
eeh
26d2d906c7
Some more 64-bit cleanup. Now everything compiles.
1998-08-30 15:32:16 +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
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
eeh
9979577545
Second half of the sparc64 stuff.
1998-06-20 05:18: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
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
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
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
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
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
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
perry
24920eefb1
RCSID Police.
1998-01-05 19:40:40 +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
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
jtc
b92f5604b7
sync with libc
1997-06-20 02:08:04 +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
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
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
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
e6d0f7439f
copy down changes from libc
1996-10-17 04:26:20 +00:00
ws
5804d3f648
PowerPC port
1996-09-30 16:34:14 +00:00
cgd
f4888b894a
label changes, pulled down from libc
1996-09-26 23:04:30 +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
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
cgd
352d972c94
locc() is unused. Remove it from the machine-independent kernel interface.
1996-06-10 15:33:33 +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
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
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
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
70552d3392
Add strncasecmp.c; extracted from ADOSFS adlookup.c.
1996-02-06 21:22:00 +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
d7a207fd49
update from libc
1995-10-20 00:53:28 +00:00
mycroft
9782971b02
Remove setjmp() and ffs().
1995-10-07 22:26:53 +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
cgd
8357feb486
update dependencies to deal with the alpha
1995-06-28 02:59: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
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
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
aa9eacdd59
new RCS ID format.
1994-10-26 06:39:02 +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
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
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
chopps
7bb230219d
copied over so lib/libc/arch not needed to build kernel.
1994-03-29 07:14:42 +00:00
mycroft
fcb12cd74d
Much faster on 486s and Pentiums; a little slower on 386s.
1994-03-23 08:49:46 +00:00
deraadt
21bd5c11f4
delete some unneeded things
1994-03-22 19:17:22 +00:00
mycroft
e50e5bc84b
Minor speedup.
1994-02-24 06:58:36 +00:00
mycroft
2f681356c4
Minutely faster.
1994-02-24 01:32:14 +00:00
mycroft
afe588b9d2
Assembler versions of these.
1994-02-24 00:41:00 +00:00
mycroft
451fbfb366
Update from libc.
1994-02-15 13:42:30 +00:00
jtc
5235180083
Fix spelling error in Copyright notice
1994-01-28 23:43:26 +00:00
pk
ccbb67e8c3
Find source in the right places.
1994-01-15 19:48:56 +00:00
cgd
fdc1a28735
use .S
1993-12-05 01:52:27 +00:00
cgd
30dc89704d
split up the {ntoh,hton}[ls] functions
1993-12-05 01:36:46 +00:00
cgd
1e98b770b2
use .S files
1993-12-04 05:21:29 +00:00
cgd
5d996b5fbb
change to use MACHINE_ARCH and update from libc
1993-12-04 03:08:13 +00:00
cgd
879130b794
change to use MACHINE_ARCH and update from libc
1993-12-04 03:05:16 +00:00
briggs
606d45ee4a
Move the SRCS from hp300 over to here, changing ffs.c to ffs.s.
...
Am I missing something obvious in doing this? This makes the
${ARCH}/Makefile.inc for 68k able to just set ARCH=m68k.
1993-11-29 05:29:51 +00:00
cgd
e685fd393f
added files copied in from libc. version numbers are screwed,
...
but are screwed for the rest of libkern's files, anyway.
1993-11-05 22:40:48 +00:00
jtc
9c896370ee
Did a ``make copy-to-libkern'' from libc to copy libc files to libkern.
...
Checking them in to make people happy.
1993-10-27 22:00:42 +00:00
jtc
79591d04bc
So many files in arch/i386 have been changed I might as well run my
...
remove unecessary trailing whitespace script.
1993-10-21 01:48:14 +00:00
jtc
823c36577c
Change instances of LIBC_RCS back to LIBC_SCCS. If we are going to change
...
th LIBC_RCS, the entire source tree should be updated at once.
Remove && !defined(lint) from conditionals around rcs id's. No one is
ever going to pass a *.s file through lint.
1993-10-21 01:39:55 +00:00
jtc
97ad548bc0
Replaced instructions with immediate operands with compatible alternatives
...
saving a few bytes while the cycle count remains the same --- could
actually be faster, depending on the cache, prefetch queue, etc.
1993-10-20 18:50:15 +00:00
cgd
2193c056b8
add strncmp to anything
1993-10-15 08:41:12 +00:00
cgd
acbf63a86b
add __main()
1993-10-15 06:20:46 +00:00
cgd
2d4295eb29
move 'boot' and 'libkern' into 'lib'. generally clean up 'kernel library'
...
building and dependencies.
1993-10-13 05:40:23 +00:00
cgd
0b9f50897e
make an arch directory in libc, and move all machine dirs into it
1993-10-07 00:17:24 +00:00