1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-30 22:43:12 +03:00

Ancient files moved to ports repository

This commit is contained in:
Roland McGrath
2004-10-24 19:23:43 +00:00
parent 8aeb5058b6
commit 89c235754c
132 changed files with 0 additions and 7537 deletions

View File

@ -1,5 +0,0 @@
clone.S
setresuid.c
setresgid.c
setfsuid.c
setfsgid.c

View File

@ -1,106 +0,0 @@
/* This file is needed by libio to define various configuration parameters.
These are always the same in the GNU C library. */
/* We have to keep a separate copy for CRIS, because we don't use thunks,
and libstdc++-v2 (which we currently use) cares. The C++ ABI is
changed totally with GCC 3.0, where we should not need a separate file. */
#ifndef _G_config_h
#define _G_config_h 1
/* Define types for libio in terms of the standard internal type names. */
#include <bits/types.h>
#define __need_size_t
#define __need_wchar_t
#define __need_wint_t
#define __need_NULL
#include <stddef.h>
#ifndef _WINT_T
/* Integral type unchanged by default argument promotions that can
hold any value corresponding to members of the extended character
set, as well as at least one value that does not correspond to any
member of the extended character set. */
# define _WINT_T
typedef unsigned int wint_t;
#endif
#define __need_mbstate_t
#include <wchar.h>
#define _G_size_t size_t
typedef struct
{
__off_t __pos;
__mbstate_t __state;
} _G_fpos_t;
typedef struct
{
__off64_t __pos;
__mbstate_t __state;
} _G_fpos64_t;
#define _G_ssize_t __ssize_t
#define _G_off_t __off_t
#define _G_off64_t __off64_t
#define _G_pid_t __pid_t
#define _G_uid_t __uid_t
#define _G_wchar_t wchar_t
#define _G_wint_t wint_t
#define _G_stat64 stat64
#include <gconv.h>
typedef union
{
struct __gconv_info __cd;
struct
{
struct __gconv_info __cd;
struct __gconv_step_data __data;
} __combined;
} _G_iconv_t;
typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
#define _G_HAVE_BOOL 1
/* These library features are always available in the GNU C library. */
#define _G_HAVE_ATEXIT 1
#define _G_HAVE_SYS_CDEFS 1
#define _G_HAVE_SYS_WAIT 1
#define _G_NEED_STDARG_H 1
#define _G_va_list __gnuc_va_list
#define _G_HAVE_PRINTF_FP 1
#define _G_HAVE_MMAP 1
#define _G_HAVE_LONG_DOUBLE_IO 1
#define _G_HAVE_IO_FILE_OPEN 1
#define _G_HAVE_IO_GETLINE_INFO 1
#define _G_IO_IO_FILE_VERSION 0x20001
#define _G_OPEN64 __open64
#define _G_LSEEK64 __lseek64
#define _G_MMAP64 __mmap64
#define _G_FSTAT64(fd,buf) __fxstat64 (_STAT_VER, fd, buf)
/* This is defined by <bits/stat.h> if `st_blksize' exists. */
#define _G_HAVE_ST_BLKSIZE defined (_STATBUF_ST_BLKSIZE)
#define _G_BUFSIZ 8192
/* These are the vtbl details for ELF. */
#define _G_NAMES_HAVE_UNDERSCORE 0
#define _G_VTABLE_LABEL_HAS_LENGTH 1
#undef _G_USING_THUNKS
#define _G_VTABLE_LABEL_PREFIX "_vt."
#define _G_VTABLE_LABEL_PREFIX_ID _vt.
#if defined __cplusplus || defined __STDC__
# define _G_ARGS(ARGLIST) ARGLIST
#else
# define _G_ARGS(ARGLIST) ()
#endif
#endif /* _G_config.h */

View File

@ -1,189 +0,0 @@
/* O_*, F_*, FD_* bit values for Linux.
Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2004
Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _FCNTL_H
# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
#endif
#include <sys/types.h>
/* open/fcntl - O_SYNC is only implemented on blocks devices and on files
located on an ext2 file system */
#define O_ACCMODE 0003
#define O_RDONLY 00
#define O_WRONLY 01
#define O_RDWR 02
#define O_CREAT 0100 /* not fcntl */
#define O_EXCL 0200 /* not fcntl */
#define O_NOCTTY 0400 /* not fcntl */
#define O_TRUNC 01000 /* not fcntl */
#define O_APPEND 02000
#define O_NONBLOCK 04000
#define O_NDELAY O_NONBLOCK
#define O_SYNC 010000
#define O_FSYNC O_SYNC
#define O_ASYNC 020000
#ifdef __USE_GNU
# define O_DIRECT 040000 /* Direct disk access. */
# define O_DIRECTORY 0200000 /* Must be a directory. */
# define O_NOFOLLOW 0400000 /* Do not follow links. */
# define O_NOATIME 01000000 /* Do not set atime. */
#endif
/* For now Linux has synchronisity options for data and read operations.
We define the symbols here but let them do the same as O_SYNC since
this is a superset. */
#if defined __USE_POSIX199309 || defined __USE_UNIX98
# define O_DSYNC O_SYNC /* Synchronize data. */
# define O_RSYNC O_SYNC /* Synchronize read operations. */
#endif
#ifdef __USE_LARGEFILE64
# define O_LARGEFILE 0100000
#endif
/* Values for the second argument to `fcntl'. */
#define F_DUPFD 0 /* Duplicate file descriptor. */
#define F_GETFD 1 /* Get file descriptor flags. */
#define F_SETFD 2 /* Set file descriptor flags. */
#define F_GETFL 3 /* Get file status flags. */
#define F_SETFL 4 /* Set file status flags. */
#ifndef __USE_FILE_OFFSET64
# define F_GETLK 5 /* Get record locking info. */
# define F_SETLK 6 /* Set record locking info (non-blocking). */
# define F_SETLKW 7 /* Set record locking info (blocking). */
#else
# define F_GETLK F_GETLK64 /* Get record locking info. */
# define F_SETLK F_SETLK64 /* Set record locking info (non-blocking).*/
# define F_SETLKW F_SETLKW64 /* Set record locking info (blocking). */
#endif
#define F_GETLK64 12 /* Get record locking info. */
#define F_SETLK64 13 /* Set record locking info (non-blocking). */
#define F_SETLKW64 14 /* Set record locking info (blocking). */
#if defined __USE_BSD || defined __USE_UNIX98
# define F_SETOWN 8 /* Get owner of socket (receiver of SIGIO). */
# define F_GETOWN 9 /* Set owner of socket (receiver of SIGIO). */
#endif
#ifdef __USE_GNU
# define F_SETSIG 10 /* Set number of signal to be sent. */
# define F_GETSIG 11 /* Get number of signal to be sent. */
#endif
#ifdef __USE_GNU
# define F_SETLEASE 1024 /* Set a lease. */
# define F_GETLEASE 1025 /* Enquire what lease is active. */
# define F_NOTIFY 1026 /* Request notfications on a directory. */
#endif
/* For F_[GET|SET]FL. */
#define FD_CLOEXEC 1 /* actually anything with low bit set goes */
/* For posix fcntl() and `l_type' field of a `struct flock' for lockf(). */
#define F_RDLCK 0 /* Read lock. */
#define F_WRLCK 1 /* Write lock. */
#define F_UNLCK 2 /* Remove lock. */
/* For old implementation of bsd flock(). */
#define F_EXLCK 4 /* or 3 */
#define F_SHLCK 8 /* or 4 */
#ifdef __USE_BSD
/* Operations for bsd flock(), also used by the kernel implementation. */
# define LOCK_SH 1 /* shared lock */
# define LOCK_EX 2 /* exclusive lock */
# define LOCK_NB 4 /* or'd with one of the above to prevent
blocking */
# define LOCK_UN 8 /* remove lock */
#endif
#ifdef __USE_GNU
# define LOCK_MAND 32 /* This is a mandatory flock: */
# define LOCK_READ 64 /* ... which allows concurrent read operations. */
# define LOCK_WRITE 128 /* ... which allows concurrent write operations. */
# define LOCK_RW 192 /* ... Which allows concurrent read & write operations. */
#endif
#ifdef __USE_GNU
/* Types of directory notifications that may be requested with F_NOTIFY. */
# define DN_ACCESS 0x00000001 /* File accessed. */
# define DN_MODIFY 0x00000002 /* File modified. */
# define DN_CREATE 0x00000004 /* File created. */
# define DN_DELETE 0x00000008 /* File removed. */
# define DN_RENAME 0x00000010 /* File renamed. */
# define DN_ATTRIB 0x00000020 /* File changed attibutes. */
# define DN_MULTISHOT 0x80000000 /* Don't remove notifier. */
#endif
struct flock
{
short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
#ifndef __USE_FILE_OFFSET64
__off_t l_start; /* Offset where the lock begins. */
__off_t l_len; /* Size of the locked area; zero means until EOF. */
#else
__off64_t l_start; /* Offset where the lock begins. */
__off64_t l_len; /* Size of the locked area; zero means until EOF. */
#endif
__pid_t l_pid; /* Process holding the lock. */
};
#ifdef __USE_LARGEFILE64
struct flock64
{
short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
__off64_t l_start; /* Offset where the lock begins. */
__off64_t l_len; /* Size of the locked area; zero means until EOF. */
__pid_t l_pid; /* Process holding the lock. */
};
#endif
/* Define some more compatibility macros to be backward compatible with
BSD systems which did not managed to hide these kernel macros. */
#ifdef __USE_BSD
# define FAPPEND O_APPEND
# define FFSYNC O_FSYNC
# define FASYNC O_ASYNC
# define FNONBLOCK O_NONBLOCK
# define FNDELAY O_NDELAY
#endif /* Use BSD. */
/* Advise to `posix_fadvise'. */
#ifdef __USE_XOPEN2K
# define POSIX_FADV_NORMAL 0 /* No further special treatment. */
# define POSIX_FADV_RANDOM 1 /* Expect random page references. */
# define POSIX_FADV_SEQUENTIAL 2 /* Expect sequential page references. */
# define POSIX_FADV_WILLNEED 3 /* Will need these pages. */
# define POSIX_FADV_DONTNEED 4 /* Don't need these pages. */
# define POSIX_FADV_NOREUSE 5 /* Data will be accessed once. */
#endif
__BEGIN_DECLS
/* Provide kernel hint to read ahead. */
extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
__THROW;
__END_DECLS

View File

@ -1,97 +0,0 @@
/* Definitions for POSIX memory map interface. Linux/CRIS version.
Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SYS_MMAN_H
# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead."
#endif
/* The following definitions basically come from the kernel headers.
But the kernel header is not namespace clean. */
/* Protections are chosen from these bits, OR'd together. The
implementation does not necessarily support PROT_EXEC or PROT_WRITE
without PROT_READ. The only guarantees are that no writing will be
allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
#define PROT_READ 0x1 /* Page can be read. */
#define PROT_WRITE 0x2 /* Page can be written. */
#define PROT_EXEC 0x4 /* Page can be executed. */
#define PROT_NONE 0x0 /* Page can not be accessed. */
#define PROT_GROWSDOWN 0x01000000 /* Extend change to start of
growsdown vma (mprotect only). */
#define PROT_GROWSUP 0x02000000 /* Extend change to start of
growsup vma (mprotect only). */
/* Sharing types (must choose one and only one of these). */
#define MAP_SHARED 0x01 /* Share changes. */
#define MAP_PRIVATE 0x02 /* Changes are private. */
#ifdef __USE_MISC
# define MAP_TYPE 0x0f /* Mask for type of mapping. */
#endif
/* Other flags. */
#define MAP_FIXED 0x10 /* Interpret addr exactly. */
#ifdef __USE_MISC
# define MAP_FILE 0
# define MAP_ANONYMOUS 0x20 /* Don't use a file. */
# define MAP_ANON MAP_ANONYMOUS
#endif
/* These are Linux-specific. */
#ifdef __USE_MISC
# define MAP_GROWSDOWN 0x0100 /* Stack-like segment. */
# define MAP_DENYWRITE 0x0800 /* ETXTBSY */
# define MAP_EXECUTABLE 0x1000 /* Mark it as an executable. */
# define MAP_LOCKED 0x2000 /* Lock the mapping. */
# define MAP_NORESERVE 0x4000 /* Don't check for reservations. */
#endif
/* Flags to `msync'. */
#define MS_ASYNC 1 /* Sync memory asynchronously. */
#define MS_SYNC 4 /* Synchronous memory sync. */
#define MS_INVALIDATE 2 /* Invalidate the caches. */
/* Flags for `mlockall'. */
#define MCL_CURRENT 1 /* Lock all currently mapped pages. */
#define MCL_FUTURE 2 /* Lock all additions to address
space. */
/* Flags for `mremap'. */
#ifdef __USE_GNU
# define MREMAP_MAYMOVE 1
#endif
/* Advice to `madvise'. */
#ifdef __USE_BSD
# define MADV_NORMAL 0 /* No further special treatment. */
# define MADV_RANDOM 1 /* Expect random page references. */
# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */
# define MADV_WILLNEED 3 /* Will need these pages. */
# define MADV_DONTNEED 4 /* Don't need these pages. */
#endif
/* The POSIX people had to invent similar names for the same things. */
#ifdef __USE_XOPEN2K
# define POSIX_MADV_NORMAL 0 /* No further special treatment. */
# define POSIX_MADV_RANDOM 1 /* Expect random page references. */
# define POSIX_MADV_SEQUENTIAL 2 /* Expect sequential page references. */
# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */
# define POSIX_MADV_DONTNEED 4 /* Don't need these pages. */
#endif

View File

@ -1,44 +0,0 @@
/* brk system call for Linux/CRIS.
Copyright (C) 1995, 1996, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <errno.h>
#include <unistd.h>
#include <sysdep.h>
/* This must be initialized data because commons can't have aliases. */
void *__curbrk = 0;
int
__brk (void *addr)
{
unsigned char *newbrk;
newbrk = (unsigned char *) INLINE_SYSCALL (brk, 1, addr);
__curbrk = newbrk;
if (newbrk < (unsigned char *) addr)
{
__set_errno (ENOMEM);
return -1;
}
return 0;
}
weak_alias (__brk, brk)

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/m68k/chown.c>

View File

@ -1,88 +0,0 @@
/* Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
#define _ERRNO_H 1
#include <bits/errno.h>
/* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg); */
.syntax no_register_prefix
.text
ENTRY (__clone)
/* Sanity check arguments: No NULL function pointers. Allow a NULL
stack pointer though; it makes the kernel allocate stack. */
test.d r10
beq 1f
nop
/* We need to muck with a few registers. */
movem r1,[sp=sp-8]
/* Save the function pointer and argument. We can't save them
onto the new stack since it can be NULL. */
move.d r10,r0
move.d r13,r1
/* Move the other arguments into place for the system call. */
move.d r11,r10
move.d r12,r11
/* Do the system call. */
movu.w SYS_ify (clone),r9
break 13
test.d r10
beq .Lthread_start
nop
/* Jump to error handler if we get (unsigned) -4096 .. 0xffffffff. */
cmps.w -4096,r10
bhs 0f
movem [sp+],r1
/* In parent, successful return. (Avoid using "ret" - it's a macro.) */
Ret
nop
.Lthread_start:
/* Terminate frame pointers here. */
moveq 0,r8
/* I've told you once. */
move.d r1,r10
jsr r0
SETUP_PIC
PLTCALL (_exit)
/* Die horribly. */
test.d [6809]
/* Stop the unstoppable. */
9:
ba 9b
nop
/* Local error handler. */
1:
movs.w -EINVAL,r10
/* Drop through into the ordinary error handler. */
PSEUDO_END (__clone)
weak_alias (__clone, clone)

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/fchown.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/fcntl.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/fxstat.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getegid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/geteuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getgid.c>

View File

@ -1,2 +0,0 @@
/* We also have to rewrite the kernel gid_t to the user land type. */
#include <sysdeps/unix/sysv/linux/i386/getgroups.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getresgid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getresuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getrlimit.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getrlimit64.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/getuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/lchown.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/lockf64.c>

View File

@ -1,2 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/lxstat.c>

View File

@ -1,68 +0,0 @@
/* Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
#include "kernel-features.h"
#include <asm/errno.h>
/* Rather than dragging in yet another kernel file, <asm/page.h>, we
define it here. Provide for easy override. */
#ifndef PAGE_SHIFT
#define PAGE_SHIFT 13
#endif
.syntax no_register_prefix
/* This is __ptr_t
__mmap (__ptr_t addr, size_t len, int prot, int flags, int fd, off_t offset) */
ENTRY (__mmap)
/* Only accept a offset (and address) being a multiple of PAGE_SIZE,
since we only pass the page part in the system call. */
move.d [sp+4],r9
btstq (PAGE_SHIFT - 1),r9
bne 1f
btstq (PAGE_SHIFT - 1),r10
bne 1f
lsrq PAGE_SHIFT,r9
move [sp],mof
move srp,[sp]
move r9,srp
movu.b SYS_ify (mmap2),r9
break 13
cmps.w -4096,r10
bhs 0f
move [sp],srp
Ret
nop
/* Local error handler. */
1:
movs.w -EINVAL,r10
/* Drop through into the ordinary error handler. */
PSEUDO_END (__mmap)
weak_alias (__mmap, mmap)

View File

@ -1,91 +0,0 @@
/* Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
#include "kernel-features.h"
#include <asm/errno.h>
/* Rather than dragging in yet another kernel file, <asm/page.h>, we
define it here. Provide for easy override. */
#ifndef PAGE_SHIFT
#define PAGE_SHIFT 13
#endif
/* This is: __ptr_t
__mmap64 (__ptr_t addr, size_t len, int prot, int flags, int fd,
off64_t offset); */
/* This was done in C, but the resulting code didn't look anywhere near
nice, and mmap64 is important enough to have fast code. Rather than
fixing (the generic bits in) gcc, we make sure not to depend on it by
writing code that GCC cannot reasonably generate. */
.syntax no_register_prefix
ENTRY (__mmap64)
move [sp],mof
move.d [sp+4],r9
/* Only accept an offset being a multiple of PAGE_SIZE, ditto address. */
btstq (PAGE_SHIFT - 1),r9
bne 1f
lsrq PAGE_SHIFT,r9
btstq (PAGE_SHIFT - 1),r10
bne 1f
move.d r9,[sp]
/* We have to store the adjusted part somewhere we can "or" from.
No registers available, so let's re-use the incoming low-part
parameter location. */
move.d [sp+8],r9
swapwbr r9
/* Check if the highest bits (now the lowest bits) are zero. They
must be, since we're actually calling a system function
specifying the size in *pages* in a single dword. Thus you can
mmap64 PAGE_SIZE * 4 Gbyte. */
btstq (PAGE_SHIFT - 1),r9
bne 1f
swapwbr r9
lslq (32 - PAGE_SHIFT),r9
or.d [sp],r9
move srp,[sp]
move r9,srp
movu.b SYS_ify (mmap2),r9
break 13
cmps.w -4096,r10
bhs 0f
move [sp],srp
Ret
nop
/* Local error handler. */
1:
movs.w -EINVAL,r10
/* Drop through into the ordinary error handler. */
PSEUDO_END (__mmap64)
weak_alias (__mmap64, mmap64)

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/msgctl.c>

View File

@ -1,26 +0,0 @@
/* Low-level statistical profiling support function. Linux/CRIS version.
Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <signal.h>
static void
profil_counter (int signo, struct sigcontext *scp)
{
profil_count ((void *) scp->regs.irp);
}

View File

@ -1,117 +0,0 @@
/* Dump registers.
Copyright (C) 1998, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <stddef.h>
#include <sys/uio.h>
#include <stdio-common/_itoa.h>
/* We will print the register dump in this format:
R0: XXXXXXXX R1: XXXXXXXX R2: XXXXXXXX R3: XXXXXXXX
R4: XXXXXXXX R5: XXXXXXXX R6: XXXXXXXX R7: XXXXXXXX
R8: XXXXXXXX R9: XXXXXXXX R10: XXXXXXXX R11: XXXXXXXX
R12: XXXXXXXX R13: XXXXXXXX SP: XXXXXXXX PC: XXXXXXXX
DCCR: XXXXXXXX SRP: XXXXXXXX */
static void
hexvalue (unsigned long int value, char *buf, size_t len)
{
char *cp = _itoa_word (value, buf + len, 16, 0);
while (cp > buf)
*--cp = '0';
}
static void register_dump (int fd, struct sigcontext *ctx)
{
char regs[18][8];
struct iovec iov[36], *next_iov = iov;
struct pt_regs *rx = &ctx->regs;
#define ADD_STRING(str) \
next_iov->iov_base = (char *) (str); \
next_iov->iov_len = strlen (str); \
++next_iov
#define ADD_MEM(str, len) \
next_iov->iov_base = (str); \
next_iov->iov_len = (len); \
++next_iov
/* Generate strings of register contents. */
hexvalue (rx->r0, regs[0], 8);
hexvalue (rx->r1, regs[1], 8);
hexvalue (rx->r2, regs[2], 8);
hexvalue (rx->r3, regs[3], 8);
hexvalue (rx->r4, regs[4], 8);
hexvalue (rx->r5, regs[5], 8);
hexvalue (rx->r6, regs[6], 8);
hexvalue (rx->r7, regs[7], 8);
hexvalue (rx->r8, regs[8], 8);
hexvalue (rx->r9, regs[9], 8);
hexvalue (rx->r10, regs[10], 8);
hexvalue (rx->r11, regs[11], 8);
hexvalue (rx->r12, regs[12], 8);
hexvalue (rx->r13, regs[13], 8);
hexvalue (ctx->usp, regs[14], 8);
hexvalue (rx->irp, regs[17], 8);
hexvalue (rx->dccr, regs[15], 8);
hexvalue (rx->srp, regs[16], 8);
/* Generate the output. */
ADD_STRING ("Register dump:\n\n R0: ");
ADD_MEM (regs[0], 8);
ADD_STRING (" R1: ");
ADD_MEM (regs[1], 8);
ADD_STRING (" R2: ");
ADD_MEM (regs[2], 8);
ADD_STRING (" R3: ");
ADD_MEM (regs[3], 8);
ADD_STRING ("\n R4: ");
ADD_MEM (regs[4], 8);
ADD_STRING (" R5: ");
ADD_MEM (regs[5], 8);
ADD_STRING (" R6: ");
ADD_MEM (regs[6], 8);
ADD_STRING (" R7: ");
ADD_MEM (regs[7], 8);
ADD_STRING ("\n R8: ");
ADD_MEM (regs[8], 8);
ADD_STRING (" R9: ");
ADD_MEM (regs[9], 8);
ADD_STRING (" R10: ");
ADD_MEM (regs[10], 8);
ADD_STRING (" R11: ");
ADD_MEM (regs[11], 8);
ADD_STRING ("\n R12: ");
ADD_MEM (regs[12], 8);
ADD_STRING (" R13: ");
ADD_MEM (regs[13], 8);
ADD_STRING (" SP: ");
ADD_MEM (regs[14], 8);
ADD_STRING (" PC: ");
ADD_MEM (regs[17], 8);
ADD_STRING ("\nDCCR: ");
ADD_MEM (regs[15], 8);
ADD_STRING (" SRP: ");
ADD_MEM (regs[16], 4);
/* Write the stuff out. */
writev (fd, iov, next_iov - iov);
}
#define REGISTER_DUMP register_dump (fd, ctx)

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/semctl.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setegid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/seteuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setfsgid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setfsuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setgid.c>

View File

@ -1,2 +0,0 @@
/* We also have to rewrite the kernel gid_t to the user land type. */
#include <sysdeps/unix/sysv/linux/i386/setgroups.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setregid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setresgid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setresuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setreuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setrlimit.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/setuid.c>

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/shmctl.c>

View File

@ -1,96 +0,0 @@
/* Copyright (C) 1995, 1996, 1997, 1999, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
#include <socketcall.h>
#define P(a, b) P2(a, b)
#define P2(a, b) a##b
/* The socket-oriented system calls are handled unusally in Linux.
They are all gated through the single `socketcall' system call number.
`socketcall' takes two arguments: the first is the subcode, specifying
which socket function is being called; and the second is a pointer to
the arguments to the specific function.
The .S files for the other calls just #define socket and #include this.
They also #define a 'number-of-arguments' word in NARGS, which
defaults to 3. */
#ifndef NARGS
#ifdef socket
#error NARGS not defined
#endif
#define NARGS 3
#endif
.syntax no_register_prefix
#ifndef __socket
#define __socket P(__,socket)
#endif
ENTRY(__socket)
subq NARGS*4,sp
#if NARGS >= 2
move.d sp,r9
move.d r10,[r9+]
#else
move.d r10,[sp]
#endif
#if NARGS >= 2
move.d r11,[r9+]
#endif
#if NARGS >= 3
move.d r12,[r9+]
#endif
#if NARGS >= 4
move.d r13,[r9+]
#endif
#if NARGS >= 5
move.d [sp+NARGS*4],r13
move.d r13,[r9+]
#endif
#if NARGS >= 6
move.d [sp+NARGS*4+4],r13
move.d r13,[r9+]
#endif
#if NARGS >= 7
move.d [sp+NARGS*4+8],r13
move.d r13,[r9+]
#endif
#if NARGS >= 8
move.d [sp+NARGS*4+12],r13
move.d r13,[r9+]
#endif
#if NARGS >= 9
#error Too many arguments!
#endif
moveq P(SOCKOP_,socket),r10
move.d sp,r11
movu.w SYS_ify(socketcall),r9
break 13
cmps.w -4096,r10
bhs 0f
addq NARGS*4,sp
Ret
nop
PSEUDO_END (__socket)
weak_alias (__socket, socket)

View File

@ -1,56 +0,0 @@
/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SYS_UCONTEXT_H
#define _SYS_UCONTEXT_H 1
#include <features.h>
#include <signal.h>
#include <bits/sigcontext.h>
/* Type for general register. */
typedef long int greg_t;
/* Number of general registers. */
#define NGREG 20
/* Container for all general registers. */
typedef greg_t gregset_t[NGREG];
/* A placeholder type for floating-point register. */
typedef long int fpreg_t;
/* A placeholder; CRIS does not have any fp regs. */
typedef unsigned long fpregset_t;
/* A machine context is exactly a sigcontext. */
typedef struct sigcontext mcontext_t;
/* Userlevel context. */
typedef struct ucontext
{
unsigned long int uc_flags;
struct ucontext *uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
__sigset_t uc_sigmask;
} ucontext_t;
#endif /* sys/ucontext.h */

View File

@ -1,40 +0,0 @@
/* Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
.syntax no_register_prefix
/* Make syscall (callno, ...) into a system call. */
ENTRY (syscall)
move.d r10,r9
move.d r11,r10
move.d r12,r11
move.d r13,r12
move.d [sp],r13
move srp,[sp]
move [sp+4],mof
move [sp+8],srp
break 13
cmps.w -4096,r10
bhs 0f
move [sp],srp
Ret
nop
PSEUDO_END (syscall)

View File

@ -1,66 +0,0 @@
/* Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
/* The syscall stubs jump here when they detect an error, bot for PIC and
non-PIC. */
.syntax no_register_prefix
ENTRY (__syscall_error)
neg.d r10,r10
#ifdef _LIBC_REENTRANT
push r10
push srp
/* Note that __syscall_error is only visible within this library,
and no-one passes it on as a pointer, so can assume that R0 (GOT
pointer) is correctly set up. */
PLTCALL (__errno_location)
pop srp
pop r11
move.d r11,[r10]
#else /* not _LIBC_REENTRANT */
# ifdef __PIC__
move.d [r0+C_SYMBOL_NAME(errno:GOT)],r9
move.d r10,[r9]
# else
move.d r10,[C_SYMBOL_NAME(errno)]
# endif
#endif /* _LIBC_REENTRANT */
#ifdef __PIC__
/* PIC callers are supposed to have R0 on stack, ready for us to restore.
Callers are only allowed from within this DSO, so the GOT in r0 is the
one we want to use.
(Don't use "ret" - it's a macro). */
moveq -1,r10
Ret
pop r0
#else
Ret
moveq -1,r10
#endif
END (__syscall_error)

View File

@ -1,226 +0,0 @@
/* Assembler macros for CRIS.
Copyright (C) 1999, 2001, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <asm/unistd.h>
#include <sysdeps/cris/sysdep.h>
#include <sys/syscall.h>
#include "config.h"
#undef SYS_ify
#define SYS_ify(syscall_name) (__NR_##syscall_name)
#ifdef __ASSEMBLER__
/* For Linux we can use the system call table in the header file
/usr/include/asm/unistd.h
of the kernel. But these symbols do not follow the SYS_* syntax
so we have to redefine the `SYS_ify' macro here. */
#undef SYS_ify
#define SYS_ify(syscall_name) __NR_##syscall_name
/* ELF-like local names start with `.L'. */
#undef L
#define L(name) .L##name
/* Linux uses a negative return value to indicate syscall errors,
unlike most Unices, which use the condition codes' carry flag.
Since version 2.1 the return value of a system call might be
negative even if the call succeeded. E.g., the `lseek' system call
might return a large offset. Therefore we must not anymore test
for < 0, but test for a real error by making sure the value in %eax
is a real error number. Linus said he will make sure the no syscall
returns a value in -1 .. -4095 as a valid result so we can safely
test with -4095. */
/* Syscall wrappers consist of
#include <sysdep.h>
PSEUDO (...)
ret
PSEUDO_END (...)
which expand to the following. */
/* Linux takes system call arguments in registers:
syscall number R9
arg 1 R10
arg 2 R11
arg 3 R12
arg 4 R13
arg 5 MOF
arg 6 SRP
The compiler calls us by the C convention:
syscall number in the DO_CALL macro
arg 1 R10
arg 2 R11
arg 3 R12
arg 4 R13
arg 5 [SP]
arg 6 [SP + 4]
*/
/* Note that we use "bhs", since we want to match
(unsigned) -4096 .. 0xffffffff. Using "ble" would match
-4096 .. -2**31. */
#define PSEUDO(name, syscall_name, args) \
ENTRY (name) @ \
DOARGS_##args @ \
movu.w SYS_ify (syscall_name),$r9 @ \
break 13 @ \
cmps.w -4096,$r10 @ \
bhs 0f @ \
nop @ \
UNDOARGS_return_##args
/* Ouch! We have to remember not to use "ret" in assembly-code.
("Luckily", mnemonics are case-insensitive.)
Note that we assume usage is exactly:
PSEUDO (...)
ret
PSEUDO_END (...)
so we can put all payload into PSEUDO (except for error handling). */
#define ret
#define PSEUDO_END(name) \
0: @ \
SETUP_PIC @ \
PLTJUMP (syscall_error) @ \
END (name)
#define PSEUDO_NOERRNO(name, syscall_name, args) \
ENTRY (name) @ \
DOARGS_##args @ \
movu.w SYS_ify (syscall_name),$r9 @ \
break 13 @ \
UNDOARGS_return_##args
#define ret_NOERRNO
#define PSEUDO_END_NOERRNO(name) \
END (name)
#define DOARGS_0
#define DOARGS_1
#define DOARGS_2
#define DOARGS_3
#define DOARGS_4
#define DOARGS_5 \
move [$sp],$mof
/* To avoid allocating stack-space, we re-use the arg 5 (MOF) entry by
storing SRP into it. If called with too-few arguments, we will crash,
but that will happen in the general case too. */
#define DOARGS_6 \
DOARGS_5 @ \
move $srp,[$sp] @ \
move [$sp+4],$srp
#define UNDOARGS_return_0 \
Ret @ \
nop
#define UNDOARGS_return_1 UNDOARGS_return_0
#define UNDOARGS_return_2 UNDOARGS_return_0
#define UNDOARGS_return_3 UNDOARGS_return_0
#define UNDOARGS_return_4 UNDOARGS_return_0
#define UNDOARGS_return_5 UNDOARGS_return_0
/* We assume the following code will be "ret" and "PSEUDO_END". */
#define UNDOARGS_return_return_6 \
jump [$sp]
#else /* not __ASSEMBLER__ */
#undef INLINE_SYSCALL
#define INLINE_SYSCALL(name, nr, args...) \
({ \
unsigned long __sys_res; \
register unsigned long __res asm ("r10"); \
LOAD_ARGS_c_##nr (args) \
register unsigned long __callno asm ("r9") \
= SYS_ify (name); \
asm volatile (LOAD_ARGS_asm_##nr (args) \
"break 13" \
: "=r" (__res) \
: ASM_ARGS_##nr (args) \
: ASM_CLOBBER_##nr); \
__sys_res = __res; \
\
if (__sys_res >= (unsigned long) -4096) \
{ \
__set_errno (- __sys_res); \
__sys_res = (unsigned long) -1; \
} \
(long int) __sys_res; \
})
#define LOAD_ARGS_c_0()
#define LOAD_ARGS_asm_0()
#define ASM_CLOBBER_0 "memory"
#define ASM_ARGS_0() "r" (__callno)
#define LOAD_ARGS_c_1(r10) \
LOAD_ARGS_c_0() \
register unsigned long __r10 __asm__ ("r10") = (unsigned long) (r10);
#define LOAD_ARGS_asm_1(r10) LOAD_ARGS_asm_0 ()
#define ASM_CLOBBER_1 ASM_CLOBBER_0
#define ASM_ARGS_1(r10) ASM_ARGS_0 (), "0" (__r10)
#define LOAD_ARGS_c_2(r10, r11) \
LOAD_ARGS_c_1(r10) \
register unsigned long __r11 __asm__ ("r11") = (unsigned long) (r11);
#define LOAD_ARGS_asm_2(r10, r11) LOAD_ARGS_asm_1 (r10)
#define ASM_CLOBBER_2 ASM_CLOBBER_1
#define ASM_ARGS_2(r10, r11) ASM_ARGS_1 (r10), "r" (__r11)
#define LOAD_ARGS_c_3(r10, r11, r12) \
LOAD_ARGS_c_2(r10, r11) \
register unsigned long __r12 __asm__ ("r12") = (unsigned long) (r12);
#define LOAD_ARGS_asm_3(r10, r11, r12) LOAD_ARGS_asm_2 (r10, r11)
#define ASM_CLOBBER_3 ASM_CLOBBER_2
#define ASM_ARGS_3(r10, r11, r12) ASM_ARGS_2 (r10, r11), "r" (__r12)
#define LOAD_ARGS_c_4(r10, r11, r12, r13) \
LOAD_ARGS_c_3(r10, r11, r12) \
register unsigned long __r13 __asm__ ("r13") = (unsigned long) (r13);
#define LOAD_ARGS_asm_4(r10, r11, r12, r13) LOAD_ARGS_asm_3 (r10, r11, r12)
#define ASM_CLOBBER_4 ASM_CLOBBER_3
#define ASM_ARGS_4(r10, r11, r12, r13) ASM_ARGS_3 (r10, r11, r12), "r" (__r13)
#define LOAD_ARGS_c_5(r10, r11, r12, r13, mof) \
LOAD_ARGS_c_4(r10, r11, r12, r13)
#define LOAD_ARGS_asm_5(r10, r11, r12, r13, mof) \
LOAD_ARGS_asm_4 (r10, r11, r12, r13) "move %6,$mof\n\t"
#define ASM_CLOBBER_5 ASM_CLOBBER_4
#define ASM_ARGS_5(r10, r11, r12, r13, mof) \
ASM_ARGS_4 (r10, r11, r12, r13), "g" (mof)
#define LOAD_ARGS_c_6(r10, r11, r12, r13, mof, srp) \
LOAD_ARGS_c_5(r10, r11, r12, r13, mof)
#define LOAD_ARGS_asm_6(r10, r11, r12, r13, mof, srp) \
LOAD_ARGS_asm_5(r10, r11, r12, r13, mof) \
"move %7,$srp\n\t"
#define ASM_CLOBBER_6 ASM_CLOBBER_5, "srp"
#define ASM_ARGS_6(r10, r11, r12, r13, mof, srp) \
ASM_ARGS_5 (r10, r11, r12, r13, mof), "g" (srp)
#endif /* not __ASSEMBLER__ */

View File

@ -1,27 +0,0 @@
/* Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <sysdep.h>
PSEUDO (__vfork, vfork, 0)
Ret
nop
PSEUDO_END (__vfork)
libc_hidden_def (__vfork)
weak_alias (__vfork, vfork)

View File

@ -1 +0,0 @@
#include <sysdeps/unix/sysv/linux/i386/xstat.c>