diff options
Diffstat (limited to 'REORG.TODO/sysdeps/unix/sysv/linux/mips')
169 files changed, 19850 insertions, 0 deletions
diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/Implies b/REORG.TODO/sysdeps/unix/sysv/linux/mips/Implies new file mode 100644 index 0000000000..656fa77b63 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/Implies @@ -0,0 +1 @@ +mips/nptl diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/Makefile b/REORG.TODO/sysdeps/unix/sysv/linux/mips/Makefile new file mode 100644 index 0000000000..bca11d39e0 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/Makefile @@ -0,0 +1,112 @@ +ifeq ($(subdir),signal) +#sysdep_routines += sigsuspend +endif + +ifeq ($(subdir),misc) +sysdep_routines += cachectl cacheflush sysmips _test_and_set + +sysdep_headers += sys/cachectl.h sys/sysmips.h sys/tas.h +endif + +abi-variants := o32_soft o32_hard o32_soft_2008 o32_hard_2008 +abi-variants += n32_soft n32_hard n32_soft_2008 n32_hard_2008 +abi-variants += n64_soft n64_hard n64_soft_2008 n64_hard_2008 + +ifeq (,$(filter $(default-abi),$(abi-variants))) +Unknown ABI, must be one of $(abi-variants) +endif + +abi-includes := sgidefs.h + +# _MIPS_SIM_ABI32 == 1, _MIPS_SIM_NABI32 == 2, _MIPS_SIM_ABI64 == 3 +abi-o32_soft-options := -U_MIPS_SIM -D_MIPS_SIM=1 \ + -D__mips_soft_float -U__mips_hard_float \ + -U__mips_nan2008 +abi-o32_soft-condition := !defined(__mips_nan2008) \ + && defined(__mips_soft_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI32) +abi-o32_hard-options := -U_MIPS_SIM -D_MIPS_SIM=1 \ + -D__mips_hard_float -U__mips_soft_float \ + -U__mips_nan2008 +abi-o32_hard-condition := !defined(__mips_nan2008) \ + && defined(__mips_hard_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI32) +abi-o32_soft_2008-options := -U_MIPS_SIM -D_MIPS_SIM=1 \ + -D__mips_soft_float -U__mips_hard_float \ + -D__mips_nan2008 +abi-o32_soft_2008-condition := defined(__mips_nan2008) \ + && defined(__mips_soft_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI32) +abi-o32_hard_2008-options := -U_MIPS_SIM -D_MIPS_SIM=1 \ + -D__mips_hard_float -U__mips_soft_float \ + -D__mips_nan2008 +abi-o32_hard_2008-condition := defined(__mips_nan2008) \ + && defined(__mips_hard_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI32) +abi-n32_soft-options := -U_MIPS_SIM -D_MIPS_SIM=2 \ + -D__mips_soft_float -U__mips_hard_float \ + -U__mips_nan2008 +abi-n32_soft-condition := !defined(__mips_nan2008) \ + && defined(__mips_soft_float) \ + && (_MIPS_SIM == _MIPS_SIM_NABI32) +abi-n32_hard-options := -U_MIPS_SIM -D_MIPS_SIM=2 \ + -D__mips_hard_float -U__mips_soft_float \ + -U__mips_nan2008 +abi-n32_hard-condition := !defined(__mips_nan2008) \ + && defined(__mips_hard_float) \ + && (_MIPS_SIM == _MIPS_SIM_NABI32) +abi-n32_soft_2008-options := -U_MIPS_SIM -D_MIPS_SIM=2 \ + -D__mips_soft_float -U__mips_hard_float \ + -D__mips_nan2008 +abi-n32_soft_2008-condition := defined(__mips_nan2008) \ + && defined(__mips_soft_float) \ + && (_MIPS_SIM == _MIPS_SIM_NABI32) +abi-n32_hard_2008-options := -U_MIPS_SIM -D_MIPS_SIM=2 \ + -D__mips_hard_float -U__mips_soft_float \ + -D__mips_nan2008 +abi-n32_hard_2008-condition := defined(__mips_nan2008) \ + && defined(__mips_hard_float) \ + && (_MIPS_SIM == _MIPS_SIM_NABI32) +abi-n64_soft-options := -U_MIPS_SIM -D_MIPS_SIM=3 \ + -D__mips_soft_float -U__mips_hard_float \ + -U__mips_nan2008 +abi-n64_soft-condition := !defined(__mips_nan2008) \ + && defined(__mips_soft_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI64) +abi-n64_hard-options := -U_MIPS_SIM -D_MIPS_SIM=3 \ + -D__mips_hard_float -U__mips_soft_float \ + -U__mips_nan2008 +abi-n64_hard-condition := !defined(__mips_nan2008) \ + && defined(__mips_hard_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI64) +abi-n64_soft_2008-options := -U_MIPS_SIM -D_MIPS_SIM=3 \ + -D__mips_soft_float -U__mips_hard_float \ + -D__mips_nan2008 +abi-n64_soft_2008-condition := defined(__mips_nan2008) \ + && defined(__mips_soft_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI64) +abi-n64_hard_2008-options := -U_MIPS_SIM -D_MIPS_SIM=3 \ + -D__mips_hard_float -U__mips_soft_float \ + -D__mips_nan2008 +abi-n64_hard_2008-condition := defined(__mips_nan2008) \ + && defined(__mips_hard_float) \ + && (_MIPS_SIM == _MIPS_SIM_ABI64) + +ifeq ($(subdir),elf) +ifeq ($(build-shared),yes) +# This is needed for DSO loading from static binaries. +sysdep-dl-routines += dl-static + +sysdep_routines += dl-vdso +endif + +# Supporting non-executable stacks on MIPS requires changes to both +# the Linux kernel and glibc. See +# <https://sourceware.org/ml/libc-alpha/2016-01/msg00567.html> and +# <https://sourceware.org/ml/libc-alpha/2016-01/msg00719.html>. +test-xfail-check-execstack = yes +endif + +ifeq ($(subdir),stdlib) +gen-as-const-headers += ucontext_i.sym +endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/Versions b/REORG.TODO/sysdeps/unix/sysv/linux/mips/Versions new file mode 100644 index 0000000000..453f276aad --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/Versions @@ -0,0 +1,44 @@ +ld { + GLIBC_PRIVATE { + # used for loading by static libraries + _dl_var_init; + } +} +libc { + # The comment lines with "#errlist-compat" are magic; see errlist-compat.awk. + # When you get an error from errlist-compat.awk, you need to add a new + # version here. Don't do this blindly, since this means changing the ABI + # for all GNU/Linux configurations. + + GLIBC_2.0 { + #errlist-compat 123 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + + # Exception handling support functions from libgcc + __register_frame; __register_frame_table; __deregister_frame; + __frame_state_for; __register_frame_info_table; + + # Needed by gcc: + _flush_cache; + + # c* + cachectl; cacheflush; + + # s* + sysmips; + } + GLIBC_2.2 { + #errlist-compat 1134 + _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; + + # _* + _test_and_set; + } + GLIBC_2.11 { + fallocate64; + } + GLIBC_PRIVATE { + # nptl/pthread_cond_timedwait.c uses INTERNAL_VSYSCALL(clock_gettime). + __vdso_clock_gettime; + } +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/____longjmp_chk.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/____longjmp_chk.c new file mode 100644 index 0000000000..596b2af336 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/____longjmp_chk.c @@ -0,0 +1,41 @@ +/* Copyright (C) 2009-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <signal.h> +#include <stdio.h> +#define __longjmp ____longjmp_chk +#define CHECK_SP(saved_sp, cur_sp, sp_type) \ + do { \ + sp_type sp_saved = (sp_type) (saved_sp); \ + if (sp_saved < (cur_sp)) \ + { \ + struct __jmp_buf_internal_tag *env_save = env_arg; \ + int val_save = val_arg; \ + stack_t ss; \ + int ret = __sigaltstack (NULL, &ss); \ + if (ret == 0 \ + && (!(ss.ss_flags & SS_ONSTACK) \ + || ((unsigned sp_type) ((sp_type) (long) ss.ss_sp \ + + (sp_type) ss.ss_size \ + - sp_saved) \ + < ss.ss_size))) \ + __fortify_fail ("longjmp causes uninitialized stack frame"); \ + asm volatile ("move %0, %1" : "=r" (env) : "r" (env_save)); \ + asm volatile ("move %0, %1" : "=r" (val) : "r" (val_save)); \ + } \ + } while (0) +#include <__longjmp.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/_test_and_set.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/_test_and_set.c new file mode 100644 index 0000000000..42b6a983a2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/_test_and_set.c @@ -0,0 +1,29 @@ +/* Copyright (C) 2000-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Maciej W. Rozycki <macro@ds2.pg.gda.pl>, 2000. + + 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, see + <http://www.gnu.org/licenses/>. */ + +/* Define the real-function versions of all inline functions + defined in sys/tas.h */ + +#include <features.h> + +#define _EXTERN_INLINE +#ifndef __USE_EXTERN_INLINES +# define __USE_EXTERN_INLINES 1 +#endif + +#include "sys/tas.h" diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/arch-fork.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/arch-fork.h new file mode 100644 index 0000000000..5f945378ee --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/arch-fork.h @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/arch-fork.h> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/epoll.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/epoll.h new file mode 100644 index 0000000000..904e9c3e1a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/epoll.h @@ -0,0 +1,27 @@ +/* Copyright (C) 2002-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_EPOLL_H +# error "Never use <bits/epoll.h> directly; include <sys/epoll.h> instead." +#endif + +/* Flags to be passed to epoll_create1. */ +enum + { + EPOLL_CLOEXEC = 02000000 +#define EPOLL_CLOEXEC EPOLL_CLOEXEC + }; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/errno.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/errno.h new file mode 100644 index 0000000000..fa62e1fc83 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/errno.h @@ -0,0 +1,65 @@ +/* Error constants. MIPS/Linux specific version. + Copyright (C) 1996-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifdef _ERRNO_H + +# undef EDOM +# undef EILSEQ +# undef ERANGE +# include <linux/errno.h> + +/* Linux has no ENOTSUP error code. */ +# define ENOTSUP EOPNOTSUPP + +# ifndef ECANCELED +# define ECANCELED 158 +# endif + +/* Support for error codes to support robust mutexes was added later, too. */ +# ifndef EOWNERDEAD +# define EOWNERDEAD 165 +# define ENOTRECOVERABLE 166 +# endif + +# ifndef ERFKILL +# define ERFKILL 167 +# endif + +# ifndef EHWPOISON +# define EHWPOISON 168 +# endif + +# ifndef __ASSEMBLER__ +/* Function to get address of global `errno' variable. */ +extern int *__errno_location (void) __THROW __attribute__ ((__const__)); + +# if !defined _LIBC || defined _LIBC_REENTRANT +/* When using threads, errno is a per-thread value. */ +# define errno (*__errno_location ()) +# endif +# endif /* !__ASSEMBLER__ */ +#endif /* _ERRNO_H */ + +#if !defined _ERRNO_H && defined __need_Emath +/* This is ugly but the kernel header is not clean enough. We must + define only the values EDOM, EILSEQ and ERANGE in case __need_Emath is + defined. */ +# define EDOM 33 /* Math argument out of domain of function. */ +# define EILSEQ 88 /* Illegal byte sequence. */ +# define ERANGE 34 /* Math result not representable. */ +#endif /* !_ERRNO_H && __need_Emath */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/eventfd.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/eventfd.h new file mode 100644 index 0000000000..901cec7509 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/eventfd.h @@ -0,0 +1,31 @@ +/* Copyright (C) 2007-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_EVENTFD_H +# error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." +#endif + +/* Flags for eventfd. */ +enum + { + EFD_SEMAPHORE = 00000001, +#define EFD_SEMAPHORE EFD_SEMAPHORE + EFD_CLOEXEC = 02000000, +#define EFD_CLOEXEC EFD_CLOEXEC + EFD_NONBLOCK = 00000200 +#define EFD_NONBLOCK EFD_NONBLOCK + }; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/fcntl.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/fcntl.h new file mode 100644 index 0000000000..0e0c8cc0c1 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/fcntl.h @@ -0,0 +1,104 @@ +/* O_*, F_*, FD_* bit values for Linux. + Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _FCNTL_H +# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." +#endif + +#include <sgidefs.h> + +#define O_APPEND 0x0008 +#define O_SYNC 0x4010 +#define O_NONBLOCK 0x0080 +#define O_CREAT 0x0100 /* not fcntl */ +#define O_TRUNC 0x0200 /* not fcntl */ +#define O_EXCL 0x0400 /* not fcntl */ +#define O_NOCTTY 0x0800 /* not fcntl */ +#define O_ASYNC 0x1000 + +#define __O_DIRECT 0x8000 /* Direct disk access hint. */ +#define __O_DSYNC 0x0010 /* Synchronize data. */ + +#if _MIPS_SIM == _ABI64 +/* Not necessary, files are always with 64bit off_t. */ +# define __O_LARGEFILE 0 +#else +# define __O_LARGEFILE 0x2000 /* Allow large file opens. */ +#endif + +#ifndef __USE_FILE_OFFSET64 +# define F_GETLK 14 /* 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 + +#if _MIPS_SIM != _ABI64 +# define F_GETLK64 33 /* Get record locking info. */ +# define F_SETLK64 34 /* Set record locking info (non-blocking). */ +# define F_SETLKW64 35 /* Set record locking info (blocking). */ +#else +# define F_GETLK64 14 /* Get record locking info. */ +# define F_SETLK64 6 /* Set record locking info (non-blocking).*/ +# define F_SETLKW64 7 /* Set record locking info (blocking). */ +#endif + +#define __F_SETOWN 24 /* Get owner (process receiving SIGIO). */ +#define __F_GETOWN 23 /* Set owner (process receiving SIGIO). */ + +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. */ +#if _MIPS_SIM != _ABI64 + /* The 64-bit flock structure, used by the n64 ABI, and for 64-bit + fcntls in o32 and n32, never has this field. */ + long int l_sysid; +#endif +#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. */ +#if ! defined __USE_FILE_OFFSET64 && _MIPS_SIM != _ABI64 + /* The 64-bit flock structure, used by the n64 ABI, and for 64-bit + flock in o32 and n32, never has this field. */ + long int __glibc_reserved0[4]; +#endif + }; +typedef struct flock flock_t; + +#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 + +/* Include generic Linux declarations. */ +#include <bits/fcntl-linux.h> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/inotify.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/inotify.h new file mode 100644 index 0000000000..00b899410e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/inotify.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2005-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_INOTIFY_H +# error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." +#endif + +/* Flags for the parameter of inotify_init1. */ +enum + { + IN_CLOEXEC = 02000000, +#define IN_CLOEXEC IN_CLOEXEC + IN_NONBLOCK = 00000200 +#define IN_NONBLOCK IN_NONBLOCK + }; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h new file mode 100644 index 0000000000..e5f33bb34e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h @@ -0,0 +1,75 @@ +/* Structure types for pre-termios terminal ioctls. Linux/MIPS version. + Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_IOCTL_H +# error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." +#endif + +/* Get definition of constants for use with `ioctl'. */ +#include <asm/ioctls.h> + +struct winsize + { + unsigned short int ws_row; + unsigned short int ws_col; + unsigned short int ws_xpixel; + unsigned short int ws_ypixel; + }; + +#define NCC 8 +struct termio + { + unsigned short int c_iflag; /* input mode flags */ + unsigned short int c_oflag; /* output mode flags */ + unsigned short int c_cflag; /* control mode flags */ + unsigned short int c_lflag; /* local mode flags */ + char c_line; /* line discipline */ + /* Yes, this is really NCCS. */ + unsigned char c_cc[32 /* NCCS */]; /* control characters */ + }; + +/* modem lines */ +#define TIOCM_LE 0x001 /* line enable */ +#define TIOCM_DTR 0x002 /* data terminal ready */ +#define TIOCM_RTS 0x004 /* request to send */ +#define TIOCM_ST 0x010 /* secondary transmit */ +#define TIOCM_SR 0x020 /* secondary receive */ +#define TIOCM_CTS 0x040 /* clear to send */ +#define TIOCM_CAR 0x100 /* carrier detect */ +#define TIOCM_CD TIOCM_CAR +#define TIOCM_RNG 0x200 /* ring */ +#define TIOCM_RI TIOCM_RNG +#define TIOCM_DSR 0x400 /* data set ready */ + +/* line disciplines */ +#define N_TTY 0 +#define N_SLIP 1 +#define N_MOUSE 2 +#define N_PPP 3 +#define N_STRIP 4 +#define N_AX25 5 +#define N_X25 6 /* X.25 async */ +#define N_6PACK 7 +#define N_MASC 8 /* Mobitex module */ +#define N_R3964 9 /* Simatic R3964 module */ +#define N_PROFIBUS_FDL 10 /* Profibus */ +#define N_IRDA 11 /* Linux IR */ +#define N_SMSBLOCK 12 /* SMS block mode */ +#define N_HDLC 13 /* synchronous HDLC */ +#define N_SYNC_PPP 14 /* synchronous PPP */ +#define N_HCI 15 /* Bluetooth HCI UART */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/ipc.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/ipc.h new file mode 100644 index 0000000000..7d2712c36f --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/ipc.h @@ -0,0 +1,54 @@ +/* Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_IPC_H +# error "Never use <bits/ipc.h> directly; include <sys/ipc.h> instead." +#endif + +#include <bits/types.h> + +/* Mode bits for `msgget', `semget', and `shmget'. */ +#define IPC_CREAT 01000 /* Create key if key does not exist. */ +#define IPC_EXCL 02000 /* Fail if key exists. */ +#define IPC_NOWAIT 04000 /* Return error on wait. */ + +/* Control commands for `msgctl', `semctl', and `shmctl'. */ +#define IPC_RMID 0 /* Remove identifier. */ +#define IPC_SET 1 /* Set `ipc_perm' options. */ +#define IPC_STAT 2 /* Get `ipc_perm' options. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif + +/* Special key values. */ +#define IPC_PRIVATE ((__key_t) 0) /* Private key. */ + + +/* Data structure used to pass permission information to IPC operations. */ +struct ipc_perm + { + __key_t __key; /* Key. */ + unsigned int uid; /* Owner's user ID. */ + unsigned int gid; /* Owner's group ID. */ + unsigned int cuid; /* Creator's user ID. */ + unsigned int cgid; /* Creator's group ID. */ + unsigned int mode; /* Read/write permission. */ + unsigned short int __seq; /* Sequence number. */ + unsigned short int __pad1; + unsigned long int __glibc_reserved1; + unsigned long int __glibc_reserved2; +}; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/local_lim.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/local_lim.h new file mode 100644 index 0000000000..b07b8afc3c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/local_lim.h @@ -0,0 +1,99 @@ +/* Minimum guaranteed maximum values for system limits. MIPS Linux version. + Copyright (C) 1993-2017 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, see + <http://www.gnu.org/licenses/>. */ + +/* The kernel header pollutes the namespace with the NR_OPEN symbol + and defines LINK_MAX although filesystems have different maxima. A + similar thing is true for OPEN_MAX: the limit can be changed at + runtime and therefore the macro must not be defined. Remove this + after including the header if necessary. */ +#ifndef NR_OPEN +# define __undef_NR_OPEN +#endif +#ifndef LINK_MAX +# define __undef_LINK_MAX +#endif +#ifndef OPEN_MAX +# define __undef_OPEN_MAX +#endif +#ifndef ARG_MAX +# define __undef_ARG_MAX +#endif + +/* The kernel sources contain a file with all the needed information. */ +#include <linux/limits.h> + +/* Have to remove NR_OPEN? */ +#ifdef __undef_NR_OPEN +# undef NR_OPEN +# undef __undef_NR_OPEN +#endif +/* Have to remove LINK_MAX? */ +#ifdef __undef_LINK_MAX +# undef LINK_MAX +# undef __undef_LINK_MAX +#endif +/* Have to remove OPEN_MAX? */ +#ifdef __undef_OPEN_MAX +# undef OPEN_MAX +# undef __undef_OPEN_MAX +#endif +/* Have to remove ARG_MAX? */ +#ifdef __undef_ARG_MAX +# undef ARG_MAX +# undef __undef_ARG_MAX +#endif + +/* The number of data keys per process. */ +#define _POSIX_THREAD_KEYS_MAX 128 +/* This is the value this implementation supports. */ +#define PTHREAD_KEYS_MAX 1024 + +/* Controlling the iterations of destructors for thread-specific data. */ +#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 +/* Number of iterations this implementation does. */ +#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS + +/* The number of threads per process. */ +#define _POSIX_THREAD_THREADS_MAX 64 +/* We have no predefined limit on the number of threads. */ +#undef PTHREAD_THREADS_MAX + +/* Maximum amount by which a process can descrease its asynchronous I/O + priority level. */ +#define AIO_PRIO_DELTA_MAX 20 + +/* Minimum size for a thread. At least two pages with 64k pages. */ +#define PTHREAD_STACK_MIN 131072 + +/* Maximum number of timer expiration overruns. */ +#define DELAYTIMER_MAX 2147483647 + +/* Maximum tty name length. */ +#define TTY_NAME_MAX 32 + +/* Maximum login name length. This is arbitrary. */ +#define LOGIN_NAME_MAX 256 + +/* Maximum host name length. */ +#define HOST_NAME_MAX 64 + +/* Maximum message queue priority level. */ +#define MQ_PRIO_MAX 32768 + +/* Maximum value the semaphore can have. */ +#define SEM_VALUE_MAX (2147483647) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/mman.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/mman.h new file mode 100644 index 0000000000..7fcf630726 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/mman.h @@ -0,0 +1,46 @@ +/* Definitions for POSIX memory map interface. Linux/MIPS version. + Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#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. */ + +/* These are Linux-specific. */ +#ifdef __USE_MISC +# define MAP_NORESERVE 0x0400 /* don't check for reservations */ +# define MAP_GROWSDOWN 0x1000 /* stack-like segment */ +# define MAP_DENYWRITE 0x2000 /* ETXTBSY */ +# define MAP_EXECUTABLE 0x4000 /* mark it as an executable */ +# define MAP_LOCKED 0x8000 /* pages are locked */ +# define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ +# define MAP_NONBLOCK 0x20000 /* do not block on IO */ +# define MAP_STACK 0x40000 /* Allocation is for a stack. */ +# define MAP_HUGETLB 0x80000 /* Create huge page mapping. */ +#endif + +#define __MAP_ANONYMOUS 0x0800 + +/* Include generic Linux declarations. */ +#include <bits/mman-linux.h> + +#ifdef __USE_MISC +# define MAP_RENAME MAP_ANONYMOUS +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/msq.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/msq.h new file mode 100644 index 0000000000..648c71fbc2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/msq.h @@ -0,0 +1,92 @@ +/* Copyright (C) 2002-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_MSG_H +# error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." +#endif + +#include <bits/types.h> + +/* Define options for message queue functions. */ +#define MSG_NOERROR 010000 /* no error if message is too big */ +#ifdef __USE_GNU +# define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +# define MSG_COPY 040000 /* copy (not remove) all queue messages */ +#endif + +/* Types used in the structure definition. */ +typedef unsigned long int msgqnum_t; +typedef unsigned long int msglen_t; + + +/* Structure of record for one message inside the kernel. + The type `struct msg' is opaque. */ +struct msqid_ds +{ + struct ipc_perm msg_perm; /* structure describing operation permission */ +#if __WORDSIZE == 32 && defined (__MIPSEB__) + unsigned long int __glibc_reserved1; +#endif + __time_t msg_stime; /* time of last msgsnd command */ +#if __WORDSIZE == 32 && defined (__MIPSEL__) + unsigned long int __glibc_reserved1; +#endif +#if __WORDSIZE == 32 && defined (__MIPSEB__) + unsigned long int __glibc_reserved2; +#endif + __time_t msg_rtime; /* time of last msgrcv command */ +#if __WORDSIZE == 32 && defined (__MIPSEL__) + unsigned long int __glibc_reserved2; +#endif +#if __WORDSIZE == 32 && defined (__MIPSEB__) + unsigned long int __glibc_reserved3; +#endif + __time_t msg_ctime; /* time of last change */ +#if __WORDSIZE == 32 && defined (__MIPSEL__) + unsigned long int __glibc_reserved3; +#endif + unsigned long int __msg_cbytes; /* current number of bytes on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ + __pid_t msg_lspid; /* pid of last msgsnd() */ + __pid_t msg_lrpid; /* pid of last msgrcv() */ + unsigned long int __glibc_reserved4; + unsigned long int __glibc_reserved5; +}; + +#ifdef __USE_MISC + +# define msg_cbytes __msg_cbytes + +/* ipcs ctl commands */ +# define MSG_STAT 11 +# define MSG_INFO 12 + +/* buffer for msgctl calls IPC_INFO, MSG_INFO */ +struct msginfo + { + int msgpool; + int msgmap; + int msgmax; + int msgmnb; + int msgmni; + int msgssz; + int msgtql; + unsigned short int msgseg; + }; + +#endif /* __USE_MISC */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/poll.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/poll.h new file mode 100644 index 0000000000..0f92f34d79 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/poll.h @@ -0,0 +1,49 @@ +/* Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_POLL_H +# error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." +#endif + +/* Event types that can be polled for. These bits may be set in `events' + to indicate the interesting event types; they will appear in `revents' + to indicate the status of the file descriptor. */ +#define POLLIN 0x001 /* There is data to read. */ +#define POLLPRI 0x002 /* There is urgent data to read. */ +#define POLLOUT 0x004 /* Writing now will not block. */ + +#if defined __USE_XOPEN || defined __USE_XOPEN2K8 +/* These values are defined in XPG4.2. */ +# define POLLRDNORM 0x040 /* Normal data may be read. */ +# define POLLRDBAND 0x080 /* Priority data may be read. */ +# define POLLWRNORM POLLOUT /* Writing now will not block. */ +# define POLLWRBAND 0x100 /* Priority data may be written. */ +#endif + +#ifdef __USE_GNU +/* These are extensions for Linux. */ +# define POLLMSG 0x400 +# define POLLREMOVE 0x1000 +# define POLLRDHUP 0x2000 +#endif + +/* Event types always implicitly polled for. These bits need not be set in + `events', but they will appear in `revents' to indicate the status of + the file descriptor. */ +#define POLLERR 0x008 /* Error condition. */ +#define POLLHUP 0x010 /* Hung up. */ +#define POLLNVAL 0x020 /* Invalid polling request. */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/resource.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/resource.h new file mode 100644 index 0000000000..c59a92b258 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/resource.h @@ -0,0 +1,273 @@ +/* Bit values & structures for resource limits. Linux/MIPS version. + Copyright (C) 1994-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_RESOURCE_H +# error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." +#endif + +#include <bits/types.h> + +/* Transmute defines to enumerations. The macro re-definitions are + necessary because some programs want to test for operating system + features with #ifdef RUSAGE_SELF. In ISO C the reflexive + definition is a no-op. */ + +/* Kinds of resource limit. */ +enum __rlimit_resource +{ + /* Per-process CPU limit, in seconds. */ + RLIMIT_CPU = 0, +#define RLIMIT_CPU RLIMIT_CPU + + /* Largest file that can be created, in bytes. */ + RLIMIT_FSIZE = 1, +#define RLIMIT_FSIZE RLIMIT_FSIZE + + /* Maximum size of data segment, in bytes. */ + RLIMIT_DATA = 2, +#define RLIMIT_DATA RLIMIT_DATA + + /* Maximum size of stack segment, in bytes. */ + RLIMIT_STACK = 3, +#define RLIMIT_STACK RLIMIT_STACK + + /* Largest core file that can be created, in bytes. */ + RLIMIT_CORE = 4, +#define RLIMIT_CORE RLIMIT_CORE + + /* Largest resident set size, in bytes. + This affects swapping; processes that are exceeding their + resident set size will be more likely to have physical memory + taken from them. */ + __RLIMIT_RSS = 7, +#define RLIMIT_RSS __RLIMIT_RSS + + /* Number of open files. */ + RLIMIT_NOFILE = 5, + __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ +#define RLIMIT_NOFILE RLIMIT_NOFILE +#define RLIMIT_OFILE __RLIMIT_OFILE + + /* Address space limit (?) */ + RLIMIT_AS = 6, +#define RLIMIT_AS RLIMIT_AS + + /* Number of processes. */ + __RLIMIT_NPROC = 8, +#define RLIMIT_NPROC __RLIMIT_NPROC + + /* Locked-in-memory address space. */ + __RLIMIT_MEMLOCK = 9, +#define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK + + /* Maximum number of file locks. */ + __RLIMIT_LOCKS = 10, +#define RLIMIT_LOCKS __RLIMIT_LOCKS + + /* Maximum number of pending signals. */ + __RLIMIT_SIGPENDING = 11, +#define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING + + /* Maximum bytes in POSIX message queues. */ + __RLIMIT_MSGQUEUE = 12, +#define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE + + /* Maximum nice priority allowed to raise to. + Nice levels 19 .. -20 correspond to 0 .. 39 + values of this resource limit. */ + __RLIMIT_NICE = 13, +#define RLIMIT_NICE __RLIMIT_NICE + + /* Maximum realtime priority allowed for non-priviledged + processes. */ + __RLIMIT_RTPRIO = 14, +#define RLIMIT_RTPRIO __RLIMIT_RTPRIO + + /* Maximum CPU time in µs that a process scheduled under a real-time + scheduling policy may consume without making a blocking system + call before being forcibly descheduled. */ + __RLIMIT_RTTIME = 15, +#define RLIMIT_RTTIME __RLIMIT_RTTIME + + __RLIMIT_NLIMITS = 16, + __RLIM_NLIMITS = __RLIMIT_NLIMITS +#define RLIMIT_NLIMITS __RLIMIT_NLIMITS +#define RLIM_NLIMITS __RLIM_NLIMITS +}; + +/* Value to indicate that there is no limit. */ +#if _MIPS_SIM == _ABI64 +/* The N64 syscall uses this value. */ +# define RLIM_INFINITY 0xffffffffffffffffUL +# ifdef __USE_LARGEFILE64 +# define RLIM64_INFINITY 0xffffffffffffffffUL +# endif +#else +/* The O32 and N32 syscalls use 0x7fffffff. */ +# ifndef __USE_FILE_OFFSET64 +# define RLIM_INFINITY ((long int)(~0UL >> 1)) +# else +# define RLIM_INFINITY 0xffffffffffffffffULL +# endif +# ifdef __USE_LARGEFILE64 +# define RLIM64_INFINITY 0xffffffffffffffffULL +# endif +#endif + +/* We can represent all limits. */ +#define RLIM_SAVED_MAX RLIM_INFINITY +#define RLIM_SAVED_CUR RLIM_INFINITY + + +/* Type for resource quantity measurement. */ +#ifndef __USE_FILE_OFFSET64 +typedef __rlim_t rlim_t; +#else +typedef __rlim64_t rlim_t; +#endif +#ifdef __USE_LARGEFILE64 +typedef __rlim64_t rlim64_t; +#endif + +struct rlimit + { + /* The current (soft) limit. */ + rlim_t rlim_cur; + /* The hard limit. */ + rlim_t rlim_max; + }; + +#ifdef __USE_LARGEFILE64 +struct rlimit64 + { + /* The current (soft) limit. */ + rlim64_t rlim_cur; + /* The hard limit. */ + rlim64_t rlim_max; + }; +#endif + +/* Whose usage statistics do you want? */ +enum __rusage_who +{ + /* The calling process. */ + RUSAGE_SELF = 0, +#define RUSAGE_SELF RUSAGE_SELF + + /* All of its terminated child processes. */ + RUSAGE_CHILDREN = -1 +#define RUSAGE_CHILDREN RUSAGE_CHILDREN + +#ifdef __USE_GNU + , + /* The calling thread. */ + RUSAGE_THREAD = 1 +# define RUSAGE_THREAD RUSAGE_THREAD + /* Name for the same functionality on Solaris. */ +# define RUSAGE_LWP RUSAGE_THREAD +#endif +}; + +#include <bits/types/struct_timeval.h> + +/* Structure which says how much of each resource has been used. */ +struct rusage + { + /* Total amount of user time used. */ + struct timeval ru_utime; + /* Total amount of system time used. */ + struct timeval ru_stime; + /* Maximum resident set size (in kilobytes). */ + long int ru_maxrss; + /* Amount of sharing of text segment memory + with other processes (kilobyte-seconds). */ + long int ru_ixrss; + /* Amount of data segment memory used (kilobyte-seconds). */ + long int ru_idrss; + /* Amount of stack memory used (kilobyte-seconds). */ + long int ru_isrss; + /* Number of soft page faults (i.e. those serviced by reclaiming + a page from the list of pages awaiting reallocation. */ + long int ru_minflt; + /* Number of hard page faults (i.e. those that required I/O). */ + long int ru_majflt; + /* Number of times a process was swapped out of physical memory. */ + long int ru_nswap; + /* Number of input operations via the file system. Note: This + and `ru_oublock' do not include operations with the cache. */ + long int ru_inblock; + /* Number of output operations via the file system. */ + long int ru_oublock; + /* Number of IPC messages sent. */ + long int ru_msgsnd; + /* Number of IPC messages received. */ + long int ru_msgrcv; + /* Number of signals delivered. */ + long int ru_nsignals; + /* Number of voluntary context switches, i.e. because the process + gave up the process before it had to (usually to wait for some + resource to be available). */ + long int ru_nvcsw; + /* Number of involuntary context switches, i.e. a higher priority process + became runnable or the current process used up its time slice. */ + long int ru_nivcsw; + }; + +/* Priority limits. */ +#define PRIO_MIN -20 /* Minimum priority a process can have. */ +#define PRIO_MAX 20 /* Maximum priority a process can have. */ + +/* The type of the WHICH argument to `getpriority' and `setpriority', + indicating what flavor of entity the WHO argument specifies. */ +enum __priority_which +{ + PRIO_PROCESS = 0, /* WHO is a process ID. */ +#define PRIO_PROCESS PRIO_PROCESS + PRIO_PGRP = 1, /* WHO is a process group ID. */ +#define PRIO_PGRP PRIO_PGRP + PRIO_USER = 2 /* WHO is a user ID. */ +#define PRIO_USER PRIO_USER +}; + + +__BEGIN_DECLS + +#ifdef __USE_GNU +/* Modify and return resource limits of a process atomically. */ +# ifndef __USE_FILE_OFFSET64 +extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, + const struct rlimit *__new_limit, + struct rlimit *__old_limit) __THROW; +# else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, + enum __rlimit_resource __resource, + const struct rlimit *__new_limit, + struct rlimit *__old_limit), prlimit64); +# else +# define prlimit prlimit64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, + const struct rlimit64 *__new_limit, + struct rlimit64 *__old_limit) __THROW; +# endif +#endif + +__END_DECLS diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sem.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sem.h new file mode 100644 index 0000000000..36de4390e8 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sem.h @@ -0,0 +1,84 @@ +/* Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_SEM_H +# error "Never include <bits/sem.h> directly; use <sys/sem.h> instead." +#endif + +#include <sys/types.h> + +/* Flags for `semop'. */ +#define SEM_UNDO 0x1000 /* undo the operation on exit */ + +/* Commands for `semctl'. */ +#define GETPID 11 /* get sempid */ +#define GETVAL 12 /* get semval */ +#define GETALL 13 /* get all semval's */ +#define GETNCNT 14 /* get semncnt */ +#define GETZCNT 15 /* get semzcnt */ +#define SETVAL 16 /* set semval */ +#define SETALL 17 /* set all semval's */ + + +/* Data structure describing a set of semaphores. */ +struct semid_ds +{ + struct ipc_perm sem_perm; /* operation permission struct */ + __time_t sem_otime; /* last semop() time */ + __time_t sem_ctime; /* last time changed by semctl() */ + unsigned long int sem_nsems; /* number of semaphores in set */ + unsigned long int __glibc_reserved1; + unsigned long int __glibc_reserved2; +}; + +/* The user should define a union like the following to use it for arguments + for `semctl'. + + union semun + { + int val; <= value for SETVAL + struct semid_ds *buf; <= buffer for IPC_STAT & IPC_SET + unsigned short int *array; <= array for GETALL & SETALL + struct seminfo *__buf; <= buffer for IPC_INFO + }; + + Previous versions of this file used to define this union but this is + incorrect. One can test the macro _SEM_SEMUN_UNDEFINED to see whether + one must define the union or not. */ +#define _SEM_SEMUN_UNDEFINED 1 + +#ifdef __USE_MISC + +/* ipcs ctl cmds */ +# define SEM_STAT 18 +# define SEM_INFO 19 + +struct seminfo +{ + int semmap; + int semmni; + int semmns; + int semmnu; + int semmsl; + int semopm; + int semume; + int semusz; + int semvmx; + int semaem; +}; + +#endif /* __USE_MISC */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/shm.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/shm.h new file mode 100644 index 0000000000..20a02ce9bb --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/shm.h @@ -0,0 +1,95 @@ +/* Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_SHM_H +# error "Never include <bits/shm.h> directly; use <sys/shm.h> instead." +#endif + +#include <bits/types.h> + +/* Permission flag for shmget. */ +#define SHM_R 0400 /* or S_IRUGO from <linux/stat.h> */ +#define SHM_W 0200 /* or S_IWUGO from <linux/stat.h> */ + +/* Flags for `shmat'. */ +#define SHM_RDONLY 010000 /* attach read-only else read-write */ +#define SHM_RND 020000 /* round attach address to SHMLBA */ +#define SHM_REMAP 040000 /* take-over region on attach */ +#define SHM_EXEC 0100000 /* execution access */ + +/* Commands for `shmctl'. */ +#define SHM_LOCK 11 /* lock segment (root only) */ +#define SHM_UNLOCK 12 /* unlock segment (root only) */ + +/* Segment low boundary address multiple. */ +#define SHMLBA 0x40000 + + +/* Type to count number of attaches. */ +typedef unsigned long int shmatt_t; + +/* Data structure describing a shared memory segment. */ +struct shmid_ds + { + struct ipc_perm shm_perm; /* operation permission struct */ + size_t shm_segsz; /* size of segment in bytes */ + __time_t shm_atime; /* time of last shmat() */ + __time_t shm_dtime; /* time of last shmdt() */ + __time_t shm_ctime; /* time of last change by shmctl() */ + __pid_t shm_cpid; /* pid of creator */ + __pid_t shm_lpid; /* pid of last shmop */ + shmatt_t shm_nattch; /* number of current attaches */ + unsigned long int __glibc_reserved1; + unsigned long int __glibc_reserved2; + }; + +#ifdef __USE_MISC + +/* ipcs ctl commands */ +# define SHM_STAT 13 +# define SHM_INFO 14 + +/* shm_mode upper byte flags */ +# define SHM_DEST 01000 /* segment will be destroyed on last detach */ +# define SHM_LOCKED 02000 /* segment will not be swapped */ +# define SHM_HUGETLB 04000 /* segment is mapped via hugetlb */ +# define SHM_NORESERVE 010000 /* don't check for reservations */ + +struct shminfo + { + unsigned long int shmmax; + unsigned long int shmmin; + unsigned long int shmmni; + unsigned long int shmseg; + unsigned long int shmall; + unsigned long int __glibc_reserved1; + unsigned long int __glibc_reserved2; + unsigned long int __glibc_reserved3; + unsigned long int __glibc_reserved4; + }; + +struct shm_info + { + int used_ids; + unsigned long int shm_tot; /* total allocated shm */ + unsigned long int shm_rss; /* total resident shm */ + unsigned long int shm_swp; /* total swapped shm */ + unsigned long int swap_attempts; + unsigned long int swap_successes; + }; + +#endif /* __USE_MISC */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sigaction.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sigaction.h new file mode 100644 index 0000000000..c61a49ef88 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sigaction.h @@ -0,0 +1,89 @@ +/* The proper definitions for Linux/MIPS's sigaction. + Copyright (C) 1993-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SIGNAL_H +# error "Never include <bits/sigaction.h> directly; use <signal.h> instead." +#endif + +/* Structure describing the action to be taken when a signal arrives. */ +struct sigaction + { + /* Special flags. */ + int sa_flags; + + /* Signal handler. */ +#ifdef __USE_POSIX199309 + union + { + /* Used if SA_SIGINFO is not set. */ + __sighandler_t sa_handler; + /* Used if SA_SIGINFO is set. */ + void (*sa_sigaction) (int, siginfo_t *, void *); + } + __sigaction_handler; +# define sa_handler __sigaction_handler.sa_handler +# define sa_sigaction __sigaction_handler.sa_sigaction +#else + __sighandler_t sa_handler; +#endif + /* Additional set of signals to be blocked. */ + __sigset_t sa_mask; + + /* The ABI says here are two unused ints following. */ + /* Restore handler. */ + void (*sa_restorer) (void); + +#if _MIPS_SZPTR < 64 + int sa_resv[1]; +#endif + }; + +/* Bits in `sa_flags'. */ +/* Please note that some Linux kernels versions use different values for these + flags which is a bug in those kernel versions. */ +#define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ +#define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ +#define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with + three arguments instead of one. */ +#if defined __USE_UNIX98 || defined __USE_MISC +# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ +#endif +#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 +# define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ +# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ +# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when + its handler is being executed. */ +#endif +#ifdef __USE_MISC +# define SA_INTERRUPT 0x20000000 /* Historical no-op. */ + +/* Some aliases for the SA_ constants. */ +# define SA_NOMASK SA_NODEFER +# define SA_ONESHOT SA_RESETHAND +# define SA_STACK SA_ONSTACK +#endif + +/* Values for the HOW argument to `sigprocmask'. */ +#define SIG_NOP 0 /* 0 is unused to catch errors */ +#define SIG_BLOCK 1 /* Block signals. */ +#define SIG_UNBLOCK 2 /* Unblock signals. */ +#define SIG_SETMASK 3 /* Set the set of blocked signals. */ +#ifdef __USE_MISC +# define SIG_SETMASK32 256 /* Goodie from SGI for BSD compatibility: + set only the low 32 bit of the sigset. */ +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h new file mode 100644 index 0000000000..0b3fda1fe1 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h @@ -0,0 +1,82 @@ +/* Copyright (C) 1996-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _BITS_SIGCONTEXT_H +#define _BITS_SIGCONTEXT_H 1 + +#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H +# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." +#endif + +#include <sgidefs.h> + +#if _MIPS_SIM == _ABIO32 + +/* Certain unused fields were replaced with new ones in 2.6.12-rc4. + The changes were as follows: + + sc_cause -> sc_hi1 + sc_badvaddr -> sc_lo1 + sc_sigset[0] -> sc_hi2 + sc_sigset[1] -> sc_lo2 + sc_sigset[2] -> sc_hi3 + sc_sigset[3] -> sc_lo3 + + sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ +struct sigcontext { + unsigned int sc_regmask; + unsigned int sc_status; + __extension__ unsigned long long sc_pc; + __extension__ unsigned long long sc_regs[32]; + __extension__ unsigned long long sc_fpregs[32]; + unsigned int sc_ownedfp; + unsigned int sc_fpc_csr; + unsigned int sc_fpc_eir; + unsigned int sc_used_math; + unsigned int sc_dsp; + __extension__ unsigned long long sc_mdhi; + __extension__ unsigned long long sc_mdlo; + unsigned long sc_hi1; + unsigned long sc_lo1; + unsigned long sc_hi2; + unsigned long sc_lo2; + unsigned long sc_hi3; + unsigned long sc_lo3; +}; + +#else + +/* This structure changed in 2.6.12-rc4 when DSP support was added. */ +struct sigcontext { + __extension__ unsigned long long sc_regs[32]; + __extension__ unsigned long long sc_fpregs[32]; + __extension__ unsigned long long sc_mdhi; + __extension__ unsigned long long sc_hi1; + __extension__ unsigned long long sc_hi2; + __extension__ unsigned long long sc_hi3; + __extension__ unsigned long long sc_mdlo; + __extension__ unsigned long long sc_lo1; + __extension__ unsigned long long sc_lo2; + __extension__ unsigned long long sc_lo3; + __extension__ unsigned long long sc_pc; + unsigned int sc_fpc_csr; + unsigned int sc_used_math; + unsigned int sc_dsp; + unsigned int sc_reserved; +}; + +#endif /* _MIPS_SIM != _ABIO32 */ +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/siginfo-arch.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/siginfo-arch.h new file mode 100644 index 0000000000..cd3af7db06 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/siginfo-arch.h @@ -0,0 +1,13 @@ +/* Architecture-specific adjustments to siginfo_t. MIPS version. */ +#ifndef _BITS_SIGINFO_ARCH_H +#define _BITS_SIGINFO_ARCH_H 1 + +/* MIPS has the si_code and si_errno fields in the opposite order from + all other architectures. */ +#define __SI_ERRNO_THEN_CODE 0 + +/* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER + than all other architectures. */ +#define __SI_ASYNCIO_AFTER_SIGIO 0 + +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/signalfd.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/signalfd.h new file mode 100644 index 0000000000..7cc70153a3 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/signalfd.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2007-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_SIGNALFD_H +# error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." +#endif + +/* Flags for signalfd. */ +enum + { + SFD_CLOEXEC = 02000000, +#define SFD_CLOEXEC SFD_CLOEXEC + SFD_NONBLOCK = 00000200 +#define SFD_NONBLOCK SFD_NONBLOCK + }; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/signum.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/signum.h new file mode 100644 index 0000000000..6c31e01cd7 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/signum.h @@ -0,0 +1,78 @@ +/* Signal number definitions. Linux version. + Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifdef _SIGNAL_H + +/* Fake signal functions. */ +#define SIG_ERR ((__sighandler_t) -1) /* Error return. */ +#define SIG_DFL ((__sighandler_t) 0) /* Default action. */ +#define SIG_IGN ((__sighandler_t) 1) /* Ignore signal. */ + +#ifdef __USE_XOPEN +# define SIG_HOLD ((__sighandler_t) 2) /* Add signal to hold mask. */ +#endif + + +#define SIGHUP 1 /* Hangup (POSIX). */ +#define SIGINT 2 /* Interrupt (ANSI). */ +#define SIGQUIT 3 /* Quit (POSIX). */ +#define SIGILL 4 /* Illegal instruction (ANSI). */ +#define SIGTRAP 5 /* Trace trap (POSIX). */ +#define SIGIOT 6 /* IOT trap (4.2 BSD). */ +#define SIGABRT SIGIOT /* Abort (ANSI). */ +#define SIGEMT 7 +#define SIGFPE 8 /* Floating-point exception (ANSI). */ +#define SIGKILL 9 /* Kill, unblockable (POSIX). */ +#define SIGBUS 10 /* BUS error (4.2 BSD). */ +#define SIGSEGV 11 /* Segmentation violation (ANSI). */ +#define SIGSYS 12 +#define SIGPIPE 13 /* Broken pipe (POSIX). */ +#define SIGALRM 14 /* Alarm clock (POSIX). */ +#define SIGTERM 15 /* Termination (ANSI). */ +#define SIGUSR1 16 /* User-defined signal 1 (POSIX). */ +#define SIGUSR2 17 /* User-defined signal 2 (POSIX). */ +#define SIGCHLD 18 /* Child status has changed (POSIX). */ +#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */ +#define SIGPWR 19 /* Power failure restart (System V). */ +#define SIGWINCH 20 /* Window size change (4.3 BSD, Sun). */ +#define SIGURG 21 /* Urgent condition on socket (4.2 BSD). */ +#define SIGIO 22 /* I/O now possible (4.2 BSD). */ +#define SIGPOLL SIGIO /* Pollable event occurred (System V). */ +#define SIGSTOP 23 /* Stop, unblockable (POSIX). */ +#define SIGTSTP 24 /* Keyboard stop (POSIX). */ +#define SIGCONT 25 /* Continue (POSIX). */ +#define SIGTTIN 26 /* Background read from tty (POSIX). */ +#define SIGTTOU 27 /* Background write to tty (POSIX). */ +#define SIGVTALRM 28 /* Virtual alarm clock (4.2 BSD). */ +#define SIGPROF 29 /* Profiling alarm clock (4.2 BSD). */ +#define SIGXCPU 30 /* CPU limit exceeded (4.2 BSD). */ +#define SIGXFSZ 31 /* File size limit exceeded (4.2 BSD). */ + + +#define _NSIG 128 /* Biggest signal number + 1 + (including real-time signals). */ + +#define SIGRTMIN (__libc_current_sigrtmin ()) +#define SIGRTMAX (__libc_current_sigrtmax ()) + +/* These are the hard limits of the kernel. These values should not be + used directly at user level. */ +#define __SIGRTMIN 32 +#define __SIGRTMAX (_NSIG - 1) + +#endif /* <signal.h> included. */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/socket_type.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/socket_type.h new file mode 100644 index 0000000000..64b70c204b --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/socket_type.h @@ -0,0 +1,55 @@ +/* Define enum __socket_type for Linux/MIPS. + Copyright (C) 1991-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_SOCKET_H +# error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." +#endif + +/* Types of sockets. */ +enum __socket_type +{ + SOCK_DGRAM = 1, /* Connectionless, unreliable datagrams + of fixed maximum length. */ +#define SOCK_DGRAM SOCK_DGRAM + SOCK_STREAM = 2, /* Sequenced, reliable, connection-based + byte streams. */ +#define SOCK_STREAM SOCK_STREAM + SOCK_RAW = 3, /* Raw protocol interface. */ +#define SOCK_RAW SOCK_RAW + SOCK_RDM = 4, /* Reliably-delivered messages. */ +#define SOCK_RDM SOCK_RDM + SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, + datagrams of fixed maximum length. */ +#define SOCK_SEQPACKET SOCK_SEQPACKET + SOCK_DCCP = 6, +#define SOCK_DCCP SOCK_DCCP /* Datagram Congestion Control Protocol. */ + SOCK_PACKET = 10, /* Linux specific way of getting packets + at the dev level. For writing rarp and + other similar things on the user level. */ +#define SOCK_PACKET SOCK_PACKET + + /* Flags to be ORed into the type parameter of socket and socketpair and + used for the flags parameter of paccept. */ + + SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the + new descriptor(s). */ +#define SOCK_CLOEXEC SOCK_CLOEXEC + SOCK_NONBLOCK = 00000200 /* Atomically mark descriptor(s) as + non-blocking. */ +#define SOCK_NONBLOCK SOCK_NONBLOCK +}; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/stat.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/stat.h new file mode 100644 index 0000000000..07b6d7f615 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/stat.h @@ -0,0 +1,263 @@ +/* Copyright (C) 1992-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#if !defined _SYS_STAT_H && !defined _FCNTL_H +# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead." +#endif + +#ifndef _BITS_STAT_H +#define _BITS_STAT_H 1 + +#include <sgidefs.h> + +/* Versions of the `struct stat' data structure. */ +#define _STAT_VER_LINUX_OLD 1 +#define _STAT_VER_KERNEL 1 +#define _STAT_VER_SVR4 2 +#define _STAT_VER_LINUX 3 +#define _STAT_VER _STAT_VER_LINUX /* The one defined below. */ + +/* Versions of the `xmknod' interface. */ +#define _MKNOD_VER_LINUX 1 +#define _MKNOD_VER_SVR4 2 +#define _MKNOD_VER _MKNOD_VER_LINUX /* The bits defined below. */ + + +#if _MIPS_SIM == _ABIO32 +/* Structure describing file characteristics. */ +struct stat + { + unsigned long int st_dev; + long int st_pad1[3]; +#ifndef __USE_FILE_OFFSET64 + __ino_t st_ino; /* File serial number. */ +#else + __ino64_t st_ino; /* File serial number. */ +#endif + __mode_t st_mode; /* File mode. */ + __nlink_t st_nlink; /* Link count. */ + __uid_t st_uid; /* User ID of the file's owner. */ + __gid_t st_gid; /* Group ID of the file's group.*/ + unsigned long int st_rdev; /* Device number, if device. */ +#ifndef __USE_FILE_OFFSET64 + long int st_pad2[2]; + __off_t st_size; /* Size of file, in bytes. */ + /* SVR4 added this extra long to allow for expansion of off_t. */ + long int st_pad3; +#else + long int st_pad2[3]; + __off64_t st_size; /* Size of file, in bytes. */ +#endif +#ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the <sys/stat.h> header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +# define st_atime st_atim.tv_sec /* Backward compatibility. */ +# define st_mtime st_mtim.tv_sec +# define st_ctime st_ctim.tv_sec +#else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +#endif + __blksize_t st_blksize; /* Optimal block size for I/O. */ +#ifndef __USE_FILE_OFFSET64 + __blkcnt_t st_blocks; /* Number of 512-byte blocks allocated. */ +#else + long int st_pad4; + __blkcnt64_t st_blocks; /* Number of 512-byte blocks allocated. */ +#endif + long int st_pad5[14]; + }; + +#ifdef __USE_LARGEFILE64 +struct stat64 + { + unsigned long int st_dev; + long int st_pad1[3]; + __ino64_t st_ino; /* File serial number. */ + __mode_t st_mode; /* File mode. */ + __nlink_t st_nlink; /* Link count. */ + __uid_t st_uid; /* User ID of the file's owner. */ + __gid_t st_gid; /* Group ID of the file's group.*/ + unsigned long int st_rdev; /* Device number, if device. */ + long int st_pad2[3]; + __off64_t st_size; /* Size of file, in bytes. */ +# ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the <sys/stat.h> header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +# else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +# endif + __blksize_t st_blksize; /* Optimal block size for I/O. */ + long int st_pad3; + __blkcnt64_t st_blocks; /* Number of 512-byte blocks allocated. */ + long int st_pad4[14]; + }; +#endif +#else +struct stat + { + __dev_t st_dev; + int st_pad1[3]; /* Reserved for st_dev expansion */ +#ifndef __USE_FILE_OFFSET64 + __ino_t st_ino; +#else + __ino64_t st_ino; +#endif + __mode_t st_mode; + __nlink_t st_nlink; + __uid_t st_uid; + __gid_t st_gid; + __dev_t st_rdev; +#if !defined __USE_FILE_OFFSET64 + unsigned int st_pad2[2]; /* Reserved for st_rdev expansion */ + __off_t st_size; + int st_pad3; +#else + unsigned int st_pad2[3]; /* Reserved for st_rdev expansion */ + __off64_t st_size; +#endif +#ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the <sys/stat.h> header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +# define st_atime st_atim.tv_sec /* Backward compatibility. */ +# define st_mtime st_mtim.tv_sec +# define st_ctime st_ctim.tv_sec +#else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +#endif + __blksize_t st_blksize; + unsigned int st_pad4; +#ifndef __USE_FILE_OFFSET64 + __blkcnt_t st_blocks; +#else + __blkcnt64_t st_blocks; +#endif + int st_pad5[14]; + }; + +#ifdef __USE_LARGEFILE64 +struct stat64 + { + __dev_t st_dev; + unsigned int st_pad1[3]; /* Reserved for st_dev expansion */ + __ino64_t st_ino; + __mode_t st_mode; + __nlink_t st_nlink; + __uid_t st_uid; + __gid_t st_gid; + __dev_t st_rdev; + unsigned int st_pad2[3]; /* Reserved for st_rdev expansion */ + __off64_t st_size; +# ifdef __USE_XOPEN2K8 + /* Nanosecond resolution timestamps are stored in a format + equivalent to 'struct timespec'. This is the type used + whenever possible but the Unix namespace rules do not allow the + identifier 'timespec' to appear in the <sys/stat.h> header. + Therefore we have to handle the use of this header in strictly + standard-compliant sources special. */ + struct timespec st_atim; /* Time of last access. */ + struct timespec st_mtim; /* Time of last modification. */ + struct timespec st_ctim; /* Time of last status change. */ +# else + __time_t st_atime; /* Time of last access. */ + unsigned long int st_atimensec; /* Nscecs of last access. */ + __time_t st_mtime; /* Time of last modification. */ + unsigned long int st_mtimensec; /* Nsecs of last modification. */ + __time_t st_ctime; /* Time of last status change. */ + unsigned long int st_ctimensec; /* Nsecs of last status change. */ +# endif + __blksize_t st_blksize; + unsigned int st_pad3; + __blkcnt64_t st_blocks; + int st_pad4[14]; +}; +#endif +#endif + +/* Tell code we have these members. */ +#define _STATBUF_ST_BLKSIZE +#define _STATBUF_ST_RDEV + +/* Encoding of the file mode. */ + +#define __S_IFMT 0170000 /* These bits determine file type. */ + +/* File types. */ +#define __S_IFDIR 0040000 /* Directory. */ +#define __S_IFCHR 0020000 /* Character device. */ +#define __S_IFBLK 0060000 /* Block device. */ +#define __S_IFREG 0100000 /* Regular file. */ +#define __S_IFIFO 0010000 /* FIFO. */ +#define __S_IFLNK 0120000 /* Symbolic link. */ +#define __S_IFSOCK 0140000 /* Socket. */ + +/* POSIX.1b objects. Note that these macros always evaluate to zero. But + they do it by enforcing the correct use of the macros. */ +#define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode) +#define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode) +#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode) + +/* Protection bits. */ + +#define __S_ISUID 04000 /* Set user ID on execution. */ +#define __S_ISGID 02000 /* Set group ID on execution. */ +#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */ +#define __S_IREAD 0400 /* Read by owner. */ +#define __S_IWRITE 0200 /* Write by owner. */ +#define __S_IEXEC 0100 /* Execute by owner. */ + +#ifdef __USE_ATFILE +# define UTIME_NOW ((1l << 30) - 1l) +# define UTIME_OMIT ((1l << 30) - 2l) +#endif + +#endif /* bits/stat.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/statfs.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/statfs.h new file mode 100644 index 0000000000..a3ed8a363d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/statfs.h @@ -0,0 +1,73 @@ +/* Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_STATFS_H +# error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." +#endif + +#include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ + +struct statfs + { + long int f_type; +#define f_fstyp f_type + long int f_bsize; + long int f_frsize; /* Fragment size - unsupported */ +#ifndef __USE_FILE_OFFSET64 + __fsblkcnt_t f_blocks; + __fsblkcnt_t f_bfree; + __fsblkcnt_t f_files; + __fsblkcnt_t f_ffree; + __fsblkcnt_t f_bavail; +#else + __fsblkcnt64_t f_blocks; + __fsblkcnt64_t f_bfree; + __fsblkcnt64_t f_files; + __fsblkcnt64_t f_ffree; + __fsblkcnt64_t f_bavail; +#endif + + /* Linux specials */ + __fsid_t f_fsid; + long int f_namelen; + long int f_flags; + long int f_spare[5]; + }; + +#ifdef __USE_LARGEFILE64 +struct statfs64 + { + long int f_type; +#define f_fstyp f_type + long int f_bsize; + long int f_frsize; /* Fragment size - unsupported */ + __fsblkcnt64_t f_blocks; + __fsblkcnt64_t f_bfree; + __fsblkcnt64_t f_files; + __fsblkcnt64_t f_ffree; + __fsblkcnt64_t f_bavail; + + /* Linux specials */ + __fsid_t f_fsid; + long int f_namelen; + long int f_flags; + long int f_spare[5]; + }; +#endif + +/* Tell code we have these members. */ +#define _STATFS_F_NAMELEN diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/termios.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/termios.h new file mode 100644 index 0000000000..ecf4b1378a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/termios.h @@ -0,0 +1,222 @@ +/* termios type and macro definitions. Linux/MIPS version. + Copyright (C) 1993-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _TERMIOS_H +# error "Never include <bits/termios.h> directly; use <termios.h> instead." +#endif + +typedef unsigned char cc_t; +typedef unsigned int speed_t; +typedef unsigned int tcflag_t; + +#define NCCS 32 +struct termios + { + tcflag_t c_iflag; /* input mode flags */ + tcflag_t c_oflag; /* output mode flags */ + tcflag_t c_cflag; /* control mode flags */ + tcflag_t c_lflag; /* local mode flags */ + cc_t c_line; /* line discipline */ + cc_t c_cc[NCCS]; /* control characters */ + }; + +/* c_cc characters */ +#define VINTR 0 /* Interrupt character [ISIG]. */ +#define VQUIT 1 /* Quit character [ISIG]. */ +#define VERASE 2 /* Erase character [ICANON]. */ +#define VKILL 3 /* Kill-line character [ICANON]. */ +#define VMIN 4 /* Minimum number of bytes read at once [!ICANON]. */ +#define VTIME 5 /* Time-out value (tenths of a second) [!ICANON]. */ +#define VEOL2 6 /* Second EOL character [ICANON]. */ +#define VSWTC 7 +#define VSWTCH VSWTC +#define VSTART 8 /* Start (X-ON) character [IXON, IXOFF]. */ +#define VSTOP 9 /* Stop (X-OFF) character [IXON, IXOFF]. */ +#define VSUSP 10 /* Suspend character [ISIG]. */ + /* VDSUSP is not supported on Linux. */ +/* #define VDSUSP 11 / * Delayed suspend character [ISIG]. */ +#define VREPRINT 12 /* Reprint-line character [ICANON]. */ +#define VDISCARD 13 /* Discard character [IEXTEN]. */ +#define VWERASE 14 /* Word-erase character [ICANON]. */ +#define VLNEXT 15 /* Literal-next character [IEXTEN]. */ +#define VEOF 16 /* End-of-file character [ICANON]. */ +#define VEOL 17 /* End-of-line character [ICANON]. */ + +/* c_iflag bits */ +#define IGNBRK 0000001 /* Ignore break condition. */ +#define BRKINT 0000002 /* Signal interrupt on break. */ +#define IGNPAR 0000004 /* Ignore characters with parity errors. */ +#define PARMRK 0000010 /* Mark parity and framing errors. */ +#define INPCK 0000020 /* Enable input parity check. */ +#define ISTRIP 0000040 /* Strip 8th bit off characters. */ +#define INLCR 0000100 /* Map NL to CR on input. */ +#define IGNCR 0000200 /* Ignore CR. */ +#define ICRNL 0000400 /* Map CR to NL on input. */ +#define IUCLC 0001000 /* Map upper case to lower case on input. */ +#define IXON 0002000 /* Enable start/stop output control. */ +#define IXANY 0004000 /* Any character will restart after stop. */ +#define IXOFF 0010000 /* Enable start/stop input control. */ +#define IMAXBEL 0020000 /* Ring bell when input queue is full. */ +#define IUTF8 0040000 /* Input is UTF8. */ + +/* c_oflag bits */ +#define OPOST 0000001 /* Perform output processing. */ +#define OLCUC 0000002 /* Map lower case to upper case on output. */ +#define ONLCR 0000004 /* Map NL to CR-NL on output. */ +#define OCRNL 0000010 +#define ONOCR 0000020 +#define ONLRET 0000040 +#define OFILL 0000100 +#define OFDEL 0000200 +#if defined __USE_MISC || defined __USE_XOPEN +# define NLDLY 0000400 +# define NL0 0000000 +# define NL1 0000400 +# define CRDLY 0003000 +# define CR0 0000000 +# define CR1 0001000 +# define CR2 0002000 +# define CR3 0003000 +# define TABDLY 0014000 +# define TAB0 0000000 +# define TAB1 0004000 +# define TAB2 0010000 +# define TAB3 0014000 +# define BSDLY 0020000 +# define BS0 0000000 +# define BS1 0020000 +# define FFDLY 0100000 +# define FF0 0000000 +# define FF1 0100000 +#endif + +#define VTDLY 0040000 +#define VT0 0000000 +#define VT1 0040000 + +#ifdef __USE_MISC +# define XTABS 0014000 +#endif + +/* c_cflag bit meaning */ +#ifdef __USE_MISC +# define CBAUD 0010017 +#endif +#define B0 0000000 /* hang up */ +#define B50 0000001 +#define B75 0000002 +#define B110 0000003 +#define B134 0000004 +#define B150 0000005 +#define B200 0000006 +#define B300 0000007 +#define B600 0000010 +#define B1200 0000011 +#define B1800 0000012 +#define B2400 0000013 +#define B4800 0000014 +#define B9600 0000015 +#define B19200 0000016 +#define B38400 0000017 +#ifdef __USE_MISC +# define EXTA B19200 +# define EXTB B38400 +#endif +#define CSIZE 0000060 /* Number of bits per byte (mask). */ +#define CS5 0000000 /* 5 bits per byte. */ +#define CS6 0000020 /* 6 bits per byte. */ +#define CS7 0000040 /* 7 bits per byte. */ +#define CS8 0000060 /* 8 bits per byte. */ +#define CSTOPB 0000100 /* Two stop bits instead of one. */ +#define CREAD 0000200 /* Enable receiver. */ +#define PARENB 0000400 /* Parity enable. */ +#define PARODD 0001000 /* Odd parity instead of even. */ +#define HUPCL 0002000 /* Hang up on last close. */ +#define CLOCAL 0004000 /* Ignore modem status lines. */ +#ifdef __USE_MISC +# define CBAUDEX 0010000 +#endif +#define B57600 0010001 +#define B115200 0010002 +#define B230400 0010003 +#define B460800 0010004 +#define B500000 0010005 +#define B576000 0010006 +#define B921600 0010007 +#define B1000000 0010010 +#define B1152000 0010011 +#define B1500000 0010012 +#define B2000000 0010013 +#define B2500000 0010014 +#define B3000000 0010015 +#define B3500000 0010016 +#define B4000000 0010017 +#define __MAX_BAUD B4000000 +#ifdef __USE_MISC +# define CIBAUD 002003600000 /* input baud rate (not used) */ +# define CRTSCTS 020000000000 /* flow control */ +#endif + +/* c_lflag bits */ +#define ISIG 0000001 /* Enable signals. */ +#define ICANON 0000002 /* Do erase and kill processing. */ +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) +# define XCASE 0000004 +#endif +#define ECHO 0000010 /* Enable echo. */ +#define ECHOE 0000020 /* Visual erase for ERASE. */ +#define ECHOK 0000040 /* Echo NL after KILL. */ +#define ECHONL 0000100 /* Echo NL even if ECHO is off. */ +#define NOFLSH 0000200 /* Disable flush after interrupt. */ +#define IEXTEN 0000400 /* Enable DISCARD and LNEXT. */ +#ifdef __USE_MISC +# define ECHOCTL 0001000 /* Echo control characters as ^X. */ +# define ECHOPRT 0002000 /* Hardcopy visual erase. */ +# define ECHOKE 0004000 /* Visual erase for KILL. */ +# define FLUSHO 0020000 +# define PENDIN 0040000 /* Retype pending input (state). */ +#endif +#define TOSTOP 0100000 /* Send SIGTTOU for background output. */ +#define ITOSTOP TOSTOP +#ifdef __USE_MISC +# define EXTPROC 0200000 +#endif + +#ifdef __USE_MISC +/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ +# define TIOCSER_TEMT 0x01 /* Transmitter physically empty */ +#endif + +/* tcflow() and TCXONC use these */ +#define TCOOFF 0 /* Suspend output. */ +#define TCOON 1 /* Restart suspended output. */ +#define TCIOFF 2 /* Send a STOP character. */ +#define TCION 3 /* Send a START character. */ + +/* tcflush() and TCFLSH use these */ +#define TCIFLUSH 0 /* Discard data received but not yet read. */ +#define TCOFLUSH 1 /* Discard data written but not yet sent. */ +#define TCIOFLUSH 2 /* Discard all pending data. */ + +/* tcsetattr uses these */ +#define TCSANOW 0x540e /* Same as TCSETS; change immediately. */ +#define TCSADRAIN 0x540f /* Same as TCSETSW; change when pending output is written. */ +#define TCSAFLUSH 0x5410 /* Same as TCSETSF; flush pending input before changing. */ + +#define _IOT_termios /* Hurd ioctl type field. */ \ + _IOT (_IOTS (cflag_t), 4, _IOTS (cc_t), NCCS, _IOTS (speed_t), 2) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/timerfd.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/timerfd.h new file mode 100644 index 0000000000..ebf2608d50 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/timerfd.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2008-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_TIMERFD_H +# error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." +#endif + +/* Bits to be set in the FLAGS parameter of `timerfd_create'. */ +enum + { + TFD_CLOEXEC = 02000000, +#define TFD_CLOEXEC TFD_CLOEXEC + TFD_NONBLOCK = 00000200 +#define TFD_NONBLOCK TFD_NONBLOCK + }; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/types/stack_t.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/types/stack_t.h new file mode 100644 index 0000000000..b9635ad18a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/bits/types/stack_t.h @@ -0,0 +1,33 @@ +/* Define stack_t. MIPS Linux version. + Copyright (C) 1998-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef __stack_t_defined +#define __stack_t_defined 1 + +#define __need_size_t +#include <stddef.h> + +/* Structure describing a signal stack. */ +typedef struct + { + void *ss_sp; + size_t ss_size; + int ss_flags; + } stack_t; + +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/brk.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/brk.c new file mode 100644 index 0000000000..f91becffac --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/brk.c @@ -0,0 +1,47 @@ +/* brk system call for Linux/MIPS. + Copyright (C) 2000-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <unistd.h> +#include <sysdep.h> + +void *__curbrk = 0; + +/* Old braindamage in GCC's crtstuff.c requires this symbol in an attempt + to work around different old braindamage in the old Linux/x86 ELF + dynamic linker. Sigh. */ +weak_alias (__curbrk, ___brk_addr) + +int +__brk (void *addr) +{ + INTERNAL_SYSCALL_DECL (err); + void *newbrk; + + newbrk = (void *) INTERNAL_SYSCALL (brk, err, 1, addr); + __curbrk = newbrk; + + if (newbrk < addr) + { + __set_errno (ENOMEM); + return -1; + } + + return 0; +} +weak_alias (__brk, brk) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/clone.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/clone.S new file mode 100644 index 0000000000..8b79457b1f --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/clone.S @@ -0,0 +1,152 @@ +/* Copyright (C) 1996-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ralf Baechle <ralf@linux-mips.org>, 1996. + + 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, see + <http://www.gnu.org/licenses/>. */ + +/* clone() is even more special than fork() as it mucks with stacks + and invokes a function in the right context after its all over. */ + +#include <sys/asm.h> +#include <sysdep.h> +#define _ERRNO_H 1 +#include <bits/errno.h> +#include <tls.h> + +#define CLONE_VM 0x00000100 +#define CLONE_THREAD 0x00010000 + +/* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg, + void *parent_tidptr, void *tls, void *child_tidptr) */ + + .text + .set nomips16 +#if _MIPS_SIM == _ABIO32 +# define EXTRA_LOCALS 1 +#else +# define EXTRA_LOCALS 0 +#endif +LOCALSZ= 4 +FRAMESZ= (((NARGSAVE+LOCALSZ)*SZREG)+ALSZ)&ALMASK +GPOFF= FRAMESZ-(1*SZREG) +NESTED(__clone,4*SZREG,sp) +#ifdef __PIC__ + SETUP_GP +#endif + PTR_SUBU sp, FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) + SETUP_GP64_STACK (GPOFF, __clone) +#ifdef __PIC__ + SAVE_GP (GPOFF) +#endif +#ifdef PROF + .set noat + move $1,ra + jal _mcount + .set at +#endif + + + /* Sanity check arguments. */ + li v0,EINVAL + beqz a0,L(error) /* No NULL function pointers. */ + beqz a1,L(error) /* No NULL stack pointers. */ + + PTR_SUBU a1,32 /* Reserve argument save space. */ + PTR_S a0,0(a1) /* Save function pointer. */ + PTR_S a3,PTRSIZE(a1) /* Save argument pointer. */ + LONG_S a2,(PTRSIZE*2)(a1) /* Save clone flags. */ + + move a0,a2 + + /* Shuffle in the last three arguments - arguments 5, 6, and 7 to + this function, but arguments 3, 4, and 5 to the syscall. */ +#if _MIPS_SIM == _ABIO32 + PTR_L a2,(FRAMESZ+PTRSIZE+PTRSIZE+16)(sp) + PTR_S a2,16(sp) + PTR_L a2,(FRAMESZ+16)(sp) + PTR_L a3,(FRAMESZ+PTRSIZE+16)(sp) +#else + move a2,a4 + move a3,a5 + move a4,a6 +#endif + + /* Do the system call */ + li v0,__NR_clone + cfi_endproc + syscall + + bnez a3,L(error) + beqz v0,L(thread_start) + + /* Successful return from the parent */ + cfi_startproc + cfi_adjust_cfa_offset (FRAMESZ) + SETUP_GP64_STACK_CFI (GPOFF) + cfi_remember_state + RESTORE_GP64_STACK + PTR_ADDU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + ret + + /* Something bad happened -- no child created */ +L(error): + cfi_restore_state +#ifdef __PIC__ + PTR_LA t9,__syscall_error + RESTORE_GP64_STACK + PTR_ADDU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + jr t9 +#else + RESTORE_GP64_STACK + PTR_ADDU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + j __syscall_error +#endif + END(__clone) + +/* Load up the arguments to the function. Put this block of code in + its own function so that we can terminate the stack trace with our + debug info. */ + +ENTRY(__thread_start) +L(thread_start): + cfi_undefined ($31) + /* cp is already loaded. */ + SAVE_GP (GPOFF) + /* The stackframe has been created on entry of clone(). */ + + /* Restore the arg for user's function. */ + PTR_L t9,0(sp) /* Function pointer. */ + PTR_L a0,PTRSIZE(sp) /* Argument pointer. */ + + /* Call the user's function. */ + jal t9 + + /* Call _exit rather than doing it inline for breakpoint purposes. */ + move a0,v0 +#ifdef __PIC__ + PTR_LA t9,_exit + jalr t9 +#else + jal _exit +#endif + + END(__thread_start) + +libc_hidden_def (__clone) +weak_alias (__clone, clone) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/configure b/REORG.TODO/sysdeps/unix/sysv/linux/mips/configure new file mode 100644 index 0000000000..a5513fad48 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/configure @@ -0,0 +1,477 @@ +# This file is generated from configure.ac by Autoconf. DO NOT EDIT! + # Local configure fragment for sysdeps/unix/sysv/linux/mips. + + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (_MIPS_SIM != _ABIO32) + #error Not O32 ABI + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_abi=o32 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (_MIPS_SIM != _ABIN32) + #error Not N32 ABI + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_abi=n32 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (_MIPS_SIM != _ABI64) + #error Not 64 ABI + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_abi=n64 +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test -z "$libc_mips_abi"; then + as_fn_error $? "could not determine what ABI the compiler is using" "$LINENO" 5 +fi + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if !defined(__mips_soft_float) + #error Not soft ABI + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_float=soft +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if !defined(__mips_hard_float) + #error Not hard ABI + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_float=hard +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test -z "$libc_mips_float"; then + as_fn_error $? "could not determine if compiler is using hard or soft floating point ABI" "$LINENO" 5 +fi + +libc_mips_o32_fp= +libc_cv_mips_fp64= +libc_cv_mips_modd_spreg= + +if test x"$libc_mips_abi" = xo32 -a x"$libc_mips_float" = xhard; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if !defined(__mips_fpr) + #error Missing FPR sizes + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (__mips_fpr != 32) + #error Not FP32 + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_o32_fp=32 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (__mips_fpr != 0) || !defined(_MIPS_SPFPSET) || (_MIPS_SPFPSET != 16) + #error Not FPXX (without odd single-precision registers) + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_o32_fp=xx +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (__mips_fpr != 0) + #error Not FPXX (with odd single precision registers) + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_o32_fp=xxo +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (__mips_fpr != 64) || !defined(_MIPS_SPFPSET) || (_MIPS_SPFPSET != 16) + #error Not FP64A + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_o32_fp=64a +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if (__mips_fpr != 64) + #error Not FP64 + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_o32_fp=64 +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + if { ac_try='${CC-cc} -mfp64 -xc /dev/null -S -o /dev/null' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + libc_cv_mips_fp64=yes +else + libc_cv_mips_fp64=no +fi + if { ac_try='${CC-cc} -Werror -modd-spreg -xc /dev/null -S -o /dev/null' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + libc_cv_mips_modd_spreg=yes +else + libc_cv_mips_modd_spreg=no +fi +fi +config_vars="$config_vars +o32-fpabi = ${libc_mips_o32_fp}" +config_vars="$config_vars +has-mpf64 = ${libc_cv_mips_fp64}" +config_vars="$config_vars +has-modd-spreg = ${libc_cv_mips_modd_spreg}" + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #include <linux/prctl.h> + #if !defined(PR_GET_FP_MODE) || !defined(PR_SET_FP_MODE) + #error New prctl support for setting FP modes not found + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_mips_mode_switch=yes +else + libc_mips_mode_switch=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +config_vars="$config_vars +mips-mode-switch = ${libc_mips_mode_switch}" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP" || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is using the 2008 NaN encoding" >&5 +$as_echo_n "checking whether the compiler is using the 2008 NaN encoding... " >&6; } +if ${libc_cv_mips_nan2008+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +dnl +#ifdef __mips_nan2008 +yes +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then : + libc_cv_mips_nan2008=yes +else + libc_cv_mips_nan2008=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mips_nan2008" >&5 +$as_echo "$libc_cv_mips_nan2008" >&6; } + +libc_mips_nan= +if test x"$libc_cv_mips_nan2008" = xyes; then + libc_mips_nan=_2008 +fi + +config_vars="$config_vars +default-abi = ${libc_mips_abi}_${libc_mips_float}${libc_mips_nan}" + +case $machine in +mips/mips64/n64/*) + test -n "$libc_cv_slibdir" || +case "$prefix" in +/usr | /usr/) + libc_cv_slibdir=/lib64 + libc_cv_rtlddir=/lib64 + if test "$libdir" = '${exec_prefix}/lib'; then + libdir='${exec_prefix}/lib64'; + # Locale data can be shared between 32-bit and 64-bit libraries. + libc_cv_complocaledir='${exec_prefix}/lib/locale' + fi + ;; +esac + ;; +mips/mips64/n32/*) + test -n "$libc_cv_slibdir" || +case "$prefix" in +/usr | /usr/) + libc_cv_slibdir=/lib32 + libc_cv_rtlddir=/lib32 + if test "$libdir" = '${exec_prefix}/lib'; then + libdir='${exec_prefix}/lib32'; + # Locale data can be shared between 32-bit and 64-bit libraries. + libc_cv_complocaledir='${exec_prefix}/lib/locale' + fi + ;; +esac + ;; +esac + +libc_cv_gcc_unwind_find_fde=yes + +if test -z "$arch_minimum_kernel"; then + if test x$libc_cv_mips_nan2008 = xyes; then + arch_minimum_kernel=4.5.0 + fi +fi diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/configure.ac b/REORG.TODO/sysdeps/unix/sysv/linux/mips/configure.ac new file mode 100644 index 0000000000..9147aa4582 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/configure.ac @@ -0,0 +1,136 @@ +sinclude(./aclocal.m4)dnl Autoconf lossage +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +# Local configure fragment for sysdeps/unix/sysv/linux/mips. + +AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (_MIPS_SIM != _ABIO32) + #error Not O32 ABI + #endif])], + [libc_mips_abi=o32], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (_MIPS_SIM != _ABIN32) + #error Not N32 ABI + #endif])], + [libc_mips_abi=n32], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (_MIPS_SIM != _ABI64) + #error Not 64 ABI + #endif])], + [libc_mips_abi=n64], + [])])]) + +if test -z "$libc_mips_abi"; then + AC_MSG_ERROR([could not determine what ABI the compiler is using]) +fi + +AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if !defined(__mips_soft_float) + #error Not soft ABI + #endif])], + [libc_mips_float=soft], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if !defined(__mips_hard_float) + #error Not hard ABI + #endif])], + [libc_mips_float=hard], + [])]) + +if test -z "$libc_mips_float"; then + AC_MSG_ERROR([could not determine if compiler is using hard or soft floating point ABI]) +fi + +libc_mips_o32_fp= +libc_cv_mips_fp64= +libc_cv_mips_modd_spreg= + +if test x"$libc_mips_abi" = xo32 -a x"$libc_mips_float" = xhard; then + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if !defined(__mips_fpr) + #error Missing FPR sizes + #endif])], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (__mips_fpr != 32) + #error Not FP32 + #endif])], + [libc_mips_o32_fp=32], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (__mips_fpr != 0) || !defined(_MIPS_SPFPSET) || (_MIPS_SPFPSET != 16) + #error Not FPXX (without odd single-precision registers) + #endif])], + [libc_mips_o32_fp=xx], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (__mips_fpr != 0) + #error Not FPXX (with odd single precision registers) + #endif])], + [libc_mips_o32_fp=xxo], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (__mips_fpr != 64) || !defined(_MIPS_SPFPSET) || (_MIPS_SPFPSET != 16) + #error Not FP64A + #endif])], + [libc_mips_o32_fp=64a], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #if (__mips_fpr != 64) + #error Not FP64 + #endif])], + [libc_mips_o32_fp=64], + [])])])])])], + []) + + LIBC_TRY_CC_OPTION([-mfp64], [libc_cv_mips_fp64=yes], [libc_cv_mips_fp64=no]) + LIBC_TRY_CC_OPTION([-Werror -modd-spreg], [libc_cv_mips_modd_spreg=yes], [libc_cv_mips_modd_spreg=no]) +fi +LIBC_CONFIG_VAR([o32-fpabi],[${libc_mips_o32_fp}]) +LIBC_CONFIG_VAR([has-mpf64],[${libc_cv_mips_fp64}]) +LIBC_CONFIG_VAR([has-modd-spreg],[${libc_cv_mips_modd_spreg}]) + +AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ + #include <linux/prctl.h> + #if !defined(PR_GET_FP_MODE) || !defined(PR_SET_FP_MODE) + #error New prctl support for setting FP modes not found + #endif])], + [libc_mips_mode_switch=yes], + [libc_mips_mode_switch=no]) +LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}]) + +AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding], + libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl +#ifdef __mips_nan2008 +yes +#endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)]) + +libc_mips_nan= +if test x"$libc_cv_mips_nan2008" = xyes; then + libc_mips_nan=_2008 +fi + +LIBC_CONFIG_VAR([default-abi], + [${libc_mips_abi}_${libc_mips_float}${libc_mips_nan}]) + +case $machine in +mips/mips64/n64/*) + LIBC_SLIBDIR_RTLDDIR([lib64], [lib64]) + ;; +mips/mips64/n32/*) + LIBC_SLIBDIR_RTLDDIR([lib32], [lib32]) + ;; +esac + +libc_cv_gcc_unwind_find_fde=yes + +if test -z "$arch_minimum_kernel"; then + if test x$libc_cv_mips_nan2008 = xyes; then + arch_minimum_kernel=4.5.0 + fi +fi diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/dl-cache.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/dl-cache.h new file mode 100644 index 0000000000..573a5dcb9f --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/dl-cache.h @@ -0,0 +1,72 @@ +/* Support for reading /etc/ld.so.cache files written by Linux ldconfig. + Copyright (C) 2003-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <ldconfig.h> + +#if ((defined __mips_nan2008 && !defined HAVE_MIPS_NAN2008) \ + || (!defined __mips_nan2008 && defined HAVE_MIPS_NAN2008)) +# error "Configuration inconsistency: __mips_nan2008 != HAVE_MIPS_NAN2008, overridden CFLAGS?" +#endif + +/* Redefine the cache ID for new ABIs and 2008 NaN support; legacy o32 + keeps using the generic check. */ +#ifdef __mips_nan2008 +# if _MIPS_SIM == _ABIO32 +# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS_LIB32_NAN2008 | FLAG_ELF_LIBC6) +# elif _MIPS_SIM == _ABI64 +# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN64_NAN2008 | FLAG_ELF_LIBC6) +# elif _MIPS_SIM == _ABIN32 +# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN32_NAN2008 | FLAG_ELF_LIBC6) +# endif +#else +# if _MIPS_SIM == _ABI64 +# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN64 | FLAG_ELF_LIBC6) +# elif _MIPS_SIM == _ABIN32 +# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN32 | FLAG_ELF_LIBC6) +# endif +#endif + +#ifdef _DL_CACHE_DEFAULT_ID +# define _dl_cache_check_flags(flags) \ + ((flags) == _DL_CACHE_DEFAULT_ID) +#endif + +#define add_system_dir(dir) \ + do \ + { \ + size_t len = strlen (dir); \ + char path[len + 3]; \ + memcpy (path, dir, len + 1); \ + if (len >= 6 \ + && (! memcmp (path + len - 6, "/lib64", 6) \ + || ! memcmp (path + len - 6, "/lib32", 6))) \ + { \ + len -= 2; \ + path[len] = '\0'; \ + } \ + add_dir (path); \ + if (len >= 4 && ! memcmp (path + len - 4, "/lib", 4)) \ + { \ + memcpy (path + len, "32", 3); \ + add_dir (path); \ + memcpy (path + len, "64", 3); \ + add_dir (path); \ + } \ + } while (0) + +#include_next <dl-cache.h> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/dl-static.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/dl-static.c new file mode 100644 index 0000000000..8884fadaf2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/dl-static.c @@ -0,0 +1,84 @@ +/* Variable initialization. MIPS version. + Copyright (C) 2001-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <ldsodefs.h> + +#ifdef SHARED + +void +_dl_var_init (void *array[]) +{ + /* It has to match "variables" below. */ + enum + { + DL_PAGESIZE = 0 + }; + + GLRO(dl_pagesize) = *((size_t *) array[DL_PAGESIZE]); +} + +#else + +static void *variables[] = +{ + &GLRO(dl_pagesize) +}; + +static void +_dl_unprotect_relro (struct link_map *l) +{ + ElfW(Addr) start = ((l->l_addr + l->l_relro_addr) + & ~(GLRO(dl_pagesize) - 1)); + ElfW(Addr) end = ((l->l_addr + l->l_relro_addr + l->l_relro_size) + & ~(GLRO(dl_pagesize) - 1)); + + if (start != end) + __mprotect ((void *) start, end - start, PROT_READ | PROT_WRITE); +} + +void +_dl_static_init (struct link_map *l) +{ + struct link_map *rtld_map = l; + struct r_scope_elem **scope; + const ElfW(Sym) *ref = NULL; + lookup_t loadbase; + void (*f) (void *[]); + size_t i; + + loadbase = _dl_lookup_symbol_x ("_dl_var_init", l, &ref, l->l_local_scope, + NULL, 0, 1, NULL); + + for (scope = l->l_local_scope; *scope != NULL; scope++) + for (i = 0; i < (*scope)->r_nlist; i++) + if ((*scope)->r_list[i] == loadbase) + { + rtld_map = (*scope)->r_list[i]; + break; + } + + if (ref != NULL) + { + f = (void (*) (void *[])) DL_SYMBOL_ADDRESS (loadbase, ref); + _dl_unprotect_relro (rtld_map); + f (variables); + _dl_protect_relro (rtld_map); + } +} + +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/getcontext.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getcontext.S new file mode 100644 index 0000000000..64de2ebf2e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getcontext.S @@ -0,0 +1,154 @@ +/* Save current context. + Copyright (C) 2009-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Maciej W. Rozycki <macro@codesourcery.com>. + + 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <sys/asm.h> +#include <sys/fpregdef.h> +#include <sys/regdef.h> + +#include "ucontext_i.h" + +/* int getcontext (ucontext_t *ucp) */ + + .text + .set nomips16 +LOCALSZ = 0 +MASK = 0x00000000 +#ifdef __PIC__ +LOCALSZ = 1 /* save gp */ +# if _MIPS_SIM != _ABIO32 +MASK = 0x10000000 +# endif +#endif +FRAMESZ = ((LOCALSZ * SZREG) + ALSZ) & ALMASK +GPOFF = FRAMESZ - (1 * SZREG) + +NESTED (__getcontext, FRAMESZ, ra) + .mask MASK, 0 + .fmask 0x00000000, 0 + +#ifdef __PIC__ + SETUP_GP + + move a2, sp +# define _SP a2 + +# if _MIPS_SIM != _ABIO32 + move a3, gp +# define _GP a3 +# endif + + PTR_ADDIU sp, -FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) + SETUP_GP64_STACK (GPOFF, __getcontext) + SAVE_GP (GPOFF) + +#else /* ! __PIC__ */ +# define _SP sp +# define _GP gp + +#endif /* ! __PIC__ */ + +#ifdef PROF + .set noat + move AT, ra + jal _mcount + .set at +#endif + + /* Store a magic flag. */ + li v1, 1 + REG_S v1, (0 * SZREG + MCONTEXT_GREGS)(a0) /* zero */ + + REG_S s0, (16 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s1, (17 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s2, (18 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s3, (19 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s4, (20 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s5, (21 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s6, (22 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s7, (23 * SZREG + MCONTEXT_GREGS)(a0) +#if ! defined (__PIC__) || _MIPS_SIM != _ABIO32 + REG_S _GP, (28 * SZREG + MCONTEXT_GREGS)(a0) +#endif + REG_S _SP, (29 * SZREG + MCONTEXT_GREGS)(a0) + REG_S fp, (30 * SZREG + MCONTEXT_GREGS)(a0) + REG_S ra, (31 * SZREG + MCONTEXT_GREGS)(a0) + REG_S ra, MCONTEXT_PC(a0) + +#ifdef __mips_hard_float +# if _MIPS_SIM == _ABI64 + s.d fs0, (24 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs1, (25 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs2, (26 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs3, (27 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs5, (29 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs6, (30 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs7, (31 * SZREG + MCONTEXT_FPREGS)(a0) + +# else /* _MIPS_SIM != _ABI64 */ + s.d fs0, (20 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs1, (22 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs2, (24 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs3, (26 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs5, (30 * SZREG + MCONTEXT_FPREGS)(a0) + +# endif /* _MIPS_SIM != _ABI64 */ + + cfc1 v1, fcr31 + sw v1, MCONTEXT_FPC_CSR(a0) +#endif /* __mips_hard_float */ + +/* rt_sigprocmask (SIG_BLOCK, NULL, &ucp->uc_sigmask, _NSIG8) */ + li a3, _NSIG8 + PTR_ADDU a2, a0, UCONTEXT_SIGMASK + move a1, zero + li a0, SIG_BLOCK + + li v0, SYS_ify (rt_sigprocmask) + syscall + bnez a3, 99f + cfi_remember_state + +#ifdef __PIC__ + RESTORE_GP64_STACK + PTR_ADDIU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) +#endif + move v0, zero + jr ra + +99: + cfi_restore_state +#ifdef __PIC__ + PTR_LA t9, JUMPTARGET (__syscall_error) + RESTORE_GP64_STACK + PTR_ADDIU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + jr t9 + +#else /* ! __PIC__ */ + + j JUMPTARGET (__syscall_error) +#endif /* ! __PIC__ */ +PSEUDO_END (__getcontext) + +weak_alias (__getcontext, getcontext) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/getmsg.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getmsg.c new file mode 100644 index 0000000000..3a1fa08525 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getmsg.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/getmsg.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/getrlimit64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getrlimit64.c new file mode 100644 index 0000000000..5193722bbc --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getrlimit64.c @@ -0,0 +1,68 @@ +/* Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sgidefs.h> + +#if _MIPS_SIM == _ABIO32 || _MIPS_SIM == _ABIN32 + +# include <shlib-compat.h> + +# define getrlimit64 __new_getrlimit64 +# include <sysdeps/unix/sysv/linux/getrlimit64.c> +# undef getrlimit64 + +versioned_symbol (libc, __getrlimit64, getrlimit64, GLIBC_2_19); +strong_alias (__getrlimit64, __GI_getrlimit64) + +# if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_19) + +/* RLIM64_INFINITY was supposed to be a glibc convention rather than + anything seen by the kernel, but it ended being passed to the kernel + through the prlimit64 syscall. Given that a lot of binaries with + the wrong constant value are in the wild, provide a wrapper function + fixing the value after the syscall. */ + +# define OLD_RLIM64_INFINITY 0x7fffffffffffffffULL + +int +attribute_compat_text_section +__old_getrlimit64 (enum __rlimit_resource resource, + struct rlimit64 *rlimits) +{ + struct rlimit64 krlimits; + + if (__getrlimit64 (resource, &krlimits) < 0) + return -1; + + if (krlimits.rlim_cur == RLIM64_INFINITY) + rlimits->rlim_cur = OLD_RLIM64_INFINITY; + else + rlimits->rlim_cur = krlimits.rlim_cur; + if (krlimits.rlim_max == RLIM64_INFINITY) + rlimits->rlim_max = OLD_RLIM64_INFINITY; + else + rlimits->rlim_max = krlimits.rlim_max; + + return 0; +} + +compat_symbol (libc, __old_getrlimit64, getrlimit64, GLIBC_2_2); +# endif + +#else /* !_ABI_O32 && !_ABI_N32 */ +# include <sysdeps/unix/sysv/linux/getrlimit64.c> +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/getsysstats.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getsysstats.c new file mode 100644 index 0000000000..625df807c2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/getsysstats.c @@ -0,0 +1,36 @@ +/* Determine various system internal values, Linux/MIPS version. + Copyright (C) 2001-2017 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, see + <http://www.gnu.org/licenses/>. */ + + +/* We need to define a special parser for /proc/cpuinfo. */ +#define GET_NPROCS_PARSER(FD, BUFFER, CP, RE, BUFFER_END, RESULT) \ + do \ + { \ + (RESULT) = 0; \ + /* Read all lines and count the lines starting with the string \ + "cpu model". We don't have to fear extremely long lines since \ + the kernel will not generate them. 8192 bytes are really \ + enough. */ \ + char *l; \ + while ((l = next_line (FD, BUFFER, &CP, &RE, BUFFER_END)) != NULL) \ + if (strncmp (l, "cpu model", 9) == 0) \ + ++(RESULT); \ + } \ + while (0) + +#include <sysdeps/unix/sysv/linux/getsysstats.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/init-first.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/init-first.c new file mode 100644 index 0000000000..7892c0afde --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/init-first.c @@ -0,0 +1,44 @@ +/* Initialization code run first thing by the ELF startup code. + Copyright (C) 2016-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifdef SHARED +# include <dl-vdso.h> +# include <libc-vdso.h> + +int (*VDSO_SYMBOL(gettimeofday)) (struct timeval *, void *) attribute_hidden; +int (*VDSO_SYMBOL(clock_gettime)) (clockid_t, struct timespec *); + +static inline void +_libc_vdso_platform_setup (void) +{ + PREPARE_VERSION_KNOWN (linux26, LINUX_2_6); + + void *p = _dl_vdso_vsym ("__vdso_gettimeofday", &linux26); + PTR_MANGLE (p); + VDSO_SYMBOL (gettimeofday) = p; + + p = _dl_vdso_vsym ("__vdso_clock_gettime", &linux26); + PTR_MANGLE (p); + VDSO_SYMBOL (clock_gettime) = p; +} + +# define VDSO_SETUP _libc_vdso_platform_setup +#endif + +#include <csu/init-first.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel-features.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel-features.h new file mode 100644 index 0000000000..d5d35afa4d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel-features.h @@ -0,0 +1,49 @@ +/* Set flags signalling availability of kernel features based on given + kernel version number. + Copyright (C) 1999-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sgidefs.h> + +#include_next <kernel-features.h> + +/* The MIPS kernel does not support futex_atomic_cmpxchg_inatomic if + emulating LL/SC. */ +#if __mips == 1 || defined _MIPS_ARCH_R5900 +# undef __ASSUME_SET_ROBUST_LIST +#endif + +/* Define this if your 32-bit syscall API requires 64-bit register + pairs to start with an even-number register. */ +#if _MIPS_SIM == _ABIO32 +# define __ASSUME_ALIGNED_REGISTER_PAIRS 1 +/* mips32 only supports ipc syscall. */ +# undef __ASSUME_DIRECT_SYSVIPC_SYSCALLS + +/* The o32 MIPS fadvise64 syscall behaves as fadvise64_64. */ +# define __ASSUME_FADVISE64_AS_64_64 1 + +/* mips32 support wire-up network syscalls. */ +# define __ASSUME_RECV_SYSCALL 1 +# define __ASSUME_SEND_SYSCALL 1 +#endif + +/* Define that mips64-n32 is a ILP32 ABI to set the correct interface to + pass 64-bits values through syscalls. */ +#if _MIPS_SIM == _ABIN32 +# define __ASSUME_WORDSIZE64_ILP32 1 +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h new file mode 100644 index 0000000000..e870b207de --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h @@ -0,0 +1,12 @@ +#include <stdint.h> + +/* Linux kernel RT signal frame. */ +typedef struct kernel_rt_sigframe + { + uint32_t rs_ass[4]; + uint32_t rs_code[2]; + siginfo_t rs_info; + struct ucontext rs_uc; + uint32_t rs_altcode[8] __attribute__ ((__aligned__ (1 << 7))); + } +kernel_rt_sigframe_t; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_sigaction.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_sigaction.h new file mode 100644 index 0000000000..b6f52cc9c9 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_sigaction.h @@ -0,0 +1,40 @@ +/* This is the sigaction structure from the Linux 2.1.24 kernel. */ + +#include <sgidefs.h> + +#define HAVE_SA_RESTORER + +struct old_kernel_sigaction { + unsigned int sa_flags; + __sighandler_t k_sa_handler; + unsigned long sa_mask; + unsigned int __pad0[3]; /* reserved, keep size constant */ + + /* Abi says here follows reserved int[2] */ + void (*sa_restorer)(void); +#if (_MIPS_SZPTR < 64) + /* + * For 32 bit code we have to pad struct sigaction to get + * constant size for the ABI + */ + int pad1[1]; /* reserved */ +#endif +}; + + +#define _KERNEL_NSIG 128 +#define _KERNEL_NSIG_BPW _MIPS_SZLONG +#define _KERNEL_NSIG_WORDS (_KERNEL_NSIG / _KERNEL_NSIG_BPW) + +typedef struct { + unsigned long sig[_KERNEL_NSIG_WORDS]; +} kernel_sigset_t; + +/* This is the sigaction structure from the Linux 2.1.68 kernel. */ +struct kernel_sigaction { + unsigned int sa_flags; + __sighandler_t k_sa_handler; + kernel_sigset_t sa_mask; + void (*sa_restorer)(void); + int s_resv[1]; /* reserved */ +}; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_stat.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_stat.h new file mode 100644 index 0000000000..388df1bfff --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_stat.h @@ -0,0 +1,60 @@ +#include <sgidefs.h> +/* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the + userland data structures are not identical, because of different + padding. */ +/* Definition of `struct stat' used in the kernel. */ +#if _MIPS_SIM != _ABIO32 +struct kernel_stat + { + unsigned int st_dev; + unsigned int __pad1[3]; + unsigned long long st_ino; + unsigned int st_mode; + unsigned int st_nlink; + int st_uid; + int st_gid; + unsigned int st_rdev; + unsigned int __pad2[3]; + long long st_size; + unsigned int st_atime_sec; + unsigned int st_atime_nsec; + unsigned int st_mtime_sec; + unsigned int st_mtime_nsec; + unsigned int st_ctime_sec; + unsigned int st_ctime_nsec; + unsigned int st_blksize; + unsigned int __pad3; + unsigned long long st_blocks; + }; +#else +struct kernel_stat + { + unsigned long int st_dev; + long int __pad1[3]; /* Reserved for network id */ + unsigned long int st_ino; + unsigned long int st_mode; + unsigned long int st_nlink; + long int st_uid; + long int st_gid; + unsigned long int st_rdev; + long int __pad2[2]; + long int st_size; + long int __pad3; + unsigned int st_atime_sec; + unsigned int st_atime_nsec; + unsigned int st_mtime_sec; + unsigned int st_mtime_nsec; + unsigned int st_ctime_sec; + unsigned int st_ctime_nsec; + long int st_blksize; + long int st_blocks; + char st_fstype[16]; /* Filesystem type name, unsupported */ + long st_pad4[8]; + /* Linux specific fields */ + unsigned int st_flags; + unsigned int st_gen; + }; +#endif + +#define XSTAT_IS_XSTAT64 0 +#define STATFS_IS_STATFS64 0 diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_termios.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_termios.h new file mode 100644 index 0000000000..7a0cbaec8a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/kernel_termios.h @@ -0,0 +1,34 @@ +/* Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _KERNEL_TERMIOS_H +#define _KERNEL_TERMIOS_H 1 +/* The following corresponds to the values from the Linux 2.1.24 kernel. */ + +#define __KERNEL_NCCS 23 + +struct __kernel_termios + { + tcflag_t c_iflag; /* input mode flags */ + tcflag_t c_oflag; /* output mode flags */ + tcflag_t c_cflag; /* control mode flags */ + tcflag_t c_lflag; /* local mode flags */ + cc_t c_line; /* line discipline */ + cc_t c_cc[__KERNEL_NCCS]; /* control characters */ + }; + +#endif /* kernel_termios.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/ldsodefs.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/ldsodefs.h new file mode 100644 index 0000000000..daf37321c2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/ldsodefs.h @@ -0,0 +1,40 @@ +/* Run-time dynamic linker data structures for loaded ELF shared objects. MIPS. + Copyright (C) 2001-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _LDSODEFS_H + +/* Get the real definitions. */ +#include_next <ldsodefs.h> + +/* Now define our stuff. */ + +/* We need special support to initialize DSO loaded for statically linked + binaries. */ +extern void _dl_static_init (struct link_map *map); +#undef DL_STATIC_INIT +#define DL_STATIC_INIT(map) _dl_static_init (map) + +/* Allow ABIVERSION == 1, meaning PLTs and copy relocations are + required, with ELFOSABI_SYSV, and ELFOSABI_GNU. */ +#undef VALID_ELF_ABIVERSION +#define VALID_ELF_ABIVERSION(osabi,ver) \ + (ver == 0 \ + || (osabi == ELFOSABI_SYSV && ver < 4) \ + || (osabi == ELFOSABI_GNU && ver < LIBC_ABI_MAX)) + +#endif /* ldsodefs.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/libc-abis b/REORG.TODO/sysdeps/unix/sysv/linux/mips/libc-abis new file mode 100644 index 0000000000..14ff60322a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/libc-abis @@ -0,0 +1,16 @@ +# See the copy of this file in libc for detailed explanations. This +# copy needs to include all libc definitions applicable to MIPS; only +# one copy will be used. +# +# Feature Name Configuration +# ------------ ------------- +# +# MIPS PLTs. +MIPS_PLT mips*-*-linux* +# +# Unique symbol definitions for C++. +# Architecture independent, all ELF targets (== all targets) +UNIQUE +# +# MIPS O32 FP64 +MIPS_O32_FP64 mips*-*-linux* diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/libc-vdso.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/libc-vdso.h new file mode 100644 index 0000000000..9792f397ac --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/libc-vdso.h @@ -0,0 +1,33 @@ +/* VDSO function pointer declarations. + Copyright (C) 2016-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _LIBC_VDSO_H +#define _LIBC_VDSO_H + +#ifdef SHARED + +# include <sysdep-vdso.h> + +extern int (*VDSO_SYMBOL(gettimeofday)) (struct timeval *, void *) + attribute_hidden; +extern int (*VDSO_SYMBOL(clock_gettime)) (clockid_t, struct timespec *); + +#endif + +#endif /* _LIBC_VDSO_H */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/makecontext.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/makecontext.S new file mode 100644 index 0000000000..5c3af04491 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/makecontext.S @@ -0,0 +1,198 @@ +/* Modify saved context. + Copyright (C) 2009-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Maciej W. Rozycki <macro@codesourcery.com>. + + 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <sys/asm.h> +#include <sys/fpregdef.h> +#include <sys/regdef.h> + +#include "ucontext_i.h" + +/* int makecontext (ucontext_t *ucp, (void *func) (), int argc, ...) */ + + .text + .set nomips16 +LOCALSZ = 0 +ARGSZ = 0 +MASK = 0x00000000 +#ifdef __PIC__ +LOCALSZ = 1 /* save gp */ +#endif +#if _MIPS_SIM != _ABIO32 +ARGSZ = 5 /* save a3-a7 */ +# ifdef __PIC__ +MASK = 0x10000000 +# endif +#endif +FRAMESZ = (((ARGSZ + LOCALSZ) * SZREG) + ALSZ) & ALMASK +GPOFF = FRAMESZ - ((ARGSZ + 1) * SZREG) +#if _MIPS_SIM != _ABIO32 +A3OFF = FRAMESZ - (5 * SZREG) /* callee-allocated */ +A4OFF = FRAMESZ - (4 * SZREG) +A5OFF = FRAMESZ - (3 * SZREG) +A6OFF = FRAMESZ - (2 * SZREG) +A7OFF = FRAMESZ - (1 * SZREG) +NARGREGS = 8 +#else +A3OFF = FRAMESZ + (3 * SZREG) /* caller-allocated */ +NARGREGS = 4 +#endif + +NESTED (__makecontext, FRAMESZ, ra) + .mask MASK, -(ARGSZ * SZREG) + .fmask 0x00000000, 0 + +98: +#ifdef __PIC__ + SETUP_GP +#endif + + PTR_ADDIU sp, -FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) + +#ifdef __PIC__ + SETUP_GP64_STACK (GPOFF, __makecontext) + SAVE_GP (GPOFF) +#endif + +#ifdef PROF + .set noat + move AT, ra + jal _mcount + .set at +#endif + + /* Store args to be passed. */ + REG_S a3, A3OFF(sp) +#if _MIPS_SIM != _ABIO32 + REG_S a4, A4OFF(sp) + REG_S a5, A5OFF(sp) + REG_S a6, A6OFF(sp) + REG_S a7, A7OFF(sp) +#endif + + /* Store a magic flag. */ + li v1, 1 + REG_S v1, (0 * SZREG + MCONTEXT_GREGS)(a0) /* zero */ + + /* Set up the stack. */ + PTR_L t0, STACK_SP(a0) + PTR_L t2, STACK_SIZE(a0) + PTR_ADDIU t1, sp, A3OFF + PTR_ADDU t0, t2 + and t0, ALMASK + blez a2, 2f /* no arguments */ + + /* Store register arguments. */ + PTR_ADDIU t2, a0, MCONTEXT_GREGS + 4 * SZREG + move t3, zero +0: + addiu t3, 1 + REG_L v1, (t1) + PTR_ADDIU t1, SZREG + REG_S v1, (t2) + PTR_ADDIU t2, SZREG + bgeu t3, a2, 2f /* all done */ + bltu t3, NARGREGS, 0b /* next */ + + /* Make room for stack arguments. */ + PTR_SUBU t2, a2, t3 + PTR_SLL t2, 3 + PTR_SUBU t0, t2 + and t0, ALMASK + + /* Store stack arguments. */ + move t2, t0 +1: + addiu t3, 1 + REG_L v1, (t1) + PTR_ADDIU t1, SZREG + REG_S v1, (t2) + PTR_ADDIU t2, SZREG + bltu t3, a2, 1b /* next */ + +2: +#if _MIPS_SIM == _ABIO32 + /* Make room for a0-a3 storage. */ + PTR_ADDIU t0, -(NARGSAVE * SZREG) +#endif + PTR_L v1, UCONTEXT_LINK(a0) +#ifdef __PIC__ + PTR_ADDIU t9, 99f - 98b +#else + PTR_LA t9, 99f +#endif + REG_S t0, (29 * SZREG + MCONTEXT_GREGS)(a0) /* sp */ + REG_S v1, (16 * SZREG + MCONTEXT_GREGS)(a0) /* s0 */ +#ifdef __PIC__ + REG_S gp, (17 * SZREG + MCONTEXT_GREGS)(a0) /* s1 */ +#endif + REG_S t9, (31 * SZREG + MCONTEXT_GREGS)(a0) /* ra */ + REG_S a1, MCONTEXT_PC(a0) + +#ifdef __PIC__ + RESTORE_GP64_STACK + PTR_ADDIU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) +#endif + jr ra + + /* We need to terminate the FDE to stop unwinding if backtrace was + called within a context created by makecontext. */ + cfi_endproc + nop + +99: +#ifdef __PIC__ + move gp, s1 +#endif + move a0, zero + beqz s0, 0f + + /* setcontext (ucp) */ + move a0, s0 +#ifdef __PIC__ + PTR_LA t9, JUMPTARGET (__setcontext) + jalr t9 +# if _MIPS_SIM == _ABIO32 + move gp, s1 +# endif +#else + jal JUMPTARGET (__setcontext) +#endif + move a0, v0 + +0: + /* exit (a0) */ +#ifdef __PIC__ + PTR_LA t9, HIDDEN_JUMPTARGET (exit) + jalr t9 +#else + jal HIDDEN_JUMPTARGET (exit) +#endif + + /* You don't exist, you won't feel anything. */ +1: + lb zero, (zero) + b 1b + + cfi_startproc +PSEUDO_END (__makecontext) + +weak_alias (__makecontext, makecontext) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/Makefile b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/Makefile new file mode 100644 index 0000000000..9439d29dea --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/Makefile @@ -0,0 +1,4 @@ +ifeq ($(subdir),conform) +# For bugs 17786 and 21278. +conformtest-xfail-conds += mips-o32-linux +endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/Versions b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/Versions new file mode 100644 index 0000000000..9621fb5cae --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/Versions @@ -0,0 +1,6 @@ +libc { + GLIBC_2.19 { + getrlimit64; + setrlimit64; + } +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/c++-types.data b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/c++-types.data new file mode 100644 index 0000000000..fde53bf337 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/c++-types.data @@ -0,0 +1,67 @@ +blkcnt64_t:x +blkcnt_t:l +blksize_t:l +caddr_t:Pc +clockid_t:i +clock_t:l +daddr_t:i +dev_t:y +fd_mask:l +fsblkcnt64_t:y +fsblkcnt_t:m +fsfilcnt64_t:y +fsfilcnt_t:m +fsid_t:8__fsid_t +gid_t:j +id_t:j +ino64_t:y +ino_t:m +int16_t:s +int32_t:i +int64_t:x +int8_t:a +intptr_t:i +key_t:i +loff_t:x +mode_t:j +nlink_t:j +off64_t:x +off_t:l +pid_t:i +pthread_attr_t:14pthread_attr_t +pthread_barrier_t:17pthread_barrier_t +pthread_barrierattr_t:21pthread_barrierattr_t +pthread_cond_t:14pthread_cond_t +pthread_condattr_t:18pthread_condattr_t +pthread_key_t:j +pthread_mutex_t:15pthread_mutex_t +pthread_mutexattr_t:19pthread_mutexattr_t +pthread_once_t:i +pthread_rwlock_t:16pthread_rwlock_t +pthread_rwlockattr_t:20pthread_rwlockattr_t +pthread_spinlock_t:i +pthread_t:m +quad_t:x +register_t:i +rlim64_t:y +rlim_t:m +sigset_t:10__sigset_t +size_t:j +socklen_t:j +ssize_t:i +suseconds_t:l +time_t:l +u_char:h +uid_t:j +uint:j +u_int:j +u_int16_t:t +u_int32_t:j +u_int64_t:y +u_int8_t:h +ulong:m +u_long:m +u_quad_t:y +useconds_t:j +ushort:t +u_short:t diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fcntl.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fcntl.c new file mode 100644 index 0000000000..ea951bc4f9 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fcntl.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/fcntl.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist new file mode 100644 index 0000000000..907ab331f2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist @@ -0,0 +1,2256 @@ +GCC_3.0 GCC_3.0 A +GCC_3.0 _Unwind_Find_FDE F +GCC_3.0 __deregister_frame_info_bases F +GCC_3.0 __register_frame_info_bases F +GCC_3.0 __register_frame_info_table_bases F +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _IO_adjust_column F +GLIBC_2.0 _IO_default_doallocate F +GLIBC_2.0 _IO_default_finish F +GLIBC_2.0 _IO_default_pbackfail F +GLIBC_2.0 _IO_default_uflow F +GLIBC_2.0 _IO_default_xsgetn F +GLIBC_2.0 _IO_default_xsputn F +GLIBC_2.0 _IO_do_write F +GLIBC_2.0 _IO_doallocbuf F +GLIBC_2.0 _IO_fclose F +GLIBC_2.0 _IO_fdopen F +GLIBC_2.0 _IO_feof F +GLIBC_2.0 _IO_ferror F +GLIBC_2.0 _IO_fflush F +GLIBC_2.0 _IO_fgetpos F +GLIBC_2.0 _IO_fgets F +GLIBC_2.0 _IO_file_attach F +GLIBC_2.0 _IO_file_close F +GLIBC_2.0 _IO_file_close_it F +GLIBC_2.0 _IO_file_doallocate F +GLIBC_2.0 _IO_file_fopen F +GLIBC_2.0 _IO_file_init F +GLIBC_2.0 _IO_file_jumps D 0x54 +GLIBC_2.0 _IO_file_open F +GLIBC_2.0 _IO_file_overflow F +GLIBC_2.0 _IO_file_read F +GLIBC_2.0 _IO_file_seek F +GLIBC_2.0 _IO_file_seekoff F +GLIBC_2.0 _IO_file_setbuf F +GLIBC_2.0 _IO_file_stat F +GLIBC_2.0 _IO_file_sync F +GLIBC_2.0 _IO_file_underflow F +GLIBC_2.0 _IO_file_write F +GLIBC_2.0 _IO_file_xsputn F +GLIBC_2.0 _IO_flockfile F +GLIBC_2.0 _IO_flush_all F +GLIBC_2.0 _IO_flush_all_linebuffered F +GLIBC_2.0 _IO_fopen F +GLIBC_2.0 _IO_fprintf F +GLIBC_2.0 _IO_fputs F +GLIBC_2.0 _IO_fread F +GLIBC_2.0 _IO_free_backup_area F +GLIBC_2.0 _IO_fsetpos F +GLIBC_2.0 _IO_ftell F +GLIBC_2.0 _IO_ftrylockfile F +GLIBC_2.0 _IO_funlockfile F +GLIBC_2.0 _IO_fwrite F +GLIBC_2.0 _IO_getc F +GLIBC_2.0 _IO_getline F +GLIBC_2.0 _IO_gets F +GLIBC_2.0 _IO_init F +GLIBC_2.0 _IO_init_marker F +GLIBC_2.0 _IO_link_in F +GLIBC_2.0 _IO_list_all D 0x4 +GLIBC_2.0 _IO_marker_delta F +GLIBC_2.0 _IO_marker_difference F +GLIBC_2.0 _IO_padn F +GLIBC_2.0 _IO_peekc_locked F +GLIBC_2.0 _IO_popen F +GLIBC_2.0 _IO_printf F +GLIBC_2.0 _IO_proc_close F +GLIBC_2.0 _IO_proc_open F +GLIBC_2.0 _IO_putc F +GLIBC_2.0 _IO_puts F +GLIBC_2.0 _IO_remove_marker F +GLIBC_2.0 _IO_seekmark F +GLIBC_2.0 _IO_seekoff F +GLIBC_2.0 _IO_seekpos F +GLIBC_2.0 _IO_setb F +GLIBC_2.0 _IO_setbuffer F +GLIBC_2.0 _IO_setvbuf F +GLIBC_2.0 _IO_sgetn F +GLIBC_2.0 _IO_sprintf F +GLIBC_2.0 _IO_sputbackc F +GLIBC_2.0 _IO_sscanf F +GLIBC_2.0 _IO_stderr_ D 0x50 +GLIBC_2.0 _IO_stdin_ D 0x50 +GLIBC_2.0 _IO_stdout_ D 0x50 +GLIBC_2.0 _IO_str_init_readonly F +GLIBC_2.0 _IO_str_init_static F +GLIBC_2.0 _IO_str_overflow F +GLIBC_2.0 _IO_str_pbackfail F +GLIBC_2.0 _IO_str_seekoff F +GLIBC_2.0 _IO_str_underflow F +GLIBC_2.0 _IO_sungetc F +GLIBC_2.0 _IO_switch_to_get_mode F +GLIBC_2.0 _IO_un_link F +GLIBC_2.0 _IO_ungetc F +GLIBC_2.0 _IO_unsave_markers F +GLIBC_2.0 _IO_vfprintf F +GLIBC_2.0 _IO_vfscanf F +GLIBC_2.0 _IO_vsprintf F +GLIBC_2.0 ___brk_addr D 0x4 +GLIBC_2.0 __adjtimex F +GLIBC_2.0 __after_morecore_hook D 0x4 +GLIBC_2.0 __argz_count F +GLIBC_2.0 __argz_next F +GLIBC_2.0 __argz_stringify F +GLIBC_2.0 __assert_fail F +GLIBC_2.0 __assert_perror_fail F +GLIBC_2.0 __bsd_getpgrp F +GLIBC_2.0 __bzero F +GLIBC_2.0 __check_rhosts_file D 0x4 +GLIBC_2.0 __clone F +GLIBC_2.0 __close F +GLIBC_2.0 __cmsg_nxthdr F +GLIBC_2.0 __connect F +GLIBC_2.0 __ctype32_b D 0x4 +GLIBC_2.0 __ctype_b D 0x4 +GLIBC_2.0 __ctype_get_mb_cur_max F +GLIBC_2.0 __ctype_tolower D 0x4 +GLIBC_2.0 __ctype_toupper D 0x4 +GLIBC_2.0 __curbrk D 0x4 +GLIBC_2.0 __daylight D 0x4 +GLIBC_2.0 __dcgettext F +GLIBC_2.0 __default_morecore F +GLIBC_2.0 __deregister_frame F +GLIBC_2.0 __deregister_frame_info F +GLIBC_2.0 __dgettext F +GLIBC_2.0 __dup2 F +GLIBC_2.0 __environ D 0x4 +GLIBC_2.0 __errno_location F +GLIBC_2.0 __fcntl F +GLIBC_2.0 __ffs F +GLIBC_2.0 __finite F +GLIBC_2.0 __finitef F +GLIBC_2.0 __finitel F +GLIBC_2.0 __fork F +GLIBC_2.0 __fpu_control D 0x4 +GLIBC_2.0 __frame_state_for F +GLIBC_2.0 __free_hook D 0x4 +GLIBC_2.0 __fxstat F +GLIBC_2.0 __getdelim F +GLIBC_2.0 __getpagesize F +GLIBC_2.0 __getpgid F +GLIBC_2.0 __getpid F +GLIBC_2.0 __gettimeofday F +GLIBC_2.0 __gmtime_r F +GLIBC_2.0 __h_errno_location F +GLIBC_2.0 __isinf F +GLIBC_2.0 __isinff F +GLIBC_2.0 __isinfl F +GLIBC_2.0 __isnan F +GLIBC_2.0 __isnanf F +GLIBC_2.0 __isnanl F +GLIBC_2.0 __iswctype F +GLIBC_2.0 __ivaliduser F +GLIBC_2.0 __libc_calloc F +GLIBC_2.0 __libc_free F +GLIBC_2.0 __libc_init_first F +GLIBC_2.0 __libc_mallinfo F +GLIBC_2.0 __libc_malloc F +GLIBC_2.0 __libc_mallopt F +GLIBC_2.0 __libc_memalign F +GLIBC_2.0 __libc_pvalloc F +GLIBC_2.0 __libc_realloc F +GLIBC_2.0 __libc_start_main F +GLIBC_2.0 __libc_valloc F +GLIBC_2.0 __lseek F +GLIBC_2.0 __lxstat F +GLIBC_2.0 __malloc_hook D 0x4 +GLIBC_2.0 __malloc_initialize_hook D 0x4 +GLIBC_2.0 __mbrlen F +GLIBC_2.0 __mbrtowc F +GLIBC_2.0 __memalign_hook D 0x4 +GLIBC_2.0 __mempcpy F +GLIBC_2.0 __monstartup F +GLIBC_2.0 __morecore D 0x4 +GLIBC_2.0 __nss_configure_lookup F +GLIBC_2.0 __nss_database_lookup F +GLIBC_2.0 __nss_group_lookup F +GLIBC_2.0 __nss_hosts_lookup F +GLIBC_2.0 __nss_next F +GLIBC_2.0 __nss_passwd_lookup F +GLIBC_2.0 __open F +GLIBC_2.0 __overflow F +GLIBC_2.0 __pipe F +GLIBC_2.0 __printf_fp F +GLIBC_2.0 __profile_frequency F +GLIBC_2.0 __progname D 0x4 +GLIBC_2.0 __progname_full D 0x4 +GLIBC_2.0 __rcmd_errstr D 0x4 +GLIBC_2.0 __read F +GLIBC_2.0 __realloc_hook D 0x4 +GLIBC_2.0 __register_frame F +GLIBC_2.0 __register_frame_info F +GLIBC_2.0 __register_frame_info_table F +GLIBC_2.0 __register_frame_table F +GLIBC_2.0 __res_randomid F +GLIBC_2.0 __sbrk F +GLIBC_2.0 __sched_get_priority_max F +GLIBC_2.0 __sched_get_priority_min F +GLIBC_2.0 __sched_getparam F +GLIBC_2.0 __sched_getscheduler F +GLIBC_2.0 __sched_setscheduler F +GLIBC_2.0 __sched_yield F +GLIBC_2.0 __secure_getenv F +GLIBC_2.0 __select F +GLIBC_2.0 __send F +GLIBC_2.0 __setpgid F +GLIBC_2.0 __sigaction F +GLIBC_2.0 __sigaddset F +GLIBC_2.0 __sigdelset F +GLIBC_2.0 __sigismember F +GLIBC_2.0 __sigpause F +GLIBC_2.0 __sigsetjmp F +GLIBC_2.0 __stpcpy F +GLIBC_2.0 __stpncpy F +GLIBC_2.0 __strcasecmp F +GLIBC_2.0 __strdup F +GLIBC_2.0 __strerror_r F +GLIBC_2.0 __strtod_internal F +GLIBC_2.0 __strtof_internal F +GLIBC_2.0 __strtok_r F +GLIBC_2.0 __strtol_internal F +GLIBC_2.0 __strtold_internal F +GLIBC_2.0 __strtoll_internal F +GLIBC_2.0 __strtoq_internal F +GLIBC_2.0 __strtoul_internal F +GLIBC_2.0 __strtoull_internal F +GLIBC_2.0 __strtouq_internal F +GLIBC_2.0 __sysv_signal F +GLIBC_2.0 __timezone D 0x4 +GLIBC_2.0 __tzname D 0x8 +GLIBC_2.0 __uflow F +GLIBC_2.0 __underflow F +GLIBC_2.0 __vfscanf F +GLIBC_2.0 __vsnprintf F +GLIBC_2.0 __vsscanf F +GLIBC_2.0 __wait F +GLIBC_2.0 __waitpid F +GLIBC_2.0 __wcstod_internal F +GLIBC_2.0 __wcstof_internal F +GLIBC_2.0 __wcstol_internal F +GLIBC_2.0 __wcstold_internal F +GLIBC_2.0 __wcstoll_internal F +GLIBC_2.0 __wcstoul_internal F +GLIBC_2.0 __wcstoull_internal F +GLIBC_2.0 __write F +GLIBC_2.0 __xmknod F +GLIBC_2.0 __xpg_basename F +GLIBC_2.0 __xstat F +GLIBC_2.0 _environ D 0x4 +GLIBC_2.0 _exit F +GLIBC_2.0 _flush_cache F +GLIBC_2.0 _libc_intl_domainname D 0x5 +GLIBC_2.0 _longjmp F +GLIBC_2.0 _mcleanup F +GLIBC_2.0 _mcount F +GLIBC_2.0 _nl_default_dirname D 0x12 +GLIBC_2.0 _nl_domain_bindings D 0x4 +GLIBC_2.0 _nl_msg_cat_cntr D 0x4 +GLIBC_2.0 _null_auth D 0xc +GLIBC_2.0 _obstack D 0x4 +GLIBC_2.0 _obstack_allocated_p F +GLIBC_2.0 _obstack_begin F +GLIBC_2.0 _obstack_begin_1 F +GLIBC_2.0 _obstack_free F +GLIBC_2.0 _obstack_memory_used F +GLIBC_2.0 _obstack_newchunk F +GLIBC_2.0 _res D 0x200 +GLIBC_2.0 _rpc_dtablesize F +GLIBC_2.0 _seterr_reply F +GLIBC_2.0 _setjmp F +GLIBC_2.0 _sys_errlist D 0x1ec +GLIBC_2.0 _sys_nerr D 0x4 +GLIBC_2.0 _sys_siglist D 0x80 +GLIBC_2.0 _tolower F +GLIBC_2.0 _toupper F +GLIBC_2.0 a64l F +GLIBC_2.0 abort F +GLIBC_2.0 abs F +GLIBC_2.0 accept F +GLIBC_2.0 access F +GLIBC_2.0 acct F +GLIBC_2.0 addmntent F +GLIBC_2.0 adjtime F +GLIBC_2.0 adjtimex F +GLIBC_2.0 advance F +GLIBC_2.0 alarm F +GLIBC_2.0 alphasort F +GLIBC_2.0 argz_add F +GLIBC_2.0 argz_add_sep F +GLIBC_2.0 argz_append F +GLIBC_2.0 argz_count F +GLIBC_2.0 argz_create F +GLIBC_2.0 argz_create_sep F +GLIBC_2.0 argz_delete F +GLIBC_2.0 argz_extract F +GLIBC_2.0 argz_insert F +GLIBC_2.0 argz_next F +GLIBC_2.0 argz_replace F +GLIBC_2.0 argz_stringify F +GLIBC_2.0 asctime F +GLIBC_2.0 asctime_r F +GLIBC_2.0 asprintf F +GLIBC_2.0 atexit F +GLIBC_2.0 atof F +GLIBC_2.0 atoi F +GLIBC_2.0 atol F +GLIBC_2.0 atoll F +GLIBC_2.0 authnone_create F +GLIBC_2.0 authunix_create F +GLIBC_2.0 authunix_create_default F +GLIBC_2.0 basename F +GLIBC_2.0 bcmp F +GLIBC_2.0 bcopy F +GLIBC_2.0 bdflush F +GLIBC_2.0 bind F +GLIBC_2.0 bindresvport F +GLIBC_2.0 bindtextdomain F +GLIBC_2.0 brk F +GLIBC_2.0 bsd_signal F +GLIBC_2.0 bsearch F +GLIBC_2.0 btowc F +GLIBC_2.0 bzero F +GLIBC_2.0 cachectl F +GLIBC_2.0 cacheflush F +GLIBC_2.0 calloc F +GLIBC_2.0 callrpc F +GLIBC_2.0 canonicalize_file_name F +GLIBC_2.0 catclose F +GLIBC_2.0 catgets F +GLIBC_2.0 catopen F +GLIBC_2.0 cfgetispeed F +GLIBC_2.0 cfgetospeed F +GLIBC_2.0 cfmakeraw F +GLIBC_2.0 cfree F +GLIBC_2.0 cfsetispeed F +GLIBC_2.0 cfsetospeed F +GLIBC_2.0 cfsetspeed F +GLIBC_2.0 chdir F +GLIBC_2.0 chflags F +GLIBC_2.0 chmod F +GLIBC_2.0 chown F +GLIBC_2.0 chroot F +GLIBC_2.0 clearenv F +GLIBC_2.0 clearerr F +GLIBC_2.0 clearerr_unlocked F +GLIBC_2.0 clnt_broadcast F +GLIBC_2.0 clnt_create F +GLIBC_2.0 clnt_pcreateerror F +GLIBC_2.0 clnt_perrno F +GLIBC_2.0 clnt_perror F +GLIBC_2.0 clnt_spcreateerror F +GLIBC_2.0 clnt_sperrno F +GLIBC_2.0 clnt_sperror F +GLIBC_2.0 clntraw_create F +GLIBC_2.0 clnttcp_create F +GLIBC_2.0 clntudp_bufcreate F +GLIBC_2.0 clntudp_create F +GLIBC_2.0 clock F +GLIBC_2.0 clone F +GLIBC_2.0 close F +GLIBC_2.0 closedir F +GLIBC_2.0 closelog F +GLIBC_2.0 confstr F +GLIBC_2.0 connect F +GLIBC_2.0 copysign F +GLIBC_2.0 copysignf F +GLIBC_2.0 copysignl F +GLIBC_2.0 creat F +GLIBC_2.0 create_module F +GLIBC_2.0 ctermid F +GLIBC_2.0 ctime F +GLIBC_2.0 ctime_r F +GLIBC_2.0 cuserid F +GLIBC_2.0 daemon F +GLIBC_2.0 daylight D 0x4 +GLIBC_2.0 dcgettext F +GLIBC_2.0 delete_module F +GLIBC_2.0 dgettext F +GLIBC_2.0 difftime F +GLIBC_2.0 dirfd F +GLIBC_2.0 dirname F +GLIBC_2.0 div F +GLIBC_2.0 dprintf F +GLIBC_2.0 drand48 F +GLIBC_2.0 drand48_r F +GLIBC_2.0 dup F +GLIBC_2.0 dup2 F +GLIBC_2.0 dysize F +GLIBC_2.0 ecvt F +GLIBC_2.0 ecvt_r F +GLIBC_2.0 endaliasent F +GLIBC_2.0 endfsent F +GLIBC_2.0 endgrent F +GLIBC_2.0 endhostent F +GLIBC_2.0 endmntent F +GLIBC_2.0 endnetent F +GLIBC_2.0 endnetgrent F +GLIBC_2.0 endprotoent F +GLIBC_2.0 endpwent F +GLIBC_2.0 endrpcent F +GLIBC_2.0 endservent F +GLIBC_2.0 endspent F +GLIBC_2.0 endttyent F +GLIBC_2.0 endusershell F +GLIBC_2.0 endutent F +GLIBC_2.0 environ D 0x4 +GLIBC_2.0 envz_add F +GLIBC_2.0 envz_entry F +GLIBC_2.0 envz_get F +GLIBC_2.0 envz_merge F +GLIBC_2.0 envz_remove F +GLIBC_2.0 envz_strip F +GLIBC_2.0 erand48 F +GLIBC_2.0 erand48_r F +GLIBC_2.0 err F +GLIBC_2.0 error F +GLIBC_2.0 error_at_line F +GLIBC_2.0 error_message_count D 0x4 +GLIBC_2.0 error_one_per_line D 0x4 +GLIBC_2.0 error_print_progname D 0x4 +GLIBC_2.0 errx F +GLIBC_2.0 ether_aton F +GLIBC_2.0 ether_aton_r F +GLIBC_2.0 ether_hostton F +GLIBC_2.0 ether_line F +GLIBC_2.0 ether_ntoa F +GLIBC_2.0 ether_ntoa_r F +GLIBC_2.0 ether_ntohost F +GLIBC_2.0 euidaccess F +GLIBC_2.0 execl F +GLIBC_2.0 execle F +GLIBC_2.0 execlp F +GLIBC_2.0 execv F +GLIBC_2.0 execve F +GLIBC_2.0 execvp F +GLIBC_2.0 exit F +GLIBC_2.0 fchdir F +GLIBC_2.0 fchflags F +GLIBC_2.0 fchmod F +GLIBC_2.0 fchown F +GLIBC_2.0 fclose F +GLIBC_2.0 fcloseall F +GLIBC_2.0 fcntl F +GLIBC_2.0 fcvt F +GLIBC_2.0 fcvt_r F +GLIBC_2.0 fdatasync F +GLIBC_2.0 fdopen F +GLIBC_2.0 feof F +GLIBC_2.0 feof_unlocked F +GLIBC_2.0 ferror F +GLIBC_2.0 ferror_unlocked F +GLIBC_2.0 fexecve F +GLIBC_2.0 fflush F +GLIBC_2.0 fflush_unlocked F +GLIBC_2.0 ffs F +GLIBC_2.0 fgetc F +GLIBC_2.0 fgetgrent F +GLIBC_2.0 fgetgrent_r F +GLIBC_2.0 fgetpos F +GLIBC_2.0 fgetpwent F +GLIBC_2.0 fgetpwent_r F +GLIBC_2.0 fgets F +GLIBC_2.0 fgetspent F +GLIBC_2.0 fgetspent_r F +GLIBC_2.0 fileno F +GLIBC_2.0 fileno_unlocked F +GLIBC_2.0 finite F +GLIBC_2.0 finitef F +GLIBC_2.0 finitel F +GLIBC_2.0 flock F +GLIBC_2.0 flockfile F +GLIBC_2.0 fnmatch F +GLIBC_2.0 fopen F +GLIBC_2.0 fopencookie F +GLIBC_2.0 fork F +GLIBC_2.0 fpathconf F +GLIBC_2.0 fprintf F +GLIBC_2.0 fputc F +GLIBC_2.0 fputc_unlocked F +GLIBC_2.0 fputs F +GLIBC_2.0 fread F +GLIBC_2.0 free F +GLIBC_2.0 freeaddrinfo F +GLIBC_2.0 freopen F +GLIBC_2.0 frexp F +GLIBC_2.0 frexpf F +GLIBC_2.0 frexpl F +GLIBC_2.0 fscanf F +GLIBC_2.0 fseek F +GLIBC_2.0 fsetpos F +GLIBC_2.0 fstatfs F +GLIBC_2.0 fsync F +GLIBC_2.0 ftell F +GLIBC_2.0 ftime F +GLIBC_2.0 ftok F +GLIBC_2.0 ftruncate F +GLIBC_2.0 ftrylockfile F +GLIBC_2.0 fts_children F +GLIBC_2.0 fts_close F +GLIBC_2.0 fts_open F +GLIBC_2.0 fts_read F +GLIBC_2.0 fts_set F +GLIBC_2.0 ftw F +GLIBC_2.0 funlockfile F +GLIBC_2.0 fwrite F +GLIBC_2.0 gcvt F +GLIBC_2.0 get_avphys_pages F +GLIBC_2.0 get_current_dir_name F +GLIBC_2.0 get_kernel_syms F +GLIBC_2.0 get_myaddress F +GLIBC_2.0 get_nprocs F +GLIBC_2.0 get_nprocs_conf F +GLIBC_2.0 get_phys_pages F +GLIBC_2.0 getaddrinfo F +GLIBC_2.0 getaliasbyname F +GLIBC_2.0 getaliasbyname_r F +GLIBC_2.0 getaliasent F +GLIBC_2.0 getaliasent_r F +GLIBC_2.0 getc F +GLIBC_2.0 getc_unlocked F +GLIBC_2.0 getchar F +GLIBC_2.0 getchar_unlocked F +GLIBC_2.0 getcwd F +GLIBC_2.0 getdelim F +GLIBC_2.0 getdirentries F +GLIBC_2.0 getdomainname F +GLIBC_2.0 getdtablesize F +GLIBC_2.0 getegid F +GLIBC_2.0 getenv F +GLIBC_2.0 geteuid F +GLIBC_2.0 getfsent F +GLIBC_2.0 getfsfile F +GLIBC_2.0 getfsspec F +GLIBC_2.0 getgid F +GLIBC_2.0 getgrent F +GLIBC_2.0 getgrent_r F +GLIBC_2.0 getgrgid F +GLIBC_2.0 getgrgid_r F +GLIBC_2.0 getgrnam F +GLIBC_2.0 getgrnam_r F +GLIBC_2.0 getgroups F +GLIBC_2.0 gethostbyaddr F +GLIBC_2.0 gethostbyaddr_r F +GLIBC_2.0 gethostbyname F +GLIBC_2.0 gethostbyname2 F +GLIBC_2.0 gethostbyname2_r F +GLIBC_2.0 gethostbyname_r F +GLIBC_2.0 gethostent F +GLIBC_2.0 gethostent_r F +GLIBC_2.0 gethostid F +GLIBC_2.0 gethostname F +GLIBC_2.0 getitimer F +GLIBC_2.0 getline F +GLIBC_2.0 getlogin F +GLIBC_2.0 getlogin_r F +GLIBC_2.0 getmntent F +GLIBC_2.0 getmntent_r F +GLIBC_2.0 getnetbyaddr F +GLIBC_2.0 getnetbyaddr_r F +GLIBC_2.0 getnetbyname F +GLIBC_2.0 getnetbyname_r F +GLIBC_2.0 getnetent F +GLIBC_2.0 getnetent_r F +GLIBC_2.0 getnetgrent F +GLIBC_2.0 getnetgrent_r F +GLIBC_2.0 getopt F +GLIBC_2.0 getopt_long F +GLIBC_2.0 getopt_long_only F +GLIBC_2.0 getpagesize F +GLIBC_2.0 getpass F +GLIBC_2.0 getpeername F +GLIBC_2.0 getpgid F +GLIBC_2.0 getpgrp F +GLIBC_2.0 getpid F +GLIBC_2.0 getppid F +GLIBC_2.0 getpriority F +GLIBC_2.0 getprotobyname F +GLIBC_2.0 getprotobyname_r F +GLIBC_2.0 getprotobynumber F +GLIBC_2.0 getprotobynumber_r F +GLIBC_2.0 getprotoent F +GLIBC_2.0 getprotoent_r F +GLIBC_2.0 getpublickey F +GLIBC_2.0 getpw F +GLIBC_2.0 getpwent F +GLIBC_2.0 getpwent_r F +GLIBC_2.0 getpwnam F +GLIBC_2.0 getpwnam_r F +GLIBC_2.0 getpwuid F +GLIBC_2.0 getpwuid_r F +GLIBC_2.0 getresgid F +GLIBC_2.0 getresuid F +GLIBC_2.0 getrlimit F +GLIBC_2.0 getrpcbyname F +GLIBC_2.0 getrpcbyname_r F +GLIBC_2.0 getrpcbynumber F +GLIBC_2.0 getrpcbynumber_r F +GLIBC_2.0 getrpcent F +GLIBC_2.0 getrpcent_r F +GLIBC_2.0 getrpcport F +GLIBC_2.0 getrusage F +GLIBC_2.0 gets F +GLIBC_2.0 getsecretkey F +GLIBC_2.0 getservbyname F +GLIBC_2.0 getservbyname_r F +GLIBC_2.0 getservbyport F +GLIBC_2.0 getservbyport_r F +GLIBC_2.0 getservent F +GLIBC_2.0 getservent_r F +GLIBC_2.0 getsid F +GLIBC_2.0 getsockname F +GLIBC_2.0 getsockopt F +GLIBC_2.0 getspent F +GLIBC_2.0 getspent_r F +GLIBC_2.0 getspnam F +GLIBC_2.0 getspnam_r F +GLIBC_2.0 getsubopt F +GLIBC_2.0 gettext F +GLIBC_2.0 gettimeofday F +GLIBC_2.0 getttyent F +GLIBC_2.0 getttynam F +GLIBC_2.0 getuid F +GLIBC_2.0 getusershell F +GLIBC_2.0 getutent F +GLIBC_2.0 getutent_r F +GLIBC_2.0 getutid F +GLIBC_2.0 getutid_r F +GLIBC_2.0 getutline F +GLIBC_2.0 getutline_r F +GLIBC_2.0 getw F +GLIBC_2.0 getwd F +GLIBC_2.0 glob F +GLIBC_2.0 glob_pattern_p F +GLIBC_2.0 globfree F +GLIBC_2.0 gmtime F +GLIBC_2.0 gmtime_r F +GLIBC_2.0 group_member F +GLIBC_2.0 gsignal F +GLIBC_2.0 gtty F +GLIBC_2.0 h_errlist D 0x14 +GLIBC_2.0 h_nerr D 0x4 +GLIBC_2.0 hasmntopt F +GLIBC_2.0 hcreate F +GLIBC_2.0 hcreate_r F +GLIBC_2.0 hdestroy F +GLIBC_2.0 hdestroy_r F +GLIBC_2.0 herror F +GLIBC_2.0 hsearch F +GLIBC_2.0 hsearch_r F +GLIBC_2.0 hstrerror F +GLIBC_2.0 htonl F +GLIBC_2.0 htons F +GLIBC_2.0 index F +GLIBC_2.0 inet_addr F +GLIBC_2.0 inet_aton F +GLIBC_2.0 inet_lnaof F +GLIBC_2.0 inet_makeaddr F +GLIBC_2.0 inet_netof F +GLIBC_2.0 inet_network F +GLIBC_2.0 inet_nsap_addr F +GLIBC_2.0 inet_nsap_ntoa F +GLIBC_2.0 inet_ntoa F +GLIBC_2.0 inet_ntop F +GLIBC_2.0 inet_pton F +GLIBC_2.0 init_module F +GLIBC_2.0 initgroups F +GLIBC_2.0 initstate F +GLIBC_2.0 initstate_r F +GLIBC_2.0 innetgr F +GLIBC_2.0 insque F +GLIBC_2.0 ioctl F +GLIBC_2.0 iruserok F +GLIBC_2.0 isalnum F +GLIBC_2.0 isalpha F +GLIBC_2.0 isascii F +GLIBC_2.0 isatty F +GLIBC_2.0 isblank F +GLIBC_2.0 iscntrl F +GLIBC_2.0 isdigit F +GLIBC_2.0 isfdtype F +GLIBC_2.0 isgraph F +GLIBC_2.0 isinf F +GLIBC_2.0 isinff F +GLIBC_2.0 isinfl F +GLIBC_2.0 islower F +GLIBC_2.0 isnan F +GLIBC_2.0 isnanf F +GLIBC_2.0 isnanl F +GLIBC_2.0 isprint F +GLIBC_2.0 ispunct F +GLIBC_2.0 isspace F +GLIBC_2.0 isupper F +GLIBC_2.0 iswalnum F +GLIBC_2.0 iswalpha F +GLIBC_2.0 iswcntrl F +GLIBC_2.0 iswctype F +GLIBC_2.0 iswdigit F +GLIBC_2.0 iswgraph F +GLIBC_2.0 iswlower F +GLIBC_2.0 iswprint F +GLIBC_2.0 iswpunct F +GLIBC_2.0 iswspace F +GLIBC_2.0 iswupper F +GLIBC_2.0 iswxdigit F +GLIBC_2.0 isxdigit F +GLIBC_2.0 jrand48 F +GLIBC_2.0 jrand48_r F +GLIBC_2.0 kill F +GLIBC_2.0 killpg F +GLIBC_2.0 klogctl F +GLIBC_2.0 l64a F +GLIBC_2.0 labs F +GLIBC_2.0 lchown F +GLIBC_2.0 lckpwdf F +GLIBC_2.0 lcong48 F +GLIBC_2.0 lcong48_r F +GLIBC_2.0 ldexp F +GLIBC_2.0 ldexpf F +GLIBC_2.0 ldexpl F +GLIBC_2.0 ldiv F +GLIBC_2.0 lfind F +GLIBC_2.0 link F +GLIBC_2.0 listen F +GLIBC_2.0 llabs F +GLIBC_2.0 lldiv F +GLIBC_2.0 llseek F +GLIBC_2.0 loc1 D 0x4 +GLIBC_2.0 loc2 D 0x4 +GLIBC_2.0 localeconv F +GLIBC_2.0 localtime F +GLIBC_2.0 localtime_r F +GLIBC_2.0 lockf F +GLIBC_2.0 locs D 0x4 +GLIBC_2.0 longjmp F +GLIBC_2.0 lrand48 F +GLIBC_2.0 lrand48_r F +GLIBC_2.0 lsearch F +GLIBC_2.0 lseek F +GLIBC_2.0 madvise F +GLIBC_2.0 mallinfo F +GLIBC_2.0 malloc F +GLIBC_2.0 malloc_get_state F +GLIBC_2.0 malloc_set_state F +GLIBC_2.0 malloc_stats F +GLIBC_2.0 malloc_trim F +GLIBC_2.0 malloc_usable_size F +GLIBC_2.0 mallopt F +GLIBC_2.0 mallwatch D 0x4 +GLIBC_2.0 mblen F +GLIBC_2.0 mbrlen F +GLIBC_2.0 mbrtowc F +GLIBC_2.0 mbsinit F +GLIBC_2.0 mbsnrtowcs F +GLIBC_2.0 mbsrtowcs F +GLIBC_2.0 mbstowcs F +GLIBC_2.0 mbtowc F +GLIBC_2.0 mcheck F +GLIBC_2.0 memalign F +GLIBC_2.0 memccpy F +GLIBC_2.0 memchr F +GLIBC_2.0 memcmp F +GLIBC_2.0 memcpy F +GLIBC_2.0 memfrob F +GLIBC_2.0 memmem F +GLIBC_2.0 memmove F +GLIBC_2.0 memset F +GLIBC_2.0 mkdir F +GLIBC_2.0 mkfifo F +GLIBC_2.0 mkstemp F +GLIBC_2.0 mktemp F +GLIBC_2.0 mktime F +GLIBC_2.0 mlock F +GLIBC_2.0 mlockall F +GLIBC_2.0 mmap F +GLIBC_2.0 modf F +GLIBC_2.0 modff F +GLIBC_2.0 modfl F +GLIBC_2.0 monstartup F +GLIBC_2.0 mount F +GLIBC_2.0 mprobe F +GLIBC_2.0 mprotect F +GLIBC_2.0 mrand48 F +GLIBC_2.0 mrand48_r F +GLIBC_2.0 mremap F +GLIBC_2.0 msgctl F +GLIBC_2.0 msgget F +GLIBC_2.0 msgrcv F +GLIBC_2.0 msgsnd F +GLIBC_2.0 msync F +GLIBC_2.0 mtrace F +GLIBC_2.0 munlock F +GLIBC_2.0 munlockall F +GLIBC_2.0 munmap F +GLIBC_2.0 muntrace F +GLIBC_2.0 nanosleep F +GLIBC_2.0 nfsservctl F +GLIBC_2.0 nice F +GLIBC_2.0 nl_langinfo F +GLIBC_2.0 nrand48 F +GLIBC_2.0 nrand48_r F +GLIBC_2.0 ntohl F +GLIBC_2.0 ntohs F +GLIBC_2.0 obstack_alloc_failed_handler D 0x4 +GLIBC_2.0 obstack_exit_failure D 0x4 +GLIBC_2.0 obstack_free F +GLIBC_2.0 obstack_printf F +GLIBC_2.0 obstack_vprintf F +GLIBC_2.0 on_exit F +GLIBC_2.0 open F +GLIBC_2.0 open_memstream F +GLIBC_2.0 opendir F +GLIBC_2.0 openlog F +GLIBC_2.0 optarg D 0x4 +GLIBC_2.0 opterr D 0x4 +GLIBC_2.0 optind D 0x4 +GLIBC_2.0 optopt D 0x4 +GLIBC_2.0 parse_printf_format F +GLIBC_2.0 pathconf F +GLIBC_2.0 pause F +GLIBC_2.0 pclose F +GLIBC_2.0 perror F +GLIBC_2.0 personality F +GLIBC_2.0 pipe F +GLIBC_2.0 pmap_getmaps F +GLIBC_2.0 pmap_getport F +GLIBC_2.0 pmap_rmtcall F +GLIBC_2.0 pmap_set F +GLIBC_2.0 pmap_unset F +GLIBC_2.0 poll F +GLIBC_2.0 popen F +GLIBC_2.0 prctl F +GLIBC_2.0 printf F +GLIBC_2.0 profil F +GLIBC_2.0 program_invocation_name D 0x4 +GLIBC_2.0 program_invocation_short_name D 0x4 +GLIBC_2.0 pselect F +GLIBC_2.0 psignal F +GLIBC_2.0 pthread_attr_destroy F +GLIBC_2.0 pthread_attr_getdetachstate F +GLIBC_2.0 pthread_attr_getinheritsched F +GLIBC_2.0 pthread_attr_getschedparam F +GLIBC_2.0 pthread_attr_getschedpolicy F +GLIBC_2.0 pthread_attr_getscope F +GLIBC_2.0 pthread_attr_init F +GLIBC_2.0 pthread_attr_setdetachstate F +GLIBC_2.0 pthread_attr_setinheritsched F +GLIBC_2.0 pthread_attr_setschedparam F +GLIBC_2.0 pthread_attr_setschedpolicy F +GLIBC_2.0 pthread_attr_setscope F +GLIBC_2.0 pthread_cond_broadcast F +GLIBC_2.0 pthread_cond_destroy F +GLIBC_2.0 pthread_cond_init F +GLIBC_2.0 pthread_cond_signal F +GLIBC_2.0 pthread_cond_timedwait F +GLIBC_2.0 pthread_cond_wait F +GLIBC_2.0 pthread_condattr_destroy F +GLIBC_2.0 pthread_condattr_init F +GLIBC_2.0 pthread_equal F +GLIBC_2.0 pthread_exit F +GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_mutex_destroy F +GLIBC_2.0 pthread_mutex_init F +GLIBC_2.0 pthread_mutex_lock F +GLIBC_2.0 pthread_mutex_unlock F +GLIBC_2.0 pthread_self F +GLIBC_2.0 pthread_setcancelstate F +GLIBC_2.0 pthread_setcanceltype F +GLIBC_2.0 pthread_setschedparam F +GLIBC_2.0 ptrace F +GLIBC_2.0 putc F +GLIBC_2.0 putc_unlocked F +GLIBC_2.0 putchar F +GLIBC_2.0 putchar_unlocked F +GLIBC_2.0 putenv F +GLIBC_2.0 putpwent F +GLIBC_2.0 puts F +GLIBC_2.0 putspent F +GLIBC_2.0 pututline F +GLIBC_2.0 putw F +GLIBC_2.0 pvalloc F +GLIBC_2.0 qecvt F +GLIBC_2.0 qecvt_r F +GLIBC_2.0 qfcvt F +GLIBC_2.0 qfcvt_r F +GLIBC_2.0 qgcvt F +GLIBC_2.0 qsort F +GLIBC_2.0 query_module F +GLIBC_2.0 quotactl F +GLIBC_2.0 raise F +GLIBC_2.0 rand F +GLIBC_2.0 rand_r F +GLIBC_2.0 random F +GLIBC_2.0 random_r F +GLIBC_2.0 rcmd F +GLIBC_2.0 re_comp F +GLIBC_2.0 re_compile_fastmap F +GLIBC_2.0 re_compile_pattern F +GLIBC_2.0 re_exec F +GLIBC_2.0 re_match F +GLIBC_2.0 re_match_2 F +GLIBC_2.0 re_max_failures D 0x4 +GLIBC_2.0 re_search F +GLIBC_2.0 re_search_2 F +GLIBC_2.0 re_set_registers F +GLIBC_2.0 re_set_syntax F +GLIBC_2.0 re_syntax_options D 0x4 +GLIBC_2.0 read F +GLIBC_2.0 readdir F +GLIBC_2.0 readdir_r F +GLIBC_2.0 readlink F +GLIBC_2.0 readv F +GLIBC_2.0 realloc F +GLIBC_2.0 realpath F +GLIBC_2.0 reboot F +GLIBC_2.0 recv F +GLIBC_2.0 recvfrom F +GLIBC_2.0 recvmsg F +GLIBC_2.0 regcomp F +GLIBC_2.0 regerror F +GLIBC_2.0 regexec F +GLIBC_2.0 regfree F +GLIBC_2.0 register_printf_function F +GLIBC_2.0 registerrpc F +GLIBC_2.0 remove F +GLIBC_2.0 remque F +GLIBC_2.0 rename F +GLIBC_2.0 res_init F +GLIBC_2.0 revoke F +GLIBC_2.0 rewind F +GLIBC_2.0 rewinddir F +GLIBC_2.0 rexec F +GLIBC_2.0 rexecoptions D 0x4 +GLIBC_2.0 rindex F +GLIBC_2.0 rmdir F +GLIBC_2.0 rpc_createerr D 0x10 +GLIBC_2.0 rpmatch F +GLIBC_2.0 rresvport F +GLIBC_2.0 ruserok F +GLIBC_2.0 ruserpass F +GLIBC_2.0 sbrk F +GLIBC_2.0 scalbn F +GLIBC_2.0 scalbnf F +GLIBC_2.0 scalbnl F +GLIBC_2.0 scandir F +GLIBC_2.0 scanf F +GLIBC_2.0 sched_get_priority_max F +GLIBC_2.0 sched_get_priority_min F +GLIBC_2.0 sched_getparam F +GLIBC_2.0 sched_getscheduler F +GLIBC_2.0 sched_rr_get_interval F +GLIBC_2.0 sched_setparam F +GLIBC_2.0 sched_setscheduler F +GLIBC_2.0 sched_yield F +GLIBC_2.0 seed48 F +GLIBC_2.0 seed48_r F +GLIBC_2.0 seekdir F +GLIBC_2.0 select F +GLIBC_2.0 semctl F +GLIBC_2.0 semget F +GLIBC_2.0 semop F +GLIBC_2.0 send F +GLIBC_2.0 sendmsg F +GLIBC_2.0 sendto F +GLIBC_2.0 setaliasent F +GLIBC_2.0 setbuf F +GLIBC_2.0 setbuffer F +GLIBC_2.0 setcontext F +GLIBC_2.0 setdomainname F +GLIBC_2.0 setegid F +GLIBC_2.0 setenv F +GLIBC_2.0 seteuid F +GLIBC_2.0 setfsent F +GLIBC_2.0 setfsgid F +GLIBC_2.0 setfsuid F +GLIBC_2.0 setgid F +GLIBC_2.0 setgrent F +GLIBC_2.0 setgroups F +GLIBC_2.0 sethostent F +GLIBC_2.0 sethostid F +GLIBC_2.0 sethostname F +GLIBC_2.0 setitimer F +GLIBC_2.0 setjmp F +GLIBC_2.0 setlinebuf F +GLIBC_2.0 setlocale F +GLIBC_2.0 setlogin F +GLIBC_2.0 setlogmask F +GLIBC_2.0 setmntent F +GLIBC_2.0 setnetent F +GLIBC_2.0 setnetgrent F +GLIBC_2.0 setpgid F +GLIBC_2.0 setpgrp F +GLIBC_2.0 setpriority F +GLIBC_2.0 setprotoent F +GLIBC_2.0 setpwent F +GLIBC_2.0 setregid F +GLIBC_2.0 setresgid F +GLIBC_2.0 setresuid F +GLIBC_2.0 setreuid F +GLIBC_2.0 setrlimit F +GLIBC_2.0 setrpcent F +GLIBC_2.0 setservent F +GLIBC_2.0 setsid F +GLIBC_2.0 setsockopt F +GLIBC_2.0 setspent F +GLIBC_2.0 setstate F +GLIBC_2.0 setstate_r F +GLIBC_2.0 settimeofday F +GLIBC_2.0 setttyent F +GLIBC_2.0 setuid F +GLIBC_2.0 setusershell F +GLIBC_2.0 setutent F +GLIBC_2.0 setvbuf F +GLIBC_2.0 sgetspent F +GLIBC_2.0 sgetspent_r F +GLIBC_2.0 shmat F +GLIBC_2.0 shmctl F +GLIBC_2.0 shmdt F +GLIBC_2.0 shmget F +GLIBC_2.0 shutdown F +GLIBC_2.0 sigaction F +GLIBC_2.0 sigaddset F +GLIBC_2.0 sigaltstack F +GLIBC_2.0 sigandset F +GLIBC_2.0 sigblock F +GLIBC_2.0 sigdelset F +GLIBC_2.0 sigemptyset F +GLIBC_2.0 sigfillset F +GLIBC_2.0 siggetmask F +GLIBC_2.0 siginterrupt F +GLIBC_2.0 sigisemptyset F +GLIBC_2.0 sigismember F +GLIBC_2.0 siglongjmp F +GLIBC_2.0 signal F +GLIBC_2.0 sigorset F +GLIBC_2.0 sigpause F +GLIBC_2.0 sigpending F +GLIBC_2.0 sigprocmask F +GLIBC_2.0 sigreturn F +GLIBC_2.0 sigsetmask F +GLIBC_2.0 sigstack F +GLIBC_2.0 sigsuspend F +GLIBC_2.0 sigvec F +GLIBC_2.0 sigwait F +GLIBC_2.0 sleep F +GLIBC_2.0 snprintf F +GLIBC_2.0 socket F +GLIBC_2.0 socketpair F +GLIBC_2.0 sprintf F +GLIBC_2.0 srand F +GLIBC_2.0 srand48 F +GLIBC_2.0 srand48_r F +GLIBC_2.0 srandom F +GLIBC_2.0 srandom_r F +GLIBC_2.0 sscanf F +GLIBC_2.0 ssignal F +GLIBC_2.0 sstk F +GLIBC_2.0 statfs F +GLIBC_2.0 stderr D 0x4 +GLIBC_2.0 stdin D 0x4 +GLIBC_2.0 stdout D 0x4 +GLIBC_2.0 step F +GLIBC_2.0 stime F +GLIBC_2.0 stpcpy F +GLIBC_2.0 stpncpy F +GLIBC_2.0 strcasecmp F +GLIBC_2.0 strcat F +GLIBC_2.0 strchr F +GLIBC_2.0 strcmp F +GLIBC_2.0 strcoll F +GLIBC_2.0 strcpy F +GLIBC_2.0 strcspn F +GLIBC_2.0 strdup F +GLIBC_2.0 strerror F +GLIBC_2.0 strerror_r F +GLIBC_2.0 strfmon F +GLIBC_2.0 strfry F +GLIBC_2.0 strftime F +GLIBC_2.0 strlen F +GLIBC_2.0 strncasecmp F +GLIBC_2.0 strncat F +GLIBC_2.0 strncmp F +GLIBC_2.0 strncpy F +GLIBC_2.0 strndup F +GLIBC_2.0 strnlen F +GLIBC_2.0 strpbrk F +GLIBC_2.0 strptime F +GLIBC_2.0 strrchr F +GLIBC_2.0 strsep F +GLIBC_2.0 strsignal F +GLIBC_2.0 strspn F +GLIBC_2.0 strstr F +GLIBC_2.0 strtod F +GLIBC_2.0 strtof F +GLIBC_2.0 strtok F +GLIBC_2.0 strtok_r F +GLIBC_2.0 strtol F +GLIBC_2.0 strtold F +GLIBC_2.0 strtoll F +GLIBC_2.0 strtoq F +GLIBC_2.0 strtoul F +GLIBC_2.0 strtoull F +GLIBC_2.0 strtouq F +GLIBC_2.0 strxfrm F +GLIBC_2.0 stty F +GLIBC_2.0 svc_exit F +GLIBC_2.0 svc_fdset D 0x80 +GLIBC_2.0 svc_getreq F +GLIBC_2.0 svc_getreqset F +GLIBC_2.0 svc_register F +GLIBC_2.0 svc_run F +GLIBC_2.0 svc_sendreply F +GLIBC_2.0 svc_unregister F +GLIBC_2.0 svcauthdes_stats D 0xc +GLIBC_2.0 svcerr_auth F +GLIBC_2.0 svcerr_decode F +GLIBC_2.0 svcerr_noproc F +GLIBC_2.0 svcerr_noprog F +GLIBC_2.0 svcerr_progvers F +GLIBC_2.0 svcerr_systemerr F +GLIBC_2.0 svcerr_weakauth F +GLIBC_2.0 svcfd_create F +GLIBC_2.0 svcraw_create F +GLIBC_2.0 svctcp_create F +GLIBC_2.0 svcudp_bufcreate F +GLIBC_2.0 svcudp_create F +GLIBC_2.0 svcudp_enablecache F +GLIBC_2.0 swab F +GLIBC_2.0 swapoff F +GLIBC_2.0 swapon F +GLIBC_2.0 symlink F +GLIBC_2.0 sync F +GLIBC_2.0 sys_errlist D 0x1ec +GLIBC_2.0 sys_nerr D 0x4 +GLIBC_2.0 sys_sigabbrev D 0x80 +GLIBC_2.0 sys_siglist D 0x80 +GLIBC_2.0 syscall F +GLIBC_2.0 sysconf F +GLIBC_2.0 sysctl F +GLIBC_2.0 sysinfo F +GLIBC_2.0 syslog F +GLIBC_2.0 sysmips F +GLIBC_2.0 system F +GLIBC_2.0 tcdrain F +GLIBC_2.0 tcflow F +GLIBC_2.0 tcflush F +GLIBC_2.0 tcgetattr F +GLIBC_2.0 tcgetpgrp F +GLIBC_2.0 tcsendbreak F +GLIBC_2.0 tcsetattr F +GLIBC_2.0 tcsetpgrp F +GLIBC_2.0 tdelete F +GLIBC_2.0 telldir F +GLIBC_2.0 tempnam F +GLIBC_2.0 textdomain F +GLIBC_2.0 tfind F +GLIBC_2.0 time F +GLIBC_2.0 timegm F +GLIBC_2.0 timelocal F +GLIBC_2.0 times F +GLIBC_2.0 timezone D 0x4 +GLIBC_2.0 tmpfile F +GLIBC_2.0 tmpnam F +GLIBC_2.0 tmpnam_r F +GLIBC_2.0 toascii F +GLIBC_2.0 tolower F +GLIBC_2.0 toupper F +GLIBC_2.0 towctrans F +GLIBC_2.0 towlower F +GLIBC_2.0 towupper F +GLIBC_2.0 tr_break F +GLIBC_2.0 truncate F +GLIBC_2.0 tsearch F +GLIBC_2.0 ttyname F +GLIBC_2.0 ttyname_r F +GLIBC_2.0 ttyslot F +GLIBC_2.0 twalk F +GLIBC_2.0 tzname D 0x8 +GLIBC_2.0 tzset F +GLIBC_2.0 ualarm F +GLIBC_2.0 ulckpwdf F +GLIBC_2.0 ulimit F +GLIBC_2.0 umask F +GLIBC_2.0 umount F +GLIBC_2.0 uname F +GLIBC_2.0 ungetc F +GLIBC_2.0 unlink F +GLIBC_2.0 unsetenv F +GLIBC_2.0 updwtmp F +GLIBC_2.0 uselib F +GLIBC_2.0 usleep F +GLIBC_2.0 ustat F +GLIBC_2.0 utime F +GLIBC_2.0 utimes F +GLIBC_2.0 utmpname F +GLIBC_2.0 valloc F +GLIBC_2.0 vasprintf F +GLIBC_2.0 vdprintf F +GLIBC_2.0 verr F +GLIBC_2.0 verrx F +GLIBC_2.0 vfork F +GLIBC_2.0 vfprintf F +GLIBC_2.0 vfscanf F +GLIBC_2.0 vhangup F +GLIBC_2.0 vlimit F +GLIBC_2.0 vprintf F +GLIBC_2.0 vscanf F +GLIBC_2.0 vsnprintf F +GLIBC_2.0 vsprintf F +GLIBC_2.0 vsscanf F +GLIBC_2.0 vsyslog F +GLIBC_2.0 vtimes F +GLIBC_2.0 vwarn F +GLIBC_2.0 vwarnx F +GLIBC_2.0 wait F +GLIBC_2.0 wait3 F +GLIBC_2.0 wait4 F +GLIBC_2.0 waitpid F +GLIBC_2.0 warn F +GLIBC_2.0 warnx F +GLIBC_2.0 wcpcpy F +GLIBC_2.0 wcpncpy F +GLIBC_2.0 wcrtomb F +GLIBC_2.0 wcscat F +GLIBC_2.0 wcschr F +GLIBC_2.0 wcscmp F +GLIBC_2.0 wcscoll F +GLIBC_2.0 wcscpy F +GLIBC_2.0 wcscspn F +GLIBC_2.0 wcsdup F +GLIBC_2.0 wcslen F +GLIBC_2.0 wcsncat F +GLIBC_2.0 wcsncmp F +GLIBC_2.0 wcsncpy F +GLIBC_2.0 wcsnrtombs F +GLIBC_2.0 wcspbrk F +GLIBC_2.0 wcsrchr F +GLIBC_2.0 wcsrtombs F +GLIBC_2.0 wcsspn F +GLIBC_2.0 wcsstr F +GLIBC_2.0 wcstod F +GLIBC_2.0 wcstof F +GLIBC_2.0 wcstok F +GLIBC_2.0 wcstol F +GLIBC_2.0 wcstold F +GLIBC_2.0 wcstombs F +GLIBC_2.0 wcstoq F +GLIBC_2.0 wcstoul F +GLIBC_2.0 wcstouq F +GLIBC_2.0 wcswidth F +GLIBC_2.0 wcsxfrm F +GLIBC_2.0 wctob F +GLIBC_2.0 wctomb F +GLIBC_2.0 wctrans F +GLIBC_2.0 wctype F +GLIBC_2.0 wcwidth F +GLIBC_2.0 wmemchr F +GLIBC_2.0 wmemcmp F +GLIBC_2.0 wmemcpy F +GLIBC_2.0 wmemmove F +GLIBC_2.0 wmemset F +GLIBC_2.0 write F +GLIBC_2.0 writev F +GLIBC_2.0 xdr_accepted_reply F +GLIBC_2.0 xdr_array F +GLIBC_2.0 xdr_authunix_parms F +GLIBC_2.0 xdr_bool F +GLIBC_2.0 xdr_bytes F +GLIBC_2.0 xdr_callhdr F +GLIBC_2.0 xdr_callmsg F +GLIBC_2.0 xdr_char F +GLIBC_2.0 xdr_cryptkeyarg F +GLIBC_2.0 xdr_cryptkeyarg2 F +GLIBC_2.0 xdr_cryptkeyres F +GLIBC_2.0 xdr_des_block F +GLIBC_2.0 xdr_double F +GLIBC_2.0 xdr_enum F +GLIBC_2.0 xdr_float F +GLIBC_2.0 xdr_free F +GLIBC_2.0 xdr_int F +GLIBC_2.0 xdr_key_netstarg F +GLIBC_2.0 xdr_key_netstres F +GLIBC_2.0 xdr_keybuf F +GLIBC_2.0 xdr_keystatus F +GLIBC_2.0 xdr_long F +GLIBC_2.0 xdr_netobj F +GLIBC_2.0 xdr_opaque F +GLIBC_2.0 xdr_opaque_auth F +GLIBC_2.0 xdr_pmap F +GLIBC_2.0 xdr_pmaplist F +GLIBC_2.0 xdr_pointer F +GLIBC_2.0 xdr_reference F +GLIBC_2.0 xdr_rejected_reply F +GLIBC_2.0 xdr_replymsg F +GLIBC_2.0 xdr_rmtcall_args F +GLIBC_2.0 xdr_rmtcallres F +GLIBC_2.0 xdr_short F +GLIBC_2.0 xdr_string F +GLIBC_2.0 xdr_u_char F +GLIBC_2.0 xdr_u_int F +GLIBC_2.0 xdr_u_long F +GLIBC_2.0 xdr_u_short F +GLIBC_2.0 xdr_union F +GLIBC_2.0 xdr_vector F +GLIBC_2.0 xdr_void F +GLIBC_2.0 xdr_wrapstring F +GLIBC_2.0 xdrmem_create F +GLIBC_2.0 xdrrec_create F +GLIBC_2.0 xdrrec_endofrecord F +GLIBC_2.0 xdrrec_eof F +GLIBC_2.0 xdrrec_skiprecord F +GLIBC_2.0 xdrstdio_create F +GLIBC_2.0 xencrypt F +GLIBC_2.0 xprt_register F +GLIBC_2.0 xprt_unregister F +GLIBC_2.10 GLIBC_2.10 A +GLIBC_2.10 __cxa_at_quick_exit F +GLIBC_2.10 __posix_getopt F +GLIBC_2.10 accept4 F +GLIBC_2.10 endsgent F +GLIBC_2.10 fallocate F +GLIBC_2.10 fgetsgent F +GLIBC_2.10 fgetsgent_r F +GLIBC_2.10 getsgent F +GLIBC_2.10 getsgent_r F +GLIBC_2.10 getsgnam F +GLIBC_2.10 getsgnam_r F +GLIBC_2.10 malloc_info F +GLIBC_2.10 preadv F +GLIBC_2.10 preadv64 F +GLIBC_2.10 psiginfo F +GLIBC_2.10 putsgent F +GLIBC_2.10 pwritev F +GLIBC_2.10 pwritev64 F +GLIBC_2.10 quick_exit F +GLIBC_2.10 register_printf_modifier F +GLIBC_2.10 register_printf_specifier F +GLIBC_2.10 register_printf_type F +GLIBC_2.10 setsgent F +GLIBC_2.10 sgetsgent F +GLIBC_2.10 sgetsgent_r F +GLIBC_2.11 GLIBC_2.11 A +GLIBC_2.11 __longjmp_chk F +GLIBC_2.11 execvpe F +GLIBC_2.11 fallocate64 F +GLIBC_2.11 mkostemps F +GLIBC_2.11 mkostemps64 F +GLIBC_2.11 mkstemps F +GLIBC_2.11 mkstemps64 F +GLIBC_2.12 GLIBC_2.12 A +GLIBC_2.12 ntp_gettimex F +GLIBC_2.12 recvmmsg F +GLIBC_2.13 GLIBC_2.13 A +GLIBC_2.13 fanotify_init F +GLIBC_2.13 fanotify_mark F +GLIBC_2.13 prlimit F +GLIBC_2.13 prlimit64 F +GLIBC_2.14 GLIBC_2.14 A +GLIBC_2.14 clock_adjtime F +GLIBC_2.14 name_to_handle_at F +GLIBC_2.14 open_by_handle_at F +GLIBC_2.14 sendmmsg F +GLIBC_2.14 setns F +GLIBC_2.14 syncfs F +GLIBC_2.15 GLIBC_2.15 A +GLIBC_2.15 __fdelt_chk F +GLIBC_2.15 __fdelt_warn F +GLIBC_2.15 posix_spawn F +GLIBC_2.15 posix_spawnp F +GLIBC_2.15 process_vm_readv F +GLIBC_2.15 process_vm_writev F +GLIBC_2.15 scandirat F +GLIBC_2.15 scandirat64 F +GLIBC_2.16 GLIBC_2.16 A +GLIBC_2.16 __getauxval F +GLIBC_2.16 __poll_chk F +GLIBC_2.16 __ppoll_chk F +GLIBC_2.16 aligned_alloc F +GLIBC_2.16 c16rtomb F +GLIBC_2.16 c32rtomb F +GLIBC_2.16 getauxval F +GLIBC_2.16 mbrtoc16 F +GLIBC_2.16 mbrtoc32 F +GLIBC_2.16 timespec_get F +GLIBC_2.17 GLIBC_2.17 A +GLIBC_2.17 clock_getcpuclockid F +GLIBC_2.17 clock_getres F +GLIBC_2.17 clock_gettime F +GLIBC_2.17 clock_nanosleep F +GLIBC_2.17 clock_settime F +GLIBC_2.17 secure_getenv F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 __cxa_thread_atexit_impl F +GLIBC_2.18 __mips_fpu_getcw F +GLIBC_2.18 __mips_fpu_setcw F +GLIBC_2.19 GLIBC_2.19 A +GLIBC_2.19 getrlimit64 F +GLIBC_2.19 setrlimit64 F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 _Exit F +GLIBC_2.2 _IO_2_1_stderr_ D 0xa0 +GLIBC_2.2 _IO_2_1_stdin_ D 0xa0 +GLIBC_2.2 _IO_2_1_stdout_ D 0xa0 +GLIBC_2.2 _IO_adjust_wcolumn F +GLIBC_2.2 _IO_do_write F +GLIBC_2.2 _IO_fclose F +GLIBC_2.2 _IO_fdopen F +GLIBC_2.2 _IO_fgetpos F +GLIBC_2.2 _IO_fgetpos64 F +GLIBC_2.2 _IO_file_attach F +GLIBC_2.2 _IO_file_close_it F +GLIBC_2.2 _IO_file_finish F +GLIBC_2.2 _IO_file_fopen F +GLIBC_2.2 _IO_file_init F +GLIBC_2.2 _IO_file_overflow F +GLIBC_2.2 _IO_file_seekoff F +GLIBC_2.2 _IO_file_setbuf F +GLIBC_2.2 _IO_file_sync F +GLIBC_2.2 _IO_file_underflow F +GLIBC_2.2 _IO_file_write F +GLIBC_2.2 _IO_file_xsputn F +GLIBC_2.2 _IO_fopen F +GLIBC_2.2 _IO_free_wbackup_area F +GLIBC_2.2 _IO_fsetpos F +GLIBC_2.2 _IO_fsetpos64 F +GLIBC_2.2 _IO_getline_info F +GLIBC_2.2 _IO_init_wmarker F +GLIBC_2.2 _IO_iter_begin F +GLIBC_2.2 _IO_iter_end F +GLIBC_2.2 _IO_iter_file F +GLIBC_2.2 _IO_iter_next F +GLIBC_2.2 _IO_least_wmarker F +GLIBC_2.2 _IO_list_lock F +GLIBC_2.2 _IO_list_resetlock F +GLIBC_2.2 _IO_list_unlock F +GLIBC_2.2 _IO_popen F +GLIBC_2.2 _IO_proc_close F +GLIBC_2.2 _IO_proc_open F +GLIBC_2.2 _IO_seekwmark F +GLIBC_2.2 _IO_sputbackwc F +GLIBC_2.2 _IO_sungetwc F +GLIBC_2.2 _IO_switch_to_main_wget_area F +GLIBC_2.2 _IO_switch_to_wbackup_area F +GLIBC_2.2 _IO_switch_to_wget_mode F +GLIBC_2.2 _IO_unsave_wmarkers F +GLIBC_2.2 _IO_wdefault_doallocate F +GLIBC_2.2 _IO_wdefault_finish F +GLIBC_2.2 _IO_wdefault_pbackfail F +GLIBC_2.2 _IO_wdefault_uflow F +GLIBC_2.2 _IO_wdefault_xsgetn F +GLIBC_2.2 _IO_wdefault_xsputn F +GLIBC_2.2 _IO_wdo_write F +GLIBC_2.2 _IO_wdoallocbuf F +GLIBC_2.2 _IO_wfile_jumps D 0x54 +GLIBC_2.2 _IO_wfile_overflow F +GLIBC_2.2 _IO_wfile_seekoff F +GLIBC_2.2 _IO_wfile_sync F +GLIBC_2.2 _IO_wfile_underflow F +GLIBC_2.2 _IO_wfile_xsputn F +GLIBC_2.2 _IO_wmarker_delta F +GLIBC_2.2 _IO_wsetb F +GLIBC_2.2 __asprintf F +GLIBC_2.2 __assert F +GLIBC_2.2 __backtrace F +GLIBC_2.2 __backtrace_symbols F +GLIBC_2.2 __backtrace_symbols_fd F +GLIBC_2.2 __ctype32_tolower D 0x4 +GLIBC_2.2 __ctype32_toupper D 0x4 +GLIBC_2.2 __cxa_atexit F +GLIBC_2.2 __cxa_finalize F +GLIBC_2.2 __cyg_profile_func_enter F +GLIBC_2.2 __cyg_profile_func_exit F +GLIBC_2.2 __duplocale F +GLIBC_2.2 __endmntent F +GLIBC_2.2 __fbufsize F +GLIBC_2.2 __flbf F +GLIBC_2.2 __fpending F +GLIBC_2.2 __fpurge F +GLIBC_2.2 __freadable F +GLIBC_2.2 __freading F +GLIBC_2.2 __freelocale F +GLIBC_2.2 __fsetlocking F +GLIBC_2.2 __fwritable F +GLIBC_2.2 __fwriting F +GLIBC_2.2 __fxstat64 F +GLIBC_2.2 __getmntent_r F +GLIBC_2.2 __isalnum_l F +GLIBC_2.2 __isalpha_l F +GLIBC_2.2 __isascii_l F +GLIBC_2.2 __isblank_l F +GLIBC_2.2 __iscntrl_l F +GLIBC_2.2 __isdigit_l F +GLIBC_2.2 __isgraph_l F +GLIBC_2.2 __islower_l F +GLIBC_2.2 __isprint_l F +GLIBC_2.2 __ispunct_l F +GLIBC_2.2 __isspace_l F +GLIBC_2.2 __isupper_l F +GLIBC_2.2 __iswalnum_l F +GLIBC_2.2 __iswalpha_l F +GLIBC_2.2 __iswblank_l F +GLIBC_2.2 __iswcntrl_l F +GLIBC_2.2 __iswctype_l F +GLIBC_2.2 __iswdigit_l F +GLIBC_2.2 __iswgraph_l F +GLIBC_2.2 __iswlower_l F +GLIBC_2.2 __iswprint_l F +GLIBC_2.2 __iswpunct_l F +GLIBC_2.2 __iswspace_l F +GLIBC_2.2 __iswupper_l F +GLIBC_2.2 __iswxdigit_l F +GLIBC_2.2 __isxdigit_l F +GLIBC_2.2 __key_decryptsession_pk_LOCAL D 0x4 +GLIBC_2.2 __key_encryptsession_pk_LOCAL D 0x4 +GLIBC_2.2 __key_gendes_LOCAL D 0x4 +GLIBC_2.2 __libc_allocate_rtsig F +GLIBC_2.2 __libc_current_sigrtmax F +GLIBC_2.2 __libc_current_sigrtmin F +GLIBC_2.2 __libc_freeres F +GLIBC_2.2 __libc_sa_len F +GLIBC_2.2 __lxstat64 F +GLIBC_2.2 __mempcpy_small F +GLIBC_2.2 __newlocale F +GLIBC_2.2 __nl_langinfo_l F +GLIBC_2.2 __open64 F +GLIBC_2.2 __poll F +GLIBC_2.2 __pread64 F +GLIBC_2.2 __pwrite64 F +GLIBC_2.2 __rawmemchr F +GLIBC_2.2 __res_init F +GLIBC_2.2 __res_nclose F +GLIBC_2.2 __res_ninit F +GLIBC_2.2 __res_state F +GLIBC_2.2 __setmntent F +GLIBC_2.2 __signbit F +GLIBC_2.2 __signbitf F +GLIBC_2.2 __sigsuspend F +GLIBC_2.2 __statfs F +GLIBC_2.2 __stpcpy_small F +GLIBC_2.2 __strcasecmp_l F +GLIBC_2.2 __strcasestr F +GLIBC_2.2 __strcoll_l F +GLIBC_2.2 __strcpy_small F +GLIBC_2.2 __strcspn_c1 F +GLIBC_2.2 __strcspn_c2 F +GLIBC_2.2 __strcspn_c3 F +GLIBC_2.2 __strfmon_l F +GLIBC_2.2 __strncasecmp_l F +GLIBC_2.2 __strndup F +GLIBC_2.2 __strpbrk_c2 F +GLIBC_2.2 __strpbrk_c3 F +GLIBC_2.2 __strsep_1c F +GLIBC_2.2 __strsep_2c F +GLIBC_2.2 __strsep_3c F +GLIBC_2.2 __strsep_g F +GLIBC_2.2 __strspn_c1 F +GLIBC_2.2 __strspn_c2 F +GLIBC_2.2 __strspn_c3 F +GLIBC_2.2 __strtod_l F +GLIBC_2.2 __strtof_l F +GLIBC_2.2 __strtok_r_1c F +GLIBC_2.2 __strtol_l F +GLIBC_2.2 __strtold_l F +GLIBC_2.2 __strtoll_l F +GLIBC_2.2 __strtoul_l F +GLIBC_2.2 __strtoull_l F +GLIBC_2.2 __strverscmp F +GLIBC_2.2 __strxfrm_l F +GLIBC_2.2 __sysconf F +GLIBC_2.2 __sysctl F +GLIBC_2.2 __toascii_l F +GLIBC_2.2 __tolower_l F +GLIBC_2.2 __toupper_l F +GLIBC_2.2 __towctrans F +GLIBC_2.2 __towctrans_l F +GLIBC_2.2 __towlower_l F +GLIBC_2.2 __towupper_l F +GLIBC_2.2 __vfork F +GLIBC_2.2 __wcscasecmp_l F +GLIBC_2.2 __wcscoll_l F +GLIBC_2.2 __wcsncasecmp_l F +GLIBC_2.2 __wcstod_l F +GLIBC_2.2 __wcstof_l F +GLIBC_2.2 __wcstol_l F +GLIBC_2.2 __wcstold_l F +GLIBC_2.2 __wcstoll_l F +GLIBC_2.2 __wcstoul_l F +GLIBC_2.2 __wcstoull_l F +GLIBC_2.2 __wcsxfrm_l F +GLIBC_2.2 __wctrans_l F +GLIBC_2.2 __wctype_l F +GLIBC_2.2 __woverflow F +GLIBC_2.2 __wuflow F +GLIBC_2.2 __wunderflow F +GLIBC_2.2 __xpg_sigpause F +GLIBC_2.2 __xstat64 F +GLIBC_2.2 _authenticate F +GLIBC_2.2 _dl_mcount_wrapper F +GLIBC_2.2 _dl_mcount_wrapper_check F +GLIBC_2.2 _flushlbf F +GLIBC_2.2 _res_hconf D 0x30 +GLIBC_2.2 _sys_errlist D 0x11b8 +GLIBC_2.2 _sys_nerr D 0x4 +GLIBC_2.2 _sys_siglist D 0x100 +GLIBC_2.2 _test_and_set F +GLIBC_2.2 addseverity F +GLIBC_2.2 alphasort64 F +GLIBC_2.2 argp_err_exit_status D 0x4 +GLIBC_2.2 argp_error F +GLIBC_2.2 argp_failure F +GLIBC_2.2 argp_help F +GLIBC_2.2 argp_parse F +GLIBC_2.2 argp_program_bug_address D 0x4 +GLIBC_2.2 argp_program_version D 0x4 +GLIBC_2.2 argp_program_version_hook D 0x4 +GLIBC_2.2 argp_state_help F +GLIBC_2.2 argp_usage F +GLIBC_2.2 authdes_create F +GLIBC_2.2 authdes_getucred F +GLIBC_2.2 authdes_pk_create F +GLIBC_2.2 backtrace F +GLIBC_2.2 backtrace_symbols F +GLIBC_2.2 backtrace_symbols_fd F +GLIBC_2.2 bind_textdomain_codeset F +GLIBC_2.2 capget F +GLIBC_2.2 capset F +GLIBC_2.2 cbc_crypt F +GLIBC_2.2 clntunix_create F +GLIBC_2.2 creat64 F +GLIBC_2.2 dcngettext F +GLIBC_2.2 des_setparity F +GLIBC_2.2 dngettext F +GLIBC_2.2 ecb_crypt F +GLIBC_2.2 endutxent F +GLIBC_2.2 fattach F +GLIBC_2.2 fclose F +GLIBC_2.2 fdetach F +GLIBC_2.2 fdopen F +GLIBC_2.2 ffsl F +GLIBC_2.2 ffsll F +GLIBC_2.2 fgetc_unlocked F +GLIBC_2.2 fgetpos F +GLIBC_2.2 fgetpos64 F +GLIBC_2.2 fgets_unlocked F +GLIBC_2.2 fgetwc F +GLIBC_2.2 fgetwc_unlocked F +GLIBC_2.2 fgetws F +GLIBC_2.2 fgetws_unlocked F +GLIBC_2.2 fmemopen F +GLIBC_2.2 fmtmsg F +GLIBC_2.2 fopen F +GLIBC_2.2 fopen64 F +GLIBC_2.2 fopencookie F +GLIBC_2.2 fputs_unlocked F +GLIBC_2.2 fputwc F +GLIBC_2.2 fputwc_unlocked F +GLIBC_2.2 fputws F +GLIBC_2.2 fputws_unlocked F +GLIBC_2.2 fread_unlocked F +GLIBC_2.2 freopen64 F +GLIBC_2.2 fseeko F +GLIBC_2.2 fseeko64 F +GLIBC_2.2 fsetpos F +GLIBC_2.2 fsetpos64 F +GLIBC_2.2 fstatfs64 F +GLIBC_2.2 fstatvfs F +GLIBC_2.2 fstatvfs64 F +GLIBC_2.2 ftello F +GLIBC_2.2 ftello64 F +GLIBC_2.2 ftruncate64 F +GLIBC_2.2 ftw64 F +GLIBC_2.2 fwide F +GLIBC_2.2 fwprintf F +GLIBC_2.2 fwrite_unlocked F +GLIBC_2.2 fwscanf F +GLIBC_2.2 gai_strerror F +GLIBC_2.2 getaliasbyname_r F +GLIBC_2.2 getaliasent_r F +GLIBC_2.2 getcontext F +GLIBC_2.2 getdate F +GLIBC_2.2 getdate_err D 0x4 +GLIBC_2.2 getdate_r F +GLIBC_2.2 getdirentries64 F +GLIBC_2.2 getgrent_r F +GLIBC_2.2 getgrgid_r F +GLIBC_2.2 getgrnam_r F +GLIBC_2.2 gethostbyaddr_r F +GLIBC_2.2 gethostbyname2_r F +GLIBC_2.2 gethostbyname_r F +GLIBC_2.2 gethostent_r F +GLIBC_2.2 getloadavg F +GLIBC_2.2 getmsg F +GLIBC_2.2 getnameinfo F +GLIBC_2.2 getnetbyaddr_r F +GLIBC_2.2 getnetbyname_r F +GLIBC_2.2 getnetent_r F +GLIBC_2.2 getnetname F +GLIBC_2.2 getpmsg F +GLIBC_2.2 getprotobyname_r F +GLIBC_2.2 getprotobynumber_r F +GLIBC_2.2 getprotoent_r F +GLIBC_2.2 getpt F +GLIBC_2.2 getpwent_r F +GLIBC_2.2 getpwnam_r F +GLIBC_2.2 getpwuid_r F +GLIBC_2.2 getrlimit64 F +GLIBC_2.2 getrpcbyname_r F +GLIBC_2.2 getrpcbynumber_r F +GLIBC_2.2 getrpcent_r F +GLIBC_2.2 getservbyname_r F +GLIBC_2.2 getservbyport_r F +GLIBC_2.2 getservent_r F +GLIBC_2.2 getspent_r F +GLIBC_2.2 getspnam_r F +GLIBC_2.2 getutmp F +GLIBC_2.2 getutmpx F +GLIBC_2.2 getutxent F +GLIBC_2.2 getutxid F +GLIBC_2.2 getutxline F +GLIBC_2.2 getwc F +GLIBC_2.2 getwc_unlocked F +GLIBC_2.2 getwchar F +GLIBC_2.2 getwchar_unlocked F +GLIBC_2.2 glob64 F +GLIBC_2.2 globfree64 F +GLIBC_2.2 gnu_get_libc_release F +GLIBC_2.2 gnu_get_libc_version F +GLIBC_2.2 grantpt F +GLIBC_2.2 host2netname F +GLIBC_2.2 iconv F +GLIBC_2.2 iconv_close F +GLIBC_2.2 iconv_open F +GLIBC_2.2 if_freenameindex F +GLIBC_2.2 if_indextoname F +GLIBC_2.2 if_nameindex F +GLIBC_2.2 if_nametoindex F +GLIBC_2.2 imaxabs F +GLIBC_2.2 imaxdiv F +GLIBC_2.2 in6addr_any D 0x10 +GLIBC_2.2 in6addr_loopback D 0x10 +GLIBC_2.2 iruserok_af F +GLIBC_2.2 isastream F +GLIBC_2.2 iswblank F +GLIBC_2.2 key_decryptsession F +GLIBC_2.2 key_decryptsession_pk F +GLIBC_2.2 key_encryptsession F +GLIBC_2.2 key_encryptsession_pk F +GLIBC_2.2 key_gendes F +GLIBC_2.2 key_get_conv F +GLIBC_2.2 key_secretkey_is_set F +GLIBC_2.2 key_setnet F +GLIBC_2.2 key_setsecret F +GLIBC_2.2 localeconv F +GLIBC_2.2 lockf64 F +GLIBC_2.2 lseek64 F +GLIBC_2.2 makecontext F +GLIBC_2.2 mcheck_check_all F +GLIBC_2.2 mcheck_pedantic F +GLIBC_2.2 mempcpy F +GLIBC_2.2 memrchr F +GLIBC_2.2 mincore F +GLIBC_2.2 mkdtemp F +GLIBC_2.2 mkstemp64 F +GLIBC_2.2 mmap64 F +GLIBC_2.2 moncontrol F +GLIBC_2.2 msgctl F +GLIBC_2.2 netname2host F +GLIBC_2.2 netname2user F +GLIBC_2.2 nftw F +GLIBC_2.2 nftw64 F +GLIBC_2.2 ngettext F +GLIBC_2.2 ntp_adjtime F +GLIBC_2.2 ntp_gettime F +GLIBC_2.2 open64 F +GLIBC_2.2 passwd2des F +GLIBC_2.2 pclose F +GLIBC_2.2 popen F +GLIBC_2.2 posix_fadvise F +GLIBC_2.2 posix_fadvise64 F +GLIBC_2.2 posix_fallocate F +GLIBC_2.2 posix_fallocate64 F +GLIBC_2.2 posix_madvise F +GLIBC_2.2 posix_memalign F +GLIBC_2.2 posix_spawn F +GLIBC_2.2 posix_spawn_file_actions_addclose F +GLIBC_2.2 posix_spawn_file_actions_adddup2 F +GLIBC_2.2 posix_spawn_file_actions_addopen F +GLIBC_2.2 posix_spawn_file_actions_destroy F +GLIBC_2.2 posix_spawn_file_actions_init F +GLIBC_2.2 posix_spawnattr_destroy F +GLIBC_2.2 posix_spawnattr_getflags F +GLIBC_2.2 posix_spawnattr_getpgroup F +GLIBC_2.2 posix_spawnattr_getschedparam F +GLIBC_2.2 posix_spawnattr_getschedpolicy F +GLIBC_2.2 posix_spawnattr_getsigdefault F +GLIBC_2.2 posix_spawnattr_getsigmask F +GLIBC_2.2 posix_spawnattr_init F +GLIBC_2.2 posix_spawnattr_setflags F +GLIBC_2.2 posix_spawnattr_setpgroup F +GLIBC_2.2 posix_spawnattr_setschedparam F +GLIBC_2.2 posix_spawnattr_setschedpolicy F +GLIBC_2.2 posix_spawnattr_setsigdefault F +GLIBC_2.2 posix_spawnattr_setsigmask F +GLIBC_2.2 posix_spawnp F +GLIBC_2.2 pread F +GLIBC_2.2 pread64 F +GLIBC_2.2 printf_size F +GLIBC_2.2 printf_size_info F +GLIBC_2.2 pthread_attr_init F +GLIBC_2.2 ptsname F +GLIBC_2.2 ptsname_r F +GLIBC_2.2 putgrent F +GLIBC_2.2 putmsg F +GLIBC_2.2 putpmsg F +GLIBC_2.2 pututxline F +GLIBC_2.2 putwc F +GLIBC_2.2 putwc_unlocked F +GLIBC_2.2 putwchar F +GLIBC_2.2 putwchar_unlocked F +GLIBC_2.2 pwrite F +GLIBC_2.2 pwrite64 F +GLIBC_2.2 rawmemchr F +GLIBC_2.2 rcmd_af F +GLIBC_2.2 readdir64 F +GLIBC_2.2 readdir64_r F +GLIBC_2.2 rexec_af F +GLIBC_2.2 rresvport_af F +GLIBC_2.2 rtime F +GLIBC_2.2 ruserok_af F +GLIBC_2.2 scandir64 F +GLIBC_2.2 semctl F +GLIBC_2.2 sendfile F +GLIBC_2.2 setrlimit64 F +GLIBC_2.2 setutxent F +GLIBC_2.2 shmctl F +GLIBC_2.2 sighold F +GLIBC_2.2 sigignore F +GLIBC_2.2 sigqueue F +GLIBC_2.2 sigrelse F +GLIBC_2.2 sigset F +GLIBC_2.2 sigtimedwait F +GLIBC_2.2 sigwaitinfo F +GLIBC_2.2 statfs64 F +GLIBC_2.2 statvfs F +GLIBC_2.2 statvfs64 F +GLIBC_2.2 strcasestr F +GLIBC_2.2 strchrnul F +GLIBC_2.2 strtoimax F +GLIBC_2.2 strtoumax F +GLIBC_2.2 strverscmp F +GLIBC_2.2 svc_getreq_common F +GLIBC_2.2 svc_getreq_poll F +GLIBC_2.2 svc_max_pollfd D 0x4 +GLIBC_2.2 svc_pollfd D 0x4 +GLIBC_2.2 svcunix_create F +GLIBC_2.2 svcunixfd_create F +GLIBC_2.2 swapcontext F +GLIBC_2.2 swprintf F +GLIBC_2.2 swscanf F +GLIBC_2.2 sys_errlist D 0x11b8 +GLIBC_2.2 sys_nerr D 0x4 +GLIBC_2.2 sys_sigabbrev D 0x100 +GLIBC_2.2 sys_siglist D 0x100 +GLIBC_2.2 sysv_signal F +GLIBC_2.2 tcgetsid F +GLIBC_2.2 tdestroy F +GLIBC_2.2 tmpfile F +GLIBC_2.2 tmpfile64 F +GLIBC_2.2 truncate64 F +GLIBC_2.2 umount2 F +GLIBC_2.2 ungetwc F +GLIBC_2.2 unlockpt F +GLIBC_2.2 updwtmpx F +GLIBC_2.2 user2netname F +GLIBC_2.2 utmpxname F +GLIBC_2.2 versionsort F +GLIBC_2.2 versionsort64 F +GLIBC_2.2 vfwprintf F +GLIBC_2.2 vfwscanf F +GLIBC_2.2 vswprintf F +GLIBC_2.2 vswscanf F +GLIBC_2.2 vwprintf F +GLIBC_2.2 vwscanf F +GLIBC_2.2 waitid F +GLIBC_2.2 wcscasecmp F +GLIBC_2.2 wcschrnul F +GLIBC_2.2 wcsftime F +GLIBC_2.2 wcsncasecmp F +GLIBC_2.2 wcsnlen F +GLIBC_2.2 wcstoimax F +GLIBC_2.2 wcstoll F +GLIBC_2.2 wcstoull F +GLIBC_2.2 wcstoumax F +GLIBC_2.2 wcswcs F +GLIBC_2.2 wmempcpy F +GLIBC_2.2 wordexp F +GLIBC_2.2 wordfree F +GLIBC_2.2 wprintf F +GLIBC_2.2 wscanf F +GLIBC_2.2 xdecrypt F +GLIBC_2.2 xdr_authdes_cred F +GLIBC_2.2 xdr_authdes_verf F +GLIBC_2.2 xdr_getcredres F +GLIBC_2.2 xdr_hyper F +GLIBC_2.2 xdr_int16_t F +GLIBC_2.2 xdr_int32_t F +GLIBC_2.2 xdr_int64_t F +GLIBC_2.2 xdr_int8_t F +GLIBC_2.2 xdr_longlong_t F +GLIBC_2.2 xdr_netnamestr F +GLIBC_2.2 xdr_sizeof F +GLIBC_2.2 xdr_u_hyper F +GLIBC_2.2 xdr_u_longlong_t F +GLIBC_2.2 xdr_uint16_t F +GLIBC_2.2 xdr_uint32_t F +GLIBC_2.2 xdr_uint64_t F +GLIBC_2.2 xdr_uint8_t F +GLIBC_2.2 xdr_unixcred F +GLIBC_2.2.1 GLIBC_2.2.1 A +GLIBC_2.2.1 pivot_root F +GLIBC_2.2.1 posix_openpt F +GLIBC_2.2.2 GLIBC_2.2.2 A +GLIBC_2.2.2 __nss_hostname_digits_dots F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 __rpc_thread_createerr F +GLIBC_2.2.3 __rpc_thread_svc_fdset F +GLIBC_2.2.3 __rpc_thread_svc_max_pollfd F +GLIBC_2.2.3 __rpc_thread_svc_pollfd F +GLIBC_2.2.3 fnmatch F +GLIBC_2.2.3 sprofil F +GLIBC_2.2.4 GLIBC_2.2.4 A +GLIBC_2.2.4 dl_iterate_phdr F +GLIBC_2.2.4 getgrouplist F +GLIBC_2.2.4 sockatmark F +GLIBC_2.2.6 GLIBC_2.2.6 A +GLIBC_2.2.6 __nanosleep F +GLIBC_2.22 GLIBC_2.22 A +GLIBC_2.22 fmemopen F +GLIBC_2.23 GLIBC_2.23 A +GLIBC_2.23 fts64_children F +GLIBC_2.23 fts64_close F +GLIBC_2.23 fts64_open F +GLIBC_2.23 fts64_read F +GLIBC_2.23 fts64_set F +GLIBC_2.24 GLIBC_2.24 A +GLIBC_2.24 quick_exit F +GLIBC_2.25 GLIBC_2.25 A +GLIBC_2.25 __explicit_bzero_chk F +GLIBC_2.25 explicit_bzero F +GLIBC_2.25 getentropy F +GLIBC_2.25 getrandom F +GLIBC_2.25 strfromd F +GLIBC_2.25 strfromf F +GLIBC_2.25 strfroml F +GLIBC_2.26 GLIBC_2.26 A +GLIBC_2.26 preadv2 F +GLIBC_2.26 preadv64v2 F +GLIBC_2.26 pwritev2 F +GLIBC_2.26 pwritev64v2 F +GLIBC_2.26 reallocarray F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __ctype_b_loc F +GLIBC_2.3 __ctype_tolower_loc F +GLIBC_2.3 __ctype_toupper_loc F +GLIBC_2.3 __isctype F +GLIBC_2.3 __strftime_l F +GLIBC_2.3 __uselocale F +GLIBC_2.3 __wcsftime_l F +GLIBC_2.3 duplocale F +GLIBC_2.3 fgetxattr F +GLIBC_2.3 flistxattr F +GLIBC_2.3 freeifaddrs F +GLIBC_2.3 freelocale F +GLIBC_2.3 fremovexattr F +GLIBC_2.3 fsetxattr F +GLIBC_2.3 futimes F +GLIBC_2.3 getifaddrs F +GLIBC_2.3 getxattr F +GLIBC_2.3 isalnum_l F +GLIBC_2.3 isalpha_l F +GLIBC_2.3 isblank_l F +GLIBC_2.3 iscntrl_l F +GLIBC_2.3 isctype F +GLIBC_2.3 isdigit_l F +GLIBC_2.3 isgraph_l F +GLIBC_2.3 islower_l F +GLIBC_2.3 isprint_l F +GLIBC_2.3 ispunct_l F +GLIBC_2.3 isspace_l F +GLIBC_2.3 isupper_l F +GLIBC_2.3 iswalnum_l F +GLIBC_2.3 iswalpha_l F +GLIBC_2.3 iswblank_l F +GLIBC_2.3 iswcntrl_l F +GLIBC_2.3 iswctype_l F +GLIBC_2.3 iswdigit_l F +GLIBC_2.3 iswgraph_l F +GLIBC_2.3 iswlower_l F +GLIBC_2.3 iswprint_l F +GLIBC_2.3 iswpunct_l F +GLIBC_2.3 iswspace_l F +GLIBC_2.3 iswupper_l F +GLIBC_2.3 iswxdigit_l F +GLIBC_2.3 isxdigit_l F +GLIBC_2.3 lgetxattr F +GLIBC_2.3 listxattr F +GLIBC_2.3 llistxattr F +GLIBC_2.3 lremovexattr F +GLIBC_2.3 lsetxattr F +GLIBC_2.3 lutimes F +GLIBC_2.3 newlocale F +GLIBC_2.3 nl_langinfo_l F +GLIBC_2.3 readahead F +GLIBC_2.3 realpath F +GLIBC_2.3 removexattr F +GLIBC_2.3 sendfile64 F +GLIBC_2.3 setxattr F +GLIBC_2.3 strcasecmp_l F +GLIBC_2.3 strcoll_l F +GLIBC_2.3 strfmon_l F +GLIBC_2.3 strftime_l F +GLIBC_2.3 strncasecmp_l F +GLIBC_2.3 strtod_l F +GLIBC_2.3 strtof_l F +GLIBC_2.3 strtol_l F +GLIBC_2.3 strtold_l F +GLIBC_2.3 strtoll_l F +GLIBC_2.3 strtoul_l F +GLIBC_2.3 strtoull_l F +GLIBC_2.3 strxfrm_l F +GLIBC_2.3 tolower_l F +GLIBC_2.3 toupper_l F +GLIBC_2.3 towctrans_l F +GLIBC_2.3 towlower_l F +GLIBC_2.3 towupper_l F +GLIBC_2.3 uselocale F +GLIBC_2.3 wcscasecmp_l F +GLIBC_2.3 wcscoll_l F +GLIBC_2.3 wcsftime_l F +GLIBC_2.3 wcsncasecmp_l F +GLIBC_2.3 wcstod_l F +GLIBC_2.3 wcstof_l F +GLIBC_2.3 wcstol_l F +GLIBC_2.3 wcstold_l F +GLIBC_2.3 wcstoll_l F +GLIBC_2.3 wcstoul_l F +GLIBC_2.3 wcstoull_l F +GLIBC_2.3 wcsxfrm_l F +GLIBC_2.3 wctrans_l F +GLIBC_2.3 wctype_l F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __register_atfork F +GLIBC_2.3.2 epoll_create F +GLIBC_2.3.2 epoll_ctl F +GLIBC_2.3.2 epoll_wait F +GLIBC_2.3.2 lchmod F +GLIBC_2.3.2 pthread_cond_broadcast F +GLIBC_2.3.2 pthread_cond_destroy F +GLIBC_2.3.2 pthread_cond_init F +GLIBC_2.3.2 pthread_cond_signal F +GLIBC_2.3.2 pthread_cond_timedwait F +GLIBC_2.3.2 pthread_cond_wait F +GLIBC_2.3.2 strptime_l F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 _sys_siglist D 0x200 +GLIBC_2.3.3 gnu_dev_major F +GLIBC_2.3.3 gnu_dev_makedev F +GLIBC_2.3.3 gnu_dev_minor F +GLIBC_2.3.3 inet6_option_alloc F +GLIBC_2.3.3 inet6_option_append F +GLIBC_2.3.3 inet6_option_find F +GLIBC_2.3.3 inet6_option_init F +GLIBC_2.3.3 inet6_option_next F +GLIBC_2.3.3 inet6_option_space F +GLIBC_2.3.3 nftw F +GLIBC_2.3.3 nftw64 F +GLIBC_2.3.3 posix_fadvise64 F +GLIBC_2.3.3 posix_fallocate64 F +GLIBC_2.3.3 remap_file_pages F +GLIBC_2.3.3 sched_getaffinity F +GLIBC_2.3.3 sched_setaffinity F +GLIBC_2.3.3 semtimedop F +GLIBC_2.3.3 sys_sigabbrev D 0x200 +GLIBC_2.3.3 sys_siglist D 0x200 +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 __chk_fail F +GLIBC_2.3.4 __fprintf_chk F +GLIBC_2.3.4 __gets_chk F +GLIBC_2.3.4 __memcpy_chk F +GLIBC_2.3.4 __memmove_chk F +GLIBC_2.3.4 __mempcpy_chk F +GLIBC_2.3.4 __memset_chk F +GLIBC_2.3.4 __printf_chk F +GLIBC_2.3.4 __snprintf_chk F +GLIBC_2.3.4 __sprintf_chk F +GLIBC_2.3.4 __stpcpy_chk F +GLIBC_2.3.4 __strcat_chk F +GLIBC_2.3.4 __strcpy_chk F +GLIBC_2.3.4 __strncat_chk F +GLIBC_2.3.4 __strncpy_chk F +GLIBC_2.3.4 __vfprintf_chk F +GLIBC_2.3.4 __vprintf_chk F +GLIBC_2.3.4 __vsnprintf_chk F +GLIBC_2.3.4 __vsprintf_chk F +GLIBC_2.3.4 __xpg_strerror_r F +GLIBC_2.3.4 getipv4sourcefilter F +GLIBC_2.3.4 getsourcefilter F +GLIBC_2.3.4 regexec F +GLIBC_2.3.4 sched_getaffinity F +GLIBC_2.3.4 sched_setaffinity F +GLIBC_2.3.4 setipv4sourcefilter F +GLIBC_2.3.4 setsourcefilter F +GLIBC_2.3.4 xdr_quad_t F +GLIBC_2.3.4 xdr_u_quad_t F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __confstr_chk F +GLIBC_2.4 __fgets_chk F +GLIBC_2.4 __fgets_unlocked_chk F +GLIBC_2.4 __fgetws_chk F +GLIBC_2.4 __fgetws_unlocked_chk F +GLIBC_2.4 __fwprintf_chk F +GLIBC_2.4 __fxstatat F +GLIBC_2.4 __fxstatat64 F +GLIBC_2.4 __getcwd_chk F +GLIBC_2.4 __getdomainname_chk F +GLIBC_2.4 __getgroups_chk F +GLIBC_2.4 __gethostname_chk F +GLIBC_2.4 __getlogin_r_chk F +GLIBC_2.4 __getwd_chk F +GLIBC_2.4 __mbsnrtowcs_chk F +GLIBC_2.4 __mbsrtowcs_chk F +GLIBC_2.4 __mbstowcs_chk F +GLIBC_2.4 __pread64_chk F +GLIBC_2.4 __pread_chk F +GLIBC_2.4 __ptsname_r_chk F +GLIBC_2.4 __read_chk F +GLIBC_2.4 __readlink_chk F +GLIBC_2.4 __realpath_chk F +GLIBC_2.4 __recv_chk F +GLIBC_2.4 __recvfrom_chk F +GLIBC_2.4 __stack_chk_fail F +GLIBC_2.4 __stpncpy_chk F +GLIBC_2.4 __swprintf_chk F +GLIBC_2.4 __syslog_chk F +GLIBC_2.4 __ttyname_r_chk F +GLIBC_2.4 __vfwprintf_chk F +GLIBC_2.4 __vswprintf_chk F +GLIBC_2.4 __vsyslog_chk F +GLIBC_2.4 __vwprintf_chk F +GLIBC_2.4 __wcpcpy_chk F +GLIBC_2.4 __wcpncpy_chk F +GLIBC_2.4 __wcrtomb_chk F +GLIBC_2.4 __wcscat_chk F +GLIBC_2.4 __wcscpy_chk F +GLIBC_2.4 __wcsncat_chk F +GLIBC_2.4 __wcsncpy_chk F +GLIBC_2.4 __wcsnrtombs_chk F +GLIBC_2.4 __wcsrtombs_chk F +GLIBC_2.4 __wcstombs_chk F +GLIBC_2.4 __wctomb_chk F +GLIBC_2.4 __wmemcpy_chk F +GLIBC_2.4 __wmemmove_chk F +GLIBC_2.4 __wmempcpy_chk F +GLIBC_2.4 __wmemset_chk F +GLIBC_2.4 __wprintf_chk F +GLIBC_2.4 __xmknodat F +GLIBC_2.4 eaccess F +GLIBC_2.4 faccessat F +GLIBC_2.4 fchmodat F +GLIBC_2.4 fchownat F +GLIBC_2.4 fdopendir F +GLIBC_2.4 futimesat F +GLIBC_2.4 inotify_add_watch F +GLIBC_2.4 inotify_init F +GLIBC_2.4 inotify_rm_watch F +GLIBC_2.4 linkat F +GLIBC_2.4 mkdirat F +GLIBC_2.4 mkfifoat F +GLIBC_2.4 open_wmemstream F +GLIBC_2.4 openat F +GLIBC_2.4 openat64 F +GLIBC_2.4 ppoll F +GLIBC_2.4 readlinkat F +GLIBC_2.4 renameat F +GLIBC_2.4 symlinkat F +GLIBC_2.4 unlinkat F +GLIBC_2.4 unshare F +GLIBC_2.5 GLIBC_2.5 A +GLIBC_2.5 __readlinkat_chk F +GLIBC_2.5 inet6_opt_append F +GLIBC_2.5 inet6_opt_find F +GLIBC_2.5 inet6_opt_finish F +GLIBC_2.5 inet6_opt_get_val F +GLIBC_2.5 inet6_opt_init F +GLIBC_2.5 inet6_opt_next F +GLIBC_2.5 inet6_opt_set_val F +GLIBC_2.5 inet6_rth_add F +GLIBC_2.5 inet6_rth_getaddr F +GLIBC_2.5 inet6_rth_init F +GLIBC_2.5 inet6_rth_reverse F +GLIBC_2.5 inet6_rth_segments F +GLIBC_2.5 inet6_rth_space F +GLIBC_2.5 splice F +GLIBC_2.5 tee F +GLIBC_2.5 vmsplice F +GLIBC_2.6 GLIBC_2.6 A +GLIBC_2.6 __sched_cpucount F +GLIBC_2.6 epoll_pwait F +GLIBC_2.6 futimens F +GLIBC_2.6 sched_getcpu F +GLIBC_2.6 strerror_l F +GLIBC_2.6 sync_file_range F +GLIBC_2.6 utimensat F +GLIBC_2.7 GLIBC_2.7 A +GLIBC_2.7 __fread_chk F +GLIBC_2.7 __fread_unlocked_chk F +GLIBC_2.7 __isoc99_fscanf F +GLIBC_2.7 __isoc99_fwscanf F +GLIBC_2.7 __isoc99_scanf F +GLIBC_2.7 __isoc99_sscanf F +GLIBC_2.7 __isoc99_swscanf F +GLIBC_2.7 __isoc99_vfscanf F +GLIBC_2.7 __isoc99_vfwscanf F +GLIBC_2.7 __isoc99_vscanf F +GLIBC_2.7 __isoc99_vsscanf F +GLIBC_2.7 __isoc99_vswscanf F +GLIBC_2.7 __isoc99_vwscanf F +GLIBC_2.7 __isoc99_wscanf F +GLIBC_2.7 __open64_2 F +GLIBC_2.7 __open_2 F +GLIBC_2.7 __openat64_2 F +GLIBC_2.7 __openat_2 F +GLIBC_2.7 __sched_cpualloc F +GLIBC_2.7 __sched_cpufree F +GLIBC_2.7 eventfd F +GLIBC_2.7 eventfd_read F +GLIBC_2.7 eventfd_write F +GLIBC_2.7 mkostemp F +GLIBC_2.7 mkostemp64 F +GLIBC_2.7 signalfd F +GLIBC_2.8 GLIBC_2.8 A +GLIBC_2.8 __asprintf_chk F +GLIBC_2.8 __dprintf_chk F +GLIBC_2.8 __obstack_printf_chk F +GLIBC_2.8 __obstack_vprintf_chk F +GLIBC_2.8 __vasprintf_chk F +GLIBC_2.8 __vdprintf_chk F +GLIBC_2.8 qsort_r F +GLIBC_2.8 timerfd_create F +GLIBC_2.8 timerfd_gettime F +GLIBC_2.8 timerfd_settime F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 dup3 F +GLIBC_2.9 epoll_create1 F +GLIBC_2.9 inotify_init1 F +GLIBC_2.9 pipe2 F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c new file mode 100644 index 0000000000..0f8b3135d8 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/fxstatat.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/ld.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/ld.abilist new file mode 100644 index 0000000000..651b952524 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/ld.abilist @@ -0,0 +1,14 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _r_debug D 0x14 +GLIBC_2.0 calloc F +GLIBC_2.0 free F +GLIBC_2.0 malloc F +GLIBC_2.0 realloc F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __libc_stack_end D 0x4 +GLIBC_2.2 _dl_mcount F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __tls_get_addr F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __stack_chk_guard D 0x4 +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libBrokenLocale.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libBrokenLocale.abilist new file mode 100644 index 0000000000..8c497b477e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libBrokenLocale.abilist @@ -0,0 +1,3 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __ctype_get_mb_cur_max F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libanl.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libanl.abilist new file mode 100644 index 0000000000..bcfbf9e199 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libanl.abilist @@ -0,0 +1,6 @@ +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 gai_cancel F +GLIBC_2.2.3 gai_error F +GLIBC_2.2.3 gai_suspend F +GLIBC_2.2.3 getaddrinfo_a F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libcidn.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libcidn.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libcidn.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libcrypt.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libcrypt.abilist new file mode 100644 index 0000000000..c9d2e54530 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libcrypt.abilist @@ -0,0 +1,9 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 crypt F +GLIBC_2.0 crypt_r F +GLIBC_2.0 encrypt F +GLIBC_2.0 encrypt_r F +GLIBC_2.0 fcrypt F +GLIBC_2.0 setkey F +GLIBC_2.0 setkey_r F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libdl.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libdl.abilist new file mode 100644 index 0000000000..55f8a1e5e9 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libdl.abilist @@ -0,0 +1,15 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 dladdr F +GLIBC_2.0 dlclose F +GLIBC_2.0 dlerror F +GLIBC_2.0 dlopen F +GLIBC_2.0 dlsym F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 dlopen F +GLIBC_2.2 dlvsym F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 dladdr1 F +GLIBC_2.3.3 dlinfo F +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 dlmopen F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist new file mode 100644 index 0000000000..000c011495 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -0,0 +1,435 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _LIB_VERSION D 0x4 +GLIBC_2.0 acos F +GLIBC_2.0 acosf F +GLIBC_2.0 acosh F +GLIBC_2.0 acoshf F +GLIBC_2.0 acoshl F +GLIBC_2.0 acosl F +GLIBC_2.0 asin F +GLIBC_2.0 asinf F +GLIBC_2.0 asinh F +GLIBC_2.0 asinhf F +GLIBC_2.0 asinhl F +GLIBC_2.0 asinl F +GLIBC_2.0 atan F +GLIBC_2.0 atan2 F +GLIBC_2.0 atan2f F +GLIBC_2.0 atan2l F +GLIBC_2.0 atanf F +GLIBC_2.0 atanh F +GLIBC_2.0 atanhf F +GLIBC_2.0 atanhl F +GLIBC_2.0 atanl F +GLIBC_2.0 cbrt F +GLIBC_2.0 cbrtf F +GLIBC_2.0 cbrtl F +GLIBC_2.0 ceil F +GLIBC_2.0 ceilf F +GLIBC_2.0 ceill F +GLIBC_2.0 copysign F +GLIBC_2.0 copysignf F +GLIBC_2.0 copysignl F +GLIBC_2.0 cos F +GLIBC_2.0 cosf F +GLIBC_2.0 cosh F +GLIBC_2.0 coshf F +GLIBC_2.0 coshl F +GLIBC_2.0 cosl F +GLIBC_2.0 drem F +GLIBC_2.0 dremf F +GLIBC_2.0 dreml F +GLIBC_2.0 erf F +GLIBC_2.0 erfc F +GLIBC_2.0 erfcf F +GLIBC_2.0 erfcl F +GLIBC_2.0 erff F +GLIBC_2.0 erfl F +GLIBC_2.0 exp F +GLIBC_2.0 expf F +GLIBC_2.0 expl F +GLIBC_2.0 expm1 F +GLIBC_2.0 expm1f F +GLIBC_2.0 expm1l F +GLIBC_2.0 fabs F +GLIBC_2.0 fabsf F +GLIBC_2.0 fabsl F +GLIBC_2.0 finite F +GLIBC_2.0 finitef F +GLIBC_2.0 finitel F +GLIBC_2.0 floor F +GLIBC_2.0 floorf F +GLIBC_2.0 floorl F +GLIBC_2.0 fmod F +GLIBC_2.0 fmodf F +GLIBC_2.0 fmodl F +GLIBC_2.0 frexp F +GLIBC_2.0 frexpf F +GLIBC_2.0 frexpl F +GLIBC_2.0 gamma F +GLIBC_2.0 gammaf F +GLIBC_2.0 gammal F +GLIBC_2.0 hypot F +GLIBC_2.0 hypotf F +GLIBC_2.0 hypotl F +GLIBC_2.0 ilogb F +GLIBC_2.0 ilogbf F +GLIBC_2.0 ilogbl F +GLIBC_2.0 j0 F +GLIBC_2.0 j0f F +GLIBC_2.0 j0l F +GLIBC_2.0 j1 F +GLIBC_2.0 j1f F +GLIBC_2.0 j1l F +GLIBC_2.0 jn F +GLIBC_2.0 jnf F +GLIBC_2.0 jnl F +GLIBC_2.0 ldexp F +GLIBC_2.0 ldexpf F +GLIBC_2.0 ldexpl F +GLIBC_2.0 lgamma F +GLIBC_2.0 lgamma_r F +GLIBC_2.0 lgammaf F +GLIBC_2.0 lgammaf_r F +GLIBC_2.0 lgammal F +GLIBC_2.0 lgammal_r F +GLIBC_2.0 log F +GLIBC_2.0 log10 F +GLIBC_2.0 log10f F +GLIBC_2.0 log10l F +GLIBC_2.0 log1p F +GLIBC_2.0 log1pf F +GLIBC_2.0 log1pl F +GLIBC_2.0 logb F +GLIBC_2.0 logbf F +GLIBC_2.0 logbl F +GLIBC_2.0 logf F +GLIBC_2.0 logl F +GLIBC_2.0 matherr F +GLIBC_2.0 modf F +GLIBC_2.0 modff F +GLIBC_2.0 modfl F +GLIBC_2.0 nextafter F +GLIBC_2.0 nextafterf F +GLIBC_2.0 nextafterl F +GLIBC_2.0 pow F +GLIBC_2.0 powf F +GLIBC_2.0 powl F +GLIBC_2.0 remainder F +GLIBC_2.0 remainderf F +GLIBC_2.0 remainderl F +GLIBC_2.0 rint F +GLIBC_2.0 rintf F +GLIBC_2.0 rintl F +GLIBC_2.0 scalb F +GLIBC_2.0 scalbf F +GLIBC_2.0 scalbl F +GLIBC_2.0 scalbn F +GLIBC_2.0 scalbnf F +GLIBC_2.0 scalbnl F +GLIBC_2.0 signgam D 0x4 +GLIBC_2.0 significand F +GLIBC_2.0 significandf F +GLIBC_2.0 significandl F +GLIBC_2.0 sin F +GLIBC_2.0 sinf F +GLIBC_2.0 sinh F +GLIBC_2.0 sinhf F +GLIBC_2.0 sinhl F +GLIBC_2.0 sinl F +GLIBC_2.0 sqrt F +GLIBC_2.0 sqrtf F +GLIBC_2.0 sqrtl F +GLIBC_2.0 tan F +GLIBC_2.0 tanf F +GLIBC_2.0 tanh F +GLIBC_2.0 tanhf F +GLIBC_2.0 tanhl F +GLIBC_2.0 tanl F +GLIBC_2.0 y0 F +GLIBC_2.0 y0f F +GLIBC_2.0 y0l F +GLIBC_2.0 y1 F +GLIBC_2.0 y1f F +GLIBC_2.0 y1l F +GLIBC_2.0 yn F +GLIBC_2.0 ynf F +GLIBC_2.0 ynl F +GLIBC_2.15 GLIBC_2.15 A +GLIBC_2.15 __acos_finite F +GLIBC_2.15 __acosf_finite F +GLIBC_2.15 __acosh_finite F +GLIBC_2.15 __acoshf_finite F +GLIBC_2.15 __asin_finite F +GLIBC_2.15 __asinf_finite F +GLIBC_2.15 __atan2_finite F +GLIBC_2.15 __atan2f_finite F +GLIBC_2.15 __atanh_finite F +GLIBC_2.15 __atanhf_finite F +GLIBC_2.15 __cosh_finite F +GLIBC_2.15 __coshf_finite F +GLIBC_2.15 __exp10_finite F +GLIBC_2.15 __exp10f_finite F +GLIBC_2.15 __exp2_finite F +GLIBC_2.15 __exp2f_finite F +GLIBC_2.15 __exp_finite F +GLIBC_2.15 __expf_finite F +GLIBC_2.15 __fmod_finite F +GLIBC_2.15 __fmodf_finite F +GLIBC_2.15 __gamma_r_finite F +GLIBC_2.15 __gammaf_r_finite F +GLIBC_2.15 __hypot_finite F +GLIBC_2.15 __hypotf_finite F +GLIBC_2.15 __j0_finite F +GLIBC_2.15 __j0f_finite F +GLIBC_2.15 __j1_finite F +GLIBC_2.15 __j1f_finite F +GLIBC_2.15 __jn_finite F +GLIBC_2.15 __jnf_finite F +GLIBC_2.15 __lgamma_r_finite F +GLIBC_2.15 __lgammaf_r_finite F +GLIBC_2.15 __log10_finite F +GLIBC_2.15 __log10f_finite F +GLIBC_2.15 __log2_finite F +GLIBC_2.15 __log2f_finite F +GLIBC_2.15 __log_finite F +GLIBC_2.15 __logf_finite F +GLIBC_2.15 __pow_finite F +GLIBC_2.15 __powf_finite F +GLIBC_2.15 __remainder_finite F +GLIBC_2.15 __remainderf_finite F +GLIBC_2.15 __scalb_finite F +GLIBC_2.15 __scalbf_finite F +GLIBC_2.15 __sinh_finite F +GLIBC_2.15 __sinhf_finite F +GLIBC_2.15 __sqrt_finite F +GLIBC_2.15 __sqrtf_finite F +GLIBC_2.15 __y0_finite F +GLIBC_2.15 __y0f_finite F +GLIBC_2.15 __y1_finite F +GLIBC_2.15 __y1f_finite F +GLIBC_2.15 __yn_finite F +GLIBC_2.15 __ynf_finite F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 __issignaling F +GLIBC_2.18 __issignalingf F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __clog10 F +GLIBC_2.2 __clog10f F +GLIBC_2.2 __clog10l F +GLIBC_2.2 __finite F +GLIBC_2.2 __finitef F +GLIBC_2.2 __finitel F +GLIBC_2.2 __fpclassify F +GLIBC_2.2 __fpclassifyf F +GLIBC_2.2 __signbit F +GLIBC_2.2 __signbitf F +GLIBC_2.2 cabs F +GLIBC_2.2 cabsf F +GLIBC_2.2 cabsl F +GLIBC_2.2 cacos F +GLIBC_2.2 cacosf F +GLIBC_2.2 cacosh F +GLIBC_2.2 cacoshf F +GLIBC_2.2 cacoshl F +GLIBC_2.2 cacosl F +GLIBC_2.2 carg F +GLIBC_2.2 cargf F +GLIBC_2.2 cargl F +GLIBC_2.2 casin F +GLIBC_2.2 casinf F +GLIBC_2.2 casinh F +GLIBC_2.2 casinhf F +GLIBC_2.2 casinhl F +GLIBC_2.2 casinl F +GLIBC_2.2 catan F +GLIBC_2.2 catanf F +GLIBC_2.2 catanh F +GLIBC_2.2 catanhf F +GLIBC_2.2 catanhl F +GLIBC_2.2 catanl F +GLIBC_2.2 ccos F +GLIBC_2.2 ccosf F +GLIBC_2.2 ccosh F +GLIBC_2.2 ccoshf F +GLIBC_2.2 ccoshl F +GLIBC_2.2 ccosl F +GLIBC_2.2 cexp F +GLIBC_2.2 cexpf F +GLIBC_2.2 cexpl F +GLIBC_2.2 cimag F +GLIBC_2.2 cimagf F +GLIBC_2.2 cimagl F +GLIBC_2.2 clog F +GLIBC_2.2 clog10 F +GLIBC_2.2 clog10f F +GLIBC_2.2 clog10l F +GLIBC_2.2 clogf F +GLIBC_2.2 clogl F +GLIBC_2.2 conj F +GLIBC_2.2 conjf F +GLIBC_2.2 conjl F +GLIBC_2.2 cpow F +GLIBC_2.2 cpowf F +GLIBC_2.2 cpowl F +GLIBC_2.2 cproj F +GLIBC_2.2 cprojf F +GLIBC_2.2 cprojl F +GLIBC_2.2 creal F +GLIBC_2.2 crealf F +GLIBC_2.2 creall F +GLIBC_2.2 csin F +GLIBC_2.2 csinf F +GLIBC_2.2 csinh F +GLIBC_2.2 csinhf F +GLIBC_2.2 csinhl F +GLIBC_2.2 csinl F +GLIBC_2.2 csqrt F +GLIBC_2.2 csqrtf F +GLIBC_2.2 csqrtl F +GLIBC_2.2 ctan F +GLIBC_2.2 ctanf F +GLIBC_2.2 ctanh F +GLIBC_2.2 ctanhf F +GLIBC_2.2 ctanhl F +GLIBC_2.2 ctanl F +GLIBC_2.2 exp10 F +GLIBC_2.2 exp10f F +GLIBC_2.2 exp10l F +GLIBC_2.2 exp2 F +GLIBC_2.2 exp2f F +GLIBC_2.2 fdim F +GLIBC_2.2 fdimf F +GLIBC_2.2 fdiml F +GLIBC_2.2 feclearexcept F +GLIBC_2.2 fedisableexcept F +GLIBC_2.2 feenableexcept F +GLIBC_2.2 fegetenv F +GLIBC_2.2 fegetexcept F +GLIBC_2.2 fegetexceptflag F +GLIBC_2.2 fegetround F +GLIBC_2.2 feholdexcept F +GLIBC_2.2 feraiseexcept F +GLIBC_2.2 fesetenv F +GLIBC_2.2 fesetexceptflag F +GLIBC_2.2 fesetround F +GLIBC_2.2 fetestexcept F +GLIBC_2.2 feupdateenv F +GLIBC_2.2 fma F +GLIBC_2.2 fmaf F +GLIBC_2.2 fmal F +GLIBC_2.2 fmax F +GLIBC_2.2 fmaxf F +GLIBC_2.2 fmaxl F +GLIBC_2.2 fmin F +GLIBC_2.2 fminf F +GLIBC_2.2 fminl F +GLIBC_2.2 llrint F +GLIBC_2.2 llrintf F +GLIBC_2.2 llrintl F +GLIBC_2.2 llround F +GLIBC_2.2 llroundf F +GLIBC_2.2 llroundl F +GLIBC_2.2 log2 F +GLIBC_2.2 log2f F +GLIBC_2.2 log2l F +GLIBC_2.2 lrint F +GLIBC_2.2 lrintf F +GLIBC_2.2 lrintl F +GLIBC_2.2 lround F +GLIBC_2.2 lroundf F +GLIBC_2.2 lroundl F +GLIBC_2.2 nan F +GLIBC_2.2 nanf F +GLIBC_2.2 nanl F +GLIBC_2.2 nearbyint F +GLIBC_2.2 nearbyintf F +GLIBC_2.2 nearbyintl F +GLIBC_2.2 nexttoward F +GLIBC_2.2 nexttowardf F +GLIBC_2.2 nexttowardl F +GLIBC_2.2 pow10 F +GLIBC_2.2 pow10f F +GLIBC_2.2 pow10l F +GLIBC_2.2 remquo F +GLIBC_2.2 remquof F +GLIBC_2.2 remquol F +GLIBC_2.2 round F +GLIBC_2.2 roundf F +GLIBC_2.2 roundl F +GLIBC_2.2 scalbln F +GLIBC_2.2 scalblnf F +GLIBC_2.2 scalblnl F +GLIBC_2.2 sincos F +GLIBC_2.2 sincosf F +GLIBC_2.2 sincosl F +GLIBC_2.2 tgamma F +GLIBC_2.2 tgammaf F +GLIBC_2.2 tgammal F +GLIBC_2.2 trunc F +GLIBC_2.2 truncf F +GLIBC_2.2 truncl F +GLIBC_2.23 GLIBC_2.23 A +GLIBC_2.23 __signgam D 0x4 +GLIBC_2.23 lgamma F +GLIBC_2.23 lgammaf F +GLIBC_2.23 lgammal F +GLIBC_2.24 GLIBC_2.24 A +GLIBC_2.24 nextdown F +GLIBC_2.24 nextdownf F +GLIBC_2.24 nextdownl F +GLIBC_2.24 nextup F +GLIBC_2.24 nextupf F +GLIBC_2.24 nextupl F +GLIBC_2.25 GLIBC_2.25 A +GLIBC_2.25 __iseqsig F +GLIBC_2.25 __iseqsigf F +GLIBC_2.25 canonicalize F +GLIBC_2.25 canonicalizef F +GLIBC_2.25 canonicalizel F +GLIBC_2.25 fegetmode F +GLIBC_2.25 fesetexcept F +GLIBC_2.25 fesetmode F +GLIBC_2.25 fetestexceptflag F +GLIBC_2.25 fmaxmag F +GLIBC_2.25 fmaxmagf F +GLIBC_2.25 fmaxmagl F +GLIBC_2.25 fminmag F +GLIBC_2.25 fminmagf F +GLIBC_2.25 fminmagl F +GLIBC_2.25 fromfp F +GLIBC_2.25 fromfpf F +GLIBC_2.25 fromfpl F +GLIBC_2.25 fromfpx F +GLIBC_2.25 fromfpxf F +GLIBC_2.25 fromfpxl F +GLIBC_2.25 getpayload F +GLIBC_2.25 getpayloadf F +GLIBC_2.25 getpayloadl F +GLIBC_2.25 llogb F +GLIBC_2.25 llogbf F +GLIBC_2.25 llogbl F +GLIBC_2.25 roundeven F +GLIBC_2.25 roundevenf F +GLIBC_2.25 roundevenl F +GLIBC_2.25 setpayload F +GLIBC_2.25 setpayloadf F +GLIBC_2.25 setpayloadl F +GLIBC_2.25 setpayloadsig F +GLIBC_2.25 setpayloadsigf F +GLIBC_2.25 setpayloadsigl F +GLIBC_2.25 totalorder F +GLIBC_2.25 totalorderf F +GLIBC_2.25 totalorderl F +GLIBC_2.25 totalordermag F +GLIBC_2.25 totalordermagf F +GLIBC_2.25 totalordermagl F +GLIBC_2.25 ufromfp F +GLIBC_2.25 ufromfpf F +GLIBC_2.25 ufromfpl F +GLIBC_2.25 ufromfpx F +GLIBC_2.25 ufromfpxf F +GLIBC_2.25 ufromfpxl F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 exp2l F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnsl.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnsl.abilist new file mode 100644 index 0000000000..53b4608235 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnsl.abilist @@ -0,0 +1,124 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __yp_check F +GLIBC_2.0 xdr_domainname F +GLIBC_2.0 xdr_keydat F +GLIBC_2.0 xdr_mapname F +GLIBC_2.0 xdr_peername F +GLIBC_2.0 xdr_valdat F +GLIBC_2.0 xdr_yp_buf F +GLIBC_2.0 xdr_ypbind_binding F +GLIBC_2.0 xdr_ypbind_resp F +GLIBC_2.0 xdr_ypbind_resptype F +GLIBC_2.0 xdr_ypbind_setdom F +GLIBC_2.0 xdr_ypdelete_args F +GLIBC_2.0 xdr_ypmap_parms F +GLIBC_2.0 xdr_ypmaplist F +GLIBC_2.0 xdr_yppush_status F +GLIBC_2.0 xdr_yppushresp_xfr F +GLIBC_2.0 xdr_ypreq_key F +GLIBC_2.0 xdr_ypreq_nokey F +GLIBC_2.0 xdr_ypreq_xfr F +GLIBC_2.0 xdr_ypresp_all F +GLIBC_2.0 xdr_ypresp_key_val F +GLIBC_2.0 xdr_ypresp_maplist F +GLIBC_2.0 xdr_ypresp_master F +GLIBC_2.0 xdr_ypresp_order F +GLIBC_2.0 xdr_ypresp_val F +GLIBC_2.0 xdr_ypresp_xfr F +GLIBC_2.0 xdr_ypstat F +GLIBC_2.0 xdr_ypupdate_args F +GLIBC_2.0 xdr_ypxfrstat F +GLIBC_2.0 yp_all F +GLIBC_2.0 yp_bind F +GLIBC_2.0 yp_first F +GLIBC_2.0 yp_get_default_domain F +GLIBC_2.0 yp_maplist F +GLIBC_2.0 yp_master F +GLIBC_2.0 yp_match F +GLIBC_2.0 yp_next F +GLIBC_2.0 yp_order F +GLIBC_2.0 yp_unbind F +GLIBC_2.0 yp_update F +GLIBC_2.0 ypbinderr_string F +GLIBC_2.0 yperr_string F +GLIBC_2.0 ypprot_err F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __free_fdresult F +GLIBC_2.2 __nis_default_access F +GLIBC_2.2 __nis_default_group F +GLIBC_2.2 __nis_default_owner F +GLIBC_2.2 __nis_default_ttl F +GLIBC_2.2 __nis_finddirectory F +GLIBC_2.2 __nis_hash F +GLIBC_2.2 __nisbind_connect F +GLIBC_2.2 __nisbind_create F +GLIBC_2.2 __nisbind_destroy F +GLIBC_2.2 __nisbind_next F +GLIBC_2.2 nis_add F +GLIBC_2.2 nis_add_entry F +GLIBC_2.2 nis_addmember F +GLIBC_2.2 nis_checkpoint F +GLIBC_2.2 nis_clone_directory F +GLIBC_2.2 nis_clone_object F +GLIBC_2.2 nis_clone_result F +GLIBC_2.2 nis_creategroup F +GLIBC_2.2 nis_destroy_object F +GLIBC_2.2 nis_destroygroup F +GLIBC_2.2 nis_dir_cmp F +GLIBC_2.2 nis_domain_of F +GLIBC_2.2 nis_domain_of_r F +GLIBC_2.2 nis_first_entry F +GLIBC_2.2 nis_free_directory F +GLIBC_2.2 nis_free_object F +GLIBC_2.2 nis_free_request F +GLIBC_2.2 nis_freenames F +GLIBC_2.2 nis_freeresult F +GLIBC_2.2 nis_freeservlist F +GLIBC_2.2 nis_freetags F +GLIBC_2.2 nis_getnames F +GLIBC_2.2 nis_getservlist F +GLIBC_2.2 nis_ismember F +GLIBC_2.2 nis_leaf_of F +GLIBC_2.2 nis_leaf_of_r F +GLIBC_2.2 nis_lerror F +GLIBC_2.2 nis_list F +GLIBC_2.2 nis_local_directory F +GLIBC_2.2 nis_local_group F +GLIBC_2.2 nis_local_host F +GLIBC_2.2 nis_local_principal F +GLIBC_2.2 nis_lookup F +GLIBC_2.2 nis_mkdir F +GLIBC_2.2 nis_modify F +GLIBC_2.2 nis_modify_entry F +GLIBC_2.2 nis_name_of F +GLIBC_2.2 nis_name_of_r F +GLIBC_2.2 nis_next_entry F +GLIBC_2.2 nis_perror F +GLIBC_2.2 nis_ping F +GLIBC_2.2 nis_print_directory F +GLIBC_2.2 nis_print_entry F +GLIBC_2.2 nis_print_group F +GLIBC_2.2 nis_print_group_entry F +GLIBC_2.2 nis_print_link F +GLIBC_2.2 nis_print_object F +GLIBC_2.2 nis_print_result F +GLIBC_2.2 nis_print_rights F +GLIBC_2.2 nis_print_table F +GLIBC_2.2 nis_read_obj F +GLIBC_2.2 nis_remove F +GLIBC_2.2 nis_remove_entry F +GLIBC_2.2 nis_removemember F +GLIBC_2.2 nis_rmdir F +GLIBC_2.2 nis_servstate F +GLIBC_2.2 nis_sperrno F +GLIBC_2.2 nis_sperror F +GLIBC_2.2 nis_sperror_r F +GLIBC_2.2 nis_stats F +GLIBC_2.2 nis_verifygroup F +GLIBC_2.2 nis_write_obj F +GLIBC_2.2 readColdStartFile F +GLIBC_2.2 writeColdStartFile F +GLIBC_2.2 xdr_cback_data F +GLIBC_2.2 xdr_obj_p F +GLIBC_2.2 xdr_ypall F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_compat.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_compat.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_compat.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_db.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_db.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_db.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_dns.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_dns.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_dns.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_files.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_files.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_files.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_hesiod.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_hesiod.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_hesiod.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_nis.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_nis.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_nis.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_nisplus.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_nisplus.abilist new file mode 100644 index 0000000000..db6b02789d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libnss_nisplus.abilist @@ -0,0 +1 @@ +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist new file mode 100644 index 0000000000..280d99d974 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist @@ -0,0 +1,257 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _IO_flockfile F +GLIBC_2.0 _IO_ftrylockfile F +GLIBC_2.0 _IO_funlockfile F +GLIBC_2.0 __close F +GLIBC_2.0 __connect F +GLIBC_2.0 __errno_location F +GLIBC_2.0 __fcntl F +GLIBC_2.0 __fork F +GLIBC_2.0 __h_errno_location F +GLIBC_2.0 __lseek F +GLIBC_2.0 __open F +GLIBC_2.0 __pthread_getspecific F +GLIBC_2.0 __pthread_key_create F +GLIBC_2.0 __pthread_mutex_destroy F +GLIBC_2.0 __pthread_mutex_init F +GLIBC_2.0 __pthread_mutex_lock F +GLIBC_2.0 __pthread_mutex_trylock F +GLIBC_2.0 __pthread_mutex_unlock F +GLIBC_2.0 __pthread_mutexattr_destroy F +GLIBC_2.0 __pthread_mutexattr_init F +GLIBC_2.0 __pthread_mutexattr_settype F +GLIBC_2.0 __pthread_once F +GLIBC_2.0 __pthread_setspecific F +GLIBC_2.0 __read F +GLIBC_2.0 __send F +GLIBC_2.0 __sigaction F +GLIBC_2.0 __wait F +GLIBC_2.0 __write F +GLIBC_2.0 _pthread_cleanup_pop F +GLIBC_2.0 _pthread_cleanup_pop_restore F +GLIBC_2.0 _pthread_cleanup_push F +GLIBC_2.0 _pthread_cleanup_push_defer F +GLIBC_2.0 accept F +GLIBC_2.0 close F +GLIBC_2.0 connect F +GLIBC_2.0 fcntl F +GLIBC_2.0 flockfile F +GLIBC_2.0 fork F +GLIBC_2.0 fsync F +GLIBC_2.0 ftrylockfile F +GLIBC_2.0 funlockfile F +GLIBC_2.0 longjmp F +GLIBC_2.0 lseek F +GLIBC_2.0 msync F +GLIBC_2.0 nanosleep F +GLIBC_2.0 open F +GLIBC_2.0 pause F +GLIBC_2.0 pthread_atfork F +GLIBC_2.0 pthread_attr_destroy F +GLIBC_2.0 pthread_attr_getdetachstate F +GLIBC_2.0 pthread_attr_getinheritsched F +GLIBC_2.0 pthread_attr_getschedparam F +GLIBC_2.0 pthread_attr_getschedpolicy F +GLIBC_2.0 pthread_attr_getscope F +GLIBC_2.0 pthread_attr_init F +GLIBC_2.0 pthread_attr_setdetachstate F +GLIBC_2.0 pthread_attr_setinheritsched F +GLIBC_2.0 pthread_attr_setschedparam F +GLIBC_2.0 pthread_attr_setschedpolicy F +GLIBC_2.0 pthread_attr_setscope F +GLIBC_2.0 pthread_cancel F +GLIBC_2.0 pthread_cond_broadcast F +GLIBC_2.0 pthread_cond_destroy F +GLIBC_2.0 pthread_cond_init F +GLIBC_2.0 pthread_cond_signal F +GLIBC_2.0 pthread_cond_timedwait F +GLIBC_2.0 pthread_cond_wait F +GLIBC_2.0 pthread_condattr_destroy F +GLIBC_2.0 pthread_condattr_init F +GLIBC_2.0 pthread_create F +GLIBC_2.0 pthread_detach F +GLIBC_2.0 pthread_equal F +GLIBC_2.0 pthread_exit F +GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_getspecific F +GLIBC_2.0 pthread_join F +GLIBC_2.0 pthread_key_create F +GLIBC_2.0 pthread_key_delete F +GLIBC_2.0 pthread_kill F +GLIBC_2.0 pthread_kill_other_threads_np F +GLIBC_2.0 pthread_mutex_destroy F +GLIBC_2.0 pthread_mutex_init F +GLIBC_2.0 pthread_mutex_lock F +GLIBC_2.0 pthread_mutex_trylock F +GLIBC_2.0 pthread_mutex_unlock F +GLIBC_2.0 pthread_mutexattr_destroy F +GLIBC_2.0 pthread_mutexattr_getkind_np F +GLIBC_2.0 pthread_mutexattr_init F +GLIBC_2.0 pthread_mutexattr_setkind_np F +GLIBC_2.0 pthread_once F +GLIBC_2.0 pthread_self F +GLIBC_2.0 pthread_setcancelstate F +GLIBC_2.0 pthread_setcanceltype F +GLIBC_2.0 pthread_setschedparam F +GLIBC_2.0 pthread_setspecific F +GLIBC_2.0 pthread_sigmask F +GLIBC_2.0 pthread_testcancel F +GLIBC_2.0 raise F +GLIBC_2.0 read F +GLIBC_2.0 recv F +GLIBC_2.0 recvfrom F +GLIBC_2.0 recvmsg F +GLIBC_2.0 sem_destroy F +GLIBC_2.0 sem_getvalue F +GLIBC_2.0 sem_init F +GLIBC_2.0 sem_post F +GLIBC_2.0 sem_trywait F +GLIBC_2.0 sem_wait F +GLIBC_2.0 send F +GLIBC_2.0 sendmsg F +GLIBC_2.0 sendto F +GLIBC_2.0 sigaction F +GLIBC_2.0 siglongjmp F +GLIBC_2.0 sigwait F +GLIBC_2.0 system F +GLIBC_2.0 tcdrain F +GLIBC_2.0 vfork F +GLIBC_2.0 wait F +GLIBC_2.0 waitpid F +GLIBC_2.0 write F +GLIBC_2.11 GLIBC_2.11 A +GLIBC_2.11 pthread_sigqueue F +GLIBC_2.12 GLIBC_2.12 A +GLIBC_2.12 pthread_getname_np F +GLIBC_2.12 pthread_mutex_consistent F +GLIBC_2.12 pthread_mutexattr_getrobust F +GLIBC_2.12 pthread_mutexattr_setrobust F +GLIBC_2.12 pthread_setname_np F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 pthread_getattr_default_np F +GLIBC_2.18 pthread_setattr_default_np F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __libc_allocate_rtsig F +GLIBC_2.2 __libc_current_sigrtmax F +GLIBC_2.2 __libc_current_sigrtmin F +GLIBC_2.2 __open64 F +GLIBC_2.2 __pread64 F +GLIBC_2.2 __pthread_rwlock_destroy F +GLIBC_2.2 __pthread_rwlock_init F +GLIBC_2.2 __pthread_rwlock_rdlock F +GLIBC_2.2 __pthread_rwlock_tryrdlock F +GLIBC_2.2 __pthread_rwlock_trywrlock F +GLIBC_2.2 __pthread_rwlock_unlock F +GLIBC_2.2 __pthread_rwlock_wrlock F +GLIBC_2.2 __pwrite64 F +GLIBC_2.2 __res_state F +GLIBC_2.2 __vfork F +GLIBC_2.2 lseek64 F +GLIBC_2.2 open64 F +GLIBC_2.2 pread F +GLIBC_2.2 pread64 F +GLIBC_2.2 pthread_attr_getguardsize F +GLIBC_2.2 pthread_attr_getstack F +GLIBC_2.2 pthread_attr_getstackaddr F +GLIBC_2.2 pthread_attr_getstacksize F +GLIBC_2.2 pthread_attr_init F +GLIBC_2.2 pthread_attr_setguardsize F +GLIBC_2.2 pthread_attr_setstack F +GLIBC_2.2 pthread_attr_setstackaddr F +GLIBC_2.2 pthread_attr_setstacksize F +GLIBC_2.2 pthread_barrier_destroy F +GLIBC_2.2 pthread_barrier_init F +GLIBC_2.2 pthread_barrier_wait F +GLIBC_2.2 pthread_barrierattr_destroy F +GLIBC_2.2 pthread_barrierattr_init F +GLIBC_2.2 pthread_barrierattr_setpshared F +GLIBC_2.2 pthread_condattr_getpshared F +GLIBC_2.2 pthread_condattr_setpshared F +GLIBC_2.2 pthread_create F +GLIBC_2.2 pthread_getconcurrency F +GLIBC_2.2 pthread_getcpuclockid F +GLIBC_2.2 pthread_mutex_timedlock F +GLIBC_2.2 pthread_mutexattr_getpshared F +GLIBC_2.2 pthread_mutexattr_gettype F +GLIBC_2.2 pthread_mutexattr_setpshared F +GLIBC_2.2 pthread_mutexattr_settype F +GLIBC_2.2 pthread_rwlock_destroy F +GLIBC_2.2 pthread_rwlock_init F +GLIBC_2.2 pthread_rwlock_rdlock F +GLIBC_2.2 pthread_rwlock_timedrdlock F +GLIBC_2.2 pthread_rwlock_timedwrlock F +GLIBC_2.2 pthread_rwlock_tryrdlock F +GLIBC_2.2 pthread_rwlock_trywrlock F +GLIBC_2.2 pthread_rwlock_unlock F +GLIBC_2.2 pthread_rwlock_wrlock F +GLIBC_2.2 pthread_rwlockattr_destroy F +GLIBC_2.2 pthread_rwlockattr_getkind_np F +GLIBC_2.2 pthread_rwlockattr_getpshared F +GLIBC_2.2 pthread_rwlockattr_init F +GLIBC_2.2 pthread_rwlockattr_setkind_np F +GLIBC_2.2 pthread_rwlockattr_setpshared F +GLIBC_2.2 pthread_setconcurrency F +GLIBC_2.2 pthread_spin_destroy F +GLIBC_2.2 pthread_spin_init F +GLIBC_2.2 pthread_spin_lock F +GLIBC_2.2 pthread_spin_trylock F +GLIBC_2.2 pthread_spin_unlock F +GLIBC_2.2 pthread_yield F +GLIBC_2.2 pwrite F +GLIBC_2.2 pwrite64 F +GLIBC_2.2 sem_close F +GLIBC_2.2 sem_destroy F +GLIBC_2.2 sem_getvalue F +GLIBC_2.2 sem_init F +GLIBC_2.2 sem_open F +GLIBC_2.2 sem_post F +GLIBC_2.2 sem_timedwait F +GLIBC_2.2 sem_trywait F +GLIBC_2.2 sem_unlink F +GLIBC_2.2 sem_wait F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 pthread_getattr_np F +GLIBC_2.2.6 GLIBC_2.2.6 A +GLIBC_2.2.6 __nanosleep F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 pthread_cond_broadcast F +GLIBC_2.3.2 pthread_cond_destroy F +GLIBC_2.3.2 pthread_cond_init F +GLIBC_2.3.2 pthread_cond_signal F +GLIBC_2.3.2 pthread_cond_timedwait F +GLIBC_2.3.2 pthread_cond_wait F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 __pthread_cleanup_routine F +GLIBC_2.3.3 __pthread_register_cancel F +GLIBC_2.3.3 __pthread_register_cancel_defer F +GLIBC_2.3.3 __pthread_unregister_cancel F +GLIBC_2.3.3 __pthread_unregister_cancel_restore F +GLIBC_2.3.3 __pthread_unwind_next F +GLIBC_2.3.3 pthread_attr_getaffinity_np F +GLIBC_2.3.3 pthread_attr_setaffinity_np F +GLIBC_2.3.3 pthread_attr_setstack F +GLIBC_2.3.3 pthread_attr_setstacksize F +GLIBC_2.3.3 pthread_barrierattr_getpshared F +GLIBC_2.3.3 pthread_condattr_getclock F +GLIBC_2.3.3 pthread_condattr_setclock F +GLIBC_2.3.3 pthread_getaffinity_np F +GLIBC_2.3.3 pthread_setaffinity_np F +GLIBC_2.3.3 pthread_timedjoin_np F +GLIBC_2.3.3 pthread_tryjoin_np F +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 pthread_attr_getaffinity_np F +GLIBC_2.3.4 pthread_attr_setaffinity_np F +GLIBC_2.3.4 pthread_getaffinity_np F +GLIBC_2.3.4 pthread_setaffinity_np F +GLIBC_2.3.4 pthread_setschedprio F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 pthread_mutex_consistent_np F +GLIBC_2.4 pthread_mutex_getprioceiling F +GLIBC_2.4 pthread_mutex_setprioceiling F +GLIBC_2.4 pthread_mutexattr_getprioceiling F +GLIBC_2.4 pthread_mutexattr_getprotocol F +GLIBC_2.4 pthread_mutexattr_getrobust_np F +GLIBC_2.4 pthread_mutexattr_setprioceiling F +GLIBC_2.4 pthread_mutexattr_setprotocol F +GLIBC_2.4 pthread_mutexattr_setrobust_np F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libresolv.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libresolv.abilist new file mode 100644 index 0000000000..1f89eb6cd9 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libresolv.abilist @@ -0,0 +1,101 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __b64_ntop F +GLIBC_2.0 __b64_pton F +GLIBC_2.0 __dn_comp F +GLIBC_2.0 __dn_count_labels F +GLIBC_2.0 __dn_skipname F +GLIBC_2.0 __fp_nquery F +GLIBC_2.0 __fp_query F +GLIBC_2.0 __fp_resstat F +GLIBC_2.0 __hostalias F +GLIBC_2.0 __loc_aton F +GLIBC_2.0 __loc_ntoa F +GLIBC_2.0 __p_cdname F +GLIBC_2.0 __p_cdnname F +GLIBC_2.0 __p_class F +GLIBC_2.0 __p_class_syms D 0x54 +GLIBC_2.0 __p_fqname F +GLIBC_2.0 __p_fqnname F +GLIBC_2.0 __p_option F +GLIBC_2.0 __p_query F +GLIBC_2.0 __p_secstodate F +GLIBC_2.0 __p_time F +GLIBC_2.0 __p_type F +GLIBC_2.0 __p_type_syms D 0x228 +GLIBC_2.0 __putlong F +GLIBC_2.0 __putshort F +GLIBC_2.0 __res_close F +GLIBC_2.0 __res_dnok F +GLIBC_2.0 __res_hnok F +GLIBC_2.0 __res_isourserver F +GLIBC_2.0 __res_mailok F +GLIBC_2.0 __res_nameinquery F +GLIBC_2.0 __res_ownok F +GLIBC_2.0 __res_queriesmatch F +GLIBC_2.0 __res_send F +GLIBC_2.0 __sym_ntop F +GLIBC_2.0 __sym_ntos F +GLIBC_2.0 __sym_ston F +GLIBC_2.0 _gethtbyaddr F +GLIBC_2.0 _gethtbyname F +GLIBC_2.0 _gethtbyname2 F +GLIBC_2.0 _gethtent F +GLIBC_2.0 _getlong F +GLIBC_2.0 _getshort F +GLIBC_2.0 _res_opcodes D 0x40 +GLIBC_2.0 _sethtent F +GLIBC_2.0 dn_expand F +GLIBC_2.0 inet_net_ntop F +GLIBC_2.0 inet_net_pton F +GLIBC_2.0 inet_neta F +GLIBC_2.0 res_gethostbyaddr F +GLIBC_2.0 res_gethostbyname F +GLIBC_2.0 res_gethostbyname2 F +GLIBC_2.0 res_mkquery F +GLIBC_2.0 res_query F +GLIBC_2.0 res_querydomain F +GLIBC_2.0 res_search F +GLIBC_2.0 res_send_setqhook F +GLIBC_2.0 res_send_setrhook F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __dn_expand F +GLIBC_2.2 __res_hostalias F +GLIBC_2.2 __res_mkquery F +GLIBC_2.2 __res_nmkquery F +GLIBC_2.2 __res_nquery F +GLIBC_2.2 __res_nquerydomain F +GLIBC_2.2 __res_nsearch F +GLIBC_2.2 __res_nsend F +GLIBC_2.2 __res_query F +GLIBC_2.2 __res_querydomain F +GLIBC_2.2 __res_search F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __p_rcode F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 ns_datetosecs F +GLIBC_2.9 ns_format_ttl F +GLIBC_2.9 ns_get16 F +GLIBC_2.9 ns_get32 F +GLIBC_2.9 ns_initparse F +GLIBC_2.9 ns_makecanon F +GLIBC_2.9 ns_msg_getflag F +GLIBC_2.9 ns_name_compress F +GLIBC_2.9 ns_name_ntol F +GLIBC_2.9 ns_name_ntop F +GLIBC_2.9 ns_name_pack F +GLIBC_2.9 ns_name_pton F +GLIBC_2.9 ns_name_rollback F +GLIBC_2.9 ns_name_skip F +GLIBC_2.9 ns_name_uncompress F +GLIBC_2.9 ns_name_unpack F +GLIBC_2.9 ns_parse_ttl F +GLIBC_2.9 ns_parserr F +GLIBC_2.9 ns_put16 F +GLIBC_2.9 ns_put32 F +GLIBC_2.9 ns_samedomain F +GLIBC_2.9 ns_samename F +GLIBC_2.9 ns_skiprr F +GLIBC_2.9 ns_sprintrr F +GLIBC_2.9 ns_sprintrrf F +GLIBC_2.9 ns_subdomain F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist new file mode 100644 index 0000000000..61f63e1524 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist @@ -0,0 +1,47 @@ +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 aio_cancel F +GLIBC_2.2 aio_cancel64 F +GLIBC_2.2 aio_error F +GLIBC_2.2 aio_error64 F +GLIBC_2.2 aio_fsync F +GLIBC_2.2 aio_fsync64 F +GLIBC_2.2 aio_init F +GLIBC_2.2 aio_read F +GLIBC_2.2 aio_read64 F +GLIBC_2.2 aio_return F +GLIBC_2.2 aio_return64 F +GLIBC_2.2 aio_suspend F +GLIBC_2.2 aio_suspend64 F +GLIBC_2.2 aio_write F +GLIBC_2.2 aio_write64 F +GLIBC_2.2 clock_getcpuclockid F +GLIBC_2.2 clock_getres F +GLIBC_2.2 clock_gettime F +GLIBC_2.2 clock_nanosleep F +GLIBC_2.2 clock_settime F +GLIBC_2.2 lio_listio F +GLIBC_2.2 lio_listio64 F +GLIBC_2.2 shm_open F +GLIBC_2.2 shm_unlink F +GLIBC_2.2 timer_create F +GLIBC_2.2 timer_delete F +GLIBC_2.2 timer_getoverrun F +GLIBC_2.2 timer_gettime F +GLIBC_2.2 timer_settime F +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 mq_close F +GLIBC_2.3.4 mq_getattr F +GLIBC_2.3.4 mq_notify F +GLIBC_2.3.4 mq_open F +GLIBC_2.3.4 mq_receive F +GLIBC_2.3.4 mq_send F +GLIBC_2.3.4 mq_setattr F +GLIBC_2.3.4 mq_timedreceive F +GLIBC_2.3.4 mq_timedsend F +GLIBC_2.3.4 mq_unlink F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 lio_listio F +GLIBC_2.4 lio_listio64 F +GLIBC_2.7 GLIBC_2.7 A +GLIBC_2.7 __mq_open_2 F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libthread_db.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libthread_db.abilist new file mode 100644 index 0000000000..e47140b61c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libthread_db.abilist @@ -0,0 +1,45 @@ +GLIBC_2.1.3 GLIBC_2.1.3 A +GLIBC_2.1.3 td_init F +GLIBC_2.1.3 td_log F +GLIBC_2.1.3 td_ta_clear_event F +GLIBC_2.1.3 td_ta_delete F +GLIBC_2.1.3 td_ta_enable_stats F +GLIBC_2.1.3 td_ta_event_addr F +GLIBC_2.1.3 td_ta_event_getmsg F +GLIBC_2.1.3 td_ta_get_nthreads F +GLIBC_2.1.3 td_ta_get_ph F +GLIBC_2.1.3 td_ta_get_stats F +GLIBC_2.1.3 td_ta_map_id2thr F +GLIBC_2.1.3 td_ta_map_lwp2thr F +GLIBC_2.1.3 td_ta_new F +GLIBC_2.1.3 td_ta_reset_stats F +GLIBC_2.1.3 td_ta_set_event F +GLIBC_2.1.3 td_ta_setconcurrency F +GLIBC_2.1.3 td_ta_thr_iter F +GLIBC_2.1.3 td_ta_tsd_iter F +GLIBC_2.1.3 td_thr_clear_event F +GLIBC_2.1.3 td_thr_dbresume F +GLIBC_2.1.3 td_thr_dbsuspend F +GLIBC_2.1.3 td_thr_event_enable F +GLIBC_2.1.3 td_thr_event_getmsg F +GLIBC_2.1.3 td_thr_get_info F +GLIBC_2.1.3 td_thr_getfpregs F +GLIBC_2.1.3 td_thr_getgregs F +GLIBC_2.1.3 td_thr_getxregs F +GLIBC_2.1.3 td_thr_getxregsize F +GLIBC_2.1.3 td_thr_set_event F +GLIBC_2.1.3 td_thr_setfpregs F +GLIBC_2.1.3 td_thr_setgregs F +GLIBC_2.1.3 td_thr_setprio F +GLIBC_2.1.3 td_thr_setsigpending F +GLIBC_2.1.3 td_thr_setxregs F +GLIBC_2.1.3 td_thr_sigsetmask F +GLIBC_2.1.3 td_thr_tsd F +GLIBC_2.1.3 td_thr_validate F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 td_symbol_list F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 td_thr_tls_get_addr F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 td_thr_tlsbase F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libutil.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libutil.abilist new file mode 100644 index 0000000000..ce712a238c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/libutil.abilist @@ -0,0 +1,8 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 forkpty F +GLIBC_2.0 login F +GLIBC_2.0 login_tty F +GLIBC_2.0 logout F +GLIBC_2.0 logwtmp F +GLIBC_2.0 openpty F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/lockf64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/lockf64.c new file mode 100644 index 0000000000..a88f5a784a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/lockf64.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/lockf64.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/Makefile b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/Makefile new file mode 100644 index 0000000000..fa9fcb7e6f --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/Makefile @@ -0,0 +1,13 @@ +ifeq ($(subdir),misc) +sysdep_routines += mips16-syscall0 mips16-syscall1 mips16-syscall2 +sysdep_routines += mips16-syscall3 mips16-syscall4 mips16-syscall5 +sysdep_routines += mips16-syscall6 mips16-syscall7 +CFLAGS-mips16-syscall0.c += -fexceptions +CFLAGS-mips16-syscall1.c += -fexceptions +CFLAGS-mips16-syscall2.c += -fexceptions +CFLAGS-mips16-syscall3.c += -fexceptions +CFLAGS-mips16-syscall4.c += -fexceptions +CFLAGS-mips16-syscall5.c += -fexceptions +CFLAGS-mips16-syscall6.c += -fexceptions +CFLAGS-mips16-syscall7.c += -fexceptions +endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/Versions b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/Versions new file mode 100644 index 0000000000..73bcfb566c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/Versions @@ -0,0 +1,6 @@ +libc { + GLIBC_PRIVATE { + __mips16_syscall0; __mips16_syscall1; __mips16_syscall2; __mips16_syscall3; + __mips16_syscall4; __mips16_syscall5; __mips16_syscall6; __mips16_syscall7; + } +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall.h new file mode 100644 index 0000000000..880e9908e8 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall.h @@ -0,0 +1,89 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef MIPS16_SYSCALL_H +#define MIPS16_SYSCALL_H 1 + +#define __nomips16 __attribute__ ((nomips16)) + +union __mips16_syscall_return + { + long long val; + struct + { + long v0; + long v1; + } + reg; + }; + +long long __nomips16 __mips16_syscall0 (long number); +#define __mips16_syscall0(dummy, number) \ + __mips16_syscall0 ((long) (number)) + +long long __nomips16 __mips16_syscall1 (long a0, + long number); +#define __mips16_syscall1(a0, number) \ + __mips16_syscall1 ((long) (a0), \ + (long) (number)) + +long long __nomips16 __mips16_syscall2 (long a0, long a1, + long number); +#define __mips16_syscall2(a0, a1, number) \ + __mips16_syscall2 ((long) (a0), (long) (a1), \ + (long) (number)) + +long long __nomips16 __mips16_syscall3 (long a0, long a1, long a2, + long number); +#define __mips16_syscall3(a0, a1, a2, number) \ + __mips16_syscall3 ((long) (a0), (long) (a1), (long) (a2), \ + (long) (number)) + +long long __nomips16 __mips16_syscall4 (long a0, long a1, long a2, long a3, + long number); +#define __mips16_syscall4(a0, a1, a2, a3, number) \ + __mips16_syscall4 ((long) (a0), (long) (a1), (long) (a2), \ + (long) (a3), \ + (long) (number)) + +long long __nomips16 __mips16_syscall5 (long a0, long a1, long a2, long a3, + long a4, + long number); +#define __mips16_syscall5(a0, a1, a2, a3, a4, number) \ + __mips16_syscall5 ((long) (a0), (long) (a1), (long) (a2), \ + (long) (a3), (long) (a4), \ + (long) (number)) + +long long __nomips16 __mips16_syscall6 (long a0, long a1, long a2, long a3, + long a4, long a5, + long number); +#define __mips16_syscall6(a0, a1, a2, a3, a4, a5, number) \ + __mips16_syscall6 ((long) (a0), (long) (a1), (long) (a2), \ + (long) (a3), (long) (a4), (long) (a5), \ + (long) (number)) + +long long __nomips16 __mips16_syscall7 (long a0, long a1, long a2, long a3, + long a4, long a5, long a6, + long number); +#define __mips16_syscall7(a0, a1, a2, a3, a4, a5, a6, number) \ + __mips16_syscall7 ((long) (a0), (long) (a1), (long) (a2), \ + (long) (a3), (long) (a4), (long) (a5), \ + (long) (a6), \ + (long) (number)) + +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall0.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall0.c new file mode 100644 index 0000000000..490245b34e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall0.c @@ -0,0 +1,30 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall0 + +long long __nomips16 +__mips16_syscall0 (long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 0); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall1.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall1.c new file mode 100644 index 0000000000..3061e8accb --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall1.c @@ -0,0 +1,32 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall1 + +long long __nomips16 +__mips16_syscall1 (long a0, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 1, + a0); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall2.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall2.c new file mode 100644 index 0000000000..440a4ed285 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall2.c @@ -0,0 +1,32 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall2 + +long long __nomips16 +__mips16_syscall2 (long a0, long a1, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 2, + a0, a1); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall3.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall3.c new file mode 100644 index 0000000000..c3f83fc1f6 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall3.c @@ -0,0 +1,32 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall3 + +long long __nomips16 +__mips16_syscall3 (long a0, long a1, long a2, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 3, + a0, a1, a2); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall4.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall4.c new file mode 100644 index 0000000000..496297d296 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall4.c @@ -0,0 +1,32 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall4 + +long long __nomips16 +__mips16_syscall4 (long a0, long a1, long a2, long a3, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 4, + a0, a1, a2, a3); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall5.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall5.c new file mode 100644 index 0000000000..ad265d88e2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall5.c @@ -0,0 +1,33 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall5 + +long long __nomips16 +__mips16_syscall5 (long a0, long a1, long a2, long a3, + long a4, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 5, + a0, a1, a2, a3, a4); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall6.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall6.c new file mode 100644 index 0000000000..bfbd395ed3 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall6.c @@ -0,0 +1,33 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall6 + +long long __nomips16 +__mips16_syscall6 (long a0, long a1, long a2, long a3, + long a4, long a5, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 6, + a0, a1, a2, a3, a4, a5); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall7.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall7.c new file mode 100644 index 0000000000..e1267616dc --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/mips16/mips16-syscall7.c @@ -0,0 +1,33 @@ +/* MIPS16 syscall wrappers. + Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <mips16-syscall.h> + +#undef __mips16_syscall7 + +long long __nomips16 +__mips16_syscall7 (long a0, long a1, long a2, long a3, + long a4, long a5, long a6, + long number) +{ + union __mips16_syscall_return ret; + ret.reg.v0 = INTERNAL_SYSCALL_MIPS16 (number, ret.reg.v1, 7, + a0, a1, a2, a3, a4, a5, a6); + return ret.val; +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist new file mode 100644 index 0000000000..36ee235d71 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist @@ -0,0 +1,2254 @@ +GCC_3.0 GCC_3.0 A +GCC_3.0 _Unwind_Find_FDE F +GCC_3.0 __deregister_frame_info_bases F +GCC_3.0 __register_frame_info_bases F +GCC_3.0 __register_frame_info_table_bases F +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _IO_adjust_column F +GLIBC_2.0 _IO_default_doallocate F +GLIBC_2.0 _IO_default_finish F +GLIBC_2.0 _IO_default_pbackfail F +GLIBC_2.0 _IO_default_uflow F +GLIBC_2.0 _IO_default_xsgetn F +GLIBC_2.0 _IO_default_xsputn F +GLIBC_2.0 _IO_do_write F +GLIBC_2.0 _IO_doallocbuf F +GLIBC_2.0 _IO_fclose F +GLIBC_2.0 _IO_fdopen F +GLIBC_2.0 _IO_feof F +GLIBC_2.0 _IO_ferror F +GLIBC_2.0 _IO_fflush F +GLIBC_2.0 _IO_fgetpos F +GLIBC_2.0 _IO_fgets F +GLIBC_2.0 _IO_file_attach F +GLIBC_2.0 _IO_file_close F +GLIBC_2.0 _IO_file_close_it F +GLIBC_2.0 _IO_file_doallocate F +GLIBC_2.0 _IO_file_fopen F +GLIBC_2.0 _IO_file_init F +GLIBC_2.0 _IO_file_jumps D 0x54 +GLIBC_2.0 _IO_file_open F +GLIBC_2.0 _IO_file_overflow F +GLIBC_2.0 _IO_file_read F +GLIBC_2.0 _IO_file_seek F +GLIBC_2.0 _IO_file_seekoff F +GLIBC_2.0 _IO_file_setbuf F +GLIBC_2.0 _IO_file_stat F +GLIBC_2.0 _IO_file_sync F +GLIBC_2.0 _IO_file_underflow F +GLIBC_2.0 _IO_file_write F +GLIBC_2.0 _IO_file_xsputn F +GLIBC_2.0 _IO_flockfile F +GLIBC_2.0 _IO_flush_all F +GLIBC_2.0 _IO_flush_all_linebuffered F +GLIBC_2.0 _IO_fopen F +GLIBC_2.0 _IO_fprintf F +GLIBC_2.0 _IO_fputs F +GLIBC_2.0 _IO_fread F +GLIBC_2.0 _IO_free_backup_area F +GLIBC_2.0 _IO_fsetpos F +GLIBC_2.0 _IO_ftell F +GLIBC_2.0 _IO_ftrylockfile F +GLIBC_2.0 _IO_funlockfile F +GLIBC_2.0 _IO_fwrite F +GLIBC_2.0 _IO_getc F +GLIBC_2.0 _IO_getline F +GLIBC_2.0 _IO_gets F +GLIBC_2.0 _IO_init F +GLIBC_2.0 _IO_init_marker F +GLIBC_2.0 _IO_link_in F +GLIBC_2.0 _IO_list_all D 0x4 +GLIBC_2.0 _IO_marker_delta F +GLIBC_2.0 _IO_marker_difference F +GLIBC_2.0 _IO_padn F +GLIBC_2.0 _IO_peekc_locked F +GLIBC_2.0 _IO_popen F +GLIBC_2.0 _IO_printf F +GLIBC_2.0 _IO_proc_close F +GLIBC_2.0 _IO_proc_open F +GLIBC_2.0 _IO_putc F +GLIBC_2.0 _IO_puts F +GLIBC_2.0 _IO_remove_marker F +GLIBC_2.0 _IO_seekmark F +GLIBC_2.0 _IO_seekoff F +GLIBC_2.0 _IO_seekpos F +GLIBC_2.0 _IO_setb F +GLIBC_2.0 _IO_setbuffer F +GLIBC_2.0 _IO_setvbuf F +GLIBC_2.0 _IO_sgetn F +GLIBC_2.0 _IO_sprintf F +GLIBC_2.0 _IO_sputbackc F +GLIBC_2.0 _IO_sscanf F +GLIBC_2.0 _IO_stderr_ D 0x50 +GLIBC_2.0 _IO_stdin_ D 0x50 +GLIBC_2.0 _IO_stdout_ D 0x50 +GLIBC_2.0 _IO_str_init_readonly F +GLIBC_2.0 _IO_str_init_static F +GLIBC_2.0 _IO_str_overflow F +GLIBC_2.0 _IO_str_pbackfail F +GLIBC_2.0 _IO_str_seekoff F +GLIBC_2.0 _IO_str_underflow F +GLIBC_2.0 _IO_sungetc F +GLIBC_2.0 _IO_switch_to_get_mode F +GLIBC_2.0 _IO_un_link F +GLIBC_2.0 _IO_ungetc F +GLIBC_2.0 _IO_unsave_markers F +GLIBC_2.0 _IO_vfprintf F +GLIBC_2.0 _IO_vfscanf F +GLIBC_2.0 _IO_vsprintf F +GLIBC_2.0 ___brk_addr D 0x4 +GLIBC_2.0 __adjtimex F +GLIBC_2.0 __after_morecore_hook D 0x4 +GLIBC_2.0 __argz_count F +GLIBC_2.0 __argz_next F +GLIBC_2.0 __argz_stringify F +GLIBC_2.0 __assert_fail F +GLIBC_2.0 __assert_perror_fail F +GLIBC_2.0 __bsd_getpgrp F +GLIBC_2.0 __bzero F +GLIBC_2.0 __check_rhosts_file D 0x4 +GLIBC_2.0 __clone F +GLIBC_2.0 __close F +GLIBC_2.0 __cmsg_nxthdr F +GLIBC_2.0 __connect F +GLIBC_2.0 __ctype32_b D 0x4 +GLIBC_2.0 __ctype_b D 0x4 +GLIBC_2.0 __ctype_get_mb_cur_max F +GLIBC_2.0 __ctype_tolower D 0x4 +GLIBC_2.0 __ctype_toupper D 0x4 +GLIBC_2.0 __curbrk D 0x4 +GLIBC_2.0 __daylight D 0x4 +GLIBC_2.0 __dcgettext F +GLIBC_2.0 __default_morecore F +GLIBC_2.0 __deregister_frame F +GLIBC_2.0 __deregister_frame_info F +GLIBC_2.0 __dgettext F +GLIBC_2.0 __dup2 F +GLIBC_2.0 __environ D 0x4 +GLIBC_2.0 __errno_location F +GLIBC_2.0 __fcntl F +GLIBC_2.0 __ffs F +GLIBC_2.0 __finite F +GLIBC_2.0 __finitef F +GLIBC_2.0 __finitel F +GLIBC_2.0 __fork F +GLIBC_2.0 __fpu_control D 0x4 +GLIBC_2.0 __frame_state_for F +GLIBC_2.0 __free_hook D 0x4 +GLIBC_2.0 __fxstat F +GLIBC_2.0 __getdelim F +GLIBC_2.0 __getpagesize F +GLIBC_2.0 __getpgid F +GLIBC_2.0 __getpid F +GLIBC_2.0 __gettimeofday F +GLIBC_2.0 __gmtime_r F +GLIBC_2.0 __h_errno_location F +GLIBC_2.0 __isinf F +GLIBC_2.0 __isinff F +GLIBC_2.0 __isinfl F +GLIBC_2.0 __isnan F +GLIBC_2.0 __isnanf F +GLIBC_2.0 __isnanl F +GLIBC_2.0 __iswctype F +GLIBC_2.0 __ivaliduser F +GLIBC_2.0 __libc_calloc F +GLIBC_2.0 __libc_free F +GLIBC_2.0 __libc_init_first F +GLIBC_2.0 __libc_mallinfo F +GLIBC_2.0 __libc_malloc F +GLIBC_2.0 __libc_mallopt F +GLIBC_2.0 __libc_memalign F +GLIBC_2.0 __libc_pvalloc F +GLIBC_2.0 __libc_realloc F +GLIBC_2.0 __libc_start_main F +GLIBC_2.0 __libc_valloc F +GLIBC_2.0 __lseek F +GLIBC_2.0 __lxstat F +GLIBC_2.0 __malloc_hook D 0x4 +GLIBC_2.0 __malloc_initialize_hook D 0x4 +GLIBC_2.0 __mbrlen F +GLIBC_2.0 __mbrtowc F +GLIBC_2.0 __memalign_hook D 0x4 +GLIBC_2.0 __mempcpy F +GLIBC_2.0 __monstartup F +GLIBC_2.0 __morecore D 0x4 +GLIBC_2.0 __nss_configure_lookup F +GLIBC_2.0 __nss_database_lookup F +GLIBC_2.0 __nss_group_lookup F +GLIBC_2.0 __nss_hosts_lookup F +GLIBC_2.0 __nss_next F +GLIBC_2.0 __nss_passwd_lookup F +GLIBC_2.0 __open F +GLIBC_2.0 __overflow F +GLIBC_2.0 __pipe F +GLIBC_2.0 __printf_fp F +GLIBC_2.0 __profile_frequency F +GLIBC_2.0 __progname D 0x4 +GLIBC_2.0 __progname_full D 0x4 +GLIBC_2.0 __rcmd_errstr D 0x4 +GLIBC_2.0 __read F +GLIBC_2.0 __realloc_hook D 0x4 +GLIBC_2.0 __register_frame F +GLIBC_2.0 __register_frame_info F +GLIBC_2.0 __register_frame_info_table F +GLIBC_2.0 __register_frame_table F +GLIBC_2.0 __res_randomid F +GLIBC_2.0 __sbrk F +GLIBC_2.0 __sched_get_priority_max F +GLIBC_2.0 __sched_get_priority_min F +GLIBC_2.0 __sched_getparam F +GLIBC_2.0 __sched_getscheduler F +GLIBC_2.0 __sched_setscheduler F +GLIBC_2.0 __sched_yield F +GLIBC_2.0 __secure_getenv F +GLIBC_2.0 __select F +GLIBC_2.0 __send F +GLIBC_2.0 __setpgid F +GLIBC_2.0 __sigaction F +GLIBC_2.0 __sigaddset F +GLIBC_2.0 __sigdelset F +GLIBC_2.0 __sigismember F +GLIBC_2.0 __sigpause F +GLIBC_2.0 __sigsetjmp F +GLIBC_2.0 __stpcpy F +GLIBC_2.0 __stpncpy F +GLIBC_2.0 __strcasecmp F +GLIBC_2.0 __strdup F +GLIBC_2.0 __strerror_r F +GLIBC_2.0 __strtod_internal F +GLIBC_2.0 __strtof_internal F +GLIBC_2.0 __strtok_r F +GLIBC_2.0 __strtol_internal F +GLIBC_2.0 __strtold_internal F +GLIBC_2.0 __strtoll_internal F +GLIBC_2.0 __strtoq_internal F +GLIBC_2.0 __strtoul_internal F +GLIBC_2.0 __strtoull_internal F +GLIBC_2.0 __strtouq_internal F +GLIBC_2.0 __sysv_signal F +GLIBC_2.0 __timezone D 0x4 +GLIBC_2.0 __tzname D 0x8 +GLIBC_2.0 __uflow F +GLIBC_2.0 __underflow F +GLIBC_2.0 __vfscanf F +GLIBC_2.0 __vsnprintf F +GLIBC_2.0 __vsscanf F +GLIBC_2.0 __wait F +GLIBC_2.0 __waitpid F +GLIBC_2.0 __wcstod_internal F +GLIBC_2.0 __wcstof_internal F +GLIBC_2.0 __wcstol_internal F +GLIBC_2.0 __wcstold_internal F +GLIBC_2.0 __wcstoll_internal F +GLIBC_2.0 __wcstoul_internal F +GLIBC_2.0 __wcstoull_internal F +GLIBC_2.0 __write F +GLIBC_2.0 __xmknod F +GLIBC_2.0 __xpg_basename F +GLIBC_2.0 __xstat F +GLIBC_2.0 _environ D 0x4 +GLIBC_2.0 _exit F +GLIBC_2.0 _flush_cache F +GLIBC_2.0 _libc_intl_domainname D 0x5 +GLIBC_2.0 _longjmp F +GLIBC_2.0 _mcleanup F +GLIBC_2.0 _mcount F +GLIBC_2.0 _nl_default_dirname D 0x12 +GLIBC_2.0 _nl_domain_bindings D 0x4 +GLIBC_2.0 _nl_msg_cat_cntr D 0x4 +GLIBC_2.0 _null_auth D 0xc +GLIBC_2.0 _obstack D 0x4 +GLIBC_2.0 _obstack_allocated_p F +GLIBC_2.0 _obstack_begin F +GLIBC_2.0 _obstack_begin_1 F +GLIBC_2.0 _obstack_free F +GLIBC_2.0 _obstack_memory_used F +GLIBC_2.0 _obstack_newchunk F +GLIBC_2.0 _res D 0x200 +GLIBC_2.0 _rpc_dtablesize F +GLIBC_2.0 _seterr_reply F +GLIBC_2.0 _setjmp F +GLIBC_2.0 _sys_errlist D 0x1ec +GLIBC_2.0 _sys_nerr D 0x4 +GLIBC_2.0 _sys_siglist D 0x80 +GLIBC_2.0 _tolower F +GLIBC_2.0 _toupper F +GLIBC_2.0 a64l F +GLIBC_2.0 abort F +GLIBC_2.0 abs F +GLIBC_2.0 accept F +GLIBC_2.0 access F +GLIBC_2.0 acct F +GLIBC_2.0 addmntent F +GLIBC_2.0 adjtime F +GLIBC_2.0 adjtimex F +GLIBC_2.0 advance F +GLIBC_2.0 alarm F +GLIBC_2.0 alphasort F +GLIBC_2.0 argz_add F +GLIBC_2.0 argz_add_sep F +GLIBC_2.0 argz_append F +GLIBC_2.0 argz_count F +GLIBC_2.0 argz_create F +GLIBC_2.0 argz_create_sep F +GLIBC_2.0 argz_delete F +GLIBC_2.0 argz_extract F +GLIBC_2.0 argz_insert F +GLIBC_2.0 argz_next F +GLIBC_2.0 argz_replace F +GLIBC_2.0 argz_stringify F +GLIBC_2.0 asctime F +GLIBC_2.0 asctime_r F +GLIBC_2.0 asprintf F +GLIBC_2.0 atexit F +GLIBC_2.0 atof F +GLIBC_2.0 atoi F +GLIBC_2.0 atol F +GLIBC_2.0 atoll F +GLIBC_2.0 authnone_create F +GLIBC_2.0 authunix_create F +GLIBC_2.0 authunix_create_default F +GLIBC_2.0 basename F +GLIBC_2.0 bcmp F +GLIBC_2.0 bcopy F +GLIBC_2.0 bdflush F +GLIBC_2.0 bind F +GLIBC_2.0 bindresvport F +GLIBC_2.0 bindtextdomain F +GLIBC_2.0 brk F +GLIBC_2.0 bsd_signal F +GLIBC_2.0 bsearch F +GLIBC_2.0 btowc F +GLIBC_2.0 bzero F +GLIBC_2.0 cachectl F +GLIBC_2.0 cacheflush F +GLIBC_2.0 calloc F +GLIBC_2.0 callrpc F +GLIBC_2.0 canonicalize_file_name F +GLIBC_2.0 catclose F +GLIBC_2.0 catgets F +GLIBC_2.0 catopen F +GLIBC_2.0 cfgetispeed F +GLIBC_2.0 cfgetospeed F +GLIBC_2.0 cfmakeraw F +GLIBC_2.0 cfree F +GLIBC_2.0 cfsetispeed F +GLIBC_2.0 cfsetospeed F +GLIBC_2.0 cfsetspeed F +GLIBC_2.0 chdir F +GLIBC_2.0 chflags F +GLIBC_2.0 chmod F +GLIBC_2.0 chown F +GLIBC_2.0 chroot F +GLIBC_2.0 clearenv F +GLIBC_2.0 clearerr F +GLIBC_2.0 clearerr_unlocked F +GLIBC_2.0 clnt_broadcast F +GLIBC_2.0 clnt_create F +GLIBC_2.0 clnt_pcreateerror F +GLIBC_2.0 clnt_perrno F +GLIBC_2.0 clnt_perror F +GLIBC_2.0 clnt_spcreateerror F +GLIBC_2.0 clnt_sperrno F +GLIBC_2.0 clnt_sperror F +GLIBC_2.0 clntraw_create F +GLIBC_2.0 clnttcp_create F +GLIBC_2.0 clntudp_bufcreate F +GLIBC_2.0 clntudp_create F +GLIBC_2.0 clock F +GLIBC_2.0 clone F +GLIBC_2.0 close F +GLIBC_2.0 closedir F +GLIBC_2.0 closelog F +GLIBC_2.0 confstr F +GLIBC_2.0 connect F +GLIBC_2.0 copysign F +GLIBC_2.0 copysignf F +GLIBC_2.0 copysignl F +GLIBC_2.0 creat F +GLIBC_2.0 create_module F +GLIBC_2.0 ctermid F +GLIBC_2.0 ctime F +GLIBC_2.0 ctime_r F +GLIBC_2.0 cuserid F +GLIBC_2.0 daemon F +GLIBC_2.0 daylight D 0x4 +GLIBC_2.0 dcgettext F +GLIBC_2.0 delete_module F +GLIBC_2.0 dgettext F +GLIBC_2.0 difftime F +GLIBC_2.0 dirfd F +GLIBC_2.0 dirname F +GLIBC_2.0 div F +GLIBC_2.0 dprintf F +GLIBC_2.0 drand48 F +GLIBC_2.0 drand48_r F +GLIBC_2.0 dup F +GLIBC_2.0 dup2 F +GLIBC_2.0 dysize F +GLIBC_2.0 ecvt F +GLIBC_2.0 ecvt_r F +GLIBC_2.0 endaliasent F +GLIBC_2.0 endfsent F +GLIBC_2.0 endgrent F +GLIBC_2.0 endhostent F +GLIBC_2.0 endmntent F +GLIBC_2.0 endnetent F +GLIBC_2.0 endnetgrent F +GLIBC_2.0 endprotoent F +GLIBC_2.0 endpwent F +GLIBC_2.0 endrpcent F +GLIBC_2.0 endservent F +GLIBC_2.0 endspent F +GLIBC_2.0 endttyent F +GLIBC_2.0 endusershell F +GLIBC_2.0 endutent F +GLIBC_2.0 environ D 0x4 +GLIBC_2.0 envz_add F +GLIBC_2.0 envz_entry F +GLIBC_2.0 envz_get F +GLIBC_2.0 envz_merge F +GLIBC_2.0 envz_remove F +GLIBC_2.0 envz_strip F +GLIBC_2.0 erand48 F +GLIBC_2.0 erand48_r F +GLIBC_2.0 err F +GLIBC_2.0 error F +GLIBC_2.0 error_at_line F +GLIBC_2.0 error_message_count D 0x4 +GLIBC_2.0 error_one_per_line D 0x4 +GLIBC_2.0 error_print_progname D 0x4 +GLIBC_2.0 errx F +GLIBC_2.0 ether_aton F +GLIBC_2.0 ether_aton_r F +GLIBC_2.0 ether_hostton F +GLIBC_2.0 ether_line F +GLIBC_2.0 ether_ntoa F +GLIBC_2.0 ether_ntoa_r F +GLIBC_2.0 ether_ntohost F +GLIBC_2.0 euidaccess F +GLIBC_2.0 execl F +GLIBC_2.0 execle F +GLIBC_2.0 execlp F +GLIBC_2.0 execv F +GLIBC_2.0 execve F +GLIBC_2.0 execvp F +GLIBC_2.0 exit F +GLIBC_2.0 fchdir F +GLIBC_2.0 fchflags F +GLIBC_2.0 fchmod F +GLIBC_2.0 fchown F +GLIBC_2.0 fclose F +GLIBC_2.0 fcloseall F +GLIBC_2.0 fcntl F +GLIBC_2.0 fcvt F +GLIBC_2.0 fcvt_r F +GLIBC_2.0 fdatasync F +GLIBC_2.0 fdopen F +GLIBC_2.0 feof F +GLIBC_2.0 feof_unlocked F +GLIBC_2.0 ferror F +GLIBC_2.0 ferror_unlocked F +GLIBC_2.0 fexecve F +GLIBC_2.0 fflush F +GLIBC_2.0 fflush_unlocked F +GLIBC_2.0 ffs F +GLIBC_2.0 fgetc F +GLIBC_2.0 fgetgrent F +GLIBC_2.0 fgetgrent_r F +GLIBC_2.0 fgetpos F +GLIBC_2.0 fgetpwent F +GLIBC_2.0 fgetpwent_r F +GLIBC_2.0 fgets F +GLIBC_2.0 fgetspent F +GLIBC_2.0 fgetspent_r F +GLIBC_2.0 fileno F +GLIBC_2.0 fileno_unlocked F +GLIBC_2.0 finite F +GLIBC_2.0 finitef F +GLIBC_2.0 finitel F +GLIBC_2.0 flock F +GLIBC_2.0 flockfile F +GLIBC_2.0 fnmatch F +GLIBC_2.0 fopen F +GLIBC_2.0 fopencookie F +GLIBC_2.0 fork F +GLIBC_2.0 fpathconf F +GLIBC_2.0 fprintf F +GLIBC_2.0 fputc F +GLIBC_2.0 fputc_unlocked F +GLIBC_2.0 fputs F +GLIBC_2.0 fread F +GLIBC_2.0 free F +GLIBC_2.0 freeaddrinfo F +GLIBC_2.0 freopen F +GLIBC_2.0 frexp F +GLIBC_2.0 frexpf F +GLIBC_2.0 frexpl F +GLIBC_2.0 fscanf F +GLIBC_2.0 fseek F +GLIBC_2.0 fsetpos F +GLIBC_2.0 fstatfs F +GLIBC_2.0 fsync F +GLIBC_2.0 ftell F +GLIBC_2.0 ftime F +GLIBC_2.0 ftok F +GLIBC_2.0 ftruncate F +GLIBC_2.0 ftrylockfile F +GLIBC_2.0 fts_children F +GLIBC_2.0 fts_close F +GLIBC_2.0 fts_open F +GLIBC_2.0 fts_read F +GLIBC_2.0 fts_set F +GLIBC_2.0 ftw F +GLIBC_2.0 funlockfile F +GLIBC_2.0 fwrite F +GLIBC_2.0 gcvt F +GLIBC_2.0 get_avphys_pages F +GLIBC_2.0 get_current_dir_name F +GLIBC_2.0 get_kernel_syms F +GLIBC_2.0 get_myaddress F +GLIBC_2.0 get_nprocs F +GLIBC_2.0 get_nprocs_conf F +GLIBC_2.0 get_phys_pages F +GLIBC_2.0 getaddrinfo F +GLIBC_2.0 getaliasbyname F +GLIBC_2.0 getaliasbyname_r F +GLIBC_2.0 getaliasent F +GLIBC_2.0 getaliasent_r F +GLIBC_2.0 getc F +GLIBC_2.0 getc_unlocked F +GLIBC_2.0 getchar F +GLIBC_2.0 getchar_unlocked F +GLIBC_2.0 getcwd F +GLIBC_2.0 getdelim F +GLIBC_2.0 getdirentries F +GLIBC_2.0 getdomainname F +GLIBC_2.0 getdtablesize F +GLIBC_2.0 getegid F +GLIBC_2.0 getenv F +GLIBC_2.0 geteuid F +GLIBC_2.0 getfsent F +GLIBC_2.0 getfsfile F +GLIBC_2.0 getfsspec F +GLIBC_2.0 getgid F +GLIBC_2.0 getgrent F +GLIBC_2.0 getgrent_r F +GLIBC_2.0 getgrgid F +GLIBC_2.0 getgrgid_r F +GLIBC_2.0 getgrnam F +GLIBC_2.0 getgrnam_r F +GLIBC_2.0 getgroups F +GLIBC_2.0 gethostbyaddr F +GLIBC_2.0 gethostbyaddr_r F +GLIBC_2.0 gethostbyname F +GLIBC_2.0 gethostbyname2 F +GLIBC_2.0 gethostbyname2_r F +GLIBC_2.0 gethostbyname_r F +GLIBC_2.0 gethostent F +GLIBC_2.0 gethostent_r F +GLIBC_2.0 gethostid F +GLIBC_2.0 gethostname F +GLIBC_2.0 getitimer F +GLIBC_2.0 getline F +GLIBC_2.0 getlogin F +GLIBC_2.0 getlogin_r F +GLIBC_2.0 getmntent F +GLIBC_2.0 getmntent_r F +GLIBC_2.0 getnetbyaddr F +GLIBC_2.0 getnetbyaddr_r F +GLIBC_2.0 getnetbyname F +GLIBC_2.0 getnetbyname_r F +GLIBC_2.0 getnetent F +GLIBC_2.0 getnetent_r F +GLIBC_2.0 getnetgrent F +GLIBC_2.0 getnetgrent_r F +GLIBC_2.0 getopt F +GLIBC_2.0 getopt_long F +GLIBC_2.0 getopt_long_only F +GLIBC_2.0 getpagesize F +GLIBC_2.0 getpass F +GLIBC_2.0 getpeername F +GLIBC_2.0 getpgid F +GLIBC_2.0 getpgrp F +GLIBC_2.0 getpid F +GLIBC_2.0 getppid F +GLIBC_2.0 getpriority F +GLIBC_2.0 getprotobyname F +GLIBC_2.0 getprotobyname_r F +GLIBC_2.0 getprotobynumber F +GLIBC_2.0 getprotobynumber_r F +GLIBC_2.0 getprotoent F +GLIBC_2.0 getprotoent_r F +GLIBC_2.0 getpublickey F +GLIBC_2.0 getpw F +GLIBC_2.0 getpwent F +GLIBC_2.0 getpwent_r F +GLIBC_2.0 getpwnam F +GLIBC_2.0 getpwnam_r F +GLIBC_2.0 getpwuid F +GLIBC_2.0 getpwuid_r F +GLIBC_2.0 getresgid F +GLIBC_2.0 getresuid F +GLIBC_2.0 getrlimit F +GLIBC_2.0 getrpcbyname F +GLIBC_2.0 getrpcbyname_r F +GLIBC_2.0 getrpcbynumber F +GLIBC_2.0 getrpcbynumber_r F +GLIBC_2.0 getrpcent F +GLIBC_2.0 getrpcent_r F +GLIBC_2.0 getrpcport F +GLIBC_2.0 getrusage F +GLIBC_2.0 gets F +GLIBC_2.0 getsecretkey F +GLIBC_2.0 getservbyname F +GLIBC_2.0 getservbyname_r F +GLIBC_2.0 getservbyport F +GLIBC_2.0 getservbyport_r F +GLIBC_2.0 getservent F +GLIBC_2.0 getservent_r F +GLIBC_2.0 getsid F +GLIBC_2.0 getsockname F +GLIBC_2.0 getsockopt F +GLIBC_2.0 getspent F +GLIBC_2.0 getspent_r F +GLIBC_2.0 getspnam F +GLIBC_2.0 getspnam_r F +GLIBC_2.0 getsubopt F +GLIBC_2.0 gettext F +GLIBC_2.0 gettimeofday F +GLIBC_2.0 getttyent F +GLIBC_2.0 getttynam F +GLIBC_2.0 getuid F +GLIBC_2.0 getusershell F +GLIBC_2.0 getutent F +GLIBC_2.0 getutent_r F +GLIBC_2.0 getutid F +GLIBC_2.0 getutid_r F +GLIBC_2.0 getutline F +GLIBC_2.0 getutline_r F +GLIBC_2.0 getw F +GLIBC_2.0 getwd F +GLIBC_2.0 glob F +GLIBC_2.0 glob_pattern_p F +GLIBC_2.0 globfree F +GLIBC_2.0 gmtime F +GLIBC_2.0 gmtime_r F +GLIBC_2.0 group_member F +GLIBC_2.0 gsignal F +GLIBC_2.0 gtty F +GLIBC_2.0 h_errlist D 0x14 +GLIBC_2.0 h_nerr D 0x4 +GLIBC_2.0 hasmntopt F +GLIBC_2.0 hcreate F +GLIBC_2.0 hcreate_r F +GLIBC_2.0 hdestroy F +GLIBC_2.0 hdestroy_r F +GLIBC_2.0 herror F +GLIBC_2.0 hsearch F +GLIBC_2.0 hsearch_r F +GLIBC_2.0 hstrerror F +GLIBC_2.0 htonl F +GLIBC_2.0 htons F +GLIBC_2.0 index F +GLIBC_2.0 inet_addr F +GLIBC_2.0 inet_aton F +GLIBC_2.0 inet_lnaof F +GLIBC_2.0 inet_makeaddr F +GLIBC_2.0 inet_netof F +GLIBC_2.0 inet_network F +GLIBC_2.0 inet_nsap_addr F +GLIBC_2.0 inet_nsap_ntoa F +GLIBC_2.0 inet_ntoa F +GLIBC_2.0 inet_ntop F +GLIBC_2.0 inet_pton F +GLIBC_2.0 init_module F +GLIBC_2.0 initgroups F +GLIBC_2.0 initstate F +GLIBC_2.0 initstate_r F +GLIBC_2.0 innetgr F +GLIBC_2.0 insque F +GLIBC_2.0 ioctl F +GLIBC_2.0 iruserok F +GLIBC_2.0 isalnum F +GLIBC_2.0 isalpha F +GLIBC_2.0 isascii F +GLIBC_2.0 isatty F +GLIBC_2.0 isblank F +GLIBC_2.0 iscntrl F +GLIBC_2.0 isdigit F +GLIBC_2.0 isfdtype F +GLIBC_2.0 isgraph F +GLIBC_2.0 isinf F +GLIBC_2.0 isinff F +GLIBC_2.0 isinfl F +GLIBC_2.0 islower F +GLIBC_2.0 isnan F +GLIBC_2.0 isnanf F +GLIBC_2.0 isnanl F +GLIBC_2.0 isprint F +GLIBC_2.0 ispunct F +GLIBC_2.0 isspace F +GLIBC_2.0 isupper F +GLIBC_2.0 iswalnum F +GLIBC_2.0 iswalpha F +GLIBC_2.0 iswcntrl F +GLIBC_2.0 iswctype F +GLIBC_2.0 iswdigit F +GLIBC_2.0 iswgraph F +GLIBC_2.0 iswlower F +GLIBC_2.0 iswprint F +GLIBC_2.0 iswpunct F +GLIBC_2.0 iswspace F +GLIBC_2.0 iswupper F +GLIBC_2.0 iswxdigit F +GLIBC_2.0 isxdigit F +GLIBC_2.0 jrand48 F +GLIBC_2.0 jrand48_r F +GLIBC_2.0 kill F +GLIBC_2.0 killpg F +GLIBC_2.0 klogctl F +GLIBC_2.0 l64a F +GLIBC_2.0 labs F +GLIBC_2.0 lchown F +GLIBC_2.0 lckpwdf F +GLIBC_2.0 lcong48 F +GLIBC_2.0 lcong48_r F +GLIBC_2.0 ldexp F +GLIBC_2.0 ldexpf F +GLIBC_2.0 ldexpl F +GLIBC_2.0 ldiv F +GLIBC_2.0 lfind F +GLIBC_2.0 link F +GLIBC_2.0 listen F +GLIBC_2.0 llabs F +GLIBC_2.0 lldiv F +GLIBC_2.0 llseek F +GLIBC_2.0 loc1 D 0x4 +GLIBC_2.0 loc2 D 0x4 +GLIBC_2.0 localeconv F +GLIBC_2.0 localtime F +GLIBC_2.0 localtime_r F +GLIBC_2.0 lockf F +GLIBC_2.0 locs D 0x4 +GLIBC_2.0 longjmp F +GLIBC_2.0 lrand48 F +GLIBC_2.0 lrand48_r F +GLIBC_2.0 lsearch F +GLIBC_2.0 lseek F +GLIBC_2.0 madvise F +GLIBC_2.0 mallinfo F +GLIBC_2.0 malloc F +GLIBC_2.0 malloc_get_state F +GLIBC_2.0 malloc_set_state F +GLIBC_2.0 malloc_stats F +GLIBC_2.0 malloc_trim F +GLIBC_2.0 malloc_usable_size F +GLIBC_2.0 mallopt F +GLIBC_2.0 mallwatch D 0x4 +GLIBC_2.0 mblen F +GLIBC_2.0 mbrlen F +GLIBC_2.0 mbrtowc F +GLIBC_2.0 mbsinit F +GLIBC_2.0 mbsnrtowcs F +GLIBC_2.0 mbsrtowcs F +GLIBC_2.0 mbstowcs F +GLIBC_2.0 mbtowc F +GLIBC_2.0 mcheck F +GLIBC_2.0 memalign F +GLIBC_2.0 memccpy F +GLIBC_2.0 memchr F +GLIBC_2.0 memcmp F +GLIBC_2.0 memcpy F +GLIBC_2.0 memfrob F +GLIBC_2.0 memmem F +GLIBC_2.0 memmove F +GLIBC_2.0 memset F +GLIBC_2.0 mkdir F +GLIBC_2.0 mkfifo F +GLIBC_2.0 mkstemp F +GLIBC_2.0 mktemp F +GLIBC_2.0 mktime F +GLIBC_2.0 mlock F +GLIBC_2.0 mlockall F +GLIBC_2.0 mmap F +GLIBC_2.0 modf F +GLIBC_2.0 modff F +GLIBC_2.0 modfl F +GLIBC_2.0 monstartup F +GLIBC_2.0 mount F +GLIBC_2.0 mprobe F +GLIBC_2.0 mprotect F +GLIBC_2.0 mrand48 F +GLIBC_2.0 mrand48_r F +GLIBC_2.0 mremap F +GLIBC_2.0 msgctl F +GLIBC_2.0 msgget F +GLIBC_2.0 msgrcv F +GLIBC_2.0 msgsnd F +GLIBC_2.0 msync F +GLIBC_2.0 mtrace F +GLIBC_2.0 munlock F +GLIBC_2.0 munlockall F +GLIBC_2.0 munmap F +GLIBC_2.0 muntrace F +GLIBC_2.0 nanosleep F +GLIBC_2.0 nfsservctl F +GLIBC_2.0 nice F +GLIBC_2.0 nl_langinfo F +GLIBC_2.0 nrand48 F +GLIBC_2.0 nrand48_r F +GLIBC_2.0 ntohl F +GLIBC_2.0 ntohs F +GLIBC_2.0 obstack_alloc_failed_handler D 0x4 +GLIBC_2.0 obstack_exit_failure D 0x4 +GLIBC_2.0 obstack_free F +GLIBC_2.0 obstack_printf F +GLIBC_2.0 obstack_vprintf F +GLIBC_2.0 on_exit F +GLIBC_2.0 open F +GLIBC_2.0 open_memstream F +GLIBC_2.0 opendir F +GLIBC_2.0 openlog F +GLIBC_2.0 optarg D 0x4 +GLIBC_2.0 opterr D 0x4 +GLIBC_2.0 optind D 0x4 +GLIBC_2.0 optopt D 0x4 +GLIBC_2.0 parse_printf_format F +GLIBC_2.0 pathconf F +GLIBC_2.0 pause F +GLIBC_2.0 pclose F +GLIBC_2.0 perror F +GLIBC_2.0 personality F +GLIBC_2.0 pipe F +GLIBC_2.0 pmap_getmaps F +GLIBC_2.0 pmap_getport F +GLIBC_2.0 pmap_rmtcall F +GLIBC_2.0 pmap_set F +GLIBC_2.0 pmap_unset F +GLIBC_2.0 poll F +GLIBC_2.0 popen F +GLIBC_2.0 prctl F +GLIBC_2.0 printf F +GLIBC_2.0 profil F +GLIBC_2.0 program_invocation_name D 0x4 +GLIBC_2.0 program_invocation_short_name D 0x4 +GLIBC_2.0 pselect F +GLIBC_2.0 psignal F +GLIBC_2.0 pthread_attr_destroy F +GLIBC_2.0 pthread_attr_getdetachstate F +GLIBC_2.0 pthread_attr_getinheritsched F +GLIBC_2.0 pthread_attr_getschedparam F +GLIBC_2.0 pthread_attr_getschedpolicy F +GLIBC_2.0 pthread_attr_getscope F +GLIBC_2.0 pthread_attr_init F +GLIBC_2.0 pthread_attr_setdetachstate F +GLIBC_2.0 pthread_attr_setinheritsched F +GLIBC_2.0 pthread_attr_setschedparam F +GLIBC_2.0 pthread_attr_setschedpolicy F +GLIBC_2.0 pthread_attr_setscope F +GLIBC_2.0 pthread_cond_broadcast F +GLIBC_2.0 pthread_cond_destroy F +GLIBC_2.0 pthread_cond_init F +GLIBC_2.0 pthread_cond_signal F +GLIBC_2.0 pthread_cond_timedwait F +GLIBC_2.0 pthread_cond_wait F +GLIBC_2.0 pthread_condattr_destroy F +GLIBC_2.0 pthread_condattr_init F +GLIBC_2.0 pthread_equal F +GLIBC_2.0 pthread_exit F +GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_mutex_destroy F +GLIBC_2.0 pthread_mutex_init F +GLIBC_2.0 pthread_mutex_lock F +GLIBC_2.0 pthread_mutex_unlock F +GLIBC_2.0 pthread_self F +GLIBC_2.0 pthread_setcancelstate F +GLIBC_2.0 pthread_setcanceltype F +GLIBC_2.0 pthread_setschedparam F +GLIBC_2.0 ptrace F +GLIBC_2.0 putc F +GLIBC_2.0 putc_unlocked F +GLIBC_2.0 putchar F +GLIBC_2.0 putchar_unlocked F +GLIBC_2.0 putenv F +GLIBC_2.0 putpwent F +GLIBC_2.0 puts F +GLIBC_2.0 putspent F +GLIBC_2.0 pututline F +GLIBC_2.0 putw F +GLIBC_2.0 pvalloc F +GLIBC_2.0 qecvt F +GLIBC_2.0 qecvt_r F +GLIBC_2.0 qfcvt F +GLIBC_2.0 qfcvt_r F +GLIBC_2.0 qgcvt F +GLIBC_2.0 qsort F +GLIBC_2.0 query_module F +GLIBC_2.0 quotactl F +GLIBC_2.0 raise F +GLIBC_2.0 rand F +GLIBC_2.0 rand_r F +GLIBC_2.0 random F +GLIBC_2.0 random_r F +GLIBC_2.0 rcmd F +GLIBC_2.0 re_comp F +GLIBC_2.0 re_compile_fastmap F +GLIBC_2.0 re_compile_pattern F +GLIBC_2.0 re_exec F +GLIBC_2.0 re_match F +GLIBC_2.0 re_match_2 F +GLIBC_2.0 re_max_failures D 0x4 +GLIBC_2.0 re_search F +GLIBC_2.0 re_search_2 F +GLIBC_2.0 re_set_registers F +GLIBC_2.0 re_set_syntax F +GLIBC_2.0 re_syntax_options D 0x4 +GLIBC_2.0 read F +GLIBC_2.0 readdir F +GLIBC_2.0 readdir_r F +GLIBC_2.0 readlink F +GLIBC_2.0 readv F +GLIBC_2.0 realloc F +GLIBC_2.0 realpath F +GLIBC_2.0 reboot F +GLIBC_2.0 recv F +GLIBC_2.0 recvfrom F +GLIBC_2.0 recvmsg F +GLIBC_2.0 regcomp F +GLIBC_2.0 regerror F +GLIBC_2.0 regexec F +GLIBC_2.0 regfree F +GLIBC_2.0 register_printf_function F +GLIBC_2.0 registerrpc F +GLIBC_2.0 remove F +GLIBC_2.0 remque F +GLIBC_2.0 rename F +GLIBC_2.0 res_init F +GLIBC_2.0 revoke F +GLIBC_2.0 rewind F +GLIBC_2.0 rewinddir F +GLIBC_2.0 rexec F +GLIBC_2.0 rexecoptions D 0x4 +GLIBC_2.0 rindex F +GLIBC_2.0 rmdir F +GLIBC_2.0 rpc_createerr D 0x10 +GLIBC_2.0 rpmatch F +GLIBC_2.0 rresvport F +GLIBC_2.0 ruserok F +GLIBC_2.0 ruserpass F +GLIBC_2.0 sbrk F +GLIBC_2.0 scalbn F +GLIBC_2.0 scalbnf F +GLIBC_2.0 scalbnl F +GLIBC_2.0 scandir F +GLIBC_2.0 scanf F +GLIBC_2.0 sched_get_priority_max F +GLIBC_2.0 sched_get_priority_min F +GLIBC_2.0 sched_getparam F +GLIBC_2.0 sched_getscheduler F +GLIBC_2.0 sched_rr_get_interval F +GLIBC_2.0 sched_setparam F +GLIBC_2.0 sched_setscheduler F +GLIBC_2.0 sched_yield F +GLIBC_2.0 seed48 F +GLIBC_2.0 seed48_r F +GLIBC_2.0 seekdir F +GLIBC_2.0 select F +GLIBC_2.0 semctl F +GLIBC_2.0 semget F +GLIBC_2.0 semop F +GLIBC_2.0 send F +GLIBC_2.0 sendmsg F +GLIBC_2.0 sendto F +GLIBC_2.0 setaliasent F +GLIBC_2.0 setbuf F +GLIBC_2.0 setbuffer F +GLIBC_2.0 setcontext F +GLIBC_2.0 setdomainname F +GLIBC_2.0 setegid F +GLIBC_2.0 setenv F +GLIBC_2.0 seteuid F +GLIBC_2.0 setfsent F +GLIBC_2.0 setfsgid F +GLIBC_2.0 setfsuid F +GLIBC_2.0 setgid F +GLIBC_2.0 setgrent F +GLIBC_2.0 setgroups F +GLIBC_2.0 sethostent F +GLIBC_2.0 sethostid F +GLIBC_2.0 sethostname F +GLIBC_2.0 setitimer F +GLIBC_2.0 setjmp F +GLIBC_2.0 setlinebuf F +GLIBC_2.0 setlocale F +GLIBC_2.0 setlogin F +GLIBC_2.0 setlogmask F +GLIBC_2.0 setmntent F +GLIBC_2.0 setnetent F +GLIBC_2.0 setnetgrent F +GLIBC_2.0 setpgid F +GLIBC_2.0 setpgrp F +GLIBC_2.0 setpriority F +GLIBC_2.0 setprotoent F +GLIBC_2.0 setpwent F +GLIBC_2.0 setregid F +GLIBC_2.0 setresgid F +GLIBC_2.0 setresuid F +GLIBC_2.0 setreuid F +GLIBC_2.0 setrlimit F +GLIBC_2.0 setrpcent F +GLIBC_2.0 setservent F +GLIBC_2.0 setsid F +GLIBC_2.0 setsockopt F +GLIBC_2.0 setspent F +GLIBC_2.0 setstate F +GLIBC_2.0 setstate_r F +GLIBC_2.0 settimeofday F +GLIBC_2.0 setttyent F +GLIBC_2.0 setuid F +GLIBC_2.0 setusershell F +GLIBC_2.0 setutent F +GLIBC_2.0 setvbuf F +GLIBC_2.0 sgetspent F +GLIBC_2.0 sgetspent_r F +GLIBC_2.0 shmat F +GLIBC_2.0 shmctl F +GLIBC_2.0 shmdt F +GLIBC_2.0 shmget F +GLIBC_2.0 shutdown F +GLIBC_2.0 sigaction F +GLIBC_2.0 sigaddset F +GLIBC_2.0 sigaltstack F +GLIBC_2.0 sigandset F +GLIBC_2.0 sigblock F +GLIBC_2.0 sigdelset F +GLIBC_2.0 sigemptyset F +GLIBC_2.0 sigfillset F +GLIBC_2.0 siggetmask F +GLIBC_2.0 siginterrupt F +GLIBC_2.0 sigisemptyset F +GLIBC_2.0 sigismember F +GLIBC_2.0 siglongjmp F +GLIBC_2.0 signal F +GLIBC_2.0 sigorset F +GLIBC_2.0 sigpause F +GLIBC_2.0 sigpending F +GLIBC_2.0 sigprocmask F +GLIBC_2.0 sigreturn F +GLIBC_2.0 sigsetmask F +GLIBC_2.0 sigstack F +GLIBC_2.0 sigsuspend F +GLIBC_2.0 sigvec F +GLIBC_2.0 sigwait F +GLIBC_2.0 sleep F +GLIBC_2.0 snprintf F +GLIBC_2.0 socket F +GLIBC_2.0 socketpair F +GLIBC_2.0 sprintf F +GLIBC_2.0 srand F +GLIBC_2.0 srand48 F +GLIBC_2.0 srand48_r F +GLIBC_2.0 srandom F +GLIBC_2.0 srandom_r F +GLIBC_2.0 sscanf F +GLIBC_2.0 ssignal F +GLIBC_2.0 sstk F +GLIBC_2.0 statfs F +GLIBC_2.0 stderr D 0x4 +GLIBC_2.0 stdin D 0x4 +GLIBC_2.0 stdout D 0x4 +GLIBC_2.0 step F +GLIBC_2.0 stime F +GLIBC_2.0 stpcpy F +GLIBC_2.0 stpncpy F +GLIBC_2.0 strcasecmp F +GLIBC_2.0 strcat F +GLIBC_2.0 strchr F +GLIBC_2.0 strcmp F +GLIBC_2.0 strcoll F +GLIBC_2.0 strcpy F +GLIBC_2.0 strcspn F +GLIBC_2.0 strdup F +GLIBC_2.0 strerror F +GLIBC_2.0 strerror_r F +GLIBC_2.0 strfmon F +GLIBC_2.0 strfry F +GLIBC_2.0 strftime F +GLIBC_2.0 strlen F +GLIBC_2.0 strncasecmp F +GLIBC_2.0 strncat F +GLIBC_2.0 strncmp F +GLIBC_2.0 strncpy F +GLIBC_2.0 strndup F +GLIBC_2.0 strnlen F +GLIBC_2.0 strpbrk F +GLIBC_2.0 strptime F +GLIBC_2.0 strrchr F +GLIBC_2.0 strsep F +GLIBC_2.0 strsignal F +GLIBC_2.0 strspn F +GLIBC_2.0 strstr F +GLIBC_2.0 strtod F +GLIBC_2.0 strtof F +GLIBC_2.0 strtok F +GLIBC_2.0 strtok_r F +GLIBC_2.0 strtol F +GLIBC_2.0 strtold F +GLIBC_2.0 strtoll F +GLIBC_2.0 strtoq F +GLIBC_2.0 strtoul F +GLIBC_2.0 strtoull F +GLIBC_2.0 strtouq F +GLIBC_2.0 strxfrm F +GLIBC_2.0 stty F +GLIBC_2.0 svc_exit F +GLIBC_2.0 svc_fdset D 0x80 +GLIBC_2.0 svc_getreq F +GLIBC_2.0 svc_getreqset F +GLIBC_2.0 svc_register F +GLIBC_2.0 svc_run F +GLIBC_2.0 svc_sendreply F +GLIBC_2.0 svc_unregister F +GLIBC_2.0 svcauthdes_stats D 0xc +GLIBC_2.0 svcerr_auth F +GLIBC_2.0 svcerr_decode F +GLIBC_2.0 svcerr_noproc F +GLIBC_2.0 svcerr_noprog F +GLIBC_2.0 svcerr_progvers F +GLIBC_2.0 svcerr_systemerr F +GLIBC_2.0 svcerr_weakauth F +GLIBC_2.0 svcfd_create F +GLIBC_2.0 svcraw_create F +GLIBC_2.0 svctcp_create F +GLIBC_2.0 svcudp_bufcreate F +GLIBC_2.0 svcudp_create F +GLIBC_2.0 svcudp_enablecache F +GLIBC_2.0 swab F +GLIBC_2.0 swapoff F +GLIBC_2.0 swapon F +GLIBC_2.0 symlink F +GLIBC_2.0 sync F +GLIBC_2.0 sys_errlist D 0x1ec +GLIBC_2.0 sys_nerr D 0x4 +GLIBC_2.0 sys_sigabbrev D 0x80 +GLIBC_2.0 sys_siglist D 0x80 +GLIBC_2.0 syscall F +GLIBC_2.0 sysconf F +GLIBC_2.0 sysctl F +GLIBC_2.0 sysinfo F +GLIBC_2.0 syslog F +GLIBC_2.0 sysmips F +GLIBC_2.0 system F +GLIBC_2.0 tcdrain F +GLIBC_2.0 tcflow F +GLIBC_2.0 tcflush F +GLIBC_2.0 tcgetattr F +GLIBC_2.0 tcgetpgrp F +GLIBC_2.0 tcsendbreak F +GLIBC_2.0 tcsetattr F +GLIBC_2.0 tcsetpgrp F +GLIBC_2.0 tdelete F +GLIBC_2.0 telldir F +GLIBC_2.0 tempnam F +GLIBC_2.0 textdomain F +GLIBC_2.0 tfind F +GLIBC_2.0 time F +GLIBC_2.0 timegm F +GLIBC_2.0 timelocal F +GLIBC_2.0 times F +GLIBC_2.0 timezone D 0x4 +GLIBC_2.0 tmpfile F +GLIBC_2.0 tmpnam F +GLIBC_2.0 tmpnam_r F +GLIBC_2.0 toascii F +GLIBC_2.0 tolower F +GLIBC_2.0 toupper F +GLIBC_2.0 towctrans F +GLIBC_2.0 towlower F +GLIBC_2.0 towupper F +GLIBC_2.0 tr_break F +GLIBC_2.0 truncate F +GLIBC_2.0 tsearch F +GLIBC_2.0 ttyname F +GLIBC_2.0 ttyname_r F +GLIBC_2.0 ttyslot F +GLIBC_2.0 twalk F +GLIBC_2.0 tzname D 0x8 +GLIBC_2.0 tzset F +GLIBC_2.0 ualarm F +GLIBC_2.0 ulckpwdf F +GLIBC_2.0 ulimit F +GLIBC_2.0 umask F +GLIBC_2.0 umount F +GLIBC_2.0 uname F +GLIBC_2.0 ungetc F +GLIBC_2.0 unlink F +GLIBC_2.0 unsetenv F +GLIBC_2.0 updwtmp F +GLIBC_2.0 uselib F +GLIBC_2.0 usleep F +GLIBC_2.0 ustat F +GLIBC_2.0 utime F +GLIBC_2.0 utimes F +GLIBC_2.0 utmpname F +GLIBC_2.0 valloc F +GLIBC_2.0 vasprintf F +GLIBC_2.0 vdprintf F +GLIBC_2.0 verr F +GLIBC_2.0 verrx F +GLIBC_2.0 vfork F +GLIBC_2.0 vfprintf F +GLIBC_2.0 vfscanf F +GLIBC_2.0 vhangup F +GLIBC_2.0 vlimit F +GLIBC_2.0 vprintf F +GLIBC_2.0 vscanf F +GLIBC_2.0 vsnprintf F +GLIBC_2.0 vsprintf F +GLIBC_2.0 vsscanf F +GLIBC_2.0 vsyslog F +GLIBC_2.0 vtimes F +GLIBC_2.0 vwarn F +GLIBC_2.0 vwarnx F +GLIBC_2.0 wait F +GLIBC_2.0 wait3 F +GLIBC_2.0 wait4 F +GLIBC_2.0 waitpid F +GLIBC_2.0 warn F +GLIBC_2.0 warnx F +GLIBC_2.0 wcpcpy F +GLIBC_2.0 wcpncpy F +GLIBC_2.0 wcrtomb F +GLIBC_2.0 wcscat F +GLIBC_2.0 wcschr F +GLIBC_2.0 wcscmp F +GLIBC_2.0 wcscoll F +GLIBC_2.0 wcscpy F +GLIBC_2.0 wcscspn F +GLIBC_2.0 wcsdup F +GLIBC_2.0 wcslen F +GLIBC_2.0 wcsncat F +GLIBC_2.0 wcsncmp F +GLIBC_2.0 wcsncpy F +GLIBC_2.0 wcsnrtombs F +GLIBC_2.0 wcspbrk F +GLIBC_2.0 wcsrchr F +GLIBC_2.0 wcsrtombs F +GLIBC_2.0 wcsspn F +GLIBC_2.0 wcsstr F +GLIBC_2.0 wcstod F +GLIBC_2.0 wcstof F +GLIBC_2.0 wcstok F +GLIBC_2.0 wcstol F +GLIBC_2.0 wcstold F +GLIBC_2.0 wcstombs F +GLIBC_2.0 wcstoq F +GLIBC_2.0 wcstoul F +GLIBC_2.0 wcstouq F +GLIBC_2.0 wcswidth F +GLIBC_2.0 wcsxfrm F +GLIBC_2.0 wctob F +GLIBC_2.0 wctomb F +GLIBC_2.0 wctrans F +GLIBC_2.0 wctype F +GLIBC_2.0 wcwidth F +GLIBC_2.0 wmemchr F +GLIBC_2.0 wmemcmp F +GLIBC_2.0 wmemcpy F +GLIBC_2.0 wmemmove F +GLIBC_2.0 wmemset F +GLIBC_2.0 write F +GLIBC_2.0 writev F +GLIBC_2.0 xdr_accepted_reply F +GLIBC_2.0 xdr_array F +GLIBC_2.0 xdr_authunix_parms F +GLIBC_2.0 xdr_bool F +GLIBC_2.0 xdr_bytes F +GLIBC_2.0 xdr_callhdr F +GLIBC_2.0 xdr_callmsg F +GLIBC_2.0 xdr_char F +GLIBC_2.0 xdr_cryptkeyarg F +GLIBC_2.0 xdr_cryptkeyarg2 F +GLIBC_2.0 xdr_cryptkeyres F +GLIBC_2.0 xdr_des_block F +GLIBC_2.0 xdr_double F +GLIBC_2.0 xdr_enum F +GLIBC_2.0 xdr_float F +GLIBC_2.0 xdr_free F +GLIBC_2.0 xdr_int F +GLIBC_2.0 xdr_key_netstarg F +GLIBC_2.0 xdr_key_netstres F +GLIBC_2.0 xdr_keybuf F +GLIBC_2.0 xdr_keystatus F +GLIBC_2.0 xdr_long F +GLIBC_2.0 xdr_netobj F +GLIBC_2.0 xdr_opaque F +GLIBC_2.0 xdr_opaque_auth F +GLIBC_2.0 xdr_pmap F +GLIBC_2.0 xdr_pmaplist F +GLIBC_2.0 xdr_pointer F +GLIBC_2.0 xdr_reference F +GLIBC_2.0 xdr_rejected_reply F +GLIBC_2.0 xdr_replymsg F +GLIBC_2.0 xdr_rmtcall_args F +GLIBC_2.0 xdr_rmtcallres F +GLIBC_2.0 xdr_short F +GLIBC_2.0 xdr_string F +GLIBC_2.0 xdr_u_char F +GLIBC_2.0 xdr_u_int F +GLIBC_2.0 xdr_u_long F +GLIBC_2.0 xdr_u_short F +GLIBC_2.0 xdr_union F +GLIBC_2.0 xdr_vector F +GLIBC_2.0 xdr_void F +GLIBC_2.0 xdr_wrapstring F +GLIBC_2.0 xdrmem_create F +GLIBC_2.0 xdrrec_create F +GLIBC_2.0 xdrrec_endofrecord F +GLIBC_2.0 xdrrec_eof F +GLIBC_2.0 xdrrec_skiprecord F +GLIBC_2.0 xdrstdio_create F +GLIBC_2.0 xencrypt F +GLIBC_2.0 xprt_register F +GLIBC_2.0 xprt_unregister F +GLIBC_2.10 GLIBC_2.10 A +GLIBC_2.10 __cxa_at_quick_exit F +GLIBC_2.10 __posix_getopt F +GLIBC_2.10 accept4 F +GLIBC_2.10 endsgent F +GLIBC_2.10 fallocate F +GLIBC_2.10 fgetsgent F +GLIBC_2.10 fgetsgent_r F +GLIBC_2.10 getsgent F +GLIBC_2.10 getsgent_r F +GLIBC_2.10 getsgnam F +GLIBC_2.10 getsgnam_r F +GLIBC_2.10 malloc_info F +GLIBC_2.10 preadv F +GLIBC_2.10 preadv64 F +GLIBC_2.10 psiginfo F +GLIBC_2.10 putsgent F +GLIBC_2.10 pwritev F +GLIBC_2.10 pwritev64 F +GLIBC_2.10 quick_exit F +GLIBC_2.10 register_printf_modifier F +GLIBC_2.10 register_printf_specifier F +GLIBC_2.10 register_printf_type F +GLIBC_2.10 setsgent F +GLIBC_2.10 sgetsgent F +GLIBC_2.10 sgetsgent_r F +GLIBC_2.11 GLIBC_2.11 A +GLIBC_2.11 __longjmp_chk F +GLIBC_2.11 execvpe F +GLIBC_2.11 fallocate64 F +GLIBC_2.11 mkostemps F +GLIBC_2.11 mkostemps64 F +GLIBC_2.11 mkstemps F +GLIBC_2.11 mkstemps64 F +GLIBC_2.12 GLIBC_2.12 A +GLIBC_2.12 ntp_gettimex F +GLIBC_2.12 recvmmsg F +GLIBC_2.13 GLIBC_2.13 A +GLIBC_2.13 fanotify_init F +GLIBC_2.13 fanotify_mark F +GLIBC_2.13 prlimit F +GLIBC_2.13 prlimit64 F +GLIBC_2.14 GLIBC_2.14 A +GLIBC_2.14 clock_adjtime F +GLIBC_2.14 name_to_handle_at F +GLIBC_2.14 open_by_handle_at F +GLIBC_2.14 sendmmsg F +GLIBC_2.14 setns F +GLIBC_2.14 syncfs F +GLIBC_2.15 GLIBC_2.15 A +GLIBC_2.15 __fdelt_chk F +GLIBC_2.15 __fdelt_warn F +GLIBC_2.15 posix_spawn F +GLIBC_2.15 posix_spawnp F +GLIBC_2.15 process_vm_readv F +GLIBC_2.15 process_vm_writev F +GLIBC_2.15 scandirat F +GLIBC_2.15 scandirat64 F +GLIBC_2.16 GLIBC_2.16 A +GLIBC_2.16 __getauxval F +GLIBC_2.16 __poll_chk F +GLIBC_2.16 __ppoll_chk F +GLIBC_2.16 aligned_alloc F +GLIBC_2.16 c16rtomb F +GLIBC_2.16 c32rtomb F +GLIBC_2.16 getauxval F +GLIBC_2.16 mbrtoc16 F +GLIBC_2.16 mbrtoc32 F +GLIBC_2.16 timespec_get F +GLIBC_2.17 GLIBC_2.17 A +GLIBC_2.17 clock_getcpuclockid F +GLIBC_2.17 clock_getres F +GLIBC_2.17 clock_gettime F +GLIBC_2.17 clock_nanosleep F +GLIBC_2.17 clock_settime F +GLIBC_2.17 secure_getenv F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 __cxa_thread_atexit_impl F +GLIBC_2.19 GLIBC_2.19 A +GLIBC_2.19 getrlimit64 F +GLIBC_2.19 setrlimit64 F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 _Exit F +GLIBC_2.2 _IO_2_1_stderr_ D 0xa0 +GLIBC_2.2 _IO_2_1_stdin_ D 0xa0 +GLIBC_2.2 _IO_2_1_stdout_ D 0xa0 +GLIBC_2.2 _IO_adjust_wcolumn F +GLIBC_2.2 _IO_do_write F +GLIBC_2.2 _IO_fclose F +GLIBC_2.2 _IO_fdopen F +GLIBC_2.2 _IO_fgetpos F +GLIBC_2.2 _IO_fgetpos64 F +GLIBC_2.2 _IO_file_attach F +GLIBC_2.2 _IO_file_close_it F +GLIBC_2.2 _IO_file_finish F +GLIBC_2.2 _IO_file_fopen F +GLIBC_2.2 _IO_file_init F +GLIBC_2.2 _IO_file_overflow F +GLIBC_2.2 _IO_file_seekoff F +GLIBC_2.2 _IO_file_setbuf F +GLIBC_2.2 _IO_file_sync F +GLIBC_2.2 _IO_file_underflow F +GLIBC_2.2 _IO_file_write F +GLIBC_2.2 _IO_file_xsputn F +GLIBC_2.2 _IO_fopen F +GLIBC_2.2 _IO_free_wbackup_area F +GLIBC_2.2 _IO_fsetpos F +GLIBC_2.2 _IO_fsetpos64 F +GLIBC_2.2 _IO_getline_info F +GLIBC_2.2 _IO_init_wmarker F +GLIBC_2.2 _IO_iter_begin F +GLIBC_2.2 _IO_iter_end F +GLIBC_2.2 _IO_iter_file F +GLIBC_2.2 _IO_iter_next F +GLIBC_2.2 _IO_least_wmarker F +GLIBC_2.2 _IO_list_lock F +GLIBC_2.2 _IO_list_resetlock F +GLIBC_2.2 _IO_list_unlock F +GLIBC_2.2 _IO_popen F +GLIBC_2.2 _IO_proc_close F +GLIBC_2.2 _IO_proc_open F +GLIBC_2.2 _IO_seekwmark F +GLIBC_2.2 _IO_sputbackwc F +GLIBC_2.2 _IO_sungetwc F +GLIBC_2.2 _IO_switch_to_main_wget_area F +GLIBC_2.2 _IO_switch_to_wbackup_area F +GLIBC_2.2 _IO_switch_to_wget_mode F +GLIBC_2.2 _IO_unsave_wmarkers F +GLIBC_2.2 _IO_wdefault_doallocate F +GLIBC_2.2 _IO_wdefault_finish F +GLIBC_2.2 _IO_wdefault_pbackfail F +GLIBC_2.2 _IO_wdefault_uflow F +GLIBC_2.2 _IO_wdefault_xsgetn F +GLIBC_2.2 _IO_wdefault_xsputn F +GLIBC_2.2 _IO_wdo_write F +GLIBC_2.2 _IO_wdoallocbuf F +GLIBC_2.2 _IO_wfile_jumps D 0x54 +GLIBC_2.2 _IO_wfile_overflow F +GLIBC_2.2 _IO_wfile_seekoff F +GLIBC_2.2 _IO_wfile_sync F +GLIBC_2.2 _IO_wfile_underflow F +GLIBC_2.2 _IO_wfile_xsputn F +GLIBC_2.2 _IO_wmarker_delta F +GLIBC_2.2 _IO_wsetb F +GLIBC_2.2 __asprintf F +GLIBC_2.2 __assert F +GLIBC_2.2 __backtrace F +GLIBC_2.2 __backtrace_symbols F +GLIBC_2.2 __backtrace_symbols_fd F +GLIBC_2.2 __ctype32_tolower D 0x4 +GLIBC_2.2 __ctype32_toupper D 0x4 +GLIBC_2.2 __cxa_atexit F +GLIBC_2.2 __cxa_finalize F +GLIBC_2.2 __cyg_profile_func_enter F +GLIBC_2.2 __cyg_profile_func_exit F +GLIBC_2.2 __duplocale F +GLIBC_2.2 __endmntent F +GLIBC_2.2 __fbufsize F +GLIBC_2.2 __flbf F +GLIBC_2.2 __fpending F +GLIBC_2.2 __fpurge F +GLIBC_2.2 __freadable F +GLIBC_2.2 __freading F +GLIBC_2.2 __freelocale F +GLIBC_2.2 __fsetlocking F +GLIBC_2.2 __fwritable F +GLIBC_2.2 __fwriting F +GLIBC_2.2 __fxstat64 F +GLIBC_2.2 __getmntent_r F +GLIBC_2.2 __isalnum_l F +GLIBC_2.2 __isalpha_l F +GLIBC_2.2 __isascii_l F +GLIBC_2.2 __isblank_l F +GLIBC_2.2 __iscntrl_l F +GLIBC_2.2 __isdigit_l F +GLIBC_2.2 __isgraph_l F +GLIBC_2.2 __islower_l F +GLIBC_2.2 __isprint_l F +GLIBC_2.2 __ispunct_l F +GLIBC_2.2 __isspace_l F +GLIBC_2.2 __isupper_l F +GLIBC_2.2 __iswalnum_l F +GLIBC_2.2 __iswalpha_l F +GLIBC_2.2 __iswblank_l F +GLIBC_2.2 __iswcntrl_l F +GLIBC_2.2 __iswctype_l F +GLIBC_2.2 __iswdigit_l F +GLIBC_2.2 __iswgraph_l F +GLIBC_2.2 __iswlower_l F +GLIBC_2.2 __iswprint_l F +GLIBC_2.2 __iswpunct_l F +GLIBC_2.2 __iswspace_l F +GLIBC_2.2 __iswupper_l F +GLIBC_2.2 __iswxdigit_l F +GLIBC_2.2 __isxdigit_l F +GLIBC_2.2 __key_decryptsession_pk_LOCAL D 0x4 +GLIBC_2.2 __key_encryptsession_pk_LOCAL D 0x4 +GLIBC_2.2 __key_gendes_LOCAL D 0x4 +GLIBC_2.2 __libc_allocate_rtsig F +GLIBC_2.2 __libc_current_sigrtmax F +GLIBC_2.2 __libc_current_sigrtmin F +GLIBC_2.2 __libc_freeres F +GLIBC_2.2 __libc_sa_len F +GLIBC_2.2 __lxstat64 F +GLIBC_2.2 __mempcpy_small F +GLIBC_2.2 __newlocale F +GLIBC_2.2 __nl_langinfo_l F +GLIBC_2.2 __open64 F +GLIBC_2.2 __poll F +GLIBC_2.2 __pread64 F +GLIBC_2.2 __pwrite64 F +GLIBC_2.2 __rawmemchr F +GLIBC_2.2 __res_init F +GLIBC_2.2 __res_nclose F +GLIBC_2.2 __res_ninit F +GLIBC_2.2 __res_state F +GLIBC_2.2 __setmntent F +GLIBC_2.2 __signbit F +GLIBC_2.2 __signbitf F +GLIBC_2.2 __sigsuspend F +GLIBC_2.2 __statfs F +GLIBC_2.2 __stpcpy_small F +GLIBC_2.2 __strcasecmp_l F +GLIBC_2.2 __strcasestr F +GLIBC_2.2 __strcoll_l F +GLIBC_2.2 __strcpy_small F +GLIBC_2.2 __strcspn_c1 F +GLIBC_2.2 __strcspn_c2 F +GLIBC_2.2 __strcspn_c3 F +GLIBC_2.2 __strfmon_l F +GLIBC_2.2 __strncasecmp_l F +GLIBC_2.2 __strndup F +GLIBC_2.2 __strpbrk_c2 F +GLIBC_2.2 __strpbrk_c3 F +GLIBC_2.2 __strsep_1c F +GLIBC_2.2 __strsep_2c F +GLIBC_2.2 __strsep_3c F +GLIBC_2.2 __strsep_g F +GLIBC_2.2 __strspn_c1 F +GLIBC_2.2 __strspn_c2 F +GLIBC_2.2 __strspn_c3 F +GLIBC_2.2 __strtod_l F +GLIBC_2.2 __strtof_l F +GLIBC_2.2 __strtok_r_1c F +GLIBC_2.2 __strtol_l F +GLIBC_2.2 __strtold_l F +GLIBC_2.2 __strtoll_l F +GLIBC_2.2 __strtoul_l F +GLIBC_2.2 __strtoull_l F +GLIBC_2.2 __strverscmp F +GLIBC_2.2 __strxfrm_l F +GLIBC_2.2 __sysconf F +GLIBC_2.2 __sysctl F +GLIBC_2.2 __toascii_l F +GLIBC_2.2 __tolower_l F +GLIBC_2.2 __toupper_l F +GLIBC_2.2 __towctrans F +GLIBC_2.2 __towctrans_l F +GLIBC_2.2 __towlower_l F +GLIBC_2.2 __towupper_l F +GLIBC_2.2 __vfork F +GLIBC_2.2 __wcscasecmp_l F +GLIBC_2.2 __wcscoll_l F +GLIBC_2.2 __wcsncasecmp_l F +GLIBC_2.2 __wcstod_l F +GLIBC_2.2 __wcstof_l F +GLIBC_2.2 __wcstol_l F +GLIBC_2.2 __wcstold_l F +GLIBC_2.2 __wcstoll_l F +GLIBC_2.2 __wcstoul_l F +GLIBC_2.2 __wcstoull_l F +GLIBC_2.2 __wcsxfrm_l F +GLIBC_2.2 __wctrans_l F +GLIBC_2.2 __wctype_l F +GLIBC_2.2 __woverflow F +GLIBC_2.2 __wuflow F +GLIBC_2.2 __wunderflow F +GLIBC_2.2 __xpg_sigpause F +GLIBC_2.2 __xstat64 F +GLIBC_2.2 _authenticate F +GLIBC_2.2 _dl_mcount_wrapper F +GLIBC_2.2 _dl_mcount_wrapper_check F +GLIBC_2.2 _flushlbf F +GLIBC_2.2 _res_hconf D 0x30 +GLIBC_2.2 _sys_errlist D 0x11b8 +GLIBC_2.2 _sys_nerr D 0x4 +GLIBC_2.2 _sys_siglist D 0x100 +GLIBC_2.2 _test_and_set F +GLIBC_2.2 addseverity F +GLIBC_2.2 alphasort64 F +GLIBC_2.2 argp_err_exit_status D 0x4 +GLIBC_2.2 argp_error F +GLIBC_2.2 argp_failure F +GLIBC_2.2 argp_help F +GLIBC_2.2 argp_parse F +GLIBC_2.2 argp_program_bug_address D 0x4 +GLIBC_2.2 argp_program_version D 0x4 +GLIBC_2.2 argp_program_version_hook D 0x4 +GLIBC_2.2 argp_state_help F +GLIBC_2.2 argp_usage F +GLIBC_2.2 authdes_create F +GLIBC_2.2 authdes_getucred F +GLIBC_2.2 authdes_pk_create F +GLIBC_2.2 backtrace F +GLIBC_2.2 backtrace_symbols F +GLIBC_2.2 backtrace_symbols_fd F +GLIBC_2.2 bind_textdomain_codeset F +GLIBC_2.2 capget F +GLIBC_2.2 capset F +GLIBC_2.2 cbc_crypt F +GLIBC_2.2 clntunix_create F +GLIBC_2.2 creat64 F +GLIBC_2.2 dcngettext F +GLIBC_2.2 des_setparity F +GLIBC_2.2 dngettext F +GLIBC_2.2 ecb_crypt F +GLIBC_2.2 endutxent F +GLIBC_2.2 fattach F +GLIBC_2.2 fclose F +GLIBC_2.2 fdetach F +GLIBC_2.2 fdopen F +GLIBC_2.2 ffsl F +GLIBC_2.2 ffsll F +GLIBC_2.2 fgetc_unlocked F +GLIBC_2.2 fgetpos F +GLIBC_2.2 fgetpos64 F +GLIBC_2.2 fgets_unlocked F +GLIBC_2.2 fgetwc F +GLIBC_2.2 fgetwc_unlocked F +GLIBC_2.2 fgetws F +GLIBC_2.2 fgetws_unlocked F +GLIBC_2.2 fmemopen F +GLIBC_2.2 fmtmsg F +GLIBC_2.2 fopen F +GLIBC_2.2 fopen64 F +GLIBC_2.2 fopencookie F +GLIBC_2.2 fputs_unlocked F +GLIBC_2.2 fputwc F +GLIBC_2.2 fputwc_unlocked F +GLIBC_2.2 fputws F +GLIBC_2.2 fputws_unlocked F +GLIBC_2.2 fread_unlocked F +GLIBC_2.2 freopen64 F +GLIBC_2.2 fseeko F +GLIBC_2.2 fseeko64 F +GLIBC_2.2 fsetpos F +GLIBC_2.2 fsetpos64 F +GLIBC_2.2 fstatfs64 F +GLIBC_2.2 fstatvfs F +GLIBC_2.2 fstatvfs64 F +GLIBC_2.2 ftello F +GLIBC_2.2 ftello64 F +GLIBC_2.2 ftruncate64 F +GLIBC_2.2 ftw64 F +GLIBC_2.2 fwide F +GLIBC_2.2 fwprintf F +GLIBC_2.2 fwrite_unlocked F +GLIBC_2.2 fwscanf F +GLIBC_2.2 gai_strerror F +GLIBC_2.2 getaliasbyname_r F +GLIBC_2.2 getaliasent_r F +GLIBC_2.2 getcontext F +GLIBC_2.2 getdate F +GLIBC_2.2 getdate_err D 0x4 +GLIBC_2.2 getdate_r F +GLIBC_2.2 getdirentries64 F +GLIBC_2.2 getgrent_r F +GLIBC_2.2 getgrgid_r F +GLIBC_2.2 getgrnam_r F +GLIBC_2.2 gethostbyaddr_r F +GLIBC_2.2 gethostbyname2_r F +GLIBC_2.2 gethostbyname_r F +GLIBC_2.2 gethostent_r F +GLIBC_2.2 getloadavg F +GLIBC_2.2 getmsg F +GLIBC_2.2 getnameinfo F +GLIBC_2.2 getnetbyaddr_r F +GLIBC_2.2 getnetbyname_r F +GLIBC_2.2 getnetent_r F +GLIBC_2.2 getnetname F +GLIBC_2.2 getpmsg F +GLIBC_2.2 getprotobyname_r F +GLIBC_2.2 getprotobynumber_r F +GLIBC_2.2 getprotoent_r F +GLIBC_2.2 getpt F +GLIBC_2.2 getpwent_r F +GLIBC_2.2 getpwnam_r F +GLIBC_2.2 getpwuid_r F +GLIBC_2.2 getrlimit64 F +GLIBC_2.2 getrpcbyname_r F +GLIBC_2.2 getrpcbynumber_r F +GLIBC_2.2 getrpcent_r F +GLIBC_2.2 getservbyname_r F +GLIBC_2.2 getservbyport_r F +GLIBC_2.2 getservent_r F +GLIBC_2.2 getspent_r F +GLIBC_2.2 getspnam_r F +GLIBC_2.2 getutmp F +GLIBC_2.2 getutmpx F +GLIBC_2.2 getutxent F +GLIBC_2.2 getutxid F +GLIBC_2.2 getutxline F +GLIBC_2.2 getwc F +GLIBC_2.2 getwc_unlocked F +GLIBC_2.2 getwchar F +GLIBC_2.2 getwchar_unlocked F +GLIBC_2.2 glob64 F +GLIBC_2.2 globfree64 F +GLIBC_2.2 gnu_get_libc_release F +GLIBC_2.2 gnu_get_libc_version F +GLIBC_2.2 grantpt F +GLIBC_2.2 host2netname F +GLIBC_2.2 iconv F +GLIBC_2.2 iconv_close F +GLIBC_2.2 iconv_open F +GLIBC_2.2 if_freenameindex F +GLIBC_2.2 if_indextoname F +GLIBC_2.2 if_nameindex F +GLIBC_2.2 if_nametoindex F +GLIBC_2.2 imaxabs F +GLIBC_2.2 imaxdiv F +GLIBC_2.2 in6addr_any D 0x10 +GLIBC_2.2 in6addr_loopback D 0x10 +GLIBC_2.2 iruserok_af F +GLIBC_2.2 isastream F +GLIBC_2.2 iswblank F +GLIBC_2.2 key_decryptsession F +GLIBC_2.2 key_decryptsession_pk F +GLIBC_2.2 key_encryptsession F +GLIBC_2.2 key_encryptsession_pk F +GLIBC_2.2 key_gendes F +GLIBC_2.2 key_get_conv F +GLIBC_2.2 key_secretkey_is_set F +GLIBC_2.2 key_setnet F +GLIBC_2.2 key_setsecret F +GLIBC_2.2 localeconv F +GLIBC_2.2 lockf64 F +GLIBC_2.2 lseek64 F +GLIBC_2.2 makecontext F +GLIBC_2.2 mcheck_check_all F +GLIBC_2.2 mcheck_pedantic F +GLIBC_2.2 mempcpy F +GLIBC_2.2 memrchr F +GLIBC_2.2 mincore F +GLIBC_2.2 mkdtemp F +GLIBC_2.2 mkstemp64 F +GLIBC_2.2 mmap64 F +GLIBC_2.2 moncontrol F +GLIBC_2.2 msgctl F +GLIBC_2.2 netname2host F +GLIBC_2.2 netname2user F +GLIBC_2.2 nftw F +GLIBC_2.2 nftw64 F +GLIBC_2.2 ngettext F +GLIBC_2.2 ntp_adjtime F +GLIBC_2.2 ntp_gettime F +GLIBC_2.2 open64 F +GLIBC_2.2 passwd2des F +GLIBC_2.2 pclose F +GLIBC_2.2 popen F +GLIBC_2.2 posix_fadvise F +GLIBC_2.2 posix_fadvise64 F +GLIBC_2.2 posix_fallocate F +GLIBC_2.2 posix_fallocate64 F +GLIBC_2.2 posix_madvise F +GLIBC_2.2 posix_memalign F +GLIBC_2.2 posix_spawn F +GLIBC_2.2 posix_spawn_file_actions_addclose F +GLIBC_2.2 posix_spawn_file_actions_adddup2 F +GLIBC_2.2 posix_spawn_file_actions_addopen F +GLIBC_2.2 posix_spawn_file_actions_destroy F +GLIBC_2.2 posix_spawn_file_actions_init F +GLIBC_2.2 posix_spawnattr_destroy F +GLIBC_2.2 posix_spawnattr_getflags F +GLIBC_2.2 posix_spawnattr_getpgroup F +GLIBC_2.2 posix_spawnattr_getschedparam F +GLIBC_2.2 posix_spawnattr_getschedpolicy F +GLIBC_2.2 posix_spawnattr_getsigdefault F +GLIBC_2.2 posix_spawnattr_getsigmask F +GLIBC_2.2 posix_spawnattr_init F +GLIBC_2.2 posix_spawnattr_setflags F +GLIBC_2.2 posix_spawnattr_setpgroup F +GLIBC_2.2 posix_spawnattr_setschedparam F +GLIBC_2.2 posix_spawnattr_setschedpolicy F +GLIBC_2.2 posix_spawnattr_setsigdefault F +GLIBC_2.2 posix_spawnattr_setsigmask F +GLIBC_2.2 posix_spawnp F +GLIBC_2.2 pread F +GLIBC_2.2 pread64 F +GLIBC_2.2 printf_size F +GLIBC_2.2 printf_size_info F +GLIBC_2.2 pthread_attr_init F +GLIBC_2.2 ptsname F +GLIBC_2.2 ptsname_r F +GLIBC_2.2 putgrent F +GLIBC_2.2 putmsg F +GLIBC_2.2 putpmsg F +GLIBC_2.2 pututxline F +GLIBC_2.2 putwc F +GLIBC_2.2 putwc_unlocked F +GLIBC_2.2 putwchar F +GLIBC_2.2 putwchar_unlocked F +GLIBC_2.2 pwrite F +GLIBC_2.2 pwrite64 F +GLIBC_2.2 rawmemchr F +GLIBC_2.2 rcmd_af F +GLIBC_2.2 readdir64 F +GLIBC_2.2 readdir64_r F +GLIBC_2.2 rexec_af F +GLIBC_2.2 rresvport_af F +GLIBC_2.2 rtime F +GLIBC_2.2 ruserok_af F +GLIBC_2.2 scandir64 F +GLIBC_2.2 semctl F +GLIBC_2.2 sendfile F +GLIBC_2.2 setrlimit64 F +GLIBC_2.2 setutxent F +GLIBC_2.2 shmctl F +GLIBC_2.2 sighold F +GLIBC_2.2 sigignore F +GLIBC_2.2 sigqueue F +GLIBC_2.2 sigrelse F +GLIBC_2.2 sigset F +GLIBC_2.2 sigtimedwait F +GLIBC_2.2 sigwaitinfo F +GLIBC_2.2 statfs64 F +GLIBC_2.2 statvfs F +GLIBC_2.2 statvfs64 F +GLIBC_2.2 strcasestr F +GLIBC_2.2 strchrnul F +GLIBC_2.2 strtoimax F +GLIBC_2.2 strtoumax F +GLIBC_2.2 strverscmp F +GLIBC_2.2 svc_getreq_common F +GLIBC_2.2 svc_getreq_poll F +GLIBC_2.2 svc_max_pollfd D 0x4 +GLIBC_2.2 svc_pollfd D 0x4 +GLIBC_2.2 svcunix_create F +GLIBC_2.2 svcunixfd_create F +GLIBC_2.2 swapcontext F +GLIBC_2.2 swprintf F +GLIBC_2.2 swscanf F +GLIBC_2.2 sys_errlist D 0x11b8 +GLIBC_2.2 sys_nerr D 0x4 +GLIBC_2.2 sys_sigabbrev D 0x100 +GLIBC_2.2 sys_siglist D 0x100 +GLIBC_2.2 sysv_signal F +GLIBC_2.2 tcgetsid F +GLIBC_2.2 tdestroy F +GLIBC_2.2 tmpfile F +GLIBC_2.2 tmpfile64 F +GLIBC_2.2 truncate64 F +GLIBC_2.2 umount2 F +GLIBC_2.2 ungetwc F +GLIBC_2.2 unlockpt F +GLIBC_2.2 updwtmpx F +GLIBC_2.2 user2netname F +GLIBC_2.2 utmpxname F +GLIBC_2.2 versionsort F +GLIBC_2.2 versionsort64 F +GLIBC_2.2 vfwprintf F +GLIBC_2.2 vfwscanf F +GLIBC_2.2 vswprintf F +GLIBC_2.2 vswscanf F +GLIBC_2.2 vwprintf F +GLIBC_2.2 vwscanf F +GLIBC_2.2 waitid F +GLIBC_2.2 wcscasecmp F +GLIBC_2.2 wcschrnul F +GLIBC_2.2 wcsftime F +GLIBC_2.2 wcsncasecmp F +GLIBC_2.2 wcsnlen F +GLIBC_2.2 wcstoimax F +GLIBC_2.2 wcstoll F +GLIBC_2.2 wcstoull F +GLIBC_2.2 wcstoumax F +GLIBC_2.2 wcswcs F +GLIBC_2.2 wmempcpy F +GLIBC_2.2 wordexp F +GLIBC_2.2 wordfree F +GLIBC_2.2 wprintf F +GLIBC_2.2 wscanf F +GLIBC_2.2 xdecrypt F +GLIBC_2.2 xdr_authdes_cred F +GLIBC_2.2 xdr_authdes_verf F +GLIBC_2.2 xdr_getcredres F +GLIBC_2.2 xdr_hyper F +GLIBC_2.2 xdr_int16_t F +GLIBC_2.2 xdr_int32_t F +GLIBC_2.2 xdr_int64_t F +GLIBC_2.2 xdr_int8_t F +GLIBC_2.2 xdr_longlong_t F +GLIBC_2.2 xdr_netnamestr F +GLIBC_2.2 xdr_sizeof F +GLIBC_2.2 xdr_u_hyper F +GLIBC_2.2 xdr_u_longlong_t F +GLIBC_2.2 xdr_uint16_t F +GLIBC_2.2 xdr_uint32_t F +GLIBC_2.2 xdr_uint64_t F +GLIBC_2.2 xdr_uint8_t F +GLIBC_2.2 xdr_unixcred F +GLIBC_2.2.1 GLIBC_2.2.1 A +GLIBC_2.2.1 pivot_root F +GLIBC_2.2.1 posix_openpt F +GLIBC_2.2.2 GLIBC_2.2.2 A +GLIBC_2.2.2 __nss_hostname_digits_dots F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 __rpc_thread_createerr F +GLIBC_2.2.3 __rpc_thread_svc_fdset F +GLIBC_2.2.3 __rpc_thread_svc_max_pollfd F +GLIBC_2.2.3 __rpc_thread_svc_pollfd F +GLIBC_2.2.3 fnmatch F +GLIBC_2.2.3 sprofil F +GLIBC_2.2.4 GLIBC_2.2.4 A +GLIBC_2.2.4 dl_iterate_phdr F +GLIBC_2.2.4 getgrouplist F +GLIBC_2.2.4 sockatmark F +GLIBC_2.2.6 GLIBC_2.2.6 A +GLIBC_2.2.6 __nanosleep F +GLIBC_2.22 GLIBC_2.22 A +GLIBC_2.22 fmemopen F +GLIBC_2.23 GLIBC_2.23 A +GLIBC_2.23 fts64_children F +GLIBC_2.23 fts64_close F +GLIBC_2.23 fts64_open F +GLIBC_2.23 fts64_read F +GLIBC_2.23 fts64_set F +GLIBC_2.24 GLIBC_2.24 A +GLIBC_2.24 quick_exit F +GLIBC_2.25 GLIBC_2.25 A +GLIBC_2.25 __explicit_bzero_chk F +GLIBC_2.25 explicit_bzero F +GLIBC_2.25 getentropy F +GLIBC_2.25 getrandom F +GLIBC_2.25 strfromd F +GLIBC_2.25 strfromf F +GLIBC_2.25 strfroml F +GLIBC_2.26 GLIBC_2.26 A +GLIBC_2.26 preadv2 F +GLIBC_2.26 preadv64v2 F +GLIBC_2.26 pwritev2 F +GLIBC_2.26 pwritev64v2 F +GLIBC_2.26 reallocarray F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __ctype_b_loc F +GLIBC_2.3 __ctype_tolower_loc F +GLIBC_2.3 __ctype_toupper_loc F +GLIBC_2.3 __isctype F +GLIBC_2.3 __strftime_l F +GLIBC_2.3 __uselocale F +GLIBC_2.3 __wcsftime_l F +GLIBC_2.3 duplocale F +GLIBC_2.3 fgetxattr F +GLIBC_2.3 flistxattr F +GLIBC_2.3 freeifaddrs F +GLIBC_2.3 freelocale F +GLIBC_2.3 fremovexattr F +GLIBC_2.3 fsetxattr F +GLIBC_2.3 futimes F +GLIBC_2.3 getifaddrs F +GLIBC_2.3 getxattr F +GLIBC_2.3 isalnum_l F +GLIBC_2.3 isalpha_l F +GLIBC_2.3 isblank_l F +GLIBC_2.3 iscntrl_l F +GLIBC_2.3 isctype F +GLIBC_2.3 isdigit_l F +GLIBC_2.3 isgraph_l F +GLIBC_2.3 islower_l F +GLIBC_2.3 isprint_l F +GLIBC_2.3 ispunct_l F +GLIBC_2.3 isspace_l F +GLIBC_2.3 isupper_l F +GLIBC_2.3 iswalnum_l F +GLIBC_2.3 iswalpha_l F +GLIBC_2.3 iswblank_l F +GLIBC_2.3 iswcntrl_l F +GLIBC_2.3 iswctype_l F +GLIBC_2.3 iswdigit_l F +GLIBC_2.3 iswgraph_l F +GLIBC_2.3 iswlower_l F +GLIBC_2.3 iswprint_l F +GLIBC_2.3 iswpunct_l F +GLIBC_2.3 iswspace_l F +GLIBC_2.3 iswupper_l F +GLIBC_2.3 iswxdigit_l F +GLIBC_2.3 isxdigit_l F +GLIBC_2.3 lgetxattr F +GLIBC_2.3 listxattr F +GLIBC_2.3 llistxattr F +GLIBC_2.3 lremovexattr F +GLIBC_2.3 lsetxattr F +GLIBC_2.3 lutimes F +GLIBC_2.3 newlocale F +GLIBC_2.3 nl_langinfo_l F +GLIBC_2.3 readahead F +GLIBC_2.3 realpath F +GLIBC_2.3 removexattr F +GLIBC_2.3 sendfile64 F +GLIBC_2.3 setxattr F +GLIBC_2.3 strcasecmp_l F +GLIBC_2.3 strcoll_l F +GLIBC_2.3 strfmon_l F +GLIBC_2.3 strftime_l F +GLIBC_2.3 strncasecmp_l F +GLIBC_2.3 strtod_l F +GLIBC_2.3 strtof_l F +GLIBC_2.3 strtol_l F +GLIBC_2.3 strtold_l F +GLIBC_2.3 strtoll_l F +GLIBC_2.3 strtoul_l F +GLIBC_2.3 strtoull_l F +GLIBC_2.3 strxfrm_l F +GLIBC_2.3 tolower_l F +GLIBC_2.3 toupper_l F +GLIBC_2.3 towctrans_l F +GLIBC_2.3 towlower_l F +GLIBC_2.3 towupper_l F +GLIBC_2.3 uselocale F +GLIBC_2.3 wcscasecmp_l F +GLIBC_2.3 wcscoll_l F +GLIBC_2.3 wcsftime_l F +GLIBC_2.3 wcsncasecmp_l F +GLIBC_2.3 wcstod_l F +GLIBC_2.3 wcstof_l F +GLIBC_2.3 wcstol_l F +GLIBC_2.3 wcstold_l F +GLIBC_2.3 wcstoll_l F +GLIBC_2.3 wcstoul_l F +GLIBC_2.3 wcstoull_l F +GLIBC_2.3 wcsxfrm_l F +GLIBC_2.3 wctrans_l F +GLIBC_2.3 wctype_l F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __register_atfork F +GLIBC_2.3.2 epoll_create F +GLIBC_2.3.2 epoll_ctl F +GLIBC_2.3.2 epoll_wait F +GLIBC_2.3.2 lchmod F +GLIBC_2.3.2 pthread_cond_broadcast F +GLIBC_2.3.2 pthread_cond_destroy F +GLIBC_2.3.2 pthread_cond_init F +GLIBC_2.3.2 pthread_cond_signal F +GLIBC_2.3.2 pthread_cond_timedwait F +GLIBC_2.3.2 pthread_cond_wait F +GLIBC_2.3.2 strptime_l F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 _sys_siglist D 0x200 +GLIBC_2.3.3 gnu_dev_major F +GLIBC_2.3.3 gnu_dev_makedev F +GLIBC_2.3.3 gnu_dev_minor F +GLIBC_2.3.3 inet6_option_alloc F +GLIBC_2.3.3 inet6_option_append F +GLIBC_2.3.3 inet6_option_find F +GLIBC_2.3.3 inet6_option_init F +GLIBC_2.3.3 inet6_option_next F +GLIBC_2.3.3 inet6_option_space F +GLIBC_2.3.3 nftw F +GLIBC_2.3.3 nftw64 F +GLIBC_2.3.3 posix_fadvise64 F +GLIBC_2.3.3 posix_fallocate64 F +GLIBC_2.3.3 remap_file_pages F +GLIBC_2.3.3 sched_getaffinity F +GLIBC_2.3.3 sched_setaffinity F +GLIBC_2.3.3 semtimedop F +GLIBC_2.3.3 sys_sigabbrev D 0x200 +GLIBC_2.3.3 sys_siglist D 0x200 +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 __chk_fail F +GLIBC_2.3.4 __fprintf_chk F +GLIBC_2.3.4 __gets_chk F +GLIBC_2.3.4 __memcpy_chk F +GLIBC_2.3.4 __memmove_chk F +GLIBC_2.3.4 __mempcpy_chk F +GLIBC_2.3.4 __memset_chk F +GLIBC_2.3.4 __printf_chk F +GLIBC_2.3.4 __snprintf_chk F +GLIBC_2.3.4 __sprintf_chk F +GLIBC_2.3.4 __stpcpy_chk F +GLIBC_2.3.4 __strcat_chk F +GLIBC_2.3.4 __strcpy_chk F +GLIBC_2.3.4 __strncat_chk F +GLIBC_2.3.4 __strncpy_chk F +GLIBC_2.3.4 __vfprintf_chk F +GLIBC_2.3.4 __vprintf_chk F +GLIBC_2.3.4 __vsnprintf_chk F +GLIBC_2.3.4 __vsprintf_chk F +GLIBC_2.3.4 __xpg_strerror_r F +GLIBC_2.3.4 getipv4sourcefilter F +GLIBC_2.3.4 getsourcefilter F +GLIBC_2.3.4 regexec F +GLIBC_2.3.4 sched_getaffinity F +GLIBC_2.3.4 sched_setaffinity F +GLIBC_2.3.4 setipv4sourcefilter F +GLIBC_2.3.4 setsourcefilter F +GLIBC_2.3.4 xdr_quad_t F +GLIBC_2.3.4 xdr_u_quad_t F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __confstr_chk F +GLIBC_2.4 __fgets_chk F +GLIBC_2.4 __fgets_unlocked_chk F +GLIBC_2.4 __fgetws_chk F +GLIBC_2.4 __fgetws_unlocked_chk F +GLIBC_2.4 __fwprintf_chk F +GLIBC_2.4 __fxstatat F +GLIBC_2.4 __fxstatat64 F +GLIBC_2.4 __getcwd_chk F +GLIBC_2.4 __getdomainname_chk F +GLIBC_2.4 __getgroups_chk F +GLIBC_2.4 __gethostname_chk F +GLIBC_2.4 __getlogin_r_chk F +GLIBC_2.4 __getwd_chk F +GLIBC_2.4 __mbsnrtowcs_chk F +GLIBC_2.4 __mbsrtowcs_chk F +GLIBC_2.4 __mbstowcs_chk F +GLIBC_2.4 __pread64_chk F +GLIBC_2.4 __pread_chk F +GLIBC_2.4 __ptsname_r_chk F +GLIBC_2.4 __read_chk F +GLIBC_2.4 __readlink_chk F +GLIBC_2.4 __realpath_chk F +GLIBC_2.4 __recv_chk F +GLIBC_2.4 __recvfrom_chk F +GLIBC_2.4 __stack_chk_fail F +GLIBC_2.4 __stpncpy_chk F +GLIBC_2.4 __swprintf_chk F +GLIBC_2.4 __syslog_chk F +GLIBC_2.4 __ttyname_r_chk F +GLIBC_2.4 __vfwprintf_chk F +GLIBC_2.4 __vswprintf_chk F +GLIBC_2.4 __vsyslog_chk F +GLIBC_2.4 __vwprintf_chk F +GLIBC_2.4 __wcpcpy_chk F +GLIBC_2.4 __wcpncpy_chk F +GLIBC_2.4 __wcrtomb_chk F +GLIBC_2.4 __wcscat_chk F +GLIBC_2.4 __wcscpy_chk F +GLIBC_2.4 __wcsncat_chk F +GLIBC_2.4 __wcsncpy_chk F +GLIBC_2.4 __wcsnrtombs_chk F +GLIBC_2.4 __wcsrtombs_chk F +GLIBC_2.4 __wcstombs_chk F +GLIBC_2.4 __wctomb_chk F +GLIBC_2.4 __wmemcpy_chk F +GLIBC_2.4 __wmemmove_chk F +GLIBC_2.4 __wmempcpy_chk F +GLIBC_2.4 __wmemset_chk F +GLIBC_2.4 __wprintf_chk F +GLIBC_2.4 __xmknodat F +GLIBC_2.4 eaccess F +GLIBC_2.4 faccessat F +GLIBC_2.4 fchmodat F +GLIBC_2.4 fchownat F +GLIBC_2.4 fdopendir F +GLIBC_2.4 futimesat F +GLIBC_2.4 inotify_add_watch F +GLIBC_2.4 inotify_init F +GLIBC_2.4 inotify_rm_watch F +GLIBC_2.4 linkat F +GLIBC_2.4 mkdirat F +GLIBC_2.4 mkfifoat F +GLIBC_2.4 open_wmemstream F +GLIBC_2.4 openat F +GLIBC_2.4 openat64 F +GLIBC_2.4 ppoll F +GLIBC_2.4 readlinkat F +GLIBC_2.4 renameat F +GLIBC_2.4 symlinkat F +GLIBC_2.4 unlinkat F +GLIBC_2.4 unshare F +GLIBC_2.5 GLIBC_2.5 A +GLIBC_2.5 __readlinkat_chk F +GLIBC_2.5 inet6_opt_append F +GLIBC_2.5 inet6_opt_find F +GLIBC_2.5 inet6_opt_finish F +GLIBC_2.5 inet6_opt_get_val F +GLIBC_2.5 inet6_opt_init F +GLIBC_2.5 inet6_opt_next F +GLIBC_2.5 inet6_opt_set_val F +GLIBC_2.5 inet6_rth_add F +GLIBC_2.5 inet6_rth_getaddr F +GLIBC_2.5 inet6_rth_init F +GLIBC_2.5 inet6_rth_reverse F +GLIBC_2.5 inet6_rth_segments F +GLIBC_2.5 inet6_rth_space F +GLIBC_2.5 splice F +GLIBC_2.5 tee F +GLIBC_2.5 vmsplice F +GLIBC_2.6 GLIBC_2.6 A +GLIBC_2.6 __sched_cpucount F +GLIBC_2.6 epoll_pwait F +GLIBC_2.6 futimens F +GLIBC_2.6 sched_getcpu F +GLIBC_2.6 strerror_l F +GLIBC_2.6 sync_file_range F +GLIBC_2.6 utimensat F +GLIBC_2.7 GLIBC_2.7 A +GLIBC_2.7 __fread_chk F +GLIBC_2.7 __fread_unlocked_chk F +GLIBC_2.7 __isoc99_fscanf F +GLIBC_2.7 __isoc99_fwscanf F +GLIBC_2.7 __isoc99_scanf F +GLIBC_2.7 __isoc99_sscanf F +GLIBC_2.7 __isoc99_swscanf F +GLIBC_2.7 __isoc99_vfscanf F +GLIBC_2.7 __isoc99_vfwscanf F +GLIBC_2.7 __isoc99_vscanf F +GLIBC_2.7 __isoc99_vsscanf F +GLIBC_2.7 __isoc99_vswscanf F +GLIBC_2.7 __isoc99_vwscanf F +GLIBC_2.7 __isoc99_wscanf F +GLIBC_2.7 __open64_2 F +GLIBC_2.7 __open_2 F +GLIBC_2.7 __openat64_2 F +GLIBC_2.7 __openat_2 F +GLIBC_2.7 __sched_cpualloc F +GLIBC_2.7 __sched_cpufree F +GLIBC_2.7 eventfd F +GLIBC_2.7 eventfd_read F +GLIBC_2.7 eventfd_write F +GLIBC_2.7 mkostemp F +GLIBC_2.7 mkostemp64 F +GLIBC_2.7 signalfd F +GLIBC_2.8 GLIBC_2.8 A +GLIBC_2.8 __asprintf_chk F +GLIBC_2.8 __dprintf_chk F +GLIBC_2.8 __obstack_printf_chk F +GLIBC_2.8 __obstack_vprintf_chk F +GLIBC_2.8 __vasprintf_chk F +GLIBC_2.8 __vdprintf_chk F +GLIBC_2.8 qsort_r F +GLIBC_2.8 timerfd_create F +GLIBC_2.8 timerfd_gettime F +GLIBC_2.8 timerfd_settime F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 dup3 F +GLIBC_2.9 epoll_create1 F +GLIBC_2.9 inotify_init1 F +GLIBC_2.9 pipe2 F +_gp_disp _gp_disp A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/readahead.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/readahead.c new file mode 100644 index 0000000000..80170c3e8a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/readahead.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/arm/readahead.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/syscalls.list b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/syscalls.list new file mode 100644 index 0000000000..f357b5c918 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/syscalls.list @@ -0,0 +1,5 @@ +# File name Caller Syscall name # args Strong name Weak names + +prlimit64 EXTRA prlimit64 i:iipp prlimit64 + +fanotify_mark EXTRA fanotify_mark i:iiiiis fanotify_mark diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h new file mode 100644 index 0000000000..e9e3ee7e82 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h @@ -0,0 +1,396 @@ +/* Copyright (C) 2000-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _LINUX_MIPS_MIPS32_SYSDEP_H +#define _LINUX_MIPS_MIPS32_SYSDEP_H 1 + +/* There is some commonality. */ +#include <sysdeps/unix/sysv/linux/sysdep.h> +#include <sysdeps/unix/mips/mips32/sysdep.h> + +#include <tls.h> + +/* In order to get __set_errno() definition in INLINE_SYSCALL. */ +#ifndef __ASSEMBLER__ +#include <errno.h> +#endif + +/* 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 + +#ifdef __ASSEMBLER__ + +/* We don't want the label for the error handler to be visible in the symbol + table when we define it here. */ +#ifdef __PIC__ +# define SYSCALL_ERROR_LABEL 99b +#endif + +#else /* ! __ASSEMBLER__ */ + +/* Define a macro which expands into the inline wrapper code for a system + call. */ +#undef INLINE_SYSCALL +#define INLINE_SYSCALL(name, nr, args...) \ + ({ INTERNAL_SYSCALL_DECL (_sc_err); \ + long result_var = INTERNAL_SYSCALL (name, _sc_err, nr, args); \ + if ( INTERNAL_SYSCALL_ERROR_P (result_var, _sc_err) ) \ + { \ + __set_errno (INTERNAL_SYSCALL_ERRNO (result_var, _sc_err)); \ + result_var = -1L; \ + } \ + result_var; }) + +#undef INTERNAL_SYSCALL_DECL +#define INTERNAL_SYSCALL_DECL(err) long err __attribute__ ((unused)) + +#undef INTERNAL_SYSCALL_ERROR_P +#define INTERNAL_SYSCALL_ERROR_P(val, err) ((void) (val), (long) (err)) + +#undef INTERNAL_SYSCALL_ERRNO +#define INTERNAL_SYSCALL_ERRNO(val, err) ((void) (err), val) + +/* Note that the original Linux syscall restart convention required the + instruction immediately preceding SYSCALL to initialize $v0 with the + syscall number. Then if a restart triggered, $v0 would have been + clobbered by the syscall interrupted, and needed to be reinititalized. + The kernel would decrement the PC by 4 before switching back to the + user mode so that $v0 had been reloaded before SYSCALL was executed + again. This implied the place $v0 was loaded from must have been + preserved across a syscall, e.g. an immediate, static register, stack + slot, etc. + + The convention was relaxed in Linux with a change applied to the kernel + GIT repository as commit 96187fb0bc30cd7919759d371d810e928048249d, that + first appeared in the 2.6.36 release. Since then the kernel has had + code that reloads $v0 upon syscall restart and resumes right at the + SYSCALL instruction, so no special arrangement is needed anymore. + + For backwards compatibility with existing kernel binaries we support + the old convention by choosing the instruction preceding SYSCALL + carefully. This also means we have to force a 32-bit encoding of the + microMIPS MOVE instruction if one is used. */ + +#ifdef __mips_micromips +# define MOVE32 "move32" +#else +# define MOVE32 "move" +#endif + +#undef INTERNAL_SYSCALL +#undef INTERNAL_SYSCALL_NCS + +#ifdef __mips16 +/* There's no MIPS16 syscall instruction, so we go through out-of-line + standard MIPS wrappers. These do use inline snippets below though, + through INTERNAL_SYSCALL_MIPS16. Spilling the syscall number to + memory gives the best code in that case, avoiding the need to save + and restore a static register. */ + +# include <mips16-syscall.h> + +# define INTERNAL_SYSCALL(name, err, nr, args...) \ + INTERNAL_SYSCALL_NCS (SYS_ify (name), err, nr, args) + +# define INTERNAL_SYSCALL_NCS(number, err, nr, args...) \ +({ \ + union __mips16_syscall_return _sc_ret; \ + _sc_ret.val = __mips16_syscall##nr (args, number); \ + err = _sc_ret.reg.v1; \ + _sc_ret.reg.v0; \ +}) + +# define INTERNAL_SYSCALL_MIPS16(number, err, nr, args...) \ + internal_syscall##nr ("lw\t%0, %2\n\t", \ + "R" (number), \ + 0, err, args) + +#else /* !__mips16 */ +# define INTERNAL_SYSCALL(name, err, nr, args...) \ + internal_syscall##nr ("li\t%0, %2\t\t\t# " #name "\n\t", \ + "IK" (SYS_ify (name)), \ + 0, err, args) + +# define INTERNAL_SYSCALL_NCS(number, err, nr, args...) \ + internal_syscall##nr (MOVE32 "\t%0, %2\n\t", \ + "r" (__s0), \ + number, err, args) + +#endif /* !__mips16 */ + +#define internal_syscall0(v0_init, input, number, err, dummy...) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set reorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall1(v0_init, input, number, err, arg1) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set reorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall2(v0_init, input, number, err, arg1, arg2) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0), "r" (__a1) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall3(v0_init, input, number, err, \ + arg1, arg2, arg3) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall4(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +/* We need to use a frame pointer for the functions in which we + adjust $sp around the syscall, or debug information and unwind + information will be $sp relative and thus wrong during the syscall. As + of GCC 4.7, this is sufficient. */ +#define FORCE_FRAME_POINTER \ + void *volatile __fp_force __attribute__ ((unused)) = alloca (4) + +#define internal_syscall5(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5) \ +({ \ + long _sys_result; \ + \ + FORCE_FRAME_POINTER; \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + "subu\t$29, 32\n\t" \ + "sw\t%6, 16($29)\n\t" \ + v0_init \ + "syscall\n\t" \ + "addiu\t$29, 32\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), \ + "r" ((long) (arg5)) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall6(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5, arg6) \ +({ \ + long _sys_result; \ + \ + FORCE_FRAME_POINTER; \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + "subu\t$29, 32\n\t" \ + "sw\t%6, 16($29)\n\t" \ + "sw\t%7, 20($29)\n\t" \ + v0_init \ + "syscall\n\t" \ + "addiu\t$29, 32\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), \ + "r" ((long) (arg5)), "r" ((long) (arg6)) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall7(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5, arg6, arg7) \ +({ \ + long _sys_result; \ + \ + FORCE_FRAME_POINTER; \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + "subu\t$29, 32\n\t" \ + "sw\t%6, 16($29)\n\t" \ + "sw\t%7, 20($29)\n\t" \ + "sw\t%8, 24($29)\n\t" \ + v0_init \ + "syscall\n\t" \ + "addiu\t$29, 32\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), \ + "r" ((long) (arg5)), "r" ((long) (arg6)), "r" ((long) (arg7)) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define __SYSCALL_CLOBBERS "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", \ + "$14", "$15", "$24", "$25", "hi", "lo", "memory" + +/* Standard MIPS syscalls have an error flag, and return a positive errno + when the error flag is set. Emulate this behaviour for vsyscalls so that + the INTERNAL_SYSCALL_{ERROR_P,ERRNO} macros work correctly. */ +#define INTERNAL_VSYSCALL_CALL(funcptr, err, nr, args...) \ + ({ \ + long _ret = funcptr (args); \ + err = ((unsigned long) (_ret) >= (unsigned long) -4095L); \ + if (err) \ + _ret = -_ret; \ + _ret; \ + }) + +/* List of system calls which are supported as vsyscalls. */ +#define HAVE_CLOCK_GETTIME_VSYSCALL 1 +#define HAVE_GETTIMEOFDAY_VSYSCALL 1 + +#endif /* __ASSEMBLER__ */ + +/* Pointer mangling is not yet supported for MIPS. */ +#define PTR_MANGLE(var) (void) (var) +#define PTR_DEMANGLE(var) (void) (var) + +#endif /* linux/mips/mips32/sysdep.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/Makefile b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/Makefile new file mode 100644 index 0000000000..b4fb190bba --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/Makefile @@ -0,0 +1,21 @@ +ifeq ($(subdir),socket) +CFLAGS-recv.c += -fexceptions +CFLAGS-send.c += -fexceptions +endif + +ifeq ($(subdir),nptl) +CFLAGS-recv.c += -fexceptions +CFLAGS-send.c += -fexceptions +endif + +ifeq ($(subdir),signal) +# sigaction.c defines static functions in asms and refers to them from +# C code, resulting in "'restore_rt' used but never defined" (which +# has no corresponding warning option to allow it to be disabled with +# diagnostic pragmas). +CFLAGS-sigaction.c += -Wno-error +endif + +ifeq ($(subdir),nptl) +CFLAGS-sigaction.c += -Wno-error +endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/configure b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/configure new file mode 100644 index 0000000000..26bed649db --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/configure @@ -0,0 +1,4 @@ +# This file is generated from configure.ac by Autoconf. DO NOT EDIT! + # Local configure fragment for sysdeps/unix/sysv/linux/mips/mips64. + +ldd_rewrite_script=$dir/ldd-rewrite.sed diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/configure.ac b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/configure.ac new file mode 100644 index 0000000000..c137ec5552 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/configure.ac @@ -0,0 +1,5 @@ +sinclude(./aclocal.m4)dnl Autoconf lossage +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +# Local configure fragment for sysdeps/unix/sysv/linux/mips/mips64. + +ldd_rewrite_script=$dir/ldd-rewrite.sed diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c new file mode 100644 index 0000000000..5be899f2af --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c @@ -0,0 +1,44 @@ +/* fxstat64 using 64-bit MIPS fstat system call. + Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stddef.h> +#include <sys/stat.h> +#include <kernel_stat.h> + +#include <sysdep.h> +#include <sys/syscall.h> + +#include <xstatconv.h> + +/* Get information about the file FD in BUF. */ + +int +__fxstat64 (int vers, int fd, struct stat64 *buf) +{ + int result; + struct kernel_stat kbuf; + + result = INLINE_SYSCALL (fstat, 2, fd, &kbuf); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + + return result; +} + +hidden_def (__fxstat64) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c new file mode 100644 index 0000000000..0019359f72 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c @@ -0,0 +1,55 @@ +/* Copyright (C) 2005-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <fcntl.h> +#include <stddef.h> +#include <stdio.h> +#include <string.h> +#include <sys/stat.h> +#include <kernel_stat.h> + +#include <sysdep.h> +#include <sys/syscall.h> + +#include <xstatconv.h> + +/* Get information about the file NAME in BUF. */ + +int +__fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag) +{ + if (__builtin_expect (vers != _STAT_VER_LINUX, 0)) + { + __set_errno (EINVAL); + return -1; + } + + int result; + INTERNAL_SYSCALL_DECL (err); + struct kernel_stat kst; + + result = INTERNAL_SYSCALL (newfstatat, err, 4, fd, file, &kst, flag); + if (!__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat64_conv (vers, &kst, st); + else + { + __set_errno (INTERNAL_SYSCALL_ERRNO (result, err)); + return -1; + } +} +libc_hidden_def (__fxstatat64) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ipc_priv.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ipc_priv.h new file mode 100644 index 0000000000..de7bb68b37 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ipc_priv.h @@ -0,0 +1,32 @@ +/* Old SysV permission definition for Linux. MIPS64 version. + Copyright (C) 2016-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sys/ipc.h> + +#define __IPC_64 0x100 + +struct __old_ipc_perm +{ + __key_t __key; /* Key. */ + int uid; /* Owner's user ID. */ + int gid; /* Owner's group ID. */ + int cuid; /* Creator's user ID. */ + int cgid; /* Creator's group ID. */ + int mode; /* Read/write permission. */ + unsigned short int __seq; /* Sequence number. */ +}; diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h new file mode 100644 index 0000000000..7430fb7718 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h @@ -0,0 +1,25 @@ +/* Copyright (C) 2001-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdeps/generic/ldconfig.h> + +#define SYSDEP_KNOWN_INTERPRETER_NAMES \ + { "/lib32/ld.so.1", FLAG_ELF_LIBC6 }, \ + { "/lib64/ld.so.1", FLAG_ELF_LIBC6 }, +#define SYSDEP_KNOWN_LIBRARY_NAMES \ + { "libc.so.6", FLAG_ELF_LIBC6 }, \ + { "libm.so.6", FLAG_ELF_LIBC6 }, diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed new file mode 100644 index 0000000000..2c327327e0 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed @@ -0,0 +1 @@ +s_^\(RTLDLIST=\)\(.*lib\)\(\|32\|64\)\(/[^/]*\.so\.[0-9.]*\)[ ]*$_\1"\232\4 \264\4 \2\4"_ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libBrokenLocale.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libBrokenLocale.abilist new file mode 100644 index 0000000000..4a56bb68a3 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libBrokenLocale.abilist @@ -0,0 +1,2 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __ctype_get_mb_cur_max F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libanl.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libanl.abilist new file mode 100644 index 0000000000..edabfb436e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libanl.abilist @@ -0,0 +1,5 @@ +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 gai_cancel F +GLIBC_2.2.3 gai_error F +GLIBC_2.2.3 gai_suspend F +GLIBC_2.2.3 getaddrinfo_a F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libcrypt.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libcrypt.abilist new file mode 100644 index 0000000000..4db2639336 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libcrypt.abilist @@ -0,0 +1,8 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 crypt F +GLIBC_2.0 crypt_r F +GLIBC_2.0 encrypt F +GLIBC_2.0 encrypt_r F +GLIBC_2.0 fcrypt F +GLIBC_2.0 setkey F +GLIBC_2.0 setkey_r F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libdl.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libdl.abilist new file mode 100644 index 0000000000..b4c577e4a6 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libdl.abilist @@ -0,0 +1,14 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 dladdr F +GLIBC_2.0 dlclose F +GLIBC_2.0 dlerror F +GLIBC_2.0 dlopen F +GLIBC_2.0 dlsym F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 dlopen F +GLIBC_2.2 dlvsym F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 dladdr1 F +GLIBC_2.3.3 dlinfo F +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 dlmopen F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist new file mode 100644 index 0000000000..b9599fee34 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -0,0 +1,465 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _LIB_VERSION D 0x4 +GLIBC_2.0 acos F +GLIBC_2.0 acosf F +GLIBC_2.0 acosh F +GLIBC_2.0 acoshf F +GLIBC_2.0 acoshl F +GLIBC_2.0 acosl F +GLIBC_2.0 asin F +GLIBC_2.0 asinf F +GLIBC_2.0 asinh F +GLIBC_2.0 asinhf F +GLIBC_2.0 asinhl F +GLIBC_2.0 asinl F +GLIBC_2.0 atan F +GLIBC_2.0 atan2 F +GLIBC_2.0 atan2f F +GLIBC_2.0 atan2l F +GLIBC_2.0 atanf F +GLIBC_2.0 atanh F +GLIBC_2.0 atanhf F +GLIBC_2.0 atanhl F +GLIBC_2.0 atanl F +GLIBC_2.0 cbrt F +GLIBC_2.0 cbrtf F +GLIBC_2.0 cbrtl F +GLIBC_2.0 ceil F +GLIBC_2.0 ceilf F +GLIBC_2.0 ceill F +GLIBC_2.0 copysign F +GLIBC_2.0 copysignf F +GLIBC_2.0 copysignl F +GLIBC_2.0 cos F +GLIBC_2.0 cosf F +GLIBC_2.0 cosh F +GLIBC_2.0 coshf F +GLIBC_2.0 coshl F +GLIBC_2.0 cosl F +GLIBC_2.0 drem F +GLIBC_2.0 dremf F +GLIBC_2.0 dreml F +GLIBC_2.0 erf F +GLIBC_2.0 erfc F +GLIBC_2.0 erfcf F +GLIBC_2.0 erfcl F +GLIBC_2.0 erff F +GLIBC_2.0 erfl F +GLIBC_2.0 exp F +GLIBC_2.0 expf F +GLIBC_2.0 expl F +GLIBC_2.0 expm1 F +GLIBC_2.0 expm1f F +GLIBC_2.0 expm1l F +GLIBC_2.0 fabs F +GLIBC_2.0 fabsf F +GLIBC_2.0 fabsl F +GLIBC_2.0 finite F +GLIBC_2.0 finitef F +GLIBC_2.0 finitel F +GLIBC_2.0 floor F +GLIBC_2.0 floorf F +GLIBC_2.0 floorl F +GLIBC_2.0 fmod F +GLIBC_2.0 fmodf F +GLIBC_2.0 fmodl F +GLIBC_2.0 frexp F +GLIBC_2.0 frexpf F +GLIBC_2.0 frexpl F +GLIBC_2.0 gamma F +GLIBC_2.0 gammaf F +GLIBC_2.0 gammal F +GLIBC_2.0 hypot F +GLIBC_2.0 hypotf F +GLIBC_2.0 hypotl F +GLIBC_2.0 ilogb F +GLIBC_2.0 ilogbf F +GLIBC_2.0 ilogbl F +GLIBC_2.0 j0 F +GLIBC_2.0 j0f F +GLIBC_2.0 j0l F +GLIBC_2.0 j1 F +GLIBC_2.0 j1f F +GLIBC_2.0 j1l F +GLIBC_2.0 jn F +GLIBC_2.0 jnf F +GLIBC_2.0 jnl F +GLIBC_2.0 ldexp F +GLIBC_2.0 ldexpf F +GLIBC_2.0 ldexpl F +GLIBC_2.0 lgamma F +GLIBC_2.0 lgamma_r F +GLIBC_2.0 lgammaf F +GLIBC_2.0 lgammaf_r F +GLIBC_2.0 lgammal F +GLIBC_2.0 lgammal_r F +GLIBC_2.0 log F +GLIBC_2.0 log10 F +GLIBC_2.0 log10f F +GLIBC_2.0 log10l F +GLIBC_2.0 log1p F +GLIBC_2.0 log1pf F +GLIBC_2.0 log1pl F +GLIBC_2.0 logb F +GLIBC_2.0 logbf F +GLIBC_2.0 logbl F +GLIBC_2.0 logf F +GLIBC_2.0 logl F +GLIBC_2.0 matherr F +GLIBC_2.0 modf F +GLIBC_2.0 modff F +GLIBC_2.0 modfl F +GLIBC_2.0 nextafter F +GLIBC_2.0 nextafterf F +GLIBC_2.0 nextafterl F +GLIBC_2.0 pow F +GLIBC_2.0 powf F +GLIBC_2.0 powl F +GLIBC_2.0 remainder F +GLIBC_2.0 remainderf F +GLIBC_2.0 remainderl F +GLIBC_2.0 rint F +GLIBC_2.0 rintf F +GLIBC_2.0 rintl F +GLIBC_2.0 scalb F +GLIBC_2.0 scalbf F +GLIBC_2.0 scalbl F +GLIBC_2.0 scalbn F +GLIBC_2.0 scalbnf F +GLIBC_2.0 scalbnl F +GLIBC_2.0 signgam D 0x4 +GLIBC_2.0 significand F +GLIBC_2.0 significandf F +GLIBC_2.0 significandl F +GLIBC_2.0 sin F +GLIBC_2.0 sinf F +GLIBC_2.0 sinh F +GLIBC_2.0 sinhf F +GLIBC_2.0 sinhl F +GLIBC_2.0 sinl F +GLIBC_2.0 sqrt F +GLIBC_2.0 sqrtf F +GLIBC_2.0 sqrtl F +GLIBC_2.0 tan F +GLIBC_2.0 tanf F +GLIBC_2.0 tanh F +GLIBC_2.0 tanhf F +GLIBC_2.0 tanhl F +GLIBC_2.0 tanl F +GLIBC_2.0 y0 F +GLIBC_2.0 y0f F +GLIBC_2.0 y0l F +GLIBC_2.0 y1 F +GLIBC_2.0 y1f F +GLIBC_2.0 y1l F +GLIBC_2.0 yn F +GLIBC_2.0 ynf F +GLIBC_2.0 ynl F +GLIBC_2.15 GLIBC_2.15 A +GLIBC_2.15 __acos_finite F +GLIBC_2.15 __acosf_finite F +GLIBC_2.15 __acosh_finite F +GLIBC_2.15 __acoshf_finite F +GLIBC_2.15 __acoshl_finite F +GLIBC_2.15 __acosl_finite F +GLIBC_2.15 __asin_finite F +GLIBC_2.15 __asinf_finite F +GLIBC_2.15 __asinl_finite F +GLIBC_2.15 __atan2_finite F +GLIBC_2.15 __atan2f_finite F +GLIBC_2.15 __atan2l_finite F +GLIBC_2.15 __atanh_finite F +GLIBC_2.15 __atanhf_finite F +GLIBC_2.15 __atanhl_finite F +GLIBC_2.15 __cosh_finite F +GLIBC_2.15 __coshf_finite F +GLIBC_2.15 __coshl_finite F +GLIBC_2.15 __exp10_finite F +GLIBC_2.15 __exp10f_finite F +GLIBC_2.15 __exp10l_finite F +GLIBC_2.15 __exp2_finite F +GLIBC_2.15 __exp2f_finite F +GLIBC_2.15 __exp2l_finite F +GLIBC_2.15 __exp_finite F +GLIBC_2.15 __expf_finite F +GLIBC_2.15 __expl_finite F +GLIBC_2.15 __fmod_finite F +GLIBC_2.15 __fmodf_finite F +GLIBC_2.15 __fmodl_finite F +GLIBC_2.15 __gamma_r_finite F +GLIBC_2.15 __gammaf_r_finite F +GLIBC_2.15 __gammal_r_finite F +GLIBC_2.15 __hypot_finite F +GLIBC_2.15 __hypotf_finite F +GLIBC_2.15 __hypotl_finite F +GLIBC_2.15 __j0_finite F +GLIBC_2.15 __j0f_finite F +GLIBC_2.15 __j0l_finite F +GLIBC_2.15 __j1_finite F +GLIBC_2.15 __j1f_finite F +GLIBC_2.15 __j1l_finite F +GLIBC_2.15 __jn_finite F +GLIBC_2.15 __jnf_finite F +GLIBC_2.15 __jnl_finite F +GLIBC_2.15 __lgamma_r_finite F +GLIBC_2.15 __lgammaf_r_finite F +GLIBC_2.15 __lgammal_r_finite F +GLIBC_2.15 __log10_finite F +GLIBC_2.15 __log10f_finite F +GLIBC_2.15 __log10l_finite F +GLIBC_2.15 __log2_finite F +GLIBC_2.15 __log2f_finite F +GLIBC_2.15 __log2l_finite F +GLIBC_2.15 __log_finite F +GLIBC_2.15 __logf_finite F +GLIBC_2.15 __logl_finite F +GLIBC_2.15 __pow_finite F +GLIBC_2.15 __powf_finite F +GLIBC_2.15 __powl_finite F +GLIBC_2.15 __remainder_finite F +GLIBC_2.15 __remainderf_finite F +GLIBC_2.15 __remainderl_finite F +GLIBC_2.15 __scalb_finite F +GLIBC_2.15 __scalbf_finite F +GLIBC_2.15 __scalbl_finite F +GLIBC_2.15 __sinh_finite F +GLIBC_2.15 __sinhf_finite F +GLIBC_2.15 __sinhl_finite F +GLIBC_2.15 __sqrt_finite F +GLIBC_2.15 __sqrtf_finite F +GLIBC_2.15 __sqrtl_finite F +GLIBC_2.15 __y0_finite F +GLIBC_2.15 __y0f_finite F +GLIBC_2.15 __y0l_finite F +GLIBC_2.15 __y1_finite F +GLIBC_2.15 __y1f_finite F +GLIBC_2.15 __y1l_finite F +GLIBC_2.15 __yn_finite F +GLIBC_2.15 __ynf_finite F +GLIBC_2.15 __ynl_finite F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 __issignaling F +GLIBC_2.18 __issignalingf F +GLIBC_2.18 __issignalingl F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __clog10 F +GLIBC_2.2 __clog10f F +GLIBC_2.2 __clog10l F +GLIBC_2.2 __finite F +GLIBC_2.2 __finitef F +GLIBC_2.2 __finitel F +GLIBC_2.2 __fpclassify F +GLIBC_2.2 __fpclassifyf F +GLIBC_2.2 __fpclassifyl F +GLIBC_2.2 __signbit F +GLIBC_2.2 __signbitf F +GLIBC_2.2 __signbitl F +GLIBC_2.2 cabs F +GLIBC_2.2 cabsf F +GLIBC_2.2 cabsl F +GLIBC_2.2 cacos F +GLIBC_2.2 cacosf F +GLIBC_2.2 cacosh F +GLIBC_2.2 cacoshf F +GLIBC_2.2 cacoshl F +GLIBC_2.2 cacosl F +GLIBC_2.2 carg F +GLIBC_2.2 cargf F +GLIBC_2.2 cargl F +GLIBC_2.2 casin F +GLIBC_2.2 casinf F +GLIBC_2.2 casinh F +GLIBC_2.2 casinhf F +GLIBC_2.2 casinhl F +GLIBC_2.2 casinl F +GLIBC_2.2 catan F +GLIBC_2.2 catanf F +GLIBC_2.2 catanh F +GLIBC_2.2 catanhf F +GLIBC_2.2 catanhl F +GLIBC_2.2 catanl F +GLIBC_2.2 ccos F +GLIBC_2.2 ccosf F +GLIBC_2.2 ccosh F +GLIBC_2.2 ccoshf F +GLIBC_2.2 ccoshl F +GLIBC_2.2 ccosl F +GLIBC_2.2 cexp F +GLIBC_2.2 cexpf F +GLIBC_2.2 cexpl F +GLIBC_2.2 cimag F +GLIBC_2.2 cimagf F +GLIBC_2.2 cimagl F +GLIBC_2.2 clog F +GLIBC_2.2 clog10 F +GLIBC_2.2 clog10f F +GLIBC_2.2 clog10l F +GLIBC_2.2 clogf F +GLIBC_2.2 clogl F +GLIBC_2.2 conj F +GLIBC_2.2 conjf F +GLIBC_2.2 conjl F +GLIBC_2.2 cpow F +GLIBC_2.2 cpowf F +GLIBC_2.2 cpowl F +GLIBC_2.2 cproj F +GLIBC_2.2 cprojf F +GLIBC_2.2 cprojl F +GLIBC_2.2 creal F +GLIBC_2.2 crealf F +GLIBC_2.2 creall F +GLIBC_2.2 csin F +GLIBC_2.2 csinf F +GLIBC_2.2 csinh F +GLIBC_2.2 csinhf F +GLIBC_2.2 csinhl F +GLIBC_2.2 csinl F +GLIBC_2.2 csqrt F +GLIBC_2.2 csqrtf F +GLIBC_2.2 csqrtl F +GLIBC_2.2 ctan F +GLIBC_2.2 ctanf F +GLIBC_2.2 ctanh F +GLIBC_2.2 ctanhf F +GLIBC_2.2 ctanhl F +GLIBC_2.2 ctanl F +GLIBC_2.2 exp10 F +GLIBC_2.2 exp10f F +GLIBC_2.2 exp10l F +GLIBC_2.2 exp2 F +GLIBC_2.2 exp2f F +GLIBC_2.2 exp2l F +GLIBC_2.2 fdim F +GLIBC_2.2 fdimf F +GLIBC_2.2 fdiml F +GLIBC_2.2 feclearexcept F +GLIBC_2.2 fedisableexcept F +GLIBC_2.2 feenableexcept F +GLIBC_2.2 fegetenv F +GLIBC_2.2 fegetexcept F +GLIBC_2.2 fegetexceptflag F +GLIBC_2.2 fegetround F +GLIBC_2.2 feholdexcept F +GLIBC_2.2 feraiseexcept F +GLIBC_2.2 fesetenv F +GLIBC_2.2 fesetexceptflag F +GLIBC_2.2 fesetround F +GLIBC_2.2 fetestexcept F +GLIBC_2.2 feupdateenv F +GLIBC_2.2 fma F +GLIBC_2.2 fmaf F +GLIBC_2.2 fmal F +GLIBC_2.2 fmax F +GLIBC_2.2 fmaxf F +GLIBC_2.2 fmaxl F +GLIBC_2.2 fmin F +GLIBC_2.2 fminf F +GLIBC_2.2 fminl F +GLIBC_2.2 llrint F +GLIBC_2.2 llrintf F +GLIBC_2.2 llrintl F +GLIBC_2.2 llround F +GLIBC_2.2 llroundf F +GLIBC_2.2 llroundl F +GLIBC_2.2 log2 F +GLIBC_2.2 log2f F +GLIBC_2.2 log2l F +GLIBC_2.2 lrint F +GLIBC_2.2 lrintf F +GLIBC_2.2 lrintl F +GLIBC_2.2 lround F +GLIBC_2.2 lroundf F +GLIBC_2.2 lroundl F +GLIBC_2.2 nan F +GLIBC_2.2 nanf F +GLIBC_2.2 nanl F +GLIBC_2.2 nearbyint F +GLIBC_2.2 nearbyintf F +GLIBC_2.2 nearbyintl F +GLIBC_2.2 nexttoward F +GLIBC_2.2 nexttowardf F +GLIBC_2.2 nexttowardl F +GLIBC_2.2 pow10 F +GLIBC_2.2 pow10f F +GLIBC_2.2 pow10l F +GLIBC_2.2 remquo F +GLIBC_2.2 remquof F +GLIBC_2.2 remquol F +GLIBC_2.2 round F +GLIBC_2.2 roundf F +GLIBC_2.2 roundl F +GLIBC_2.2 scalbln F +GLIBC_2.2 scalblnf F +GLIBC_2.2 scalblnl F +GLIBC_2.2 sincos F +GLIBC_2.2 sincosf F +GLIBC_2.2 sincosl F +GLIBC_2.2 tgamma F +GLIBC_2.2 tgammaf F +GLIBC_2.2 tgammal F +GLIBC_2.2 trunc F +GLIBC_2.2 truncf F +GLIBC_2.2 truncl F +GLIBC_2.23 GLIBC_2.23 A +GLIBC_2.23 __signgam D 0x4 +GLIBC_2.23 lgamma F +GLIBC_2.23 lgammaf F +GLIBC_2.23 lgammal F +GLIBC_2.24 GLIBC_2.24 A +GLIBC_2.24 nextdown F +GLIBC_2.24 nextdownf F +GLIBC_2.24 nextdownl F +GLIBC_2.24 nextup F +GLIBC_2.24 nextupf F +GLIBC_2.24 nextupl F +GLIBC_2.25 GLIBC_2.25 A +GLIBC_2.25 __iseqsig F +GLIBC_2.25 __iseqsigf F +GLIBC_2.25 __iseqsigl F +GLIBC_2.25 canonicalize F +GLIBC_2.25 canonicalizef F +GLIBC_2.25 canonicalizel F +GLIBC_2.25 fegetmode F +GLIBC_2.25 fesetexcept F +GLIBC_2.25 fesetmode F +GLIBC_2.25 fetestexceptflag F +GLIBC_2.25 fmaxmag F +GLIBC_2.25 fmaxmagf F +GLIBC_2.25 fmaxmagl F +GLIBC_2.25 fminmag F +GLIBC_2.25 fminmagf F +GLIBC_2.25 fminmagl F +GLIBC_2.25 fromfp F +GLIBC_2.25 fromfpf F +GLIBC_2.25 fromfpl F +GLIBC_2.25 fromfpx F +GLIBC_2.25 fromfpxf F +GLIBC_2.25 fromfpxl F +GLIBC_2.25 getpayload F +GLIBC_2.25 getpayloadf F +GLIBC_2.25 getpayloadl F +GLIBC_2.25 llogb F +GLIBC_2.25 llogbf F +GLIBC_2.25 llogbl F +GLIBC_2.25 roundeven F +GLIBC_2.25 roundevenf F +GLIBC_2.25 roundevenl F +GLIBC_2.25 setpayload F +GLIBC_2.25 setpayloadf F +GLIBC_2.25 setpayloadl F +GLIBC_2.25 setpayloadsig F +GLIBC_2.25 setpayloadsigf F +GLIBC_2.25 setpayloadsigl F +GLIBC_2.25 totalorder F +GLIBC_2.25 totalorderf F +GLIBC_2.25 totalorderl F +GLIBC_2.25 totalordermag F +GLIBC_2.25 totalordermagf F +GLIBC_2.25 totalordermagl F +GLIBC_2.25 ufromfp F +GLIBC_2.25 ufromfpf F +GLIBC_2.25 ufromfpl F +GLIBC_2.25 ufromfpx F +GLIBC_2.25 ufromfpxf F +GLIBC_2.25 ufromfpxl F +GLIBC_2.4 GLIBC_2.4 A diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libnsl.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libnsl.abilist new file mode 100644 index 0000000000..d5b6e6997d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libnsl.abilist @@ -0,0 +1,123 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __yp_check F +GLIBC_2.0 xdr_domainname F +GLIBC_2.0 xdr_keydat F +GLIBC_2.0 xdr_mapname F +GLIBC_2.0 xdr_peername F +GLIBC_2.0 xdr_valdat F +GLIBC_2.0 xdr_yp_buf F +GLIBC_2.0 xdr_ypbind_binding F +GLIBC_2.0 xdr_ypbind_resp F +GLIBC_2.0 xdr_ypbind_resptype F +GLIBC_2.0 xdr_ypbind_setdom F +GLIBC_2.0 xdr_ypdelete_args F +GLIBC_2.0 xdr_ypmap_parms F +GLIBC_2.0 xdr_ypmaplist F +GLIBC_2.0 xdr_yppush_status F +GLIBC_2.0 xdr_yppushresp_xfr F +GLIBC_2.0 xdr_ypreq_key F +GLIBC_2.0 xdr_ypreq_nokey F +GLIBC_2.0 xdr_ypreq_xfr F +GLIBC_2.0 xdr_ypresp_all F +GLIBC_2.0 xdr_ypresp_key_val F +GLIBC_2.0 xdr_ypresp_maplist F +GLIBC_2.0 xdr_ypresp_master F +GLIBC_2.0 xdr_ypresp_order F +GLIBC_2.0 xdr_ypresp_val F +GLIBC_2.0 xdr_ypresp_xfr F +GLIBC_2.0 xdr_ypstat F +GLIBC_2.0 xdr_ypupdate_args F +GLIBC_2.0 xdr_ypxfrstat F +GLIBC_2.0 yp_all F +GLIBC_2.0 yp_bind F +GLIBC_2.0 yp_first F +GLIBC_2.0 yp_get_default_domain F +GLIBC_2.0 yp_maplist F +GLIBC_2.0 yp_master F +GLIBC_2.0 yp_match F +GLIBC_2.0 yp_next F +GLIBC_2.0 yp_order F +GLIBC_2.0 yp_unbind F +GLIBC_2.0 yp_update F +GLIBC_2.0 ypbinderr_string F +GLIBC_2.0 yperr_string F +GLIBC_2.0 ypprot_err F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __free_fdresult F +GLIBC_2.2 __nis_default_access F +GLIBC_2.2 __nis_default_group F +GLIBC_2.2 __nis_default_owner F +GLIBC_2.2 __nis_default_ttl F +GLIBC_2.2 __nis_finddirectory F +GLIBC_2.2 __nis_hash F +GLIBC_2.2 __nisbind_connect F +GLIBC_2.2 __nisbind_create F +GLIBC_2.2 __nisbind_destroy F +GLIBC_2.2 __nisbind_next F +GLIBC_2.2 nis_add F +GLIBC_2.2 nis_add_entry F +GLIBC_2.2 nis_addmember F +GLIBC_2.2 nis_checkpoint F +GLIBC_2.2 nis_clone_directory F +GLIBC_2.2 nis_clone_object F +GLIBC_2.2 nis_clone_result F +GLIBC_2.2 nis_creategroup F +GLIBC_2.2 nis_destroy_object F +GLIBC_2.2 nis_destroygroup F +GLIBC_2.2 nis_dir_cmp F +GLIBC_2.2 nis_domain_of F +GLIBC_2.2 nis_domain_of_r F +GLIBC_2.2 nis_first_entry F +GLIBC_2.2 nis_free_directory F +GLIBC_2.2 nis_free_object F +GLIBC_2.2 nis_free_request F +GLIBC_2.2 nis_freenames F +GLIBC_2.2 nis_freeresult F +GLIBC_2.2 nis_freeservlist F +GLIBC_2.2 nis_freetags F +GLIBC_2.2 nis_getnames F +GLIBC_2.2 nis_getservlist F +GLIBC_2.2 nis_ismember F +GLIBC_2.2 nis_leaf_of F +GLIBC_2.2 nis_leaf_of_r F +GLIBC_2.2 nis_lerror F +GLIBC_2.2 nis_list F +GLIBC_2.2 nis_local_directory F +GLIBC_2.2 nis_local_group F +GLIBC_2.2 nis_local_host F +GLIBC_2.2 nis_local_principal F +GLIBC_2.2 nis_lookup F +GLIBC_2.2 nis_mkdir F +GLIBC_2.2 nis_modify F +GLIBC_2.2 nis_modify_entry F +GLIBC_2.2 nis_name_of F +GLIBC_2.2 nis_name_of_r F +GLIBC_2.2 nis_next_entry F +GLIBC_2.2 nis_perror F +GLIBC_2.2 nis_ping F +GLIBC_2.2 nis_print_directory F +GLIBC_2.2 nis_print_entry F +GLIBC_2.2 nis_print_group F +GLIBC_2.2 nis_print_group_entry F +GLIBC_2.2 nis_print_link F +GLIBC_2.2 nis_print_object F +GLIBC_2.2 nis_print_result F +GLIBC_2.2 nis_print_rights F +GLIBC_2.2 nis_print_table F +GLIBC_2.2 nis_read_obj F +GLIBC_2.2 nis_remove F +GLIBC_2.2 nis_remove_entry F +GLIBC_2.2 nis_removemember F +GLIBC_2.2 nis_rmdir F +GLIBC_2.2 nis_servstate F +GLIBC_2.2 nis_sperrno F +GLIBC_2.2 nis_sperror F +GLIBC_2.2 nis_sperror_r F +GLIBC_2.2 nis_stats F +GLIBC_2.2 nis_verifygroup F +GLIBC_2.2 nis_write_obj F +GLIBC_2.2 readColdStartFile F +GLIBC_2.2 writeColdStartFile F +GLIBC_2.2 xdr_cback_data F +GLIBC_2.2 xdr_obj_p F +GLIBC_2.2 xdr_ypall F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist new file mode 100644 index 0000000000..ad55bdd0e2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist @@ -0,0 +1,256 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _IO_flockfile F +GLIBC_2.0 _IO_ftrylockfile F +GLIBC_2.0 _IO_funlockfile F +GLIBC_2.0 __close F +GLIBC_2.0 __connect F +GLIBC_2.0 __errno_location F +GLIBC_2.0 __fcntl F +GLIBC_2.0 __fork F +GLIBC_2.0 __h_errno_location F +GLIBC_2.0 __lseek F +GLIBC_2.0 __open F +GLIBC_2.0 __pthread_getspecific F +GLIBC_2.0 __pthread_key_create F +GLIBC_2.0 __pthread_mutex_destroy F +GLIBC_2.0 __pthread_mutex_init F +GLIBC_2.0 __pthread_mutex_lock F +GLIBC_2.0 __pthread_mutex_trylock F +GLIBC_2.0 __pthread_mutex_unlock F +GLIBC_2.0 __pthread_mutexattr_destroy F +GLIBC_2.0 __pthread_mutexattr_init F +GLIBC_2.0 __pthread_mutexattr_settype F +GLIBC_2.0 __pthread_once F +GLIBC_2.0 __pthread_setspecific F +GLIBC_2.0 __read F +GLIBC_2.0 __send F +GLIBC_2.0 __sigaction F +GLIBC_2.0 __wait F +GLIBC_2.0 __write F +GLIBC_2.0 _pthread_cleanup_pop F +GLIBC_2.0 _pthread_cleanup_pop_restore F +GLIBC_2.0 _pthread_cleanup_push F +GLIBC_2.0 _pthread_cleanup_push_defer F +GLIBC_2.0 accept F +GLIBC_2.0 close F +GLIBC_2.0 connect F +GLIBC_2.0 fcntl F +GLIBC_2.0 flockfile F +GLIBC_2.0 fork F +GLIBC_2.0 fsync F +GLIBC_2.0 ftrylockfile F +GLIBC_2.0 funlockfile F +GLIBC_2.0 longjmp F +GLIBC_2.0 lseek F +GLIBC_2.0 msync F +GLIBC_2.0 nanosleep F +GLIBC_2.0 open F +GLIBC_2.0 pause F +GLIBC_2.0 pthread_atfork F +GLIBC_2.0 pthread_attr_destroy F +GLIBC_2.0 pthread_attr_getdetachstate F +GLIBC_2.0 pthread_attr_getinheritsched F +GLIBC_2.0 pthread_attr_getschedparam F +GLIBC_2.0 pthread_attr_getschedpolicy F +GLIBC_2.0 pthread_attr_getscope F +GLIBC_2.0 pthread_attr_init F +GLIBC_2.0 pthread_attr_setdetachstate F +GLIBC_2.0 pthread_attr_setinheritsched F +GLIBC_2.0 pthread_attr_setschedparam F +GLIBC_2.0 pthread_attr_setschedpolicy F +GLIBC_2.0 pthread_attr_setscope F +GLIBC_2.0 pthread_cancel F +GLIBC_2.0 pthread_cond_broadcast F +GLIBC_2.0 pthread_cond_destroy F +GLIBC_2.0 pthread_cond_init F +GLIBC_2.0 pthread_cond_signal F +GLIBC_2.0 pthread_cond_timedwait F +GLIBC_2.0 pthread_cond_wait F +GLIBC_2.0 pthread_condattr_destroy F +GLIBC_2.0 pthread_condattr_init F +GLIBC_2.0 pthread_create F +GLIBC_2.0 pthread_detach F +GLIBC_2.0 pthread_equal F +GLIBC_2.0 pthread_exit F +GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_getspecific F +GLIBC_2.0 pthread_join F +GLIBC_2.0 pthread_key_create F +GLIBC_2.0 pthread_key_delete F +GLIBC_2.0 pthread_kill F +GLIBC_2.0 pthread_kill_other_threads_np F +GLIBC_2.0 pthread_mutex_destroy F +GLIBC_2.0 pthread_mutex_init F +GLIBC_2.0 pthread_mutex_lock F +GLIBC_2.0 pthread_mutex_trylock F +GLIBC_2.0 pthread_mutex_unlock F +GLIBC_2.0 pthread_mutexattr_destroy F +GLIBC_2.0 pthread_mutexattr_getkind_np F +GLIBC_2.0 pthread_mutexattr_init F +GLIBC_2.0 pthread_mutexattr_setkind_np F +GLIBC_2.0 pthread_once F +GLIBC_2.0 pthread_self F +GLIBC_2.0 pthread_setcancelstate F +GLIBC_2.0 pthread_setcanceltype F +GLIBC_2.0 pthread_setschedparam F +GLIBC_2.0 pthread_setspecific F +GLIBC_2.0 pthread_sigmask F +GLIBC_2.0 pthread_testcancel F +GLIBC_2.0 raise F +GLIBC_2.0 read F +GLIBC_2.0 recv F +GLIBC_2.0 recvfrom F +GLIBC_2.0 recvmsg F +GLIBC_2.0 sem_destroy F +GLIBC_2.0 sem_getvalue F +GLIBC_2.0 sem_init F +GLIBC_2.0 sem_post F +GLIBC_2.0 sem_trywait F +GLIBC_2.0 sem_wait F +GLIBC_2.0 send F +GLIBC_2.0 sendmsg F +GLIBC_2.0 sendto F +GLIBC_2.0 sigaction F +GLIBC_2.0 siglongjmp F +GLIBC_2.0 sigwait F +GLIBC_2.0 system F +GLIBC_2.0 tcdrain F +GLIBC_2.0 vfork F +GLIBC_2.0 wait F +GLIBC_2.0 waitpid F +GLIBC_2.0 write F +GLIBC_2.11 GLIBC_2.11 A +GLIBC_2.11 pthread_sigqueue F +GLIBC_2.12 GLIBC_2.12 A +GLIBC_2.12 pthread_getname_np F +GLIBC_2.12 pthread_mutex_consistent F +GLIBC_2.12 pthread_mutexattr_getrobust F +GLIBC_2.12 pthread_mutexattr_setrobust F +GLIBC_2.12 pthread_setname_np F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 pthread_getattr_default_np F +GLIBC_2.18 pthread_setattr_default_np F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __libc_allocate_rtsig F +GLIBC_2.2 __libc_current_sigrtmax F +GLIBC_2.2 __libc_current_sigrtmin F +GLIBC_2.2 __open64 F +GLIBC_2.2 __pread64 F +GLIBC_2.2 __pthread_rwlock_destroy F +GLIBC_2.2 __pthread_rwlock_init F +GLIBC_2.2 __pthread_rwlock_rdlock F +GLIBC_2.2 __pthread_rwlock_tryrdlock F +GLIBC_2.2 __pthread_rwlock_trywrlock F +GLIBC_2.2 __pthread_rwlock_unlock F +GLIBC_2.2 __pthread_rwlock_wrlock F +GLIBC_2.2 __pwrite64 F +GLIBC_2.2 __res_state F +GLIBC_2.2 __vfork F +GLIBC_2.2 lseek64 F +GLIBC_2.2 open64 F +GLIBC_2.2 pread F +GLIBC_2.2 pread64 F +GLIBC_2.2 pthread_attr_getguardsize F +GLIBC_2.2 pthread_attr_getstack F +GLIBC_2.2 pthread_attr_getstackaddr F +GLIBC_2.2 pthread_attr_getstacksize F +GLIBC_2.2 pthread_attr_init F +GLIBC_2.2 pthread_attr_setguardsize F +GLIBC_2.2 pthread_attr_setstack F +GLIBC_2.2 pthread_attr_setstackaddr F +GLIBC_2.2 pthread_attr_setstacksize F +GLIBC_2.2 pthread_barrier_destroy F +GLIBC_2.2 pthread_barrier_init F +GLIBC_2.2 pthread_barrier_wait F +GLIBC_2.2 pthread_barrierattr_destroy F +GLIBC_2.2 pthread_barrierattr_init F +GLIBC_2.2 pthread_barrierattr_setpshared F +GLIBC_2.2 pthread_condattr_getpshared F +GLIBC_2.2 pthread_condattr_setpshared F +GLIBC_2.2 pthread_create F +GLIBC_2.2 pthread_getconcurrency F +GLIBC_2.2 pthread_getcpuclockid F +GLIBC_2.2 pthread_mutex_timedlock F +GLIBC_2.2 pthread_mutexattr_getpshared F +GLIBC_2.2 pthread_mutexattr_gettype F +GLIBC_2.2 pthread_mutexattr_setpshared F +GLIBC_2.2 pthread_mutexattr_settype F +GLIBC_2.2 pthread_rwlock_destroy F +GLIBC_2.2 pthread_rwlock_init F +GLIBC_2.2 pthread_rwlock_rdlock F +GLIBC_2.2 pthread_rwlock_timedrdlock F +GLIBC_2.2 pthread_rwlock_timedwrlock F +GLIBC_2.2 pthread_rwlock_tryrdlock F +GLIBC_2.2 pthread_rwlock_trywrlock F +GLIBC_2.2 pthread_rwlock_unlock F +GLIBC_2.2 pthread_rwlock_wrlock F +GLIBC_2.2 pthread_rwlockattr_destroy F +GLIBC_2.2 pthread_rwlockattr_getkind_np F +GLIBC_2.2 pthread_rwlockattr_getpshared F +GLIBC_2.2 pthread_rwlockattr_init F +GLIBC_2.2 pthread_rwlockattr_setkind_np F +GLIBC_2.2 pthread_rwlockattr_setpshared F +GLIBC_2.2 pthread_setconcurrency F +GLIBC_2.2 pthread_spin_destroy F +GLIBC_2.2 pthread_spin_init F +GLIBC_2.2 pthread_spin_lock F +GLIBC_2.2 pthread_spin_trylock F +GLIBC_2.2 pthread_spin_unlock F +GLIBC_2.2 pthread_yield F +GLIBC_2.2 pwrite F +GLIBC_2.2 pwrite64 F +GLIBC_2.2 sem_close F +GLIBC_2.2 sem_destroy F +GLIBC_2.2 sem_getvalue F +GLIBC_2.2 sem_init F +GLIBC_2.2 sem_open F +GLIBC_2.2 sem_post F +GLIBC_2.2 sem_timedwait F +GLIBC_2.2 sem_trywait F +GLIBC_2.2 sem_unlink F +GLIBC_2.2 sem_wait F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 pthread_getattr_np F +GLIBC_2.2.6 GLIBC_2.2.6 A +GLIBC_2.2.6 __nanosleep F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 pthread_cond_broadcast F +GLIBC_2.3.2 pthread_cond_destroy F +GLIBC_2.3.2 pthread_cond_init F +GLIBC_2.3.2 pthread_cond_signal F +GLIBC_2.3.2 pthread_cond_timedwait F +GLIBC_2.3.2 pthread_cond_wait F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 __pthread_cleanup_routine F +GLIBC_2.3.3 __pthread_register_cancel F +GLIBC_2.3.3 __pthread_register_cancel_defer F +GLIBC_2.3.3 __pthread_unregister_cancel F +GLIBC_2.3.3 __pthread_unregister_cancel_restore F +GLIBC_2.3.3 __pthread_unwind_next F +GLIBC_2.3.3 pthread_attr_getaffinity_np F +GLIBC_2.3.3 pthread_attr_setaffinity_np F +GLIBC_2.3.3 pthread_attr_setstack F +GLIBC_2.3.3 pthread_attr_setstacksize F +GLIBC_2.3.3 pthread_barrierattr_getpshared F +GLIBC_2.3.3 pthread_condattr_getclock F +GLIBC_2.3.3 pthread_condattr_setclock F +GLIBC_2.3.3 pthread_getaffinity_np F +GLIBC_2.3.3 pthread_setaffinity_np F +GLIBC_2.3.3 pthread_timedjoin_np F +GLIBC_2.3.3 pthread_tryjoin_np F +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 pthread_attr_getaffinity_np F +GLIBC_2.3.4 pthread_attr_setaffinity_np F +GLIBC_2.3.4 pthread_getaffinity_np F +GLIBC_2.3.4 pthread_setaffinity_np F +GLIBC_2.3.4 pthread_setschedprio F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 pthread_mutex_consistent_np F +GLIBC_2.4 pthread_mutex_getprioceiling F +GLIBC_2.4 pthread_mutex_setprioceiling F +GLIBC_2.4 pthread_mutexattr_getprioceiling F +GLIBC_2.4 pthread_mutexattr_getprotocol F +GLIBC_2.4 pthread_mutexattr_getrobust_np F +GLIBC_2.4 pthread_mutexattr_setprioceiling F +GLIBC_2.4 pthread_mutexattr_setprotocol F +GLIBC_2.4 pthread_mutexattr_setrobust_np F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist new file mode 100644 index 0000000000..ff77db947e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist @@ -0,0 +1,46 @@ +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 aio_cancel F +GLIBC_2.2 aio_cancel64 F +GLIBC_2.2 aio_error F +GLIBC_2.2 aio_error64 F +GLIBC_2.2 aio_fsync F +GLIBC_2.2 aio_fsync64 F +GLIBC_2.2 aio_init F +GLIBC_2.2 aio_read F +GLIBC_2.2 aio_read64 F +GLIBC_2.2 aio_return F +GLIBC_2.2 aio_return64 F +GLIBC_2.2 aio_suspend F +GLIBC_2.2 aio_suspend64 F +GLIBC_2.2 aio_write F +GLIBC_2.2 aio_write64 F +GLIBC_2.2 clock_getcpuclockid F +GLIBC_2.2 clock_getres F +GLIBC_2.2 clock_gettime F +GLIBC_2.2 clock_nanosleep F +GLIBC_2.2 clock_settime F +GLIBC_2.2 lio_listio F +GLIBC_2.2 lio_listio64 F +GLIBC_2.2 shm_open F +GLIBC_2.2 shm_unlink F +GLIBC_2.2 timer_create F +GLIBC_2.2 timer_delete F +GLIBC_2.2 timer_getoverrun F +GLIBC_2.2 timer_gettime F +GLIBC_2.2 timer_settime F +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 mq_close F +GLIBC_2.3.4 mq_getattr F +GLIBC_2.3.4 mq_notify F +GLIBC_2.3.4 mq_open F +GLIBC_2.3.4 mq_receive F +GLIBC_2.3.4 mq_send F +GLIBC_2.3.4 mq_setattr F +GLIBC_2.3.4 mq_timedreceive F +GLIBC_2.3.4 mq_timedsend F +GLIBC_2.3.4 mq_unlink F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 lio_listio F +GLIBC_2.4 lio_listio64 F +GLIBC_2.7 GLIBC_2.7 A +GLIBC_2.7 __mq_open_2 F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libthread_db.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libthread_db.abilist new file mode 100644 index 0000000000..a8a8c2c68d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libthread_db.abilist @@ -0,0 +1,44 @@ +GLIBC_2.1.3 GLIBC_2.1.3 A +GLIBC_2.1.3 td_init F +GLIBC_2.1.3 td_log F +GLIBC_2.1.3 td_ta_clear_event F +GLIBC_2.1.3 td_ta_delete F +GLIBC_2.1.3 td_ta_enable_stats F +GLIBC_2.1.3 td_ta_event_addr F +GLIBC_2.1.3 td_ta_event_getmsg F +GLIBC_2.1.3 td_ta_get_nthreads F +GLIBC_2.1.3 td_ta_get_ph F +GLIBC_2.1.3 td_ta_get_stats F +GLIBC_2.1.3 td_ta_map_id2thr F +GLIBC_2.1.3 td_ta_map_lwp2thr F +GLIBC_2.1.3 td_ta_new F +GLIBC_2.1.3 td_ta_reset_stats F +GLIBC_2.1.3 td_ta_set_event F +GLIBC_2.1.3 td_ta_setconcurrency F +GLIBC_2.1.3 td_ta_thr_iter F +GLIBC_2.1.3 td_ta_tsd_iter F +GLIBC_2.1.3 td_thr_clear_event F +GLIBC_2.1.3 td_thr_dbresume F +GLIBC_2.1.3 td_thr_dbsuspend F +GLIBC_2.1.3 td_thr_event_enable F +GLIBC_2.1.3 td_thr_event_getmsg F +GLIBC_2.1.3 td_thr_get_info F +GLIBC_2.1.3 td_thr_getfpregs F +GLIBC_2.1.3 td_thr_getgregs F +GLIBC_2.1.3 td_thr_getxregs F +GLIBC_2.1.3 td_thr_getxregsize F +GLIBC_2.1.3 td_thr_set_event F +GLIBC_2.1.3 td_thr_setfpregs F +GLIBC_2.1.3 td_thr_setgregs F +GLIBC_2.1.3 td_thr_setprio F +GLIBC_2.1.3 td_thr_setsigpending F +GLIBC_2.1.3 td_thr_setxregs F +GLIBC_2.1.3 td_thr_sigsetmask F +GLIBC_2.1.3 td_thr_tsd F +GLIBC_2.1.3 td_thr_validate F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 td_symbol_list F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 td_thr_tls_get_addr F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 td_thr_tlsbase F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libutil.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libutil.abilist new file mode 100644 index 0000000000..89c67755c4 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/libutil.abilist @@ -0,0 +1,7 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 forkpty F +GLIBC_2.0 login F +GLIBC_2.0 login_tty F +GLIBC_2.0 logout F +GLIBC_2.0 logwtmp F +GLIBC_2.0 openpty F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c new file mode 100644 index 0000000000..1be716cc77 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c @@ -0,0 +1,43 @@ +/* lxstat64 using 64-bit MIPS lstat system call. + Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stddef.h> +#include <sys/stat.h> +#include <kernel_stat.h> + +#include <sysdep.h> +#include <sys/syscall.h> + +#include <xstatconv.h> + +/* Get information about the file NAME in BUF. */ +int +__lxstat64 (int vers, const char *name, struct stat64 *buf) +{ + int result; + struct kernel_stat kbuf; + + result = INLINE_SYSCALL (lstat, 2, name, &kbuf); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + + return result; +} + +hidden_def (__lxstat64) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c new file mode 100644 index 0000000000..f379ecb7f5 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2007-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <shlib-compat.h> + +#undef SHLIB_COMPAT +#define SHLIB_COMPAT(a, b, c) 0 + +#define DEFAULT_VERSION GLIBC_2_0 + +#include <sysdeps/unix/sysv/linux/msgctl.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions new file mode 100644 index 0000000000..9621fb5cae --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions @@ -0,0 +1,6 @@ +libc { + GLIBC_2.19 { + getrlimit64; + setrlimit64; + } +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/c++-types.data b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/c++-types.data new file mode 100644 index 0000000000..39212e50bf --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/c++-types.data @@ -0,0 +1,67 @@ +blkcnt64_t:x +blkcnt_t:l +blksize_t:l +caddr_t:Pc +clockid_t:i +clock_t:l +daddr_t:i +dev_t:y +fd_mask:l +fsblkcnt64_t:y +fsblkcnt_t:m +fsfilcnt64_t:y +fsfilcnt_t:m +fsid_t:8__fsid_t +gid_t:j +id_t:j +ino64_t:y +ino_t:m +int16_t:s +int32_t:i +int64_t:x +int8_t:a +intptr_t:i +key_t:i +loff_t:x +mode_t:j +nlink_t:j +off64_t:x +off_t:l +pid_t:i +pthread_attr_t:14pthread_attr_t +pthread_barrier_t:17pthread_barrier_t +pthread_barrierattr_t:21pthread_barrierattr_t +pthread_cond_t:14pthread_cond_t +pthread_condattr_t:18pthread_condattr_t +pthread_key_t:j +pthread_mutex_t:15pthread_mutex_t +pthread_mutexattr_t:19pthread_mutexattr_t +pthread_once_t:i +pthread_rwlock_t:16pthread_rwlock_t +pthread_rwlockattr_t:20pthread_rwlockattr_t +pthread_spinlock_t:i +pthread_t:m +quad_t:x +register_t:x +rlim64_t:y +rlim_t:m +sigset_t:10__sigset_t +size_t:j +socklen_t:j +ssize_t:i +suseconds_t:l +time_t:l +u_char:h +uid_t:j +uint:j +u_int:j +u_int16_t:t +u_int32_t:j +u_int64_t:y +u_int8_t:h +ulong:m +u_long:m +u_quad_t:y +useconds_t:j +ushort:t +u_short:t diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c new file mode 100644 index 0000000000..ea951bc4f9 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/fcntl.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/ld.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/ld.abilist new file mode 100644 index 0000000000..bf55148c79 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/ld.abilist @@ -0,0 +1,13 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _r_debug D 0x14 +GLIBC_2.0 calloc F +GLIBC_2.0 free F +GLIBC_2.0 malloc F +GLIBC_2.0 realloc F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __libc_stack_end D 0x4 +GLIBC_2.2 _dl_mcount F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __tls_get_addr F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __stack_chk_guard D 0x4 diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist new file mode 100644 index 0000000000..783aa73ab7 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist @@ -0,0 +1,2251 @@ +GCC_3.0 GCC_3.0 A +GCC_3.0 _Unwind_Find_FDE F +GCC_3.0 __deregister_frame_info_bases F +GCC_3.0 __register_frame_info_bases F +GCC_3.0 __register_frame_info_table_bases F +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _IO_adjust_column F +GLIBC_2.0 _IO_default_doallocate F +GLIBC_2.0 _IO_default_finish F +GLIBC_2.0 _IO_default_pbackfail F +GLIBC_2.0 _IO_default_uflow F +GLIBC_2.0 _IO_default_xsgetn F +GLIBC_2.0 _IO_default_xsputn F +GLIBC_2.0 _IO_do_write F +GLIBC_2.0 _IO_doallocbuf F +GLIBC_2.0 _IO_fclose F +GLIBC_2.0 _IO_fdopen F +GLIBC_2.0 _IO_feof F +GLIBC_2.0 _IO_ferror F +GLIBC_2.0 _IO_fflush F +GLIBC_2.0 _IO_fgetpos F +GLIBC_2.0 _IO_fgets F +GLIBC_2.0 _IO_file_attach F +GLIBC_2.0 _IO_file_close F +GLIBC_2.0 _IO_file_close_it F +GLIBC_2.0 _IO_file_doallocate F +GLIBC_2.0 _IO_file_fopen F +GLIBC_2.0 _IO_file_init F +GLIBC_2.0 _IO_file_jumps D 0x54 +GLIBC_2.0 _IO_file_open F +GLIBC_2.0 _IO_file_overflow F +GLIBC_2.0 _IO_file_read F +GLIBC_2.0 _IO_file_seek F +GLIBC_2.0 _IO_file_seekoff F +GLIBC_2.0 _IO_file_setbuf F +GLIBC_2.0 _IO_file_stat F +GLIBC_2.0 _IO_file_sync F +GLIBC_2.0 _IO_file_underflow F +GLIBC_2.0 _IO_file_write F +GLIBC_2.0 _IO_file_xsputn F +GLIBC_2.0 _IO_flockfile F +GLIBC_2.0 _IO_flush_all F +GLIBC_2.0 _IO_flush_all_linebuffered F +GLIBC_2.0 _IO_fopen F +GLIBC_2.0 _IO_fprintf F +GLIBC_2.0 _IO_fputs F +GLIBC_2.0 _IO_fread F +GLIBC_2.0 _IO_free_backup_area F +GLIBC_2.0 _IO_fsetpos F +GLIBC_2.0 _IO_ftell F +GLIBC_2.0 _IO_ftrylockfile F +GLIBC_2.0 _IO_funlockfile F +GLIBC_2.0 _IO_fwrite F +GLIBC_2.0 _IO_getc F +GLIBC_2.0 _IO_getline F +GLIBC_2.0 _IO_gets F +GLIBC_2.0 _IO_init F +GLIBC_2.0 _IO_init_marker F +GLIBC_2.0 _IO_link_in F +GLIBC_2.0 _IO_list_all D 0x4 +GLIBC_2.0 _IO_marker_delta F +GLIBC_2.0 _IO_marker_difference F +GLIBC_2.0 _IO_padn F +GLIBC_2.0 _IO_peekc_locked F +GLIBC_2.0 _IO_popen F +GLIBC_2.0 _IO_printf F +GLIBC_2.0 _IO_proc_close F +GLIBC_2.0 _IO_proc_open F +GLIBC_2.0 _IO_putc F +GLIBC_2.0 _IO_puts F +GLIBC_2.0 _IO_remove_marker F +GLIBC_2.0 _IO_seekmark F +GLIBC_2.0 _IO_seekoff F +GLIBC_2.0 _IO_seekpos F +GLIBC_2.0 _IO_setb F +GLIBC_2.0 _IO_setbuffer F +GLIBC_2.0 _IO_setvbuf F +GLIBC_2.0 _IO_sgetn F +GLIBC_2.0 _IO_sprintf F +GLIBC_2.0 _IO_sputbackc F +GLIBC_2.0 _IO_sscanf F +GLIBC_2.0 _IO_stderr_ D 0x50 +GLIBC_2.0 _IO_stdin_ D 0x50 +GLIBC_2.0 _IO_stdout_ D 0x50 +GLIBC_2.0 _IO_str_init_readonly F +GLIBC_2.0 _IO_str_init_static F +GLIBC_2.0 _IO_str_overflow F +GLIBC_2.0 _IO_str_pbackfail F +GLIBC_2.0 _IO_str_seekoff F +GLIBC_2.0 _IO_str_underflow F +GLIBC_2.0 _IO_sungetc F +GLIBC_2.0 _IO_switch_to_get_mode F +GLIBC_2.0 _IO_un_link F +GLIBC_2.0 _IO_ungetc F +GLIBC_2.0 _IO_unsave_markers F +GLIBC_2.0 _IO_vfprintf F +GLIBC_2.0 _IO_vfscanf F +GLIBC_2.0 _IO_vsprintf F +GLIBC_2.0 ___brk_addr D 0x4 +GLIBC_2.0 __adjtimex F +GLIBC_2.0 __after_morecore_hook D 0x4 +GLIBC_2.0 __argz_count F +GLIBC_2.0 __argz_next F +GLIBC_2.0 __argz_stringify F +GLIBC_2.0 __assert_fail F +GLIBC_2.0 __assert_perror_fail F +GLIBC_2.0 __bsd_getpgrp F +GLIBC_2.0 __bzero F +GLIBC_2.0 __check_rhosts_file D 0x4 +GLIBC_2.0 __clone F +GLIBC_2.0 __close F +GLIBC_2.0 __cmsg_nxthdr F +GLIBC_2.0 __connect F +GLIBC_2.0 __ctype32_b D 0x4 +GLIBC_2.0 __ctype_b D 0x4 +GLIBC_2.0 __ctype_get_mb_cur_max F +GLIBC_2.0 __ctype_tolower D 0x4 +GLIBC_2.0 __ctype_toupper D 0x4 +GLIBC_2.0 __curbrk D 0x4 +GLIBC_2.0 __daylight D 0x4 +GLIBC_2.0 __dcgettext F +GLIBC_2.0 __default_morecore F +GLIBC_2.0 __deregister_frame F +GLIBC_2.0 __deregister_frame_info F +GLIBC_2.0 __dgettext F +GLIBC_2.0 __dup2 F +GLIBC_2.0 __environ D 0x4 +GLIBC_2.0 __errno_location F +GLIBC_2.0 __fcntl F +GLIBC_2.0 __ffs F +GLIBC_2.0 __finite F +GLIBC_2.0 __finitef F +GLIBC_2.0 __finitel F +GLIBC_2.0 __fork F +GLIBC_2.0 __fpu_control D 0x4 +GLIBC_2.0 __frame_state_for F +GLIBC_2.0 __free_hook D 0x4 +GLIBC_2.0 __fxstat F +GLIBC_2.0 __getdelim F +GLIBC_2.0 __getpagesize F +GLIBC_2.0 __getpgid F +GLIBC_2.0 __getpid F +GLIBC_2.0 __gettimeofday F +GLIBC_2.0 __gmtime_r F +GLIBC_2.0 __h_errno_location F +GLIBC_2.0 __isinf F +GLIBC_2.0 __isinff F +GLIBC_2.0 __isinfl F +GLIBC_2.0 __isnan F +GLIBC_2.0 __isnanf F +GLIBC_2.0 __isnanl F +GLIBC_2.0 __iswctype F +GLIBC_2.0 __ivaliduser F +GLIBC_2.0 __libc_calloc F +GLIBC_2.0 __libc_free F +GLIBC_2.0 __libc_init_first F +GLIBC_2.0 __libc_mallinfo F +GLIBC_2.0 __libc_malloc F +GLIBC_2.0 __libc_mallopt F +GLIBC_2.0 __libc_memalign F +GLIBC_2.0 __libc_pvalloc F +GLIBC_2.0 __libc_realloc F +GLIBC_2.0 __libc_start_main F +GLIBC_2.0 __libc_valloc F +GLIBC_2.0 __lseek F +GLIBC_2.0 __lxstat F +GLIBC_2.0 __malloc_hook D 0x4 +GLIBC_2.0 __malloc_initialize_hook D 0x4 +GLIBC_2.0 __mbrlen F +GLIBC_2.0 __mbrtowc F +GLIBC_2.0 __memalign_hook D 0x4 +GLIBC_2.0 __mempcpy F +GLIBC_2.0 __monstartup F +GLIBC_2.0 __morecore D 0x4 +GLIBC_2.0 __nss_configure_lookup F +GLIBC_2.0 __nss_database_lookup F +GLIBC_2.0 __nss_group_lookup F +GLIBC_2.0 __nss_hosts_lookup F +GLIBC_2.0 __nss_next F +GLIBC_2.0 __nss_passwd_lookup F +GLIBC_2.0 __open F +GLIBC_2.0 __overflow F +GLIBC_2.0 __pipe F +GLIBC_2.0 __printf_fp F +GLIBC_2.0 __profile_frequency F +GLIBC_2.0 __progname D 0x4 +GLIBC_2.0 __progname_full D 0x4 +GLIBC_2.0 __rcmd_errstr D 0x4 +GLIBC_2.0 __read F +GLIBC_2.0 __realloc_hook D 0x4 +GLIBC_2.0 __register_frame F +GLIBC_2.0 __register_frame_info F +GLIBC_2.0 __register_frame_info_table F +GLIBC_2.0 __register_frame_table F +GLIBC_2.0 __res_randomid F +GLIBC_2.0 __sbrk F +GLIBC_2.0 __sched_get_priority_max F +GLIBC_2.0 __sched_get_priority_min F +GLIBC_2.0 __sched_getparam F +GLIBC_2.0 __sched_getscheduler F +GLIBC_2.0 __sched_setscheduler F +GLIBC_2.0 __sched_yield F +GLIBC_2.0 __secure_getenv F +GLIBC_2.0 __select F +GLIBC_2.0 __send F +GLIBC_2.0 __setpgid F +GLIBC_2.0 __sigaction F +GLIBC_2.0 __sigaddset F +GLIBC_2.0 __sigdelset F +GLIBC_2.0 __sigismember F +GLIBC_2.0 __sigpause F +GLIBC_2.0 __sigsetjmp F +GLIBC_2.0 __stpcpy F +GLIBC_2.0 __stpncpy F +GLIBC_2.0 __strcasecmp F +GLIBC_2.0 __strdup F +GLIBC_2.0 __strerror_r F +GLIBC_2.0 __strtod_internal F +GLIBC_2.0 __strtof_internal F +GLIBC_2.0 __strtok_r F +GLIBC_2.0 __strtol_internal F +GLIBC_2.0 __strtold_internal F +GLIBC_2.0 __strtoll_internal F +GLIBC_2.0 __strtoq_internal F +GLIBC_2.0 __strtoul_internal F +GLIBC_2.0 __strtoull_internal F +GLIBC_2.0 __strtouq_internal F +GLIBC_2.0 __sysv_signal F +GLIBC_2.0 __timezone D 0x4 +GLIBC_2.0 __tzname D 0x8 +GLIBC_2.0 __uflow F +GLIBC_2.0 __underflow F +GLIBC_2.0 __vfscanf F +GLIBC_2.0 __vsnprintf F +GLIBC_2.0 __vsscanf F +GLIBC_2.0 __wait F +GLIBC_2.0 __waitpid F +GLIBC_2.0 __wcstod_internal F +GLIBC_2.0 __wcstof_internal F +GLIBC_2.0 __wcstol_internal F +GLIBC_2.0 __wcstold_internal F +GLIBC_2.0 __wcstoll_internal F +GLIBC_2.0 __wcstoul_internal F +GLIBC_2.0 __wcstoull_internal F +GLIBC_2.0 __write F +GLIBC_2.0 __xmknod F +GLIBC_2.0 __xpg_basename F +GLIBC_2.0 __xstat F +GLIBC_2.0 _environ D 0x4 +GLIBC_2.0 _exit F +GLIBC_2.0 _flush_cache F +GLIBC_2.0 _libc_intl_domainname D 0x5 +GLIBC_2.0 _longjmp F +GLIBC_2.0 _mcleanup F +GLIBC_2.0 _mcount F +GLIBC_2.0 _nl_default_dirname D 0x12 +GLIBC_2.0 _nl_domain_bindings D 0x4 +GLIBC_2.0 _nl_msg_cat_cntr D 0x4 +GLIBC_2.0 _null_auth D 0xc +GLIBC_2.0 _obstack D 0x4 +GLIBC_2.0 _obstack_allocated_p F +GLIBC_2.0 _obstack_begin F +GLIBC_2.0 _obstack_begin_1 F +GLIBC_2.0 _obstack_free F +GLIBC_2.0 _obstack_memory_used F +GLIBC_2.0 _obstack_newchunk F +GLIBC_2.0 _res D 0x200 +GLIBC_2.0 _rpc_dtablesize F +GLIBC_2.0 _seterr_reply F +GLIBC_2.0 _setjmp F +GLIBC_2.0 _sys_errlist D 0x1ec +GLIBC_2.0 _sys_nerr D 0x4 +GLIBC_2.0 _sys_siglist D 0x80 +GLIBC_2.0 _tolower F +GLIBC_2.0 _toupper F +GLIBC_2.0 a64l F +GLIBC_2.0 abort F +GLIBC_2.0 abs F +GLIBC_2.0 accept F +GLIBC_2.0 access F +GLIBC_2.0 acct F +GLIBC_2.0 addmntent F +GLIBC_2.0 adjtime F +GLIBC_2.0 adjtimex F +GLIBC_2.0 advance F +GLIBC_2.0 alarm F +GLIBC_2.0 alphasort F +GLIBC_2.0 argz_add F +GLIBC_2.0 argz_add_sep F +GLIBC_2.0 argz_append F +GLIBC_2.0 argz_count F +GLIBC_2.0 argz_create F +GLIBC_2.0 argz_create_sep F +GLIBC_2.0 argz_delete F +GLIBC_2.0 argz_extract F +GLIBC_2.0 argz_insert F +GLIBC_2.0 argz_next F +GLIBC_2.0 argz_replace F +GLIBC_2.0 argz_stringify F +GLIBC_2.0 asctime F +GLIBC_2.0 asctime_r F +GLIBC_2.0 asprintf F +GLIBC_2.0 atexit F +GLIBC_2.0 atof F +GLIBC_2.0 atoi F +GLIBC_2.0 atol F +GLIBC_2.0 atoll F +GLIBC_2.0 authnone_create F +GLIBC_2.0 authunix_create F +GLIBC_2.0 authunix_create_default F +GLIBC_2.0 basename F +GLIBC_2.0 bcmp F +GLIBC_2.0 bcopy F +GLIBC_2.0 bdflush F +GLIBC_2.0 bind F +GLIBC_2.0 bindresvport F +GLIBC_2.0 bindtextdomain F +GLIBC_2.0 brk F +GLIBC_2.0 bsd_signal F +GLIBC_2.0 bsearch F +GLIBC_2.0 btowc F +GLIBC_2.0 bzero F +GLIBC_2.0 cachectl F +GLIBC_2.0 cacheflush F +GLIBC_2.0 calloc F +GLIBC_2.0 callrpc F +GLIBC_2.0 canonicalize_file_name F +GLIBC_2.0 catclose F +GLIBC_2.0 catgets F +GLIBC_2.0 catopen F +GLIBC_2.0 cfgetispeed F +GLIBC_2.0 cfgetospeed F +GLIBC_2.0 cfmakeraw F +GLIBC_2.0 cfree F +GLIBC_2.0 cfsetispeed F +GLIBC_2.0 cfsetospeed F +GLIBC_2.0 cfsetspeed F +GLIBC_2.0 chdir F +GLIBC_2.0 chflags F +GLIBC_2.0 chmod F +GLIBC_2.0 chown F +GLIBC_2.0 chroot F +GLIBC_2.0 clearenv F +GLIBC_2.0 clearerr F +GLIBC_2.0 clearerr_unlocked F +GLIBC_2.0 clnt_broadcast F +GLIBC_2.0 clnt_create F +GLIBC_2.0 clnt_pcreateerror F +GLIBC_2.0 clnt_perrno F +GLIBC_2.0 clnt_perror F +GLIBC_2.0 clnt_spcreateerror F +GLIBC_2.0 clnt_sperrno F +GLIBC_2.0 clnt_sperror F +GLIBC_2.0 clntraw_create F +GLIBC_2.0 clnttcp_create F +GLIBC_2.0 clntudp_bufcreate F +GLIBC_2.0 clntudp_create F +GLIBC_2.0 clock F +GLIBC_2.0 clone F +GLIBC_2.0 close F +GLIBC_2.0 closedir F +GLIBC_2.0 closelog F +GLIBC_2.0 confstr F +GLIBC_2.0 connect F +GLIBC_2.0 copysign F +GLIBC_2.0 copysignf F +GLIBC_2.0 copysignl F +GLIBC_2.0 creat F +GLIBC_2.0 create_module F +GLIBC_2.0 ctermid F +GLIBC_2.0 ctime F +GLIBC_2.0 ctime_r F +GLIBC_2.0 cuserid F +GLIBC_2.0 daemon F +GLIBC_2.0 daylight D 0x4 +GLIBC_2.0 dcgettext F +GLIBC_2.0 delete_module F +GLIBC_2.0 dgettext F +GLIBC_2.0 difftime F +GLIBC_2.0 dirfd F +GLIBC_2.0 dirname F +GLIBC_2.0 div F +GLIBC_2.0 dprintf F +GLIBC_2.0 drand48 F +GLIBC_2.0 drand48_r F +GLIBC_2.0 dup F +GLIBC_2.0 dup2 F +GLIBC_2.0 dysize F +GLIBC_2.0 ecvt F +GLIBC_2.0 ecvt_r F +GLIBC_2.0 endaliasent F +GLIBC_2.0 endfsent F +GLIBC_2.0 endgrent F +GLIBC_2.0 endhostent F +GLIBC_2.0 endmntent F +GLIBC_2.0 endnetent F +GLIBC_2.0 endnetgrent F +GLIBC_2.0 endprotoent F +GLIBC_2.0 endpwent F +GLIBC_2.0 endrpcent F +GLIBC_2.0 endservent F +GLIBC_2.0 endspent F +GLIBC_2.0 endttyent F +GLIBC_2.0 endusershell F +GLIBC_2.0 endutent F +GLIBC_2.0 environ D 0x4 +GLIBC_2.0 envz_add F +GLIBC_2.0 envz_entry F +GLIBC_2.0 envz_get F +GLIBC_2.0 envz_merge F +GLIBC_2.0 envz_remove F +GLIBC_2.0 envz_strip F +GLIBC_2.0 erand48 F +GLIBC_2.0 erand48_r F +GLIBC_2.0 err F +GLIBC_2.0 error F +GLIBC_2.0 error_at_line F +GLIBC_2.0 error_message_count D 0x4 +GLIBC_2.0 error_one_per_line D 0x4 +GLIBC_2.0 error_print_progname D 0x4 +GLIBC_2.0 errx F +GLIBC_2.0 ether_aton F +GLIBC_2.0 ether_aton_r F +GLIBC_2.0 ether_hostton F +GLIBC_2.0 ether_line F +GLIBC_2.0 ether_ntoa F +GLIBC_2.0 ether_ntoa_r F +GLIBC_2.0 ether_ntohost F +GLIBC_2.0 euidaccess F +GLIBC_2.0 execl F +GLIBC_2.0 execle F +GLIBC_2.0 execlp F +GLIBC_2.0 execv F +GLIBC_2.0 execve F +GLIBC_2.0 execvp F +GLIBC_2.0 exit F +GLIBC_2.0 fchdir F +GLIBC_2.0 fchflags F +GLIBC_2.0 fchmod F +GLIBC_2.0 fchown F +GLIBC_2.0 fclose F +GLIBC_2.0 fcloseall F +GLIBC_2.0 fcntl F +GLIBC_2.0 fcvt F +GLIBC_2.0 fcvt_r F +GLIBC_2.0 fdatasync F +GLIBC_2.0 fdopen F +GLIBC_2.0 feof F +GLIBC_2.0 feof_unlocked F +GLIBC_2.0 ferror F +GLIBC_2.0 ferror_unlocked F +GLIBC_2.0 fexecve F +GLIBC_2.0 fflush F +GLIBC_2.0 fflush_unlocked F +GLIBC_2.0 ffs F +GLIBC_2.0 fgetc F +GLIBC_2.0 fgetgrent F +GLIBC_2.0 fgetgrent_r F +GLIBC_2.0 fgetpos F +GLIBC_2.0 fgetpwent F +GLIBC_2.0 fgetpwent_r F +GLIBC_2.0 fgets F +GLIBC_2.0 fgetspent F +GLIBC_2.0 fgetspent_r F +GLIBC_2.0 fileno F +GLIBC_2.0 fileno_unlocked F +GLIBC_2.0 finite F +GLIBC_2.0 finitef F +GLIBC_2.0 finitel F +GLIBC_2.0 flock F +GLIBC_2.0 flockfile F +GLIBC_2.0 fnmatch F +GLIBC_2.0 fopen F +GLIBC_2.0 fopencookie F +GLIBC_2.0 fork F +GLIBC_2.0 fpathconf F +GLIBC_2.0 fprintf F +GLIBC_2.0 fputc F +GLIBC_2.0 fputc_unlocked F +GLIBC_2.0 fputs F +GLIBC_2.0 fread F +GLIBC_2.0 free F +GLIBC_2.0 freeaddrinfo F +GLIBC_2.0 freopen F +GLIBC_2.0 frexp F +GLIBC_2.0 frexpf F +GLIBC_2.0 frexpl F +GLIBC_2.0 fscanf F +GLIBC_2.0 fseek F +GLIBC_2.0 fsetpos F +GLIBC_2.0 fstatfs F +GLIBC_2.0 fsync F +GLIBC_2.0 ftell F +GLIBC_2.0 ftime F +GLIBC_2.0 ftok F +GLIBC_2.0 ftruncate F +GLIBC_2.0 ftrylockfile F +GLIBC_2.0 fts_children F +GLIBC_2.0 fts_close F +GLIBC_2.0 fts_open F +GLIBC_2.0 fts_read F +GLIBC_2.0 fts_set F +GLIBC_2.0 ftw F +GLIBC_2.0 funlockfile F +GLIBC_2.0 fwrite F +GLIBC_2.0 gcvt F +GLIBC_2.0 get_avphys_pages F +GLIBC_2.0 get_current_dir_name F +GLIBC_2.0 get_kernel_syms F +GLIBC_2.0 get_myaddress F +GLIBC_2.0 get_nprocs F +GLIBC_2.0 get_nprocs_conf F +GLIBC_2.0 get_phys_pages F +GLIBC_2.0 getaddrinfo F +GLIBC_2.0 getaliasbyname F +GLIBC_2.0 getaliasbyname_r F +GLIBC_2.0 getaliasent F +GLIBC_2.0 getaliasent_r F +GLIBC_2.0 getc F +GLIBC_2.0 getc_unlocked F +GLIBC_2.0 getchar F +GLIBC_2.0 getchar_unlocked F +GLIBC_2.0 getcwd F +GLIBC_2.0 getdelim F +GLIBC_2.0 getdirentries F +GLIBC_2.0 getdomainname F +GLIBC_2.0 getdtablesize F +GLIBC_2.0 getegid F +GLIBC_2.0 getenv F +GLIBC_2.0 geteuid F +GLIBC_2.0 getfsent F +GLIBC_2.0 getfsfile F +GLIBC_2.0 getfsspec F +GLIBC_2.0 getgid F +GLIBC_2.0 getgrent F +GLIBC_2.0 getgrent_r F +GLIBC_2.0 getgrgid F +GLIBC_2.0 getgrgid_r F +GLIBC_2.0 getgrnam F +GLIBC_2.0 getgrnam_r F +GLIBC_2.0 getgroups F +GLIBC_2.0 gethostbyaddr F +GLIBC_2.0 gethostbyaddr_r F +GLIBC_2.0 gethostbyname F +GLIBC_2.0 gethostbyname2 F +GLIBC_2.0 gethostbyname2_r F +GLIBC_2.0 gethostbyname_r F +GLIBC_2.0 gethostent F +GLIBC_2.0 gethostent_r F +GLIBC_2.0 gethostid F +GLIBC_2.0 gethostname F +GLIBC_2.0 getitimer F +GLIBC_2.0 getline F +GLIBC_2.0 getlogin F +GLIBC_2.0 getlogin_r F +GLIBC_2.0 getmntent F +GLIBC_2.0 getmntent_r F +GLIBC_2.0 getnetbyaddr F +GLIBC_2.0 getnetbyaddr_r F +GLIBC_2.0 getnetbyname F +GLIBC_2.0 getnetbyname_r F +GLIBC_2.0 getnetent F +GLIBC_2.0 getnetent_r F +GLIBC_2.0 getnetgrent F +GLIBC_2.0 getnetgrent_r F +GLIBC_2.0 getopt F +GLIBC_2.0 getopt_long F +GLIBC_2.0 getopt_long_only F +GLIBC_2.0 getpagesize F +GLIBC_2.0 getpass F +GLIBC_2.0 getpeername F +GLIBC_2.0 getpgid F +GLIBC_2.0 getpgrp F +GLIBC_2.0 getpid F +GLIBC_2.0 getppid F +GLIBC_2.0 getpriority F +GLIBC_2.0 getprotobyname F +GLIBC_2.0 getprotobyname_r F +GLIBC_2.0 getprotobynumber F +GLIBC_2.0 getprotobynumber_r F +GLIBC_2.0 getprotoent F +GLIBC_2.0 getprotoent_r F +GLIBC_2.0 getpublickey F +GLIBC_2.0 getpw F +GLIBC_2.0 getpwent F +GLIBC_2.0 getpwent_r F +GLIBC_2.0 getpwnam F +GLIBC_2.0 getpwnam_r F +GLIBC_2.0 getpwuid F +GLIBC_2.0 getpwuid_r F +GLIBC_2.0 getresgid F +GLIBC_2.0 getresuid F +GLIBC_2.0 getrlimit F +GLIBC_2.0 getrpcbyname F +GLIBC_2.0 getrpcbyname_r F +GLIBC_2.0 getrpcbynumber F +GLIBC_2.0 getrpcbynumber_r F +GLIBC_2.0 getrpcent F +GLIBC_2.0 getrpcent_r F +GLIBC_2.0 getrpcport F +GLIBC_2.0 getrusage F +GLIBC_2.0 gets F +GLIBC_2.0 getsecretkey F +GLIBC_2.0 getservbyname F +GLIBC_2.0 getservbyname_r F +GLIBC_2.0 getservbyport F +GLIBC_2.0 getservbyport_r F +GLIBC_2.0 getservent F +GLIBC_2.0 getservent_r F +GLIBC_2.0 getsid F +GLIBC_2.0 getsockname F +GLIBC_2.0 getsockopt F +GLIBC_2.0 getspent F +GLIBC_2.0 getspent_r F +GLIBC_2.0 getspnam F +GLIBC_2.0 getspnam_r F +GLIBC_2.0 getsubopt F +GLIBC_2.0 gettext F +GLIBC_2.0 gettimeofday F +GLIBC_2.0 getttyent F +GLIBC_2.0 getttynam F +GLIBC_2.0 getuid F +GLIBC_2.0 getusershell F +GLIBC_2.0 getutent F +GLIBC_2.0 getutent_r F +GLIBC_2.0 getutid F +GLIBC_2.0 getutid_r F +GLIBC_2.0 getutline F +GLIBC_2.0 getutline_r F +GLIBC_2.0 getw F +GLIBC_2.0 getwd F +GLIBC_2.0 glob F +GLIBC_2.0 glob_pattern_p F +GLIBC_2.0 globfree F +GLIBC_2.0 gmtime F +GLIBC_2.0 gmtime_r F +GLIBC_2.0 group_member F +GLIBC_2.0 gsignal F +GLIBC_2.0 gtty F +GLIBC_2.0 h_errlist D 0x14 +GLIBC_2.0 h_nerr D 0x4 +GLIBC_2.0 hasmntopt F +GLIBC_2.0 hcreate F +GLIBC_2.0 hcreate_r F +GLIBC_2.0 hdestroy F +GLIBC_2.0 hdestroy_r F +GLIBC_2.0 herror F +GLIBC_2.0 hsearch F +GLIBC_2.0 hsearch_r F +GLIBC_2.0 hstrerror F +GLIBC_2.0 htonl F +GLIBC_2.0 htons F +GLIBC_2.0 index F +GLIBC_2.0 inet_addr F +GLIBC_2.0 inet_aton F +GLIBC_2.0 inet_lnaof F +GLIBC_2.0 inet_makeaddr F +GLIBC_2.0 inet_netof F +GLIBC_2.0 inet_network F +GLIBC_2.0 inet_nsap_addr F +GLIBC_2.0 inet_nsap_ntoa F +GLIBC_2.0 inet_ntoa F +GLIBC_2.0 inet_ntop F +GLIBC_2.0 inet_pton F +GLIBC_2.0 init_module F +GLIBC_2.0 initgroups F +GLIBC_2.0 initstate F +GLIBC_2.0 initstate_r F +GLIBC_2.0 innetgr F +GLIBC_2.0 insque F +GLIBC_2.0 ioctl F +GLIBC_2.0 iruserok F +GLIBC_2.0 isalnum F +GLIBC_2.0 isalpha F +GLIBC_2.0 isascii F +GLIBC_2.0 isatty F +GLIBC_2.0 isblank F +GLIBC_2.0 iscntrl F +GLIBC_2.0 isdigit F +GLIBC_2.0 isfdtype F +GLIBC_2.0 isgraph F +GLIBC_2.0 isinf F +GLIBC_2.0 isinff F +GLIBC_2.0 isinfl F +GLIBC_2.0 islower F +GLIBC_2.0 isnan F +GLIBC_2.0 isnanf F +GLIBC_2.0 isnanl F +GLIBC_2.0 isprint F +GLIBC_2.0 ispunct F +GLIBC_2.0 isspace F +GLIBC_2.0 isupper F +GLIBC_2.0 iswalnum F +GLIBC_2.0 iswalpha F +GLIBC_2.0 iswcntrl F +GLIBC_2.0 iswctype F +GLIBC_2.0 iswdigit F +GLIBC_2.0 iswgraph F +GLIBC_2.0 iswlower F +GLIBC_2.0 iswprint F +GLIBC_2.0 iswpunct F +GLIBC_2.0 iswspace F +GLIBC_2.0 iswupper F +GLIBC_2.0 iswxdigit F +GLIBC_2.0 isxdigit F +GLIBC_2.0 jrand48 F +GLIBC_2.0 jrand48_r F +GLIBC_2.0 kill F +GLIBC_2.0 killpg F +GLIBC_2.0 klogctl F +GLIBC_2.0 l64a F +GLIBC_2.0 labs F +GLIBC_2.0 lchown F +GLIBC_2.0 lckpwdf F +GLIBC_2.0 lcong48 F +GLIBC_2.0 lcong48_r F +GLIBC_2.0 ldexp F +GLIBC_2.0 ldexpf F +GLIBC_2.0 ldexpl F +GLIBC_2.0 ldiv F +GLIBC_2.0 lfind F +GLIBC_2.0 link F +GLIBC_2.0 listen F +GLIBC_2.0 llabs F +GLIBC_2.0 lldiv F +GLIBC_2.0 llseek F +GLIBC_2.0 loc1 D 0x4 +GLIBC_2.0 loc2 D 0x4 +GLIBC_2.0 localeconv F +GLIBC_2.0 localtime F +GLIBC_2.0 localtime_r F +GLIBC_2.0 lockf F +GLIBC_2.0 locs D 0x4 +GLIBC_2.0 longjmp F +GLIBC_2.0 lrand48 F +GLIBC_2.0 lrand48_r F +GLIBC_2.0 lsearch F +GLIBC_2.0 lseek F +GLIBC_2.0 madvise F +GLIBC_2.0 mallinfo F +GLIBC_2.0 malloc F +GLIBC_2.0 malloc_get_state F +GLIBC_2.0 malloc_set_state F +GLIBC_2.0 malloc_stats F +GLIBC_2.0 malloc_trim F +GLIBC_2.0 malloc_usable_size F +GLIBC_2.0 mallopt F +GLIBC_2.0 mallwatch D 0x4 +GLIBC_2.0 mblen F +GLIBC_2.0 mbrlen F +GLIBC_2.0 mbrtowc F +GLIBC_2.0 mbsinit F +GLIBC_2.0 mbsnrtowcs F +GLIBC_2.0 mbsrtowcs F +GLIBC_2.0 mbstowcs F +GLIBC_2.0 mbtowc F +GLIBC_2.0 mcheck F +GLIBC_2.0 memalign F +GLIBC_2.0 memccpy F +GLIBC_2.0 memchr F +GLIBC_2.0 memcmp F +GLIBC_2.0 memcpy F +GLIBC_2.0 memfrob F +GLIBC_2.0 memmem F +GLIBC_2.0 memmove F +GLIBC_2.0 memset F +GLIBC_2.0 mkdir F +GLIBC_2.0 mkfifo F +GLIBC_2.0 mkstemp F +GLIBC_2.0 mktemp F +GLIBC_2.0 mktime F +GLIBC_2.0 mlock F +GLIBC_2.0 mlockall F +GLIBC_2.0 mmap F +GLIBC_2.0 modf F +GLIBC_2.0 modff F +GLIBC_2.0 modfl F +GLIBC_2.0 monstartup F +GLIBC_2.0 mount F +GLIBC_2.0 mprobe F +GLIBC_2.0 mprotect F +GLIBC_2.0 mrand48 F +GLIBC_2.0 mrand48_r F +GLIBC_2.0 mremap F +GLIBC_2.0 msgctl F +GLIBC_2.0 msgget F +GLIBC_2.0 msgrcv F +GLIBC_2.0 msgsnd F +GLIBC_2.0 msync F +GLIBC_2.0 mtrace F +GLIBC_2.0 munlock F +GLIBC_2.0 munlockall F +GLIBC_2.0 munmap F +GLIBC_2.0 muntrace F +GLIBC_2.0 nanosleep F +GLIBC_2.0 nfsservctl F +GLIBC_2.0 nice F +GLIBC_2.0 nl_langinfo F +GLIBC_2.0 nrand48 F +GLIBC_2.0 nrand48_r F +GLIBC_2.0 ntohl F +GLIBC_2.0 ntohs F +GLIBC_2.0 obstack_alloc_failed_handler D 0x4 +GLIBC_2.0 obstack_exit_failure D 0x4 +GLIBC_2.0 obstack_free F +GLIBC_2.0 obstack_printf F +GLIBC_2.0 obstack_vprintf F +GLIBC_2.0 on_exit F +GLIBC_2.0 open F +GLIBC_2.0 open_memstream F +GLIBC_2.0 opendir F +GLIBC_2.0 openlog F +GLIBC_2.0 optarg D 0x4 +GLIBC_2.0 opterr D 0x4 +GLIBC_2.0 optind D 0x4 +GLIBC_2.0 optopt D 0x4 +GLIBC_2.0 parse_printf_format F +GLIBC_2.0 pathconf F +GLIBC_2.0 pause F +GLIBC_2.0 pclose F +GLIBC_2.0 perror F +GLIBC_2.0 personality F +GLIBC_2.0 pipe F +GLIBC_2.0 pmap_getmaps F +GLIBC_2.0 pmap_getport F +GLIBC_2.0 pmap_rmtcall F +GLIBC_2.0 pmap_set F +GLIBC_2.0 pmap_unset F +GLIBC_2.0 poll F +GLIBC_2.0 popen F +GLIBC_2.0 prctl F +GLIBC_2.0 printf F +GLIBC_2.0 profil F +GLIBC_2.0 program_invocation_name D 0x4 +GLIBC_2.0 program_invocation_short_name D 0x4 +GLIBC_2.0 pselect F +GLIBC_2.0 psignal F +GLIBC_2.0 pthread_attr_destroy F +GLIBC_2.0 pthread_attr_getdetachstate F +GLIBC_2.0 pthread_attr_getinheritsched F +GLIBC_2.0 pthread_attr_getschedparam F +GLIBC_2.0 pthread_attr_getschedpolicy F +GLIBC_2.0 pthread_attr_getscope F +GLIBC_2.0 pthread_attr_init F +GLIBC_2.0 pthread_attr_setdetachstate F +GLIBC_2.0 pthread_attr_setinheritsched F +GLIBC_2.0 pthread_attr_setschedparam F +GLIBC_2.0 pthread_attr_setschedpolicy F +GLIBC_2.0 pthread_attr_setscope F +GLIBC_2.0 pthread_cond_broadcast F +GLIBC_2.0 pthread_cond_destroy F +GLIBC_2.0 pthread_cond_init F +GLIBC_2.0 pthread_cond_signal F +GLIBC_2.0 pthread_cond_timedwait F +GLIBC_2.0 pthread_cond_wait F +GLIBC_2.0 pthread_condattr_destroy F +GLIBC_2.0 pthread_condattr_init F +GLIBC_2.0 pthread_equal F +GLIBC_2.0 pthread_exit F +GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_mutex_destroy F +GLIBC_2.0 pthread_mutex_init F +GLIBC_2.0 pthread_mutex_lock F +GLIBC_2.0 pthread_mutex_unlock F +GLIBC_2.0 pthread_self F +GLIBC_2.0 pthread_setcancelstate F +GLIBC_2.0 pthread_setcanceltype F +GLIBC_2.0 pthread_setschedparam F +GLIBC_2.0 ptrace F +GLIBC_2.0 putc F +GLIBC_2.0 putc_unlocked F +GLIBC_2.0 putchar F +GLIBC_2.0 putchar_unlocked F +GLIBC_2.0 putenv F +GLIBC_2.0 putpwent F +GLIBC_2.0 puts F +GLIBC_2.0 putspent F +GLIBC_2.0 pututline F +GLIBC_2.0 putw F +GLIBC_2.0 pvalloc F +GLIBC_2.0 qecvt F +GLIBC_2.0 qecvt_r F +GLIBC_2.0 qfcvt F +GLIBC_2.0 qfcvt_r F +GLIBC_2.0 qgcvt F +GLIBC_2.0 qsort F +GLIBC_2.0 query_module F +GLIBC_2.0 quotactl F +GLIBC_2.0 raise F +GLIBC_2.0 rand F +GLIBC_2.0 rand_r F +GLIBC_2.0 random F +GLIBC_2.0 random_r F +GLIBC_2.0 rcmd F +GLIBC_2.0 re_comp F +GLIBC_2.0 re_compile_fastmap F +GLIBC_2.0 re_compile_pattern F +GLIBC_2.0 re_exec F +GLIBC_2.0 re_match F +GLIBC_2.0 re_match_2 F +GLIBC_2.0 re_max_failures D 0x4 +GLIBC_2.0 re_search F +GLIBC_2.0 re_search_2 F +GLIBC_2.0 re_set_registers F +GLIBC_2.0 re_set_syntax F +GLIBC_2.0 re_syntax_options D 0x4 +GLIBC_2.0 read F +GLIBC_2.0 readdir F +GLIBC_2.0 readdir_r F +GLIBC_2.0 readlink F +GLIBC_2.0 readv F +GLIBC_2.0 realloc F +GLIBC_2.0 realpath F +GLIBC_2.0 reboot F +GLIBC_2.0 recv F +GLIBC_2.0 recvfrom F +GLIBC_2.0 recvmsg F +GLIBC_2.0 regcomp F +GLIBC_2.0 regerror F +GLIBC_2.0 regexec F +GLIBC_2.0 regfree F +GLIBC_2.0 register_printf_function F +GLIBC_2.0 registerrpc F +GLIBC_2.0 remove F +GLIBC_2.0 remque F +GLIBC_2.0 rename F +GLIBC_2.0 res_init F +GLIBC_2.0 revoke F +GLIBC_2.0 rewind F +GLIBC_2.0 rewinddir F +GLIBC_2.0 rexec F +GLIBC_2.0 rexecoptions D 0x4 +GLIBC_2.0 rindex F +GLIBC_2.0 rmdir F +GLIBC_2.0 rpc_createerr D 0x10 +GLIBC_2.0 rpmatch F +GLIBC_2.0 rresvport F +GLIBC_2.0 ruserok F +GLIBC_2.0 ruserpass F +GLIBC_2.0 sbrk F +GLIBC_2.0 scalbn F +GLIBC_2.0 scalbnf F +GLIBC_2.0 scalbnl F +GLIBC_2.0 scandir F +GLIBC_2.0 scanf F +GLIBC_2.0 sched_get_priority_max F +GLIBC_2.0 sched_get_priority_min F +GLIBC_2.0 sched_getparam F +GLIBC_2.0 sched_getscheduler F +GLIBC_2.0 sched_rr_get_interval F +GLIBC_2.0 sched_setparam F +GLIBC_2.0 sched_setscheduler F +GLIBC_2.0 sched_yield F +GLIBC_2.0 seed48 F +GLIBC_2.0 seed48_r F +GLIBC_2.0 seekdir F +GLIBC_2.0 select F +GLIBC_2.0 semctl F +GLIBC_2.0 semget F +GLIBC_2.0 semop F +GLIBC_2.0 send F +GLIBC_2.0 sendmsg F +GLIBC_2.0 sendto F +GLIBC_2.0 setaliasent F +GLIBC_2.0 setbuf F +GLIBC_2.0 setbuffer F +GLIBC_2.0 setcontext F +GLIBC_2.0 setdomainname F +GLIBC_2.0 setegid F +GLIBC_2.0 setenv F +GLIBC_2.0 seteuid F +GLIBC_2.0 setfsent F +GLIBC_2.0 setfsgid F +GLIBC_2.0 setfsuid F +GLIBC_2.0 setgid F +GLIBC_2.0 setgrent F +GLIBC_2.0 setgroups F +GLIBC_2.0 sethostent F +GLIBC_2.0 sethostid F +GLIBC_2.0 sethostname F +GLIBC_2.0 setitimer F +GLIBC_2.0 setjmp F +GLIBC_2.0 setlinebuf F +GLIBC_2.0 setlocale F +GLIBC_2.0 setlogin F +GLIBC_2.0 setlogmask F +GLIBC_2.0 setmntent F +GLIBC_2.0 setnetent F +GLIBC_2.0 setnetgrent F +GLIBC_2.0 setpgid F +GLIBC_2.0 setpgrp F +GLIBC_2.0 setpriority F +GLIBC_2.0 setprotoent F +GLIBC_2.0 setpwent F +GLIBC_2.0 setregid F +GLIBC_2.0 setresgid F +GLIBC_2.0 setresuid F +GLIBC_2.0 setreuid F +GLIBC_2.0 setrlimit F +GLIBC_2.0 setrpcent F +GLIBC_2.0 setservent F +GLIBC_2.0 setsid F +GLIBC_2.0 setsockopt F +GLIBC_2.0 setspent F +GLIBC_2.0 setstate F +GLIBC_2.0 setstate_r F +GLIBC_2.0 settimeofday F +GLIBC_2.0 setttyent F +GLIBC_2.0 setuid F +GLIBC_2.0 setusershell F +GLIBC_2.0 setutent F +GLIBC_2.0 setvbuf F +GLIBC_2.0 sgetspent F +GLIBC_2.0 sgetspent_r F +GLIBC_2.0 shmat F +GLIBC_2.0 shmctl F +GLIBC_2.0 shmdt F +GLIBC_2.0 shmget F +GLIBC_2.0 shutdown F +GLIBC_2.0 sigaction F +GLIBC_2.0 sigaddset F +GLIBC_2.0 sigaltstack F +GLIBC_2.0 sigandset F +GLIBC_2.0 sigblock F +GLIBC_2.0 sigdelset F +GLIBC_2.0 sigemptyset F +GLIBC_2.0 sigfillset F +GLIBC_2.0 siggetmask F +GLIBC_2.0 siginterrupt F +GLIBC_2.0 sigisemptyset F +GLIBC_2.0 sigismember F +GLIBC_2.0 siglongjmp F +GLIBC_2.0 signal F +GLIBC_2.0 sigorset F +GLIBC_2.0 sigpause F +GLIBC_2.0 sigpending F +GLIBC_2.0 sigprocmask F +GLIBC_2.0 sigreturn F +GLIBC_2.0 sigsetmask F +GLIBC_2.0 sigstack F +GLIBC_2.0 sigsuspend F +GLIBC_2.0 sigvec F +GLIBC_2.0 sigwait F +GLIBC_2.0 sleep F +GLIBC_2.0 snprintf F +GLIBC_2.0 socket F +GLIBC_2.0 socketpair F +GLIBC_2.0 sprintf F +GLIBC_2.0 srand F +GLIBC_2.0 srand48 F +GLIBC_2.0 srand48_r F +GLIBC_2.0 srandom F +GLIBC_2.0 srandom_r F +GLIBC_2.0 sscanf F +GLIBC_2.0 ssignal F +GLIBC_2.0 sstk F +GLIBC_2.0 statfs F +GLIBC_2.0 stderr D 0x4 +GLIBC_2.0 stdin D 0x4 +GLIBC_2.0 stdout D 0x4 +GLIBC_2.0 step F +GLIBC_2.0 stime F +GLIBC_2.0 stpcpy F +GLIBC_2.0 stpncpy F +GLIBC_2.0 strcasecmp F +GLIBC_2.0 strcat F +GLIBC_2.0 strchr F +GLIBC_2.0 strcmp F +GLIBC_2.0 strcoll F +GLIBC_2.0 strcpy F +GLIBC_2.0 strcspn F +GLIBC_2.0 strdup F +GLIBC_2.0 strerror F +GLIBC_2.0 strerror_r F +GLIBC_2.0 strfmon F +GLIBC_2.0 strfry F +GLIBC_2.0 strftime F +GLIBC_2.0 strlen F +GLIBC_2.0 strncasecmp F +GLIBC_2.0 strncat F +GLIBC_2.0 strncmp F +GLIBC_2.0 strncpy F +GLIBC_2.0 strndup F +GLIBC_2.0 strnlen F +GLIBC_2.0 strpbrk F +GLIBC_2.0 strptime F +GLIBC_2.0 strrchr F +GLIBC_2.0 strsep F +GLIBC_2.0 strsignal F +GLIBC_2.0 strspn F +GLIBC_2.0 strstr F +GLIBC_2.0 strtod F +GLIBC_2.0 strtof F +GLIBC_2.0 strtok F +GLIBC_2.0 strtok_r F +GLIBC_2.0 strtol F +GLIBC_2.0 strtold F +GLIBC_2.0 strtoll F +GLIBC_2.0 strtoq F +GLIBC_2.0 strtoul F +GLIBC_2.0 strtoull F +GLIBC_2.0 strtouq F +GLIBC_2.0 strxfrm F +GLIBC_2.0 stty F +GLIBC_2.0 svc_exit F +GLIBC_2.0 svc_fdset D 0x80 +GLIBC_2.0 svc_getreq F +GLIBC_2.0 svc_getreqset F +GLIBC_2.0 svc_register F +GLIBC_2.0 svc_run F +GLIBC_2.0 svc_sendreply F +GLIBC_2.0 svc_unregister F +GLIBC_2.0 svcauthdes_stats D 0xc +GLIBC_2.0 svcerr_auth F +GLIBC_2.0 svcerr_decode F +GLIBC_2.0 svcerr_noproc F +GLIBC_2.0 svcerr_noprog F +GLIBC_2.0 svcerr_progvers F +GLIBC_2.0 svcerr_systemerr F +GLIBC_2.0 svcerr_weakauth F +GLIBC_2.0 svcfd_create F +GLIBC_2.0 svcraw_create F +GLIBC_2.0 svctcp_create F +GLIBC_2.0 svcudp_bufcreate F +GLIBC_2.0 svcudp_create F +GLIBC_2.0 svcudp_enablecache F +GLIBC_2.0 swab F +GLIBC_2.0 swapoff F +GLIBC_2.0 swapon F +GLIBC_2.0 symlink F +GLIBC_2.0 sync F +GLIBC_2.0 sys_errlist D 0x1ec +GLIBC_2.0 sys_nerr D 0x4 +GLIBC_2.0 sys_sigabbrev D 0x80 +GLIBC_2.0 sys_siglist D 0x80 +GLIBC_2.0 syscall F +GLIBC_2.0 sysconf F +GLIBC_2.0 sysctl F +GLIBC_2.0 sysinfo F +GLIBC_2.0 syslog F +GLIBC_2.0 sysmips F +GLIBC_2.0 system F +GLIBC_2.0 tcdrain F +GLIBC_2.0 tcflow F +GLIBC_2.0 tcflush F +GLIBC_2.0 tcgetattr F +GLIBC_2.0 tcgetpgrp F +GLIBC_2.0 tcsendbreak F +GLIBC_2.0 tcsetattr F +GLIBC_2.0 tcsetpgrp F +GLIBC_2.0 tdelete F +GLIBC_2.0 telldir F +GLIBC_2.0 tempnam F +GLIBC_2.0 textdomain F +GLIBC_2.0 tfind F +GLIBC_2.0 time F +GLIBC_2.0 timegm F +GLIBC_2.0 timelocal F +GLIBC_2.0 times F +GLIBC_2.0 timezone D 0x4 +GLIBC_2.0 tmpfile F +GLIBC_2.0 tmpnam F +GLIBC_2.0 tmpnam_r F +GLIBC_2.0 toascii F +GLIBC_2.0 tolower F +GLIBC_2.0 toupper F +GLIBC_2.0 towctrans F +GLIBC_2.0 towlower F +GLIBC_2.0 towupper F +GLIBC_2.0 tr_break F +GLIBC_2.0 truncate F +GLIBC_2.0 tsearch F +GLIBC_2.0 ttyname F +GLIBC_2.0 ttyname_r F +GLIBC_2.0 ttyslot F +GLIBC_2.0 twalk F +GLIBC_2.0 tzname D 0x8 +GLIBC_2.0 tzset F +GLIBC_2.0 ualarm F +GLIBC_2.0 ulckpwdf F +GLIBC_2.0 ulimit F +GLIBC_2.0 umask F +GLIBC_2.0 umount F +GLIBC_2.0 uname F +GLIBC_2.0 ungetc F +GLIBC_2.0 unlink F +GLIBC_2.0 unsetenv F +GLIBC_2.0 updwtmp F +GLIBC_2.0 uselib F +GLIBC_2.0 usleep F +GLIBC_2.0 ustat F +GLIBC_2.0 utime F +GLIBC_2.0 utimes F +GLIBC_2.0 utmpname F +GLIBC_2.0 valloc F +GLIBC_2.0 vasprintf F +GLIBC_2.0 vdprintf F +GLIBC_2.0 verr F +GLIBC_2.0 verrx F +GLIBC_2.0 vfork F +GLIBC_2.0 vfprintf F +GLIBC_2.0 vfscanf F +GLIBC_2.0 vhangup F +GLIBC_2.0 vlimit F +GLIBC_2.0 vprintf F +GLIBC_2.0 vscanf F +GLIBC_2.0 vsnprintf F +GLIBC_2.0 vsprintf F +GLIBC_2.0 vsscanf F +GLIBC_2.0 vsyslog F +GLIBC_2.0 vtimes F +GLIBC_2.0 vwarn F +GLIBC_2.0 vwarnx F +GLIBC_2.0 wait F +GLIBC_2.0 wait3 F +GLIBC_2.0 wait4 F +GLIBC_2.0 waitpid F +GLIBC_2.0 warn F +GLIBC_2.0 warnx F +GLIBC_2.0 wcpcpy F +GLIBC_2.0 wcpncpy F +GLIBC_2.0 wcrtomb F +GLIBC_2.0 wcscat F +GLIBC_2.0 wcschr F +GLIBC_2.0 wcscmp F +GLIBC_2.0 wcscoll F +GLIBC_2.0 wcscpy F +GLIBC_2.0 wcscspn F +GLIBC_2.0 wcsdup F +GLIBC_2.0 wcslen F +GLIBC_2.0 wcsncat F +GLIBC_2.0 wcsncmp F +GLIBC_2.0 wcsncpy F +GLIBC_2.0 wcsnrtombs F +GLIBC_2.0 wcspbrk F +GLIBC_2.0 wcsrchr F +GLIBC_2.0 wcsrtombs F +GLIBC_2.0 wcsspn F +GLIBC_2.0 wcsstr F +GLIBC_2.0 wcstod F +GLIBC_2.0 wcstof F +GLIBC_2.0 wcstok F +GLIBC_2.0 wcstol F +GLIBC_2.0 wcstold F +GLIBC_2.0 wcstombs F +GLIBC_2.0 wcstoq F +GLIBC_2.0 wcstoul F +GLIBC_2.0 wcstouq F +GLIBC_2.0 wcswidth F +GLIBC_2.0 wcsxfrm F +GLIBC_2.0 wctob F +GLIBC_2.0 wctomb F +GLIBC_2.0 wctrans F +GLIBC_2.0 wctype F +GLIBC_2.0 wcwidth F +GLIBC_2.0 wmemchr F +GLIBC_2.0 wmemcmp F +GLIBC_2.0 wmemcpy F +GLIBC_2.0 wmemmove F +GLIBC_2.0 wmemset F +GLIBC_2.0 write F +GLIBC_2.0 writev F +GLIBC_2.0 xdr_accepted_reply F +GLIBC_2.0 xdr_array F +GLIBC_2.0 xdr_authunix_parms F +GLIBC_2.0 xdr_bool F +GLIBC_2.0 xdr_bytes F +GLIBC_2.0 xdr_callhdr F +GLIBC_2.0 xdr_callmsg F +GLIBC_2.0 xdr_char F +GLIBC_2.0 xdr_cryptkeyarg F +GLIBC_2.0 xdr_cryptkeyarg2 F +GLIBC_2.0 xdr_cryptkeyres F +GLIBC_2.0 xdr_des_block F +GLIBC_2.0 xdr_double F +GLIBC_2.0 xdr_enum F +GLIBC_2.0 xdr_float F +GLIBC_2.0 xdr_free F +GLIBC_2.0 xdr_int F +GLIBC_2.0 xdr_key_netstarg F +GLIBC_2.0 xdr_key_netstres F +GLIBC_2.0 xdr_keybuf F +GLIBC_2.0 xdr_keystatus F +GLIBC_2.0 xdr_long F +GLIBC_2.0 xdr_netobj F +GLIBC_2.0 xdr_opaque F +GLIBC_2.0 xdr_opaque_auth F +GLIBC_2.0 xdr_pmap F +GLIBC_2.0 xdr_pmaplist F +GLIBC_2.0 xdr_pointer F +GLIBC_2.0 xdr_reference F +GLIBC_2.0 xdr_rejected_reply F +GLIBC_2.0 xdr_replymsg F +GLIBC_2.0 xdr_rmtcall_args F +GLIBC_2.0 xdr_rmtcallres F +GLIBC_2.0 xdr_short F +GLIBC_2.0 xdr_string F +GLIBC_2.0 xdr_u_char F +GLIBC_2.0 xdr_u_int F +GLIBC_2.0 xdr_u_long F +GLIBC_2.0 xdr_u_short F +GLIBC_2.0 xdr_union F +GLIBC_2.0 xdr_vector F +GLIBC_2.0 xdr_void F +GLIBC_2.0 xdr_wrapstring F +GLIBC_2.0 xdrmem_create F +GLIBC_2.0 xdrrec_create F +GLIBC_2.0 xdrrec_endofrecord F +GLIBC_2.0 xdrrec_eof F +GLIBC_2.0 xdrrec_skiprecord F +GLIBC_2.0 xdrstdio_create F +GLIBC_2.0 xencrypt F +GLIBC_2.0 xprt_register F +GLIBC_2.0 xprt_unregister F +GLIBC_2.10 GLIBC_2.10 A +GLIBC_2.10 __cxa_at_quick_exit F +GLIBC_2.10 __posix_getopt F +GLIBC_2.10 accept4 F +GLIBC_2.10 endsgent F +GLIBC_2.10 fallocate F +GLIBC_2.10 fgetsgent F +GLIBC_2.10 fgetsgent_r F +GLIBC_2.10 getsgent F +GLIBC_2.10 getsgent_r F +GLIBC_2.10 getsgnam F +GLIBC_2.10 getsgnam_r F +GLIBC_2.10 malloc_info F +GLIBC_2.10 preadv F +GLIBC_2.10 preadv64 F +GLIBC_2.10 psiginfo F +GLIBC_2.10 putsgent F +GLIBC_2.10 pwritev F +GLIBC_2.10 pwritev64 F +GLIBC_2.10 quick_exit F +GLIBC_2.10 register_printf_modifier F +GLIBC_2.10 register_printf_specifier F +GLIBC_2.10 register_printf_type F +GLIBC_2.10 setsgent F +GLIBC_2.10 sgetsgent F +GLIBC_2.10 sgetsgent_r F +GLIBC_2.11 GLIBC_2.11 A +GLIBC_2.11 __longjmp_chk F +GLIBC_2.11 execvpe F +GLIBC_2.11 fallocate64 F +GLIBC_2.11 mkostemps F +GLIBC_2.11 mkostemps64 F +GLIBC_2.11 mkstemps F +GLIBC_2.11 mkstemps64 F +GLIBC_2.12 GLIBC_2.12 A +GLIBC_2.12 ntp_gettimex F +GLIBC_2.12 recvmmsg F +GLIBC_2.13 GLIBC_2.13 A +GLIBC_2.13 fanotify_init F +GLIBC_2.13 fanotify_mark F +GLIBC_2.13 prlimit F +GLIBC_2.13 prlimit64 F +GLIBC_2.14 GLIBC_2.14 A +GLIBC_2.14 clock_adjtime F +GLIBC_2.14 name_to_handle_at F +GLIBC_2.14 open_by_handle_at F +GLIBC_2.14 sendmmsg F +GLIBC_2.14 setns F +GLIBC_2.14 syncfs F +GLIBC_2.15 GLIBC_2.15 A +GLIBC_2.15 __fdelt_chk F +GLIBC_2.15 __fdelt_warn F +GLIBC_2.15 posix_spawn F +GLIBC_2.15 posix_spawnp F +GLIBC_2.15 process_vm_readv F +GLIBC_2.15 process_vm_writev F +GLIBC_2.15 scandirat F +GLIBC_2.15 scandirat64 F +GLIBC_2.16 GLIBC_2.16 A +GLIBC_2.16 __getauxval F +GLIBC_2.16 __poll_chk F +GLIBC_2.16 __ppoll_chk F +GLIBC_2.16 aligned_alloc F +GLIBC_2.16 c16rtomb F +GLIBC_2.16 c32rtomb F +GLIBC_2.16 getauxval F +GLIBC_2.16 mbrtoc16 F +GLIBC_2.16 mbrtoc32 F +GLIBC_2.16 timespec_get F +GLIBC_2.17 GLIBC_2.17 A +GLIBC_2.17 clock_getcpuclockid F +GLIBC_2.17 clock_getres F +GLIBC_2.17 clock_gettime F +GLIBC_2.17 clock_nanosleep F +GLIBC_2.17 clock_settime F +GLIBC_2.17 secure_getenv F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 __cxa_thread_atexit_impl F +GLIBC_2.19 GLIBC_2.19 A +GLIBC_2.19 getrlimit64 F +GLIBC_2.19 setrlimit64 F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 _Exit F +GLIBC_2.2 _IO_2_1_stderr_ D 0xa0 +GLIBC_2.2 _IO_2_1_stdin_ D 0xa0 +GLIBC_2.2 _IO_2_1_stdout_ D 0xa0 +GLIBC_2.2 _IO_adjust_wcolumn F +GLIBC_2.2 _IO_do_write F +GLIBC_2.2 _IO_fclose F +GLIBC_2.2 _IO_fdopen F +GLIBC_2.2 _IO_fgetpos F +GLIBC_2.2 _IO_fgetpos64 F +GLIBC_2.2 _IO_file_attach F +GLIBC_2.2 _IO_file_close_it F +GLIBC_2.2 _IO_file_finish F +GLIBC_2.2 _IO_file_fopen F +GLIBC_2.2 _IO_file_init F +GLIBC_2.2 _IO_file_overflow F +GLIBC_2.2 _IO_file_seekoff F +GLIBC_2.2 _IO_file_setbuf F +GLIBC_2.2 _IO_file_sync F +GLIBC_2.2 _IO_file_underflow F +GLIBC_2.2 _IO_file_write F +GLIBC_2.2 _IO_file_xsputn F +GLIBC_2.2 _IO_fopen F +GLIBC_2.2 _IO_free_wbackup_area F +GLIBC_2.2 _IO_fsetpos F +GLIBC_2.2 _IO_fsetpos64 F +GLIBC_2.2 _IO_getline_info F +GLIBC_2.2 _IO_init_wmarker F +GLIBC_2.2 _IO_iter_begin F +GLIBC_2.2 _IO_iter_end F +GLIBC_2.2 _IO_iter_file F +GLIBC_2.2 _IO_iter_next F +GLIBC_2.2 _IO_least_wmarker F +GLIBC_2.2 _IO_list_lock F +GLIBC_2.2 _IO_list_resetlock F +GLIBC_2.2 _IO_list_unlock F +GLIBC_2.2 _IO_popen F +GLIBC_2.2 _IO_proc_close F +GLIBC_2.2 _IO_proc_open F +GLIBC_2.2 _IO_seekwmark F +GLIBC_2.2 _IO_sputbackwc F +GLIBC_2.2 _IO_sungetwc F +GLIBC_2.2 _IO_switch_to_main_wget_area F +GLIBC_2.2 _IO_switch_to_wbackup_area F +GLIBC_2.2 _IO_switch_to_wget_mode F +GLIBC_2.2 _IO_unsave_wmarkers F +GLIBC_2.2 _IO_wdefault_doallocate F +GLIBC_2.2 _IO_wdefault_finish F +GLIBC_2.2 _IO_wdefault_pbackfail F +GLIBC_2.2 _IO_wdefault_uflow F +GLIBC_2.2 _IO_wdefault_xsgetn F +GLIBC_2.2 _IO_wdefault_xsputn F +GLIBC_2.2 _IO_wdo_write F +GLIBC_2.2 _IO_wdoallocbuf F +GLIBC_2.2 _IO_wfile_jumps D 0x54 +GLIBC_2.2 _IO_wfile_overflow F +GLIBC_2.2 _IO_wfile_seekoff F +GLIBC_2.2 _IO_wfile_sync F +GLIBC_2.2 _IO_wfile_underflow F +GLIBC_2.2 _IO_wfile_xsputn F +GLIBC_2.2 _IO_wmarker_delta F +GLIBC_2.2 _IO_wsetb F +GLIBC_2.2 __asprintf F +GLIBC_2.2 __assert F +GLIBC_2.2 __backtrace F +GLIBC_2.2 __backtrace_symbols F +GLIBC_2.2 __backtrace_symbols_fd F +GLIBC_2.2 __ctype32_tolower D 0x4 +GLIBC_2.2 __ctype32_toupper D 0x4 +GLIBC_2.2 __cxa_atexit F +GLIBC_2.2 __cxa_finalize F +GLIBC_2.2 __cyg_profile_func_enter F +GLIBC_2.2 __cyg_profile_func_exit F +GLIBC_2.2 __duplocale F +GLIBC_2.2 __endmntent F +GLIBC_2.2 __fbufsize F +GLIBC_2.2 __flbf F +GLIBC_2.2 __fpending F +GLIBC_2.2 __fpurge F +GLIBC_2.2 __freadable F +GLIBC_2.2 __freading F +GLIBC_2.2 __freelocale F +GLIBC_2.2 __fsetlocking F +GLIBC_2.2 __fwritable F +GLIBC_2.2 __fwriting F +GLIBC_2.2 __fxstat64 F +GLIBC_2.2 __getmntent_r F +GLIBC_2.2 __isalnum_l F +GLIBC_2.2 __isalpha_l F +GLIBC_2.2 __isascii_l F +GLIBC_2.2 __isblank_l F +GLIBC_2.2 __iscntrl_l F +GLIBC_2.2 __isdigit_l F +GLIBC_2.2 __isgraph_l F +GLIBC_2.2 __islower_l F +GLIBC_2.2 __isprint_l F +GLIBC_2.2 __ispunct_l F +GLIBC_2.2 __isspace_l F +GLIBC_2.2 __isupper_l F +GLIBC_2.2 __iswalnum_l F +GLIBC_2.2 __iswalpha_l F +GLIBC_2.2 __iswblank_l F +GLIBC_2.2 __iswcntrl_l F +GLIBC_2.2 __iswctype_l F +GLIBC_2.2 __iswdigit_l F +GLIBC_2.2 __iswgraph_l F +GLIBC_2.2 __iswlower_l F +GLIBC_2.2 __iswprint_l F +GLIBC_2.2 __iswpunct_l F +GLIBC_2.2 __iswspace_l F +GLIBC_2.2 __iswupper_l F +GLIBC_2.2 __iswxdigit_l F +GLIBC_2.2 __isxdigit_l F +GLIBC_2.2 __key_decryptsession_pk_LOCAL D 0x4 +GLIBC_2.2 __key_encryptsession_pk_LOCAL D 0x4 +GLIBC_2.2 __key_gendes_LOCAL D 0x4 +GLIBC_2.2 __libc_allocate_rtsig F +GLIBC_2.2 __libc_current_sigrtmax F +GLIBC_2.2 __libc_current_sigrtmin F +GLIBC_2.2 __libc_freeres F +GLIBC_2.2 __libc_sa_len F +GLIBC_2.2 __lxstat64 F +GLIBC_2.2 __mempcpy_small F +GLIBC_2.2 __newlocale F +GLIBC_2.2 __nl_langinfo_l F +GLIBC_2.2 __open64 F +GLIBC_2.2 __poll F +GLIBC_2.2 __pread64 F +GLIBC_2.2 __pwrite64 F +GLIBC_2.2 __rawmemchr F +GLIBC_2.2 __res_init F +GLIBC_2.2 __res_nclose F +GLIBC_2.2 __res_ninit F +GLIBC_2.2 __res_state F +GLIBC_2.2 __setmntent F +GLIBC_2.2 __signbit F +GLIBC_2.2 __signbitf F +GLIBC_2.2 __signbitl F +GLIBC_2.2 __sigsuspend F +GLIBC_2.2 __statfs F +GLIBC_2.2 __stpcpy_small F +GLIBC_2.2 __strcasecmp_l F +GLIBC_2.2 __strcasestr F +GLIBC_2.2 __strcoll_l F +GLIBC_2.2 __strcpy_small F +GLIBC_2.2 __strcspn_c1 F +GLIBC_2.2 __strcspn_c2 F +GLIBC_2.2 __strcspn_c3 F +GLIBC_2.2 __strfmon_l F +GLIBC_2.2 __strncasecmp_l F +GLIBC_2.2 __strndup F +GLIBC_2.2 __strpbrk_c2 F +GLIBC_2.2 __strpbrk_c3 F +GLIBC_2.2 __strsep_1c F +GLIBC_2.2 __strsep_2c F +GLIBC_2.2 __strsep_3c F +GLIBC_2.2 __strsep_g F +GLIBC_2.2 __strspn_c1 F +GLIBC_2.2 __strspn_c2 F +GLIBC_2.2 __strspn_c3 F +GLIBC_2.2 __strtod_l F +GLIBC_2.2 __strtof_l F +GLIBC_2.2 __strtok_r_1c F +GLIBC_2.2 __strtol_l F +GLIBC_2.2 __strtold_l F +GLIBC_2.2 __strtoll_l F +GLIBC_2.2 __strtoul_l F +GLIBC_2.2 __strtoull_l F +GLIBC_2.2 __strverscmp F +GLIBC_2.2 __strxfrm_l F +GLIBC_2.2 __sysconf F +GLIBC_2.2 __sysctl F +GLIBC_2.2 __toascii_l F +GLIBC_2.2 __tolower_l F +GLIBC_2.2 __toupper_l F +GLIBC_2.2 __towctrans F +GLIBC_2.2 __towctrans_l F +GLIBC_2.2 __towlower_l F +GLIBC_2.2 __towupper_l F +GLIBC_2.2 __vfork F +GLIBC_2.2 __wcscasecmp_l F +GLIBC_2.2 __wcscoll_l F +GLIBC_2.2 __wcsncasecmp_l F +GLIBC_2.2 __wcstod_l F +GLIBC_2.2 __wcstof_l F +GLIBC_2.2 __wcstol_l F +GLIBC_2.2 __wcstold_l F +GLIBC_2.2 __wcstoll_l F +GLIBC_2.2 __wcstoul_l F +GLIBC_2.2 __wcstoull_l F +GLIBC_2.2 __wcsxfrm_l F +GLIBC_2.2 __wctrans_l F +GLIBC_2.2 __wctype_l F +GLIBC_2.2 __woverflow F +GLIBC_2.2 __wuflow F +GLIBC_2.2 __wunderflow F +GLIBC_2.2 __xpg_sigpause F +GLIBC_2.2 __xstat64 F +GLIBC_2.2 _authenticate F +GLIBC_2.2 _dl_mcount_wrapper F +GLIBC_2.2 _dl_mcount_wrapper_check F +GLIBC_2.2 _flushlbf F +GLIBC_2.2 _res_hconf D 0x30 +GLIBC_2.2 _sys_errlist D 0x11b8 +GLIBC_2.2 _sys_nerr D 0x4 +GLIBC_2.2 _sys_siglist D 0x100 +GLIBC_2.2 _test_and_set F +GLIBC_2.2 addseverity F +GLIBC_2.2 alphasort64 F +GLIBC_2.2 argp_err_exit_status D 0x4 +GLIBC_2.2 argp_error F +GLIBC_2.2 argp_failure F +GLIBC_2.2 argp_help F +GLIBC_2.2 argp_parse F +GLIBC_2.2 argp_program_bug_address D 0x4 +GLIBC_2.2 argp_program_version D 0x4 +GLIBC_2.2 argp_program_version_hook D 0x4 +GLIBC_2.2 argp_state_help F +GLIBC_2.2 argp_usage F +GLIBC_2.2 authdes_create F +GLIBC_2.2 authdes_getucred F +GLIBC_2.2 authdes_pk_create F +GLIBC_2.2 backtrace F +GLIBC_2.2 backtrace_symbols F +GLIBC_2.2 backtrace_symbols_fd F +GLIBC_2.2 bind_textdomain_codeset F +GLIBC_2.2 capget F +GLIBC_2.2 capset F +GLIBC_2.2 cbc_crypt F +GLIBC_2.2 clntunix_create F +GLIBC_2.2 creat64 F +GLIBC_2.2 dcngettext F +GLIBC_2.2 des_setparity F +GLIBC_2.2 dngettext F +GLIBC_2.2 ecb_crypt F +GLIBC_2.2 endutxent F +GLIBC_2.2 fattach F +GLIBC_2.2 fclose F +GLIBC_2.2 fdetach F +GLIBC_2.2 fdopen F +GLIBC_2.2 ffsl F +GLIBC_2.2 ffsll F +GLIBC_2.2 fgetc_unlocked F +GLIBC_2.2 fgetpos F +GLIBC_2.2 fgetpos64 F +GLIBC_2.2 fgets_unlocked F +GLIBC_2.2 fgetwc F +GLIBC_2.2 fgetwc_unlocked F +GLIBC_2.2 fgetws F +GLIBC_2.2 fgetws_unlocked F +GLIBC_2.2 fmemopen F +GLIBC_2.2 fmtmsg F +GLIBC_2.2 fopen F +GLIBC_2.2 fopen64 F +GLIBC_2.2 fopencookie F +GLIBC_2.2 fputs_unlocked F +GLIBC_2.2 fputwc F +GLIBC_2.2 fputwc_unlocked F +GLIBC_2.2 fputws F +GLIBC_2.2 fputws_unlocked F +GLIBC_2.2 fread_unlocked F +GLIBC_2.2 freopen64 F +GLIBC_2.2 fseeko F +GLIBC_2.2 fseeko64 F +GLIBC_2.2 fsetpos F +GLIBC_2.2 fsetpos64 F +GLIBC_2.2 fstatfs64 F +GLIBC_2.2 fstatvfs F +GLIBC_2.2 fstatvfs64 F +GLIBC_2.2 ftello F +GLIBC_2.2 ftello64 F +GLIBC_2.2 ftruncate64 F +GLIBC_2.2 ftw64 F +GLIBC_2.2 fwide F +GLIBC_2.2 fwprintf F +GLIBC_2.2 fwrite_unlocked F +GLIBC_2.2 fwscanf F +GLIBC_2.2 gai_strerror F +GLIBC_2.2 getaliasbyname_r F +GLIBC_2.2 getaliasent_r F +GLIBC_2.2 getcontext F +GLIBC_2.2 getdate F +GLIBC_2.2 getdate_err D 0x4 +GLIBC_2.2 getdate_r F +GLIBC_2.2 getdirentries64 F +GLIBC_2.2 getgrent_r F +GLIBC_2.2 getgrgid_r F +GLIBC_2.2 getgrnam_r F +GLIBC_2.2 gethostbyaddr_r F +GLIBC_2.2 gethostbyname2_r F +GLIBC_2.2 gethostbyname_r F +GLIBC_2.2 gethostent_r F +GLIBC_2.2 getloadavg F +GLIBC_2.2 getmsg F +GLIBC_2.2 getnameinfo F +GLIBC_2.2 getnetbyaddr_r F +GLIBC_2.2 getnetbyname_r F +GLIBC_2.2 getnetent_r F +GLIBC_2.2 getnetname F +GLIBC_2.2 getpmsg F +GLIBC_2.2 getprotobyname_r F +GLIBC_2.2 getprotobynumber_r F +GLIBC_2.2 getprotoent_r F +GLIBC_2.2 getpt F +GLIBC_2.2 getpwent_r F +GLIBC_2.2 getpwnam_r F +GLIBC_2.2 getpwuid_r F +GLIBC_2.2 getrlimit64 F +GLIBC_2.2 getrpcbyname_r F +GLIBC_2.2 getrpcbynumber_r F +GLIBC_2.2 getrpcent_r F +GLIBC_2.2 getservbyname_r F +GLIBC_2.2 getservbyport_r F +GLIBC_2.2 getservent_r F +GLIBC_2.2 getspent_r F +GLIBC_2.2 getspnam_r F +GLIBC_2.2 getutmp F +GLIBC_2.2 getutmpx F +GLIBC_2.2 getutxent F +GLIBC_2.2 getutxid F +GLIBC_2.2 getutxline F +GLIBC_2.2 getwc F +GLIBC_2.2 getwc_unlocked F +GLIBC_2.2 getwchar F +GLIBC_2.2 getwchar_unlocked F +GLIBC_2.2 glob64 F +GLIBC_2.2 globfree64 F +GLIBC_2.2 gnu_get_libc_release F +GLIBC_2.2 gnu_get_libc_version F +GLIBC_2.2 grantpt F +GLIBC_2.2 host2netname F +GLIBC_2.2 iconv F +GLIBC_2.2 iconv_close F +GLIBC_2.2 iconv_open F +GLIBC_2.2 if_freenameindex F +GLIBC_2.2 if_indextoname F +GLIBC_2.2 if_nameindex F +GLIBC_2.2 if_nametoindex F +GLIBC_2.2 imaxabs F +GLIBC_2.2 imaxdiv F +GLIBC_2.2 in6addr_any D 0x10 +GLIBC_2.2 in6addr_loopback D 0x10 +GLIBC_2.2 iruserok_af F +GLIBC_2.2 isastream F +GLIBC_2.2 iswblank F +GLIBC_2.2 key_decryptsession F +GLIBC_2.2 key_decryptsession_pk F +GLIBC_2.2 key_encryptsession F +GLIBC_2.2 key_encryptsession_pk F +GLIBC_2.2 key_gendes F +GLIBC_2.2 key_get_conv F +GLIBC_2.2 key_secretkey_is_set F +GLIBC_2.2 key_setnet F +GLIBC_2.2 key_setsecret F +GLIBC_2.2 localeconv F +GLIBC_2.2 lockf64 F +GLIBC_2.2 lseek64 F +GLIBC_2.2 makecontext F +GLIBC_2.2 mcheck_check_all F +GLIBC_2.2 mcheck_pedantic F +GLIBC_2.2 mempcpy F +GLIBC_2.2 memrchr F +GLIBC_2.2 mincore F +GLIBC_2.2 mkdtemp F +GLIBC_2.2 mkstemp64 F +GLIBC_2.2 mmap64 F +GLIBC_2.2 moncontrol F +GLIBC_2.2 netname2host F +GLIBC_2.2 netname2user F +GLIBC_2.2 nftw F +GLIBC_2.2 nftw64 F +GLIBC_2.2 ngettext F +GLIBC_2.2 ntp_adjtime F +GLIBC_2.2 ntp_gettime F +GLIBC_2.2 open64 F +GLIBC_2.2 passwd2des F +GLIBC_2.2 pclose F +GLIBC_2.2 popen F +GLIBC_2.2 posix_fadvise F +GLIBC_2.2 posix_fadvise64 F +GLIBC_2.2 posix_fallocate F +GLIBC_2.2 posix_fallocate64 F +GLIBC_2.2 posix_madvise F +GLIBC_2.2 posix_memalign F +GLIBC_2.2 posix_spawn F +GLIBC_2.2 posix_spawn_file_actions_addclose F +GLIBC_2.2 posix_spawn_file_actions_adddup2 F +GLIBC_2.2 posix_spawn_file_actions_addopen F +GLIBC_2.2 posix_spawn_file_actions_destroy F +GLIBC_2.2 posix_spawn_file_actions_init F +GLIBC_2.2 posix_spawnattr_destroy F +GLIBC_2.2 posix_spawnattr_getflags F +GLIBC_2.2 posix_spawnattr_getpgroup F +GLIBC_2.2 posix_spawnattr_getschedparam F +GLIBC_2.2 posix_spawnattr_getschedpolicy F +GLIBC_2.2 posix_spawnattr_getsigdefault F +GLIBC_2.2 posix_spawnattr_getsigmask F +GLIBC_2.2 posix_spawnattr_init F +GLIBC_2.2 posix_spawnattr_setflags F +GLIBC_2.2 posix_spawnattr_setpgroup F +GLIBC_2.2 posix_spawnattr_setschedparam F +GLIBC_2.2 posix_spawnattr_setschedpolicy F +GLIBC_2.2 posix_spawnattr_setsigdefault F +GLIBC_2.2 posix_spawnattr_setsigmask F +GLIBC_2.2 posix_spawnp F +GLIBC_2.2 pread F +GLIBC_2.2 pread64 F +GLIBC_2.2 printf_size F +GLIBC_2.2 printf_size_info F +GLIBC_2.2 pthread_attr_init F +GLIBC_2.2 ptsname F +GLIBC_2.2 ptsname_r F +GLIBC_2.2 putgrent F +GLIBC_2.2 putmsg F +GLIBC_2.2 putpmsg F +GLIBC_2.2 pututxline F +GLIBC_2.2 putwc F +GLIBC_2.2 putwc_unlocked F +GLIBC_2.2 putwchar F +GLIBC_2.2 putwchar_unlocked F +GLIBC_2.2 pwrite F +GLIBC_2.2 pwrite64 F +GLIBC_2.2 rawmemchr F +GLIBC_2.2 rcmd_af F +GLIBC_2.2 readdir64 F +GLIBC_2.2 readdir64_r F +GLIBC_2.2 rexec_af F +GLIBC_2.2 rresvport_af F +GLIBC_2.2 rtime F +GLIBC_2.2 ruserok_af F +GLIBC_2.2 scandir64 F +GLIBC_2.2 sendfile F +GLIBC_2.2 setrlimit64 F +GLIBC_2.2 setutxent F +GLIBC_2.2 sighold F +GLIBC_2.2 sigignore F +GLIBC_2.2 sigqueue F +GLIBC_2.2 sigrelse F +GLIBC_2.2 sigset F +GLIBC_2.2 sigtimedwait F +GLIBC_2.2 sigwaitinfo F +GLIBC_2.2 statfs64 F +GLIBC_2.2 statvfs F +GLIBC_2.2 statvfs64 F +GLIBC_2.2 strcasestr F +GLIBC_2.2 strchrnul F +GLIBC_2.2 strtoimax F +GLIBC_2.2 strtoumax F +GLIBC_2.2 strverscmp F +GLIBC_2.2 svc_getreq_common F +GLIBC_2.2 svc_getreq_poll F +GLIBC_2.2 svc_max_pollfd D 0x4 +GLIBC_2.2 svc_pollfd D 0x4 +GLIBC_2.2 svcunix_create F +GLIBC_2.2 svcunixfd_create F +GLIBC_2.2 swapcontext F +GLIBC_2.2 swprintf F +GLIBC_2.2 swscanf F +GLIBC_2.2 sys_errlist D 0x11b8 +GLIBC_2.2 sys_nerr D 0x4 +GLIBC_2.2 sys_sigabbrev D 0x100 +GLIBC_2.2 sys_siglist D 0x100 +GLIBC_2.2 sysv_signal F +GLIBC_2.2 tcgetsid F +GLIBC_2.2 tdestroy F +GLIBC_2.2 tmpfile F +GLIBC_2.2 tmpfile64 F +GLIBC_2.2 truncate64 F +GLIBC_2.2 umount2 F +GLIBC_2.2 ungetwc F +GLIBC_2.2 unlockpt F +GLIBC_2.2 updwtmpx F +GLIBC_2.2 user2netname F +GLIBC_2.2 utmpxname F +GLIBC_2.2 versionsort F +GLIBC_2.2 versionsort64 F +GLIBC_2.2 vfwprintf F +GLIBC_2.2 vfwscanf F +GLIBC_2.2 vswprintf F +GLIBC_2.2 vswscanf F +GLIBC_2.2 vwprintf F +GLIBC_2.2 vwscanf F +GLIBC_2.2 waitid F +GLIBC_2.2 wcscasecmp F +GLIBC_2.2 wcschrnul F +GLIBC_2.2 wcsftime F +GLIBC_2.2 wcsncasecmp F +GLIBC_2.2 wcsnlen F +GLIBC_2.2 wcstoimax F +GLIBC_2.2 wcstoll F +GLIBC_2.2 wcstoull F +GLIBC_2.2 wcstoumax F +GLIBC_2.2 wcswcs F +GLIBC_2.2 wmempcpy F +GLIBC_2.2 wordexp F +GLIBC_2.2 wordfree F +GLIBC_2.2 wprintf F +GLIBC_2.2 wscanf F +GLIBC_2.2 xdecrypt F +GLIBC_2.2 xdr_authdes_cred F +GLIBC_2.2 xdr_authdes_verf F +GLIBC_2.2 xdr_getcredres F +GLIBC_2.2 xdr_hyper F +GLIBC_2.2 xdr_int16_t F +GLIBC_2.2 xdr_int32_t F +GLIBC_2.2 xdr_int64_t F +GLIBC_2.2 xdr_int8_t F +GLIBC_2.2 xdr_longlong_t F +GLIBC_2.2 xdr_netnamestr F +GLIBC_2.2 xdr_sizeof F +GLIBC_2.2 xdr_u_hyper F +GLIBC_2.2 xdr_u_longlong_t F +GLIBC_2.2 xdr_uint16_t F +GLIBC_2.2 xdr_uint32_t F +GLIBC_2.2 xdr_uint64_t F +GLIBC_2.2 xdr_uint8_t F +GLIBC_2.2 xdr_unixcred F +GLIBC_2.2.1 GLIBC_2.2.1 A +GLIBC_2.2.1 pivot_root F +GLIBC_2.2.1 posix_openpt F +GLIBC_2.2.2 GLIBC_2.2.2 A +GLIBC_2.2.2 __nss_hostname_digits_dots F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 __rpc_thread_createerr F +GLIBC_2.2.3 __rpc_thread_svc_fdset F +GLIBC_2.2.3 __rpc_thread_svc_max_pollfd F +GLIBC_2.2.3 __rpc_thread_svc_pollfd F +GLIBC_2.2.3 fnmatch F +GLIBC_2.2.3 sprofil F +GLIBC_2.2.4 GLIBC_2.2.4 A +GLIBC_2.2.4 dl_iterate_phdr F +GLIBC_2.2.4 getgrouplist F +GLIBC_2.2.4 sockatmark F +GLIBC_2.2.6 GLIBC_2.2.6 A +GLIBC_2.2.6 __nanosleep F +GLIBC_2.22 GLIBC_2.22 A +GLIBC_2.22 fmemopen F +GLIBC_2.23 GLIBC_2.23 A +GLIBC_2.23 fts64_children F +GLIBC_2.23 fts64_close F +GLIBC_2.23 fts64_open F +GLIBC_2.23 fts64_read F +GLIBC_2.23 fts64_set F +GLIBC_2.24 GLIBC_2.24 A +GLIBC_2.24 quick_exit F +GLIBC_2.25 GLIBC_2.25 A +GLIBC_2.25 __explicit_bzero_chk F +GLIBC_2.25 explicit_bzero F +GLIBC_2.25 getentropy F +GLIBC_2.25 getrandom F +GLIBC_2.25 strfromd F +GLIBC_2.25 strfromf F +GLIBC_2.25 strfroml F +GLIBC_2.26 GLIBC_2.26 A +GLIBC_2.26 preadv2 F +GLIBC_2.26 preadv64v2 F +GLIBC_2.26 pwritev2 F +GLIBC_2.26 pwritev64v2 F +GLIBC_2.26 reallocarray F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __ctype_b_loc F +GLIBC_2.3 __ctype_tolower_loc F +GLIBC_2.3 __ctype_toupper_loc F +GLIBC_2.3 __isctype F +GLIBC_2.3 __strftime_l F +GLIBC_2.3 __uselocale F +GLIBC_2.3 __wcsftime_l F +GLIBC_2.3 duplocale F +GLIBC_2.3 fgetxattr F +GLIBC_2.3 flistxattr F +GLIBC_2.3 freeifaddrs F +GLIBC_2.3 freelocale F +GLIBC_2.3 fremovexattr F +GLIBC_2.3 fsetxattr F +GLIBC_2.3 futimes F +GLIBC_2.3 getifaddrs F +GLIBC_2.3 getxattr F +GLIBC_2.3 isalnum_l F +GLIBC_2.3 isalpha_l F +GLIBC_2.3 isblank_l F +GLIBC_2.3 iscntrl_l F +GLIBC_2.3 isctype F +GLIBC_2.3 isdigit_l F +GLIBC_2.3 isgraph_l F +GLIBC_2.3 islower_l F +GLIBC_2.3 isprint_l F +GLIBC_2.3 ispunct_l F +GLIBC_2.3 isspace_l F +GLIBC_2.3 isupper_l F +GLIBC_2.3 iswalnum_l F +GLIBC_2.3 iswalpha_l F +GLIBC_2.3 iswblank_l F +GLIBC_2.3 iswcntrl_l F +GLIBC_2.3 iswctype_l F +GLIBC_2.3 iswdigit_l F +GLIBC_2.3 iswgraph_l F +GLIBC_2.3 iswlower_l F +GLIBC_2.3 iswprint_l F +GLIBC_2.3 iswpunct_l F +GLIBC_2.3 iswspace_l F +GLIBC_2.3 iswupper_l F +GLIBC_2.3 iswxdigit_l F +GLIBC_2.3 isxdigit_l F +GLIBC_2.3 lgetxattr F +GLIBC_2.3 listxattr F +GLIBC_2.3 llistxattr F +GLIBC_2.3 lremovexattr F +GLIBC_2.3 lsetxattr F +GLIBC_2.3 lutimes F +GLIBC_2.3 newlocale F +GLIBC_2.3 nl_langinfo_l F +GLIBC_2.3 readahead F +GLIBC_2.3 realpath F +GLIBC_2.3 removexattr F +GLIBC_2.3 sendfile64 F +GLIBC_2.3 setxattr F +GLIBC_2.3 strcasecmp_l F +GLIBC_2.3 strcoll_l F +GLIBC_2.3 strfmon_l F +GLIBC_2.3 strftime_l F +GLIBC_2.3 strncasecmp_l F +GLIBC_2.3 strtod_l F +GLIBC_2.3 strtof_l F +GLIBC_2.3 strtol_l F +GLIBC_2.3 strtold_l F +GLIBC_2.3 strtoll_l F +GLIBC_2.3 strtoul_l F +GLIBC_2.3 strtoull_l F +GLIBC_2.3 strxfrm_l F +GLIBC_2.3 tolower_l F +GLIBC_2.3 toupper_l F +GLIBC_2.3 towctrans_l F +GLIBC_2.3 towlower_l F +GLIBC_2.3 towupper_l F +GLIBC_2.3 uselocale F +GLIBC_2.3 wcscasecmp_l F +GLIBC_2.3 wcscoll_l F +GLIBC_2.3 wcsftime_l F +GLIBC_2.3 wcsncasecmp_l F +GLIBC_2.3 wcstod_l F +GLIBC_2.3 wcstof_l F +GLIBC_2.3 wcstol_l F +GLIBC_2.3 wcstold_l F +GLIBC_2.3 wcstoll_l F +GLIBC_2.3 wcstoul_l F +GLIBC_2.3 wcstoull_l F +GLIBC_2.3 wcsxfrm_l F +GLIBC_2.3 wctrans_l F +GLIBC_2.3 wctype_l F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __register_atfork F +GLIBC_2.3.2 epoll_create F +GLIBC_2.3.2 epoll_ctl F +GLIBC_2.3.2 epoll_wait F +GLIBC_2.3.2 lchmod F +GLIBC_2.3.2 pthread_cond_broadcast F +GLIBC_2.3.2 pthread_cond_destroy F +GLIBC_2.3.2 pthread_cond_init F +GLIBC_2.3.2 pthread_cond_signal F +GLIBC_2.3.2 pthread_cond_timedwait F +GLIBC_2.3.2 pthread_cond_wait F +GLIBC_2.3.2 strptime_l F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 _sys_siglist D 0x200 +GLIBC_2.3.3 gnu_dev_major F +GLIBC_2.3.3 gnu_dev_makedev F +GLIBC_2.3.3 gnu_dev_minor F +GLIBC_2.3.3 inet6_option_alloc F +GLIBC_2.3.3 inet6_option_append F +GLIBC_2.3.3 inet6_option_find F +GLIBC_2.3.3 inet6_option_init F +GLIBC_2.3.3 inet6_option_next F +GLIBC_2.3.3 inet6_option_space F +GLIBC_2.3.3 nftw F +GLIBC_2.3.3 nftw64 F +GLIBC_2.3.3 posix_fadvise64 F +GLIBC_2.3.3 posix_fallocate64 F +GLIBC_2.3.3 remap_file_pages F +GLIBC_2.3.3 sched_getaffinity F +GLIBC_2.3.3 sched_setaffinity F +GLIBC_2.3.3 semtimedop F +GLIBC_2.3.3 sys_sigabbrev D 0x200 +GLIBC_2.3.3 sys_siglist D 0x200 +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 __chk_fail F +GLIBC_2.3.4 __fprintf_chk F +GLIBC_2.3.4 __gets_chk F +GLIBC_2.3.4 __memcpy_chk F +GLIBC_2.3.4 __memmove_chk F +GLIBC_2.3.4 __mempcpy_chk F +GLIBC_2.3.4 __memset_chk F +GLIBC_2.3.4 __printf_chk F +GLIBC_2.3.4 __snprintf_chk F +GLIBC_2.3.4 __sprintf_chk F +GLIBC_2.3.4 __stpcpy_chk F +GLIBC_2.3.4 __strcat_chk F +GLIBC_2.3.4 __strcpy_chk F +GLIBC_2.3.4 __strncat_chk F +GLIBC_2.3.4 __strncpy_chk F +GLIBC_2.3.4 __vfprintf_chk F +GLIBC_2.3.4 __vprintf_chk F +GLIBC_2.3.4 __vsnprintf_chk F +GLIBC_2.3.4 __vsprintf_chk F +GLIBC_2.3.4 __xpg_strerror_r F +GLIBC_2.3.4 getipv4sourcefilter F +GLIBC_2.3.4 getsourcefilter F +GLIBC_2.3.4 regexec F +GLIBC_2.3.4 sched_getaffinity F +GLIBC_2.3.4 sched_setaffinity F +GLIBC_2.3.4 setipv4sourcefilter F +GLIBC_2.3.4 setsourcefilter F +GLIBC_2.3.4 xdr_quad_t F +GLIBC_2.3.4 xdr_u_quad_t F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __confstr_chk F +GLIBC_2.4 __fgets_chk F +GLIBC_2.4 __fgets_unlocked_chk F +GLIBC_2.4 __fgetws_chk F +GLIBC_2.4 __fgetws_unlocked_chk F +GLIBC_2.4 __fwprintf_chk F +GLIBC_2.4 __fxstatat F +GLIBC_2.4 __fxstatat64 F +GLIBC_2.4 __getcwd_chk F +GLIBC_2.4 __getdomainname_chk F +GLIBC_2.4 __getgroups_chk F +GLIBC_2.4 __gethostname_chk F +GLIBC_2.4 __getlogin_r_chk F +GLIBC_2.4 __getwd_chk F +GLIBC_2.4 __mbsnrtowcs_chk F +GLIBC_2.4 __mbsrtowcs_chk F +GLIBC_2.4 __mbstowcs_chk F +GLIBC_2.4 __pread64_chk F +GLIBC_2.4 __pread_chk F +GLIBC_2.4 __ptsname_r_chk F +GLIBC_2.4 __read_chk F +GLIBC_2.4 __readlink_chk F +GLIBC_2.4 __realpath_chk F +GLIBC_2.4 __recv_chk F +GLIBC_2.4 __recvfrom_chk F +GLIBC_2.4 __stack_chk_fail F +GLIBC_2.4 __stpncpy_chk F +GLIBC_2.4 __swprintf_chk F +GLIBC_2.4 __syslog_chk F +GLIBC_2.4 __ttyname_r_chk F +GLIBC_2.4 __vfwprintf_chk F +GLIBC_2.4 __vswprintf_chk F +GLIBC_2.4 __vsyslog_chk F +GLIBC_2.4 __vwprintf_chk F +GLIBC_2.4 __wcpcpy_chk F +GLIBC_2.4 __wcpncpy_chk F +GLIBC_2.4 __wcrtomb_chk F +GLIBC_2.4 __wcscat_chk F +GLIBC_2.4 __wcscpy_chk F +GLIBC_2.4 __wcsncat_chk F +GLIBC_2.4 __wcsncpy_chk F +GLIBC_2.4 __wcsnrtombs_chk F +GLIBC_2.4 __wcsrtombs_chk F +GLIBC_2.4 __wcstombs_chk F +GLIBC_2.4 __wctomb_chk F +GLIBC_2.4 __wmemcpy_chk F +GLIBC_2.4 __wmemmove_chk F +GLIBC_2.4 __wmempcpy_chk F +GLIBC_2.4 __wmemset_chk F +GLIBC_2.4 __wprintf_chk F +GLIBC_2.4 __xmknodat F +GLIBC_2.4 eaccess F +GLIBC_2.4 faccessat F +GLIBC_2.4 fchmodat F +GLIBC_2.4 fchownat F +GLIBC_2.4 fdopendir F +GLIBC_2.4 futimesat F +GLIBC_2.4 inotify_add_watch F +GLIBC_2.4 inotify_init F +GLIBC_2.4 inotify_rm_watch F +GLIBC_2.4 linkat F +GLIBC_2.4 mkdirat F +GLIBC_2.4 mkfifoat F +GLIBC_2.4 open_wmemstream F +GLIBC_2.4 openat F +GLIBC_2.4 openat64 F +GLIBC_2.4 ppoll F +GLIBC_2.4 readlinkat F +GLIBC_2.4 renameat F +GLIBC_2.4 symlinkat F +GLIBC_2.4 unlinkat F +GLIBC_2.4 unshare F +GLIBC_2.5 GLIBC_2.5 A +GLIBC_2.5 __readlinkat_chk F +GLIBC_2.5 inet6_opt_append F +GLIBC_2.5 inet6_opt_find F +GLIBC_2.5 inet6_opt_finish F +GLIBC_2.5 inet6_opt_get_val F +GLIBC_2.5 inet6_opt_init F +GLIBC_2.5 inet6_opt_next F +GLIBC_2.5 inet6_opt_set_val F +GLIBC_2.5 inet6_rth_add F +GLIBC_2.5 inet6_rth_getaddr F +GLIBC_2.5 inet6_rth_init F +GLIBC_2.5 inet6_rth_reverse F +GLIBC_2.5 inet6_rth_segments F +GLIBC_2.5 inet6_rth_space F +GLIBC_2.5 splice F +GLIBC_2.5 tee F +GLIBC_2.5 vmsplice F +GLIBC_2.6 GLIBC_2.6 A +GLIBC_2.6 __sched_cpucount F +GLIBC_2.6 epoll_pwait F +GLIBC_2.6 futimens F +GLIBC_2.6 sched_getcpu F +GLIBC_2.6 strerror_l F +GLIBC_2.6 sync_file_range F +GLIBC_2.6 utimensat F +GLIBC_2.7 GLIBC_2.7 A +GLIBC_2.7 __fread_chk F +GLIBC_2.7 __fread_unlocked_chk F +GLIBC_2.7 __isoc99_fscanf F +GLIBC_2.7 __isoc99_fwscanf F +GLIBC_2.7 __isoc99_scanf F +GLIBC_2.7 __isoc99_sscanf F +GLIBC_2.7 __isoc99_swscanf F +GLIBC_2.7 __isoc99_vfscanf F +GLIBC_2.7 __isoc99_vfwscanf F +GLIBC_2.7 __isoc99_vscanf F +GLIBC_2.7 __isoc99_vsscanf F +GLIBC_2.7 __isoc99_vswscanf F +GLIBC_2.7 __isoc99_vwscanf F +GLIBC_2.7 __isoc99_wscanf F +GLIBC_2.7 __open64_2 F +GLIBC_2.7 __open_2 F +GLIBC_2.7 __openat64_2 F +GLIBC_2.7 __openat_2 F +GLIBC_2.7 __sched_cpualloc F +GLIBC_2.7 __sched_cpufree F +GLIBC_2.7 eventfd F +GLIBC_2.7 eventfd_read F +GLIBC_2.7 eventfd_write F +GLIBC_2.7 mkostemp F +GLIBC_2.7 mkostemp64 F +GLIBC_2.7 signalfd F +GLIBC_2.8 GLIBC_2.8 A +GLIBC_2.8 __asprintf_chk F +GLIBC_2.8 __dprintf_chk F +GLIBC_2.8 __obstack_printf_chk F +GLIBC_2.8 __obstack_vprintf_chk F +GLIBC_2.8 __vasprintf_chk F +GLIBC_2.8 __vdprintf_chk F +GLIBC_2.8 qsort_r F +GLIBC_2.8 timerfd_create F +GLIBC_2.8 timerfd_gettime F +GLIBC_2.8 timerfd_settime F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 dup3 F +GLIBC_2.9 epoll_create1 F +GLIBC_2.9 inotify_init1 F +GLIBC_2.9 pipe2 F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/libresolv.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/libresolv.abilist new file mode 100644 index 0000000000..4d50e7c8c6 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/libresolv.abilist @@ -0,0 +1,100 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __b64_ntop F +GLIBC_2.0 __b64_pton F +GLIBC_2.0 __dn_comp F +GLIBC_2.0 __dn_count_labels F +GLIBC_2.0 __dn_skipname F +GLIBC_2.0 __fp_nquery F +GLIBC_2.0 __fp_query F +GLIBC_2.0 __fp_resstat F +GLIBC_2.0 __hostalias F +GLIBC_2.0 __loc_aton F +GLIBC_2.0 __loc_ntoa F +GLIBC_2.0 __p_cdname F +GLIBC_2.0 __p_cdnname F +GLIBC_2.0 __p_class F +GLIBC_2.0 __p_class_syms D 0x54 +GLIBC_2.0 __p_fqname F +GLIBC_2.0 __p_fqnname F +GLIBC_2.0 __p_option F +GLIBC_2.0 __p_query F +GLIBC_2.0 __p_secstodate F +GLIBC_2.0 __p_time F +GLIBC_2.0 __p_type F +GLIBC_2.0 __p_type_syms D 0x228 +GLIBC_2.0 __putlong F +GLIBC_2.0 __putshort F +GLIBC_2.0 __res_close F +GLIBC_2.0 __res_dnok F +GLIBC_2.0 __res_hnok F +GLIBC_2.0 __res_isourserver F +GLIBC_2.0 __res_mailok F +GLIBC_2.0 __res_nameinquery F +GLIBC_2.0 __res_ownok F +GLIBC_2.0 __res_queriesmatch F +GLIBC_2.0 __res_send F +GLIBC_2.0 __sym_ntop F +GLIBC_2.0 __sym_ntos F +GLIBC_2.0 __sym_ston F +GLIBC_2.0 _gethtbyaddr F +GLIBC_2.0 _gethtbyname F +GLIBC_2.0 _gethtbyname2 F +GLIBC_2.0 _gethtent F +GLIBC_2.0 _getlong F +GLIBC_2.0 _getshort F +GLIBC_2.0 _res_opcodes D 0x40 +GLIBC_2.0 _sethtent F +GLIBC_2.0 dn_expand F +GLIBC_2.0 inet_net_ntop F +GLIBC_2.0 inet_net_pton F +GLIBC_2.0 inet_neta F +GLIBC_2.0 res_gethostbyaddr F +GLIBC_2.0 res_gethostbyname F +GLIBC_2.0 res_gethostbyname2 F +GLIBC_2.0 res_mkquery F +GLIBC_2.0 res_query F +GLIBC_2.0 res_querydomain F +GLIBC_2.0 res_search F +GLIBC_2.0 res_send_setqhook F +GLIBC_2.0 res_send_setrhook F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __dn_expand F +GLIBC_2.2 __res_hostalias F +GLIBC_2.2 __res_mkquery F +GLIBC_2.2 __res_nmkquery F +GLIBC_2.2 __res_nquery F +GLIBC_2.2 __res_nquerydomain F +GLIBC_2.2 __res_nsearch F +GLIBC_2.2 __res_nsend F +GLIBC_2.2 __res_query F +GLIBC_2.2 __res_querydomain F +GLIBC_2.2 __res_search F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __p_rcode F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 ns_datetosecs F +GLIBC_2.9 ns_format_ttl F +GLIBC_2.9 ns_get16 F +GLIBC_2.9 ns_get32 F +GLIBC_2.9 ns_initparse F +GLIBC_2.9 ns_makecanon F +GLIBC_2.9 ns_msg_getflag F +GLIBC_2.9 ns_name_compress F +GLIBC_2.9 ns_name_ntol F +GLIBC_2.9 ns_name_ntop F +GLIBC_2.9 ns_name_pack F +GLIBC_2.9 ns_name_pton F +GLIBC_2.9 ns_name_rollback F +GLIBC_2.9 ns_name_skip F +GLIBC_2.9 ns_name_uncompress F +GLIBC_2.9 ns_name_unpack F +GLIBC_2.9 ns_parse_ttl F +GLIBC_2.9 ns_parserr F +GLIBC_2.9 ns_put16 F +GLIBC_2.9 ns_put32 F +GLIBC_2.9 ns_samedomain F +GLIBC_2.9 ns_samename F +GLIBC_2.9 ns_skiprr F +GLIBC_2.9 ns_sprintrr F +GLIBC_2.9 ns_sprintrrf F +GLIBC_2.9 ns_subdomain F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c new file mode 100644 index 0000000000..a88f5a784a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/lockf64.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/lseek.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/lseek.c new file mode 100644 index 0000000000..26d2e11e13 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/lseek.c @@ -0,0 +1,36 @@ +/* MIPS n32 lseek implementation. + Copyright (C) 2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <unistd.h> +#include <sys/types.h> +#include <errno.h> + +off_t +__lseek (int fd, off_t offset, int whence) +{ + off64_t res = __lseek64 (fd, offset, whence); + if (res != (off_t) res) + { + __set_errno (EOVERFLOW); + return (off_t) -1; + } + return (off_t) res; +} +libc_hidden_def (__lseek) +weak_alias (__lseek, lseek) +strong_alias (__lseek, __libc_lseek) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/mmap_internal.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/mmap_internal.h new file mode 100644 index 0000000000..4b65559ecb --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/mmap_internal.h @@ -0,0 +1,28 @@ +/* Common mmap definition for Linux implementation. MIPS n32 version. + Copyright (C) 2016-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef MMAP_MIPS_N32_INTERNAL_H +#define MMAP_MIPS_N32_INTERNAL_H + +/* To handle negative offsets consistently with other architectures, + the offset must be zero-extended to 64-bit. */ +#define MMAP_ADJUST_OFFSET(offset) (uint64_t) (uint32_t) offset + +#include_next <mmap_internal.h> + +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list new file mode 100644 index 0000000000..5f3d04728d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list @@ -0,0 +1,13 @@ +# File name Caller Syscall name # args Strong name Weak names + +# C syscall macros cannot be used because this syscall has a 64-bit +# return value. +lseek64 - lseek i:iii __lseek64 __libc_lseek64 lseek64 llseek + +readahead - readahead i:iii __readahead readahead + +prlimit64 EXTRA prlimit64 i:iipp prlimit64 + +fanotify_mark EXTRA fanotify_mark i:iiiis fanotify_mark + +personality EXTRA personality Ei:i __personality personality diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h new file mode 100644 index 0000000000..f27778bdf8 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h @@ -0,0 +1,321 @@ +/* Copyright (C) 2000-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _LINUX_MIPS_SYSDEP_H +#define _LINUX_MIPS_SYSDEP_H 1 + +/* There is some commonality. */ +#include <sysdeps/unix/sysv/linux/sysdep.h> +#include <sysdeps/unix/mips/mips64/n32/sysdep.h> + +#include <tls.h> + +/* In order to get __set_errno() definition in INLINE_SYSCALL. */ +#ifndef __ASSEMBLER__ +#include <errno.h> +#endif + +/* 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 + +#ifdef __ASSEMBLER__ + +/* We don't want the label for the error handler to be visible in the symbol + table when we define it here. */ +# define SYSCALL_ERROR_LABEL 99b + +#else /* ! __ASSEMBLER__ */ + +/* Convert X to a long long, without losing any bits if it is one + already or warning if it is a 32-bit pointer. */ +#define ARGIFY(X) ((long long) (__typeof__ ((X) - (X))) (X)) + +/* Define a macro which expands into the inline wrapper code for a system + call. */ +#undef INLINE_SYSCALL +#define INLINE_SYSCALL(name, nr, args...) \ + ({ INTERNAL_SYSCALL_DECL (_sc_err); \ + long result_var = INTERNAL_SYSCALL (name, _sc_err, nr, args); \ + if ( INTERNAL_SYSCALL_ERROR_P (result_var, _sc_err) ) \ + { \ + __set_errno (INTERNAL_SYSCALL_ERRNO (result_var, _sc_err)); \ + result_var = -1L; \ + } \ + result_var; }) + +#undef INTERNAL_SYSCALL_DECL +#define INTERNAL_SYSCALL_DECL(err) long err __attribute__ ((unused)) + +#undef INTERNAL_SYSCALL_ERROR_P +#define INTERNAL_SYSCALL_ERROR_P(val, err) ((void) (val), (long) (err)) + +#undef INTERNAL_SYSCALL_ERRNO +#define INTERNAL_SYSCALL_ERRNO(val, err) ((void) (err), val) + +/* Note that the original Linux syscall restart convention required the + instruction immediately preceding SYSCALL to initialize $v0 with the + syscall number. Then if a restart triggered, $v0 would have been + clobbered by the syscall interrupted, and needed to be reinititalized. + The kernel would decrement the PC by 4 before switching back to the + user mode so that $v0 had been reloaded before SYSCALL was executed + again. This implied the place $v0 was loaded from must have been + preserved across a syscall, e.g. an immediate, static register, stack + slot, etc. + + The convention was relaxed in Linux with a change applied to the kernel + GIT repository as commit 96187fb0bc30cd7919759d371d810e928048249d, that + first appeared in the 2.6.36 release. Since then the kernel has had + code that reloads $v0 upon syscall restart and resumes right at the + SYSCALL instruction, so no special arrangement is needed anymore. + + For backwards compatibility with existing kernel binaries we support + the old convention by choosing the instruction preceding SYSCALL + carefully. This also means we have to force a 32-bit encoding of the + microMIPS MOVE instruction if one is used. */ + +#ifdef __mips_micromips +# define MOVE32 "move32" +#else +# define MOVE32 "move" +#endif + +#undef INTERNAL_SYSCALL +#define INTERNAL_SYSCALL(name, err, nr, args...) \ + internal_syscall##nr ("li\t%0, %2\t\t\t# " #name "\n\t", \ + "IK" (SYS_ify (name)), \ + 0, err, args) + +#undef INTERNAL_SYSCALL_NCS +#define INTERNAL_SYSCALL_NCS(number, err, nr, args...) \ + internal_syscall##nr (MOVE32 "\t%0, %2\n\t", \ + "r" (__s0), \ + number, err, args) + +#define internal_syscall0(v0_init, input, number, err, dummy...) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set reorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall1(v0_init, input, number, err, arg1) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a0 asm ("$4") = ARGIFY (arg1); \ + register long long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set reorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall2(v0_init, input, number, err, arg1, arg2) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a0 asm ("$4") = ARGIFY (arg1); \ + register long long __a1 asm ("$5") = ARGIFY (arg2); \ + register long long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0), "r" (__a1) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall3(v0_init, input, number, err, \ + arg1, arg2, arg3) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a0 asm ("$4") = ARGIFY (arg1); \ + register long long __a1 asm ("$5") = ARGIFY (arg2); \ + register long long __a2 asm ("$6") = ARGIFY (arg3); \ + register long long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall4(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a0 asm ("$4") = ARGIFY (arg1); \ + register long long __a1 asm ("$5") = ARGIFY (arg2); \ + register long long __a2 asm ("$6") = ARGIFY (arg3); \ + register long long __a3 asm ("$7") = ARGIFY (arg4); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall5(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a0 asm ("$4") = ARGIFY (arg1); \ + register long long __a1 asm ("$5") = ARGIFY (arg2); \ + register long long __a2 asm ("$6") = ARGIFY (arg3); \ + register long long __a3 asm ("$7") = ARGIFY (arg4); \ + register long long __a4 asm ("$8") = ARGIFY (arg5); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall6(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5, arg6) \ +({ \ + long _sys_result; \ + \ + { \ + register long long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long long __v0 asm ("$2"); \ + register long long __a0 asm ("$4") = ARGIFY (arg1); \ + register long long __a1 asm ("$5") = ARGIFY (arg2); \ + register long long __a2 asm ("$6") = ARGIFY (arg3); \ + register long long __a3 asm ("$7") = ARGIFY (arg4); \ + register long long __a4 asm ("$8") = ARGIFY (arg5); \ + register long long __a5 asm ("$9") = ARGIFY (arg6); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), \ + "r" (__a5) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define __SYSCALL_CLOBBERS "$1", "$3", "$10", "$11", "$12", "$13", \ + "$14", "$15", "$24", "$25", "hi", "lo", "memory" + +/* Standard MIPS syscalls have an error flag, and return a positive errno + when the error flag is set. Emulate this behaviour for vsyscalls so that + the INTERNAL_SYSCALL_{ERROR_P,ERRNO} macros work correctly. */ +#define INTERNAL_VSYSCALL_CALL(funcptr, err, nr, args...) \ + ({ \ + long _ret = funcptr (args); \ + err = ((unsigned long) (_ret) >= (unsigned long) -4095L); \ + if (err) \ + _ret = -_ret; \ + _ret; \ + }) + +/* List of system calls which are supported as vsyscalls. */ +#define HAVE_CLOCK_GETTIME_VSYSCALL 1 +#define HAVE_GETTIMEOFDAY_VSYSCALL 1 + +#endif /* __ASSEMBLER__ */ + +/* Pointer mangling is not yet supported for MIPS. */ +#define PTR_MANGLE(var) (void) (var) +#define PTR_DEMANGLE(var) (void) (var) + +#endif /* linux/mips/sysdep.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/c++-types.data b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/c++-types.data new file mode 100644 index 0000000000..23c11dc41b --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/c++-types.data @@ -0,0 +1,67 @@ +blkcnt64_t:l +blkcnt_t:l +blksize_t:l +caddr_t:Pc +clockid_t:i +clock_t:l +daddr_t:i +dev_t:m +fd_mask:l +fsblkcnt64_t:m +fsblkcnt_t:m +fsfilcnt64_t:m +fsfilcnt_t:m +fsid_t:8__fsid_t +gid_t:j +id_t:j +ino64_t:m +ino_t:m +int16_t:s +int32_t:i +int64_t:l +int8_t:a +intptr_t:l +key_t:i +loff_t:l +mode_t:j +nlink_t:m +off64_t:l +off_t:l +pid_t:i +pthread_attr_t:14pthread_attr_t +pthread_barrier_t:17pthread_barrier_t +pthread_barrierattr_t:21pthread_barrierattr_t +pthread_cond_t:14pthread_cond_t +pthread_condattr_t:18pthread_condattr_t +pthread_key_t:j +pthread_mutex_t:15pthread_mutex_t +pthread_mutexattr_t:19pthread_mutexattr_t +pthread_once_t:i +pthread_rwlock_t:16pthread_rwlock_t +pthread_rwlockattr_t:20pthread_rwlockattr_t +pthread_spinlock_t:i +pthread_t:m +quad_t:l +register_t:l +rlim64_t:m +rlim_t:m +sigset_t:10__sigset_t +size_t:m +socklen_t:j +ssize_t:l +suseconds_t:l +time_t:l +u_char:h +uid_t:j +uint:j +u_int:j +u_int16_t:t +u_int32_t:j +u_int64_t:m +u_int8_t:h +ulong:m +u_long:m +u_quad_t:m +useconds_t:j +ushort:t +u_short:t diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c new file mode 100644 index 0000000000..6e25b021ab --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c @@ -0,0 +1 @@ +/* Empty. */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fts.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fts.c new file mode 100644 index 0000000000..d0c62e6195 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fts.c @@ -0,0 +1 @@ +#include <io/fts.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fts64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fts64.c new file mode 100644 index 0000000000..2472f8bf75 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/fts64.c @@ -0,0 +1 @@ +#include <io/fts64.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c new file mode 100644 index 0000000000..46389568b2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c @@ -0,0 +1 @@ +#include <io/ftw.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c new file mode 100644 index 0000000000..cb02172b3e --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c @@ -0,0 +1 @@ +#include <io/ftw64.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c new file mode 100644 index 0000000000..33918ea6a5 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c @@ -0,0 +1 @@ +/* glob64 is in glob.c */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S new file mode 100644 index 0000000000..ee5d11d240 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S @@ -0,0 +1,41 @@ +/* Copyright 2003-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> + +#include <sys/asm.h> + +/* Sign-extend the ioctl number, since the kernel wants it as a + sign-extended 32-bit value, but our prototype is that of a long. */ + + .text +ENTRY (__ioctl) + sll a1, a1, 0 + li v0, __NR_ioctl + syscall /* Do the system call. */ + bne a3, zero, L(error) + ret + +L(error): + SETUP_GP64_REG (a0, __ioctl) + PTR_LA t9, __syscall_error + RESTORE_GP64_REG + jr t9 + +PSEUDO_END (__ioctl) + +weak_alias (__ioctl, ioctl) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ld.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ld.abilist new file mode 100644 index 0000000000..f7ba5fd730 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/ld.abilist @@ -0,0 +1,13 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _r_debug D 0x28 +GLIBC_2.0 calloc F +GLIBC_2.0 free F +GLIBC_2.0 malloc F +GLIBC_2.0 realloc F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __libc_stack_end D 0x8 +GLIBC_2.2 _dl_mcount F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __tls_get_addr F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __stack_chk_guard D 0x8 diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist new file mode 100644 index 0000000000..e1275dfe28 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist @@ -0,0 +1,2245 @@ +GCC_3.0 GCC_3.0 A +GCC_3.0 _Unwind_Find_FDE F +GCC_3.0 __deregister_frame_info_bases F +GCC_3.0 __register_frame_info_bases F +GCC_3.0 __register_frame_info_table_bases F +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 _IO_adjust_column F +GLIBC_2.0 _IO_default_doallocate F +GLIBC_2.0 _IO_default_finish F +GLIBC_2.0 _IO_default_pbackfail F +GLIBC_2.0 _IO_default_uflow F +GLIBC_2.0 _IO_default_xsgetn F +GLIBC_2.0 _IO_default_xsputn F +GLIBC_2.0 _IO_do_write F +GLIBC_2.0 _IO_doallocbuf F +GLIBC_2.0 _IO_fclose F +GLIBC_2.0 _IO_fdopen F +GLIBC_2.0 _IO_feof F +GLIBC_2.0 _IO_ferror F +GLIBC_2.0 _IO_fflush F +GLIBC_2.0 _IO_fgetpos F +GLIBC_2.0 _IO_fgets F +GLIBC_2.0 _IO_file_attach F +GLIBC_2.0 _IO_file_close F +GLIBC_2.0 _IO_file_close_it F +GLIBC_2.0 _IO_file_doallocate F +GLIBC_2.0 _IO_file_fopen F +GLIBC_2.0 _IO_file_init F +GLIBC_2.0 _IO_file_jumps D 0xa8 +GLIBC_2.0 _IO_file_open F +GLIBC_2.0 _IO_file_overflow F +GLIBC_2.0 _IO_file_read F +GLIBC_2.0 _IO_file_seek F +GLIBC_2.0 _IO_file_seekoff F +GLIBC_2.0 _IO_file_setbuf F +GLIBC_2.0 _IO_file_stat F +GLIBC_2.0 _IO_file_sync F +GLIBC_2.0 _IO_file_underflow F +GLIBC_2.0 _IO_file_write F +GLIBC_2.0 _IO_file_xsputn F +GLIBC_2.0 _IO_flockfile F +GLIBC_2.0 _IO_flush_all F +GLIBC_2.0 _IO_flush_all_linebuffered F +GLIBC_2.0 _IO_fopen F +GLIBC_2.0 _IO_fprintf F +GLIBC_2.0 _IO_fputs F +GLIBC_2.0 _IO_fread F +GLIBC_2.0 _IO_free_backup_area F +GLIBC_2.0 _IO_fsetpos F +GLIBC_2.0 _IO_ftell F +GLIBC_2.0 _IO_ftrylockfile F +GLIBC_2.0 _IO_funlockfile F +GLIBC_2.0 _IO_fwrite F +GLIBC_2.0 _IO_getc F +GLIBC_2.0 _IO_getline F +GLIBC_2.0 _IO_gets F +GLIBC_2.0 _IO_init F +GLIBC_2.0 _IO_init_marker F +GLIBC_2.0 _IO_link_in F +GLIBC_2.0 _IO_list_all D 0x8 +GLIBC_2.0 _IO_marker_delta F +GLIBC_2.0 _IO_marker_difference F +GLIBC_2.0 _IO_padn F +GLIBC_2.0 _IO_peekc_locked F +GLIBC_2.0 _IO_popen F +GLIBC_2.0 _IO_printf F +GLIBC_2.0 _IO_proc_close F +GLIBC_2.0 _IO_proc_open F +GLIBC_2.0 _IO_putc F +GLIBC_2.0 _IO_puts F +GLIBC_2.0 _IO_remove_marker F +GLIBC_2.0 _IO_seekmark F +GLIBC_2.0 _IO_seekoff F +GLIBC_2.0 _IO_seekpos F +GLIBC_2.0 _IO_setb F +GLIBC_2.0 _IO_setbuffer F +GLIBC_2.0 _IO_setvbuf F +GLIBC_2.0 _IO_sgetn F +GLIBC_2.0 _IO_sprintf F +GLIBC_2.0 _IO_sputbackc F +GLIBC_2.0 _IO_sscanf F +GLIBC_2.0 _IO_stderr_ D 0x98 +GLIBC_2.0 _IO_stdin_ D 0x98 +GLIBC_2.0 _IO_stdout_ D 0x98 +GLIBC_2.0 _IO_str_init_readonly F +GLIBC_2.0 _IO_str_init_static F +GLIBC_2.0 _IO_str_overflow F +GLIBC_2.0 _IO_str_pbackfail F +GLIBC_2.0 _IO_str_seekoff F +GLIBC_2.0 _IO_str_underflow F +GLIBC_2.0 _IO_sungetc F +GLIBC_2.0 _IO_switch_to_get_mode F +GLIBC_2.0 _IO_un_link F +GLIBC_2.0 _IO_ungetc F +GLIBC_2.0 _IO_unsave_markers F +GLIBC_2.0 _IO_vfprintf F +GLIBC_2.0 _IO_vfscanf F +GLIBC_2.0 _IO_vsprintf F +GLIBC_2.0 ___brk_addr D 0x8 +GLIBC_2.0 __adjtimex F +GLIBC_2.0 __after_morecore_hook D 0x8 +GLIBC_2.0 __argz_count F +GLIBC_2.0 __argz_next F +GLIBC_2.0 __argz_stringify F +GLIBC_2.0 __assert_fail F +GLIBC_2.0 __assert_perror_fail F +GLIBC_2.0 __bsd_getpgrp F +GLIBC_2.0 __bzero F +GLIBC_2.0 __check_rhosts_file D 0x4 +GLIBC_2.0 __clone F +GLIBC_2.0 __close F +GLIBC_2.0 __cmsg_nxthdr F +GLIBC_2.0 __connect F +GLIBC_2.0 __ctype32_b D 0x8 +GLIBC_2.0 __ctype_b D 0x8 +GLIBC_2.0 __ctype_get_mb_cur_max F +GLIBC_2.0 __ctype_tolower D 0x8 +GLIBC_2.0 __ctype_toupper D 0x8 +GLIBC_2.0 __curbrk D 0x8 +GLIBC_2.0 __daylight D 0x4 +GLIBC_2.0 __dcgettext F +GLIBC_2.0 __default_morecore F +GLIBC_2.0 __deregister_frame F +GLIBC_2.0 __deregister_frame_info F +GLIBC_2.0 __dgettext F +GLIBC_2.0 __dup2 F +GLIBC_2.0 __environ D 0x8 +GLIBC_2.0 __errno_location F +GLIBC_2.0 __fcntl F +GLIBC_2.0 __ffs F +GLIBC_2.0 __finite F +GLIBC_2.0 __finitef F +GLIBC_2.0 __finitel F +GLIBC_2.0 __fork F +GLIBC_2.0 __fpu_control D 0x4 +GLIBC_2.0 __frame_state_for F +GLIBC_2.0 __free_hook D 0x8 +GLIBC_2.0 __fxstat F +GLIBC_2.0 __getdelim F +GLIBC_2.0 __getpagesize F +GLIBC_2.0 __getpgid F +GLIBC_2.0 __getpid F +GLIBC_2.0 __gettimeofday F +GLIBC_2.0 __gmtime_r F +GLIBC_2.0 __h_errno_location F +GLIBC_2.0 __isinf F +GLIBC_2.0 __isinff F +GLIBC_2.0 __isinfl F +GLIBC_2.0 __isnan F +GLIBC_2.0 __isnanf F +GLIBC_2.0 __isnanl F +GLIBC_2.0 __iswctype F +GLIBC_2.0 __ivaliduser F +GLIBC_2.0 __libc_calloc F +GLIBC_2.0 __libc_free F +GLIBC_2.0 __libc_init_first F +GLIBC_2.0 __libc_mallinfo F +GLIBC_2.0 __libc_malloc F +GLIBC_2.0 __libc_mallopt F +GLIBC_2.0 __libc_memalign F +GLIBC_2.0 __libc_pvalloc F +GLIBC_2.0 __libc_realloc F +GLIBC_2.0 __libc_start_main F +GLIBC_2.0 __libc_valloc F +GLIBC_2.0 __lseek F +GLIBC_2.0 __lxstat F +GLIBC_2.0 __malloc_hook D 0x8 +GLIBC_2.0 __malloc_initialize_hook D 0x8 +GLIBC_2.0 __mbrlen F +GLIBC_2.0 __mbrtowc F +GLIBC_2.0 __memalign_hook D 0x8 +GLIBC_2.0 __mempcpy F +GLIBC_2.0 __monstartup F +GLIBC_2.0 __morecore D 0x8 +GLIBC_2.0 __nss_configure_lookup F +GLIBC_2.0 __nss_database_lookup F +GLIBC_2.0 __nss_group_lookup F +GLIBC_2.0 __nss_hosts_lookup F +GLIBC_2.0 __nss_next F +GLIBC_2.0 __nss_passwd_lookup F +GLIBC_2.0 __open F +GLIBC_2.0 __overflow F +GLIBC_2.0 __pipe F +GLIBC_2.0 __printf_fp F +GLIBC_2.0 __profile_frequency F +GLIBC_2.0 __progname D 0x8 +GLIBC_2.0 __progname_full D 0x8 +GLIBC_2.0 __rcmd_errstr D 0x8 +GLIBC_2.0 __read F +GLIBC_2.0 __realloc_hook D 0x8 +GLIBC_2.0 __register_frame F +GLIBC_2.0 __register_frame_info F +GLIBC_2.0 __register_frame_info_table F +GLIBC_2.0 __register_frame_table F +GLIBC_2.0 __res_randomid F +GLIBC_2.0 __sbrk F +GLIBC_2.0 __sched_get_priority_max F +GLIBC_2.0 __sched_get_priority_min F +GLIBC_2.0 __sched_getparam F +GLIBC_2.0 __sched_getscheduler F +GLIBC_2.0 __sched_setscheduler F +GLIBC_2.0 __sched_yield F +GLIBC_2.0 __secure_getenv F +GLIBC_2.0 __select F +GLIBC_2.0 __send F +GLIBC_2.0 __setpgid F +GLIBC_2.0 __sigaction F +GLIBC_2.0 __sigaddset F +GLIBC_2.0 __sigdelset F +GLIBC_2.0 __sigismember F +GLIBC_2.0 __sigpause F +GLIBC_2.0 __sigsetjmp F +GLIBC_2.0 __stpcpy F +GLIBC_2.0 __stpncpy F +GLIBC_2.0 __strcasecmp F +GLIBC_2.0 __strdup F +GLIBC_2.0 __strerror_r F +GLIBC_2.0 __strtod_internal F +GLIBC_2.0 __strtof_internal F +GLIBC_2.0 __strtok_r F +GLIBC_2.0 __strtol_internal F +GLIBC_2.0 __strtold_internal F +GLIBC_2.0 __strtoll_internal F +GLIBC_2.0 __strtoul_internal F +GLIBC_2.0 __strtoull_internal F +GLIBC_2.0 __sysv_signal F +GLIBC_2.0 __timezone D 0x8 +GLIBC_2.0 __tzname D 0x10 +GLIBC_2.0 __uflow F +GLIBC_2.0 __underflow F +GLIBC_2.0 __vfscanf F +GLIBC_2.0 __vsnprintf F +GLIBC_2.0 __vsscanf F +GLIBC_2.0 __wait F +GLIBC_2.0 __waitpid F +GLIBC_2.0 __wcstod_internal F +GLIBC_2.0 __wcstof_internal F +GLIBC_2.0 __wcstol_internal F +GLIBC_2.0 __wcstold_internal F +GLIBC_2.0 __wcstoll_internal F +GLIBC_2.0 __wcstoul_internal F +GLIBC_2.0 __wcstoull_internal F +GLIBC_2.0 __write F +GLIBC_2.0 __xmknod F +GLIBC_2.0 __xpg_basename F +GLIBC_2.0 __xstat F +GLIBC_2.0 _environ D 0x8 +GLIBC_2.0 _exit F +GLIBC_2.0 _flush_cache F +GLIBC_2.0 _libc_intl_domainname D 0x5 +GLIBC_2.0 _longjmp F +GLIBC_2.0 _mcleanup F +GLIBC_2.0 _mcount F +GLIBC_2.0 _nl_default_dirname D 0x12 +GLIBC_2.0 _nl_domain_bindings D 0x8 +GLIBC_2.0 _nl_msg_cat_cntr D 0x4 +GLIBC_2.0 _null_auth D 0x18 +GLIBC_2.0 _obstack D 0x8 +GLIBC_2.0 _obstack_allocated_p F +GLIBC_2.0 _obstack_begin F +GLIBC_2.0 _obstack_begin_1 F +GLIBC_2.0 _obstack_free F +GLIBC_2.0 _obstack_memory_used F +GLIBC_2.0 _obstack_newchunk F +GLIBC_2.0 _res D 0x238 +GLIBC_2.0 _rpc_dtablesize F +GLIBC_2.0 _seterr_reply F +GLIBC_2.0 _setjmp F +GLIBC_2.0 _sys_errlist D 0x3d8 +GLIBC_2.0 _sys_nerr D 0x4 +GLIBC_2.0 _sys_siglist D 0x100 +GLIBC_2.0 _tolower F +GLIBC_2.0 _toupper F +GLIBC_2.0 a64l F +GLIBC_2.0 abort F +GLIBC_2.0 abs F +GLIBC_2.0 accept F +GLIBC_2.0 access F +GLIBC_2.0 acct F +GLIBC_2.0 addmntent F +GLIBC_2.0 adjtime F +GLIBC_2.0 adjtimex F +GLIBC_2.0 advance F +GLIBC_2.0 alarm F +GLIBC_2.0 alphasort F +GLIBC_2.0 argz_add F +GLIBC_2.0 argz_add_sep F +GLIBC_2.0 argz_append F +GLIBC_2.0 argz_count F +GLIBC_2.0 argz_create F +GLIBC_2.0 argz_create_sep F +GLIBC_2.0 argz_delete F +GLIBC_2.0 argz_extract F +GLIBC_2.0 argz_insert F +GLIBC_2.0 argz_next F +GLIBC_2.0 argz_replace F +GLIBC_2.0 argz_stringify F +GLIBC_2.0 asctime F +GLIBC_2.0 asctime_r F +GLIBC_2.0 asprintf F +GLIBC_2.0 atexit F +GLIBC_2.0 atof F +GLIBC_2.0 atoi F +GLIBC_2.0 atol F +GLIBC_2.0 atoll F +GLIBC_2.0 authnone_create F +GLIBC_2.0 authunix_create F +GLIBC_2.0 authunix_create_default F +GLIBC_2.0 basename F +GLIBC_2.0 bcmp F +GLIBC_2.0 bcopy F +GLIBC_2.0 bdflush F +GLIBC_2.0 bind F +GLIBC_2.0 bindresvport F +GLIBC_2.0 bindtextdomain F +GLIBC_2.0 brk F +GLIBC_2.0 bsd_signal F +GLIBC_2.0 bsearch F +GLIBC_2.0 btowc F +GLIBC_2.0 bzero F +GLIBC_2.0 cachectl F +GLIBC_2.0 cacheflush F +GLIBC_2.0 calloc F +GLIBC_2.0 callrpc F +GLIBC_2.0 canonicalize_file_name F +GLIBC_2.0 catclose F +GLIBC_2.0 catgets F +GLIBC_2.0 catopen F +GLIBC_2.0 cfgetispeed F +GLIBC_2.0 cfgetospeed F +GLIBC_2.0 cfmakeraw F +GLIBC_2.0 cfree F +GLIBC_2.0 cfsetispeed F +GLIBC_2.0 cfsetospeed F +GLIBC_2.0 cfsetspeed F +GLIBC_2.0 chdir F +GLIBC_2.0 chflags F +GLIBC_2.0 chmod F +GLIBC_2.0 chown F +GLIBC_2.0 chroot F +GLIBC_2.0 clearenv F +GLIBC_2.0 clearerr F +GLIBC_2.0 clearerr_unlocked F +GLIBC_2.0 clnt_broadcast F +GLIBC_2.0 clnt_create F +GLIBC_2.0 clnt_pcreateerror F +GLIBC_2.0 clnt_perrno F +GLIBC_2.0 clnt_perror F +GLIBC_2.0 clnt_spcreateerror F +GLIBC_2.0 clnt_sperrno F +GLIBC_2.0 clnt_sperror F +GLIBC_2.0 clntraw_create F +GLIBC_2.0 clnttcp_create F +GLIBC_2.0 clntudp_bufcreate F +GLIBC_2.0 clntudp_create F +GLIBC_2.0 clock F +GLIBC_2.0 clone F +GLIBC_2.0 close F +GLIBC_2.0 closedir F +GLIBC_2.0 closelog F +GLIBC_2.0 confstr F +GLIBC_2.0 connect F +GLIBC_2.0 copysign F +GLIBC_2.0 copysignf F +GLIBC_2.0 copysignl F +GLIBC_2.0 creat F +GLIBC_2.0 create_module F +GLIBC_2.0 ctermid F +GLIBC_2.0 ctime F +GLIBC_2.0 ctime_r F +GLIBC_2.0 cuserid F +GLIBC_2.0 daemon F +GLIBC_2.0 daylight D 0x4 +GLIBC_2.0 dcgettext F +GLIBC_2.0 delete_module F +GLIBC_2.0 dgettext F +GLIBC_2.0 difftime F +GLIBC_2.0 dirfd F +GLIBC_2.0 dirname F +GLIBC_2.0 div F +GLIBC_2.0 dprintf F +GLIBC_2.0 drand48 F +GLIBC_2.0 drand48_r F +GLIBC_2.0 dup F +GLIBC_2.0 dup2 F +GLIBC_2.0 dysize F +GLIBC_2.0 ecvt F +GLIBC_2.0 ecvt_r F +GLIBC_2.0 endaliasent F +GLIBC_2.0 endfsent F +GLIBC_2.0 endgrent F +GLIBC_2.0 endhostent F +GLIBC_2.0 endmntent F +GLIBC_2.0 endnetent F +GLIBC_2.0 endnetgrent F +GLIBC_2.0 endprotoent F +GLIBC_2.0 endpwent F +GLIBC_2.0 endrpcent F +GLIBC_2.0 endservent F +GLIBC_2.0 endspent F +GLIBC_2.0 endttyent F +GLIBC_2.0 endusershell F +GLIBC_2.0 endutent F +GLIBC_2.0 environ D 0x8 +GLIBC_2.0 envz_add F +GLIBC_2.0 envz_entry F +GLIBC_2.0 envz_get F +GLIBC_2.0 envz_merge F +GLIBC_2.0 envz_remove F +GLIBC_2.0 envz_strip F +GLIBC_2.0 erand48 F +GLIBC_2.0 erand48_r F +GLIBC_2.0 err F +GLIBC_2.0 error F +GLIBC_2.0 error_at_line F +GLIBC_2.0 error_message_count D 0x4 +GLIBC_2.0 error_one_per_line D 0x4 +GLIBC_2.0 error_print_progname D 0x8 +GLIBC_2.0 errx F +GLIBC_2.0 ether_aton F +GLIBC_2.0 ether_aton_r F +GLIBC_2.0 ether_hostton F +GLIBC_2.0 ether_line F +GLIBC_2.0 ether_ntoa F +GLIBC_2.0 ether_ntoa_r F +GLIBC_2.0 ether_ntohost F +GLIBC_2.0 euidaccess F +GLIBC_2.0 execl F +GLIBC_2.0 execle F +GLIBC_2.0 execlp F +GLIBC_2.0 execv F +GLIBC_2.0 execve F +GLIBC_2.0 execvp F +GLIBC_2.0 exit F +GLIBC_2.0 fchdir F +GLIBC_2.0 fchflags F +GLIBC_2.0 fchmod F +GLIBC_2.0 fchown F +GLIBC_2.0 fclose F +GLIBC_2.0 fcloseall F +GLIBC_2.0 fcntl F +GLIBC_2.0 fcvt F +GLIBC_2.0 fcvt_r F +GLIBC_2.0 fdatasync F +GLIBC_2.0 fdopen F +GLIBC_2.0 feof F +GLIBC_2.0 feof_unlocked F +GLIBC_2.0 ferror F +GLIBC_2.0 ferror_unlocked F +GLIBC_2.0 fexecve F +GLIBC_2.0 fflush F +GLIBC_2.0 fflush_unlocked F +GLIBC_2.0 ffs F +GLIBC_2.0 fgetc F +GLIBC_2.0 fgetgrent F +GLIBC_2.0 fgetgrent_r F +GLIBC_2.0 fgetpos F +GLIBC_2.0 fgetpwent F +GLIBC_2.0 fgetpwent_r F +GLIBC_2.0 fgets F +GLIBC_2.0 fgetspent F +GLIBC_2.0 fgetspent_r F +GLIBC_2.0 fileno F +GLIBC_2.0 fileno_unlocked F +GLIBC_2.0 finite F +GLIBC_2.0 finitef F +GLIBC_2.0 finitel F +GLIBC_2.0 flock F +GLIBC_2.0 flockfile F +GLIBC_2.0 fnmatch F +GLIBC_2.0 fopen F +GLIBC_2.0 fopencookie F +GLIBC_2.0 fork F +GLIBC_2.0 fpathconf F +GLIBC_2.0 fprintf F +GLIBC_2.0 fputc F +GLIBC_2.0 fputc_unlocked F +GLIBC_2.0 fputs F +GLIBC_2.0 fread F +GLIBC_2.0 free F +GLIBC_2.0 freeaddrinfo F +GLIBC_2.0 freopen F +GLIBC_2.0 frexp F +GLIBC_2.0 frexpf F +GLIBC_2.0 frexpl F +GLIBC_2.0 fscanf F +GLIBC_2.0 fseek F +GLIBC_2.0 fsetpos F +GLIBC_2.0 fstatfs F +GLIBC_2.0 fsync F +GLIBC_2.0 ftell F +GLIBC_2.0 ftime F +GLIBC_2.0 ftok F +GLIBC_2.0 ftruncate F +GLIBC_2.0 ftrylockfile F +GLIBC_2.0 fts_children F +GLIBC_2.0 fts_close F +GLIBC_2.0 fts_open F +GLIBC_2.0 fts_read F +GLIBC_2.0 fts_set F +GLIBC_2.0 ftw F +GLIBC_2.0 funlockfile F +GLIBC_2.0 fwrite F +GLIBC_2.0 gcvt F +GLIBC_2.0 get_avphys_pages F +GLIBC_2.0 get_current_dir_name F +GLIBC_2.0 get_kernel_syms F +GLIBC_2.0 get_myaddress F +GLIBC_2.0 get_nprocs F +GLIBC_2.0 get_nprocs_conf F +GLIBC_2.0 get_phys_pages F +GLIBC_2.0 getaddrinfo F +GLIBC_2.0 getaliasbyname F +GLIBC_2.0 getaliasbyname_r F +GLIBC_2.0 getaliasent F +GLIBC_2.0 getaliasent_r F +GLIBC_2.0 getc F +GLIBC_2.0 getc_unlocked F +GLIBC_2.0 getchar F +GLIBC_2.0 getchar_unlocked F +GLIBC_2.0 getcwd F +GLIBC_2.0 getdelim F +GLIBC_2.0 getdirentries F +GLIBC_2.0 getdomainname F +GLIBC_2.0 getdtablesize F +GLIBC_2.0 getegid F +GLIBC_2.0 getenv F +GLIBC_2.0 geteuid F +GLIBC_2.0 getfsent F +GLIBC_2.0 getfsfile F +GLIBC_2.0 getfsspec F +GLIBC_2.0 getgid F +GLIBC_2.0 getgrent F +GLIBC_2.0 getgrent_r F +GLIBC_2.0 getgrgid F +GLIBC_2.0 getgrgid_r F +GLIBC_2.0 getgrnam F +GLIBC_2.0 getgrnam_r F +GLIBC_2.0 getgroups F +GLIBC_2.0 gethostbyaddr F +GLIBC_2.0 gethostbyaddr_r F +GLIBC_2.0 gethostbyname F +GLIBC_2.0 gethostbyname2 F +GLIBC_2.0 gethostbyname2_r F +GLIBC_2.0 gethostbyname_r F +GLIBC_2.0 gethostent F +GLIBC_2.0 gethostent_r F +GLIBC_2.0 gethostid F +GLIBC_2.0 gethostname F +GLIBC_2.0 getitimer F +GLIBC_2.0 getline F +GLIBC_2.0 getlogin F +GLIBC_2.0 getlogin_r F +GLIBC_2.0 getmntent F +GLIBC_2.0 getmntent_r F +GLIBC_2.0 getnetbyaddr F +GLIBC_2.0 getnetbyaddr_r F +GLIBC_2.0 getnetbyname F +GLIBC_2.0 getnetbyname_r F +GLIBC_2.0 getnetent F +GLIBC_2.0 getnetent_r F +GLIBC_2.0 getnetgrent F +GLIBC_2.0 getnetgrent_r F +GLIBC_2.0 getopt F +GLIBC_2.0 getopt_long F +GLIBC_2.0 getopt_long_only F +GLIBC_2.0 getpagesize F +GLIBC_2.0 getpass F +GLIBC_2.0 getpeername F +GLIBC_2.0 getpgid F +GLIBC_2.0 getpgrp F +GLIBC_2.0 getpid F +GLIBC_2.0 getppid F +GLIBC_2.0 getpriority F +GLIBC_2.0 getprotobyname F +GLIBC_2.0 getprotobyname_r F +GLIBC_2.0 getprotobynumber F +GLIBC_2.0 getprotobynumber_r F +GLIBC_2.0 getprotoent F +GLIBC_2.0 getprotoent_r F +GLIBC_2.0 getpublickey F +GLIBC_2.0 getpw F +GLIBC_2.0 getpwent F +GLIBC_2.0 getpwent_r F +GLIBC_2.0 getpwnam F +GLIBC_2.0 getpwnam_r F +GLIBC_2.0 getpwuid F +GLIBC_2.0 getpwuid_r F +GLIBC_2.0 getresgid F +GLIBC_2.0 getresuid F +GLIBC_2.0 getrlimit F +GLIBC_2.0 getrpcbyname F +GLIBC_2.0 getrpcbyname_r F +GLIBC_2.0 getrpcbynumber F +GLIBC_2.0 getrpcbynumber_r F +GLIBC_2.0 getrpcent F +GLIBC_2.0 getrpcent_r F +GLIBC_2.0 getrpcport F +GLIBC_2.0 getrusage F +GLIBC_2.0 gets F +GLIBC_2.0 getsecretkey F +GLIBC_2.0 getservbyname F +GLIBC_2.0 getservbyname_r F +GLIBC_2.0 getservbyport F +GLIBC_2.0 getservbyport_r F +GLIBC_2.0 getservent F +GLIBC_2.0 getservent_r F +GLIBC_2.0 getsid F +GLIBC_2.0 getsockname F +GLIBC_2.0 getsockopt F +GLIBC_2.0 getspent F +GLIBC_2.0 getspent_r F +GLIBC_2.0 getspnam F +GLIBC_2.0 getspnam_r F +GLIBC_2.0 getsubopt F +GLIBC_2.0 gettext F +GLIBC_2.0 gettimeofday F +GLIBC_2.0 getttyent F +GLIBC_2.0 getttynam F +GLIBC_2.0 getuid F +GLIBC_2.0 getusershell F +GLIBC_2.0 getutent F +GLIBC_2.0 getutent_r F +GLIBC_2.0 getutid F +GLIBC_2.0 getutid_r F +GLIBC_2.0 getutline F +GLIBC_2.0 getutline_r F +GLIBC_2.0 getw F +GLIBC_2.0 getwd F +GLIBC_2.0 glob F +GLIBC_2.0 glob_pattern_p F +GLIBC_2.0 globfree F +GLIBC_2.0 gmtime F +GLIBC_2.0 gmtime_r F +GLIBC_2.0 group_member F +GLIBC_2.0 gsignal F +GLIBC_2.0 gtty F +GLIBC_2.0 h_errlist D 0x28 +GLIBC_2.0 h_nerr D 0x4 +GLIBC_2.0 hasmntopt F +GLIBC_2.0 hcreate F +GLIBC_2.0 hcreate_r F +GLIBC_2.0 hdestroy F +GLIBC_2.0 hdestroy_r F +GLIBC_2.0 herror F +GLIBC_2.0 hsearch F +GLIBC_2.0 hsearch_r F +GLIBC_2.0 hstrerror F +GLIBC_2.0 htonl F +GLIBC_2.0 htons F +GLIBC_2.0 index F +GLIBC_2.0 inet_addr F +GLIBC_2.0 inet_aton F +GLIBC_2.0 inet_lnaof F +GLIBC_2.0 inet_makeaddr F +GLIBC_2.0 inet_netof F +GLIBC_2.0 inet_network F +GLIBC_2.0 inet_nsap_addr F +GLIBC_2.0 inet_nsap_ntoa F +GLIBC_2.0 inet_ntoa F +GLIBC_2.0 inet_ntop F +GLIBC_2.0 inet_pton F +GLIBC_2.0 init_module F +GLIBC_2.0 initgroups F +GLIBC_2.0 initstate F +GLIBC_2.0 initstate_r F +GLIBC_2.0 innetgr F +GLIBC_2.0 insque F +GLIBC_2.0 ioctl F +GLIBC_2.0 iruserok F +GLIBC_2.0 isalnum F +GLIBC_2.0 isalpha F +GLIBC_2.0 isascii F +GLIBC_2.0 isatty F +GLIBC_2.0 isblank F +GLIBC_2.0 iscntrl F +GLIBC_2.0 isdigit F +GLIBC_2.0 isfdtype F +GLIBC_2.0 isgraph F +GLIBC_2.0 isinf F +GLIBC_2.0 isinff F +GLIBC_2.0 isinfl F +GLIBC_2.0 islower F +GLIBC_2.0 isnan F +GLIBC_2.0 isnanf F +GLIBC_2.0 isnanl F +GLIBC_2.0 isprint F +GLIBC_2.0 ispunct F +GLIBC_2.0 isspace F +GLIBC_2.0 isupper F +GLIBC_2.0 iswalnum F +GLIBC_2.0 iswalpha F +GLIBC_2.0 iswcntrl F +GLIBC_2.0 iswctype F +GLIBC_2.0 iswdigit F +GLIBC_2.0 iswgraph F +GLIBC_2.0 iswlower F +GLIBC_2.0 iswprint F +GLIBC_2.0 iswpunct F +GLIBC_2.0 iswspace F +GLIBC_2.0 iswupper F +GLIBC_2.0 iswxdigit F +GLIBC_2.0 isxdigit F +GLIBC_2.0 jrand48 F +GLIBC_2.0 jrand48_r F +GLIBC_2.0 kill F +GLIBC_2.0 killpg F +GLIBC_2.0 klogctl F +GLIBC_2.0 l64a F +GLIBC_2.0 labs F +GLIBC_2.0 lchown F +GLIBC_2.0 lckpwdf F +GLIBC_2.0 lcong48 F +GLIBC_2.0 lcong48_r F +GLIBC_2.0 ldexp F +GLIBC_2.0 ldexpf F +GLIBC_2.0 ldexpl F +GLIBC_2.0 ldiv F +GLIBC_2.0 lfind F +GLIBC_2.0 link F +GLIBC_2.0 listen F +GLIBC_2.0 llabs F +GLIBC_2.0 lldiv F +GLIBC_2.0 llseek F +GLIBC_2.0 loc1 D 0x8 +GLIBC_2.0 loc2 D 0x8 +GLIBC_2.0 localeconv F +GLIBC_2.0 localtime F +GLIBC_2.0 localtime_r F +GLIBC_2.0 lockf F +GLIBC_2.0 locs D 0x8 +GLIBC_2.0 longjmp F +GLIBC_2.0 lrand48 F +GLIBC_2.0 lrand48_r F +GLIBC_2.0 lsearch F +GLIBC_2.0 lseek F +GLIBC_2.0 madvise F +GLIBC_2.0 mallinfo F +GLIBC_2.0 malloc F +GLIBC_2.0 malloc_get_state F +GLIBC_2.0 malloc_set_state F +GLIBC_2.0 malloc_stats F +GLIBC_2.0 malloc_trim F +GLIBC_2.0 malloc_usable_size F +GLIBC_2.0 mallopt F +GLIBC_2.0 mallwatch D 0x8 +GLIBC_2.0 mblen F +GLIBC_2.0 mbrlen F +GLIBC_2.0 mbrtowc F +GLIBC_2.0 mbsinit F +GLIBC_2.0 mbsnrtowcs F +GLIBC_2.0 mbsrtowcs F +GLIBC_2.0 mbstowcs F +GLIBC_2.0 mbtowc F +GLIBC_2.0 mcheck F +GLIBC_2.0 memalign F +GLIBC_2.0 memccpy F +GLIBC_2.0 memchr F +GLIBC_2.0 memcmp F +GLIBC_2.0 memcpy F +GLIBC_2.0 memfrob F +GLIBC_2.0 memmem F +GLIBC_2.0 memmove F +GLIBC_2.0 memset F +GLIBC_2.0 mkdir F +GLIBC_2.0 mkfifo F +GLIBC_2.0 mkstemp F +GLIBC_2.0 mktemp F +GLIBC_2.0 mktime F +GLIBC_2.0 mlock F +GLIBC_2.0 mlockall F +GLIBC_2.0 mmap F +GLIBC_2.0 modf F +GLIBC_2.0 modff F +GLIBC_2.0 modfl F +GLIBC_2.0 monstartup F +GLIBC_2.0 mount F +GLIBC_2.0 mprobe F +GLIBC_2.0 mprotect F +GLIBC_2.0 mrand48 F +GLIBC_2.0 mrand48_r F +GLIBC_2.0 mremap F +GLIBC_2.0 msgctl F +GLIBC_2.0 msgget F +GLIBC_2.0 msgrcv F +GLIBC_2.0 msgsnd F +GLIBC_2.0 msync F +GLIBC_2.0 mtrace F +GLIBC_2.0 munlock F +GLIBC_2.0 munlockall F +GLIBC_2.0 munmap F +GLIBC_2.0 muntrace F +GLIBC_2.0 nanosleep F +GLIBC_2.0 nfsservctl F +GLIBC_2.0 nice F +GLIBC_2.0 nl_langinfo F +GLIBC_2.0 nrand48 F +GLIBC_2.0 nrand48_r F +GLIBC_2.0 ntohl F +GLIBC_2.0 ntohs F +GLIBC_2.0 obstack_alloc_failed_handler D 0x8 +GLIBC_2.0 obstack_exit_failure D 0x4 +GLIBC_2.0 obstack_free F +GLIBC_2.0 obstack_printf F +GLIBC_2.0 obstack_vprintf F +GLIBC_2.0 on_exit F +GLIBC_2.0 open F +GLIBC_2.0 open_memstream F +GLIBC_2.0 opendir F +GLIBC_2.0 openlog F +GLIBC_2.0 optarg D 0x8 +GLIBC_2.0 opterr D 0x4 +GLIBC_2.0 optind D 0x4 +GLIBC_2.0 optopt D 0x4 +GLIBC_2.0 parse_printf_format F +GLIBC_2.0 pathconf F +GLIBC_2.0 pause F +GLIBC_2.0 pclose F +GLIBC_2.0 perror F +GLIBC_2.0 personality F +GLIBC_2.0 pipe F +GLIBC_2.0 pmap_getmaps F +GLIBC_2.0 pmap_getport F +GLIBC_2.0 pmap_rmtcall F +GLIBC_2.0 pmap_set F +GLIBC_2.0 pmap_unset F +GLIBC_2.0 poll F +GLIBC_2.0 popen F +GLIBC_2.0 prctl F +GLIBC_2.0 printf F +GLIBC_2.0 profil F +GLIBC_2.0 program_invocation_name D 0x8 +GLIBC_2.0 program_invocation_short_name D 0x8 +GLIBC_2.0 pselect F +GLIBC_2.0 psignal F +GLIBC_2.0 pthread_attr_destroy F +GLIBC_2.0 pthread_attr_getdetachstate F +GLIBC_2.0 pthread_attr_getinheritsched F +GLIBC_2.0 pthread_attr_getschedparam F +GLIBC_2.0 pthread_attr_getschedpolicy F +GLIBC_2.0 pthread_attr_getscope F +GLIBC_2.0 pthread_attr_init F +GLIBC_2.0 pthread_attr_setdetachstate F +GLIBC_2.0 pthread_attr_setinheritsched F +GLIBC_2.0 pthread_attr_setschedparam F +GLIBC_2.0 pthread_attr_setschedpolicy F +GLIBC_2.0 pthread_attr_setscope F +GLIBC_2.0 pthread_cond_broadcast F +GLIBC_2.0 pthread_cond_destroy F +GLIBC_2.0 pthread_cond_init F +GLIBC_2.0 pthread_cond_signal F +GLIBC_2.0 pthread_cond_timedwait F +GLIBC_2.0 pthread_cond_wait F +GLIBC_2.0 pthread_condattr_destroy F +GLIBC_2.0 pthread_condattr_init F +GLIBC_2.0 pthread_equal F +GLIBC_2.0 pthread_exit F +GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_mutex_destroy F +GLIBC_2.0 pthread_mutex_init F +GLIBC_2.0 pthread_mutex_lock F +GLIBC_2.0 pthread_mutex_unlock F +GLIBC_2.0 pthread_self F +GLIBC_2.0 pthread_setcancelstate F +GLIBC_2.0 pthread_setcanceltype F +GLIBC_2.0 pthread_setschedparam F +GLIBC_2.0 ptrace F +GLIBC_2.0 putc F +GLIBC_2.0 putc_unlocked F +GLIBC_2.0 putchar F +GLIBC_2.0 putchar_unlocked F +GLIBC_2.0 putenv F +GLIBC_2.0 putpwent F +GLIBC_2.0 puts F +GLIBC_2.0 putspent F +GLIBC_2.0 pututline F +GLIBC_2.0 putw F +GLIBC_2.0 pvalloc F +GLIBC_2.0 qecvt F +GLIBC_2.0 qecvt_r F +GLIBC_2.0 qfcvt F +GLIBC_2.0 qfcvt_r F +GLIBC_2.0 qgcvt F +GLIBC_2.0 qsort F +GLIBC_2.0 query_module F +GLIBC_2.0 quotactl F +GLIBC_2.0 raise F +GLIBC_2.0 rand F +GLIBC_2.0 rand_r F +GLIBC_2.0 random F +GLIBC_2.0 random_r F +GLIBC_2.0 rcmd F +GLIBC_2.0 re_comp F +GLIBC_2.0 re_compile_fastmap F +GLIBC_2.0 re_compile_pattern F +GLIBC_2.0 re_exec F +GLIBC_2.0 re_match F +GLIBC_2.0 re_match_2 F +GLIBC_2.0 re_max_failures D 0x4 +GLIBC_2.0 re_search F +GLIBC_2.0 re_search_2 F +GLIBC_2.0 re_set_registers F +GLIBC_2.0 re_set_syntax F +GLIBC_2.0 re_syntax_options D 0x8 +GLIBC_2.0 read F +GLIBC_2.0 readdir F +GLIBC_2.0 readdir_r F +GLIBC_2.0 readlink F +GLIBC_2.0 readv F +GLIBC_2.0 realloc F +GLIBC_2.0 realpath F +GLIBC_2.0 reboot F +GLIBC_2.0 recv F +GLIBC_2.0 recvfrom F +GLIBC_2.0 recvmsg F +GLIBC_2.0 regcomp F +GLIBC_2.0 regerror F +GLIBC_2.0 regexec F +GLIBC_2.0 regfree F +GLIBC_2.0 register_printf_function F +GLIBC_2.0 registerrpc F +GLIBC_2.0 remove F +GLIBC_2.0 remque F +GLIBC_2.0 rename F +GLIBC_2.0 res_init F +GLIBC_2.0 revoke F +GLIBC_2.0 rewind F +GLIBC_2.0 rewinddir F +GLIBC_2.0 rexec F +GLIBC_2.0 rexecoptions D 0x4 +GLIBC_2.0 rindex F +GLIBC_2.0 rmdir F +GLIBC_2.0 rpc_createerr D 0x20 +GLIBC_2.0 rpmatch F +GLIBC_2.0 rresvport F +GLIBC_2.0 ruserok F +GLIBC_2.0 ruserpass F +GLIBC_2.0 sbrk F +GLIBC_2.0 scalbn F +GLIBC_2.0 scalbnf F +GLIBC_2.0 scalbnl F +GLIBC_2.0 scandir F +GLIBC_2.0 scanf F +GLIBC_2.0 sched_get_priority_max F +GLIBC_2.0 sched_get_priority_min F +GLIBC_2.0 sched_getparam F +GLIBC_2.0 sched_getscheduler F +GLIBC_2.0 sched_rr_get_interval F +GLIBC_2.0 sched_setparam F +GLIBC_2.0 sched_setscheduler F +GLIBC_2.0 sched_yield F +GLIBC_2.0 seed48 F +GLIBC_2.0 seed48_r F +GLIBC_2.0 seekdir F +GLIBC_2.0 select F +GLIBC_2.0 semctl F +GLIBC_2.0 semget F +GLIBC_2.0 semop F +GLIBC_2.0 send F +GLIBC_2.0 sendmsg F +GLIBC_2.0 sendto F +GLIBC_2.0 setaliasent F +GLIBC_2.0 setbuf F +GLIBC_2.0 setbuffer F +GLIBC_2.0 setcontext F +GLIBC_2.0 setdomainname F +GLIBC_2.0 setegid F +GLIBC_2.0 setenv F +GLIBC_2.0 seteuid F +GLIBC_2.0 setfsent F +GLIBC_2.0 setfsgid F +GLIBC_2.0 setfsuid F +GLIBC_2.0 setgid F +GLIBC_2.0 setgrent F +GLIBC_2.0 setgroups F +GLIBC_2.0 sethostent F +GLIBC_2.0 sethostid F +GLIBC_2.0 sethostname F +GLIBC_2.0 setitimer F +GLIBC_2.0 setjmp F +GLIBC_2.0 setlinebuf F +GLIBC_2.0 setlocale F +GLIBC_2.0 setlogin F +GLIBC_2.0 setlogmask F +GLIBC_2.0 setmntent F +GLIBC_2.0 setnetent F +GLIBC_2.0 setnetgrent F +GLIBC_2.0 setpgid F +GLIBC_2.0 setpgrp F +GLIBC_2.0 setpriority F +GLIBC_2.0 setprotoent F +GLIBC_2.0 setpwent F +GLIBC_2.0 setregid F +GLIBC_2.0 setresgid F +GLIBC_2.0 setresuid F +GLIBC_2.0 setreuid F +GLIBC_2.0 setrlimit F +GLIBC_2.0 setrpcent F +GLIBC_2.0 setservent F +GLIBC_2.0 setsid F +GLIBC_2.0 setsockopt F +GLIBC_2.0 setspent F +GLIBC_2.0 setstate F +GLIBC_2.0 setstate_r F +GLIBC_2.0 settimeofday F +GLIBC_2.0 setttyent F +GLIBC_2.0 setuid F +GLIBC_2.0 setusershell F +GLIBC_2.0 setutent F +GLIBC_2.0 setvbuf F +GLIBC_2.0 sgetspent F +GLIBC_2.0 sgetspent_r F +GLIBC_2.0 shmat F +GLIBC_2.0 shmctl F +GLIBC_2.0 shmdt F +GLIBC_2.0 shmget F +GLIBC_2.0 shutdown F +GLIBC_2.0 sigaction F +GLIBC_2.0 sigaddset F +GLIBC_2.0 sigaltstack F +GLIBC_2.0 sigandset F +GLIBC_2.0 sigblock F +GLIBC_2.0 sigdelset F +GLIBC_2.0 sigemptyset F +GLIBC_2.0 sigfillset F +GLIBC_2.0 siggetmask F +GLIBC_2.0 siginterrupt F +GLIBC_2.0 sigisemptyset F +GLIBC_2.0 sigismember F +GLIBC_2.0 siglongjmp F +GLIBC_2.0 signal F +GLIBC_2.0 sigorset F +GLIBC_2.0 sigpause F +GLIBC_2.0 sigpending F +GLIBC_2.0 sigprocmask F +GLIBC_2.0 sigreturn F +GLIBC_2.0 sigsetmask F +GLIBC_2.0 sigstack F +GLIBC_2.0 sigsuspend F +GLIBC_2.0 sigvec F +GLIBC_2.0 sigwait F +GLIBC_2.0 sleep F +GLIBC_2.0 snprintf F +GLIBC_2.0 socket F +GLIBC_2.0 socketpair F +GLIBC_2.0 sprintf F +GLIBC_2.0 srand F +GLIBC_2.0 srand48 F +GLIBC_2.0 srand48_r F +GLIBC_2.0 srandom F +GLIBC_2.0 srandom_r F +GLIBC_2.0 sscanf F +GLIBC_2.0 ssignal F +GLIBC_2.0 sstk F +GLIBC_2.0 statfs F +GLIBC_2.0 stderr D 0x8 +GLIBC_2.0 stdin D 0x8 +GLIBC_2.0 stdout D 0x8 +GLIBC_2.0 step F +GLIBC_2.0 stime F +GLIBC_2.0 stpcpy F +GLIBC_2.0 stpncpy F +GLIBC_2.0 strcasecmp F +GLIBC_2.0 strcat F +GLIBC_2.0 strchr F +GLIBC_2.0 strcmp F +GLIBC_2.0 strcoll F +GLIBC_2.0 strcpy F +GLIBC_2.0 strcspn F +GLIBC_2.0 strdup F +GLIBC_2.0 strerror F +GLIBC_2.0 strerror_r F +GLIBC_2.0 strfmon F +GLIBC_2.0 strfry F +GLIBC_2.0 strftime F +GLIBC_2.0 strlen F +GLIBC_2.0 strncasecmp F +GLIBC_2.0 strncat F +GLIBC_2.0 strncmp F +GLIBC_2.0 strncpy F +GLIBC_2.0 strndup F +GLIBC_2.0 strnlen F +GLIBC_2.0 strpbrk F +GLIBC_2.0 strptime F +GLIBC_2.0 strrchr F +GLIBC_2.0 strsep F +GLIBC_2.0 strsignal F +GLIBC_2.0 strspn F +GLIBC_2.0 strstr F +GLIBC_2.0 strtod F +GLIBC_2.0 strtof F +GLIBC_2.0 strtok F +GLIBC_2.0 strtok_r F +GLIBC_2.0 strtol F +GLIBC_2.0 strtold F +GLIBC_2.0 strtoll F +GLIBC_2.0 strtoq F +GLIBC_2.0 strtoul F +GLIBC_2.0 strtoull F +GLIBC_2.0 strtouq F +GLIBC_2.0 strxfrm F +GLIBC_2.0 stty F +GLIBC_2.0 svc_exit F +GLIBC_2.0 svc_fdset D 0x80 +GLIBC_2.0 svc_getreq F +GLIBC_2.0 svc_getreqset F +GLIBC_2.0 svc_register F +GLIBC_2.0 svc_run F +GLIBC_2.0 svc_sendreply F +GLIBC_2.0 svc_unregister F +GLIBC_2.0 svcauthdes_stats D 0x18 +GLIBC_2.0 svcerr_auth F +GLIBC_2.0 svcerr_decode F +GLIBC_2.0 svcerr_noproc F +GLIBC_2.0 svcerr_noprog F +GLIBC_2.0 svcerr_progvers F +GLIBC_2.0 svcerr_systemerr F +GLIBC_2.0 svcerr_weakauth F +GLIBC_2.0 svcfd_create F +GLIBC_2.0 svcraw_create F +GLIBC_2.0 svctcp_create F +GLIBC_2.0 svcudp_bufcreate F +GLIBC_2.0 svcudp_create F +GLIBC_2.0 svcudp_enablecache F +GLIBC_2.0 swab F +GLIBC_2.0 swapoff F +GLIBC_2.0 swapon F +GLIBC_2.0 symlink F +GLIBC_2.0 sync F +GLIBC_2.0 sys_errlist D 0x3d8 +GLIBC_2.0 sys_nerr D 0x4 +GLIBC_2.0 sys_sigabbrev D 0x100 +GLIBC_2.0 sys_siglist D 0x100 +GLIBC_2.0 syscall F +GLIBC_2.0 sysconf F +GLIBC_2.0 sysctl F +GLIBC_2.0 sysinfo F +GLIBC_2.0 syslog F +GLIBC_2.0 sysmips F +GLIBC_2.0 system F +GLIBC_2.0 tcdrain F +GLIBC_2.0 tcflow F +GLIBC_2.0 tcflush F +GLIBC_2.0 tcgetattr F +GLIBC_2.0 tcgetpgrp F +GLIBC_2.0 tcsendbreak F +GLIBC_2.0 tcsetattr F +GLIBC_2.0 tcsetpgrp F +GLIBC_2.0 tdelete F +GLIBC_2.0 telldir F +GLIBC_2.0 tempnam F +GLIBC_2.0 textdomain F +GLIBC_2.0 tfind F +GLIBC_2.0 time F +GLIBC_2.0 timegm F +GLIBC_2.0 timelocal F +GLIBC_2.0 times F +GLIBC_2.0 timezone D 0x8 +GLIBC_2.0 tmpfile F +GLIBC_2.0 tmpnam F +GLIBC_2.0 tmpnam_r F +GLIBC_2.0 toascii F +GLIBC_2.0 tolower F +GLIBC_2.0 toupper F +GLIBC_2.0 towctrans F +GLIBC_2.0 towlower F +GLIBC_2.0 towupper F +GLIBC_2.0 tr_break F +GLIBC_2.0 truncate F +GLIBC_2.0 tsearch F +GLIBC_2.0 ttyname F +GLIBC_2.0 ttyname_r F +GLIBC_2.0 ttyslot F +GLIBC_2.0 twalk F +GLIBC_2.0 tzname D 0x10 +GLIBC_2.0 tzset F +GLIBC_2.0 ualarm F +GLIBC_2.0 ulckpwdf F +GLIBC_2.0 ulimit F +GLIBC_2.0 umask F +GLIBC_2.0 umount F +GLIBC_2.0 uname F +GLIBC_2.0 ungetc F +GLIBC_2.0 unlink F +GLIBC_2.0 unsetenv F +GLIBC_2.0 updwtmp F +GLIBC_2.0 uselib F +GLIBC_2.0 usleep F +GLIBC_2.0 ustat F +GLIBC_2.0 utime F +GLIBC_2.0 utimes F +GLIBC_2.0 utmpname F +GLIBC_2.0 valloc F +GLIBC_2.0 vasprintf F +GLIBC_2.0 vdprintf F +GLIBC_2.0 verr F +GLIBC_2.0 verrx F +GLIBC_2.0 vfork F +GLIBC_2.0 vfprintf F +GLIBC_2.0 vfscanf F +GLIBC_2.0 vhangup F +GLIBC_2.0 vlimit F +GLIBC_2.0 vprintf F +GLIBC_2.0 vscanf F +GLIBC_2.0 vsnprintf F +GLIBC_2.0 vsprintf F +GLIBC_2.0 vsscanf F +GLIBC_2.0 vsyslog F +GLIBC_2.0 vtimes F +GLIBC_2.0 vwarn F +GLIBC_2.0 vwarnx F +GLIBC_2.0 wait F +GLIBC_2.0 wait3 F +GLIBC_2.0 wait4 F +GLIBC_2.0 waitpid F +GLIBC_2.0 warn F +GLIBC_2.0 warnx F +GLIBC_2.0 wcpcpy F +GLIBC_2.0 wcpncpy F +GLIBC_2.0 wcrtomb F +GLIBC_2.0 wcscat F +GLIBC_2.0 wcschr F +GLIBC_2.0 wcscmp F +GLIBC_2.0 wcscoll F +GLIBC_2.0 wcscpy F +GLIBC_2.0 wcscspn F +GLIBC_2.0 wcsdup F +GLIBC_2.0 wcslen F +GLIBC_2.0 wcsncat F +GLIBC_2.0 wcsncmp F +GLIBC_2.0 wcsncpy F +GLIBC_2.0 wcsnrtombs F +GLIBC_2.0 wcspbrk F +GLIBC_2.0 wcsrchr F +GLIBC_2.0 wcsrtombs F +GLIBC_2.0 wcsspn F +GLIBC_2.0 wcsstr F +GLIBC_2.0 wcstod F +GLIBC_2.0 wcstof F +GLIBC_2.0 wcstok F +GLIBC_2.0 wcstol F +GLIBC_2.0 wcstold F +GLIBC_2.0 wcstombs F +GLIBC_2.0 wcstoq F +GLIBC_2.0 wcstoul F +GLIBC_2.0 wcstouq F +GLIBC_2.0 wcswidth F +GLIBC_2.0 wcsxfrm F +GLIBC_2.0 wctob F +GLIBC_2.0 wctomb F +GLIBC_2.0 wctrans F +GLIBC_2.0 wctype F +GLIBC_2.0 wcwidth F +GLIBC_2.0 wmemchr F +GLIBC_2.0 wmemcmp F +GLIBC_2.0 wmemcpy F +GLIBC_2.0 wmemmove F +GLIBC_2.0 wmemset F +GLIBC_2.0 write F +GLIBC_2.0 writev F +GLIBC_2.0 xdr_accepted_reply F +GLIBC_2.0 xdr_array F +GLIBC_2.0 xdr_authunix_parms F +GLIBC_2.0 xdr_bool F +GLIBC_2.0 xdr_bytes F +GLIBC_2.0 xdr_callhdr F +GLIBC_2.0 xdr_callmsg F +GLIBC_2.0 xdr_char F +GLIBC_2.0 xdr_cryptkeyarg F +GLIBC_2.0 xdr_cryptkeyarg2 F +GLIBC_2.0 xdr_cryptkeyres F +GLIBC_2.0 xdr_des_block F +GLIBC_2.0 xdr_double F +GLIBC_2.0 xdr_enum F +GLIBC_2.0 xdr_float F +GLIBC_2.0 xdr_free F +GLIBC_2.0 xdr_int F +GLIBC_2.0 xdr_key_netstarg F +GLIBC_2.0 xdr_key_netstres F +GLIBC_2.0 xdr_keybuf F +GLIBC_2.0 xdr_keystatus F +GLIBC_2.0 xdr_long F +GLIBC_2.0 xdr_netobj F +GLIBC_2.0 xdr_opaque F +GLIBC_2.0 xdr_opaque_auth F +GLIBC_2.0 xdr_pmap F +GLIBC_2.0 xdr_pmaplist F +GLIBC_2.0 xdr_pointer F +GLIBC_2.0 xdr_reference F +GLIBC_2.0 xdr_rejected_reply F +GLIBC_2.0 xdr_replymsg F +GLIBC_2.0 xdr_rmtcall_args F +GLIBC_2.0 xdr_rmtcallres F +GLIBC_2.0 xdr_short F +GLIBC_2.0 xdr_string F +GLIBC_2.0 xdr_u_char F +GLIBC_2.0 xdr_u_int F +GLIBC_2.0 xdr_u_long F +GLIBC_2.0 xdr_u_short F +GLIBC_2.0 xdr_union F +GLIBC_2.0 xdr_vector F +GLIBC_2.0 xdr_void F +GLIBC_2.0 xdr_wrapstring F +GLIBC_2.0 xdrmem_create F +GLIBC_2.0 xdrrec_create F +GLIBC_2.0 xdrrec_endofrecord F +GLIBC_2.0 xdrrec_eof F +GLIBC_2.0 xdrrec_skiprecord F +GLIBC_2.0 xdrstdio_create F +GLIBC_2.0 xencrypt F +GLIBC_2.0 xprt_register F +GLIBC_2.0 xprt_unregister F +GLIBC_2.10 GLIBC_2.10 A +GLIBC_2.10 __cxa_at_quick_exit F +GLIBC_2.10 __posix_getopt F +GLIBC_2.10 accept4 F +GLIBC_2.10 endsgent F +GLIBC_2.10 fallocate F +GLIBC_2.10 fgetsgent F +GLIBC_2.10 fgetsgent_r F +GLIBC_2.10 getsgent F +GLIBC_2.10 getsgent_r F +GLIBC_2.10 getsgnam F +GLIBC_2.10 getsgnam_r F +GLIBC_2.10 malloc_info F +GLIBC_2.10 preadv F +GLIBC_2.10 preadv64 F +GLIBC_2.10 psiginfo F +GLIBC_2.10 putsgent F +GLIBC_2.10 pwritev F +GLIBC_2.10 pwritev64 F +GLIBC_2.10 quick_exit F +GLIBC_2.10 register_printf_modifier F +GLIBC_2.10 register_printf_specifier F +GLIBC_2.10 register_printf_type F +GLIBC_2.10 setsgent F +GLIBC_2.10 sgetsgent F +GLIBC_2.10 sgetsgent_r F +GLIBC_2.11 GLIBC_2.11 A +GLIBC_2.11 __longjmp_chk F +GLIBC_2.11 execvpe F +GLIBC_2.11 fallocate64 F +GLIBC_2.11 mkostemps F +GLIBC_2.11 mkostemps64 F +GLIBC_2.11 mkstemps F +GLIBC_2.11 mkstemps64 F +GLIBC_2.12 GLIBC_2.12 A +GLIBC_2.12 ntp_gettimex F +GLIBC_2.12 recvmmsg F +GLIBC_2.13 GLIBC_2.13 A +GLIBC_2.13 fanotify_init F +GLIBC_2.13 fanotify_mark F +GLIBC_2.13 prlimit F +GLIBC_2.13 prlimit64 F +GLIBC_2.14 GLIBC_2.14 A +GLIBC_2.14 clock_adjtime F +GLIBC_2.14 name_to_handle_at F +GLIBC_2.14 open_by_handle_at F +GLIBC_2.14 sendmmsg F +GLIBC_2.14 setns F +GLIBC_2.14 syncfs F +GLIBC_2.15 GLIBC_2.15 A +GLIBC_2.15 __fdelt_chk F +GLIBC_2.15 __fdelt_warn F +GLIBC_2.15 posix_spawn F +GLIBC_2.15 posix_spawnp F +GLIBC_2.15 process_vm_readv F +GLIBC_2.15 process_vm_writev F +GLIBC_2.15 scandirat F +GLIBC_2.15 scandirat64 F +GLIBC_2.16 GLIBC_2.16 A +GLIBC_2.16 __getauxval F +GLIBC_2.16 __poll_chk F +GLIBC_2.16 __ppoll_chk F +GLIBC_2.16 aligned_alloc F +GLIBC_2.16 c16rtomb F +GLIBC_2.16 c32rtomb F +GLIBC_2.16 getauxval F +GLIBC_2.16 mbrtoc16 F +GLIBC_2.16 mbrtoc32 F +GLIBC_2.16 timespec_get F +GLIBC_2.17 GLIBC_2.17 A +GLIBC_2.17 clock_getcpuclockid F +GLIBC_2.17 clock_getres F +GLIBC_2.17 clock_gettime F +GLIBC_2.17 clock_nanosleep F +GLIBC_2.17 clock_settime F +GLIBC_2.17 secure_getenv F +GLIBC_2.18 GLIBC_2.18 A +GLIBC_2.18 __cxa_thread_atexit_impl F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 _Exit F +GLIBC_2.2 _IO_2_1_stderr_ D 0xe0 +GLIBC_2.2 _IO_2_1_stdin_ D 0xe0 +GLIBC_2.2 _IO_2_1_stdout_ D 0xe0 +GLIBC_2.2 _IO_adjust_wcolumn F +GLIBC_2.2 _IO_do_write F +GLIBC_2.2 _IO_fclose F +GLIBC_2.2 _IO_fdopen F +GLIBC_2.2 _IO_fgetpos F +GLIBC_2.2 _IO_fgetpos64 F +GLIBC_2.2 _IO_file_attach F +GLIBC_2.2 _IO_file_close_it F +GLIBC_2.2 _IO_file_finish F +GLIBC_2.2 _IO_file_fopen F +GLIBC_2.2 _IO_file_init F +GLIBC_2.2 _IO_file_overflow F +GLIBC_2.2 _IO_file_seekoff F +GLIBC_2.2 _IO_file_setbuf F +GLIBC_2.2 _IO_file_sync F +GLIBC_2.2 _IO_file_underflow F +GLIBC_2.2 _IO_file_write F +GLIBC_2.2 _IO_file_xsputn F +GLIBC_2.2 _IO_fopen F +GLIBC_2.2 _IO_free_wbackup_area F +GLIBC_2.2 _IO_fsetpos F +GLIBC_2.2 _IO_fsetpos64 F +GLIBC_2.2 _IO_getline_info F +GLIBC_2.2 _IO_init_wmarker F +GLIBC_2.2 _IO_iter_begin F +GLIBC_2.2 _IO_iter_end F +GLIBC_2.2 _IO_iter_file F +GLIBC_2.2 _IO_iter_next F +GLIBC_2.2 _IO_least_wmarker F +GLIBC_2.2 _IO_list_lock F +GLIBC_2.2 _IO_list_resetlock F +GLIBC_2.2 _IO_list_unlock F +GLIBC_2.2 _IO_popen F +GLIBC_2.2 _IO_proc_close F +GLIBC_2.2 _IO_proc_open F +GLIBC_2.2 _IO_seekwmark F +GLIBC_2.2 _IO_sputbackwc F +GLIBC_2.2 _IO_sungetwc F +GLIBC_2.2 _IO_switch_to_main_wget_area F +GLIBC_2.2 _IO_switch_to_wbackup_area F +GLIBC_2.2 _IO_switch_to_wget_mode F +GLIBC_2.2 _IO_unsave_wmarkers F +GLIBC_2.2 _IO_wdefault_doallocate F +GLIBC_2.2 _IO_wdefault_finish F +GLIBC_2.2 _IO_wdefault_pbackfail F +GLIBC_2.2 _IO_wdefault_uflow F +GLIBC_2.2 _IO_wdefault_xsgetn F +GLIBC_2.2 _IO_wdefault_xsputn F +GLIBC_2.2 _IO_wdo_write F +GLIBC_2.2 _IO_wdoallocbuf F +GLIBC_2.2 _IO_wfile_jumps D 0xa8 +GLIBC_2.2 _IO_wfile_overflow F +GLIBC_2.2 _IO_wfile_seekoff F +GLIBC_2.2 _IO_wfile_sync F +GLIBC_2.2 _IO_wfile_underflow F +GLIBC_2.2 _IO_wfile_xsputn F +GLIBC_2.2 _IO_wmarker_delta F +GLIBC_2.2 _IO_wsetb F +GLIBC_2.2 __asprintf F +GLIBC_2.2 __assert F +GLIBC_2.2 __backtrace F +GLIBC_2.2 __backtrace_symbols F +GLIBC_2.2 __backtrace_symbols_fd F +GLIBC_2.2 __ctype32_tolower D 0x8 +GLIBC_2.2 __ctype32_toupper D 0x8 +GLIBC_2.2 __cxa_atexit F +GLIBC_2.2 __cxa_finalize F +GLIBC_2.2 __cyg_profile_func_enter F +GLIBC_2.2 __cyg_profile_func_exit F +GLIBC_2.2 __duplocale F +GLIBC_2.2 __endmntent F +GLIBC_2.2 __fbufsize F +GLIBC_2.2 __flbf F +GLIBC_2.2 __fpending F +GLIBC_2.2 __fpurge F +GLIBC_2.2 __freadable F +GLIBC_2.2 __freading F +GLIBC_2.2 __freelocale F +GLIBC_2.2 __fsetlocking F +GLIBC_2.2 __fwritable F +GLIBC_2.2 __fwriting F +GLIBC_2.2 __fxstat64 F +GLIBC_2.2 __getmntent_r F +GLIBC_2.2 __isalnum_l F +GLIBC_2.2 __isalpha_l F +GLIBC_2.2 __isascii_l F +GLIBC_2.2 __isblank_l F +GLIBC_2.2 __iscntrl_l F +GLIBC_2.2 __isdigit_l F +GLIBC_2.2 __isgraph_l F +GLIBC_2.2 __islower_l F +GLIBC_2.2 __isprint_l F +GLIBC_2.2 __ispunct_l F +GLIBC_2.2 __isspace_l F +GLIBC_2.2 __isupper_l F +GLIBC_2.2 __iswalnum_l F +GLIBC_2.2 __iswalpha_l F +GLIBC_2.2 __iswblank_l F +GLIBC_2.2 __iswcntrl_l F +GLIBC_2.2 __iswctype_l F +GLIBC_2.2 __iswdigit_l F +GLIBC_2.2 __iswgraph_l F +GLIBC_2.2 __iswlower_l F +GLIBC_2.2 __iswprint_l F +GLIBC_2.2 __iswpunct_l F +GLIBC_2.2 __iswspace_l F +GLIBC_2.2 __iswupper_l F +GLIBC_2.2 __iswxdigit_l F +GLIBC_2.2 __isxdigit_l F +GLIBC_2.2 __key_decryptsession_pk_LOCAL D 0x8 +GLIBC_2.2 __key_encryptsession_pk_LOCAL D 0x8 +GLIBC_2.2 __key_gendes_LOCAL D 0x8 +GLIBC_2.2 __libc_allocate_rtsig F +GLIBC_2.2 __libc_current_sigrtmax F +GLIBC_2.2 __libc_current_sigrtmin F +GLIBC_2.2 __libc_freeres F +GLIBC_2.2 __libc_sa_len F +GLIBC_2.2 __lxstat64 F +GLIBC_2.2 __mempcpy_small F +GLIBC_2.2 __newlocale F +GLIBC_2.2 __nl_langinfo_l F +GLIBC_2.2 __open64 F +GLIBC_2.2 __poll F +GLIBC_2.2 __pread64 F +GLIBC_2.2 __pwrite64 F +GLIBC_2.2 __rawmemchr F +GLIBC_2.2 __res_init F +GLIBC_2.2 __res_nclose F +GLIBC_2.2 __res_ninit F +GLIBC_2.2 __res_state F +GLIBC_2.2 __setmntent F +GLIBC_2.2 __signbit F +GLIBC_2.2 __signbitf F +GLIBC_2.2 __signbitl F +GLIBC_2.2 __sigsuspend F +GLIBC_2.2 __statfs F +GLIBC_2.2 __stpcpy_small F +GLIBC_2.2 __strcasecmp_l F +GLIBC_2.2 __strcasestr F +GLIBC_2.2 __strcoll_l F +GLIBC_2.2 __strcpy_small F +GLIBC_2.2 __strcspn_c1 F +GLIBC_2.2 __strcspn_c2 F +GLIBC_2.2 __strcspn_c3 F +GLIBC_2.2 __strfmon_l F +GLIBC_2.2 __strncasecmp_l F +GLIBC_2.2 __strndup F +GLIBC_2.2 __strpbrk_c2 F +GLIBC_2.2 __strpbrk_c3 F +GLIBC_2.2 __strsep_1c F +GLIBC_2.2 __strsep_2c F +GLIBC_2.2 __strsep_3c F +GLIBC_2.2 __strsep_g F +GLIBC_2.2 __strspn_c1 F +GLIBC_2.2 __strspn_c2 F +GLIBC_2.2 __strspn_c3 F +GLIBC_2.2 __strtod_l F +GLIBC_2.2 __strtof_l F +GLIBC_2.2 __strtok_r_1c F +GLIBC_2.2 __strtol_l F +GLIBC_2.2 __strtold_l F +GLIBC_2.2 __strtoll_l F +GLIBC_2.2 __strtoul_l F +GLIBC_2.2 __strtoull_l F +GLIBC_2.2 __strverscmp F +GLIBC_2.2 __strxfrm_l F +GLIBC_2.2 __sysconf F +GLIBC_2.2 __sysctl F +GLIBC_2.2 __toascii_l F +GLIBC_2.2 __tolower_l F +GLIBC_2.2 __toupper_l F +GLIBC_2.2 __towctrans F +GLIBC_2.2 __towctrans_l F +GLIBC_2.2 __towlower_l F +GLIBC_2.2 __towupper_l F +GLIBC_2.2 __vfork F +GLIBC_2.2 __wcscasecmp_l F +GLIBC_2.2 __wcscoll_l F +GLIBC_2.2 __wcsncasecmp_l F +GLIBC_2.2 __wcstod_l F +GLIBC_2.2 __wcstof_l F +GLIBC_2.2 __wcstol_l F +GLIBC_2.2 __wcstold_l F +GLIBC_2.2 __wcstoll_l F +GLIBC_2.2 __wcstoul_l F +GLIBC_2.2 __wcstoull_l F +GLIBC_2.2 __wcsxfrm_l F +GLIBC_2.2 __wctrans_l F +GLIBC_2.2 __wctype_l F +GLIBC_2.2 __woverflow F +GLIBC_2.2 __wuflow F +GLIBC_2.2 __wunderflow F +GLIBC_2.2 __xpg_sigpause F +GLIBC_2.2 __xstat64 F +GLIBC_2.2 _authenticate F +GLIBC_2.2 _dl_mcount_wrapper F +GLIBC_2.2 _dl_mcount_wrapper_check F +GLIBC_2.2 _flushlbf F +GLIBC_2.2 _res_hconf D 0x48 +GLIBC_2.2 _sys_errlist D 0x2370 +GLIBC_2.2 _sys_nerr D 0x4 +GLIBC_2.2 _sys_siglist D 0x200 +GLIBC_2.2 _test_and_set F +GLIBC_2.2 addseverity F +GLIBC_2.2 alphasort64 F +GLIBC_2.2 argp_err_exit_status D 0x4 +GLIBC_2.2 argp_error F +GLIBC_2.2 argp_failure F +GLIBC_2.2 argp_help F +GLIBC_2.2 argp_parse F +GLIBC_2.2 argp_program_bug_address D 0x8 +GLIBC_2.2 argp_program_version D 0x8 +GLIBC_2.2 argp_program_version_hook D 0x8 +GLIBC_2.2 argp_state_help F +GLIBC_2.2 argp_usage F +GLIBC_2.2 authdes_create F +GLIBC_2.2 authdes_getucred F +GLIBC_2.2 authdes_pk_create F +GLIBC_2.2 backtrace F +GLIBC_2.2 backtrace_symbols F +GLIBC_2.2 backtrace_symbols_fd F +GLIBC_2.2 bind_textdomain_codeset F +GLIBC_2.2 capget F +GLIBC_2.2 capset F +GLIBC_2.2 cbc_crypt F +GLIBC_2.2 clntunix_create F +GLIBC_2.2 creat64 F +GLIBC_2.2 dcngettext F +GLIBC_2.2 des_setparity F +GLIBC_2.2 dngettext F +GLIBC_2.2 ecb_crypt F +GLIBC_2.2 endutxent F +GLIBC_2.2 fattach F +GLIBC_2.2 fclose F +GLIBC_2.2 fdetach F +GLIBC_2.2 fdopen F +GLIBC_2.2 ffsl F +GLIBC_2.2 ffsll F +GLIBC_2.2 fgetc_unlocked F +GLIBC_2.2 fgetpos F +GLIBC_2.2 fgetpos64 F +GLIBC_2.2 fgets_unlocked F +GLIBC_2.2 fgetwc F +GLIBC_2.2 fgetwc_unlocked F +GLIBC_2.2 fgetws F +GLIBC_2.2 fgetws_unlocked F +GLIBC_2.2 fmemopen F +GLIBC_2.2 fmtmsg F +GLIBC_2.2 fopen F +GLIBC_2.2 fopen64 F +GLIBC_2.2 fopencookie F +GLIBC_2.2 fputs_unlocked F +GLIBC_2.2 fputwc F +GLIBC_2.2 fputwc_unlocked F +GLIBC_2.2 fputws F +GLIBC_2.2 fputws_unlocked F +GLIBC_2.2 fread_unlocked F +GLIBC_2.2 freopen64 F +GLIBC_2.2 fseeko F +GLIBC_2.2 fseeko64 F +GLIBC_2.2 fsetpos F +GLIBC_2.2 fsetpos64 F +GLIBC_2.2 fstatfs64 F +GLIBC_2.2 fstatvfs F +GLIBC_2.2 fstatvfs64 F +GLIBC_2.2 ftello F +GLIBC_2.2 ftello64 F +GLIBC_2.2 ftruncate64 F +GLIBC_2.2 ftw64 F +GLIBC_2.2 fwide F +GLIBC_2.2 fwprintf F +GLIBC_2.2 fwrite_unlocked F +GLIBC_2.2 fwscanf F +GLIBC_2.2 gai_strerror F +GLIBC_2.2 getaliasbyname_r F +GLIBC_2.2 getaliasent_r F +GLIBC_2.2 getcontext F +GLIBC_2.2 getdate F +GLIBC_2.2 getdate_err D 0x4 +GLIBC_2.2 getdate_r F +GLIBC_2.2 getdirentries64 F +GLIBC_2.2 getgrent_r F +GLIBC_2.2 getgrgid_r F +GLIBC_2.2 getgrnam_r F +GLIBC_2.2 gethostbyaddr_r F +GLIBC_2.2 gethostbyname2_r F +GLIBC_2.2 gethostbyname_r F +GLIBC_2.2 gethostent_r F +GLIBC_2.2 getloadavg F +GLIBC_2.2 getmsg F +GLIBC_2.2 getnameinfo F +GLIBC_2.2 getnetbyaddr_r F +GLIBC_2.2 getnetbyname_r F +GLIBC_2.2 getnetent_r F +GLIBC_2.2 getnetname F +GLIBC_2.2 getpmsg F +GLIBC_2.2 getprotobyname_r F +GLIBC_2.2 getprotobynumber_r F +GLIBC_2.2 getprotoent_r F +GLIBC_2.2 getpt F +GLIBC_2.2 getpwent_r F +GLIBC_2.2 getpwnam_r F +GLIBC_2.2 getpwuid_r F +GLIBC_2.2 getrlimit64 F +GLIBC_2.2 getrpcbyname_r F +GLIBC_2.2 getrpcbynumber_r F +GLIBC_2.2 getrpcent_r F +GLIBC_2.2 getservbyname_r F +GLIBC_2.2 getservbyport_r F +GLIBC_2.2 getservent_r F +GLIBC_2.2 getspent_r F +GLIBC_2.2 getspnam_r F +GLIBC_2.2 getutmp F +GLIBC_2.2 getutmpx F +GLIBC_2.2 getutxent F +GLIBC_2.2 getutxid F +GLIBC_2.2 getutxline F +GLIBC_2.2 getwc F +GLIBC_2.2 getwc_unlocked F +GLIBC_2.2 getwchar F +GLIBC_2.2 getwchar_unlocked F +GLIBC_2.2 glob64 F +GLIBC_2.2 globfree64 F +GLIBC_2.2 gnu_get_libc_release F +GLIBC_2.2 gnu_get_libc_version F +GLIBC_2.2 grantpt F +GLIBC_2.2 host2netname F +GLIBC_2.2 iconv F +GLIBC_2.2 iconv_close F +GLIBC_2.2 iconv_open F +GLIBC_2.2 if_freenameindex F +GLIBC_2.2 if_indextoname F +GLIBC_2.2 if_nameindex F +GLIBC_2.2 if_nametoindex F +GLIBC_2.2 imaxabs F +GLIBC_2.2 imaxdiv F +GLIBC_2.2 in6addr_any D 0x10 +GLIBC_2.2 in6addr_loopback D 0x10 +GLIBC_2.2 iruserok_af F +GLIBC_2.2 isastream F +GLIBC_2.2 iswblank F +GLIBC_2.2 key_decryptsession F +GLIBC_2.2 key_decryptsession_pk F +GLIBC_2.2 key_encryptsession F +GLIBC_2.2 key_encryptsession_pk F +GLIBC_2.2 key_gendes F +GLIBC_2.2 key_get_conv F +GLIBC_2.2 key_secretkey_is_set F +GLIBC_2.2 key_setnet F +GLIBC_2.2 key_setsecret F +GLIBC_2.2 localeconv F +GLIBC_2.2 lockf64 F +GLIBC_2.2 lseek64 F +GLIBC_2.2 makecontext F +GLIBC_2.2 mcheck_check_all F +GLIBC_2.2 mcheck_pedantic F +GLIBC_2.2 mempcpy F +GLIBC_2.2 memrchr F +GLIBC_2.2 mincore F +GLIBC_2.2 mkdtemp F +GLIBC_2.2 mkstemp64 F +GLIBC_2.2 mmap64 F +GLIBC_2.2 moncontrol F +GLIBC_2.2 netname2host F +GLIBC_2.2 netname2user F +GLIBC_2.2 nftw F +GLIBC_2.2 nftw64 F +GLIBC_2.2 ngettext F +GLIBC_2.2 ntp_adjtime F +GLIBC_2.2 ntp_gettime F +GLIBC_2.2 open64 F +GLIBC_2.2 passwd2des F +GLIBC_2.2 pclose F +GLIBC_2.2 popen F +GLIBC_2.2 posix_fadvise F +GLIBC_2.2 posix_fadvise64 F +GLIBC_2.2 posix_fallocate F +GLIBC_2.2 posix_fallocate64 F +GLIBC_2.2 posix_madvise F +GLIBC_2.2 posix_memalign F +GLIBC_2.2 posix_spawn F +GLIBC_2.2 posix_spawn_file_actions_addclose F +GLIBC_2.2 posix_spawn_file_actions_adddup2 F +GLIBC_2.2 posix_spawn_file_actions_addopen F +GLIBC_2.2 posix_spawn_file_actions_destroy F +GLIBC_2.2 posix_spawn_file_actions_init F +GLIBC_2.2 posix_spawnattr_destroy F +GLIBC_2.2 posix_spawnattr_getflags F +GLIBC_2.2 posix_spawnattr_getpgroup F +GLIBC_2.2 posix_spawnattr_getschedparam F +GLIBC_2.2 posix_spawnattr_getschedpolicy F +GLIBC_2.2 posix_spawnattr_getsigdefault F +GLIBC_2.2 posix_spawnattr_getsigmask F +GLIBC_2.2 posix_spawnattr_init F +GLIBC_2.2 posix_spawnattr_setflags F +GLIBC_2.2 posix_spawnattr_setpgroup F +GLIBC_2.2 posix_spawnattr_setschedparam F +GLIBC_2.2 posix_spawnattr_setschedpolicy F +GLIBC_2.2 posix_spawnattr_setsigdefault F +GLIBC_2.2 posix_spawnattr_setsigmask F +GLIBC_2.2 posix_spawnp F +GLIBC_2.2 pread F +GLIBC_2.2 pread64 F +GLIBC_2.2 printf_size F +GLIBC_2.2 printf_size_info F +GLIBC_2.2 pthread_attr_init F +GLIBC_2.2 ptsname F +GLIBC_2.2 ptsname_r F +GLIBC_2.2 putgrent F +GLIBC_2.2 putmsg F +GLIBC_2.2 putpmsg F +GLIBC_2.2 pututxline F +GLIBC_2.2 putwc F +GLIBC_2.2 putwc_unlocked F +GLIBC_2.2 putwchar F +GLIBC_2.2 putwchar_unlocked F +GLIBC_2.2 pwrite F +GLIBC_2.2 pwrite64 F +GLIBC_2.2 rawmemchr F +GLIBC_2.2 rcmd_af F +GLIBC_2.2 readdir64 F +GLIBC_2.2 readdir64_r F +GLIBC_2.2 rexec_af F +GLIBC_2.2 rresvport_af F +GLIBC_2.2 rtime F +GLIBC_2.2 ruserok_af F +GLIBC_2.2 scandir64 F +GLIBC_2.2 sendfile F +GLIBC_2.2 setrlimit64 F +GLIBC_2.2 setutxent F +GLIBC_2.2 sighold F +GLIBC_2.2 sigignore F +GLIBC_2.2 sigqueue F +GLIBC_2.2 sigrelse F +GLIBC_2.2 sigset F +GLIBC_2.2 sigtimedwait F +GLIBC_2.2 sigwaitinfo F +GLIBC_2.2 statfs64 F +GLIBC_2.2 statvfs F +GLIBC_2.2 statvfs64 F +GLIBC_2.2 strcasestr F +GLIBC_2.2 strchrnul F +GLIBC_2.2 strtoimax F +GLIBC_2.2 strtoumax F +GLIBC_2.2 strverscmp F +GLIBC_2.2 svc_getreq_common F +GLIBC_2.2 svc_getreq_poll F +GLIBC_2.2 svc_max_pollfd D 0x4 +GLIBC_2.2 svc_pollfd D 0x8 +GLIBC_2.2 svcunix_create F +GLIBC_2.2 svcunixfd_create F +GLIBC_2.2 swapcontext F +GLIBC_2.2 swprintf F +GLIBC_2.2 swscanf F +GLIBC_2.2 sys_errlist D 0x2370 +GLIBC_2.2 sys_nerr D 0x4 +GLIBC_2.2 sys_sigabbrev D 0x200 +GLIBC_2.2 sys_siglist D 0x200 +GLIBC_2.2 sysv_signal F +GLIBC_2.2 tcgetsid F +GLIBC_2.2 tdestroy F +GLIBC_2.2 tmpfile F +GLIBC_2.2 tmpfile64 F +GLIBC_2.2 truncate64 F +GLIBC_2.2 umount2 F +GLIBC_2.2 ungetwc F +GLIBC_2.2 unlockpt F +GLIBC_2.2 updwtmpx F +GLIBC_2.2 user2netname F +GLIBC_2.2 utmpxname F +GLIBC_2.2 versionsort F +GLIBC_2.2 versionsort64 F +GLIBC_2.2 vfwprintf F +GLIBC_2.2 vfwscanf F +GLIBC_2.2 vswprintf F +GLIBC_2.2 vswscanf F +GLIBC_2.2 vwprintf F +GLIBC_2.2 vwscanf F +GLIBC_2.2 waitid F +GLIBC_2.2 wcscasecmp F +GLIBC_2.2 wcschrnul F +GLIBC_2.2 wcsftime F +GLIBC_2.2 wcsncasecmp F +GLIBC_2.2 wcsnlen F +GLIBC_2.2 wcstoimax F +GLIBC_2.2 wcstoll F +GLIBC_2.2 wcstoull F +GLIBC_2.2 wcstoumax F +GLIBC_2.2 wcswcs F +GLIBC_2.2 wmempcpy F +GLIBC_2.2 wordexp F +GLIBC_2.2 wordfree F +GLIBC_2.2 wprintf F +GLIBC_2.2 wscanf F +GLIBC_2.2 xdecrypt F +GLIBC_2.2 xdr_authdes_cred F +GLIBC_2.2 xdr_authdes_verf F +GLIBC_2.2 xdr_getcredres F +GLIBC_2.2 xdr_hyper F +GLIBC_2.2 xdr_int16_t F +GLIBC_2.2 xdr_int32_t F +GLIBC_2.2 xdr_int64_t F +GLIBC_2.2 xdr_int8_t F +GLIBC_2.2 xdr_longlong_t F +GLIBC_2.2 xdr_netnamestr F +GLIBC_2.2 xdr_sizeof F +GLIBC_2.2 xdr_u_hyper F +GLIBC_2.2 xdr_u_longlong_t F +GLIBC_2.2 xdr_uint16_t F +GLIBC_2.2 xdr_uint32_t F +GLIBC_2.2 xdr_uint64_t F +GLIBC_2.2 xdr_uint8_t F +GLIBC_2.2 xdr_unixcred F +GLIBC_2.2.1 GLIBC_2.2.1 A +GLIBC_2.2.1 pivot_root F +GLIBC_2.2.1 posix_openpt F +GLIBC_2.2.2 GLIBC_2.2.2 A +GLIBC_2.2.2 __nss_hostname_digits_dots F +GLIBC_2.2.3 GLIBC_2.2.3 A +GLIBC_2.2.3 __rpc_thread_createerr F +GLIBC_2.2.3 __rpc_thread_svc_fdset F +GLIBC_2.2.3 __rpc_thread_svc_max_pollfd F +GLIBC_2.2.3 __rpc_thread_svc_pollfd F +GLIBC_2.2.3 fnmatch F +GLIBC_2.2.3 sprofil F +GLIBC_2.2.4 GLIBC_2.2.4 A +GLIBC_2.2.4 dl_iterate_phdr F +GLIBC_2.2.4 getgrouplist F +GLIBC_2.2.4 sockatmark F +GLIBC_2.2.6 GLIBC_2.2.6 A +GLIBC_2.2.6 __nanosleep F +GLIBC_2.22 GLIBC_2.22 A +GLIBC_2.22 fmemopen F +GLIBC_2.23 GLIBC_2.23 A +GLIBC_2.23 fts64_children F +GLIBC_2.23 fts64_close F +GLIBC_2.23 fts64_open F +GLIBC_2.23 fts64_read F +GLIBC_2.23 fts64_set F +GLIBC_2.24 GLIBC_2.24 A +GLIBC_2.24 quick_exit F +GLIBC_2.25 GLIBC_2.25 A +GLIBC_2.25 __explicit_bzero_chk F +GLIBC_2.25 explicit_bzero F +GLIBC_2.25 getentropy F +GLIBC_2.25 getrandom F +GLIBC_2.25 strfromd F +GLIBC_2.25 strfromf F +GLIBC_2.25 strfroml F +GLIBC_2.26 GLIBC_2.26 A +GLIBC_2.26 preadv2 F +GLIBC_2.26 preadv64v2 F +GLIBC_2.26 pwritev2 F +GLIBC_2.26 pwritev64v2 F +GLIBC_2.26 reallocarray F +GLIBC_2.3 GLIBC_2.3 A +GLIBC_2.3 __ctype_b_loc F +GLIBC_2.3 __ctype_tolower_loc F +GLIBC_2.3 __ctype_toupper_loc F +GLIBC_2.3 __isctype F +GLIBC_2.3 __strftime_l F +GLIBC_2.3 __uselocale F +GLIBC_2.3 __wcsftime_l F +GLIBC_2.3 duplocale F +GLIBC_2.3 fgetxattr F +GLIBC_2.3 flistxattr F +GLIBC_2.3 freeifaddrs F +GLIBC_2.3 freelocale F +GLIBC_2.3 fremovexattr F +GLIBC_2.3 fsetxattr F +GLIBC_2.3 futimes F +GLIBC_2.3 getifaddrs F +GLIBC_2.3 getxattr F +GLIBC_2.3 isalnum_l F +GLIBC_2.3 isalpha_l F +GLIBC_2.3 isblank_l F +GLIBC_2.3 iscntrl_l F +GLIBC_2.3 isctype F +GLIBC_2.3 isdigit_l F +GLIBC_2.3 isgraph_l F +GLIBC_2.3 islower_l F +GLIBC_2.3 isprint_l F +GLIBC_2.3 ispunct_l F +GLIBC_2.3 isspace_l F +GLIBC_2.3 isupper_l F +GLIBC_2.3 iswalnum_l F +GLIBC_2.3 iswalpha_l F +GLIBC_2.3 iswblank_l F +GLIBC_2.3 iswcntrl_l F +GLIBC_2.3 iswctype_l F +GLIBC_2.3 iswdigit_l F +GLIBC_2.3 iswgraph_l F +GLIBC_2.3 iswlower_l F +GLIBC_2.3 iswprint_l F +GLIBC_2.3 iswpunct_l F +GLIBC_2.3 iswspace_l F +GLIBC_2.3 iswupper_l F +GLIBC_2.3 iswxdigit_l F +GLIBC_2.3 isxdigit_l F +GLIBC_2.3 lgetxattr F +GLIBC_2.3 listxattr F +GLIBC_2.3 llistxattr F +GLIBC_2.3 lremovexattr F +GLIBC_2.3 lsetxattr F +GLIBC_2.3 lutimes F +GLIBC_2.3 newlocale F +GLIBC_2.3 nl_langinfo_l F +GLIBC_2.3 readahead F +GLIBC_2.3 realpath F +GLIBC_2.3 removexattr F +GLIBC_2.3 sendfile64 F +GLIBC_2.3 setxattr F +GLIBC_2.3 strcasecmp_l F +GLIBC_2.3 strcoll_l F +GLIBC_2.3 strfmon_l F +GLIBC_2.3 strftime_l F +GLIBC_2.3 strncasecmp_l F +GLIBC_2.3 strtod_l F +GLIBC_2.3 strtof_l F +GLIBC_2.3 strtol_l F +GLIBC_2.3 strtold_l F +GLIBC_2.3 strtoul_l F +GLIBC_2.3 strxfrm_l F +GLIBC_2.3 tolower_l F +GLIBC_2.3 toupper_l F +GLIBC_2.3 towctrans_l F +GLIBC_2.3 towlower_l F +GLIBC_2.3 towupper_l F +GLIBC_2.3 uselocale F +GLIBC_2.3 wcscasecmp_l F +GLIBC_2.3 wcscoll_l F +GLIBC_2.3 wcsftime_l F +GLIBC_2.3 wcsncasecmp_l F +GLIBC_2.3 wcstod_l F +GLIBC_2.3 wcstof_l F +GLIBC_2.3 wcstol_l F +GLIBC_2.3 wcstold_l F +GLIBC_2.3 wcstoll_l F +GLIBC_2.3 wcstoul_l F +GLIBC_2.3 wcstoull_l F +GLIBC_2.3 wcsxfrm_l F +GLIBC_2.3 wctrans_l F +GLIBC_2.3 wctype_l F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __register_atfork F +GLIBC_2.3.2 epoll_create F +GLIBC_2.3.2 epoll_ctl F +GLIBC_2.3.2 epoll_wait F +GLIBC_2.3.2 lchmod F +GLIBC_2.3.2 pthread_cond_broadcast F +GLIBC_2.3.2 pthread_cond_destroy F +GLIBC_2.3.2 pthread_cond_init F +GLIBC_2.3.2 pthread_cond_signal F +GLIBC_2.3.2 pthread_cond_timedwait F +GLIBC_2.3.2 pthread_cond_wait F +GLIBC_2.3.2 strptime_l F +GLIBC_2.3.3 GLIBC_2.3.3 A +GLIBC_2.3.3 _sys_siglist D 0x400 +GLIBC_2.3.3 gnu_dev_major F +GLIBC_2.3.3 gnu_dev_makedev F +GLIBC_2.3.3 gnu_dev_minor F +GLIBC_2.3.3 inet6_option_alloc F +GLIBC_2.3.3 inet6_option_append F +GLIBC_2.3.3 inet6_option_find F +GLIBC_2.3.3 inet6_option_init F +GLIBC_2.3.3 inet6_option_next F +GLIBC_2.3.3 inet6_option_space F +GLIBC_2.3.3 nftw F +GLIBC_2.3.3 nftw64 F +GLIBC_2.3.3 posix_fadvise64 F +GLIBC_2.3.3 remap_file_pages F +GLIBC_2.3.3 sched_getaffinity F +GLIBC_2.3.3 sched_setaffinity F +GLIBC_2.3.3 semtimedop F +GLIBC_2.3.3 strtoll_l F +GLIBC_2.3.3 strtoull_l F +GLIBC_2.3.3 sys_sigabbrev D 0x400 +GLIBC_2.3.3 sys_siglist D 0x400 +GLIBC_2.3.4 GLIBC_2.3.4 A +GLIBC_2.3.4 __chk_fail F +GLIBC_2.3.4 __fprintf_chk F +GLIBC_2.3.4 __gets_chk F +GLIBC_2.3.4 __memcpy_chk F +GLIBC_2.3.4 __memmove_chk F +GLIBC_2.3.4 __mempcpy_chk F +GLIBC_2.3.4 __memset_chk F +GLIBC_2.3.4 __printf_chk F +GLIBC_2.3.4 __snprintf_chk F +GLIBC_2.3.4 __sprintf_chk F +GLIBC_2.3.4 __stpcpy_chk F +GLIBC_2.3.4 __strcat_chk F +GLIBC_2.3.4 __strcpy_chk F +GLIBC_2.3.4 __strncat_chk F +GLIBC_2.3.4 __strncpy_chk F +GLIBC_2.3.4 __vfprintf_chk F +GLIBC_2.3.4 __vprintf_chk F +GLIBC_2.3.4 __vsnprintf_chk F +GLIBC_2.3.4 __vsprintf_chk F +GLIBC_2.3.4 __xpg_strerror_r F +GLIBC_2.3.4 getipv4sourcefilter F +GLIBC_2.3.4 getsourcefilter F +GLIBC_2.3.4 regexec F +GLIBC_2.3.4 sched_getaffinity F +GLIBC_2.3.4 sched_setaffinity F +GLIBC_2.3.4 setipv4sourcefilter F +GLIBC_2.3.4 setsourcefilter F +GLIBC_2.3.4 xdr_quad_t F +GLIBC_2.3.4 xdr_u_quad_t F +GLIBC_2.4 GLIBC_2.4 A +GLIBC_2.4 __confstr_chk F +GLIBC_2.4 __fgets_chk F +GLIBC_2.4 __fgets_unlocked_chk F +GLIBC_2.4 __fgetws_chk F +GLIBC_2.4 __fgetws_unlocked_chk F +GLIBC_2.4 __fwprintf_chk F +GLIBC_2.4 __fxstatat F +GLIBC_2.4 __fxstatat64 F +GLIBC_2.4 __getcwd_chk F +GLIBC_2.4 __getdomainname_chk F +GLIBC_2.4 __getgroups_chk F +GLIBC_2.4 __gethostname_chk F +GLIBC_2.4 __getlogin_r_chk F +GLIBC_2.4 __getwd_chk F +GLIBC_2.4 __mbsnrtowcs_chk F +GLIBC_2.4 __mbsrtowcs_chk F +GLIBC_2.4 __mbstowcs_chk F +GLIBC_2.4 __pread64_chk F +GLIBC_2.4 __pread_chk F +GLIBC_2.4 __ptsname_r_chk F +GLIBC_2.4 __read_chk F +GLIBC_2.4 __readlink_chk F +GLIBC_2.4 __realpath_chk F +GLIBC_2.4 __recv_chk F +GLIBC_2.4 __recvfrom_chk F +GLIBC_2.4 __stack_chk_fail F +GLIBC_2.4 __stpncpy_chk F +GLIBC_2.4 __swprintf_chk F +GLIBC_2.4 __syslog_chk F +GLIBC_2.4 __ttyname_r_chk F +GLIBC_2.4 __vfwprintf_chk F +GLIBC_2.4 __vswprintf_chk F +GLIBC_2.4 __vsyslog_chk F +GLIBC_2.4 __vwprintf_chk F +GLIBC_2.4 __wcpcpy_chk F +GLIBC_2.4 __wcpncpy_chk F +GLIBC_2.4 __wcrtomb_chk F +GLIBC_2.4 __wcscat_chk F +GLIBC_2.4 __wcscpy_chk F +GLIBC_2.4 __wcsncat_chk F +GLIBC_2.4 __wcsncpy_chk F +GLIBC_2.4 __wcsnrtombs_chk F +GLIBC_2.4 __wcsrtombs_chk F +GLIBC_2.4 __wcstombs_chk F +GLIBC_2.4 __wctomb_chk F +GLIBC_2.4 __wmemcpy_chk F +GLIBC_2.4 __wmemmove_chk F +GLIBC_2.4 __wmempcpy_chk F +GLIBC_2.4 __wmemset_chk F +GLIBC_2.4 __wprintf_chk F +GLIBC_2.4 __xmknodat F +GLIBC_2.4 eaccess F +GLIBC_2.4 faccessat F +GLIBC_2.4 fchmodat F +GLIBC_2.4 fchownat F +GLIBC_2.4 fdopendir F +GLIBC_2.4 futimesat F +GLIBC_2.4 inotify_add_watch F +GLIBC_2.4 inotify_init F +GLIBC_2.4 inotify_rm_watch F +GLIBC_2.4 linkat F +GLIBC_2.4 mkdirat F +GLIBC_2.4 mkfifoat F +GLIBC_2.4 open_wmemstream F +GLIBC_2.4 openat F +GLIBC_2.4 openat64 F +GLIBC_2.4 ppoll F +GLIBC_2.4 readlinkat F +GLIBC_2.4 renameat F +GLIBC_2.4 symlinkat F +GLIBC_2.4 unlinkat F +GLIBC_2.4 unshare F +GLIBC_2.5 GLIBC_2.5 A +GLIBC_2.5 __readlinkat_chk F +GLIBC_2.5 inet6_opt_append F +GLIBC_2.5 inet6_opt_find F +GLIBC_2.5 inet6_opt_finish F +GLIBC_2.5 inet6_opt_get_val F +GLIBC_2.5 inet6_opt_init F +GLIBC_2.5 inet6_opt_next F +GLIBC_2.5 inet6_opt_set_val F +GLIBC_2.5 inet6_rth_add F +GLIBC_2.5 inet6_rth_getaddr F +GLIBC_2.5 inet6_rth_init F +GLIBC_2.5 inet6_rth_reverse F +GLIBC_2.5 inet6_rth_segments F +GLIBC_2.5 inet6_rth_space F +GLIBC_2.5 splice F +GLIBC_2.5 tee F +GLIBC_2.5 vmsplice F +GLIBC_2.6 GLIBC_2.6 A +GLIBC_2.6 __sched_cpucount F +GLIBC_2.6 epoll_pwait F +GLIBC_2.6 futimens F +GLIBC_2.6 sched_getcpu F +GLIBC_2.6 strerror_l F +GLIBC_2.6 sync_file_range F +GLIBC_2.6 utimensat F +GLIBC_2.7 GLIBC_2.7 A +GLIBC_2.7 __fread_chk F +GLIBC_2.7 __fread_unlocked_chk F +GLIBC_2.7 __isoc99_fscanf F +GLIBC_2.7 __isoc99_fwscanf F +GLIBC_2.7 __isoc99_scanf F +GLIBC_2.7 __isoc99_sscanf F +GLIBC_2.7 __isoc99_swscanf F +GLIBC_2.7 __isoc99_vfscanf F +GLIBC_2.7 __isoc99_vfwscanf F +GLIBC_2.7 __isoc99_vscanf F +GLIBC_2.7 __isoc99_vsscanf F +GLIBC_2.7 __isoc99_vswscanf F +GLIBC_2.7 __isoc99_vwscanf F +GLIBC_2.7 __isoc99_wscanf F +GLIBC_2.7 __open64_2 F +GLIBC_2.7 __open_2 F +GLIBC_2.7 __openat64_2 F +GLIBC_2.7 __openat_2 F +GLIBC_2.7 __sched_cpualloc F +GLIBC_2.7 __sched_cpufree F +GLIBC_2.7 eventfd F +GLIBC_2.7 eventfd_read F +GLIBC_2.7 eventfd_write F +GLIBC_2.7 mkostemp F +GLIBC_2.7 mkostemp64 F +GLIBC_2.7 signalfd F +GLIBC_2.8 GLIBC_2.8 A +GLIBC_2.8 __asprintf_chk F +GLIBC_2.8 __dprintf_chk F +GLIBC_2.8 __obstack_printf_chk F +GLIBC_2.8 __obstack_vprintf_chk F +GLIBC_2.8 __vasprintf_chk F +GLIBC_2.8 __vdprintf_chk F +GLIBC_2.8 qsort_r F +GLIBC_2.8 timerfd_create F +GLIBC_2.8 timerfd_gettime F +GLIBC_2.8 timerfd_settime F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 dup3 F +GLIBC_2.9 epoll_create1 F +GLIBC_2.9 inotify_init1 F +GLIBC_2.9 pipe2 F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/libresolv.abilist b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/libresolv.abilist new file mode 100644 index 0000000000..2d92a35e81 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/libresolv.abilist @@ -0,0 +1,100 @@ +GLIBC_2.0 GLIBC_2.0 A +GLIBC_2.0 __b64_ntop F +GLIBC_2.0 __b64_pton F +GLIBC_2.0 __dn_comp F +GLIBC_2.0 __dn_count_labels F +GLIBC_2.0 __dn_skipname F +GLIBC_2.0 __fp_nquery F +GLIBC_2.0 __fp_query F +GLIBC_2.0 __fp_resstat F +GLIBC_2.0 __hostalias F +GLIBC_2.0 __loc_aton F +GLIBC_2.0 __loc_ntoa F +GLIBC_2.0 __p_cdname F +GLIBC_2.0 __p_cdnname F +GLIBC_2.0 __p_class F +GLIBC_2.0 __p_class_syms D 0xa8 +GLIBC_2.0 __p_fqname F +GLIBC_2.0 __p_fqnname F +GLIBC_2.0 __p_option F +GLIBC_2.0 __p_query F +GLIBC_2.0 __p_secstodate F +GLIBC_2.0 __p_time F +GLIBC_2.0 __p_type F +GLIBC_2.0 __p_type_syms D 0x450 +GLIBC_2.0 __putlong F +GLIBC_2.0 __putshort F +GLIBC_2.0 __res_close F +GLIBC_2.0 __res_dnok F +GLIBC_2.0 __res_hnok F +GLIBC_2.0 __res_isourserver F +GLIBC_2.0 __res_mailok F +GLIBC_2.0 __res_nameinquery F +GLIBC_2.0 __res_ownok F +GLIBC_2.0 __res_queriesmatch F +GLIBC_2.0 __res_send F +GLIBC_2.0 __sym_ntop F +GLIBC_2.0 __sym_ntos F +GLIBC_2.0 __sym_ston F +GLIBC_2.0 _gethtbyaddr F +GLIBC_2.0 _gethtbyname F +GLIBC_2.0 _gethtbyname2 F +GLIBC_2.0 _gethtent F +GLIBC_2.0 _getlong F +GLIBC_2.0 _getshort F +GLIBC_2.0 _res_opcodes D 0x80 +GLIBC_2.0 _sethtent F +GLIBC_2.0 dn_expand F +GLIBC_2.0 inet_net_ntop F +GLIBC_2.0 inet_net_pton F +GLIBC_2.0 inet_neta F +GLIBC_2.0 res_gethostbyaddr F +GLIBC_2.0 res_gethostbyname F +GLIBC_2.0 res_gethostbyname2 F +GLIBC_2.0 res_mkquery F +GLIBC_2.0 res_query F +GLIBC_2.0 res_querydomain F +GLIBC_2.0 res_search F +GLIBC_2.0 res_send_setqhook F +GLIBC_2.0 res_send_setrhook F +GLIBC_2.2 GLIBC_2.2 A +GLIBC_2.2 __dn_expand F +GLIBC_2.2 __res_hostalias F +GLIBC_2.2 __res_mkquery F +GLIBC_2.2 __res_nmkquery F +GLIBC_2.2 __res_nquery F +GLIBC_2.2 __res_nquerydomain F +GLIBC_2.2 __res_nsearch F +GLIBC_2.2 __res_nsend F +GLIBC_2.2 __res_query F +GLIBC_2.2 __res_querydomain F +GLIBC_2.2 __res_search F +GLIBC_2.3.2 GLIBC_2.3.2 A +GLIBC_2.3.2 __p_rcode F +GLIBC_2.9 GLIBC_2.9 A +GLIBC_2.9 ns_datetosecs F +GLIBC_2.9 ns_format_ttl F +GLIBC_2.9 ns_get16 F +GLIBC_2.9 ns_get32 F +GLIBC_2.9 ns_initparse F +GLIBC_2.9 ns_makecanon F +GLIBC_2.9 ns_msg_getflag F +GLIBC_2.9 ns_name_compress F +GLIBC_2.9 ns_name_ntol F +GLIBC_2.9 ns_name_ntop F +GLIBC_2.9 ns_name_pack F +GLIBC_2.9 ns_name_pton F +GLIBC_2.9 ns_name_rollback F +GLIBC_2.9 ns_name_skip F +GLIBC_2.9 ns_name_uncompress F +GLIBC_2.9 ns_name_unpack F +GLIBC_2.9 ns_parse_ttl F +GLIBC_2.9 ns_parserr F +GLIBC_2.9 ns_put16 F +GLIBC_2.9 ns_put32 F +GLIBC_2.9 ns_samedomain F +GLIBC_2.9 ns_samename F +GLIBC_2.9 ns_skiprr F +GLIBC_2.9 ns_sprintrr F +GLIBC_2.9 ns_sprintrrf F +GLIBC_2.9 ns_subdomain F diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c new file mode 100644 index 0000000000..5a6379613b --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2003-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#undef weak_alias +#define weak_alias(a, b) +#undef strong_alias +#define strong_alias(a, b) + +#include <sysdeps/unix/sysv/linux/posix_fadvise64.c> + +/* Although both posix_fadvise and posix_fadvise64 has the same semantic + on mips64, there were were releases with both symbol versions (BZ#14044). + So we need to continue export them. */ +#if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_3_3) +_strong_alias (__posix_fadvise64_l64, __posix_fadvise64_l32); +compat_symbol (libc, __posix_fadvise64_l32, posix_fadvise64, GLIBC_2_2); +versioned_symbol (libc, __posix_fadvise64_l64, posix_fadvise64, GLIBC_2_3_3); +#else +_weak_alias (posix_fadvise, posix_fadvise64); +#endif +_strong_alias (__posix_fadvise64_l64, posix_fadvise); diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c new file mode 100644 index 0000000000..4c451bd093 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c @@ -0,0 +1 @@ +/* sendfile64 is alias of sendfile syscall. */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c new file mode 100644 index 0000000000..6e25b021ab --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c @@ -0,0 +1 @@ +/* Empty. */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list new file mode 100644 index 0000000000..28664208d0 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list @@ -0,0 +1,12 @@ +# File name Caller Syscall name # args Strong name Weak names + +readahead - readahead i:iii __readahead readahead + +prlimit EXTRA prlimit64 i:iipp prlimit prlimit64 + +fanotify_mark EXTRA fanotify_mark i:iiiis fanotify_mark + +fstatfs - fstatfs i:ip __fstatfs fstatfs fstatfs64 __fstatfs64 +statfs - statfs i:sp __statfs statfs statfs64 __statfs64 + +sendfile - sendfile i:iipi sendfile sendfile64 diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h new file mode 100644 index 0000000000..98283083b3 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h @@ -0,0 +1,317 @@ +/* Copyright (C) 2000-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _LINUX_MIPS_SYSDEP_H +#define _LINUX_MIPS_SYSDEP_H 1 + +/* There is some commonality. */ +#include <sysdeps/unix/sysv/linux/sysdep.h> +#include <sysdeps/unix/mips/mips64/n64/sysdep.h> + +#include <tls.h> + +/* In order to get __set_errno() definition in INLINE_SYSCALL. */ +#ifndef __ASSEMBLER__ +#include <errno.h> +#endif + +/* 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 + +#ifdef __ASSEMBLER__ + +/* We don't want the label for the error handler to be visible in the symbol + table when we define it here. */ +# define SYSCALL_ERROR_LABEL 99b + +#else /* ! __ASSEMBLER__ */ + +/* Define a macro which expands into the inline wrapper code for a system + call. */ +#undef INLINE_SYSCALL +#define INLINE_SYSCALL(name, nr, args...) \ + ({ INTERNAL_SYSCALL_DECL (_sc_err); \ + long result_var = INTERNAL_SYSCALL (name, _sc_err, nr, args); \ + if ( INTERNAL_SYSCALL_ERROR_P (result_var, _sc_err) ) \ + { \ + __set_errno (INTERNAL_SYSCALL_ERRNO (result_var, _sc_err)); \ + result_var = -1L; \ + } \ + result_var; }) + +#undef INTERNAL_SYSCALL_DECL +#define INTERNAL_SYSCALL_DECL(err) long err __attribute__ ((unused)) + +#undef INTERNAL_SYSCALL_ERROR_P +#define INTERNAL_SYSCALL_ERROR_P(val, err) ((void) (val), (long) (err)) + +#undef INTERNAL_SYSCALL_ERRNO +#define INTERNAL_SYSCALL_ERRNO(val, err) ((void) (err), val) + +/* Note that the original Linux syscall restart convention required the + instruction immediately preceding SYSCALL to initialize $v0 with the + syscall number. Then if a restart triggered, $v0 would have been + clobbered by the syscall interrupted, and needed to be reinititalized. + The kernel would decrement the PC by 4 before switching back to the + user mode so that $v0 had been reloaded before SYSCALL was executed + again. This implied the place $v0 was loaded from must have been + preserved across a syscall, e.g. an immediate, static register, stack + slot, etc. + + The convention was relaxed in Linux with a change applied to the kernel + GIT repository as commit 96187fb0bc30cd7919759d371d810e928048249d, that + first appeared in the 2.6.36 release. Since then the kernel has had + code that reloads $v0 upon syscall restart and resumes right at the + SYSCALL instruction, so no special arrangement is needed anymore. + + For backwards compatibility with existing kernel binaries we support + the old convention by choosing the instruction preceding SYSCALL + carefully. This also means we have to force a 32-bit encoding of the + microMIPS MOVE instruction if one is used. */ + +#ifdef __mips_micromips +# define MOVE32 "move32" +#else +# define MOVE32 "move" +#endif + +#undef INTERNAL_SYSCALL +#define INTERNAL_SYSCALL(name, err, nr, args...) \ + internal_syscall##nr ("li\t%0, %2\t\t\t# " #name "\n\t", \ + "IK" (SYS_ify (name)), \ + 0, err, args) + +#undef INTERNAL_SYSCALL_NCS +#define INTERNAL_SYSCALL_NCS(number, err, nr, args...) \ + internal_syscall##nr (MOVE32 "\t%0, %2\n\t", \ + "r" (__s0), \ + number, err, args) + +#define internal_syscall0(v0_init, input, number, err, dummy...) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set reorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall1(v0_init, input, number, err, arg1) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set reorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall2(v0_init, input, number, err, arg1, arg2) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0), "r" (__a1) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall3(v0_init, input, number, err, \ + arg1, arg2, arg3) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7"); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "=r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall4(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall5(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + register long __a4 asm ("$8") = (long) (arg5); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define internal_syscall6(v0_init, input, number, err, \ + arg1, arg2, arg3, arg4, arg5, arg6) \ +({ \ + long _sys_result; \ + \ + { \ + register long __s0 asm ("$16") __attribute__ ((unused)) \ + = (number); \ + register long __v0 asm ("$2"); \ + register long __a0 asm ("$4") = (long) (arg1); \ + register long __a1 asm ("$5") = (long) (arg2); \ + register long __a2 asm ("$6") = (long) (arg3); \ + register long __a3 asm ("$7") = (long) (arg4); \ + register long __a4 asm ("$8") = (long) (arg5); \ + register long __a5 asm ("$9") = (long) (arg6); \ + __asm__ volatile ( \ + ".set\tnoreorder\n\t" \ + v0_init \ + "syscall\n\t" \ + ".set\treorder" \ + : "=r" (__v0), "+r" (__a3) \ + : input, "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), \ + "r" (__a5) \ + : __SYSCALL_CLOBBERS); \ + err = __a3; \ + _sys_result = __v0; \ + } \ + _sys_result; \ +}) + +#define __SYSCALL_CLOBBERS "$1", "$3", "$10", "$11", "$12", "$13", \ + "$14", "$15", "$24", "$25", "hi", "lo", "memory" + +/* Standard MIPS syscalls have an error flag, and return a positive errno + when the error flag is set. Emulate this behaviour for vsyscalls so that + the INTERNAL_SYSCALL_{ERROR_P,ERRNO} macros work correctly. */ +#define INTERNAL_VSYSCALL_CALL(funcptr, err, nr, args...) \ + ({ \ + long _ret = funcptr (args); \ + err = ((unsigned long) (_ret) >= (unsigned long) -4095L); \ + if (err) \ + _ret = -_ret; \ + _ret; \ + }) + +/* List of system calls which are supported as vsyscalls. */ +#define HAVE_CLOCK_GETTIME_VSYSCALL 1 +#define HAVE_GETTIMEOFDAY_VSYSCALL 1 + +#endif /* __ASSEMBLER__ */ + +/* Pointer mangling is not yet supported for MIPS. */ +#define PTR_MANGLE(var) (void) (var) +#define PTR_DEMANGLE(var) (void) (var) + +#endif /* linux/mips/sysdep.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/semctl.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/semctl.c new file mode 100644 index 0000000000..2cd5d63af0 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/semctl.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2007-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <shlib-compat.h> + +#undef SHLIB_COMPAT +#define SHLIB_COMPAT(a, b, c) 0 + +#define DEFAULT_VERSION GLIBC_2_0 + +#include <sysdeps/unix/sysv/linux/semctl.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c new file mode 100644 index 0000000000..f008110742 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2007-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <shlib-compat.h> + +#undef SHLIB_COMPAT +#define SHLIB_COMPAT(a, b, c) 0 + +#define DEFAULT_VERSION GLIBC_2_0 + +#include <./sysdeps/unix/sysv/linux/shmctl.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/syscall.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/syscall.S new file mode 100644 index 0000000000..efaa4489c6 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/syscall.S @@ -0,0 +1,63 @@ +/* Copyright (C) 2001-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> + +#include <sys/asm.h> + +/* Usage: + long syscall (syscall_number, arg1, arg2, arg3, arg4, arg5, arg6, arg7) + + We need to do some arg shifting, syscall_number will be in v0. */ + + + .text +NESTED (syscall, SZREG, ra) + .mask 0x00010000, -SZREG + .fmask 0x00000000, 0 + PTR_ADDIU sp, -SZREG + cfi_adjust_cfa_offset (SZREG) + REG_S s0, (sp) + cfi_rel_offset (s0, 0) + + move s0, a0 + move a0, a1 /* shift arg1 - arg7. */ + move a1, a2 + move a2, a3 + move a3, a4 + move a4, a5 + move a5, a6 + move a6, a7 + + move v0, s0 /* Syscall number -> v0 */ + syscall /* Do the system call. */ + + REG_L s0, (sp) + cfi_restore (s0) + PTR_ADDIU sp, SZREG + cfi_adjust_cfa_offset (-SZREG) + bne a3, zero, L(error) + + ret + +L(error): + SETUP_GP64_REG (a0, syscall) + PTR_LA t9, __syscall_error + RESTORE_GP64_REG + jr t9 + +END (syscall) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h new file mode 100644 index 0000000000..0ed3e3d62c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h @@ -0,0 +1,249 @@ +/* Copyright (C) 2003-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <sysdeps/generic/sysdep.h> +#include <tls.h> +#ifndef __ASSEMBLER__ +# include <nptl/pthreadP.h> +#endif +#include <sys/asm.h> + +/* Gas will put the initial save of $gp into the CIE, because it appears to + happen before any instructions. So we use cfi_same_value instead of + cfi_restore. */ + +#if IS_IN (libc) || IS_IN (libpthread) || IS_IN (librt) + +#ifdef __PIC__ +# undef PSEUDO +# define PSEUDO(name, syscall_name, args) \ + .align 2; \ + L(pseudo_start): \ + cfi_startproc; \ + cfi_adjust_cfa_offset (STKSPACE); \ + cfi_rel_offset (gp, STKOFF_GP); \ + 99: PTR_LA t9,__syscall_error; \ + /* manual cpreturn */ \ + REG_L gp, STKOFF_GP(sp); \ + cfi_same_value (gp); \ + RESTORESTK; \ + jr t9; \ + .type __##syscall_name##_nocancel, @function; \ + .globl __##syscall_name##_nocancel; \ + __##syscall_name##_nocancel: \ + SAVESTK; \ + .cpsetup t9, STKOFF_GP, __##syscall_name##_nocancel; \ + cfi_rel_offset (gp, STKOFF_GP); \ + li v0, SYS_ify(syscall_name); \ + syscall; \ + bne a3, zero, SYSCALL_ERROR_LABEL; \ + /* manual cpreturn */ \ + REG_L gp, STKOFF_GP(sp); \ + cfi_same_value (gp); \ + RESTORESTK; \ + ret; \ + cfi_endproc; \ + .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \ + ENTRY (name) \ + SAVESTK; \ + .cpsetup t9, STKOFF_GP, name; \ + cfi_rel_offset (gp, STKOFF_GP); \ + SINGLE_THREAD_P(v1); \ + bne zero, v1, L(pseudo_cancel); \ + .set noreorder; \ + li v0, SYS_ify(syscall_name); \ + syscall; \ + .set reorder; \ + bne a3, zero, SYSCALL_ERROR_LABEL; \ + /* manual cpreturn */ \ + REG_L gp, STKOFF_GP(sp); \ + cfi_same_value (gp); \ + RESTORESTK; \ + ret; \ + L(pseudo_cancel): \ + cfi_adjust_cfa_offset (STKSPACE); \ + cfi_rel_offset (gp, STKOFF_GP); \ + REG_S ra, STKOFF_RA(sp); \ + cfi_rel_offset (ra, STKOFF_RA); \ + PUSHARGS_##args; /* save syscall args */ \ + CENABLE; \ + REG_S v0, STKOFF_SVMSK(sp); /* save mask */ \ + POPARGS_##args; /* restore syscall args */ \ + .set noreorder; \ + li v0, SYS_ify (syscall_name); \ + syscall; \ + .set reorder; \ + REG_S v0, STKOFF_SC_V0(sp); /* save syscall result */ \ + REG_S a3, STKOFF_SC_ERR(sp); /* save syscall error flag */ \ + REG_L a0, STKOFF_SVMSK(sp); /* pass mask as arg1 */ \ + CDISABLE; \ + REG_L a3, STKOFF_SC_ERR(sp); /* restore syscall error flag */ \ + REG_L ra, STKOFF_RA(sp); /* restore return address */ \ + REG_L v0, STKOFF_SC_V0(sp); /* restore syscall result */ \ + bne a3, zero, SYSCALL_ERROR_LABEL; \ + /* manual cpreturn */ \ + REG_L gp, STKOFF_GP(sp); \ + cfi_same_value (gp); \ + RESTORESTK; \ + L(pseudo_end): +#else +# undef PSEUDO +# define PSEUDO(name, syscall_name, args) \ + .align 2; \ + L(pseudo_start): \ + cfi_startproc; \ + cfi_adjust_cfa_offset (STKSPACE); \ + 99: RESTORESTK; \ + j __syscall_error; \ + .type __##syscall_name##_nocancel, @function; \ + .globl __##syscall_name##_nocancel; \ + __##syscall_name##_nocancel: \ + SAVESTK; \ + li v0, SYS_ify(syscall_name); \ + syscall; \ + bne a3, zero, SYSCALL_ERROR_LABEL; \ + RESTORESTK; \ + ret; \ + cfi_endproc; \ + .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \ + ENTRY (name) \ + SAVESTK; \ + SINGLE_THREAD_P(v1); \ + bne zero, v1, L(pseudo_cancel); \ + .set noreorder; \ + li v0, SYS_ify(syscall_name); \ + syscall; \ + .set reorder; \ + bne a3, zero, SYSCALL_ERROR_LABEL; \ + RESTORESTK; \ + ret; \ + L(pseudo_cancel): \ + cfi_adjust_cfa_offset (STKSPACE); \ + REG_S ra, STKOFF_RA(sp); \ + cfi_rel_offset (ra, STKOFF_RA); \ + PUSHARGS_##args; /* save syscall args */ \ + CENABLE; \ + REG_S v0, STKOFF_SVMSK(sp); /* save mask */ \ + POPARGS_##args; /* restore syscall args */ \ + .set noreorder; \ + li v0, SYS_ify (syscall_name); \ + syscall; \ + .set reorder; \ + REG_S v0, STKOFF_SC_V0(sp); /* save syscall result */ \ + REG_S a3, STKOFF_SC_ERR(sp); /* save syscall error flag */ \ + REG_L a0, STKOFF_SVMSK(sp); /* pass mask as arg1 */ \ + CDISABLE; \ + REG_L a3, STKOFF_SC_ERR(sp); /* restore syscall error flag */ \ + REG_L ra, STKOFF_RA(sp); /* restore return address */ \ + REG_L v0, STKOFF_SC_V0(sp); /* restore syscall result */ \ + bne a3, zero, SYSCALL_ERROR_LABEL; \ + RESTORESTK; \ + L(pseudo_end): +#endif + +# undef PSEUDO_END +# define PSEUDO_END(sym) cfi_endproc; .end sym; .size sym,.-sym + +# define PUSHARGS_0 /* nothing to do */ +# define PUSHARGS_1 PUSHARGS_0 REG_S a0, STKOFF_A0(sp); cfi_rel_offset (a0, STKOFF_A0); +# define PUSHARGS_2 PUSHARGS_1 REG_S a1, STKOFF_A1(sp); cfi_rel_offset (a1, STKOFF_A1); +# define PUSHARGS_3 PUSHARGS_2 REG_S a2, STKOFF_A2(sp); cfi_rel_offset (a2, STKOFF_A2); +# define PUSHARGS_4 PUSHARGS_3 REG_S a3, STKOFF_A3(sp); cfi_rel_offset (a3, STKOFF_A3); +# define PUSHARGS_5 PUSHARGS_4 REG_S a4, STKOFF_A4(sp); cfi_rel_offset (a3, STKOFF_A4); +# define PUSHARGS_6 PUSHARGS_5 REG_S a5, STKOFF_A5(sp); cfi_rel_offset (a3, STKOFF_A5); + +# define POPARGS_0 /* nothing to do */ +# define POPARGS_1 POPARGS_0 REG_L a0, STKOFF_A0(sp); +# define POPARGS_2 POPARGS_1 REG_L a1, STKOFF_A1(sp); +# define POPARGS_3 POPARGS_2 REG_L a2, STKOFF_A2(sp); +# define POPARGS_4 POPARGS_3 REG_L a3, STKOFF_A3(sp); +# define POPARGS_5 POPARGS_4 REG_L a4, STKOFF_A4(sp); +# define POPARGS_6 POPARGS_5 REG_L a5, STKOFF_A5(sp); + +/* Save an even number of slots. Should be 0 if an even number of slots + are used below, or SZREG if an odd number are used. */ +# ifdef __PIC__ +# define STK_PAD SZREG +# else +# define STK_PAD 0 +# endif + +/* Place values that we are more likely to use later in this sequence, i.e. + closer to the SP at function entry. If you do that, the are more + likely to already be in your d-cache. */ +# define STKOFF_A5 (STK_PAD) +# define STKOFF_A4 (STKOFF_A5 + SZREG) +# define STKOFF_A3 (STKOFF_A4 + SZREG) +# define STKOFF_A2 (STKOFF_A3 + SZREG) /* MT and more args. */ +# define STKOFF_A1 (STKOFF_A2 + SZREG) /* MT and 2 args. */ +# define STKOFF_A0 (STKOFF_A1 + SZREG) /* MT and 1 arg. */ +# define STKOFF_RA (STKOFF_A0 + SZREG) /* Used if MT. */ +# define STKOFF_SC_V0 (STKOFF_RA + SZREG) /* Used if MT. */ +# define STKOFF_SC_ERR (STKOFF_SC_V0 + SZREG) /* Used if MT. */ +# define STKOFF_SVMSK (STKOFF_SC_ERR + SZREG) /* Used if MT. */ + +# ifdef __PIC__ +# define STKOFF_GP (STKOFF_SVMSK + SZREG) /* Always used. */ +# define STKSPACE (STKOFF_GP + SZREG) +# else +# define STKSPACE (STKOFF_SVMSK + SZREG) +# endif + +# define SAVESTK PTR_SUBU sp, STKSPACE; cfi_adjust_cfa_offset(STKSPACE) +# define RESTORESTK PTR_ADDU sp, STKSPACE; cfi_adjust_cfa_offset(-STKSPACE) + +# ifdef __PIC__ +# define PSEUDO_JMP(sym) PTR_LA t9, sym; jalr t9 +# else +# define PSEUDO_JMP(sym) jal sym +# endif + +# if IS_IN (libpthread) +# define CENABLE PSEUDO_JMP (__pthread_enable_asynccancel) +# define CDISABLE PSEUDO_JMP (__pthread_disable_asynccancel) +# elif IS_IN (librt) +# define CENABLE PSEUDO_JMP (__librt_enable_asynccancel) +# define CDISABLE PSEUDO_JMP (__librt_disable_asynccancel) +# else +# define CENABLE PSEUDO_JMP (__libc_enable_asynccancel) +# define CDISABLE PSEUDO_JMP (__libc_disable_asynccancel) +# endif + +# ifndef __ASSEMBLER__ +# define SINGLE_THREAD_P \ + __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ + header.multiple_threads) \ + == 0, 1) +# else +# define SINGLE_THREAD_P(reg) \ + READ_THREAD_POINTER(reg); \ + lw reg, MULTIPLE_THREADS_OFFSET(reg) +#endif + +#elif !defined __ASSEMBLER__ + +# define SINGLE_THREAD_P 1 +# define NO_CANCELLATION 1 + +#endif + +#ifndef __ASSEMBLER__ +# define RTLD_SINGLE_THREAD_P \ + __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ + header.multiple_threads) == 0, 1) +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/umount.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/umount.c new file mode 100644 index 0000000000..64487c7819 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/umount.c @@ -0,0 +1,30 @@ +/* Copyright (C) 2000-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by David Huggins-Daines <dhd@debian.org>, 2000. + + 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, see + <http://www.gnu.org/licenses/>. */ + +/* Since we don't have an oldumount system call, do what the kernel + does down here. */ + +extern long int __umount2 (const char *name, int flags); + +long int +__umount (const char *name) +{ + return __umount2 (name, 0); +} + +weak_alias (__umount, umount); diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c new file mode 100644 index 0000000000..332ede92b9 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c @@ -0,0 +1,44 @@ +/* xstat64 using 64-bit MIPS stat system call. + Copyright (C) 1991-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stddef.h> +#include <sys/stat.h> +#include <kernel_stat.h> + +#include <sysdep.h> +#include <sys/syscall.h> + +#include <xstatconv.h> + +/* Get information about the file NAME in BUF. */ + +int +__xstat64 (int vers, const char *name, struct stat64 *buf) +{ + int result; + struct kernel_stat kbuf; + + result = INLINE_SYSCALL (stat, 2, name, &kbuf); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + + return result; +} + +hidden_def (__xstat64) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/pipe.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/pipe.S new file mode 100644 index 0000000000..1708888da4 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/pipe.S @@ -0,0 +1 @@ +#include <sysdeps/unix/mips/pipe.S> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/profil-counter.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/profil-counter.h new file mode 100644 index 0000000000..8a6a0bcf3d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/profil-counter.h @@ -0,0 +1,2 @@ +/* We can use the ix86 version. */ +#include <sysdeps/unix/sysv/linux/i386/profil-counter.h> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/pt-vfork.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/pt-vfork.S new file mode 100644 index 0000000000..65cc3823ac --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/pt-vfork.S @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/alpha/pt-vfork.S> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/putmsg.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/putmsg.c new file mode 100644 index 0000000000..ebc1680ca7 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/putmsg.c @@ -0,0 +1 @@ +#include <sysdeps/unix/sysv/linux/i386/putmsg.c> diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/readelflib.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/readelflib.c new file mode 100644 index 0000000000..243c85b69d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/readelflib.c @@ -0,0 +1,91 @@ +/* Copyright (C) 1999-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Alexandre Oliva <aoliva@redhat.com> + Based on work ../x86_64/readelflib.c, + contributed by Andreas Jaeger <aj@suse.de>, 1999 and + Jakub Jelinek <jakub@redhat.com>, 1999. + + 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, see + <http://www.gnu.org/licenses/>. */ + + +int process_elf32_file (const char *file_name, const char *lib, int *flag, + unsigned int *osversion, char **soname, + void *file_contents, size_t file_length); +int process_elf64_file (const char *file_name, const char *lib, int *flag, + unsigned int *osversion, char **soname, + void *file_contents, size_t file_length); + +/* Returns 0 if everything is ok, != 0 in case of error. */ +int +process_elf_file (const char *file_name, const char *lib, int *flag, + unsigned int *osversion, char **soname, void *file_contents, + size_t file_length) +{ + union + { + Elf64_Ehdr *eh64; + Elf32_Ehdr *eh32; + ElfW(Ehdr) *eh; + } + elf_header; + int ret; + + elf_header.eh = file_contents; + if (elf_header.eh->e_ident [EI_CLASS] == ELFCLASS32) + { + ret = process_elf32_file (file_name, lib, flag, osversion, soname, + file_contents, file_length); + if (!ret) + { + Elf32_Word flags = elf_header.eh32->e_flags; + int nan2008 = (flags & EF_MIPS_NAN2008) != 0; + + /* n32 libraries are always libc.so.6+, o32 only if 2008 NaN. */ + if ((flags & EF_MIPS_ABI2) != 0) + *flag = (nan2008 ? FLAG_MIPS64_LIBN32_NAN2008 + : FLAG_MIPS64_LIBN32) | FLAG_ELF_LIBC6; + else if (nan2008) + *flag = FLAG_MIPS_LIB32_NAN2008 | FLAG_ELF_LIBC6; + } + } + else + { + ret = process_elf64_file (file_name, lib, flag, osversion, soname, + file_contents, file_length); + /* n64 libraries are always libc.so.6+. */ + if (!ret) + { + Elf64_Word flags = elf_header.eh64->e_flags; + int nan2008 = (flags & EF_MIPS_NAN2008) != 0; + + *flag = (nan2008 ? FLAG_MIPS64_LIBN64_NAN2008 + : FLAG_MIPS64_LIBN64) | FLAG_ELF_LIBC6; + } + } + + return ret; +} + +#undef __ELF_NATIVE_CLASS +#undef process_elf_file +#define process_elf_file process_elf32_file +#define __ELF_NATIVE_CLASS 32 +#include "elf/readelflib.c" + +#undef __ELF_NATIVE_CLASS +#undef process_elf_file +#define process_elf_file process_elf64_file +#define __ELF_NATIVE_CLASS 64 +#include "elf/readelflib.c" diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/register-dump.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/register-dump.h new file mode 100644 index 0000000000..803b9fdb5c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/register-dump.h @@ -0,0 +1,121 @@ +/* Dump registers. + Copyright (C) 2000-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Andreas Jaeger <aj@suse.de>, 2000. + + 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sgidefs.h> +#include <sys/uio.h> +#include <_itoa.h> + +#if _MIPS_SIM == _ABIO32 +# define CTX_TYPE struct sigcontext * +# define CTX_REG(ctx, i) ((ctx)->sc_regs[(i)]) +# define CTX_PC(ctx) ((ctx)->sc_pc) +# define CTX_MDHI(ctx) ((ctx)->sc_mdhi) +# define CTX_MDLO(ctx) ((ctx)->sc_mdlo) +# define REG_HEX_SIZE 8 +#else +# define CTX_TYPE ucontext_t * +# define CTX_REG(ctx, i) ((ctx)->uc_mcontext.gregs[(i)]) +# define CTX_PC(ctx) ((ctx)->uc_mcontext.pc) +# define CTX_MDHI(ctx) ((ctx)->uc_mcontext.mdhi) +# define CTX_MDLO(ctx) ((ctx)->uc_mcontext.mdhi) +# define REG_HEX_SIZE 16 +#endif + +/* We will print the register dump in this format: + + R0 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX + R8 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX + R16 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX + R24 XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX + pc lo hi + XXXXXXXX XXXXXXXX XXXXXXXX + The FPU registers will not be printed. +*/ + +static void +hexvalue (_ITOA_WORD_TYPE 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, CTX_TYPE ctx) +{ + char regs[38][REG_HEX_SIZE]; + struct iovec iov[38 * 2 + 10]; + size_t nr = 0; + int i; + +#define ADD_STRING(str) \ + iov[nr].iov_base = (char *) str; \ + iov[nr].iov_len = strlen (str); \ + ++nr +#define ADD_MEM(str, len) \ + iov[nr].iov_base = str; \ + iov[nr].iov_len = len; \ + ++nr + + /* Generate strings of register contents. */ + for (i = 0; i < 32; i++) + hexvalue (CTX_REG (ctx, i), regs[i], REG_HEX_SIZE); + hexvalue (CTX_PC (ctx), regs[32], REG_HEX_SIZE); + hexvalue (CTX_MDHI (ctx), regs[33], REG_HEX_SIZE); + hexvalue (CTX_MDLO (ctx), regs[34], REG_HEX_SIZE); + + /* Generate the output. */ + ADD_STRING ("Register dump:\n\n R0 "); + for (i = 0; i < 8; i++) + { + ADD_MEM (regs[i], REG_HEX_SIZE); + ADD_STRING (" "); + } + ADD_STRING ("\n R8 "); + for (i = 8; i < 16; i++) + { + ADD_MEM (regs[i], REG_HEX_SIZE); + ADD_STRING (" "); + } + ADD_STRING ("\n R16 "); + for (i = 16; i < 24; i++) + { + ADD_MEM (regs[i], REG_HEX_SIZE); + ADD_STRING (" "); + } + ADD_STRING ("\n R24 "); + for (i = 24; i < 32; i++) + { + ADD_MEM (regs[i], REG_HEX_SIZE); + ADD_STRING (" "); + } + ADD_STRING ("\n pc lo hi\n "); + for (i = 32; i < 35; i++) + { + ADD_MEM (regs[i], REG_HEX_SIZE); + ADD_STRING (" "); + } + ADD_STRING ("\n"); + + /* Write the stuff out. */ + writev (fd, iov, nr); +} + + +#define REGISTER_DUMP register_dump (fd, ctx) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/setcontext.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/setcontext.S new file mode 100644 index 0000000000..4e363d98d0 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/setcontext.S @@ -0,0 +1,196 @@ +/* Set current context. + Copyright (C) 2009-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Maciej W. Rozycki <macro@codesourcery.com>. + + 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <sys/asm.h> +#include <sys/fpregdef.h> +#include <sys/regdef.h> + +#include "ucontext_i.h" + +/* int setcontext (const ucontext_t *ucp) */ + + .text + .set nomips16 +LOCALSZ = 0 +ARGSZ = 0 +MASK = 0x00000000 +#ifdef __PIC__ +LOCALSZ = 1 /* save gp */ +#endif +#if _MIPS_SIM != _ABIO32 +ARGSZ = 1 /* save a0 */ +# ifdef __PIC__ +MASK = 0x10000000 +# endif +#endif +FRAMESZ = (((ARGSZ + LOCALSZ) * SZREG) + ALSZ) & ALMASK +GPOFF = FRAMESZ - ((ARGSZ + 1) * SZREG) +#if _MIPS_SIM != _ABIO32 +A0OFF = FRAMESZ - (1 * SZREG) /* callee-allocated */ +#else +A0OFF = FRAMESZ + (0 * SZREG) /* caller-allocated */ +#endif + +NESTED (__setcontext, FRAMESZ, ra) + .mask MASK, -(ARGSZ * SZREG) + .fmask 0x00000000, 0 + +#ifdef __PIC__ + SETUP_GP +#endif + + PTR_ADDIU sp, -FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) + +#ifdef __PIC__ + SETUP_GP64_STACK (GPOFF, __setcontext) + SAVE_GP (GPOFF) +#endif + +#ifdef PROF + .set noat + move AT, ra + jal _mcount + .set at +#endif + + /* Check for the magic flag. */ + li v0, 1 + REG_L v1, (0 * SZREG + MCONTEXT_GREGS)(a0) /* zero */ + bne v0, v1, 98f + + REG_S a0, A0OFF(sp) + +/* rt_sigprocmask (SIG_SETMASK, &ucp->uc_sigmask, NULL, _NSIG8) */ + li a3, _NSIG8 + move a2, zero + PTR_ADDU a1, a0, UCONTEXT_SIGMASK + li a0, SIG_SETMASK + + li v0, SYS_ify (rt_sigprocmask) + syscall + bnez a3, 99f + + REG_L v0, A0OFF(sp) + +#ifdef __mips_hard_float +# if _MIPS_SIM == _ABI64 + l.d fs0, (24 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs1, (25 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs2, (26 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs3, (27 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs5, (29 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs6, (30 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs7, (31 * SZREG + MCONTEXT_FPREGS)(v0) + +# else /* _MIPS_SIM != _ABI64 */ + l.d fs0, (20 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs1, (22 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs2, (24 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs3, (26 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs5, (30 * SZREG + MCONTEXT_FPREGS)(v0) + +# endif /* _MIPS_SIM != _ABI64 */ + + lw v1, MCONTEXT_FPC_CSR(v0) + ctc1 v1, fcr31 +#endif /* __mips_hard_float */ + + /* Note the contents of argument registers will be random + unless makecontext() has been called. */ + REG_L a0, (4 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a1, (5 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a2, (6 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a3, (7 * SZREG + MCONTEXT_GREGS)(v0) +#if _MIPS_SIM != _ABIO32 + REG_L a4, (8 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a5, (9 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a6, (10 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a7, (11 * SZREG + MCONTEXT_GREGS)(v0) +#endif + + REG_L s0, (16 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s1, (17 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s2, (18 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s3, (19 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s4, (20 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s5, (21 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s6, (22 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s7, (23 * SZREG + MCONTEXT_GREGS)(v0) +#if ! defined (__PIC__) || _MIPS_SIM != _ABIO32 + REG_L gp, (28 * SZREG + MCONTEXT_GREGS)(v0) +#endif + REG_L sp, (29 * SZREG + MCONTEXT_GREGS)(v0) + REG_L fp, (30 * SZREG + MCONTEXT_GREGS)(v0) + REG_L ra, (31 * SZREG + MCONTEXT_GREGS)(v0) + REG_L t9, MCONTEXT_PC(v0) + + move v0, zero + jr t9 + +98: + /* This is a context obtained from a signal handler. + Perform a full restore by pushing the context + passed onto a simulated signal frame on the stack + and call the signal return syscall as if a signal + handler exited normally. */ + PTR_ADDIU sp, -((RT_SIGFRAME_SIZE + ALSZ) & ALMASK) + cfi_adjust_cfa_offset ((RT_SIGFRAME_SIZE + ALSZ) & ALMASK) + + /* Only ucontext is referred to from rt_sigreturn, + copy it. */ + PTR_ADDIU t1, sp, RT_SIGFRAME_UCONTEXT + li t3, ((UCONTEXT_SIZE + SZREG - 1) / SZREG) - 1 +0: + REG_L t2, (a0) + PTR_ADDIU a0, SZREG + REG_S t2, (t1) + PTR_ADDIU t1, SZREG + .set noreorder + bgtz t3, 0b + addiu t3, -1 + .set reorder + +/* rt_sigreturn () -- no arguments, sp points to struct rt_sigframe. */ + li v0, SYS_ify (rt_sigreturn) + syscall + + /* Restore the stack and fall through to the error + path. Successful rt_sigreturn never returns to + its calling place. */ + PTR_ADDIU sp, ((RT_SIGFRAME_SIZE + ALSZ) & ALMASK) + cfi_adjust_cfa_offset (-((RT_SIGFRAME_SIZE + ALSZ) & ALMASK)) +99: +#ifdef __PIC__ + PTR_LA t9, JUMPTARGET (__syscall_error) + RESTORE_GP64_STACK + PTR_ADDIU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + jr t9 + +#else /* ! __PIC__ */ + + j JUMPTARGET (__syscall_error) +#endif /* ! __PIC__ */ +PSEUDO_END (__setcontext) + +weak_alias (__setcontext, setcontext) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/setrlimit64.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/setrlimit64.c new file mode 100644 index 0000000000..d6feb59b30 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/setrlimit64.c @@ -0,0 +1,64 @@ +/* Copyright (C) 2013-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sgidefs.h> + +#if _MIPS_SIM == _ABIO32 || _MIPS_SIM == _ABIN32 + +# include <shlib-compat.h> + +# define setrlimit64 __new_setrlimit64 +# include <sysdeps/unix/sysv/linux/setrlimit64.c> +# undef setrlimit64 + +versioned_symbol (libc, __new_setrlimit64, setrlimit64, GLIBC_2_19); + +# if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_19) + +/* RLIM64_INFINITY was supposed to be a glibc convention rather than + anything seen by the kernel, but it ended being passed to the kernel + through the prlimit64 syscall. Given that a lot of binaries with + the wrong constant value are in the wild, provide a wrapper function + fixing the value before the syscall. */ + +# define OLD_RLIM64_INFINITY 0x7fffffffffffffffULL + +int +attribute_compat_text_section +__old_setrlimit64 (enum __rlimit_resource resource, + const struct rlimit64 *rlimits) +{ + struct rlimit64 krlimits; + + if (rlimits->rlim_cur == OLD_RLIM64_INFINITY) + krlimits.rlim_cur = RLIM64_INFINITY; + else + krlimits.rlim_cur = rlimits->rlim_cur; + if (rlimits->rlim_max == OLD_RLIM64_INFINITY) + krlimits.rlim_max = RLIM64_INFINITY; + else + krlimits.rlim_max = rlimits->rlim_max; + + return __new_setrlimit64 (resource, &krlimits); +} + +compat_symbol (libc, __old_setrlimit64, setrlimit64, GLIBC_2_2); +# endif + +#else /* !_ABI_O32 && !_ABI_N32 */ +# include <sysdeps/unix/sysv/linux/setrlimit64.c> +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/shlib-versions b/REORG.TODO/sysdeps/unix/sysv/linux/mips/shlib-versions new file mode 100644 index 0000000000..c5bd7db098 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/shlib-versions @@ -0,0 +1,27 @@ +libm=6 GLIBC_2.0 GLIBC_2.2 + +# Working mips versions were never released between 2.0 and 2.2. +libc=6 GLIBC_2.0 GLIBC_2.2 + +%ifdef HAVE_MIPS_NAN2008 +ld=ld-linux-mipsn8.so.1 GLIBC_2.0 GLIBC_2.2 +%else +ld=ld.so.1 GLIBC_2.0 GLIBC_2.2 +%endif +libdl=2 GLIBC_2.0 GLIBC_2.2 + +libresolv=2 GLIBC_2.0 GLIBC_2.2 + +libnss_files=2 GLIBC_2.0 GLIBC_2.2 +libnss_dns=2 GLIBC_2.0 GLIBC_2.2 +libnss_compat=2 GLIBC_2.0 GLIBC_2.2 +libnss_nis=2 GLIBC_2.0 GLIBC_2.2 +libnss_nisplus=2 GLIBC_2.0 GLIBC_2.2 +libnss_ldap=2 GLIBC_2.0 GLIBC_2.2 +libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2 + +libnsl=1 GLIBC_2.0 GLIBC_2.2 + +librt=1 GLIBC_2.0 GLIBC_2.2 + +libpthread=0 GLIBC_2.0 GLIBC_2.2 diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sigaction.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sigaction.c new file mode 100644 index 0000000000..f6be3f29b6 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sigaction.c @@ -0,0 +1,116 @@ +/* Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <sgidefs.h> +#include <signal.h> +#include <string.h> + +#include <sysdep.h> +#include <sys/syscall.h> + +#include <sgidefs.h> + +/* The difference here is that the sigaction structure used in the + kernel is not the same as we use in the libc. Therefore we must + translate it here. */ +#include <kernel_sigaction.h> + +#if _MIPS_SIM != _ABIO32 + +# ifdef __NR_rt_sigreturn +static void restore_rt (void) asm ("__restore_rt"); +# endif +# ifdef __NR_sigreturn +static void restore (void) asm ("__restore"); +# endif +#endif + +/* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ +int +__libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) +{ + int result; + + struct kernel_sigaction kact, koact; + + if (act) + { + kact.k_sa_handler = act->sa_handler; + memcpy (&kact.sa_mask, &act->sa_mask, sizeof (kernel_sigset_t)); + kact.sa_flags = act->sa_flags; +#ifdef HAVE_SA_RESTORER +# if _MIPS_SIM == _ABIO32 + kact.sa_restorer = act->sa_restorer; +# else + kact.sa_restorer = &restore_rt; +# endif +#endif + } + + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + result = INLINE_SYSCALL (rt_sigaction, 4, sig, + act ? &kact : NULL, + oact ? &koact : NULL, + sizeof (kernel_sigset_t)); + + if (oact && result >= 0) + { + oact->sa_handler = koact.k_sa_handler; + memcpy (&oact->sa_mask, &koact.sa_mask, + sizeof (kernel_sigset_t)); + oact->sa_flags = koact.sa_flags; +#ifdef HAVE_SA_RESTORER + oact->sa_restorer = koact.sa_restorer; +#endif + } + return result; +} +libc_hidden_def (__libc_sigaction) + +#include <nptl/sigaction.c> + + +/* NOTE: Please think twice before making any changes to the bits of + code below. GDB needs some intimate knowledge about it to + recognize them as signal trampolines, and make backtraces through + signal handlers work right. Important are both the names + (__restore_rt) and the exact instruction sequence. + If you ever feel the need to make any changes, please notify the + appropriate GDB maintainer. */ + +#define RESTORE(name, syscall) RESTORE2 (name, syscall) +#define RESTORE2(name, syscall) \ +asm \ + ( \ + ".align 4\n" \ + "__" #name ":\n" \ + " li $2, " #syscall "\n" \ + " syscall\n" \ + ); + +/* The return code for realtime-signals. */ +#if _MIPS_SIM != _ABIO32 +# ifdef __NR_rt_sigreturn +RESTORE (restore_rt, __NR_rt_sigreturn) +# endif +# ifdef __NR_sigreturn +RESTORE (restore, __NR_sigreturn) +# endif +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sigcontextinfo.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sigcontextinfo.h new file mode 100644 index 0000000000..c9bc08363c --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sigcontextinfo.h @@ -0,0 +1,42 @@ +/* Copyright (C) 2000-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Andreas Jaeger <aj@suse.de>, 2000. + + 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, see + <http://www.gnu.org/licenses/>. */ + + +#include <sgidefs.h> + +#if _MIPS_SIM == _ABIO32 + +#define SIGCONTEXT unsigned long _code, struct sigcontext * +#define SIGCONTEXT_EXTRA_ARGS _code, +#define GET_PC(ctx) ((void *) (unsigned long) ctx->sc_pc) +#define GET_FRAME(ctx) ((void *) (unsigned long) ctx->sc_regs[30]) +#define GET_STACK(ctx) ((void *) (unsigned long) ctx->sc_regs[29]) +#define CALL_SIGHANDLER(handler, signo, ctx) \ + (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx)) + +#else + +#define SIGCONTEXT unsigned long _code, ucontext_t * +#define SIGCONTEXT_EXTRA_ARGS _code, +#define GET_PC(ctx) ((void *) (unsigned long) ctx->uc_mcontext.pc) +#define GET_FRAME(ctx) ((void *) (unsigned long) ctx->uc_mcontext.gregs[30]) +#define GET_STACK(ctx) ((void *) (unsigned long) ctx->uc_mcontext.gregs[29]) +#define CALL_SIGHANDLER(handler, signo, ctx) \ + (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx)) + +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/swapcontext.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/swapcontext.S new file mode 100644 index 0000000000..fde6e5e48a --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/swapcontext.S @@ -0,0 +1,214 @@ +/* Save and set current context. + Copyright (C) 2009-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Maciej W. Rozycki <macro@codesourcery.com>. + + 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <sys/asm.h> +#include <sys/fpregdef.h> +#include <sys/regdef.h> + +#include "ucontext_i.h" + +/* int swapcontext (ucontext_t *oucp, const ucontext_t *ucp) */ + + .text + .set nomips16 +LOCALSZ = 0 +ARGSZ = 0 +MASK = 0x00000000 +#ifdef __PIC__ +LOCALSZ = 1 /* save gp */ +#endif +#if _MIPS_SIM != _ABIO32 +ARGSZ = 1 /* save a1 */ +# ifdef __PIC__ +MASK = 0x10000000 +# endif +#endif +FRAMESZ = (((ARGSZ + LOCALSZ) * SZREG) + ALSZ) & ALMASK +GPOFF = FRAMESZ - ((ARGSZ + 1) * SZREG) +#if _MIPS_SIM != _ABIO32 +A1OFF = FRAMESZ - (1 * SZREG) /* callee-allocated */ +#else +A1OFF = FRAMESZ + (1 * SZREG) /* caller-allocated */ +#endif + +NESTED (__swapcontext, FRAMESZ, ra) + .mask MASK, -(ARGSZ * SZREG) + .fmask 0x00000000, 0 + +#ifdef __PIC__ + SETUP_GP + + move a2, sp +# define _SP a2 + +# if _MIPS_SIM != _ABIO32 + move a3, gp +# define _GP a3 +# endif + + PTR_ADDIU sp, -FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) + SETUP_GP64_STACK (GPOFF, __swapcontext) + SAVE_GP (GPOFF) + +#else /* ! __PIC__ */ +# define _SP sp +# define _GP gp + +#endif /* ! __PIC__ */ + +#ifdef PROF + .set noat + move AT, ra + jal _mcount + .set at +#endif + + /* Store a magic flag. */ + li v1, 1 + REG_S v1, (0 * SZREG + MCONTEXT_GREGS)(a0) /* zero */ + + REG_S s0, (16 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s1, (17 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s2, (18 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s3, (19 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s4, (20 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s5, (21 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s6, (22 * SZREG + MCONTEXT_GREGS)(a0) + REG_S s7, (23 * SZREG + MCONTEXT_GREGS)(a0) +#if ! defined (__PIC__) || _MIPS_SIM != _ABIO32 + REG_S _GP, (28 * SZREG + MCONTEXT_GREGS)(a0) +#endif + REG_S _SP, (29 * SZREG + MCONTEXT_GREGS)(a0) + REG_S fp, (30 * SZREG + MCONTEXT_GREGS)(a0) + REG_S ra, (31 * SZREG + MCONTEXT_GREGS)(a0) + REG_S ra, MCONTEXT_PC(a0) + +#ifdef __mips_hard_float +# if _MIPS_SIM == _ABI64 + s.d fs0, (24 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs1, (25 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs2, (26 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs3, (27 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs5, (29 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs6, (30 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs7, (31 * SZREG + MCONTEXT_FPREGS)(a0) + +# else /* _MIPS_SIM != _ABI64 */ + s.d fs0, (20 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs1, (22 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs2, (24 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs3, (26 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(a0) + s.d fs5, (30 * SZREG + MCONTEXT_FPREGS)(a0) + +# endif /* _MIPS_SIM != _ABI64 */ + + cfc1 v1, fcr31 + sw v1, MCONTEXT_FPC_CSR(a0) +#endif /* __mips_hard_float */ + + REG_S a1, A1OFF(sp) + +/* rt_sigprocmask (SIG_SETMASK, &ucp->uc_sigmask, &oucp->uc_sigmask, _NSIG8) */ + li a3, _NSIG8 + PTR_ADDU a2, a0, UCONTEXT_SIGMASK + PTR_ADDU a1, a1, UCONTEXT_SIGMASK + li a0, SIG_SETMASK + + li v0, SYS_ify (rt_sigprocmask) + syscall + bnez a3, 99f + + REG_L v0, A1OFF(sp) + +#ifdef __mips_hard_float +# if _MIPS_SIM == _ABI64 + l.d fs0, (24 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs1, (25 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs2, (26 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs3, (27 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs5, (29 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs6, (30 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs7, (31 * SZREG + MCONTEXT_FPREGS)(v0) + +# else /* _MIPS_SIM != _ABI64 */ + l.d fs0, (20 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs1, (22 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs2, (24 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs3, (26 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs4, (28 * SZREG + MCONTEXT_FPREGS)(v0) + l.d fs5, (30 * SZREG + MCONTEXT_FPREGS)(v0) + +# endif /* _MIPS_SIM != _ABI64 */ + + lw v1, MCONTEXT_FPC_CSR(v0) + ctc1 v1, fcr31 +#endif /* __mips_hard_float */ + + /* Note the contents of argument registers will be random + unless makecontext() has been called. */ + REG_L a0, (4 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a1, (5 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a2, (6 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a3, (7 * SZREG + MCONTEXT_GREGS)(v0) +#if _MIPS_SIM != _ABIO32 + REG_L a4, (8 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a5, (9 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a6, (10 * SZREG + MCONTEXT_GREGS)(v0) + REG_L a7, (11 * SZREG + MCONTEXT_GREGS)(v0) +#endif + + REG_L s0, (16 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s1, (17 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s2, (18 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s3, (19 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s4, (20 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s5, (21 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s6, (22 * SZREG + MCONTEXT_GREGS)(v0) + REG_L s7, (23 * SZREG + MCONTEXT_GREGS)(v0) +#if ! defined (__PIC__) || _MIPS_SIM != _ABIO32 + REG_L gp, (28 * SZREG + MCONTEXT_GREGS)(v0) +#endif + REG_L sp, (29 * SZREG + MCONTEXT_GREGS)(v0) + REG_L fp, (30 * SZREG + MCONTEXT_GREGS)(v0) + REG_L ra, (31 * SZREG + MCONTEXT_GREGS)(v0) + REG_L t9, MCONTEXT_PC(v0) + + move v0, zero + jr t9 + +99: +#ifdef __PIC__ + PTR_LA t9, JUMPTARGET (__syscall_error) + RESTORE_GP64_STACK + PTR_ADDIU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + jr t9 + +#else /* ! __PIC__ */ + + j JUMPTARGET (__syscall_error) +#endif /* ! __PIC__ */ +PSEUDO_END (__swapcontext) + +weak_alias (__swapcontext, swapcontext) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/cachectl.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/cachectl.h new file mode 100644 index 0000000000..4bad3754b2 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/cachectl.h @@ -0,0 +1,41 @@ +/* Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_CACHECTL_H +#define _SYS_CACHECTL_H 1 + +#include <features.h> + +/* + * Get the kernel definition for the op bits. + */ +#include <asm/cachectl.h> + +__BEGIN_DECLS + +#ifdef __USE_MISC +extern int cachectl (void *__addr, const int __nbytes, const int __op) __THROW; +#endif +extern int __cachectl (void *__addr, const int __nbytes, const int __op) __THROW; +#ifdef __USE_MISC +extern int cacheflush (void *__addr, const int __nbytes, const int __op) __THROW; +#endif +extern int _flush_cache (char *__addr, const int __nbytes, const int __op) __THROW; + +__END_DECLS + +#endif /* sys/cachectl.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/procfs.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/procfs.h new file mode 100644 index 0000000000..4c6001bd17 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/procfs.h @@ -0,0 +1,126 @@ +/* Copyright (C) 1996-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_PROCFS_H +#define _SYS_PROCFS_H 1 + +/* This is somehow modelled after the file of the same name on SysVr4 + systems. It provides a definition of the core file format for ELF + used on Linux. */ + +#include <features.h> +#include <sgidefs.h> +#include <sys/time.h> +#include <sys/types.h> +#include <sys/user.h> +#include <sgidefs.h> + +/* ELF register definitions */ +#define ELF_NGREG 45 +#define ELF_NFPREG 33 + +#if _MIPS_SIM == _ABIN32 +__extension__ typedef unsigned long long elf_greg_t; +#else +typedef unsigned long elf_greg_t; +#endif +typedef elf_greg_t elf_gregset_t[ELF_NGREG]; + +typedef double elf_fpreg_t; +typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; + +__BEGIN_DECLS + +struct elf_siginfo + { + int si_signo; /* Signal number. */ + int si_code; /* Extra code. */ + int si_errno; /* Errno. */ + }; + + +/* Definitions to generate Intel SVR4-like core files. These mostly + have the same names as the SVR4 types with "elf_" tacked on the + front to prevent clashes with linux definitions, and the typedef + forms have been avoided. This is mostly like the SVR4 structure, + but more Linuxy, with things that Linux does not support and which + gdb doesn't really use excluded. Fields present but not used are + marked with "XXX". */ +struct elf_prstatus + { + struct elf_siginfo pr_info; /* Info associated with signal. */ + short int pr_cursig; /* Current signal. */ +#if _MIPS_SIM == _ABIN32 + __extension__ unsigned long long int pr_sigpend; + __extension__ unsigned long long int pr_sighold; +#else + unsigned long int pr_sigpend; /* Set of pending signals. */ + unsigned long int pr_sighold; /* Set of held signals. */ +#endif + __pid_t pr_pid; + __pid_t pr_ppid; + __pid_t pr_pgrp; + __pid_t pr_sid; + struct timeval pr_utime; /* User time. */ + struct timeval pr_stime; /* System time. */ + struct timeval pr_cutime; /* Cumulative user time. */ + struct timeval pr_cstime; /* Cumulative system time. */ + elf_gregset_t pr_reg; /* GP registers. */ + int pr_fpvalid; /* True if math copro being used. */ + }; + + +#define ELF_PRARGSZ (80) /* Number of chars for args */ + +struct elf_prpsinfo + { + char pr_state; /* Numeric process state. */ + char pr_sname; /* Char for pr_state. */ + char pr_zomb; /* Zombie. */ + char pr_nice; /* Nice val. */ +#if _MIPS_SIM == _ABIN32 + __extension__ unsigned long long int pr_flag; +#else + unsigned long int pr_flag; /* Flags. */ +#endif + long pr_uid; + long pr_gid; + int pr_pid, pr_ppid, pr_pgrp, pr_sid; + /* Lots missing */ + char pr_fname[16]; /* Filename of executable. */ + char pr_psargs[ELF_PRARGSZ]; /* Initial part of arg list. */ + }; + + +/* Addresses. */ +typedef void *psaddr_t; + +/* Register sets. Linux has different names. */ +typedef elf_gregset_t prgregset_t; +typedef elf_fpregset_t prfpregset_t; + +/* We don't have any differences between processes and threads, + therefore habe only ine PID type. */ +typedef __pid_t lwpid_t; + + +typedef struct elf_prstatus prstatus_t; +typedef struct elf_prpsinfo prpsinfo_t; + +__END_DECLS + +#endif /* sys/procfs.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/sysmips.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/sysmips.h new file mode 100644 index 0000000000..a059b7094d --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/sysmips.h @@ -0,0 +1,42 @@ +/* Copyright (C) 1995-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_SYSMIPS_H +#define _SYS_SYSMIPS_H 1 + +#include <features.h> + +/* + * Commands for the sysmips(2) call + * + * sysmips(2) is deprecated - though some existing software uses it. + * We only support the following commands. Sysmips exists for compatibility + * purposes only so new software should avoid it. + */ +#define SETNAME 1 /* set hostname */ +#define FLUSH_CACHE 3 /* writeback and invalidate caches */ +#define MIPS_FIXADE 7 /* control address error fixing */ +#define MIPS_RDNVRAM 10 /* read NVRAM */ +#define MIPS_ATOMIC_SET 2001 /* atomically set variable */ + +__BEGIN_DECLS + +extern int sysmips (const int __cmd, ...) __THROW; + +__END_DECLS + +#endif /* sys/sysmips.h */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/ucontext.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/ucontext.h new file mode 100644 index 0000000000..048e9a46b7 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/ucontext.h @@ -0,0 +1,125 @@ +/* Copyright (C) 1997-2017 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, see + <http://www.gnu.org/licenses/>. */ + +/* Don't rely on this, the interface is currently messed up and may need to + be broken to be fixed. */ +#ifndef _SYS_UCONTEXT_H +#define _SYS_UCONTEXT_H 1 + +#include <features.h> + +#include <bits/types/sigset_t.h> +#include <bits/sigcontext.h> +#include <bits/types/stack_t.h> + +#include <sgidefs.h> + + +/* Type for general register. Even in o32 we assume 64-bit registers, + like the kernel. */ +__extension__ typedef unsigned long long int greg_t; + +/* Number of general registers. */ +#define __NGREG 32 +#define __NFPREG 32 +#ifdef __USE_MISC +# define NGREG __NGREG +# define NFPREG __NFPREG +#endif + +/* Container for all general registers. */ +typedef greg_t gregset_t[__NGREG]; + +#ifdef __USE_MISC +# define __ctx(fld) fld +#else +# define __ctx(fld) __ ## fld +#endif + +/* Container for all FPU registers. */ +typedef struct fpregset { + union { + double __ctx(fp_dregs)[__NFPREG]; + struct { + float _fp_fregs; + unsigned int _fp_pad; + } __ctx(fp_fregs)[__NFPREG]; + } __ctx(fp_r); +} fpregset_t; + + +/* Context to describe whole processor state. */ +#if _MIPS_SIM == _ABIO32 +/* Earlier versions of glibc for mips had an entirely different + definition of mcontext_t, that didn't even resemble the + corresponding kernel data structure. Fortunately, makecontext, + [gs]etcontext et all were not implemented back then, so this can + still be rectified. */ +typedef struct + { + unsigned int __ctx(regmask); + unsigned int __ctx(status); + greg_t __ctx(pc); + gregset_t __ctx(gregs); + fpregset_t __ctx(fpregs); + unsigned int __ctx(fp_owned); + unsigned int __ctx(fpc_csr); + unsigned int __ctx(fpc_eir); + unsigned int __ctx(used_math); + unsigned int __ctx(dsp); + greg_t __ctx(mdhi); + greg_t __ctx(mdlo); + unsigned long __ctx(hi1); + unsigned long __ctx(lo1); + unsigned long __ctx(hi2); + unsigned long __ctx(lo2); + unsigned long __ctx(hi3); + unsigned long __ctx(lo3); + } mcontext_t; +#else +typedef struct + { + gregset_t __ctx(gregs); + fpregset_t __ctx(fpregs); + greg_t __ctx(mdhi); + greg_t __ctx(hi1); + greg_t __ctx(hi2); + greg_t __ctx(hi3); + greg_t __ctx(mdlo); + greg_t __ctx(lo1); + greg_t __ctx(lo2); + greg_t __ctx(lo3); + greg_t __ctx(pc); + unsigned int __ctx(fpc_csr); + unsigned int __ctx(used_math); + unsigned int __ctx(dsp); + unsigned int __glibc_reserved1; + } mcontext_t; +#endif + +#undef __ctx + +/* 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 */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/user.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/user.h new file mode 100644 index 0000000000..9d11d65880 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sys/user.h @@ -0,0 +1,210 @@ +/* Copyright (C) 2002-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SYS_USER_H +#define _SYS_USER_H 1 + +#include <sgidefs.h> +#include <stddef.h> + +/* The whole purpose of this file is for GDB and GDB only. Don't read + too much into it. Don't use it for anything other than GDB unless + you know what you are doing. */ + +/* #include <asm/reg.h> */ +/* Instead of including the kernel header, that will vary depending on + whether the 32- or the 64-bit kernel is installed, we paste its + contents here. Note that the fact that the file is inline here, + instead of included separately, doesn't change in any way the + licensing status of a program that includes user.h. Since this is + for gdb alone, and gdb is GPLed, no surprises here. */ +#if _MIPS_SIM == _ABIO32 +/* + * Various register offset definitions for debuggers, core file + * examiners and whatnot. + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + * + * Copyright (C) 1995, 1999 by Ralf Baechle + */ +#ifndef __ASM_MIPS_REG_H +#define __ASM_MIPS_REG_H + +/* + * This defines/structures correspond to the register layout on stack - + * if the order here is changed, it needs to be updated in + * include/asm-mips/stackframe.h + */ +#define EF_REG0 6 +#define EF_REG1 7 +#define EF_REG2 8 +#define EF_REG3 9 +#define EF_REG4 10 +#define EF_REG5 11 +#define EF_REG6 12 +#define EF_REG7 13 +#define EF_REG8 14 +#define EF_REG9 15 +#define EF_REG10 16 +#define EF_REG11 17 +#define EF_REG12 18 +#define EF_REG13 19 +#define EF_REG14 20 +#define EF_REG15 21 +#define EF_REG16 22 +#define EF_REG17 23 +#define EF_REG18 24 +#define EF_REG19 25 +#define EF_REG20 26 +#define EF_REG21 27 +#define EF_REG22 28 +#define EF_REG23 29 +#define EF_REG24 30 +#define EF_REG25 31 +/* + * k0/k1 unsaved + */ +#define EF_REG28 34 +#define EF_REG29 35 +#define EF_REG30 36 +#define EF_REG31 37 + +/* + * Saved special registers + */ +#define EF_LO 38 +#define EF_HI 39 + +#define EF_CP0_EPC 40 +#define EF_CP0_BADVADDR 41 +#define EF_CP0_STATUS 42 +#define EF_CP0_CAUSE 43 + +#define EF_SIZE 180 /* size in bytes */ + +#endif /* __ASM_MIPS_REG_H */ + +#else /* _MIPS_SIM != _ABIO32 */ + +/* + * Various register offset definitions for debuggers, core file + * examiners and whatnot. + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + * + * Copyright (C) 1995, 1999 Ralf Baechle + * Copyright (C) 1995, 1999 Silicon Graphics + */ +#ifndef _ASM_REG_H +#define _ASM_REG_H + +/* + * This defines/structures correspond to the register layout on stack - + * if the order here is changed, it needs to be updated in + * include/asm-mips/stackframe.h + */ +#define EF_REG0 0 +#define EF_REG1 1 +#define EF_REG2 2 +#define EF_REG3 3 +#define EF_REG4 4 +#define EF_REG5 5 +#define EF_REG6 6 +#define EF_REG7 7 +#define EF_REG8 8 +#define EF_REG9 9 +#define EF_REG10 10 +#define EF_REG11 11 +#define EF_REG12 12 +#define EF_REG13 13 +#define EF_REG14 14 +#define EF_REG15 15 +#define EF_REG16 16 +#define EF_REG17 17 +#define EF_REG18 18 +#define EF_REG19 19 +#define EF_REG20 20 +#define EF_REG21 21 +#define EF_REG22 22 +#define EF_REG23 23 +#define EF_REG24 24 +#define EF_REG25 25 +/* + * k0/k1 unsaved + */ +#define EF_REG28 28 +#define EF_REG29 29 +#define EF_REG30 30 +#define EF_REG31 31 + +/* + * Saved special registers + */ +#define EF_LO 32 +#define EF_HI 33 + +#define EF_CP0_EPC 34 +#define EF_CP0_BADVADDR 35 +#define EF_CP0_STATUS 36 +#define EF_CP0_CAUSE 37 + +#define EF_SIZE 304 /* size in bytes */ + +#endif /* _ASM_REG_H */ + +#endif /* _MIPS_SIM != _ABIO32 */ + +#if _MIPS_SIM == _ABIO32 + +struct user +{ + unsigned long regs[EF_SIZE/4+64]; /* integer and fp regs */ + size_t u_tsize; /* text size (pages) */ + size_t u_dsize; /* data size (pages) */ + size_t u_ssize; /* stack size (pages) */ + unsigned long start_code; /* text starting address */ + unsigned long start_data; /* data starting address */ + unsigned long start_stack; /* stack starting address */ + long int signal; /* signal causing core dump */ + void* u_ar0; /* help gdb find registers */ + unsigned long magic; /* identifies a core file */ + char u_comm[32]; /* user command name */ +}; + +#else + +struct user { + __extension__ unsigned long regs[EF_SIZE/8+64]; /* integer and fp regs */ + __extension__ unsigned long u_tsize; /* text size (pages) */ + __extension__ unsigned long u_dsize; /* data size (pages) */ + __extension__ unsigned long u_ssize; /* stack size (pages) */ + __extension__ unsigned long long start_code; /* text starting address */ + __extension__ unsigned long long start_data; /* data starting address */ + __extension__ unsigned long long start_stack; /* stack starting address */ + __extension__ long long signal; /* signal causing core dump */ + __extension__ unsigned long long u_ar0; /* help gdb find registers */ + __extension__ unsigned long long magic; /* identifies a core file */ + char u_comm[32]; /* user command name */ +}; + +#endif + +#endif /* _SYS_USER_H */ diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/syscalls.list b/REORG.TODO/sysdeps/unix/sysv/linux/mips/syscalls.list new file mode 100644 index 0000000000..f3621cdd51 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/syscalls.list @@ -0,0 +1,23 @@ +# File name Caller Syscall name Args Strong name Weak names + +# +# Calls for compatibility with existing MIPS OS implementations and +# compilers. +# +cachectl - cachectl i:pii __cachectl cachectl +cacheflush - cacheflush i:pii _flush_cache cacheflush +sysmips - sysmips i:iiii __sysmips sysmips + +# +# Socket functions; Linux/MIPS doesn't use the socketcall(2) wrapper; +# it's provided for compatibility, though. +# +bind - bind i:ipi __bind bind +getpeername - getpeername i:ipp __getpeername getpeername +getsockname - getsockname i:ipp __getsockname getsockname +getsockopt - getsockopt i:iiiBN __getsockopt getsockopt +listen - listen i:ii __listen listen +setsockopt - setsockopt i:iiibn __setsockopt setsockopt +shutdown - shutdown i:ii __shutdown shutdown +socket - socket i:iii __socket socket +socketpair - socketpair i:iiif __socketpair socketpair diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h new file mode 100644 index 0000000000..0e45f00242 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h @@ -0,0 +1,190 @@ +/* Copyright (C) 2003-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <sysdep.h> +#include <sysdeps/generic/sysdep.h> +#include <tls.h> +#ifndef __ASSEMBLER__ +# include <nptl/pthreadP.h> +#endif + +#if IS_IN (libc) || IS_IN (libpthread) || IS_IN (librt) + +# ifdef __PIC__ +# define PSEUDO_CPLOAD .cpload t9; +# define PSEUDO_ERRJMP la t9, __syscall_error; jr t9; +# define PSEUDO_SAVEGP sw gp, 32(sp); cfi_rel_offset (gp, 32); +# define PSEUDO_LOADGP lw gp, 32(sp); +# else +# define PSEUDO_CPLOAD +# define PSEUDO_ERRJMP j __syscall_error; +# define PSEUDO_SAVEGP +# define PSEUDO_LOADGP +# endif + +# undef PSEUDO +# define PSEUDO(name, syscall_name, args) \ + .align 2; \ + .set nomips16; \ + L(pseudo_start): \ + cfi_startproc; \ + 99: PSEUDO_ERRJMP \ + .type __##syscall_name##_nocancel, @function; \ + .globl __##syscall_name##_nocancel; \ + __##syscall_name##_nocancel: \ + .set noreorder; \ + PSEUDO_CPLOAD \ + li v0, SYS_ify(syscall_name); \ + syscall; \ + .set reorder; \ + bne a3, zero, 99b; \ + ret; \ + cfi_endproc; \ + .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \ + ENTRY (name) \ + .set noreorder; \ + PSEUDO_CPLOAD \ + .set reorder; \ + SINGLE_THREAD_P(v1); \ + bne zero, v1, L(pseudo_cancel); \ + .set noreorder; \ + li v0, SYS_ify(syscall_name); \ + syscall; \ + .set reorder; \ + bne a3, zero, 99b; \ + ret; \ + L(pseudo_cancel): \ + SAVESTK_##args; \ + sw ra, 28(sp); \ + cfi_rel_offset (ra, 28); \ + PSEUDO_SAVEGP \ + PUSHARGS_##args; /* save syscall args */ \ + CENABLE; \ + PSEUDO_LOADGP \ + sw v0, 44(sp); /* save mask */ \ + POPARGS_##args; /* restore syscall args */ \ + .set noreorder; \ + li v0, SYS_ify (syscall_name); \ + syscall; \ + .set reorder; \ + sw v0, 36(sp); /* save syscall result */ \ + sw a3, 40(sp); /* save syscall error flag */ \ + lw a0, 44(sp); /* pass mask as arg1 */ \ + CDISABLE; \ + PSEUDO_LOADGP \ + lw v0, 36(sp); /* restore syscall result */ \ + lw a3, 40(sp); /* restore syscall error flag */ \ + lw ra, 28(sp); /* restore return address */ \ + .set noreorder; \ + bne a3, zero, 99b; \ + RESTORESTK; \ + L(pseudo_end): \ + .set reorder; + +# undef PSEUDO_END +# define PSEUDO_END(sym) cfi_endproc; .end sym; .size sym,.-sym + +# define PUSHARGS_0 /* nothing to do */ +# define PUSHARGS_1 PUSHARGS_0 sw a0, 0(sp); cfi_rel_offset (a0, 0); +# define PUSHARGS_2 PUSHARGS_1 sw a1, 4(sp); cfi_rel_offset (a1, 4); +# define PUSHARGS_3 PUSHARGS_2 sw a2, 8(sp); cfi_rel_offset (a2, 8); +# define PUSHARGS_4 PUSHARGS_3 sw a3, 12(sp); cfi_rel_offset (a3, 12); +# define PUSHARGS_5 PUSHARGS_4 /* handled by SAVESTK_## */ +# define PUSHARGS_6 PUSHARGS_5 +# define PUSHARGS_7 PUSHARGS_6 + +# define POPARGS_0 /* nothing to do */ +# define POPARGS_1 POPARGS_0 lw a0, 0(sp); +# define POPARGS_2 POPARGS_1 lw a1, 4(sp); +# define POPARGS_3 POPARGS_2 lw a2, 8(sp); +# define POPARGS_4 POPARGS_3 lw a3, 12(sp); +# define POPARGS_5 POPARGS_4 /* args already in new stackframe */ +# define POPARGS_6 POPARGS_5 +# define POPARGS_7 POPARGS_6 + + +# define STKSPACE 48 +# define SAVESTK_0 subu sp, STKSPACE; cfi_adjust_cfa_offset(STKSPACE) +# define SAVESTK_1 SAVESTK_0 +# define SAVESTK_2 SAVESTK_1 +# define SAVESTK_3 SAVESTK_2 +# define SAVESTK_4 SAVESTK_3 +# define SAVESTK_5 lw t0, 16(sp); \ + SAVESTK_0; \ + sw t0, 16(sp) + +# define SAVESTK_6 lw t0, 16(sp); \ + lw t1, 20(sp); \ + SAVESTK_0; \ + sw t0, 16(sp); \ + sw t1, 20(sp) + +# define SAVESTK_7 lw t0, 16(sp); \ + lw t1, 20(sp); \ + lw t2, 24(sp); \ + SAVESTK_0; \ + sw t0, 16(sp); \ + sw t1, 20(sp); \ + sw t2, 24(sp) + +# define RESTORESTK addu sp, STKSPACE; cfi_adjust_cfa_offset(-STKSPACE) + + +# ifdef __PIC__ +/* We use jalr rather than jal. This means that the assembler will not + automatically restore $gp (in case libc has multiple GOTs) so we must + do it manually - which we have to do anyway since we don't use .cprestore. + It also shuts up the assembler warning about not using .cprestore. */ +# define PSEUDO_JMP(sym) la t9, sym; jalr t9; +# else +# define PSEUDO_JMP(sym) jal sym; +# endif + +# if IS_IN (libpthread) +# define CENABLE PSEUDO_JMP (__pthread_enable_asynccancel) +# define CDISABLE PSEUDO_JMP (__pthread_disable_asynccancel) +# elif IS_IN (librt) +# define CENABLE PSEUDO_JMP (__librt_enable_asynccancel) +# define CDISABLE PSEUDO_JMP (__librt_disable_asynccancel) +# else +# define CENABLE PSEUDO_JMP (__libc_enable_asynccancel) +# define CDISABLE PSEUDO_JMP (__libc_disable_asynccancel) +# endif + +# ifndef __ASSEMBLER__ +# define SINGLE_THREAD_P \ + __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ + header.multiple_threads) \ + == 0, 1) +# else +# define SINGLE_THREAD_P(reg) \ + READ_THREAD_POINTER(reg); \ + lw reg, MULTIPLE_THREADS_OFFSET(reg) +#endif + +#elif !defined __ASSEMBLER__ + +# define SINGLE_THREAD_P 1 +# define NO_CANCELLATION 1 + +#endif + +#ifndef __ASSEMBLER__ +# define RTLD_SINGLE_THREAD_P \ + __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ + header.multiple_threads) == 0, 1) +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/ucontext_i.sym b/REORG.TODO/sysdeps/unix/sysv/linux/mips/ucontext_i.sym new file mode 100644 index 0000000000..f14b886407 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/ucontext_i.sym @@ -0,0 +1,52 @@ +#include <inttypes.h> +#include <signal.h> +#include <stddef.h> +#include <sys/ucontext.h> + +#include <kernel_rt_sigframe.h> + +-- Constants used by the rt_sigprocmask call. + +SIG_BLOCK +SIG_SETMASK + +_NSIG8 (_NSIG / 8) + +-- Offsets of the fields in the kernel rt_sigframe_t structure. +#define rt_sigframe(member) offsetof (kernel_rt_sigframe_t, member) + +RT_SIGFRAME_UCONTEXT rt_sigframe (rs_uc) + +RT_SIGFRAME_SIZE sizeof (kernel_rt_sigframe_t) + +-- Offsets of the fields in the ucontext_t structure. +#define ucontext(member) offsetof (ucontext_t, member) +#define stack(member) ucontext (uc_stack.member) +#define mcontext(member) ucontext (uc_mcontext.member) + +UCONTEXT_FLAGS ucontext (uc_flags) +UCONTEXT_LINK ucontext (uc_link) +UCONTEXT_STACK ucontext (uc_stack) +UCONTEXT_MCONTEXT ucontext (uc_mcontext) +UCONTEXT_SIGMASK ucontext (uc_sigmask) + +STACK_SP stack (ss_sp) +STACK_SIZE stack (ss_size) +STACK_FLAGS stack (ss_flags) + +MCONTEXT_GREGS mcontext (gregs) +MCONTEXT_FPREGS mcontext (fpregs) +MCONTEXT_MDHI mcontext (mdhi) +MCONTEXT_HI1 mcontext (hi1) +MCONTEXT_HI2 mcontext (hi2) +MCONTEXT_HI3 mcontext (hi3) +MCONTEXT_MDLO mcontext (mdlo) +MCONTEXT_LO1 mcontext (lo1) +MCONTEXT_LO2 mcontext (lo2) +MCONTEXT_LO3 mcontext (lo3) +MCONTEXT_PC mcontext (pc) +MCONTEXT_FPC_CSR mcontext (fpc_csr) +MCONTEXT_USED_MATH mcontext (used_math) +MCONTEXT_DSP mcontext (dsp) + +UCONTEXT_SIZE sizeof (ucontext_t) diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/ustat.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/ustat.c new file mode 100644 index 0000000000..79e0736db0 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/ustat.c @@ -0,0 +1,35 @@ +/* Copyright (C) 1997-2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. + + 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <sys/ustat.h> +#include <sys/sysmacros.h> + +#include <sysdep.h> +#include <sys/syscall.h> + +int +ustat (dev_t dev, struct ustat *ubuf) +{ + unsigned long k_dev; + + /* We must convert the value to dev_t type used by the kernel. */ + k_dev = ((major (dev) & 0xff) << 8) | (minor (dev) & 0xff); + + return INLINE_SYSCALL (ustat, 2, k_dev, ubuf); +} diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/vfork.S b/REORG.TODO/sysdeps/unix/sysv/linux/mips/vfork.S new file mode 100644 index 0000000000..f9763ca615 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/vfork.S @@ -0,0 +1,94 @@ +/* Copyright (C) 2005-2017 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, see + <http://www.gnu.org/licenses/>. */ + +/* vfork() is just a special case of clone(). */ + +#include <sys/asm.h> +#include <sysdep.h> +#include <asm/unistd.h> +#include <sgidefs.h> +#include <tls.h> + + +/* int vfork() */ + + .text + .set nomips16 +LOCALSZ= 1 +FRAMESZ= (((NARGSAVE+LOCALSZ)*SZREG)+ALSZ)&ALMASK +GPOFF= FRAMESZ-(1*SZREG) +NESTED(__libc_vfork,FRAMESZ,sp) +#ifdef __PIC__ + SETUP_GP +#endif + PTR_SUBU sp, FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) + SETUP_GP64_REG (a5, __libc_vfork) +#ifdef __PIC__ + SAVE_GP (GPOFF) +#endif +#ifdef PROF +# if (_MIPS_SIM != _ABIO32) + PTR_S a5, GPOFF(sp) +# endif + .set noat + move $1, ra +# if (_MIPS_SIM == _ABIO32) + subu sp,sp,8 +# endif + jal _mcount + .set at +# if (_MIPS_SIM != _ABIO32) + PTR_L a5, GPOFF(sp) +# endif +#endif + + PTR_ADDU sp, FRAMESZ + cfi_adjust_cfa_offset (-FRAMESZ) + + li a0, 0x4112 /* CLONE_VM | CLONE_VFORK | SIGCHLD */ + move a1, sp + + /* Do the system call */ + li v0,__NR_clone + syscall + + cfi_remember_state + bnez a3,L(error) + + /* Successful return from the parent or child. */ + RESTORE_GP64_REG + ret + + /* Something bad happened -- no child created. */ +L(error): + cfi_restore_state +#ifdef __PIC__ + PTR_LA t9, __syscall_error + RESTORE_GP64_REG + jr t9 +#else + RESTORE_GP64_REG + j __syscall_error +#endif + END(__libc_vfork) + +#if IS_IN (libc) +weak_alias (__libc_vfork, vfork) +strong_alias (__libc_vfork, __vfork) +libc_hidden_def (__vfork) +#endif diff --git a/REORG.TODO/sysdeps/unix/sysv/linux/mips/xstatconv.c b/REORG.TODO/sysdeps/unix/sysv/linux/mips/xstatconv.c new file mode 100644 index 0000000000..b609b3d4f6 --- /dev/null +++ b/REORG.TODO/sysdeps/unix/sysv/linux/mips/xstatconv.c @@ -0,0 +1,201 @@ +/* Convert between the kernel's `struct stat' format, and libc's. + Copyright (C) 1991-2017 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, see + <http://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <sys/stat.h> +#include <kernel_stat.h> + +#include <string.h> + +int +__xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf) +{ + switch (vers) + { + case _STAT_VER_KERNEL: + /* Nothing to do. The struct is in the form the kernel expects. + We should have short-circuted before we got here, but for + completeness... */ + *(struct kernel_stat *) ubuf = *kbuf; + break; + + case _STAT_VER_LINUX: + { + struct stat *buf = ubuf; + + /* Convert to current kernel version of `struct stat'. */ + buf->st_dev = kbuf->st_dev; + memset (&buf->st_pad1, 0, sizeof (buf->st_pad1)); + buf->st_ino = kbuf->st_ino; + /* Check for overflow. */ + if (buf->st_ino != kbuf->st_ino) + { + __set_errno (EOVERFLOW); + return -1; + } + buf->st_mode = kbuf->st_mode; + buf->st_nlink = kbuf->st_nlink; + buf->st_uid = kbuf->st_uid; + buf->st_gid = kbuf->st_gid; + buf->st_rdev = kbuf->st_rdev; + memset (&buf->st_pad2, 0, sizeof (buf->st_pad2)); + buf->st_size = kbuf->st_size; + /* Check for overflow. */ + if (buf->st_size != kbuf->st_size) + { + __set_errno (EOVERFLOW); + return -1; + } + buf->st_pad3 = 0; + buf->st_atim.tv_sec = kbuf->st_atime_sec; + buf->st_atim.tv_nsec = kbuf->st_atime_nsec; + buf->st_mtim.tv_sec = kbuf->st_mtime_sec; + buf->st_mtim.tv_nsec = kbuf->st_mtime_nsec; + buf->st_ctim.tv_sec = kbuf->st_ctime_sec; + buf->st_ctim.tv_nsec = kbuf->st_ctime_nsec; + buf->st_blksize = kbuf->st_blksize; + buf->st_blocks = kbuf->st_blocks; + /* Check for overflow. */ + if (buf->st_blocks != kbuf->st_blocks) + { + __set_errno (EOVERFLOW); + return -1; + } + memset (&buf->st_pad5, 0, sizeof (buf->st_pad5)); + } + break; + + default: + __set_errno (EINVAL); + return -1; + } + + return 0; +} + +int +__xstat64_conv (int vers, struct kernel_stat *kbuf, void *ubuf) +{ +#if XSTAT_IS_XSTAT64 + return xstat_conv (vers, kbuf, ubuf); +#else + switch (vers) + { + case _STAT_VER_LINUX: + { + struct stat64 *buf = ubuf; + + buf->st_dev = kbuf->st_dev; + memset (&buf->st_pad1, 0, sizeof (buf->st_pad1)); + buf->st_ino = kbuf->st_ino; + buf->st_mode = kbuf->st_mode; + buf->st_nlink = kbuf->st_nlink; + buf->st_uid = kbuf->st_uid; + buf->st_gid = kbuf->st_gid; + buf->st_rdev = kbuf->st_rdev; + memset (&buf->st_pad2, 0, sizeof (buf->st_pad2)); + buf->st_pad3 = 0; + buf->st_size = kbuf->st_size; + buf->st_blksize = kbuf->st_blksize; + buf->st_blocks = kbuf->st_blocks; + + buf->st_atim.tv_sec = kbuf->st_atime_sec; + buf->st_atim.tv_nsec = kbuf->st_atime_nsec; + buf->st_mtim.tv_sec = kbuf->st_mtime_sec; + buf->st_mtim.tv_nsec = kbuf->st_mtime_nsec; + buf->st_ctim.tv_sec = kbuf->st_ctime_sec; + buf->st_ctim.tv_nsec = kbuf->st_ctime_nsec; + + memset (&buf->st_pad4, 0, sizeof (buf->st_pad4)); + } + break; + + /* If struct stat64 is different from struct stat then + _STAT_VER_KERNEL does not make sense. */ + case _STAT_VER_KERNEL: + default: + __set_errno (EINVAL); + return -1; + } + + return 0; +#endif +} + +#if _MIPS_SIM == _ABIO32 +int +__xstat32_conv (int vers, struct stat64 *kbuf, struct stat *buf) +{ + switch (vers) + { + case _STAT_VER_LINUX: + /* Convert current kernel version of `struct stat64' to + `struct stat'. The layout of the fields in the kernel's + stat64 is the same as that in the user stat64; the only + difference is that the latter has more trailing padding. */ + buf->st_dev = kbuf->st_dev; + memset (&buf->st_pad1, 0, sizeof (buf->st_pad1)); + buf->st_ino = kbuf->st_ino; + /* Check for overflow. */ + if (buf->st_ino != kbuf->st_ino) + { + __set_errno (EOVERFLOW); + return -1; + } + buf->st_mode = kbuf->st_mode; + buf->st_nlink = kbuf->st_nlink; + buf->st_uid = kbuf->st_uid; + buf->st_gid = kbuf->st_gid; + buf->st_rdev = kbuf->st_rdev; + memset (&buf->st_pad2, 0, sizeof (buf->st_pad2)); + buf->st_size = kbuf->st_size; + /* Check for overflow. */ + if (buf->st_size != kbuf->st_size) + { + __set_errno (EOVERFLOW); + return -1; + } + buf->st_pad3 = 0; + buf->st_atim.tv_sec = kbuf->st_atim.tv_sec; + buf->st_atim.tv_nsec = kbuf->st_atim.tv_nsec; + buf->st_mtim.tv_sec = kbuf->st_mtim.tv_sec; + buf->st_mtim.tv_nsec = kbuf->st_mtim.tv_nsec; + buf->st_ctim.tv_sec = kbuf->st_ctim.tv_sec; + buf->st_ctim.tv_nsec = kbuf->st_ctim.tv_nsec; + buf->st_blksize = kbuf->st_blksize; + buf->st_blocks = kbuf->st_blocks; + /* Check for overflow. */ + if (buf->st_blocks != kbuf->st_blocks) + { + __set_errno (EOVERFLOW); + return -1; + } + memset (&buf->st_pad5, 0, sizeof (buf->st_pad5)); + break; + + /* If struct stat64 is different from struct stat then + _STAT_VER_KERNEL does not make sense. */ + case _STAT_VER_KERNEL: + default: + __set_errno (EINVAL); + return -1; + } + + return 0; +} +#endif /* _MIPS_SIM == _ABIO32 */ |