summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2004-02-27 17:36:19 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2004-02-27 17:36:19 +0000
commitbf0a65b8ba35f3b89700a10c7eb23f2c8dc212cb (patch)
treec14e90f29f6ed57b9358529c8ef66d4b69c29a0f /lib
parentcadcabe0265db6753eccec3bcc53bdc5b837cc3d (diff)
change amd64's MACHINE_ARCH from x86_64 to amd64. There are many many
reasons for this, quite a few of them technical, and not all of them in response to Intel's broken ia32e crud. The gcc toolchain stays at x86_64 for now.
Diffstat (limited to 'lib')
-rw-r--r--lib/csu/Makefile4
-rw-r--r--lib/csu/x86_64/Makefile61
-rw-r--r--lib/csu/x86_64/crt0.c128
-rw-r--r--lib/csu/x86_64/md_init.h61
-rw-r--r--lib/libarch/Makefile4
-rw-r--r--lib/libarch/amd64/Makefile6
-rw-r--r--lib/libc/arch/amd64/Makefile.inc4
-rw-r--r--lib/libc/arch/x86_64/Makefile.inc5
-rw-r--r--lib/libc/arch/x86_64/SYS.h135
-rw-r--r--lib/libc/arch/x86_64/gen/Makefile.inc7
-rw-r--r--lib/libc/arch/x86_64/gen/_setjmp.S82
-rw-r--r--lib/libc/arch/x86_64/gen/alloca.S13
-rw-r--r--lib/libc/arch/x86_64/gen/fabs.S17
-rw-r--r--lib/libc/arch/x86_64/gen/flt_rounds.S30
-rw-r--r--lib/libc/arch/x86_64/gen/fpgetmask.S27
-rw-r--r--lib/libc/arch/x86_64/gen/fpgetround.S26
-rw-r--r--lib/libc/arch/x86_64/gen/fpgetsticky.S28
-rw-r--r--lib/libc/arch/x86_64/gen/fpsetmask.S42
-rw-r--r--lib/libc/arch/x86_64/gen/fpsetround.S49
-rw-r--r--lib/libc/arch/x86_64/gen/fpsetsticky.S43
-rw-r--r--lib/libc/arch/x86_64/gen/frexp.c74
-rw-r--r--lib/libc/arch/x86_64/gen/infinity.c12
-rw-r--r--lib/libc/arch/x86_64/gen/isinf.c51
-rw-r--r--lib/libc/arch/x86_64/gen/isnan.c51
-rw-r--r--lib/libc/arch/x86_64/gen/ldexp.c57
-rw-r--r--lib/libc/arch/x86_64/gen/modf.S91
-rw-r--r--lib/libc/arch/x86_64/gen/setjmp.S103
-rw-r--r--lib/libc/arch/x86_64/gen/sigsetjmp.S107
-rw-r--r--lib/libc/arch/x86_64/net/Makefile.inc4
-rw-r--r--lib/libc/arch/x86_64/net/htonl.S10
-rw-r--r--lib/libc/arch/x86_64/net/htons.S11
-rw-r--r--lib/libc/arch/x86_64/net/ntohl.S10
-rw-r--r--lib/libc/arch/x86_64/net/ntohs.S11
-rw-r--r--lib/libc/arch/x86_64/string/Makefile.inc6
-rw-r--r--lib/libc/arch/x86_64/string/ffs.S18
-rw-r--r--lib/libc/arch/x86_64/string/strlen.S18
-rw-r--r--lib/libc/arch/x86_64/sys/Ovfork.S67
-rw-r--r--lib/libc/arch/x86_64/sys/brk.S89
-rw-r--r--lib/libc/arch/x86_64/sys/cerror.S56
-rw-r--r--lib/libc/arch/x86_64/sys/exect.S57
-rw-r--r--lib/libc/arch/x86_64/sys/fork.S49
-rw-r--r--lib/libc/arch/x86_64/sys/rfork.S48
-rw-r--r--lib/libc/arch/x86_64/sys/sbrk.S82
-rw-r--r--lib/libc/arch/x86_64/sys/sigpending.S49
-rw-r--r--lib/libc/arch/x86_64/sys/sigprocmask.S66
-rw-r--r--lib/libc/arch/x86_64/sys/sigreturn.S60
-rw-r--r--lib/libc/arch/x86_64/sys/sigsuspend.S58
-rw-r--r--lib/libc/arch/x86_64/sys/syscall.S58
-rw-r--r--lib/libkvm/kvm_amd64.c209
-rw-r--r--lib/libm/Makefile4
-rw-r--r--lib/libpthread/arch/x86_64/_atomic_lock.c26
-rw-r--r--lib/libpthread/arch/x86_64/uthread_machdep.c108
-rw-r--r--lib/libpthread/arch/x86_64/uthread_machdep.h26
-rw-r--r--lib/libpthread/arch/x86_64/uthread_machdep_asm.S88
-rw-r--r--lib/libssl/crypto/Makefile4
-rw-r--r--lib/libssl/crypto/arch/x86_64/opensslconf.h180
56 files changed, 222 insertions, 2568 deletions
diff --git a/lib/csu/Makefile b/lib/csu/Makefile
index 7110281f872..608d26cce63 100644
--- a/lib/csu/Makefile
+++ b/lib/csu/Makefile
@@ -1,7 +1,7 @@
-# $OpenBSD: Makefile,v 1.11 2004/02/01 07:21:56 drahn Exp $
+# $OpenBSD: Makefile,v 1.12 2004/02/27 17:36:14 deraadt Exp $
.if make(obj)
-SUBDIR= alpha arm hppa i386 m68k m88k powerpc sparc sparc64 vax x86_64
+SUBDIR= alpha arm hppa i386 m68k m88k powerpc sparc sparc64 vax amd64
.else
SUBDIR= ${MACHINE_ARCH}
.endif
diff --git a/lib/csu/x86_64/Makefile b/lib/csu/x86_64/Makefile
deleted file mode 100644
index ddbe9a140f7..00000000000
--- a/lib/csu/x86_64/Makefile
+++ /dev/null
@@ -1,61 +0,0 @@
-# $OpenBSD: Makefile,v 1.1 2004/01/28 01:46:17 mickey Exp $
-
-CFLAGS+= -DLIBC_SCCS -fno-omit-frame-pointer
-OBJS= crt0.o gcrt0.o crtbegin.o crtend.o crtbeginS.o crtendS.o
-SRCS= crt0.c crtbegin.c crtbeginS.c crtend.c crtendS.c
-
-ELFDIR= ${.CURDIR}/../common_elf
-.PATH: ${ELFDIR}
-CFLAGS+= -I${ELFDIR} -I${.CURDIR}
-
-PICFLAG?=-fpic
-
-all: ${OBJS}
-
-crt0.o: crt0.c
- @echo ${COMPILE.c} -DCRT0 ${.CURDIR}/crt0.c -o ${.TARGET}
- @${COMPILE.c} -DCRT0 ${.CURDIR}/crt0.c -o ${.TARGET}.o
- @${LD} -x -r -o ${.TARGET} ${.TARGET}.o
- @rm -f ${.TARGET}.o
-
-gcrt0.o: crt0.c
- @echo ${COMPILE.c} -DMCRT0 ${.CURDIR}/crt0.c -o ${.TARGET}
- @${COMPILE.c} -DMCRT0 ${.CURDIR}/crt0.c -o ${.TARGET}.o
- @${LD} -x -r -o ${.TARGET} ${.TARGET}.o
- @rm -f ${.TARGET}.o
-
-crtbegin.o: crtbegin.c
- @echo ${COMPILE.c} ${ELFDIR}/crtbegin.c -o ${.TARGET}
- @${COMPILE.c} ${ELFDIR}/crtbegin.c -o ${.TARGET}.o
- @${LD} -x -r -o ${.TARGET} ${.TARGET}.o
- @rm -f ${.TARGET}.o
-
-crtbeginS.o: crtbeginS.c
- @echo ${COMPILE.c} ${PICFLAG} ${ELFDIR}/crtbeginS.c -o ${.TARGET}
- @${COMPILE.c} ${PICFLAG} ${ELFDIR}/crtbeginS.c -o ${.TARGET}.o
- @${LD} -x -r -o ${.TARGET} ${.TARGET}.o
- @rm -f ${.TARGET}.o
-
-crtend.o: crtend.c
- @echo ${COMPILE.c} ${ELFDIR}/crtend.c -o ${.TARGET}
- @${COMPILE.c} ${ELFDIR}/crtend.c -o ${.TARGET}.o
- @${LD} -x -r -o ${.TARGET} ${.TARGET}.o
- @rm -f ${.TARGET}.o
-
-crtendS.o: crtendS.c
- @echo ${COMPILE.c} ${PICFLAG} ${ELFDIR}/crtendS.c -o ${.TARGET}
- @${COMPILE.c} ${PICFLAG} ${ELFDIR}/crtendS.c -o ${.TARGET}.o
- @${LD} -x -r -o ${.TARGET} ${.TARGET}.o
- @rm -f ${.TARGET}.o
-
-realinstall:
- ${INSTALL} ${INSTALL_COPY} -o ${BINOWN} -g ${BINGRP} -m 444 ${OBJS} \
- ${DESTDIR}/usr/lib
-
-afterdepend: .depend
- @(TMP=/tmp/_depend$$$$; \
- sed -e 's/^\([^\.]*\).o[ ]*:/\1.o g\1.o:/' \
- < .depend > $$TMP; \
- mv $$TMP .depend)
-
-.include <bsd.prog.mk>
diff --git a/lib/csu/x86_64/crt0.c b/lib/csu/x86_64/crt0.c
deleted file mode 100644
index b948fe048de..00000000000
--- a/lib/csu/x86_64/crt0.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/* $OpenBSD: crt0.c,v 1.1 2004/01/28 01:46:17 mickey Exp $ */
-/*
- * Copyright (c) 1995 Christopher G. Demetriou
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by Christopher G. Demetriou
- * for the NetBSD Project.
- * 4. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: crt0.c,v 1.1 2004/01/28 01:46:17 mickey Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/param.h>
-#include <stdlib.h>
-
-static char *_strrchr(char *, char);
-
-char **environ;
-char *__progname = "";
-
-char __progname_storage[NAME_MAX+1];
-
-#ifdef MCRT0
-extern void monstartup(u_long, u_long);
-extern void _mcleanup(void);
-extern unsigned char _etext, _eprol;
-#endif /* MCRT0 */
-
-__asm(" .text ;\
- .align 8 ;\
- .globl __start ;\
- .globl _start ;\
-_start: ;\
-__start: ;\
- movq %rbx,%r9 ;\
- movq %rcx,%r8 ;\
- movq %rdx,%rcx ;\
- movq (%rsp),%rdi ;\
- leaq 16(%rsp,%rdi,8),%rdx ;\
- leaq 8(%rsp),%rsi ;\
- subq $8,%rsp ;\
- andq $~15,%rsp ;\
- addq $8,%rsp ;\
- jmp ___start ;\
-");
-
-void
-___start(argc, argv, envp, cleanup, obj, ps_strings)
- int argc;
- char **argv;
- char ** envp;
- void (*cleanup)(void); /* from shared loader */
- const void *obj; /* from shared loader */
- struct ps_strings *ps_strings;
-{
- char *namep;
- register struct kframe *kfp;
- char *s;
-
- environ = envp;
-
- if ((namep = argv[0]) != NULL) { /* NULL ptr if argc = 0 */
- if ((__progname = _strrchr(namep, '/')) == NULL)
- __progname = namep;
- else
- ++__progname;
- for (s = __progname_storage; *__progname &&
- s < &__progname_storage[sizeof __progname_storage - 1]; )
- *s++ = *__progname++;
- *s = '\0';
- __progname = __progname_storage;
- }
-
-#ifdef MCRT0
- atexit(_mcleanup);
- monstartup((u_long)&_eprol, (u_long)&_etext);
-#endif
-
- __init();
-
- exit(main(argc, argv, environ));
-}
-
-
-static char *
-_strrchr(p, ch)
-register char *p, ch;
-{
- register char *save;
-
- for (save = NULL;; ++p) {
- if (*p == ch)
- save = (char *)p;
- if (!*p)
- return(save);
- }
-/* NOTREACHED */
-}
-
-#ifdef MCRT0
-asm (" .text");
-asm ("_eprol:");
-#endif
-
diff --git a/lib/csu/x86_64/md_init.h b/lib/csu/x86_64/md_init.h
deleted file mode 100644
index 243091f7255..00000000000
--- a/lib/csu/x86_64/md_init.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* $OpenBSD: md_init.h,v 1.1 2004/01/28 01:46:17 mickey Exp $ */
-
-/*-
- * Copyright (c) 2001 Ross Harvey
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#define MD_SECT_CALL_FUNC(section, func) \
- __asm (".section "#section", \"ax\"\n" \
- " call " #func "\n" \
- " .previous")
-
-/*
- * Align is after because we want the function to start at the first
- * address of the section, but overall we want the section to be
- * aligned by the align amount.
- */
-#define MD_SECTION_PROLOGUE(sect, entry_pt) \
- __asm ( \
- ".section "#sect",\"ax\",@progbits \n" \
- " .globl " #entry_pt " \n" \
- " .type " #entry_pt ",@function \n" \
- #entry_pt": \n" \
- " .align 16 \n" \
- " /* fall thru */ \n" \
- " .previous")
-
-
-#define MD_SECTION_EPILOGUE(sect) \
- __asm ( \
- ".section "#sect",\"ax\",@progbits \n" \
- " ret \n" \
- " .previous")
diff --git a/lib/libarch/Makefile b/lib/libarch/Makefile
index 1aef148c108..0c58b6a39d2 100644
--- a/lib/libarch/Makefile
+++ b/lib/libarch/Makefile
@@ -1,6 +1,6 @@
-# $OpenBSD: Makefile,v 1.5 2004/02/26 00:11:05 deraadt Exp $
+# $OpenBSD: Makefile,v 1.6 2004/02/27 17:36:14 deraadt Exp $
# $NetBSD: Makefile,v 1.8 1996/02/21 02:43:52 jtk Exp $
-SUBDIR= alpha i386 x86_64
+SUBDIR= alpha i386 amd64
.include <bsd.subdir.mk>
diff --git a/lib/libarch/amd64/Makefile b/lib/libarch/amd64/Makefile
index b32bd7996b8..ec8831b5ccf 100644
--- a/lib/libarch/amd64/Makefile
+++ b/lib/libarch/amd64/Makefile
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile,v 1.1 2004/02/26 00:10:54 deraadt Exp $
+# $OpenBSD: Makefile,v 1.2 2004/02/27 17:36:14 deraadt Exp $
# $NetBSD: Makefile,v 1.1 1996/02/21 02:45:47 jtk Exp $
MAN+= x86_64_get_ldt.2 \
@@ -7,8 +7,8 @@ MANSUBDIR=amd64
MLINKS+=x86_64_get_ldt.2 x86_64_set_ldt.2 \
x86_64_get_ioperm.2 x86_64_set_ioperm.2
-.if ${MACHINE_ARCH} == "x86_64"
-.PATH: ${LIBC}/x86_64
+.if ${MACHINE_ARCH} == "amd64"
+.PATH: ${LIBC}/amd64
NOPIC=
SRCS+= x86_64_get_ldt.c x86_64_set_ldt.c \
x86_64_iopl.c x86_64_get_ioperm.c x86_64_set_ioperm.c
diff --git a/lib/libc/arch/amd64/Makefile.inc b/lib/libc/arch/amd64/Makefile.inc
index 53949f1c6bc..c6e08b41c00 100644
--- a/lib/libc/arch/amd64/Makefile.inc
+++ b/lib/libc/arch/amd64/Makefile.inc
@@ -1,5 +1,5 @@
-# $OpenBSD: Makefile.inc,v 1.1 2004/01/28 01:44:44 mickey Exp $
+# $OpenBSD: Makefile.inc,v 1.2 2004/02/27 17:36:14 deraadt Exp $
-KMINCLUDES= arch/x86_64/SYS.h
+KMINCLUDES= arch/amd64/SYS.h
KMSRCS= bcmp.S bzero.S ffs.S strcat.S strcmp.S strcpy.S strlen.S \
htonl.S htons.S ntohl.S ntohs.S
diff --git a/lib/libc/arch/x86_64/Makefile.inc b/lib/libc/arch/x86_64/Makefile.inc
deleted file mode 100644
index 53949f1c6bc..00000000000
--- a/lib/libc/arch/x86_64/Makefile.inc
+++ /dev/null
@@ -1,5 +0,0 @@
-# $OpenBSD: Makefile.inc,v 1.1 2004/01/28 01:44:44 mickey Exp $
-
-KMINCLUDES= arch/x86_64/SYS.h
-KMSRCS= bcmp.S bzero.S ffs.S strcat.S strcmp.S strcpy.S strlen.S \
- htonl.S htons.S ntohl.S ntohs.S
diff --git a/lib/libc/arch/x86_64/SYS.h b/lib/libc/arch/x86_64/SYS.h
deleted file mode 100644
index ebac9b0df16..00000000000
--- a/lib/libc/arch/x86_64/SYS.h
+++ /dev/null
@@ -1,135 +0,0 @@
-/* $OpenBSD: SYS.h,v 1.3 2004/02/22 21:28:21 miod Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)SYS.h 5.5 (Berkeley) 5/7/91
- * $NetBSD: SYS.h,v 1.5 2002/06/03 18:30:32 fvdl Exp $
- */
-
-/*
- * XXXfvdl change to use syscall/sysret.
- */
-
-#include <machine/asm.h>
-#include <sys/syscall.h>
-
-#ifdef __STDC__
-
-#define SYSTRAP(x) movl $(SYS_ ## x),%eax; movq %rcx, %r10; syscall
-#define OSYSTRAP(x) movl $(SYS_ ## x),%eax; int $0x80
-#define SYSENTRY(x) \
- ENTRY(_thread_sys_ ## x); \
- .weak _C_LABEL(x); \
- _C_LABEL(x) = _C_LABEL(_thread_sys_ ## x)
-#else
-
-#define SYSTRAP(x) movl $(SYS_/**/x),%eax; movq %rcx, %r10; syscall
-#define OSYSTRAP(x) movl $(SYS_/**/x),%eax; int $0x80
-#define SYSENTRY(x) \
- ENTRY(_thread_sys_/**/x); \
- .weak _C_LABEL(x); \
- _C_LABEL(x) = _C_LABEL(_thread_sys_/**/x)
-
-#endif
-
-#define CERROR _C_LABEL(__cerror)
-#define CURBRK _C_LABEL(__curbrk)
-
-#define _SYSCALL_NOERROR(x,y) \
- SYSENTRY(x); \
- SYSTRAP(y)
-
-#define _OSYSCALL_NOERROR(x,y) \
- SYSENTRY(x); \
- OSYSTRAP(y)
-
-#ifdef PIC
-#define _SYSCALL(x,y) \
- .text; _ALIGN_TEXT; \
- 2: mov PIC_GOT(CERROR), %rcx; \
- jmp *%rcx; \
- _SYSCALL_NOERROR(x,y); \
- jc 2b
-#define _OSYSCALL(x,y) \
- .text; _ALIGN_TEXT; \
- 2: mov PIC_GOT(CERROR), %rcx; \
- jmp *%rcx; \
- _OSYSCALL_NOERROR(x,y); \
- jc 2b
-#else
-#define _SYSCALL(x,y) \
- .text; _ALIGN_TEXT; \
- 2: jmp CERROR; \
- _SYSCALL_NOERROR(x,y); \
- jc 2b
-#define _OSYSCALL(x,y) \
- .text; _ALIGN_TEXT; \
- 2: jmp CERROR; \
- _OSYSCALL_NOERROR(x,y); \
- jc 2b
-#endif
-
-#define SYSCALL_NOERROR(x) \
- _SYSCALL_NOERROR(x,x)
-
-#define OSYSCALL_NOERROR(x) \
- _OSYSCALL_NOERROR(x,x)
-
-#define SYSCALL(x) \
- _SYSCALL(x,x)
-
-#define OSYSCALL(x) \
- _OSYSCALL(x,x)
-
-#define PSEUDO_NOERROR(x,y) \
- _SYSCALL_NOERROR(x,y); \
- ret
-
-#define PSEUDO(x,y) \
- _SYSCALL(x,y); \
- ret
-
-#define RSYSCALL_NOERROR(x) \
- PSEUDO_NOERROR(x,x)
-
-#define RSYSCALL(x) \
- PSEUDO(x,x)
-
-#define WSYSCALL(weak,strong) \
- WEAK_ALIAS(weak,strong); \
- PSEUDO(strong,weak)
-
- .globl CERROR
diff --git a/lib/libc/arch/x86_64/gen/Makefile.inc b/lib/libc/arch/x86_64/gen/Makefile.inc
deleted file mode 100644
index a150d95eba0..00000000000
--- a/lib/libc/arch/x86_64/gen/Makefile.inc
+++ /dev/null
@@ -1,7 +0,0 @@
-# $OpenBSD: Makefile.inc,v 1.1 2004/01/28 01:44:44 mickey Exp $
-
-SRCS+= _setjmp.S alloca.S fabs.S frexp.c infinity.c isinf.c isnan.c ldexp.c \
- modf.S setjmp.S sigsetjmp.S
-SRCS+= flt_rounds.S fpgetmask.S fpgetround.S fpgetsticky.S fpsetmask.S \
- fpsetround.S fpsetsticky.S
-
diff --git a/lib/libc/arch/x86_64/gen/_setjmp.S b/lib/libc/arch/x86_64/gen/_setjmp.S
deleted file mode 100644
index d9a59f7aa14..00000000000
--- a/lib/libc/arch/x86_64/gen/_setjmp.S
+++ /dev/null
@@ -1,82 +0,0 @@
-/* $OpenBSD: _setjmp.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: _setjmp.S,v 1.1 2001/06/19 00:25:02 fvdl Exp $ */
-
-/*
- * Copyright (c) 2001 Wasabi Systems, Inc.
- * All rights reserved.
- *
- * Written by Frank van der Linden for Wasabi Systems, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed for the NetBSD Project by
- * Wasabi Systems, Inc.
- * 4. The name of Wasabi Systems, Inc. may not be used to endorse
- * or promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-#include <machine/asm.h>
-#include <machine/setjmp.h>
-
-/*
- * C library -- _setjmp, _longjmp
- *
- * _longjmp(a,v)
- * will generate a "return(v)" from the last call to
- * _setjmp(a)
- * by restoring registers from the stack.
- * The previous signal state is NOT restored.
- */
-
-ENTRY(_setjmp)
- movq (%rsp),%r11
- movq %rbx,(_JB_RBX * 8)(%rdi)
- movq %rbp,(_JB_RBP * 8)(%rdi)
- movq %r12,(_JB_R12 * 8)(%rdi)
- movq %r13,(_JB_R13 * 8)(%rdi)
- movq %r14,(_JB_R14 * 8)(%rdi)
- movq %r15,(_JB_R15 * 8)(%rdi)
- movq %rsp,(_JB_RSP * 8)(%rdi)
- movq %r11,(_JB_PC * 8)(%rdi)
-
- xorl %eax,%eax
- ret
-
-ENTRY(_longjmp)
- movq (_JB_RBX * 8)(%rdi),%rbx
- movq (_JB_RBP * 8)(%rdi),%rbp
- movq (_JB_R12 * 8)(%rdi),%r12
- movq (_JB_R13 * 8)(%rdi),%r13
- movq (_JB_R14 * 8)(%rdi),%r14
- movq (_JB_R15 * 8)(%rdi),%r15
- movq (_JB_RSP * 8)(%rdi),%rsp
- movq (_JB_PC * 8)(%rdi),%r11
-
- movl %esi,%eax
- testl %eax,%eax
- jnz 1f
- incl %eax
-1: movq %r11,0(%rsp)
- ret
diff --git a/lib/libc/arch/x86_64/gen/alloca.S b/lib/libc/arch/x86_64/gen/alloca.S
deleted file mode 100644
index 8c15583012c..00000000000
--- a/lib/libc/arch/x86_64/gen/alloca.S
+++ /dev/null
@@ -1,13 +0,0 @@
-/* $OpenBSD: alloca.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: alloca.S,v 1.1 2001/06/19 00:25:02 fvdl Exp $ */
-
-#include <machine/asm.h>
-
-ENTRY(alloca)
- popq %rdx
- movq %rsp,%rcx
- addq $15,%rdi /* round up to 16 bytes */
- andq $~15,%rdi
- subq %rdi,%rsp
- movq %rsp,%rax
- jmp *%rdx
diff --git a/lib/libc/arch/x86_64/gen/fabs.S b/lib/libc/arch/x86_64/gen/fabs.S
deleted file mode 100644
index ab31ac612fb..00000000000
--- a/lib/libc/arch/x86_64/gen/fabs.S
+++ /dev/null
@@ -1,17 +0,0 @@
-/* $OpenBSD: fabs.S,v 1.2 2004/02/08 17:29:57 deraadt Exp $ */
-/* $NetBSD: fabs.S,v 1.1 2001/06/19 00:25:02 fvdl Exp $ */
-
-#include <machine/asm.h>
-
-/*
- * Ok, this sucks. Is there really no way to push an xmm register onto
- * the FP stack directly?
- */
-
-ENTRY(fabs)
- movsd %xmm0, -8(%rsp)
- fldl -8(%rsp)
- fabs
- fstpl -8(%rsp)
- movsd -8(%rsp),%xmm0
- ret
diff --git a/lib/libc/arch/x86_64/gen/flt_rounds.S b/lib/libc/arch/x86_64/gen/flt_rounds.S
deleted file mode 100644
index 009c59ab64a..00000000000
--- a/lib/libc/arch/x86_64/gen/flt_rounds.S
+++ /dev/null
@@ -1,30 +0,0 @@
-/* $OpenBSD: flt_rounds.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: flt_rounds.S,v 1.2 2002/06/06 23:04:35 fvdl Exp $ */
-
-/*
- * Written by J.T. Conklin, Apr 4, 1995
- * Public domain.
- */
-
-#include <machine/asm.h>
-
- .text
- _ALIGN_TEXT
-_map:
- .byte 1 /* round to nearest */
- .byte 3 /* round to negative infinity */
- .byte 2 /* round to positive infinity */
- .byte 0 /* round to zero */
-
-ENTRY(__flt_rounds)
- fnstcw -4(%rsp)
- movl -4(%rsp),%eax
- shrl $10,%eax
- andl $3,%eax
-#ifdef PIC
- leaq PIC_GOT(_map),%rcx
- movb (%rcx,%rax,1),%al
-#else
- movb _map(,%rax,1),%al
-#endif
- ret
diff --git a/lib/libc/arch/x86_64/gen/fpgetmask.S b/lib/libc/arch/x86_64/gen/fpgetmask.S
deleted file mode 100644
index 688ba49cddc..00000000000
--- a/lib/libc/arch/x86_64/gen/fpgetmask.S
+++ /dev/null
@@ -1,27 +0,0 @@
-/* $OpenBSD: fpgetmask.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fpgetmask.S,v 1.3 2002/06/12 19:17:22 fvdl Exp $ */
-
-/*
- * Written by J.T. Conklin, Apr 4, 1995
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-/*
- * XXX only read x87 control word here. If an application only
- * uses the fp* interface to manipulate FP bits, it should
- * always remain in sync with the SSE mxcsr register.
- */
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(fpgetmask, _fpgetmask)
-ENTRY(_fpgetmask)
-#else
-ENTRY(fpgetmask)
-#endif
- fnstcw -4(%rsp)
- movl -4(%rsp),%eax
- notl %eax
- andl $63,%eax
- ret
diff --git a/lib/libc/arch/x86_64/gen/fpgetround.S b/lib/libc/arch/x86_64/gen/fpgetround.S
deleted file mode 100644
index 5220b3ef396..00000000000
--- a/lib/libc/arch/x86_64/gen/fpgetround.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* $OpenBSD: fpgetround.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fpgetround.S,v 1.3 2002/06/12 19:17:22 fvdl Exp $ */
-
-/*
- * Written by J.T. Conklin, Apr 4, 1995
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-/*
- * XXX store only x87 state. If an application only uses the fp*
- * interface, this should be in sync with the SSE mxcsr register.
- */
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(fpgetround, _fpgetround)
-ENTRY(_fpgetround)
-#else
-ENTRY(fpgetround)
-#endif
- fnstcw -4(%rsp)
- movl -4(%rsp),%eax
- rorl $10,%eax
- andl $3,%eax
- ret
diff --git a/lib/libc/arch/x86_64/gen/fpgetsticky.S b/lib/libc/arch/x86_64/gen/fpgetsticky.S
deleted file mode 100644
index fd12e2b500a..00000000000
--- a/lib/libc/arch/x86_64/gen/fpgetsticky.S
+++ /dev/null
@@ -1,28 +0,0 @@
-/* $OpenBSD: fpgetsticky.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fpgetsticky.S,v 1.3 2002/06/12 19:17:22 fvdl Exp $ */
-
-/*
- * Written by Frank van der Linden at Wasabi Systems for NetBSD.
- * Public domain.
- *
- */
-
-#include <machine/asm.h>
-
-/*
- * XXX read both the x87 and SSE status words here, and OR
- * them to get a complete picture of exceptions.
- */
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(fpgetsticky, _fpgetsticky)
-ENTRY(_fpgetsticky)
-#else
-ENTRY(fpgetsticky)
-#endif
- fnstsw -4(%rsp)
- stmxcsr -8(%rsp)
- movl -4(%rsp),%eax
- orl -8(%rsp),%eax
- andl $63,%eax
- ret
diff --git a/lib/libc/arch/x86_64/gen/fpsetmask.S b/lib/libc/arch/x86_64/gen/fpsetmask.S
deleted file mode 100644
index 665d55e8e47..00000000000
--- a/lib/libc/arch/x86_64/gen/fpsetmask.S
+++ /dev/null
@@ -1,42 +0,0 @@
-/* $OpenBSD: fpsetmask.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fpsetmask.S,v 1.3 2002/06/12 19:17:22 fvdl Exp $ */
-
-/*
- * Written by Frank van der Linden at Wasabi Systems for NetBSD.
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-/*
- * XXX set both the x87 control word and the SSE mxcsr register.
- * Applications should only set exception and round flags
- * via the fp*() interface, otherwise the status words
- * will get our of sync.
- */
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(fpsetmask, _fpsetmask)
-ENTRY(_fpsetmask)
-#else
-ENTRY(fpsetmask)
-#endif
- fnstcw -4(%rsp)
- stmxcsr -8(%rsp)
- andl $63,%edi
- notl %edi
-
- movl -4(%rsp),%edx
- movl %edx,%eax
- andl %edi,%edx
- movl %edx,-4(%rsp)
-
- movl -8(%rsp),%edx
- roll $7,%edi
- andl %edi,%edx
- movl %edx,-8(%rsp)
-
- fldcw -4(%rsp)
- ldmxcsr -8(%rsp)
- andl $63,%eax
- ret
diff --git a/lib/libc/arch/x86_64/gen/fpsetround.S b/lib/libc/arch/x86_64/gen/fpsetround.S
deleted file mode 100644
index b8508f8b6bd..00000000000
--- a/lib/libc/arch/x86_64/gen/fpsetround.S
+++ /dev/null
@@ -1,49 +0,0 @@
-/* $OpenBSD: fpsetround.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fpsetround.S,v 1.3 2002/06/12 19:17:22 fvdl Exp $ */
-
-/*
- * Written by Frank van der Linden at Wasabi Systems for NetBSD.
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-/*
- * XXX set both the x87 control word and the SSE mxcsr register.
- * Applications should only set exception and round flags
- * via the fp*() interface, otherwise the status words
- * will get our of sync.
- */
-
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(fpsetround, _fpsetround)
-ENTRY(_fpsetround)
-#else
-ENTRY(fpsetround)
-#endif
- fnstcw -4(%rsp)
- stmxcsr -8(%rsp)
-
- andl $3,%edi
-
- movl -4(%rsp),%edx
- rorl $10,%edx
- movl %edx,%eax
- andl $3,%eax
-
- andl $~3,%edx
- orl %edi,%edx
- roll $10,%edx
- movl %edx,-4(%rsp)
-
- movl -8(%rsp),%edx
- rorl $13,%edx
- andl $~3,%edx
- orl %edi,%edx
- roll $13,%edx
- movl %edx,-8(%rsp)
-
- ldmxcsr -8(%rsp)
- fldcw -4(%rsp)
- ret
diff --git a/lib/libc/arch/x86_64/gen/fpsetsticky.S b/lib/libc/arch/x86_64/gen/fpsetsticky.S
deleted file mode 100644
index c8e61101a12..00000000000
--- a/lib/libc/arch/x86_64/gen/fpsetsticky.S
+++ /dev/null
@@ -1,43 +0,0 @@
-/* $OpenBSD: fpsetsticky.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fpsetsticky.S,v 1.3 2002/06/12 19:17:23 fvdl Exp $ */
-
-/*
- * Written by Frank van der Linden at Wasabi Systems for NetBSD
- * Public domain.
- */
-
-#include <machine/asm.h>
-
-/*
- * XXX set both the x87 status word and the SSE mxcsr register.
- * Applications should only set exception and round flags
- * via the fp*() interface, otherwise the status words
- * will get our of sync.
- */
-
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(fpsetsticky, _fpsetsticky)
-ENTRY(_fpsetsticky)
-#else
-ENTRY(fpsetsticky)
-#endif
- fnstenv -28(%rsp)
- stmxcsr -32(%rsp)
-
- andl $63,%edi
-
- movl -24(%rsp),%eax
- movl %eax,%edx
- andl $63,%eax
-
- orl %edi,%edx
- movl %edx,-24(%rsp)
-
- movl -32(%rsp),%edx
- orl %edi,%edx
- movl %edx,-32(%rsp)
-
- ldmxcsr -32(%rsp)
- fldenv -28(%rsp)
- ret
diff --git a/lib/libc/arch/x86_64/gen/frexp.c b/lib/libc/arch/x86_64/gen/frexp.c
deleted file mode 100644
index bc84467fa9e..00000000000
--- a/lib/libc/arch/x86_64/gen/frexp.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* $OpenBSD: frexp.c,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-
-/*
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This software was developed by the Computer Systems Engineering group
- * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
- * contributed to Berkeley.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: frexp.c,v 1.1 2004/01/28 01:44:45 mickey Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <machine/ieee.h>
-
-/*
- * Split the given value into a fraction in the range [0.5, 1.0) and
- * an exponent, such that frac * (2^exp) == value. If value is 0,
- * return 0.
- */
-double
-frexp(value, eptr)
- double value;
- int *eptr;
-{
- union {
- double v;
- struct ieee_double s;
- } u;
-
- if (value) {
- /*
- * Fractions in [0.5..1.0) have an exponent of 2^-1.
- * Leave Inf and NaN alone, however.
- * WHAT ABOUT DENORMS?
- */
- u.v = value;
- if (u.s.dbl_exp != DBL_EXP_INFNAN) {
- *eptr = u.s.dbl_exp - (DBL_EXP_BIAS - 1);
- u.s.dbl_exp = DBL_EXP_BIAS - 1;
- }
- return (u.v);
- } else {
- *eptr = 0;
- return ((double)0);
- }
-}
diff --git a/lib/libc/arch/x86_64/gen/infinity.c b/lib/libc/arch/x86_64/gen/infinity.c
deleted file mode 100644
index d1c2aa9a2f4..00000000000
--- a/lib/libc/arch/x86_64/gen/infinity.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: infinity.c,v 1.2 2004/02/08 17:31:44 deraadt Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-/* infinity.c */
-
-#include <math.h>
-
-/* bytes for +Infinity on a 387 */
-char __infinity[] __attribute__((__aligned__(sizeof(double)))) =
- { 0, 0, 0, 0, 0, 0, (char)0xf0, 0x7f };
-
diff --git a/lib/libc/arch/x86_64/gen/isinf.c b/lib/libc/arch/x86_64/gen/isinf.c
deleted file mode 100644
index 6d29660d7f2..00000000000
--- a/lib/libc/arch/x86_64/gen/isinf.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* $OpenBSD: isinf.c,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-
-/*
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This software was developed by the Computer Systems Engineering group
- * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
- * contributed to Berkeley.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: isinf.c,v 1.1 2004/01/28 01:44:45 mickey Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <machine/ieee.h>
-
-int
-isinf(d)
- double d;
-{
- struct ieee_double *p = (struct ieee_double *)&d;
-
- return (p->dbl_exp == DBL_EXP_INFNAN &&
- p->dbl_frach == 0 && p->dbl_fracl == 0);
-}
diff --git a/lib/libc/arch/x86_64/gen/isnan.c b/lib/libc/arch/x86_64/gen/isnan.c
deleted file mode 100644
index 5df82ecce25..00000000000
--- a/lib/libc/arch/x86_64/gen/isnan.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* $OpenBSD: isnan.c,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-
-/*
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This software was developed by the Computer Systems Engineering group
- * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
- * contributed to Berkeley.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: isnan.c,v 1.1 2004/01/28 01:44:45 mickey Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <machine/ieee.h>
-
-int
-isnan(d)
- double d;
-{
- struct ieee_double *p = (struct ieee_double *)&d;
-
- return (p->dbl_exp == DBL_EXP_INFNAN &&
- (p->dbl_frach != 0 || p->dbl_fracl != 0));
-}
diff --git a/lib/libc/arch/x86_64/gen/ldexp.c b/lib/libc/arch/x86_64/gen/ldexp.c
deleted file mode 100644
index b3e95956652..00000000000
--- a/lib/libc/arch/x86_64/gen/ldexp.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* $OpenBSD: ldexp.c,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Charles Hannum.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: ldexp.c,v 1.1 2004/01/28 01:44:45 mickey Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * ldexp(value, exp): return value * (2 ** exp).
- */
-
-double
-ldexp (double value, int exp)
-{
- double temp;
-#if __GNUC__ >= 2
- __asm ("fscale"
- : "=t" (temp)
- : "0" (value), "u" ((double)exp));
-#else
- __asm ("fscale; fstp %%st(1)"
- : "=f" (temp)
- : "f" (value), "0" ((double)exp));
-#endif
- return (temp);
-}
diff --git a/lib/libc/arch/x86_64/gen/modf.S b/lib/libc/arch/x86_64/gen/modf.S
deleted file mode 100644
index 44ef74ab668..00000000000
--- a/lib/libc/arch/x86_64/gen/modf.S
+++ /dev/null
@@ -1,91 +0,0 @@
-/* $OpenBSD: modf.S,v 1.2 2004/02/08 17:29:39 deraadt Exp $ */
-/* $NetBSD: modf.S,v 1.1 2001/06/19 00:25:03 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Sean Eric Fagan.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)modf.s 5.5 (Berkeley) 3/18/91
- */
-
-#include <machine/asm.h>
-
-/*
- * modf(value, iptr): return fractional part of value, and stores the
- * integral part into iptr (a pointer to double).
- *
- * Written by Sean Eric Fagan (sef@kithrup.COM)
- * Sun Mar 11 20:27:30 PST 1990
- */
-
-/* With CHOP mode on, frndint behaves as TRUNC does. Useful. */
-ENTRY(modf)
-
- /*
- * Set chop mode.
- */
- fnstcw -12(%rsp)
- movw -12(%rsp),%dx
- orw $3072,%dx
- movw %dx,-16(%rsp)
- fldcw -16(%rsp)
-
- /*
- * Get integral part.
- */
- movsd %xmm0,-24(%rsp)
- fldl -24(%rsp)
- frndint
- fstpl -8(%rsp)
-
- /*
- * Restore control word.
- */
- fldcw -12(%rsp)
-
- /*
- * Store integral part.
- */
- movsd -8(%rsp),%xmm0
- movsd %xmm0,(%rdi)
-
- /*
- * Get fractional part and return it.
- */
- fldl -24(%rsp)
- fsubl -8(%rsp)
- fstpl -8(%rsp)
- movsd -8(%rsp),%xmm0
-
- ret
diff --git a/lib/libc/arch/x86_64/gen/setjmp.S b/lib/libc/arch/x86_64/gen/setjmp.S
deleted file mode 100644
index b7ae81f2141..00000000000
--- a/lib/libc/arch/x86_64/gen/setjmp.S
+++ /dev/null
@@ -1,103 +0,0 @@
-/* $OpenBSD: setjmp.S,v 1.2 2004/02/09 21:25:08 deraadt Exp $ */
-/* $NetBSD: __setjmp14.S,v 1.1 2001/06/19 00:25:02 fvdl Exp $ */
-
-/*
- * Copyright (c) 2001 Wasabi Systems, Inc.
- * All rights reserved.
- *
- * Written by Frank van der Linden for Wasabi Systems, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed for the NetBSD Project by
- * Wasabi Systems, Inc.
- * 4. The name of Wasabi Systems, Inc. may not be used to endorse
- * or promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-#include <machine/asm.h>
-#include <machine/setjmp.h>
-
-/*
- * C library -- _setjmp, _longjmp
- *
- * longjmp(a,v)
- * will generate a "return(v)" from the last call to
- * setjmp(a)
- * by restoring registers from the stack.
- * The previous signal state is restored.
- */
-
-ENTRY(setjmp)
- pushq %rdi
- xorq %rdi,%rdi
-#ifdef PIC
- call PIC_PLT(_C_LABEL(sigblock))
-#else
- call _C_LABEL(sigblock)
-#endif
- popq %rdi
- movq %rax,(_JB_SIGMASK * 8)(%rdi)
-
- movq (%rsp),%r11
- movq %rbx,(_JB_RBX * 8)(%rdi)
- movq %rbp,(_JB_RBP * 8)(%rdi)
- movq %r12,(_JB_R12 * 8)(%rdi)
- movq %r13,(_JB_R13 * 8)(%rdi)
- movq %r14,(_JB_R14 * 8)(%rdi)
- movq %r15,(_JB_R15 * 8)(%rdi)
- movq %rsp,(_JB_RSP * 8)(%rdi)
- movq %r11,(_JB_PC * 8)(%rdi)
-
-2: xorl %eax,%eax
- ret
-
-ENTRY(longjmp)
- movq %rdi,%r12
- movl %esi,%r8d
-
- movq (_JB_SIGMASK * 8)(%rdi),%rdi
- pushq %r8
-#ifdef PIC
- call PIC_PLT(_C_LABEL(sigsetmask))
-#else
- call _C_LABEL(sigsetmask)
-#endif
- popq %r8
- movq (_JB_RBX * 8)(%r12),%rbx
- movq (_JB_RBP * 8)(%r12),%rbp
- movq (_JB_R13 * 8)(%r12),%r13
- movq (_JB_R14 * 8)(%r12),%r14
- movq (_JB_R15 * 8)(%r12),%r15
- movq (_JB_RSP * 8)(%r12),%rsp
- movq (_JB_PC * 8)(%r12),%r11
- movq (_JB_R12 * 8)(%r12),%r12
-
- movl %r8d,%eax
- testl %eax,%eax
- jnz 1f
- incl %eax
-1: movq %r11,0(%rsp)
- ret
diff --git a/lib/libc/arch/x86_64/gen/sigsetjmp.S b/lib/libc/arch/x86_64/gen/sigsetjmp.S
deleted file mode 100644
index e4c26d50927..00000000000
--- a/lib/libc/arch/x86_64/gen/sigsetjmp.S
+++ /dev/null
@@ -1,107 +0,0 @@
-/* $OpenBSD: sigsetjmp.S,v 1.2 2004/02/09 21:25:08 deraadt Exp $ */
-/* $NetBSD: __setjmp14.S,v 1.1 2001/06/19 00:25:02 fvdl Exp $ */
-
-/*
- * Copyright (c) 2001 Wasabi Systems, Inc.
- * All rights reserved.
- *
- * Written by Frank van der Linden for Wasabi Systems, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed for the NetBSD Project by
- * Wasabi Systems, Inc.
- * 4. The name of Wasabi Systems, Inc. may not be used to endorse
- * or promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-#include <machine/asm.h>
-#include <machine/setjmp.h>
-
-/*
- * C library -- _setjmp, _longjmp
- *
- * longjmp(a,v)
- * will generate a "return(v)" from the last call to
- * setjmp(a)
- * by restoring registers from the stack.
- * The previous signal state is restored.
- */
-
-ENTRY(sigsetjmp)
- movl %esi,(_JB_SIGFLAG * 8)(%rdi)
- testl %esi,%esi
- jz 2f
-
- pushq %rdi
- xorq %rdi,%rdi
-#ifdef PIC
- call PIC_PLT(_C_LABEL(sigblock))
-#else
- call _C_LABEL(sigblock)
-#endif
- popq %rdi
- movq %rax,(_JB_SIGMASK * 8)(%rdi)
-
-2: movq (%rsp),%r11
- movq %rbx,(_JB_RBX * 8)(%rdi)
- movq %rbp,(_JB_RBP * 8)(%rdi)
- movq %r12,(_JB_R12 * 8)(%rdi)
- movq %r13,(_JB_R13 * 8)(%rdi)
- movq %r14,(_JB_R14 * 8)(%rdi)
- movq %r15,(_JB_R15 * 8)(%rdi)
- movq %rsp,(_JB_RSP * 8)(%rdi)
- movq %r11,(_JB_PC * 8)(%rdi)
-
-2: xorl %eax,%eax
- ret
-
-ENTRY(siglongjmp)
- movq %rdi,%r12
- pushq %rsi
- cmpl $0, (_JB_SIGFLAG * 8)(%rdi)
- jz 2f
-
- movq (_JB_SIGMASK * 8)(%rdi),%rdi
-#ifdef PIC
- call PIC_PLT(_C_LABEL(sigsetmask))
-#else
- call _C_LABEL(sigsetmask)
-#endif
-2: popq %rax
- movq (_JB_RBX * 8)(%r12),%rbx
- movq (_JB_RBP * 8)(%r12),%rbp
- movq (_JB_R13 * 8)(%r12),%r13
- movq (_JB_R14 * 8)(%r12),%r14
- movq (_JB_R15 * 8)(%r12),%r15
- movq (_JB_RSP * 8)(%r12),%rsp
- movq (_JB_PC * 8)(%r12),%r11
- movq (_JB_R12 * 8)(%r12),%r12
-
- testl %eax,%eax
- jnz 1f
- incl %eax
-1: movq %r11,0(%rsp)
- ret
diff --git a/lib/libc/arch/x86_64/net/Makefile.inc b/lib/libc/arch/x86_64/net/Makefile.inc
deleted file mode 100644
index 4c046a624dd..00000000000
--- a/lib/libc/arch/x86_64/net/Makefile.inc
+++ /dev/null
@@ -1,4 +0,0 @@
-# $OpenBSD: Makefile.inc,v 1.1 2004/01/28 01:44:45 mickey Exp $
-
-SRCS+= htonl.S htons.S ntohl.S ntohs.S
-LSRCS+= htonl.c htons.c ntohl.c ntohs.c
diff --git a/lib/libc/arch/x86_64/net/htonl.S b/lib/libc/arch/x86_64/net/htonl.S
deleted file mode 100644
index e4c951a4b40..00000000000
--- a/lib/libc/arch/x86_64/net/htonl.S
+++ /dev/null
@@ -1,10 +0,0 @@
-/* $OpenBSD: htonl.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-
-/* Written by Artur Grabowski. Public Domain */
-
-#include <machine/asm.h>
-
-ENTRY(_C_LABEL(htonl))
- movl %edi,%eax
- bswapl %eax
- ret
diff --git a/lib/libc/arch/x86_64/net/htons.S b/lib/libc/arch/x86_64/net/htons.S
deleted file mode 100644
index 62295abcd97..00000000000
--- a/lib/libc/arch/x86_64/net/htons.S
+++ /dev/null
@@ -1,11 +0,0 @@
-/* $OpenBSD: htons.S,v 1.2 2004/02/10 00:08:11 drahn Exp $ */
-
-/* Written by Artur Grabowski. Public Domain */
-
-#include <machine/asm.h>
-
-ENTRY(_C_LABEL(htons))
- movl %edi,%eax
- xchgb %ah,%al
- ret
-
diff --git a/lib/libc/arch/x86_64/net/ntohl.S b/lib/libc/arch/x86_64/net/ntohl.S
deleted file mode 100644
index 0e39c1317e0..00000000000
--- a/lib/libc/arch/x86_64/net/ntohl.S
+++ /dev/null
@@ -1,10 +0,0 @@
-/* $OpenBSD: ntohl.S,v 1.2 2004/02/10 00:08:11 drahn Exp $ */
-
-/* Written by Artur Grabowski. Public Domain */
-
-#include <machine/asm.h>
-
-ENTRY(_C_LABEL(ntohl))
- movl %edi,%eax
- bswapl %eax
- ret
diff --git a/lib/libc/arch/x86_64/net/ntohs.S b/lib/libc/arch/x86_64/net/ntohs.S
deleted file mode 100644
index 3ee61fc5684..00000000000
--- a/lib/libc/arch/x86_64/net/ntohs.S
+++ /dev/null
@@ -1,11 +0,0 @@
-/* $OpenBSD: ntohs.S,v 1.2 2004/02/10 00:08:11 drahn Exp $ */
-
-/* Written by Artur Grabowski. Public Domain */
-
-#include <machine/asm.h>
-
-ENTRY(_C_LABEL(ntohs))
- movl %edi,%eax
- xchgb %ah,%al
- ret
-
diff --git a/lib/libc/arch/x86_64/string/Makefile.inc b/lib/libc/arch/x86_64/string/Makefile.inc
deleted file mode 100644
index 002194e1d8c..00000000000
--- a/lib/libc/arch/x86_64/string/Makefile.inc
+++ /dev/null
@@ -1,6 +0,0 @@
-# $OpenBSD: Makefile.inc,v 1.1 2004/01/28 01:44:45 mickey Exp $
-
-SRCS+= bcmp.c ffs.S index.c memchr.c memcmp.c bcopy.c bzero.c \
- rindex.c strcat.c strcmp.c strcpy.c strcspn.c strlen.S \
- strncat.c strncmp.c strncpy.c strpbrk.c strsep.c \
- strspn.c strstr.c swab.c memset.c strlcpy.c strlcat.c
diff --git a/lib/libc/arch/x86_64/string/ffs.S b/lib/libc/arch/x86_64/string/ffs.S
deleted file mode 100644
index 2666bc49e9d..00000000000
--- a/lib/libc/arch/x86_64/string/ffs.S
+++ /dev/null
@@ -1,18 +0,0 @@
-/* $OpenBSD: ffs.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/*
- * Written by J.T. Conklin <jtc@netbsd.org>.
- * Public domain.
- * Adapted for NetBSD/x86_64 by Frank van der Linden <fvdl@wasabisystems.com>
- */
-
-#include <machine/asm.h>
-
-ENTRY(ffs)
- bsfl %edi,%eax
- jz L1 /* ZF is set if all bits are 0 */
- incl %eax /* bits numbered from 1, not 0 */
- ret
-
- _ALIGN_TEXT
-L1: xorl %eax,%eax /* clear result */
- ret
diff --git a/lib/libc/arch/x86_64/string/strlen.S b/lib/libc/arch/x86_64/string/strlen.S
deleted file mode 100644
index 3afccb8f1ac..00000000000
--- a/lib/libc/arch/x86_64/string/strlen.S
+++ /dev/null
@@ -1,18 +0,0 @@
-/* $OpenBSD: strlen.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/*
- * Written by J.T. Conklin <jtc@netbsd.org>.
- * Public domain.
- * Adapted for NetBSD/x86_64 by Frank van der Linden <fvdl@wasabisystems.com>
- */
-
-#include <machine/asm.h>
-
-ENTRY(strlen)
- cld /* set search forward */
- xorl %eax,%eax /* set search for null terminator */
- movq $-1,%rcx /* set search for lots of characters */
- repne /* search! */
- scasb
- notq %rcx /* get length by taking complement */
- leaq -1(%rcx),%rax /* and subtracting one */
- ret
diff --git a/lib/libc/arch/x86_64/sys/Ovfork.S b/lib/libc/arch/x86_64/sys/Ovfork.S
deleted file mode 100644
index 865d460014f..00000000000
--- a/lib/libc/arch/x86_64/sys/Ovfork.S
+++ /dev/null
@@ -1,67 +0,0 @@
-/* $OpenBSD: Ovfork.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: Ovfork.S,v 1.2 2002/06/03 18:30:33 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)Ovfork.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-/*
- * pid = vfork();
- *
- * %edx == 0 in parent process, %edx == 1 in child process.
- * %eax == pid of child in parent, %eax == pid of parent in child.
- *
- */
-SYSENTRY(vfork)
- popq %r9 /* my rta into r9 */
- SYSTRAP(vfork)
- jc err
- decl %edx
- andl %edx,%eax
- jmp *%r9
-err:
- pushq %r9
-#ifdef PIC
- movq PIC_GOT(CERROR), %rcx
- jmp *%rcx
-#else
- jmp CERROR
-#endif
diff --git a/lib/libc/arch/x86_64/sys/brk.S b/lib/libc/arch/x86_64/sys/brk.S
deleted file mode 100644
index 3c73525096e..00000000000
--- a/lib/libc/arch/x86_64/sys/brk.S
+++ /dev/null
@@ -1,89 +0,0 @@
-/* $OpenBSD: brk.S,v 1.2 2004/02/10 00:22:51 drahn Exp $ */
-/* $NetBSD: brk.S,v 1.2 2002/06/03 18:30:33 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)brk.s 5.2 (Berkeley) 12/17/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
- .globl _end
- .globl _C_LABEL(__minbrk)
- .globl _C_LABEL(minbrk)
- .globl __curbrk
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(brk, _brk)
-#endif
-
- .data
-_C_LABEL(minbrk):
-_C_LABEL(__minbrk):
- .quad _end
- .text
-
-SYSENTRY(_brk)
-#ifdef PIC
- movq PIC_GOT(_C_LABEL(__minbrk)),%rdx
- cmpq %rdi,(%rdx)
- jb 1f
- movq (%rdx),%rdi
-1:
- SYSTRAP(break)
- jc err
- movq PIC_GOT(__curbrk),%rdx # set up GOT addressing
- movq %rdi,(%rdx)
- xorl %eax,%eax
- ret
-err:
- movq PIC_GOT(CERROR),%rdx
- jmp *%rdx
-#else
- cmpq %rdi,_C_LABEL(__minbrk)(%rip)
- jb 1f
- movq _C_LABEL(__minbrk)(%rip),%rdi
-1:
- SYSTRAP(break)
- jc err
- movq %rdi,__curbrk(%rip)
- xorl %eax,%eax
- ret
-err:
- jmp CERROR
-#endif
diff --git a/lib/libc/arch/x86_64/sys/cerror.S b/lib/libc/arch/x86_64/sys/cerror.S
deleted file mode 100644
index 2bd7fb1484f..00000000000
--- a/lib/libc/arch/x86_64/sys/cerror.S
+++ /dev/null
@@ -1,56 +0,0 @@
-/* $OpenBSD: cerror.S,v 1.3 2004/02/18 16:51:21 miod Exp $ */
-/* $NetBSD: cerror.S,v 1.2 2002/06/03 18:30:33 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)cerror.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
- .globl _C_LABEL(errno)
-
-_ENTRY(CERROR)
-#ifdef PIC
- movq PIC_GOT(_C_LABEL(errno)), %rcx
- movl %eax, (%rcx)
-#else
- movl %eax, _C_LABEL(errno)(%rip)
-#endif /* PIC */
- movq $-1,%rax
- ret
diff --git a/lib/libc/arch/x86_64/sys/exect.S b/lib/libc/arch/x86_64/sys/exect.S
deleted file mode 100644
index 31028402b6a..00000000000
--- a/lib/libc/arch/x86_64/sys/exect.S
+++ /dev/null
@@ -1,57 +0,0 @@
-/* $OpenBSD: exect.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: exect.S,v 1.1 2001/06/19 00:25:06 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)exect.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-#include <machine/psl.h>
-
-SYSENTRY(exect)
- pushfq
- orb $(PSL_T>>8),1(%rsp)
- popfq
- SYSTRAP(execve)
-#ifdef PIC
- movq PIC_GOT(CERROR), %rcx
- jmp *%rcx
-#else
- jmp CERROR
-#endif
diff --git a/lib/libc/arch/x86_64/sys/fork.S b/lib/libc/arch/x86_64/sys/fork.S
deleted file mode 100644
index 155ee7227d6..00000000000
--- a/lib/libc/arch/x86_64/sys/fork.S
+++ /dev/null
@@ -1,49 +0,0 @@
-/* $OpenBSD: fork.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: fork.S,v 1.2 2003/02/13 02:50:51 nathanw Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)fork.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-SYSCALL(fork)
- decl %edx /* from 1 to 0 in child, 0 to -1 in parent */
- andl %edx,%eax
- ret /* pid = fork(); */
diff --git a/lib/libc/arch/x86_64/sys/rfork.S b/lib/libc/arch/x86_64/sys/rfork.S
deleted file mode 100644
index caedbbd9aff..00000000000
--- a/lib/libc/arch/x86_64/sys/rfork.S
+++ /dev/null
@@ -1,48 +0,0 @@
-/* $OpenBSD: rfork.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)fork.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-SYSCALL(rfork)
- decl %edx /* from 1 to 0 in child, 0 to -1 in parent */
- andl %edx,%eax
- ret /* pid = rfork(); */
diff --git a/lib/libc/arch/x86_64/sys/sbrk.S b/lib/libc/arch/x86_64/sys/sbrk.S
deleted file mode 100644
index 677068c4978..00000000000
--- a/lib/libc/arch/x86_64/sys/sbrk.S
+++ /dev/null
@@ -1,82 +0,0 @@
-/* $OpenBSD: sbrk.S,v 1.2 2004/02/10 00:22:51 drahn Exp $ */
-/* $NetBSD: sbrk.S,v 1.1 2001/06/19 00:25:06 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)sbrk.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
- .globl _end
- .globl __curbrk
-
-#ifdef WEAK_ALIAS
-WEAK_ALIAS(sbrk, _sbrk)
-#endif
-
- .data
-__curbrk: .quad _end
- .text
-
-SYSENTRY(_sbrk)
-#ifdef PIC
- movq PIC_GOT(__curbrk),%rdx
- movq (%rdx),%rax
- addq %rax,%rdi
- SYSTRAP(break)
- jc err
- movq PIC_GOT(__curbrk),%rdx
- movq (%rdx),%rax
- movq %rdi,(%rdx)
- ret
-err:
- mov PIC_GOT(CERROR),%rdx
- jmp *%rdx
-#else
- movq __curbrk(%rip),%rax
- movq %rdi,%rsi
- addq %rax,%rdi
- SYSTRAP(break)
- jc err
- movq __curbrk(%rip),%rax
- addq %rsi,__curbrk(%rip)
- ret
-err:
- jmp CERROR
-#endif
diff --git a/lib/libc/arch/x86_64/sys/sigpending.S b/lib/libc/arch/x86_64/sys/sigpending.S
deleted file mode 100644
index bbebd47c6bf..00000000000
--- a/lib/libc/arch/x86_64/sys/sigpending.S
+++ /dev/null
@@ -1,49 +0,0 @@
-/* $OpenBSD: sigpending.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: sigpending.S,v 1.1 2001/06/19 00:25:06 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)sigpending.s 5.1 (Berkeley) 7/1/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-SYSCALL(sigpending)
- movl %eax,(%rdi) # store old mask
- xorl %eax,%eax
- ret
diff --git a/lib/libc/arch/x86_64/sys/sigprocmask.S b/lib/libc/arch/x86_64/sys/sigprocmask.S
deleted file mode 100644
index c5a999582cf..00000000000
--- a/lib/libc/arch/x86_64/sys/sigprocmask.S
+++ /dev/null
@@ -1,66 +0,0 @@
-/* $OpenBSD: sigprocmask.S,v 1.2 2004/02/09 21:27:21 deraadt Exp $ */
-/* $NetBSD: sigprocmask.S,v 1.1 2001/06/19 00:25:06 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)sigprocmask.s 5.2 (Berkeley) 12/17/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-SYSENTRY(sigprocmask)
- testq %rsi,%rsi # check new sigset pointer
- jnz 1f # if not null, indirect
- movl $1,%edi # SIG_BLOCK
- jmp 2f
-1: movl (%rsi),%esi # fetch indirect ...
-2: SYSTRAP(sigprocmask)
- jc err
- testq %rdx,%rdx # test if old mask requested
- jz out
- movl %eax,(%rdx) # store old mask
-out:
- xorl %eax,%eax
- ret
-err:
-#ifdef PIC
- movq PIC_GOT(CERROR), %rcx
- jmp *%rcx
-#else
- jmp CERROR
-#endif
diff --git a/lib/libc/arch/x86_64/sys/sigreturn.S b/lib/libc/arch/x86_64/sys/sigreturn.S
deleted file mode 100644
index 0faf6942988..00000000000
--- a/lib/libc/arch/x86_64/sys/sigreturn.S
+++ /dev/null
@@ -1,60 +0,0 @@
-/* $OpenBSD: sigreturn.S,v 1.2 2004/02/22 21:28:22 miod Exp $ */
-/* $NetBSD: __sigreturn14.S,v 1.1 2001/06/19 00:25:06 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)sigreturn.s 5.2 (Berkeley) 12/17/90"
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-/*
- * We must preserve the state of the registers as the user has set them up.
- */
-#if 0 /* XXXfvdl fix later, but this one is really low priority */
-#ifdef GPROF
-#undef ENTRY
-#define MCOUNT_SYMBOL __mcount
-#define ENTRY(x) \
- .globl _/**/x; _ALIGN_TEXT; _/**/x: pusha ; \
- .data; 1:; .long 0; .text; movl $1b,%eax; call MCOUNT_SYMBOL; popa ; nop
-#endif /* GPROF */
-#endif
-
-OSYSCALL(sigreturn)
- ret
diff --git a/lib/libc/arch/x86_64/sys/sigsuspend.S b/lib/libc/arch/x86_64/sys/sigsuspend.S
deleted file mode 100644
index 985bf61b99d..00000000000
--- a/lib/libc/arch/x86_64/sys/sigsuspend.S
+++ /dev/null
@@ -1,58 +0,0 @@
-/* $OpenBSD: sigsuspend.S,v 1.1 2004/01/28 01:44:45 mickey Exp $ */
-/* $NetBSD: sigsuspend.S,v 1.1 2001/06/19 00:25:07 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)sigsuspend.s 5.2 (Berkeley) 12/17/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-SYSENTRY(sigsuspend)
- movl (%rdi),%edi # indirect to mask arg
- SYSTRAP(sigsuspend)
- jc err
- xorl %eax,%eax # shouldn t happen
- ret
-err:
-#ifdef PIC
- movq PIC_GOT(CERROR), %rcx
- jmp *%rcx
-#else
- jmp CERROR
-#endif
diff --git a/lib/libc/arch/x86_64/sys/syscall.S b/lib/libc/arch/x86_64/sys/syscall.S
deleted file mode 100644
index ca64daf7ccf..00000000000
--- a/lib/libc/arch/x86_64/sys/syscall.S
+++ /dev/null
@@ -1,58 +0,0 @@
-/* $OpenBSD: syscall.S,v 1.2 2004/02/11 07:09:22 deraadt Exp $ */
-/* $NetBSD: syscall.S,v 1.2 2002/06/03 18:30:33 fvdl Exp $ */
-
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: @(#)syscall.s 5.1 (Berkeley) 4/23/90
- */
-
-#include <machine/asm.h>
-
-#include "SYS.h"
-
-SYSENTRY(syscall)
- movq $0,%rax
- movq %rcx,%r10
- syscall
- jc err
- ret
-err:
-#ifdef PIC
- movq PIC_GOT(CERROR), %rcx
- jmp *%rcx
-#else
- jmp CERROR
-#endif
diff --git a/lib/libkvm/kvm_amd64.c b/lib/libkvm/kvm_amd64.c
new file mode 100644
index 00000000000..d8e27c4c94e
--- /dev/null
+++ b/lib/libkvm/kvm_amd64.c
@@ -0,0 +1,209 @@
+/* $OpenBSD: kvm_amd64.c,v 1.1 2004/02/27 17:36:13 deraadt Exp $ */
+/* $NetBSD: kvm_x86_64.c,v 1.3 2002/06/05 22:01:55 fvdl Exp $ */
+
+/*-
+ * Copyright (c) 1989, 1992, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * This code is derived from software developed by the Computer Systems
+ * Engineering group at Lawrence Berkeley Laboratory under DARPA contract
+ * BG 91-66 and contributed to Berkeley.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/cdefs.h>
+
+/*
+ * x86-64 machine dependent routines for kvm.
+ */
+
+#include <sys/param.h>
+#include <sys/user.h>
+#include <sys/proc.h>
+#include <sys/stat.h>
+#include <sys/kcore.h>
+#include <machine/kcore.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <nlist.h>
+#include <kvm.h>
+
+#include <uvm/uvm_extern.h>
+
+#include <limits.h>
+#include <db.h>
+
+#include "kvm_private.h"
+
+#include <machine/pmap.h>
+#include <machine/pte.h>
+#include <machine/vmparam.h>
+
+void
+_kvm_freevtop(kd)
+ kvm_t *kd;
+{
+
+ /* Not actually used for anything right now, but safe. */
+ if (kd->vmst != 0)
+ free(kd->vmst);
+}
+
+/*ARGSUSED*/
+int
+_kvm_initvtop(kd)
+ kvm_t *kd;
+{
+
+ return (0);
+}
+
+/*
+ * Translate a kernel virtual address to a physical address.
+ */
+int
+_kvm_kvatop(kd, va, pa)
+ kvm_t *kd;
+ u_long va;
+ u_long *pa;
+{
+ cpu_kcore_hdr_t *cpu_kh;
+ u_long page_off;
+ pd_entry_t pde;
+ pt_entry_t pte;
+ paddr_t pde_pa, pte_pa;
+
+ if (ISALIVE(kd)) {
+ _kvm_err(kd, 0, "vatop called in live kernel!");
+ return (0);
+ }
+
+ cpu_kh = kd->cpu_data;
+ page_off = va & PGOFSET;
+
+ /*
+ * Find and read all entries to get to the pa.
+ */
+
+ /*
+ * Level 4.
+ */
+ pde_pa = cpu_kh->ptdpaddr + (pl4_i(va) * sizeof(pd_entry_t));
+ if (pread(kd->pmfd, (void *)&pde, sizeof(pde),
+ _kvm_pa2off(kd, pde_pa)) != sizeof(pde)) {
+ _kvm_syserr(kd, 0, "could not read PT level 4 entry");
+ goto lose;
+ }
+ if ((pde & PG_V) == 0) {
+ _kvm_err(kd, 0, "invalid translation (invalid level 4 PDE)");
+ goto lose;
+ }
+
+ /*
+ * Level 3.
+ */
+ pde_pa = (pde_pa + PG_FRAME) + (pl3_i(va) * sizeof(pd_entry_t));
+ if (pread(kd->pmfd, (void *)&pde, sizeof(pde),
+ _kvm_pa2off(kd, pde_pa)) != sizeof(pde)) {
+ _kvm_syserr(kd, 0, "could not read PT level 3 entry");
+ goto lose;
+ }
+ if ((pde & PG_V) == 0) {
+ _kvm_err(kd, 0, "invalid translation (invalid level 3 PDE)");
+ goto lose;
+ }
+
+ /*
+ * Level 2.
+ */
+ pde_pa = (pde_pa & PG_FRAME) + (pl2_i(va) * sizeof(pd_entry_t));
+ if (pread(kd->pmfd, (void *)&pde, sizeof(pde),
+ _kvm_pa2off(kd, pde_pa)) != sizeof(pde)) {
+ _kvm_syserr(kd, 0, "could not read PT level 2 entry");
+ goto lose;
+ }
+ if ((pde & PG_V) == 0) {
+ _kvm_err(kd, 0, "invalid translation (invalid level 2 PDE)");
+ goto lose;
+ }
+
+
+ /*
+ * Level 1.
+ */
+ pte_pa = (pde_pa & PG_FRAME) + (pl1_i(va) * sizeof(pt_entry_t));
+ if (pread(kd->pmfd, (void *) &pte, sizeof(pte),
+ _kvm_pa2off(kd, pte_pa)) != sizeof(pte)) {
+ _kvm_syserr(kd, 0, "could not read PTE");
+ goto lose;
+ }
+ /*
+ * Validate the PTE and return the physical address.
+ */
+ if ((pte & PG_V) == 0) {
+ _kvm_err(kd, 0, "invalid translation (invalid PTE)");
+ goto lose;
+ }
+ *pa = (pte & PG_FRAME) + page_off;
+ return (int)(NBPG - page_off);
+
+ lose:
+ *pa = (u_long)~0L;
+ return (0);
+}
+
+/*
+ * Translate a physical address to a file-offset in the crash dump.
+ */
+off_t
+_kvm_pa2off(kd, pa)
+ kvm_t *kd;
+ u_long pa;
+{
+ cpu_kcore_hdr_t *cpu_kh;
+ phys_ram_seg_t *ramsegs;
+ off_t off;
+ int i;
+
+ cpu_kh = kd->cpu_data;
+ ramsegs = (void *)((char *)(void *)cpu_kh + ALIGN(sizeof *cpu_kh));
+
+ off = 0;
+ for (i = 0; i < cpu_kh->nmemsegs; i++) {
+ if (pa >= ramsegs[i].start &&
+ (pa - ramsegs[i].start) < ramsegs[i].size) {
+ off += (pa - ramsegs[i].start);
+ break;
+ }
+ off += ramsegs[i].size;
+ }
+
+ return (kd->dump_off + off);
+}
diff --git a/lib/libm/Makefile b/lib/libm/Makefile
index 758eb08eb4a..992a3ed424d 100644
--- a/lib/libm/Makefile
+++ b/lib/libm/Makefile
@@ -1,5 +1,5 @@
# $NetBSD: Makefile,v 1.28 1995/11/20 22:06:19 jtc Exp $
-# $OpenBSD: Makefile,v 1.31 2004/02/08 18:03:48 deraadt Exp $
+# $OpenBSD: Makefile,v 1.32 2004/02/27 17:36:13 deraadt Exp $
#
# @(#)Makefile 5.1beta 93/09/24
#
@@ -63,7 +63,7 @@ ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
s_ilogb.S s_ilogbf.S s_log1p.S s_log1pf.S s_logb.S s_logbf.S \
s_rint.S s_rintf.S s_scalbn.S s_scalbnf.S s_significand.S \
s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S
-.elif (${MACHINE_ARCH} == "x86_64")
+.elif (${MACHINE_ARCH} == "amd64")
.PATH: ${.CURDIR}/arch/x86_64
CPPFLAGS+=-I${.CURDIR}/arch/x86_64
ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
diff --git a/lib/libpthread/arch/x86_64/_atomic_lock.c b/lib/libpthread/arch/x86_64/_atomic_lock.c
deleted file mode 100644
index 0d187dee87d..00000000000
--- a/lib/libpthread/arch/x86_64/_atomic_lock.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* $OpenBSD: _atomic_lock.c,v 1.3 2004/02/25 04:10:53 deraadt Exp $ */
-
-/* David Leonard, <d@csee.uq.edu.au>. Public domain. */
-
-/*
- * Atomic lock for amd64 -- taken from i386 code.
- */
-
-#include "spinlock.h"
-
-int
-_atomic_lock(volatile _spinlock_lock_t *lock)
-{
- _spinlock_lock_t old;
-
- /*
- * Use the eXCHanGe instruction to swap the lock value with
- * a local variable containing the locked state.
- */
- old = _SPINLOCK_LOCKED;
- __asm__("xchg %0,%1"
- : "=r" (old), "=m" (*lock)
- : "0" (old), "1" (*lock));
-
- return (old != _SPINLOCK_UNLOCKED);
-}
diff --git a/lib/libpthread/arch/x86_64/uthread_machdep.c b/lib/libpthread/arch/x86_64/uthread_machdep.c
deleted file mode 100644
index c827a35a10c..00000000000
--- a/lib/libpthread/arch/x86_64/uthread_machdep.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/* $OpenBSD: uthread_machdep.c,v 1.3 2004/02/25 04:10:53 deraadt Exp $ */
-
-/*
- * Copyright (c) 2004 Theo de Raadt
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-
-#include <machine/param.h>
-#include <pthread.h>
-#include "pthread_private.h"
-
-struct frame {
- long fr_gs;
- long fr_fs;
- long fr_es;
- long fr_ds;
-
- long flag;
- long fr_r15;
- long fr_r14;
- long fr_r13;
- long fr_r12;
-
- long fr_r11;
- long fr_r10;
- long fr_r9;
- long fr_r8;
-
- long fr_rdi;
- long fr_rsi;
- long fr_rbp;
-
- long fr_rbx;
- long fr_rdx;
- long fr_rcx;
- long fr_rax;
-
- long fr_rip;
- int fr_cs; /* XXX unreachable? */
- int pad;
-};
-
-#define copyreg(reg, lval) \
- __asm__("mov %%" #reg ", %0" : "=g"(lval))
-
-/*
- * Given a stack and an entry function, initialise a state
- * structure that can be later switched to.
- */
-void
-_thread_machdep_init(struct _machdep_state* statep, void *base, int len,
- void (*entry)(void))
-{
- struct frame *f;
- int foo;
-
- /* Locate the initial frame, aligned at the top of the stack */
- f = (struct frame *)(((long)base + len - sizeof *f) & ~ALIGNBYTES);
-
- copyreg(cs, foo);
- f->fr_cs = foo;
- copyreg(ds, foo);
- f->fr_ds = foo;
- copyreg(es, foo);
- f->fr_es = foo;
- copyreg(fs, foo);
- f->fr_fs = foo;
- copyreg(gs, foo);
- f->fr_gs = foo;
-
- f->fr_rbp = (long)-1;
- f->fr_rip = (long)entry;
-
- statep->rsp = (long)f;
-
- _thread_machdep_save_float_state(statep);
-}
-
-#define fxsave(addr) __asm("fxsave %0" : "=m" (*addr))
-#define fxrstor(addr) __asm("fxrstor %0" : : "m" (*addr))
-#define fwait() __asm("fwait")
-#define fninit() __asm("fninit")
-
-void
-_thread_machdep_save_float_state(struct _machdep_state *ms)
-{
- fxsave(&ms->fpreg);
- fninit();
- fwait();
-}
-
-void
-_thread_machdep_restore_float_state(struct _machdep_state *ms)
-{
- fxrstor(&ms->fpreg);
-}
diff --git a/lib/libpthread/arch/x86_64/uthread_machdep.h b/lib/libpthread/arch/x86_64/uthread_machdep.h
deleted file mode 100644
index 34532db8b48..00000000000
--- a/lib/libpthread/arch/x86_64/uthread_machdep.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* $OpenBSD: uthread_machdep.h,v 1.3 2004/02/25 04:10:53 deraadt Exp $ */
-
-/*
- * Copyright (c) 2004 Theo de Raadt
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#include <sys/types.h>
-#include <machine/fpu.h>
-
-struct _machdep_state {
- long rsp;
- /* must be 128-bit aligned */
- struct savefpu fpreg __attribute__ ((aligned (16)));
-};
diff --git a/lib/libpthread/arch/x86_64/uthread_machdep_asm.S b/lib/libpthread/arch/x86_64/uthread_machdep_asm.S
deleted file mode 100644
index 818d157de93..00000000000
--- a/lib/libpthread/arch/x86_64/uthread_machdep_asm.S
+++ /dev/null
@@ -1,88 +0,0 @@
-/* $OpenBSD: uthread_machdep_asm.S,v 1.3 2004/02/25 04:10:53 deraadt Exp $ */
-
-/*
- * Copyright (c) 2004 Theo de Raadt
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#include <machine/asm.h>
-
-/*
- * Switch stacks
- */
-
-/* void _thread_machdep_switch(new, oldsave); */
-ENTRY(_thread_machdep_switch)
- pushq %rax
- pushq %rcx
- pushq %rdx
- pushq %rbx
-
- pushq %rbp
- pushq %rsi
- pushq %rdi
-
- pushq %r8
- pushq %r9
- pushq %r10
- pushq %r11
-
- pushq %r12
- pushq %r13
- pushq %r14
- pushq %r15
- movq $0xdeaf12345678beaf, %r15
- pushq %r15
-
- movl %ds,%eax
- pushq %rax
- movl %es,%eax
- pushq %rax
- movl %fs,%eax
- pushq %rax
- movl %gs,%eax
- pushq %rax
-
- movq %rsp, 0(%rsi) /* *arg2 = %rsp */
- movq 0(%rdi), %rsp /* %rsp = *arg1 */
-
- popq %rax
- movl %eax,%gs
- popq %rax
- movl %eax,%fs
- popq %rax
- movl %eax,%es
- popq %rax
- movl %eax,%ds
-
- popq %r15 # flag word.
- popq %r15
- popq %r14
- popq %r13
- popq %r12
-
- popq %r11
- popq %r10
- popq %r9
- popq %r8
-
- popq %rdi
- popq %rsi
- popq %rbp
-
- popq %rbx
- popq %rdx
- popq %rcx
- popq %rax
- ret
diff --git a/lib/libssl/crypto/Makefile b/lib/libssl/crypto/Makefile
index 5179b85de77..9baf729b5b9 100644
--- a/lib/libssl/crypto/Makefile
+++ b/lib/libssl/crypto/Makefile
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile,v 1.35 2004/01/29 03:05:33 deraadt Exp $
+# $OpenBSD: Makefile,v 1.36 2004/02/27 17:36:13 deraadt Exp $
LIB= crypto
@@ -7,7 +7,7 @@ SSL_SRC= ${.CURDIR}/../${SSLEAYDIST}
LCRYPTO_SRC= ${SSL_SRC}/crypto
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "arm" || \
- ${MACHINE_ARCH} == "vax" || ${MACHINE_ARCH} == "x86_64" || \
+ ${MACHINE_ARCH} == "vax" || ${MACHINE_ARCH} == "amd64" || \
${MACHINE_ARCH} == "alpha"
CFLAGS+= -DL_ENDIAN
.else
diff --git a/lib/libssl/crypto/arch/x86_64/opensslconf.h b/lib/libssl/crypto/arch/x86_64/opensslconf.h
deleted file mode 100644
index c33ccc8a0f9..00000000000
--- a/lib/libssl/crypto/arch/x86_64/opensslconf.h
+++ /dev/null
@@ -1,180 +0,0 @@
-/* opensslconf.h */
-/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
-
-/* OpenSSL was configured with the following options: */
-#ifndef OPENSSL_DOING_MAKEDEPEND
-
-#ifndef OPENSSL_NO_KRB5
-# define OPENSSL_NO_KRB5
-#endif
-
-#endif /* OPENSSL_DOING_MAKEDEPEND */
-
-/* The OPENSSL_NO_* macros are also defined as NO_* if the application
- asks for it. This is a transient feature that is provided for those
- who haven't had the time to do the appropriate changes in their
- applications. */
-#ifdef OPENSSL_ALGORITHM_DEFINES
-# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
-# define NO_KRB5
-# endif
-#endif
-
-/* crypto/opensslconf.h.in */
-
-/* Generate 80386 code? */
-#undef I386_ONLY
-
-#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
-#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
-#define OPENSSLDIR "/etc/ssl"
-#endif
-#endif
-
-#undef OPENSSL_UNISTD
-#define OPENSSL_UNISTD <unistd.h>
-
-#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
-
-#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
-#define IDEA_INT unsigned int
-#endif
-
-#if defined(HEADER_MD2_H) && !defined(MD2_INT)
-#define MD2_INT unsigned int
-#endif
-
-#if defined(HEADER_RC2_H) && !defined(RC2_INT)
-/* I need to put in a mod for the alpha - eay */
-#define RC2_INT unsigned int
-#endif
-
-#if defined(HEADER_RC4_H)
-#if !defined(RC4_INT)
-/* using int types make the structure larger but make the code faster
- * on most boxes I have tested - up to %20 faster. */
-/*
- * I don't know what does "most" mean, but declaring "int" is a must on:
- * - Intel P6 because partial register stalls are very expensive;
- * - elder Alpha because it lacks byte load/store instructions;
- */
-#define RC4_INT unsigned int
-#endif
-#if !defined(RC4_CHUNK)
-/*
- * This enables code handling data aligned at natural CPU word
- * boundary. See crypto/rc4/rc4_enc.c for further details.
- */
-#undef RC4_CHUNK
-#endif
-#endif
-
-#if (defined(HEADER_DES_H) || defined(HEADER_DES_OLD_H)) && !defined(DES_LONG)
-/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
- * %20 speed up (longs are 8 bytes, int's are 4). */
-#ifndef DES_LONG
-#define DES_LONG unsigned int
-#endif
-#endif
-
-#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
-#define CONFIG_HEADER_BN_H
-#undef BN_LLONG
-
-/* Should we define BN_DIV2W here? */
-
-/* Only one for the following should be defined */
-/* The prime number generation stuff may not work when
- * EIGHT_BIT but I don't care since I've only used this mode
- * for debuging the bignum libraries */
-#define SIXTY_FOUR_BIT_LONG
-#undef SIXTY_FOUR_BIT
-#undef THIRTY_TWO_BIT
-#undef SIXTEEN_BIT
-#undef EIGHT_BIT
-#endif
-
-#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
-#define CONFIG_HEADER_RC4_LOCL_H
-/* if this is defined data[i] is used instead of *data, this is a %20
- * speedup on x86 */
-#undef RC4_INDEX
-#endif
-
-#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
-#define CONFIG_HEADER_BF_LOCL_H
-#undef BF_PTR
-#endif /* HEADER_BF_LOCL_H */
-
-#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
-#define CONFIG_HEADER_DES_LOCL_H
-#ifndef DES_DEFAULT_OPTIONS
-/* the following is tweaked from a config script, that is why it is a
- * protected undef/define */
-#ifndef DES_PTR
-#define DES_PTR
-#endif
-
-/* This helps C compiler generate the correct code for multiple functional
- * units. It reduces register dependancies at the expense of 2 more
- * registers */
-#ifndef DES_RISC1
-#undef DES_RISC1
-#endif
-
-#ifndef DES_RISC2
-#define DES_RISC2
-#endif
-
-#if defined(DES_RISC1) && defined(DES_RISC2)
-YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
-#endif
-
-/* Unroll the inner loop, this sometimes helps, sometimes hinders.
- * Very mucy CPU dependant */
-#ifndef DES_UNROLL
-#undef DES_UNROLL
-#endif
-
-/* These default values were supplied by
- * Peter Gutman <pgut001@cs.auckland.ac.nz>
- * They are only used if nothing else has been defined */
-#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
-/* Special defines which change the way the code is built depending on the
- CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
- even newer MIPS CPU's, but at the moment one size fits all for
- optimization options. Older Sparc's work better with only UNROLL, but
- there's no way to tell at compile time what it is you're running on */
-
-#if defined( sun ) /* Newer Sparc's */
-# define DES_PTR
-# define DES_RISC1
-# define DES_UNROLL
-#elif defined( __ultrix ) /* Older MIPS */
-# define DES_PTR
-# define DES_RISC2
-# define DES_UNROLL
-#elif defined( __osf1__ ) /* Alpha */
-# define DES_PTR
-# define DES_RISC2
-#elif defined ( _AIX ) /* RS6000 */
- /* Unknown */
-#elif defined( __hpux ) /* HP-PA */
- /* Unknown */
-#elif defined( __aux ) /* 68K */
- /* Unknown */
-#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */
-# define DES_UNROLL
-#elif defined( __sgi ) /* Newer MIPS */
-# define DES_PTR
-# define DES_RISC2
-# define DES_UNROLL
-#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */
-# define DES_PTR
-# define DES_RISC1
-# define DES_UNROLL
-#endif /* Systems-specific speed defines */
-#endif
-
-#endif /* DES_DEFAULT_OPTIONS */
-#endif /* HEADER_DES_LOCL_H */