Commit Graph

434 Commits

Author SHA1 Message Date
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
thorpej db5854a62c Build strtoul.c 2001-04-05 04:38:33 +00:00
thorpej 554aa34ee7 Add ctype routines. 2001-04-05 04:38:06 +00:00
cgd b7ad250ab1 copy from lib/libc/arch/mips/gen 2001-02-27 19:45:26 +00:00
enami 3d31264640 Don't set ARCHSUBDIR to empty string. 2001-02-18 22:38:50 +00:00
bjh21 d308c5c5ed Use MACHINE_CPU to find the architecture subdir, or MACHINE_ARCH if that
exists.  Same algorithm as libc uses.
2001-02-16 16:58:27 +00:00
simonb 0292c3474f Use arm arch directory for arm32 as well as arm26. 2001-02-15 23:17:44 +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
itojun f039f89ec5 prepare for sh3e[bl] split 2001-01-04 06:53:45 +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
deberg cdb062bbb7 add md4c.c 2000-12-08 06:30:21 +00:00
deberg c2253656c9 in-kernel MD4 implementation, from libc 2000-12-08 06:29:23 +00:00
sommerfeld 5348dfb6ac Have recursive make invocations depend on the .MAKE pseudo-target so
make knows to handle them specially.
2000-12-05 17:01:19 +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
msaitoh 0a5e7f9f3f enclose offsetof macro definition with #ifndef offsetof ... #endif 2000-10-12 03:42:33 +00:00
jeffs db1bb008f9 Set return value correctly for memcpy/memmove. 2000-10-10 20:29:03 +00:00
eeh 264b1139cd Prevent the compiler from blowing up on sparc64. From mrg. 2000-09-17 19:55:28 +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
msaitoh 127c1a76e9 fix the null pointer access bug when arg2 (char **endptr) == NULL 2000-05-25 01:22:41 +00:00
bjh21 6c97e2bd78 Initial commit of arm26 port 2000-05-09 21:55:44 +00:00
thorpej 707b3d59b1 __predict_true() the expressions passed to the assert family, so
as to move the calls to __assert() out-of-line.

Suggested by Bill Sommerfeld.
2000-05-08 23:33:15 +00:00
thorpej b193ffa77c Use __GNUC_PREREQ__(). 2000-05-05 00:20:22 +00:00
msaitoh 48c1343230 asm bcopy() for sh3 2000-04-20 13:52:35 +00:00
itojun 79e89da473 change copyright notice from 3-clause TNF -> 4-clause TNF.
not sure if which we prefer, but the point is to use exactly the same
copyright.  From: matthew green <mrg@eterna.com.au>
2000-04-19 15:16:02 +00:00
augustss 1279e67b6e Kill some more register declarations. 2000-03-30 12:19:46 +00:00
simonb 4ca596f6a0 Don't prototype __assert() if not STANDALONE - <sys/systm.h> has already
included <lib/libkern/libkern.h> to get the prototype by this stage.

XXX: should we just change <sys/systm.h> from
	#ifdef _KERNEL
	#include <sys/systm.h>
	#endif
     to
	#if defined(_KERNEL) || defined(_STANDALONE)
	#include <sys/systm.h>
	#endif
     anyways?
2000-03-29 03:19:52 +00:00
simonb 5ab3ed0c39 Multiple include protection. 2000-03-29 03:07:52 +00:00
simonb 20bd3ffa72 Remove duplicate declaration of __cmpdi2() 2000-03-27 12:00:48 +00:00
itojun 2dc247fc34 make CMSG_ALIGN always synchronize with kernel's idea of ALIGNBYTES.
ancillary data alignment will be ALIGNBYTES, not sizeof(long) - 1, from now.

CMSG_xx will NOT resolve into constant.  if you use CMSG_xx to allocate
arrays, you'll lose.

bump shlib minor for libc.

NOTE: if you are on top of arch with ALIGNBYTES != sizeof(long) - 1,
you need to recompile IPv6-related binaries.  there is no way to guarantee
backward compat in this aspect.  sorry for this.  this should be the last
backward compat breakage for IPv6-related ancillary data manipulation.
(we still have PR 9516 for unix-domain sockets...)
2000-03-02 07:41:49 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
danw aedaba9bc9 add strtoul 2000-02-01 04:02:59 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +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
simonb 9e5fd23ce5 Copied from arch/arm32/arm32/strtoul.c,v 1999-11-29 22:51:19 +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
ragge ad78a78402 Include <lib/libkern/libkern.h> after sys/param.h, to avoid warnings
when memcpy et al is static inline.
1999-10-16 19:06:48 +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
sommerfeld e8a86fe7eb Include <lib/libkern/libkern.h> instead of <sys/systm.h>.
(the former no longer has mem* prototypes).
Remove the b* vs mem* kludge.
This change allows standalone libkern to build on alpha again.
1999-09-16 00:06:46 +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
tron 2d8e6b7e97 Add prototype for memcmp() as suggested by Anders Hjalmarsson in
PR kern/8360.
1999-09-10 14:05:40 +00:00
drochner 7148323ba0 sync with libc 1999-09-10 13:21:14 +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
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