Commit Graph

35 Commits

Author SHA1 Message Date
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
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
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
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
perry 6ee9cbf929 add memcmp.S memmove.S 1998-08-04 03:30:30 +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
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
chuck cf924e3bc0 add memchr() to libkern 1997-10-24 15:32:24 +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
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 352d972c94 locc() is unused. Remove it from the machine-independent kernel interface. 1996-06-10 15:33:33 +00:00
cgd a5dc646be0 use assembly version of strcat (copied down from libc) 1996-04-18 01:53:04 +00:00
christos 70552d3392 Add strncasecmp.c; extracted from ADOSFS adlookup.c. 1996-02-06 21:22:00 +00:00
mycroft 4c34be6b52 Clean up deleted files. 1995-03-01 00:00:00 +00:00
mycroft e9b92ad027 Sync with libc. 1995-02-08 18:35:50 +00:00
cgd aa9eacdd59 new RCS ID format. 1994-10-26 06:39:02 +00:00
mycroft 6ba85483c3 Use bfffo rather than a slow loop. 1994-09-09 03:07:23 +00:00
chopps 7bb230219d copied over so lib/libc/arch not needed to build kernel. 1994-03-29 07:14:42 +00:00
cgd fdc1a28735 use .S 1993-12-05 01:52:27 +00:00
cgd 5d996b5fbb change to use MACHINE_ARCH and update from libc 1993-12-04 03:08:13 +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 2d4295eb29 move 'boot' and 'libkern' into 'lib'. generally clean up 'kernel library'
building and dependencies.
1993-10-13 05:40:23 +00:00