matt
cb520da5b3
Refresh from libc.
2002-03-28 00:46:08 +00:00
fredette
58830d68c5
Added brand-new integer multiply and divide support, used only
...
on the m68000.
2002-03-26 22:49:32 +00:00
matt
12810ed37d
Use size_t in prototype (so this will be LP64 clean for PPC64 someday).
...
Calculate len separately for icache & dcache in case each has different
cacheline widths. Make the code for both loops the same except for the
dcbst/icbi. Deal with sizes >=2GB properly (like that'll happen but ...)
2002-03-26 21:20:24 +00:00
fredette
d617871b0c
On the m68000, if and only if gcc doesn't seem to know
...
where libgcc.a is, fall back to one under DESTDIR.
2002-03-22 00:17:12 +00:00
dbj
f0658bdada
make compile with _STANDALONE
2002-03-18 05:10:58 +00:00
eeh
4c434f6210
Updated from libc.
2002-03-13 00:59:29 +00:00
matt
e2d6f22138
Add register prefixes to these.
2002-02-24 00:12:41 +00:00
matt
6cad4b795d
Upon further reflection, move udiv/urem to libkern and out of vax/vax.
2002-02-24 00:08:19 +00:00
ragge
f2d946a56e
blkset() used a register for set value that get clobbered by movc5,
...
causing the set area to get unpredictable contents.
2002-02-19 21:46:17 +00:00
thorpej
2362fef9a8
Add __blkcpy() and __blkset() (renamed/modified from __blkclr()) to
...
libkern.
2002-02-10 22:04:51 +00:00
ross
e31435237d
sync
2002-01-24 00:45:22 +00:00
uch
e71de3f668
R5900 short-loop bug.
2002-01-02 12:34:27 +00:00
thorpej
23ed6be403
Always provide alloca() as __builtin_alloca().
2001-12-28 07:37:06 +00:00
shin
1bac15cba5
we need ffs().
2001-12-27 00:10:39 +00:00
shin
6870c1d462
don't use .abicalls in kernel.
2001-12-27 00:09:59 +00:00
shin
e509d7712d
copy from libc/arch/mips/string
2001-12-27 00:08:19 +00:00
thorpej
5ed948ecea
The kernel is now built with -ffreestanding, so GCC built-ins are
...
disabled. Explicitly re-enable some that we want to use, namely:
* memcpy() -> __builtin_memcpy()
* memcmp() -> __builtin_memcmp()
* memset() -> __builtin_memset()
* strcpy() -> __builtin_strcpy()
* strcmp() -> __builtin_strcmp()
* strlen() -> __builtin_strlen()
We might also consider some others for GCC 3.x.
2001-12-23 22:48:29 +00:00
tv
8e6f7afb5b
MKfoo=no -> NOfoo
2001-12-12 01:48:43 +00:00
wiz
b4371d47f5
Replace some misuses of "then" with "than".
2001-12-04 17:56:30 +00:00
mjl
f14e78b4c3
Disable bzero/memset assembler implementation until the dependency
...
problem on assym.h is sorted out and TRW to get at CACHELINESIZE in
the kernel is determined.
2001-12-02 11:03:39 +00:00
mjl
8231ab74c5
Add assembler version of strlen.
2001-11-30 02:27:20 +00:00
mjl
625c08cf7e
Outifdef some stuff not needed in the _KERNEL case.
2001-11-30 02:25:50 +00:00
mjl
4ee3b0f097
Add assembler versions of ffs, bzero and memset.
2001-11-29 00:27:07 +00:00
jmc
2229499bfb
Don't make clean and cleandir depend on the lib subdir. Just check for it's
...
existance before running the submake. This makes it possible to run a
make build (which runs cleandir before make obj) in a r/o source tree
2001-11-21 22:10:54 +00:00
chris
9cc0f33345
Tidy up some memory copying cruft:
...
bcopy.S is no longer needed
memmove and memcpy were both stacking r0 and unstacking it to keep the return value, so push this down into _memcpy.
rename _memcpy.S to memcpy.S.
memmove.S is now just a placeholder otherwise the make system automagically adds a memmove.c file to libkern.
memmove is just another entry point for memcpy.
2001-11-20 00:29:19 +00:00
lukem
2565646230
don't need <sys/types.h> when including <sys/param.h>
2001-11-15 09:47:59 +00:00
tv
4446c00002
Undefine DESTDIR; we don't want the special DESTDIR <bsd.lib.mk>
...
handling for kernel libraries.
XXX this build method should be replaced by something more sane
2001-11-14 21:59:31 +00:00
chris
4d1b8d545e
Sync to libc version of divsi3.S. This is to fix up the stack for 8 byte alignment.
2001-11-13 20:06:40 +00:00
matt
920cfb5205
Add "Red Black +" balanced binary tree routines to libkern. These provide
...
O(log(N)) insertation, deletion, and lookup times. However, unlike most
red-black implemenations, this one does no additional memory allocations.
2001-10-24 22:40:56 +00:00
uch
07f8f33bb9
R5900 miss-prediction of branch targets for short-loop.
2001-10-16 15:40:53 +00:00
fvdl
f22b808267
Make new gas happy. Use movzbl instead of xorl + movb.
2001-09-21 14:14:30 +00:00
fredette
7aaa6a4bc4
On the 68010, don't bother with the by-8-longwords loop, instead
...
only 16-bit align the region and use loop mode with longwords
to do the bulk of the work.
On the 68020+, fixed an optimization bug where all regions that start
on odd addresses would not be properly longword aligned.
2001-09-06 21:30:15 +00:00
matt
28c81ffc15
7450 requires a sync before the the isync (MPC7450UM - 3.4.4.8)
2001-08-22 21:19:58 +00:00
itojun
9fe945f2fe
sync argument/return type of [hn]to[nh][ls] to XNET 5.2 (uint{16,32}_t).
...
as discussed on tech-net.
2001-08-22 07:42:07 +00:00
jdolecek
c495131fe3
Move _insque()/_remque() to libkern. Once remaining uses would
...
be converted to <sys/queue.h> macros, _insque()/_remque() would be eliminated
altogether.
2001-08-12 08:35:31 +00:00
lukem
9bbc26f3dc
convert to ansi knf, and fix a bug where the last arg was incorrectly
...
'u_char' instead of 'int' (per the prototype and usage and other scanc
implementations)
2001-08-09 08:03:34 +00:00
thorpej
ac8a2539c1
Provide bcopy() here.
2001-07-13 00:04:00 +00:00
perry
5624bbb1d4
restore bzero and bcmp prototypes for now -- this has to be hashed out.
2001-07-07 17:22:25 +00:00
simonb
5439e1a9ff
Put the prototypes for bcmp() and bzero() back (ifdef _STANDALONE) so that
...
libsa builds again.
2001-07-07 12:23:43 +00:00
perry
7ab9c62227
Remove bcmp and bzero prototypes. And yes, I actually checked and
...
tested this time. (Slap self repeatedly.)
2001-07-07 05:42:16 +00:00
toshii
70e10fb682
Remove bcmp, bcopy and bzero. We don't need them as they aren't
...
called from asm code, and we shouldn't have them if we don't need them.
2001-07-06 17:35:44 +00:00
kleink
e69c885f3e
Sync with libc: use bzero-based assembly version of memset().
2001-07-01 11:55:36 +00:00
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
lukem
85772a1cef
remove some lint
2001-04-30 02:34:58 +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
4747025b48
ctype-like functions are now in libkern.
2001-04-18 15:40:58 +00:00