fvdl
9b4c0e34d2
Initial commit of the port to AMD's upcoming 64 bit architecture, the
...
x86-64. Since there's no hardware available yet, this port is only
known to run on the Simics simulator for at the moment, and as such
uses the PC devices that it simulates for now. It will be developed
more (and cleaned up) as the hardware becomes available.
2001-06-19 00:19:12 +00:00
fredette
49fda862f9
When MACHINE_ARCH is m68000, compile ffs.c and random.c
...
instead of ffs.s and random.s, and sneak the libgcc
integer support routines into the list of library objects.
2001-05-16 03:30:39 +00:00
fredette
332aa50acb
Use the EXTBL macro where we want the extbl instruction.
...
On the 68010 this expands to an extw/extl combination.
2001-05-16 03:14:12 +00:00
fredette
8ba384c841
On the 68010, we are forced to do bytewise compares
...
and copies if the two addresses aren't of the same
evenness.
2001-05-16 03:06:41 +00:00
kleink
95fa77ab80
Make this work for PIC (as opposed to pic) without taking chances of fitting
...
__ffstab into a GOT13 relocation; from Eduardo Horvath.
2001-05-13 20:03:45 +00:00
ross
2df695b1e4
o IEEE 754 floating-point completion code.
...
o Implement the architected FP_C "Floating Point Control Quadword"
2001-04-26 03:10:44 +00:00
thorpej
db5854a62c
Build strtoul.c
2001-04-05 04:38:33 +00:00
cgd
b7ad250ab1
copy from lib/libc/arch/mips/gen
2001-02-27 19:45:26 +00:00
bjh21
da9d806354
Move arm32 over to using the shared ARM libkern.
2001-02-15 22:44:09 +00:00
msaitoh
3c31811206
don't profile (use NENTRY() and ALTENTRY())
2001-02-14 21:04:17 +00:00
msaitoh
9af8d0bdad
ENTRY()
2001-02-14 18:14:37 +00:00
msaitoh
2633a5dcb5
_C_LABEL()
2001-02-14 17:57:31 +00:00
bjh21
e68a8d59fa
Sync with libc for licence update.
2001-01-23 19:12:29 +00:00
bjh21
af14995e51
Create a shared set of ARM sources for libkern and move arm26 over to using
...
them.
These are identical to the current arm32 sources with the following exceptions:
- References to C labels are wrapped in _C_LABEL().
- Function returns have an alternate version inside #ifdef __APCS_26__.
2000-12-29 20:51:56 +00:00
bjh21
d839461405
Pull across arm32 rev 1.4:
...
ALTENTRY() must die.
2000-12-16 14:38:50 +00:00
bjh21
0b45f78538
Pull across arm32 rev 1.5:
...
ALTENTRY() must die.
2000-12-16 14:38:06 +00:00
mycroft
6d9be19e76
ALTENTRY() must die.
2000-12-14 22:00:20 +00:00
bjh21
1e720616fb
Copy from libc
2000-12-14 19:51:51 +00:00
bjh21
af87db0411
Use _C_LABEL
2000-12-14 19:50:38 +00:00
bjh21
fe80ce82c0
Copy from libc
2000-12-14 19:44:58 +00:00
bjh21
c044c88beb
Sync with arm32.
2000-12-14 19:33:00 +00:00
mycroft
a5a04ddba2
These versions have different names than libc...
2000-12-12 17:53:20 +00:00
mycroft
0e5af5b3d1
GC.
2000-12-12 17:51:03 +00:00
mycroft
6c96a6759b
Update from libc.
2000-12-12 17:44:04 +00:00
is
94f7c9c6f9
Sync with libc: make function exit one instruction faster, and function one
...
instruction shorter (Horimoto).
2000-11-28 15:26:34 +00:00
is
c8071d4fac
Sync with libc strncpy.S 1.11: optimized code by Hiroshi Horimoto.
2000-11-27 22:38:33 +00:00
thorpej
1cfe0850f5
Add a strcasecmp(), modified from chopps's strncasecmp().
2000-11-01 19:37:18 +00:00
jeffs
db1bb008f9
Set return value correctly for memcpy/memmove.
2000-10-10 20:29:03 +00:00
msaitoh
3a0bdcde18
check _STANDALONE macro, too.
2000-09-09 00:16:21 +00:00
thorpej
9c5afcb2f0
Move the Alpha _mcount() into a .S file so that it can be
...
pre-processed, like other Alpha assembly files.
2000-09-05 16:28:30 +00:00
msaitoh
17c5382dc6
compile byte_swap_2.S and byte_swap_4.S
2000-07-21 11:19:46 +00:00
msaitoh
116abff968
support "big endian", too.
2000-07-21 11:19:10 +00:00
bjh21
bf14d56ba8
Add strtoul.c -- if_ea.c needs it.
2000-07-20 20:27:53 +00:00
matt
69a9192fb8
We need strncasecmp.c now.
2000-07-19 03:56:38 +00:00
matt
237e784779
ELFify
2000-07-19 03:48:24 +00:00
enami
84606936fb
Fix an obvious typo in comment introduced by previous commit; the instruction
...
now compares a0 against a1 + a2, not a0 + a2.
2000-07-18 01:20:24 +00:00
jeffs
efabca31b5
Make memcpy() the favored interface an swizzle the args for ovbcopy. Also
...
move bcopy XLEAF here from locore.S. For 64b clean compilation add a
ld/sd section to the block copy.
2000-07-17 07:37:50 +00:00
mrg
de53718be7
<vm/vm.h> -> <uvm/uvm_extern.h>
2000-06-27 18:01:06 +00:00
msaitoh
e94e5fd681
new bcopy.S
2000-06-09 04:42:46 +00:00
msaitoh
431cb8da1c
movstrSI*() for gcc -Os
2000-06-09 04:42:24 +00:00
sommerfeld
01d37fc7c9
Add missing trailing newlines.
2000-05-26 23:09:28 +00:00
bjh21
6c97e2bd78
Initial commit of arm26 port
2000-05-09 21:55:44 +00:00
msaitoh
48c1343230
asm bcopy() for sh3
2000-04-20 13:52:35 +00:00
danw
aedaba9bc9
add strtoul
2000-02-01 04:02:59 +00:00
msaitoh
b0b4797dfb
don't clobber r4 and r5
2000-01-03 02:40:04 +00:00
msaitoh
5517154d15
check _STANDALONE
1999-12-21 21:48:19 +00:00
simonb
cfd10575d6
Add strtoul.c and sort sources alphabetically.
1999-11-29 23:24:59 +00:00
simonb
9c807e7a3c
Move strtoul.c (via CVS repo copy) to libkern. Also sort prototypes
...
in libkern.h and sources in arm32/Makefile.inc alphabetically.
1999-11-29 23:12:56 +00:00
matthias
87bb3a7b2b
make this work again with -mrtd.
1999-11-16 18:16:53 +00:00
thorpej
ac3150a13d
Add register prefixes.
1999-11-11 01:53:46 +00:00
thorpej
9aeef983e2
Sync w/ libc.
1999-11-11 01:32:10 +00:00
msaitoh
3fd4c8b3b8
add strncasecmp.c
1999-10-21 15:05:08 +00:00
is
e203553a11
Finish support for auto-generated libkern divsi3.S.
1999-09-21 09:43:38 +00:00
is
897dbf6c67
Use an identical source file for the libc and the libkern version of
...
divsi3.S, conditionally compiling the divide by zero case. This way,
after a change to the one, we can just copy it over to update the other
without creating ... problems. By Chris G. Demetriou.
1999-09-20 09:22:47 +00:00
is
6b3625a6ad
Oops. The overflow code should not have been copied from the userland
...
version.
1999-09-19 15:58:02 +00:00
is
6cf532dd3d
Synchronize with fixed libc version:
...
If unsigned dividend > INT_MAX, or signed dividend == INT_MIN, be careful
to not overflow the divisor when shifting it to the left.
1999-09-17 11:42:56 +00:00
msaitoh
99ca8c39f5
unused file (we have an asm version)
1999-09-16 15:04:13 +00:00
itojun
65363da25e
Merge in NetBSD/sh3 from cvs.kame.net repository.
...
Tree structure:
- sys/arch/sh3: sh3 generic code
As commented, in-chip device drivers are put into sys/arch/sh3/dev.
- sys/arch/evbsh3: sh3 evaluation boards (pure sh3 CPU, no fancy external HW)
- sys/arch/mmeye: Brains mmEye, www.brains.co.jp
MI source code includes couple of #ifdef for sh3-coff support.
(sh3 uses coff or elf)
Needs some more improvements, especialy in sys/arch/sh3/conf/files.sh3,
to compile the tree (due to last minute tree structure change).
1999-09-13 10:30:21 +00:00
drochner
ff171dfb67
-don't use DEFS.h nor SYS.h in libkern
...
-remove setjmp.S, it's not useful for libkern
1999-09-10 15:39:04 +00:00
chs
d1638a0354
sync with libc:
...
use RODATA() instead of ENTRY() for __ffstab so that it works when profiling.
1999-09-06 19:01:04 +00:00
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
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
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
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