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__.
This commit is contained in:
bjh21 2000-12-29 20:51:56 +00:00
parent 5aefcfdc06
commit af14995e51
12 changed files with 30 additions and 26 deletions

View File

@ -1,9 +1,9 @@
# $NetBSD: Makefile,v 1.55 2000/12/08 06:30:21 deberg Exp $
# $NetBSD: Makefile,v 1.56 2000/12/29 20:51:56 bjh21 Exp $
LIB= kern
MKPIC= no
ARCHSUBDIR= ${MACHINE_ARCH:C/mipse[bl]/mips/}
ARCHSUBDIR= ${MACHINE_ARCH:C/mipse[bl]/mips/:S/arm26/arm/}
M= ${KERNDIR}/arch/${ARCHSUBDIR}
CPPFLAGS= -I$M ${KERNCPPFLAGS} ${KERNMISCCPPFLAGS}

View File

@ -0,0 +1,11 @@
# $NetBSD: Makefile.inc,v 1.1 2000/12/29 20:51:56 bjh21 Exp $
SRCS+= __assert.c __main.c bcmp.c bswap64.c byte_swap_2.S byte_swap_4.S \
ffs.c imax.c imin.c lmax.c lmin.c max.c min.c random.c scanc.c \
skpc.c strcat.c strcmp.c strcasecmp.c \
strcpy.c strlen.c strncasecmp.c strncmp.c \
strncpy.c strtoul.c ulmax.c ulmin.c
SRCS+= divsi3.S
SRCS+= memchr.c memcmp.c _memcpy.S memcpy.S memmove.S memset.S
SRCS+= bcopy.S bzero.S

View File

@ -1,5 +1,4 @@
/* $Id: _memcpy.S,v 1.1 2000/05/09 21:56:05 bjh21 Exp $ */
/* $NetBSD: _memcpy.S,v 1.1 2000/05/09 21:56:05 bjh21 Exp $ */
/* $NetBSD: _memcpy.S,v 1.1 2000/12/29 20:51:56 bjh21 Exp $ */
/*
* This code is derived from software contributed to The NetBSD Foundation
@ -62,7 +61,7 @@ ENTRY(_memcpy)
#else
moveq pc, lr
#endif
stmdb sp!, {r0, lr} /* memcpy() returns dest addr */
subs r2, r2, #4
blt Lmemcpy_fl4 /* less than 4 bytes */

View File

@ -1,4 +1,4 @@
/* $NetBSD: bcopy.S,v 1.3 2000/12/14 19:50:38 bjh21 Exp $ */
/* $NetBSD: bcopy.S,v 1.1 2000/12/29 20:51:56 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.

View File

@ -1,4 +1,4 @@
/* $NetBSD: byte_swap_2.S,v 1.4 2000/12/16 14:38:06 bjh21 Exp $ */
/* $NetBSD: byte_swap_2.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.

View File

@ -1,4 +1,4 @@
/* $NetBSD: byte_swap_4.S,v 1.4 2000/12/16 14:38:50 bjh21 Exp $ */
/* $NetBSD: byte_swap_4.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.

View File

@ -1,4 +1,4 @@
/* $NetBSD: bzero.S,v 1.2 2000/12/14 19:51:51 bjh21 Exp $ */
/* $NetBSD: bzero.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.

View File

@ -1,4 +1,4 @@
/* $NetBSD: divsi3.S,v 1.1 2000/05/09 21:56:05 bjh21 Exp $ */
/* $NetBSD: divsi3.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
@ -37,11 +37,14 @@ ENTRY(__modsi3)
#endif
L_overflow:
#if 0 /* FIXME */
#if !defined(_KERNEL) && !defined(_STANDALONE)
mov r0, #8 /* SIGFPE */
bl _C_FUNC(raise) /* raise it */
#endif
bl _C_LABEL(raise) /* raise it */
mov r0, #0
#else
/* XXX should cause a fatal error */
mvn r0, #0
#endif
#ifdef __APCS_26__
movs pc, lr
#else

View File

@ -1,4 +1,4 @@
/* $NetBSD: memcpy.S,v 1.2 2000/12/14 19:44:58 bjh21 Exp $ */
/* $NetBSD: memcpy.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.

View File

@ -1,4 +1,4 @@
/* $NetBSD: memmove.S,v 1.2 2000/12/14 19:44:58 bjh21 Exp $ */
/* $NetBSD: memmove.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.

View File

@ -1,4 +1,4 @@
/* $NetBSD: memset.S,v 1.1 2000/05/09 21:56:05 bjh21 Exp $ */
/* $NetBSD: memset.S,v 1.1 2000/12/29 20:51:57 bjh21 Exp $ */
/*
* Copyright (c) 1995 Mark Brinicombe.
@ -120,7 +120,7 @@ Lmemset_lessthanfour:
#else
moveq pc, lr /* Zero length so exit */
#endif
cmp r2, #0x00000002
strb r1, [r0], #0x0001 /* Set 1 byte */
strgeb r1, [r0], #0x0001 /* Set another byte */

View File

@ -1,9 +0,0 @@
# $NetBSD: Makefile.inc,v 1.3 2000/11/01 19:37:18 thorpej Exp $
SRCS+= __main.c imax.c imin.c lmax.c lmin.c max.c min.c ulmax.c ulmin.c \
byte_swap_2.S byte_swap_4.S bswap64.c bcmp.c ffs.c strcat.c strcmp.c \
strcpy.c strlen.c strncmp.c strncpy.c strtoul.c scanc.c skpc.c \
random.c strcasecmp.c strncasecmp.c __assert.c
SRCS+= divsi3.S
SRCS+= memchr.c memcmp.c _memcpy.S memcpy.S memmove.S memset.S
SRCS+= bcopy.S bzero.S