mycroft
363f05d417
Refresh from libc to get 68010 version.
2003-10-29 23:19:11 +00:00
junyoung
592280de7a
index() shouldn't be used in the kernel. Use strchr() instead.
2003-10-27 07:28:15 +00:00
junyoung
21110867b5
Goodbye to bcmp.S, bcopy.S, and bzero.S. They are defined as macros in
...
sys/systm.h.
2003-10-26 14:39:35 +00:00
junyoung
6fe2633df0
Remove bcmp.S and bzero.S from list. They were doing nothing but wasting
...
kernel bits for a long time (2 years?).
2003-10-26 14:37:52 +00:00
scw
2ffebceb85
Duh, fix the align-to-32-bits code.
2003-10-23 20:46:40 +00:00
tsutsui
fa49899d30
Add bswap64.c, required by options FFS_EI.
2003-10-21 14:49:00 +00:00
scw
5e7e19ec12
Xscale-optimised mem* functions, contributed by Wasabi Systems.
...
(Note: memcmp/memset improvements also benefit non-Xscale).
memcmp() - Compare 32-bits at a time if possible. Special-case 6-byte
comparisons, for the benefit of the network stack.
memset() - More loop unrolling, plus use of 'strd' instruction,
results in > 100% speedup on Xscale.
memcpy() - Big-endian support, unrolled loops, 'strd/ldrd/pld', plus
special-cases for very common length/alignment combinations
(at least in the kernel). Benchmarks show ~50% improvment on
Xscale.
memmove() - Big-endian support. Use fast memcpy(), above, if the regions
don't overlap. Otherwise unchanged.
2003-10-13 19:59:24 +00:00
chs
06332c88ef
update for new gas syntax. from Jochen Kunz.
2003-10-10 15:07:43 +00:00
ichiro
266021fa1e
big endian support
...
thanks to smi@sm.sony.co.jp
2003-10-09 08:54:54 +00:00
lukem
1ea85577bc
sort entries, and add a couple
2003-10-08 04:13:13 +00:00
itojun
cc76a8982b
fix build for bootloaders (no /usr/include/sys/kernel.h any more).
2003-10-02 10:39:27 +00:00
martin
1f68fd5144
Same treatment as libc/hash/sha1.c: ifdef the sparc64 compiler bug
...
workaround for old gcc only.
2003-09-23 20:00:43 +00:00
chs
0454ead77f
the asm version of strlcpy() was buggy, just use the C version.
2003-09-11 05:04:33 +00:00
chs
6e0aaa640d
update for LWPs, and some lite cleanup.
2003-08-31 01:52:43 +00:00
matt
4a33fdce54
Actually the right instruction to fill a half-word.
...
From Juergen Hannken-Illjes hannken at eis dot cs dot tu-bs dot de
2003-08-27 17:37:43 +00:00
itojun
1403d9d920
KNF
2003-08-20 13:32:33 +00:00
ragge
a9e5513c6b
Kerner library files for pdp10.
2003-08-19 10:59:26 +00:00
ragge
bc830a1980
Do not use the builtins for the mem* functions on vax, the compiler gets
...
confused with the static inline functions vax uses.
2003-08-13 11:34:24 +00:00
ragge
f69577d50c
Include the C versions of the string instructions.
...
Replace blkcpy() with a version that can handle overlapping data areas.
2003-08-13 11:32:23 +00:00
matt
f70606090a
Add a memset.S (does not use dcbz; to be added later). It does both bzero
...
and memset.
2003-08-10 21:17:08 +00:00
martin
785cae7ed0
Sync with userland version.
2003-08-10 14:20:03 +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
dsl
f92748a3e8
Add xlat_mbr_fstype - converts mbr type to disklabel type
2003-07-07 13:20:17 +00:00
briggs
b2566d8735
Provide a strtoul() implementation based on the one in libc instead of the
...
totally different version that was here. This version, of course, has an
BSD license on it while the old one did not. This one also compiles down
to tighter code--the smaller the better for libkern & libsa.
2003-06-07 02:52:33 +00:00
itojun
da3884cbf4
latest copyright notice (more loose). noted by wiz
2003-05-15 15:02:52 +00:00
itojun
99c5869d56
add strl{cpy,cat} to libkern. code from lib/libc/string (originally from openbsd).
2003-05-15 13:50:35 +00:00
christos
abfff333c3
don't define TRUE and FALSE locally.
2003-04-22 15:10:04 +00:00
dsl
c327a133c6
Significantly faster memcpy/memmove/bcopy and memset/bzero
2003-04-15 22:49:50 +00:00
scw
bfc4be13a6
When MEMCOPY is defined, don't bother checking if a backwards-copy is
...
required. That's what memmove() is for.
This should fix port-powerpc/16889. The backwards copyin can confuse
uiomove/genfs_getpages, resulting in corruption of files written over NFS.
2003-04-07 21:04:19 +00:00
bjh21
f34ba16c9c
NetBSD/acorn26 has used APCS-32 for years, so unifdef -U__APCS_26__.
2003-04-05 23:27:14 +00:00
matt
cc005c66db
Switch back to generic bzero/memset until new one is shown to work.
2003-02-25 20:15:02 +00:00
matt
97d38cdec2
Actually use bzero.S. Also fix bzero to use GET_CPUINFO
2003-02-24 07:14:17 +00:00
matt
05a4c83a70
Don't make memset.c since bzero.o has memset in addition to bzero.
2003-02-24 07:09:18 +00:00
thorpej
4245ee1663
Wrap this file in "#ifndef _STANDALONE".
2002-12-05 17:12:06 +00:00
fvdl
144469b350
Add strtoul.c
2002-11-25 00:55:22 +00:00
fvdl
a186add0a8
If LIBKERN_ARCH is defined, use that as the architecture-specific
...
subdirectory. Needed for the x86_64 32bit compile case.
2002-11-23 23:35:50 +00:00
chris
f86ab1a63e
Sync arm asm libkern files with libc's asm files.
2002-11-23 14:29:29 +00:00
itohy
6e73936f81
Use assembly version of bzero() and memset().
2002-11-20 09:52:53 +00:00
itohy
5d1c87f395
Assembly version of bzero()/memset().
...
Written by SHIMIZU Ryo.
2002-11-20 09:51:52 +00:00
itohy
766d863c42
memcpy() and memmove() must return the first parameter.
...
Problem found by itohy, fixed by SHIMIZU Ryo.
2002-11-20 09:50:37 +00:00
rearnsha
6576c49b48
Add an assembler version of strcmp, based on example code from the ARM
...
ARM. As an example of the performance difference that this provides
a Dhrystone score on my Shark goes from 213k to 261k.
2002-11-16 18:27:40 +00:00
thorpej
7f74df5ef3
ABICALLS -> __ABICALLS__
2002-11-10 18:10:25 +00:00
perry
efd79c70c9
Add lint infrastructure
2002-11-02 07:48:17 +00:00
perry
6448ffbdfe
set LLIBS= so we don't try to check the lint lib against llib-lc.ln
2002-11-02 07:46:42 +00:00
chs
cab484e445
move includes to the top so that this builds in libc context too.
2002-10-29 04:40:55 +00:00
chs
c04f87a03e
remove setjmp/longjmp from libkern, they're not used.
2002-10-27 18:45:11 +00:00
chs
c5a350ef59
use %g5 instead of %g7 (since we want to use %g7 for the cpu_info pointer
...
in the kernel). resync libc and libkern versions of this file.
2002-10-27 18:41:27 +00:00
christos
07dca24022
make offsetof lint friendlier.
2002-10-24 20:53:50 +00:00
scw
03c573236d
Replace the SuperH memcpy() with homebrewed code. The former seems to have
...
a subtle failure mode which can result in corruption of memory outside the
bounds of the destination buffer.
2002-10-22 12:25:18 +00:00
scw
ac76a83a5c
Sync with libc/quad:
...
As discussed (briefly) on tech-userlevel, fix our quad support to work
correctly on LP64 platforms. This is mostly just s/long/int/ in the
appropriate places.
2002-10-20 10:17:14 +00:00