diff options
Diffstat (limited to 'i386/include')
-rw-r--r-- | i386/include/mach/proc_ops.h | 40 | ||||
-rw-r--r-- | i386/include/mach/sa/sys/varargs.h | 41 | ||||
-rw-r--r-- | i386/include/mach/setjmp.h | 58 |
3 files changed, 0 insertions, 139 deletions
diff --git a/i386/include/mach/proc_ops.h b/i386/include/mach/proc_ops.h deleted file mode 100644 index 7c379cf..0000000 --- a/i386/include/mach/proc_ops.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 1994 The University of Utah and - * the Center for Software Science (CSS). All rights reserved. - * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. - * - * THE UNIVERSITY OF UTAH AND CSS ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS - * IS" CONDITION. THE UNIVERSITY OF UTAH AND CSS DISCLAIM ANY LIABILITY OF - * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - * - * CSS requests users of this software to return to css-dist@cs.utah.edu any - * improvements that they make and grant CSS redistribution rights. - * - * Author: Bryan Ford, University of Utah CSS - */ -#ifndef _MACH_I386_PROC_OPS_H_ -#define _MACH_I386_PROC_OPS_H_ - -#include <mach/machine/vm_types.h> -#include <mach/inline.h> - -/* Returns the bit number of the most-significant set bit in `val', - e.g. 0 for 1, 1 for 2-3, 2 for 4-7, etc. - If `val' is 0 (i.e. no bits are set), the behavior is undefined. */ -MACH_INLINE int find_msb_set(natural_t val) -{ - int msb; - - asm(" - bsr %0,%0 - " : "=r" (msb) : "0" (val)); - - return msb; -} - -#endif _MACH_I386_PROC_OPS_H_ diff --git a/i386/include/mach/sa/sys/varargs.h b/i386/include/mach/sa/sys/varargs.h deleted file mode 100644 index ff953ea..0000000 --- a/i386/include/mach/sa/sys/varargs.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Mach Operating System - * Copyright (c) 1993 Carnegie Mellon University - * All Rights Reserved. - * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. - * - * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" - * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR - * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - * - * Carnegie Mellon requests users of this software to return to - * - * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU - * School of Computer Science - * Carnegie Mellon University - * Pittsburgh PA 15213-3890 - * - * any improvements or extensions that they make and grant Carnegie Mellon rights - * to redistribute these changes. - */ -/* - * varargs support for i386 - */ -#ifndef _MACH_SYS_VARARGS_H_ -#define _MACH_SYS_VARARGS_H_ - -#define va_dcl int va_alist; -typedef char * va_list; - -#define va_start(pvar) (pvar) = (va_list)&va_alist -#define va_end(pvar) -#define va_arg(pvar,type) ( \ - (pvar) += ((sizeof(type)+3) & ~0x3), \ - *((type *)((pvar) - ((sizeof(type)+3) & ~0x3))) ) - -#endif _MACH_SYS_VARARGS_H_ diff --git a/i386/include/mach/setjmp.h b/i386/include/mach/setjmp.h deleted file mode 100644 index 6ea42c8..0000000 --- a/i386/include/mach/setjmp.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Mach Operating System - * Copyright (c) 1993 Carnegie Mellon University - * All Rights Reserved. - * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. - * - * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" - * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR - * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - * - * Carnegie Mellon requests users of this software to return to - * - * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU - * School of Computer Science - * Carnegie Mellon University - * Pittsburgh PA 15213-3890 - * - * any improvements or extensions that they make and grant Carnegie Mellon - * the rights to redistribute these changes. - */ -/* - * Setjmp/longjmp buffer for i386. - */ -#ifndef _MACH_SETJMP_H_PROCESSED_ -#define _MACH_SETJMP_H_PROCESSED_ 1 - -/* XXX prefix these with mach_ so they don't interfere with higher layers? - This stuff is included by cthreads.h. */ - -/* XXX The original definition of jmp_buf[] causes problems using - * libthreads when linked against NetBSD and FreeBSD's libc because - * it's too small. When cthreads calls _setjmp, it gets the libc - * version which saves more state than it's expecting and overwrites - * important cthread data. =( This definition is big enough for all - * known systems so far (Linux's is 6, FreeBSD's is 9 and NetBSD's is - * 10). This file really shouldn't even be here, since we should be - * using libc's setjmp.h. - */ -#if 0 -#define _JBLEN 6 -#else -#define _JBLEN 10 -#endif - -typedef int jmp_buf[_JBLEN]; /* ebx, esi, edi, ebp, esp, eip */ - - -extern int setjmp (jmp_buf); -extern void longjmp (jmp_buf, int); -extern int _setjmp (jmp_buf); -extern void _longjmp (jmp_buf, int); - -#endif /* _MACH_SETJMP_H_PROCESSED_ */ |