summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/sh
diff options
context:
space:
mode:
authorZack Weinberg <zackw@panix.com>2017-06-08 15:39:03 -0400
committerZack Weinberg <zackw@panix.com>2017-06-08 15:39:03 -0400
commit5046dbb4a7eba5eccfd258f92f4735c9ffc8d069 (patch)
tree4470480d904b65cf14ca524f96f79eca818c3eaf /sysdeps/unix/sysv/linux/sh
parent199fc19d3aaaf57944ef036e15904febe877fc93 (diff)
downloadglibc-zack/build-layout-experiment.tar.gz
Prepare for radical source tree reorganization.zack/build-layout-experiment
All top-level files and directories are moved into a temporary storage directory, REORG.TODO, except for files that will certainly still exist in their current form at top level when we're done (COPYING, COPYING.LIB, LICENSES, NEWS, README), all old ChangeLog files (which are moved to the new directory OldChangeLogs, instead), and the generated file INSTALL (which is just deleted; in the new order, there will be no generated files checked into version control).
Diffstat (limited to 'sysdeps/unix/sysv/linux/sh')
-rw-r--r--sysdeps/unix/sysv/linux/sh/Implies1
-rw-r--r--sysdeps/unix/sysv/linux/sh/Makefile16
-rw-r--r--sysdeps/unix/sysv/linux/sh/Versions33
-rw-r--r--sysdeps/unix/sysv/linux/sh/____longjmp_chk.S122
-rw-r--r--sysdeps/unix/sysv/linux/sh/arch-fork.h28
-rw-r--r--sysdeps/unix/sysv/linux/sh/atomic-machine.h425
-rw-r--r--sysdeps/unix/sysv/linux/sh/bits/fcntl.h50
-rw-r--r--sysdeps/unix/sysv/linux/sh/bits/mman.h40
-rw-r--r--sysdeps/unix/sysv/linux/sh/bits/shm.h101
-rw-r--r--sysdeps/unix/sysv/linux/sh/brk.c47
-rw-r--r--sysdeps/unix/sysv/linux/sh/c++-types.data67
-rw-r--r--sysdeps/unix/sysv/linux/sh/clone.S103
-rw-r--r--sysdeps/unix/sysv/linux/sh/configure4
-rw-r--r--sysdeps/unix/sysv/linux/sh/configure.ac4
-rw-r--r--sysdeps/unix/sysv/linux/sh/fcntl.c1
-rw-r--r--sysdeps/unix/sysv/linux/sh/fxstat.c1
-rw-r--r--sysdeps/unix/sysv/linux/sh/fxstatat.c1
-rw-r--r--sysdeps/unix/sysv/linux/sh/kernel-features.h54
-rw-r--r--sysdeps/unix/sysv/linux/sh/ld.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sh/libBrokenLocale.abilist2
-rw-r--r--sysdeps/unix/sysv/linux/sh/libanl.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/sh/libc.abilist2178
-rw-r--r--sysdeps/unix/sysv/linux/sh/libcrypt.abilist8
-rw-r--r--sysdeps/unix/sysv/linux/sh/libdl.abilist14
-rw-r--r--sysdeps/unix/sysv/linux/sh/libm.abilist433
-rw-r--r--sysdeps/unix/sysv/linux/sh/libnsl.abilist124
-rw-r--r--sysdeps/unix/sysv/linux/sh/libpthread.abilist245
-rw-r--r--sysdeps/unix/sysv/linux/sh/libresolv.abilist100
-rw-r--r--sysdeps/unix/sysv/linux/sh/librt.abilist47
-rw-r--r--sysdeps/unix/sysv/linux/sh/libthread_db.abilist44
-rw-r--r--sysdeps/unix/sysv/linux/sh/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/sh/localplt.data21
-rw-r--r--sysdeps/unix/sysv/linux/sh/lockf64.c1
-rw-r--r--sysdeps/unix/sysv/linux/sh/lowlevel-atomic.h80
-rw-r--r--sysdeps/unix/sysv/linux/sh/lxstat.c2
-rw-r--r--sysdeps/unix/sysv/linux/sh/makecontext.S160
-rw-r--r--sysdeps/unix/sysv/linux/sh/pipe.S42
-rw-r--r--sysdeps/unix/sysv/linux/sh/profil-counter.h32
-rw-r--r--sysdeps/unix/sysv/linux/sh/pt-vfork.S1
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh3/getcontext.S87
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh3/register-dump.h150
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh3/setcontext.S99
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh3/swapcontext.S132
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh3/ucontext_i.sym38
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh4/getcontext.S132
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh4/register-dump.h263
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh4/setcontext.S141
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S218
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh4/sysdep.h4
-rw-r--r--sysdeps/unix/sysv/linux/sh/sh4/ucontext_i.sym73
-rw-r--r--sysdeps/unix/sysv/linux/sh/shlib-versions5
-rw-r--r--sysdeps/unix/sysv/linux/sh/sigaltstack-offsets.sym13
-rw-r--r--sysdeps/unix/sysv/linux/sh/sigcontextinfo.h26
-rw-r--r--sysdeps/unix/sysv/linux/sh/smp.h23
-rw-r--r--sysdeps/unix/sysv/linux/sh/sys/procfs.h111
-rw-r--r--sysdeps/unix/sysv/linux/sh/sys/ucontext.h127
-rw-r--r--sysdeps/unix/sysv/linux/sh/sys/user.h67
-rw-r--r--sysdeps/unix/sysv/linux/sh/syscall.S43
-rw-r--r--sysdeps/unix/sysv/linux/sh/syscalls.list22
-rw-r--r--sysdeps/unix/sysv/linux/sh/sysdep-cancel.h169
-rw-r--r--sysdeps/unix/sysv/linux/sh/sysdep.S32
-rw-r--r--sysdeps/unix/sysv/linux/sh/sysdep.h360
-rw-r--r--sysdeps/unix/sysv/linux/sh/vfork.S52
-rw-r--r--sysdeps/unix/sysv/linux/sh/xstat.c1
64 files changed, 0 insertions, 7044 deletions
diff --git a/sysdeps/unix/sysv/linux/sh/Implies b/sysdeps/unix/sysv/linux/sh/Implies
deleted file mode 100644
index c15a97e222..0000000000
--- a/sysdeps/unix/sysv/linux/sh/Implies
+++ /dev/null
@@ -1 +0,0 @@
-sh/nptl
diff --git a/sysdeps/unix/sysv/linux/sh/Makefile b/sysdeps/unix/sysv/linux/sh/Makefile
deleted file mode 100644
index dd3b382ac1..0000000000
--- a/sysdeps/unix/sysv/linux/sh/Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
-ifeq ($(subdir),io)
-sysdep_routines += pipe
-endif
-
-ifeq ($(subdir),stdlib)
-gen-as-const-headers += ucontext_i.sym
-endif
-
-ifeq ($(subdir),misc)
-gen-as-const-headers += sigaltstack-offsets.sym
-endif
-
-ifeq ($(subdir),math)
-# The libm.so link can't find __fpscr_values
-libm.so-no-z-defs = yes
-endif
diff --git a/sysdeps/unix/sysv/linux/sh/Versions b/sysdeps/unix/sysv/linux/sh/Versions
deleted file mode 100644
index e0938c4165..0000000000
--- a/sysdeps/unix/sysv/linux/sh/Versions
+++ /dev/null
@@ -1,33 +0,0 @@
-libc {
- GLIBC_2.2 {
- # functions used in other libraries
- __xstat64; __fxstat64; __lxstat64;
-
- # a*
- alphasort64;
-
- # g*
- glob64;
-
- # New rlimit interface
- getrlimit; setrlimit; getrlimit64;
-
- # r*
- readdir64; readdir64_r;
-
- # s*
- scandir64;
-
- # v*
- versionsort64;
- }
- GLIBC_2.3.3 {
- posix_fadvise64; posix_fallocate64;
- }
- GLIBC_2.11 {
- fallocate64;
- }
- GLIBC_2.16 {
- fanotify_mark;
- }
-}
diff --git a/sysdeps/unix/sysv/linux/sh/____longjmp_chk.S b/sysdeps/unix/sysv/linux/sh/____longjmp_chk.S
deleted file mode 100644
index 386d7038a5..0000000000
--- a/sysdeps/unix/sysv/linux/sh/____longjmp_chk.S
+++ /dev/null
@@ -1,122 +0,0 @@
-/* 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 <sysdep.h>
-
-#include <sigaltstack-offsets.h>
-
- .section .rodata.str1.1,"aMS",@progbits,1
- .type longjmp_msg,@object
-longjmp_msg:
- .string "longjmp causes uninitialized stack frame"
- .size longjmp_msg, .-longjmp_msg
- .text
-
-#define __longjmp ____longjmp_chk
-
-#ifdef PIC
-# define CALL_FAIL \
- mov.l .Lfail, r1; \
- mov.l .Lstr, r4; \
- mov.l r12, @-r15; \
- cfi_remember_state; \
- cfi_adjust_cfa_offset (4); \
- cfi_rel_offset (r12, 0); \
- mova .Lgot, r0; \
- mov.l .Lgot, r12; \
- add r0, r12; \
- sts.l pr, @-r15; \
- cfi_adjust_cfa_offset (4); \
- cfi_rel_offset (pr, 0); \
- bsrf r1; \
- add r12, r4; \
-.Lfail0: \
- /* Unreachable. */ \
- .align 2; \
-.Lgot: \
- .long _GLOBAL_OFFSET_TABLE_; \
-.Lstr: \
- .long longjmp_msg@GOTOFF; \
-.Lfail: \
- .long __GI___fortify_fail@PLT-(.Lfail0-.); \
- cfi_restore_state;
-#else
-# define CALL_FAIL \
- mov.l .Lfail, r1; \
- mov.l .Lstr, r4; \
- sts.l pr, @-r15; \
- cfi_remember_state; \
- cfi_adjust_cfa_offset (4); \
- cfi_rel_offset (pr, 0); \
- jsr @r1; \
- nop; \
- /* Unreachable. */ \
- .align 2; \
-.Lstr: \
- .long longjmp_msg; \
-.Lfail: \
- .long __fortify_fail; \
- cfi_restore_state;
-#endif
-
-#define CHECK_SP(reg) \
- /* Jumping to a higher-address frame is always allowed. */ \
- cmp/hs r15, reg; \
- bt .Lok; \
- \
- mov.l r0, @-r15; /* The return value is already in here. */ \
- cfi_adjust_cfa_offset (4); \
- mov.l r1, @-r15; /* PTR_DEMANGLE helper. */ \
- cfi_adjust_cfa_offset (4); \
- mov.l r2, @-r15; /* The new SP value is already in here. */ \
- cfi_adjust_cfa_offset (4); \
- mov.l r4, @-r15; /* We'll still need this one. */ \
- cfi_adjust_cfa_offset (4); \
- add #-sizeSS, r15; \
- cfi_adjust_cfa_offset (sizeSS); \
- mov #0, r4; \
- mov r15, r5; \
- DO_CALL (sigaltstack, 2); \
- /* Without working sigaltstack we cannot perform the test. */ \
- tst r0, r0; \
- bf .Lok2; \
- mov.l @(oSS_FLAGS, r15), r0; \
- tst #SS_ONSTACK, r0; \
- bt .Lcall_fail; \
- mov.l @(oSS_SIZE, r15), r2; \
- mov.l @(oSS_SP, r15), r1; \
- add r2, r1; \
- sub r8, r1; \
- cmp/hi r1, r2; \
- bf .Lok2; \
-.Lcall_fail: \
- CALL_FAIL \
- \
-.Lok2: \
- add #sizeSS, r15; \
- cfi_adjust_cfa_offset (-sizeSS); \
- mov.l @r15+, r4; \
- cfi_adjust_cfa_offset (-4); \
- mov.l @r15+, r2; \
- cfi_adjust_cfa_offset (-4); \
- mov.l @r15+, r1; \
- cfi_adjust_cfa_offset (-4); \
- mov.l @r15+, r0; \
- cfi_adjust_cfa_offset (-4); \
-.Lok:
-
-#include <__longjmp.S>
diff --git a/sysdeps/unix/sysv/linux/sh/arch-fork.h b/sysdeps/unix/sysv/linux/sh/arch-fork.h
deleted file mode 100644
index ca42758989..0000000000
--- a/sysdeps/unix/sysv/linux/sh/arch-fork.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* ARCH_FORK definition for Linux fork implementation. SH version.
- 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 <sched.h>
-#include <signal.h>
-#include <sysdep.h>
-#include <tls.h>
-
-/* TLS pointer argument is passed as the 5-th argument. */
-#define ARCH_FORK() \
- INLINE_SYSCALL (clone, 5, \
- CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD, 0, \
- NULL, &THREAD_SELF->tid, NULL)
diff --git a/sysdeps/unix/sysv/linux/sh/atomic-machine.h b/sysdeps/unix/sysv/linux/sh/atomic-machine.h
deleted file mode 100644
index 5a7e953ac4..0000000000
--- a/sysdeps/unix/sysv/linux/sh/atomic-machine.h
+++ /dev/null
@@ -1,425 +0,0 @@
-/* Atomic operations used inside libc. Linux/SH version.
- 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 <stdint.h>
-
-
-typedef int8_t atomic8_t;
-typedef uint8_t uatomic8_t;
-typedef int_fast8_t atomic_fast8_t;
-typedef uint_fast8_t uatomic_fast8_t;
-
-typedef int16_t atomic16_t;
-typedef uint16_t uatomic16_t;
-typedef int_fast16_t atomic_fast16_t;
-typedef uint_fast16_t uatomic_fast16_t;
-
-typedef int32_t atomic32_t;
-typedef uint32_t uatomic32_t;
-typedef int_fast32_t atomic_fast32_t;
-typedef uint_fast32_t uatomic_fast32_t;
-
-typedef int64_t atomic64_t;
-typedef uint64_t uatomic64_t;
-typedef int_fast64_t atomic_fast64_t;
-typedef uint_fast64_t uatomic_fast64_t;
-
-typedef intptr_t atomicptr_t;
-typedef uintptr_t uatomicptr_t;
-typedef intmax_t atomic_max_t;
-typedef uintmax_t uatomic_max_t;
-
-#define __HAVE_64B_ATOMICS 0
-#define USE_ATOMIC_COMPILER_BUILTINS 0
-
-/* XXX Is this actually correct? */
-#define ATOMIC_EXCHANGE_USES_CAS 1
-
-/* SH kernel has implemented a gUSA ("g" User Space Atomicity) support
- for the user space atomicity. The atomicity macros use this scheme.
-
- Reference:
- Niibe Yutaka, "gUSA: Simple and Efficient User Space Atomicity
- Emulation with Little Kernel Modification", Linux Conference 2002,
- Japan. http://lc.linux.or.jp/lc2002/papers/niibe0919h.pdf (in
- Japanese).
-
- B.N. Bershad, D. Redell, and J. Ellis, "Fast Mutual Exclusion for
- Uniprocessors", Proceedings of the Fifth Architectural Support for
- Programming Languages and Operating Systems (ASPLOS), pp. 223-233,
- October 1992. http://www.cs.washington.edu/homes/bershad/Papers/Rcs.ps
-
- SuperH ABI:
- r15: -(size of atomic instruction sequence) < 0
- r0: end point
- r1: saved stack pointer
-*/
-
-#define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \
- ({ __typeof (*(mem)) __result; \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%1,%0\n\
- cmp/eq %0,%3\n\
- bf 1f\n\
- mov.b %2,@%1\n\
- 1: mov r1,r15"\
- : "=&r" (__result) : "u" (mem), "u" (newval), "u" (oldval) \
- : "r0", "r1", "t", "memory"); \
- __result; })
-
-#define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \
- ({ __typeof (*(mem)) __result; \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- mov #-8,r15\n\
- 0: mov.w @%1,%0\n\
- cmp/eq %0,%3\n\
- bf 1f\n\
- mov.w %2,@%1\n\
- 1: mov r1,r15"\
- : "=&r" (__result) : "u" (mem), "u" (newval), "u" (oldval) \
- : "r0", "r1", "t", "memory"); \
- __result; })
-
-#define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \
- ({ __typeof (*(mem)) __result; \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%1,%0\n\
- cmp/eq %0,%3\n\
- bf 1f\n\
- mov.l %2,@%1\n\
- 1: mov r1,r15"\
- : "=&r" (__result) : "u" (mem), "u" (newval), "u" (oldval) \
- : "r0", "r1", "t", "memory"); \
- __result; })
-
-/* XXX We do not really need 64-bit compare-and-exchange. At least
- not in the moment. Using it would mean causing portability
- problems since not many other 32-bit architectures have support for
- such an operation. So don't define any code for now. */
-
-# define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \
- (abort (), (__typeof (*mem)) 0)
-
-#define atomic_exchange_and_add(mem, value) \
- ({ __typeof (*(mem)) __result, __tmp, __value = (value); \
- if (sizeof (*(mem)) == 1) \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%2,%0\n\
- mov %1,r2\n\
- add %0,r2\n\
- mov.b r2,@%2\n\
- 1: mov r1,r15"\
- : "=&r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "memory"); \
- else if (sizeof (*(mem)) == 2) \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.w @%2,%0\n\
- mov %1,r2\n\
- add %0,r2\n\
- mov.w r2,@%2\n\
- 1: mov r1,r15"\
- : "=&r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "memory"); \
- else if (sizeof (*(mem)) == 4) \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%2,%0\n\
- mov %1,r2\n\
- add %0,r2\n\
- mov.l r2,@%2\n\
- 1: mov r1,r15"\
- : "=&r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "memory"); \
- else \
- { \
- __typeof (mem) memp = (mem); \
- do \
- __result = *memp; \
- while (__arch_compare_and_exchange_val_64_acq \
- (memp, __result + __value, __result) == __result); \
- (void) __value; \
- } \
- __result; })
-
-#define atomic_add(mem, value) \
- (void) ({ __typeof (*(mem)) __tmp, __value = (value); \
- if (sizeof (*(mem)) == 1) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%1,r2\n\
- add %0,r2\n\
- mov.b r2,@%1\n\
- 1: mov r1,r15"\
- : "=&r" (__tmp) : "u" (mem), "0" (__value) \
- : "r0", "r1", "r2", "memory"); \
- else if (sizeof (*(mem)) == 2) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.w @%1,r2\n\
- add %0,r2\n\
- mov.w r2,@%1\n\
- 1: mov r1,r15"\
- : "=&r" (__tmp) : "u" (mem), "0" (__value) \
- : "r0", "r1", "r2", "memory"); \
- else if (sizeof (*(mem)) == 4) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%1,r2\n\
- add %0,r2\n\
- mov.l r2,@%1\n\
- 1: mov r1,r15"\
- : "=&r" (__tmp) : "u" (mem), "0" (__value) \
- : "r0", "r1", "r2", "memory"); \
- else \
- { \
- __typeof (*(mem)) oldval; \
- __typeof (mem) memp = (mem); \
- do \
- oldval = *memp; \
- while (__arch_compare_and_exchange_val_64_acq \
- (memp, oldval + __value, oldval) == oldval); \
- (void) __value; \
- } \
- })
-
-#define atomic_add_negative(mem, value) \
- ({ unsigned char __result; \
- __typeof (*(mem)) __tmp, __value = (value); \
- if (sizeof (*(mem)) == 1) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%2,r2\n\
- add %1,r2\n\
- mov.b r2,@%2\n\
- 1: mov r1,r15\n\
- shal r2\n\
- movt %0"\
- : "=r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "t", "memory"); \
- else if (sizeof (*(mem)) == 2) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.w @%2,r2\n\
- add %1,r2\n\
- mov.w r2,@%2\n\
- 1: mov r1,r15\n\
- shal r2\n\
- movt %0"\
- : "=r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "t", "memory"); \
- else if (sizeof (*(mem)) == 4) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%2,r2\n\
- add %1,r2\n\
- mov.l r2,@%2\n\
- 1: mov r1,r15\n\
- shal r2\n\
- movt %0"\
- : "=r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "t", "memory"); \
- else \
- abort (); \
- __result; })
-
-#define atomic_add_zero(mem, value) \
- ({ unsigned char __result; \
- __typeof (*(mem)) __tmp, __value = (value); \
- if (sizeof (*(mem)) == 1) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%2,r2\n\
- add %1,r2\n\
- mov.b r2,@%2\n\
- 1: mov r1,r15\n\
- tst r2,r2\n\
- movt %0"\
- : "=r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "t", "memory"); \
- else if (sizeof (*(mem)) == 2) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.w @%2,r2\n\
- add %1,r2\n\
- mov.w r2,@%2\n\
- 1: mov r1,r15\n\
- tst r2,r2\n\
- movt %0"\
- : "=r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "t", "memory"); \
- else if (sizeof (*(mem)) == 4) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%2,r2\n\
- add %1,r2\n\
- mov.l r2,@%2\n\
- 1: mov r1,r15\n\
- tst r2,r2\n\
- movt %0"\
- : "=r" (__result), "=&r" (__tmp) : "u" (mem), "1" (__value) \
- : "r0", "r1", "r2", "t", "memory"); \
- else \
- abort (); \
- __result; })
-
-#define atomic_increment_and_test(mem) atomic_add_zero((mem), 1)
-#define atomic_decrement_and_test(mem) atomic_add_zero((mem), -1)
-
-#define atomic_bit_set(mem, bit) \
- (void) ({ unsigned int __mask = 1 << (bit); \
- if (sizeof (*(mem)) == 1) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%0,r2\n\
- or %1,r2\n\
- mov.b r2,@%0\n\
- 1: mov r1,r15"\
- : : "u" (mem), "u" (__mask) \
- : "r0", "r1", "r2", "memory"); \
- else if (sizeof (*(mem)) == 2) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.w @%0,r2\n\
- or %1,r2\n\
- mov.w r2,@%0\n\
- 1: mov r1,r15"\
- : : "u" (mem), "u" (__mask) \
- : "r0", "r1", "r2", "memory"); \
- else if (sizeof (*(mem)) == 4) \
- __asm __volatile ("\
- mova 1f,r0\n\
- mov r15,r1\n\
- .align 2\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%0,r2\n\
- or %1,r2\n\
- mov.l r2,@%0\n\
- 1: mov r1,r15"\
- : : "u" (mem), "u" (__mask) \
- : "r0", "r1", "r2", "memory"); \
- else \
- abort (); \
- })
-
-#define atomic_bit_test_set(mem, bit) \
- ({ unsigned int __mask = 1 << (bit); \
- unsigned int __result = __mask; \
- if (sizeof (*(mem)) == 1) \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.b @%2,r2\n\
- mov r2,r3\n\
- or %1,r2\n\
- mov.b r2,@%2\n\
- 1: mov r1,r15\n\
- and r3,%0"\
- : "=&r" (__result), "=&r" (__mask) \
- : "u" (mem), "0" (__result), "1" (__mask) \
- : "r0", "r1", "r2", "r3", "memory"); \
- else if (sizeof (*(mem)) == 2) \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.w @%2,r2\n\
- mov r2,r3\n\
- or %1,r2\n\
- mov.w %1,@%2\n\
- 1: mov r1,r15\n\
- and r3,%0"\
- : "=&r" (__result), "=&r" (__mask) \
- : "u" (mem), "0" (__result), "1" (__mask) \
- : "r0", "r1", "r2", "r3", "memory"); \
- else if (sizeof (*(mem)) == 4) \
- __asm __volatile ("\
- mova 1f,r0\n\
- .align 2\n\
- mov r15,r1\n\
- mov #(0f-1f),r15\n\
- 0: mov.l @%2,r2\n\
- mov r2,r3\n\
- or r2,%1\n\
- mov.l %1,@%2\n\
- 1: mov r1,r15\n\
- and r3,%0"\
- : "=&r" (__result), "=&r" (__mask) \
- : "u" (mem), "0" (__result), "1" (__mask) \
- : "r0", "r1", "r2", "r3", "memory"); \
- else \
- abort (); \
- __result; })
diff --git a/sysdeps/unix/sysv/linux/sh/bits/fcntl.h b/sysdeps/unix/sysv/linux/sh/bits/fcntl.h
deleted file mode 100644
index 49ed86b460..0000000000
--- a/sysdeps/unix/sysv/linux/sh/bits/fcntl.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/* O_*, F_*, FD_* bit values for Linux/SH.
- 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
-
-
-struct flock
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
-#ifndef __USE_FILE_OFFSET64
- __off_t l_start; /* Offset where the lock begins. */
- __off_t l_len; /* Size of the locked area; zero means until EOF. */
-#else
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
-#endif
- __pid_t l_pid; /* Process holding the lock. */
- };
-
-#ifdef __USE_LARGEFILE64
-struct flock64
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
- __pid_t l_pid; /* Process holding the lock. */
- };
-#endif
-
-/* Include generic Linux declarations. */
-#include <bits/fcntl-linux.h>
diff --git a/sysdeps/unix/sysv/linux/sh/bits/mman.h b/sysdeps/unix/sysv/linux/sh/bits/mman.h
deleted file mode 100644
index 02588c6d6a..0000000000
--- a/sysdeps/unix/sysv/linux/sh/bits/mman.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Definitions for POSIX memory map interface. Linux/SH 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 include this file directly. Use <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_GROWSDOWN 0x0100 /* Stack-like segment. */
-# define MAP_DENYWRITE 0x0800 /* ETXTBSY */
-# define MAP_EXECUTABLE 0x1000 /* Mark it as an executable. */
-# define MAP_LOCKED 0x2000 /* Lock the mapping. */
-# define MAP_NORESERVE 0x4000 /* Don't check for reservations. */
-# define MAP_POPULATE 0x8000 /* Populate (prefault) pagetables. */
-# define MAP_NONBLOCK 0x10000 /* Do not block on IO. */
-# define MAP_STACK 0x20000 /* Allocation is for a stack. */
-# define MAP_HUGETLB 0x40000 /* Create huge page mapping. */
-#endif
-
-/* Include generic Linux declarations. */
-#include <bits/mman-linux.h>
diff --git a/sysdeps/unix/sysv/linux/sh/bits/shm.h b/sysdeps/unix/sysv/linux/sh/bits/shm.h
deleted file mode 100644
index d1f47ec820..0000000000
--- a/sysdeps/unix/sysv/linux/sh/bits/shm.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* 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) */
-
-__BEGIN_DECLS
-
-/* Segment low boundary address multiple. */
-#define SHMLBA 0x4000
-
-/* 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() */
- unsigned long int __glibc_reserved1;
- __time_t shm_dtime; /* time of last shmdt() */
- unsigned long int __glibc_reserved2;
- __time_t shm_ctime; /* time of last change by shmctl() */
- unsigned long int __glibc_reserved3;
- __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_reserved4;
- unsigned long int __glibc_reserved5;
- };
-
-#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 */
-
-__END_DECLS
diff --git a/sysdeps/unix/sysv/linux/sh/brk.c b/sysdeps/unix/sysv/linux/sh/brk.c
deleted file mode 100644
index 4d83acf3f5..0000000000
--- a/sysdeps/unix/sysv/linux/sh/brk.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* brk system call for Linux/SH.
- 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 <errno.h>
-#include <unistd.h>
-#include <sysdep.h>
-
-/* This must be initialized data because commons can't have aliases. */
-void *__curbrk = 0;
-
-int
-__brk (void *addr)
-{
- void *newbrk;
- register long r3 asm ("%r3") = SYS_ify (brk);
- register long r4 asm ("%r4") = (long)addr;
-
- asm volatile ("trapa #0x11\n\t" SYSCALL_INST_PAD
- : "=z"(newbrk)
- : "r" (r3), "r" (r4));
-
- __curbrk = newbrk;
-
- if (newbrk < addr)
- {
- __set_errno (ENOMEM);
- return -1;
- }
-
- return 0;
-}
-weak_alias (__brk, brk)
diff --git a/sysdeps/unix/sysv/linux/sh/c++-types.data b/sysdeps/unix/sysv/linux/sh/c++-types.data
deleted file mode 100644
index fde53bf337..0000000000
--- a/sysdeps/unix/sysv/linux/sh/c++-types.data
+++ /dev/null
@@ -1,67 +0,0 @@
-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/sysdeps/unix/sysv/linux/sh/clone.S b/sysdeps/unix/sysv/linux/sh/clone.S
deleted file mode 100644
index 9063b21928..0000000000
--- a/sysdeps/unix/sysv/linux/sh/clone.S
+++ /dev/null
@@ -1,103 +0,0 @@
-/* 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/>. */
-
-/* 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 <sysdep.h>
-#define _ERRNO_H 1
-#include <bits/errno.h>
-#include <tcb-offsets.h>
-
-/* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg,
- pid_t *ptid, void *tls, pid_t *ctid); */
-
- .text
-ENTRY(__clone)
- /* sanity check arguments. */
- tst r4, r4
- bt/s 0f
- tst r5, r5
- bf 1f
-0:
- bra .Lsyscall_error
- mov #-EINVAL,r0
-1:
- /* insert the args onto the new stack */
- mov.l r7, @-r5
- /* save the function pointer as the 0th element */
- mov.l r4, @-r5
-
- /* do the system call */
- mov r6, r4
- mov.l @r15, r6
- mov.l @(8,r15), r7
- mov.l @(4,r15), r0
- mov #+SYS_ify(clone), r3
- trapa #0x15
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lclone_end
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lclone_end:
- tst r0, r0
- bt 2f
-.Lpseudo_end:
- rts
- nop
-2:
- /* terminate the stack frame */
- mov #0, r14
-
- /* thread starts */
- mov.l @r15, r1
- jsr @r1
- mov.l @(4,r15), r4
-
- /* we are done, passing the return value through r0 */
- mov.l .L3, r1
-#ifdef SHARED
- mov.l r12, @-r15
- sts.l pr, @-r15
- mov r0, r4
- mova .LG, r0
- mov.l .LG, r12
- add r0, r12
- mova .L3, r0
- add r0, r1
- jsr @r1
- nop
- lds.l @r15+, pr
- rts
- mov.l @r15+, r12
-#else
- jmp @r1
- mov r0, r4
-#endif
- .align 2
-.LG:
- .long _GLOBAL_OFFSET_TABLE_
-.L3:
- .long PLTJMP(C_SYMBOL_NAME(_exit))
-PSEUDO_END (__clone)
-
-libc_hidden_def (__clone)
-weak_alias (__clone, clone)
diff --git a/sysdeps/unix/sysv/linux/sh/configure b/sysdeps/unix/sysv/linux/sh/configure
deleted file mode 100644
index 6c31f5e249..0000000000
--- a/sysdeps/unix/sysv/linux/sh/configure
+++ /dev/null
@@ -1,4 +0,0 @@
-# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
- # Local configure fragment for sysdeps/unix/sysv/linux/sh.
-
-libc_cv_gcc_unwind_find_fde=yes
diff --git a/sysdeps/unix/sysv/linux/sh/configure.ac b/sysdeps/unix/sysv/linux/sh/configure.ac
deleted file mode 100644
index 85ef0f8ffd..0000000000
--- a/sysdeps/unix/sysv/linux/sh/configure.ac
+++ /dev/null
@@ -1,4 +0,0 @@
-GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
-# Local configure fragment for sysdeps/unix/sysv/linux/sh.
-
-libc_cv_gcc_unwind_find_fde=yes
diff --git a/sysdeps/unix/sysv/linux/sh/fcntl.c b/sysdeps/unix/sysv/linux/sh/fcntl.c
deleted file mode 100644
index ea951bc4f9..0000000000
--- a/sysdeps/unix/sysv/linux/sh/fcntl.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/fcntl.c>
diff --git a/sysdeps/unix/sysv/linux/sh/fxstat.c b/sysdeps/unix/sysv/linux/sh/fxstat.c
deleted file mode 100644
index 4f219f0b9d..0000000000
--- a/sysdeps/unix/sysv/linux/sh/fxstat.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/fxstat.c>
diff --git a/sysdeps/unix/sysv/linux/sh/fxstatat.c b/sysdeps/unix/sysv/linux/sh/fxstatat.c
deleted file mode 100644
index 0f8b3135d8..0000000000
--- a/sysdeps/unix/sysv/linux/sh/fxstatat.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/fxstatat.c>
diff --git a/sysdeps/unix/sysv/linux/sh/kernel-features.h b/sysdeps/unix/sysv/linux/sh/kernel-features.h
deleted file mode 100644
index 175b4f5433..0000000000
--- a/sysdeps/unix/sysv/linux/sh/kernel-features.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Set flags signalling availability of kernel features based on given
- kernel version number. SH version.
- 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/>. */
-
-#ifndef __KERNEL_FEATURES_SH__
-# define __KERNEL_FEATURES_SH__
-
-/* SH uses socketcall. */
-#define __ASSUME_SOCKETCALL 1
-
-/* These syscalls were added for SH in 2.6.37. */
-#define __ASSUME_SOCKET_SYSCALL 1
-#define __ASSUME_BIND_SYSCALL 1
-#define __ASSUME_CONNECT_SYSCALL 1
-#define __ASSUME_LISTEN_SYSCALL 1
-#define __ASSUME_GETSOCKNAME_SYSCALL 1
-#define __ASSUME_GETPEERNAME_SYSCALL 1
-#define __ASSUME_SOCKETPAIR_SYSCALL 1
-#define __ASSUME_SEND_SYSCALL 1
-#define __ASSUME_RECV_SYSCALL 1
-#define __ASSUME_SHUTDOWN_SYSCALL 1
-#define __ASSUME_GETSOCKOPT_SYSCALL 1
-#define __ASSUME_SETSOCKOPT_SYSCALL 1
-
-#include_next <kernel-features.h>
-
-/* SH does not have a 64-bit inode field. */
-#undef __ASSUME_ST_INO_64_BIT
-#define __ASSUME_ST_INO_64_BIT 0
-
-/* SH4 ABI does not really require argument alignment for 64-bits, but
- the kernel interface for p{read,write}64 adds a dummy long argument
- before the offset. */
-#define __ASSUME_PRW_DUMMY_ARG 1
-
-/* sh only supports ipc syscall. */
-#undef __ASSUME_DIRECT_SYSVIPC_SYSCALLS
-
-#endif
diff --git a/sysdeps/unix/sysv/linux/sh/ld.abilist b/sysdeps/unix/sysv/linux/sh/ld.abilist
deleted file mode 100644
index fc1c60ea17..0000000000
--- a/sysdeps/unix/sysv/linux/sh/ld.abilist
+++ /dev/null
@@ -1,12 +0,0 @@
-GLIBC_2.2 GLIBC_2.2 A
-GLIBC_2.2 __libc_stack_end D 0x4
-GLIBC_2.2 _dl_mcount F
-GLIBC_2.2 _r_debug D 0x14
-GLIBC_2.2 calloc F
-GLIBC_2.2 free F
-GLIBC_2.2 malloc F
-GLIBC_2.2 realloc 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/sysdeps/unix/sysv/linux/sh/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/sh/libBrokenLocale.abilist
deleted file mode 100644
index 21343df781..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libBrokenLocale.abilist
+++ /dev/null
@@ -1,2 +0,0 @@
-GLIBC_2.2 GLIBC_2.2 A
-GLIBC_2.2 __ctype_get_mb_cur_max F
diff --git a/sysdeps/unix/sysv/linux/sh/libanl.abilist b/sysdeps/unix/sysv/linux/sh/libanl.abilist
deleted file mode 100644
index edabfb436e..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libanl.abilist
+++ /dev/null
@@ -1,5 +0,0 @@
-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/sysdeps/unix/sysv/linux/sh/libc.abilist b/sysdeps/unix/sysv/linux/sh/libc.abilist
deleted file mode 100644
index f3a70a0f6f..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libc.abilist
+++ /dev/null
@@ -1,2178 +0,0 @@
-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.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 _sys_errlist D 0x21c
-GLIBC_2.12 _sys_nerr D 0x4
-GLIBC_2.12 ntp_gettimex F
-GLIBC_2.12 recvmmsg F
-GLIBC_2.12 sys_errlist D 0x21c
-GLIBC_2.12 sys_nerr D 0x4
-GLIBC_2.13 GLIBC_2.13 A
-GLIBC_2.13 fanotify_init 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 fanotify_mark 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 0x98
-GLIBC_2.2 _IO_2_1_stdin_ D 0x98
-GLIBC_2.2 _IO_2_1_stdout_ D 0x98
-GLIBC_2.2 _IO_adjust_column F
-GLIBC_2.2 _IO_adjust_wcolumn F
-GLIBC_2.2 _IO_default_doallocate F
-GLIBC_2.2 _IO_default_finish F
-GLIBC_2.2 _IO_default_pbackfail F
-GLIBC_2.2 _IO_default_uflow F
-GLIBC_2.2 _IO_default_xsgetn F
-GLIBC_2.2 _IO_default_xsputn F
-GLIBC_2.2 _IO_do_write F
-GLIBC_2.2 _IO_doallocbuf F
-GLIBC_2.2 _IO_fclose F
-GLIBC_2.2 _IO_fdopen F
-GLIBC_2.2 _IO_feof F
-GLIBC_2.2 _IO_ferror F
-GLIBC_2.2 _IO_fflush F
-GLIBC_2.2 _IO_fgetpos F
-GLIBC_2.2 _IO_fgetpos64 F
-GLIBC_2.2 _IO_fgets F
-GLIBC_2.2 _IO_file_attach F
-GLIBC_2.2 _IO_file_close F
-GLIBC_2.2 _IO_file_close_it F
-GLIBC_2.2 _IO_file_doallocate 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_jumps D 0x54
-GLIBC_2.2 _IO_file_open F
-GLIBC_2.2 _IO_file_overflow F
-GLIBC_2.2 _IO_file_read F
-GLIBC_2.2 _IO_file_seek F
-GLIBC_2.2 _IO_file_seekoff F
-GLIBC_2.2 _IO_file_setbuf F
-GLIBC_2.2 _IO_file_stat 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_flockfile F
-GLIBC_2.2 _IO_flush_all F
-GLIBC_2.2 _IO_flush_all_linebuffered F
-GLIBC_2.2 _IO_fopen F
-GLIBC_2.2 _IO_fprintf F
-GLIBC_2.2 _IO_fputs F
-GLIBC_2.2 _IO_fread F
-GLIBC_2.2 _IO_free_backup_area 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_ftell F
-GLIBC_2.2 _IO_ftrylockfile F
-GLIBC_2.2 _IO_funlockfile F
-GLIBC_2.2 _IO_fwrite F
-GLIBC_2.2 _IO_getc F
-GLIBC_2.2 _IO_getline F
-GLIBC_2.2 _IO_getline_info F
-GLIBC_2.2 _IO_gets F
-GLIBC_2.2 _IO_init F
-GLIBC_2.2 _IO_init_marker 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_link_in F
-GLIBC_2.2 _IO_list_all D 0x4
-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_marker_delta F
-GLIBC_2.2 _IO_marker_difference F
-GLIBC_2.2 _IO_padn F
-GLIBC_2.2 _IO_peekc_locked F
-GLIBC_2.2 _IO_popen F
-GLIBC_2.2 _IO_printf F
-GLIBC_2.2 _IO_proc_close F
-GLIBC_2.2 _IO_proc_open F
-GLIBC_2.2 _IO_putc F
-GLIBC_2.2 _IO_puts F
-GLIBC_2.2 _IO_remove_marker F
-GLIBC_2.2 _IO_seekmark F
-GLIBC_2.2 _IO_seekoff F
-GLIBC_2.2 _IO_seekpos F
-GLIBC_2.2 _IO_seekwmark F
-GLIBC_2.2 _IO_setb F
-GLIBC_2.2 _IO_setbuffer F
-GLIBC_2.2 _IO_setvbuf F
-GLIBC_2.2 _IO_sgetn F
-GLIBC_2.2 _IO_sprintf F
-GLIBC_2.2 _IO_sputbackc F
-GLIBC_2.2 _IO_sputbackwc F
-GLIBC_2.2 _IO_sscanf F
-GLIBC_2.2 _IO_str_init_readonly F
-GLIBC_2.2 _IO_str_init_static F
-GLIBC_2.2 _IO_str_overflow F
-GLIBC_2.2 _IO_str_pbackfail F
-GLIBC_2.2 _IO_str_seekoff F
-GLIBC_2.2 _IO_str_underflow F
-GLIBC_2.2 _IO_sungetc F
-GLIBC_2.2 _IO_sungetwc F
-GLIBC_2.2 _IO_switch_to_get_mode 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_un_link F
-GLIBC_2.2 _IO_ungetc F
-GLIBC_2.2 _IO_unsave_markers F
-GLIBC_2.2 _IO_unsave_wmarkers F
-GLIBC_2.2 _IO_vfprintf F
-GLIBC_2.2 _IO_vfscanf F
-GLIBC_2.2 _IO_vsprintf 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 __adjtimex F
-GLIBC_2.2 __after_morecore_hook D 0x4
-GLIBC_2.2 __argz_count F
-GLIBC_2.2 __argz_next F
-GLIBC_2.2 __argz_stringify F
-GLIBC_2.2 __asprintf F
-GLIBC_2.2 __assert F
-GLIBC_2.2 __assert_fail F
-GLIBC_2.2 __assert_perror_fail F
-GLIBC_2.2 __backtrace F
-GLIBC_2.2 __backtrace_symbols F
-GLIBC_2.2 __backtrace_symbols_fd F
-GLIBC_2.2 __bsd_getpgrp F
-GLIBC_2.2 __bzero F
-GLIBC_2.2 __check_rhosts_file D 0x4
-GLIBC_2.2 __clone F
-GLIBC_2.2 __close F
-GLIBC_2.2 __cmsg_nxthdr F
-GLIBC_2.2 __connect F
-GLIBC_2.2 __ctype32_b D 0x4
-GLIBC_2.2 __ctype32_tolower D 0x4
-GLIBC_2.2 __ctype32_toupper D 0x4
-GLIBC_2.2 __ctype_b D 0x4
-GLIBC_2.2 __ctype_get_mb_cur_max F
-GLIBC_2.2 __ctype_tolower D 0x4
-GLIBC_2.2 __ctype_toupper D 0x4
-GLIBC_2.2 __curbrk 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 __daylight D 0x4
-GLIBC_2.2 __dcgettext F
-GLIBC_2.2 __default_morecore F
-GLIBC_2.2 __deregister_frame_info F
-GLIBC_2.2 __dgettext F
-GLIBC_2.2 __dup2 F
-GLIBC_2.2 __duplocale F
-GLIBC_2.2 __endmntent F
-GLIBC_2.2 __environ D 0x4
-GLIBC_2.2 __errno_location F
-GLIBC_2.2 __fbufsize F
-GLIBC_2.2 __fcntl F
-GLIBC_2.2 __ffs F
-GLIBC_2.2 __finite F
-GLIBC_2.2 __finitef F
-GLIBC_2.2 __finitel F
-GLIBC_2.2 __flbf F
-GLIBC_2.2 __fork F
-GLIBC_2.2 __fpending F
-GLIBC_2.2 __fpu_control D 0x4
-GLIBC_2.2 __fpurge F
-GLIBC_2.2 __freadable F
-GLIBC_2.2 __freading F
-GLIBC_2.2 __free_hook D 0x4
-GLIBC_2.2 __freelocale F
-GLIBC_2.2 __fsetlocking F
-GLIBC_2.2 __fwritable F
-GLIBC_2.2 __fwriting F
-GLIBC_2.2 __fxstat F
-GLIBC_2.2 __fxstat64 F
-GLIBC_2.2 __getdelim F
-GLIBC_2.2 __getmntent_r F
-GLIBC_2.2 __getpagesize F
-GLIBC_2.2 __getpgid F
-GLIBC_2.2 __getpid F
-GLIBC_2.2 __gettimeofday F
-GLIBC_2.2 __gmtime_r F
-GLIBC_2.2 __h_errno_location 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 __isinf F
-GLIBC_2.2 __isinff F
-GLIBC_2.2 __isinfl F
-GLIBC_2.2 __islower_l F
-GLIBC_2.2 __isnan F
-GLIBC_2.2 __isnanf F
-GLIBC_2.2 __isnanl 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 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 __ivaliduser 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_calloc F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
-GLIBC_2.2 __libc_free F
-GLIBC_2.2 __libc_freeres F
-GLIBC_2.2 __libc_init_first F
-GLIBC_2.2 __libc_mallinfo F
-GLIBC_2.2 __libc_malloc F
-GLIBC_2.2 __libc_mallopt F
-GLIBC_2.2 __libc_memalign F
-GLIBC_2.2 __libc_pvalloc F
-GLIBC_2.2 __libc_realloc F
-GLIBC_2.2 __libc_sa_len F
-GLIBC_2.2 __libc_start_main F
-GLIBC_2.2 __libc_valloc F
-GLIBC_2.2 __lseek F
-GLIBC_2.2 __lxstat F
-GLIBC_2.2 __lxstat64 F
-GLIBC_2.2 __malloc_hook D 0x4
-GLIBC_2.2 __malloc_initialize_hook D 0x4
-GLIBC_2.2 __mbrlen F
-GLIBC_2.2 __mbrtowc F
-GLIBC_2.2 __memalign_hook D 0x4
-GLIBC_2.2 __mempcpy F
-GLIBC_2.2 __mempcpy_small F
-GLIBC_2.2 __monstartup F
-GLIBC_2.2 __morecore D 0x4
-GLIBC_2.2 __newlocale F
-GLIBC_2.2 __nl_langinfo_l F
-GLIBC_2.2 __nss_configure_lookup F
-GLIBC_2.2 __nss_database_lookup F
-GLIBC_2.2 __nss_group_lookup F
-GLIBC_2.2 __nss_hosts_lookup F
-GLIBC_2.2 __nss_next F
-GLIBC_2.2 __nss_passwd_lookup F
-GLIBC_2.2 __open F
-GLIBC_2.2 __open64 F
-GLIBC_2.2 __overflow F
-GLIBC_2.2 __pipe F
-GLIBC_2.2 __poll F
-GLIBC_2.2 __pread64 F
-GLIBC_2.2 __printf_fp F
-GLIBC_2.2 __profile_frequency F
-GLIBC_2.2 __progname D 0x4
-GLIBC_2.2 __progname_full D 0x4
-GLIBC_2.2 __pwrite64 F
-GLIBC_2.2 __rawmemchr F
-GLIBC_2.2 __rcmd_errstr D 0x4
-GLIBC_2.2 __read F
-GLIBC_2.2 __realloc_hook D 0x4
-GLIBC_2.2 __register_frame_info F
-GLIBC_2.2 __res_init F
-GLIBC_2.2 __res_nclose F
-GLIBC_2.2 __res_ninit F
-GLIBC_2.2 __res_randomid F
-GLIBC_2.2 __res_state F
-GLIBC_2.2 __sbrk F
-GLIBC_2.2 __sched_get_priority_max F
-GLIBC_2.2 __sched_get_priority_min F
-GLIBC_2.2 __sched_getparam F
-GLIBC_2.2 __sched_getscheduler F
-GLIBC_2.2 __sched_setscheduler F
-GLIBC_2.2 __sched_yield F
-GLIBC_2.2 __secure_getenv F
-GLIBC_2.2 __select F
-GLIBC_2.2 __send F
-GLIBC_2.2 __setmntent F
-GLIBC_2.2 __setpgid F
-GLIBC_2.2 __sigaction F
-GLIBC_2.2 __sigaddset F
-GLIBC_2.2 __sigdelset F
-GLIBC_2.2 __sigismember F
-GLIBC_2.2 __signbit F
-GLIBC_2.2 __signbitf F
-GLIBC_2.2 __sigpause F
-GLIBC_2.2 __sigsetjmp F
-GLIBC_2.2 __sigsuspend F
-GLIBC_2.2 __statfs F
-GLIBC_2.2 __stpcpy F
-GLIBC_2.2 __stpcpy_small F
-GLIBC_2.2 __stpncpy F
-GLIBC_2.2 __strcasecmp 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 __strdup F
-GLIBC_2.2 __strerror_r 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_internal F
-GLIBC_2.2 __strtod_l F
-GLIBC_2.2 __strtof_internal F
-GLIBC_2.2 __strtof_l F
-GLIBC_2.2 __strtok_r F
-GLIBC_2.2 __strtok_r_1c F
-GLIBC_2.2 __strtol_internal F
-GLIBC_2.2 __strtol_l F
-GLIBC_2.2 __strtold_internal F
-GLIBC_2.2 __strtold_l F
-GLIBC_2.2 __strtoll_internal F
-GLIBC_2.2 __strtoll_l F
-GLIBC_2.2 __strtoul_internal F
-GLIBC_2.2 __strtoul_l F
-GLIBC_2.2 __strtoull_internal 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 __sysv_signal F
-GLIBC_2.2 __timezone D 0x4
-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 __tzname D 0x8
-GLIBC_2.2 __uflow F
-GLIBC_2.2 __underflow F
-GLIBC_2.2 __vfork F
-GLIBC_2.2 __vfscanf F
-GLIBC_2.2 __vsnprintf F
-GLIBC_2.2 __vsscanf F
-GLIBC_2.2 __wait F
-GLIBC_2.2 __waitpid F
-GLIBC_2.2 __wcscasecmp_l F
-GLIBC_2.2 __wcscoll_l F
-GLIBC_2.2 __wcsncasecmp_l F
-GLIBC_2.2 __wcstod_internal F
-GLIBC_2.2 __wcstod_l F
-GLIBC_2.2 __wcstof_internal F
-GLIBC_2.2 __wcstof_l F
-GLIBC_2.2 __wcstol_internal F
-GLIBC_2.2 __wcstol_l F
-GLIBC_2.2 __wcstold_internal F
-GLIBC_2.2 __wcstold_l F
-GLIBC_2.2 __wcstoll_internal F
-GLIBC_2.2 __wcstoll_l F
-GLIBC_2.2 __wcstoul_internal F
-GLIBC_2.2 __wcstoul_l F
-GLIBC_2.2 __wcstoull_internal 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 __write F
-GLIBC_2.2 __wuflow F
-GLIBC_2.2 __wunderflow F
-GLIBC_2.2 __xmknod F
-GLIBC_2.2 __xpg_basename F
-GLIBC_2.2 __xpg_sigpause F
-GLIBC_2.2 __xstat 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 _environ D 0x4
-GLIBC_2.2 _exit F
-GLIBC_2.2 _flushlbf F
-GLIBC_2.2 _libc_intl_domainname D 0x5
-GLIBC_2.2 _longjmp F
-GLIBC_2.2 _mcleanup F
-GLIBC_2.2 _mcount F
-GLIBC_2.2 _nl_default_dirname D 0x12
-GLIBC_2.2 _nl_domain_bindings D 0x4
-GLIBC_2.2 _nl_msg_cat_cntr D 0x4
-GLIBC_2.2 _null_auth D 0xc
-GLIBC_2.2 _obstack D 0x4
-GLIBC_2.2 _obstack_allocated_p F
-GLIBC_2.2 _obstack_begin F
-GLIBC_2.2 _obstack_begin_1 F
-GLIBC_2.2 _obstack_free F
-GLIBC_2.2 _obstack_memory_used F
-GLIBC_2.2 _obstack_newchunk F
-GLIBC_2.2 _res D 0x200
-GLIBC_2.2 _res_hconf D 0x30
-GLIBC_2.2 _rpc_dtablesize F
-GLIBC_2.2 _seterr_reply F
-GLIBC_2.2 _setjmp F
-GLIBC_2.2 _sys_errlist D 0x1f4
-GLIBC_2.2 _sys_nerr D 0x4
-GLIBC_2.2 _sys_siglist D 0x100
-GLIBC_2.2 _tolower F
-GLIBC_2.2 _toupper F
-GLIBC_2.2 a64l F
-GLIBC_2.2 abort F
-GLIBC_2.2 abs F
-GLIBC_2.2 accept F
-GLIBC_2.2 access F
-GLIBC_2.2 acct F
-GLIBC_2.2 addmntent F
-GLIBC_2.2 addseverity F
-GLIBC_2.2 adjtime F
-GLIBC_2.2 adjtimex F
-GLIBC_2.2 advance F
-GLIBC_2.2 alarm F
-GLIBC_2.2 alphasort 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 argz_add F
-GLIBC_2.2 argz_add_sep F
-GLIBC_2.2 argz_append F
-GLIBC_2.2 argz_count F
-GLIBC_2.2 argz_create F
-GLIBC_2.2 argz_create_sep F
-GLIBC_2.2 argz_delete F
-GLIBC_2.2 argz_extract F
-GLIBC_2.2 argz_insert F
-GLIBC_2.2 argz_next F
-GLIBC_2.2 argz_replace F
-GLIBC_2.2 argz_stringify F
-GLIBC_2.2 asctime F
-GLIBC_2.2 asctime_r F
-GLIBC_2.2 asprintf F
-GLIBC_2.2 atexit F
-GLIBC_2.2 atof F
-GLIBC_2.2 atoi F
-GLIBC_2.2 atol F
-GLIBC_2.2 atoll F
-GLIBC_2.2 authdes_create F
-GLIBC_2.2 authdes_getucred F
-GLIBC_2.2 authdes_pk_create F
-GLIBC_2.2 authnone_create F
-GLIBC_2.2 authunix_create F
-GLIBC_2.2 authunix_create_default F
-GLIBC_2.2 backtrace F
-GLIBC_2.2 backtrace_symbols F
-GLIBC_2.2 backtrace_symbols_fd F
-GLIBC_2.2 basename F
-GLIBC_2.2 bcmp F
-GLIBC_2.2 bcopy F
-GLIBC_2.2 bdflush F
-GLIBC_2.2 bind F
-GLIBC_2.2 bind_textdomain_codeset F
-GLIBC_2.2 bindresvport F
-GLIBC_2.2 bindtextdomain F
-GLIBC_2.2 brk F
-GLIBC_2.2 bsd_signal F
-GLIBC_2.2 bsearch F
-GLIBC_2.2 btowc F
-GLIBC_2.2 bzero F
-GLIBC_2.2 calloc F
-GLIBC_2.2 callrpc F
-GLIBC_2.2 canonicalize_file_name F
-GLIBC_2.2 capget F
-GLIBC_2.2 capset F
-GLIBC_2.2 catclose F
-GLIBC_2.2 catgets F
-GLIBC_2.2 catopen F
-GLIBC_2.2 cbc_crypt F
-GLIBC_2.2 cfgetispeed F
-GLIBC_2.2 cfgetospeed F
-GLIBC_2.2 cfmakeraw F
-GLIBC_2.2 cfree F
-GLIBC_2.2 cfsetispeed F
-GLIBC_2.2 cfsetospeed F
-GLIBC_2.2 cfsetspeed F
-GLIBC_2.2 chdir F
-GLIBC_2.2 chflags F
-GLIBC_2.2 chmod F
-GLIBC_2.2 chown F
-GLIBC_2.2 chroot F
-GLIBC_2.2 clearenv F
-GLIBC_2.2 clearerr F
-GLIBC_2.2 clearerr_unlocked F
-GLIBC_2.2 clnt_broadcast F
-GLIBC_2.2 clnt_create F
-GLIBC_2.2 clnt_pcreateerror F
-GLIBC_2.2 clnt_perrno F
-GLIBC_2.2 clnt_perror F
-GLIBC_2.2 clnt_spcreateerror F
-GLIBC_2.2 clnt_sperrno F
-GLIBC_2.2 clnt_sperror F
-GLIBC_2.2 clntraw_create F
-GLIBC_2.2 clnttcp_create F
-GLIBC_2.2 clntudp_bufcreate F
-GLIBC_2.2 clntudp_create F
-GLIBC_2.2 clntunix_create F
-GLIBC_2.2 clock F
-GLIBC_2.2 clone F
-GLIBC_2.2 close F
-GLIBC_2.2 closedir F
-GLIBC_2.2 closelog F
-GLIBC_2.2 confstr F
-GLIBC_2.2 connect F
-GLIBC_2.2 copysign F
-GLIBC_2.2 copysignf F
-GLIBC_2.2 copysignl F
-GLIBC_2.2 creat F
-GLIBC_2.2 creat64 F
-GLIBC_2.2 create_module F
-GLIBC_2.2 ctermid F
-GLIBC_2.2 ctime F
-GLIBC_2.2 ctime_r F
-GLIBC_2.2 cuserid F
-GLIBC_2.2 daemon F
-GLIBC_2.2 daylight D 0x4
-GLIBC_2.2 dcgettext F
-GLIBC_2.2 dcngettext F
-GLIBC_2.2 delete_module F
-GLIBC_2.2 des_setparity F
-GLIBC_2.2 dgettext F
-GLIBC_2.2 difftime F
-GLIBC_2.2 dirfd F
-GLIBC_2.2 dirname F
-GLIBC_2.2 div F
-GLIBC_2.2 dngettext F
-GLIBC_2.2 dprintf F
-GLIBC_2.2 drand48 F
-GLIBC_2.2 drand48_r F
-GLIBC_2.2 dup F
-GLIBC_2.2 dup2 F
-GLIBC_2.2 dysize F
-GLIBC_2.2 ecb_crypt F
-GLIBC_2.2 ecvt F
-GLIBC_2.2 ecvt_r F
-GLIBC_2.2 endaliasent F
-GLIBC_2.2 endfsent F
-GLIBC_2.2 endgrent F
-GLIBC_2.2 endhostent F
-GLIBC_2.2 endmntent F
-GLIBC_2.2 endnetent F
-GLIBC_2.2 endnetgrent F
-GLIBC_2.2 endprotoent F
-GLIBC_2.2 endpwent F
-GLIBC_2.2 endrpcent F
-GLIBC_2.2 endservent F
-GLIBC_2.2 endspent F
-GLIBC_2.2 endttyent F
-GLIBC_2.2 endusershell F
-GLIBC_2.2 endutent F
-GLIBC_2.2 endutxent F
-GLIBC_2.2 environ D 0x4
-GLIBC_2.2 envz_add F
-GLIBC_2.2 envz_entry F
-GLIBC_2.2 envz_get F
-GLIBC_2.2 envz_merge F
-GLIBC_2.2 envz_remove F
-GLIBC_2.2 envz_strip F
-GLIBC_2.2 erand48 F
-GLIBC_2.2 erand48_r F
-GLIBC_2.2 err F
-GLIBC_2.2 error F
-GLIBC_2.2 error_at_line F
-GLIBC_2.2 error_message_count D 0x4
-GLIBC_2.2 error_one_per_line D 0x4
-GLIBC_2.2 error_print_progname D 0x4
-GLIBC_2.2 errx F
-GLIBC_2.2 ether_aton F
-GLIBC_2.2 ether_aton_r F
-GLIBC_2.2 ether_hostton F
-GLIBC_2.2 ether_line F
-GLIBC_2.2 ether_ntoa F
-GLIBC_2.2 ether_ntoa_r F
-GLIBC_2.2 ether_ntohost F
-GLIBC_2.2 euidaccess F
-GLIBC_2.2 execl F
-GLIBC_2.2 execle F
-GLIBC_2.2 execlp F
-GLIBC_2.2 execv F
-GLIBC_2.2 execve F
-GLIBC_2.2 execvp F
-GLIBC_2.2 exit F
-GLIBC_2.2 fattach F
-GLIBC_2.2 fchdir F
-GLIBC_2.2 fchflags F
-GLIBC_2.2 fchmod F
-GLIBC_2.2 fchown F
-GLIBC_2.2 fclose F
-GLIBC_2.2 fcloseall F
-GLIBC_2.2 fcntl F
-GLIBC_2.2 fcvt F
-GLIBC_2.2 fcvt_r F
-GLIBC_2.2 fdatasync F
-GLIBC_2.2 fdetach F
-GLIBC_2.2 fdopen F
-GLIBC_2.2 feof F
-GLIBC_2.2 feof_unlocked F
-GLIBC_2.2 ferror F
-GLIBC_2.2 ferror_unlocked F
-GLIBC_2.2 fexecve F
-GLIBC_2.2 fflush F
-GLIBC_2.2 fflush_unlocked F
-GLIBC_2.2 ffs F
-GLIBC_2.2 ffsl F
-GLIBC_2.2 ffsll F
-GLIBC_2.2 fgetc F
-GLIBC_2.2 fgetc_unlocked F
-GLIBC_2.2 fgetgrent F
-GLIBC_2.2 fgetgrent_r F
-GLIBC_2.2 fgetpos F
-GLIBC_2.2 fgetpos64 F
-GLIBC_2.2 fgetpwent F
-GLIBC_2.2 fgetpwent_r F
-GLIBC_2.2 fgets F
-GLIBC_2.2 fgets_unlocked F
-GLIBC_2.2 fgetspent F
-GLIBC_2.2 fgetspent_r 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 fileno F
-GLIBC_2.2 fileno_unlocked F
-GLIBC_2.2 finite F
-GLIBC_2.2 finitef F
-GLIBC_2.2 finitel F
-GLIBC_2.2 flock F
-GLIBC_2.2 flockfile F
-GLIBC_2.2 fmemopen F
-GLIBC_2.2 fmtmsg F
-GLIBC_2.2 fnmatch F
-GLIBC_2.2 fopen F
-GLIBC_2.2 fopen64 F
-GLIBC_2.2 fopencookie F
-GLIBC_2.2 fork F
-GLIBC_2.2 fpathconf F
-GLIBC_2.2 fprintf F
-GLIBC_2.2 fputc F
-GLIBC_2.2 fputc_unlocked F
-GLIBC_2.2 fputs 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 F
-GLIBC_2.2 fread_unlocked F
-GLIBC_2.2 free F
-GLIBC_2.2 freeaddrinfo F
-GLIBC_2.2 freopen F
-GLIBC_2.2 freopen64 F
-GLIBC_2.2 frexp F
-GLIBC_2.2 frexpf F
-GLIBC_2.2 frexpl F
-GLIBC_2.2 fscanf F
-GLIBC_2.2 fseek F
-GLIBC_2.2 fseeko F
-GLIBC_2.2 fseeko64 F
-GLIBC_2.2 fsetpos F
-GLIBC_2.2 fsetpos64 F
-GLIBC_2.2 fstatfs F
-GLIBC_2.2 fstatfs64 F
-GLIBC_2.2 fstatvfs F
-GLIBC_2.2 fstatvfs64 F
-GLIBC_2.2 fsync F
-GLIBC_2.2 ftell F
-GLIBC_2.2 ftello F
-GLIBC_2.2 ftello64 F
-GLIBC_2.2 ftime F
-GLIBC_2.2 ftok F
-GLIBC_2.2 ftruncate F
-GLIBC_2.2 ftruncate64 F
-GLIBC_2.2 ftrylockfile F
-GLIBC_2.2 fts_children F
-GLIBC_2.2 fts_close F
-GLIBC_2.2 fts_open F
-GLIBC_2.2 fts_read F
-GLIBC_2.2 fts_set F
-GLIBC_2.2 ftw F
-GLIBC_2.2 ftw64 F
-GLIBC_2.2 funlockfile F
-GLIBC_2.2 fwide F
-GLIBC_2.2 fwprintf F
-GLIBC_2.2 fwrite F
-GLIBC_2.2 fwrite_unlocked F
-GLIBC_2.2 fwscanf F
-GLIBC_2.2 gai_strerror F
-GLIBC_2.2 gcvt F
-GLIBC_2.2 get_avphys_pages F
-GLIBC_2.2 get_current_dir_name F
-GLIBC_2.2 get_kernel_syms F
-GLIBC_2.2 get_myaddress F
-GLIBC_2.2 get_nprocs F
-GLIBC_2.2 get_nprocs_conf F
-GLIBC_2.2 get_phys_pages F
-GLIBC_2.2 getaddrinfo F
-GLIBC_2.2 getaliasbyname F
-GLIBC_2.2 getaliasbyname_r F
-GLIBC_2.2 getaliasent F
-GLIBC_2.2 getaliasent_r F
-GLIBC_2.2 getc F
-GLIBC_2.2 getc_unlocked F
-GLIBC_2.2 getchar F
-GLIBC_2.2 getchar_unlocked F
-GLIBC_2.2 getcontext F
-GLIBC_2.2 getcwd F
-GLIBC_2.2 getdate F
-GLIBC_2.2 getdate_err D 0x4
-GLIBC_2.2 getdate_r F
-GLIBC_2.2 getdelim F
-GLIBC_2.2 getdirentries F
-GLIBC_2.2 getdirentries64 F
-GLIBC_2.2 getdomainname F
-GLIBC_2.2 getdtablesize F
-GLIBC_2.2 getegid F
-GLIBC_2.2 getenv F
-GLIBC_2.2 geteuid F
-GLIBC_2.2 getfsent F
-GLIBC_2.2 getfsfile F
-GLIBC_2.2 getfsspec F
-GLIBC_2.2 getgid F
-GLIBC_2.2 getgrent F
-GLIBC_2.2 getgrent_r F
-GLIBC_2.2 getgrgid F
-GLIBC_2.2 getgrgid_r F
-GLIBC_2.2 getgrnam F
-GLIBC_2.2 getgrnam_r F
-GLIBC_2.2 getgroups F
-GLIBC_2.2 gethostbyaddr F
-GLIBC_2.2 gethostbyaddr_r F
-GLIBC_2.2 gethostbyname F
-GLIBC_2.2 gethostbyname2 F
-GLIBC_2.2 gethostbyname2_r F
-GLIBC_2.2 gethostbyname_r F
-GLIBC_2.2 gethostent F
-GLIBC_2.2 gethostent_r F
-GLIBC_2.2 gethostid F
-GLIBC_2.2 gethostname F
-GLIBC_2.2 getitimer F
-GLIBC_2.2 getline F
-GLIBC_2.2 getloadavg F
-GLIBC_2.2 getlogin F
-GLIBC_2.2 getlogin_r F
-GLIBC_2.2 getmntent F
-GLIBC_2.2 getmntent_r F
-GLIBC_2.2 getmsg F
-GLIBC_2.2 getnameinfo F
-GLIBC_2.2 getnetbyaddr F
-GLIBC_2.2 getnetbyaddr_r F
-GLIBC_2.2 getnetbyname F
-GLIBC_2.2 getnetbyname_r F
-GLIBC_2.2 getnetent F
-GLIBC_2.2 getnetent_r F
-GLIBC_2.2 getnetgrent F
-GLIBC_2.2 getnetgrent_r F
-GLIBC_2.2 getnetname F
-GLIBC_2.2 getopt F
-GLIBC_2.2 getopt_long F
-GLIBC_2.2 getopt_long_only F
-GLIBC_2.2 getpagesize F
-GLIBC_2.2 getpass F
-GLIBC_2.2 getpeername F
-GLIBC_2.2 getpgid F
-GLIBC_2.2 getpgrp F
-GLIBC_2.2 getpid F
-GLIBC_2.2 getpmsg F
-GLIBC_2.2 getppid F
-GLIBC_2.2 getpriority F
-GLIBC_2.2 getprotobyname F
-GLIBC_2.2 getprotobyname_r F
-GLIBC_2.2 getprotobynumber F
-GLIBC_2.2 getprotobynumber_r F
-GLIBC_2.2 getprotoent F
-GLIBC_2.2 getprotoent_r F
-GLIBC_2.2 getpt F
-GLIBC_2.2 getpublickey F
-GLIBC_2.2 getpw F
-GLIBC_2.2 getpwent F
-GLIBC_2.2 getpwent_r F
-GLIBC_2.2 getpwnam F
-GLIBC_2.2 getpwnam_r F
-GLIBC_2.2 getpwuid F
-GLIBC_2.2 getpwuid_r F
-GLIBC_2.2 getresgid F
-GLIBC_2.2 getresuid F
-GLIBC_2.2 getrlimit F
-GLIBC_2.2 getrlimit64 F
-GLIBC_2.2 getrpcbyname F
-GLIBC_2.2 getrpcbyname_r F
-GLIBC_2.2 getrpcbynumber F
-GLIBC_2.2 getrpcbynumber_r F
-GLIBC_2.2 getrpcent F
-GLIBC_2.2 getrpcent_r F
-GLIBC_2.2 getrpcport F
-GLIBC_2.2 getrusage F
-GLIBC_2.2 gets F
-GLIBC_2.2 getsecretkey F
-GLIBC_2.2 getservbyname F
-GLIBC_2.2 getservbyname_r F
-GLIBC_2.2 getservbyport F
-GLIBC_2.2 getservbyport_r F
-GLIBC_2.2 getservent F
-GLIBC_2.2 getservent_r F
-GLIBC_2.2 getsid F
-GLIBC_2.2 getsockname F
-GLIBC_2.2 getsockopt F
-GLIBC_2.2 getspent F
-GLIBC_2.2 getspent_r F
-GLIBC_2.2 getspnam F
-GLIBC_2.2 getspnam_r F
-GLIBC_2.2 getsubopt F
-GLIBC_2.2 gettext F
-GLIBC_2.2 gettimeofday F
-GLIBC_2.2 getttyent F
-GLIBC_2.2 getttynam F
-GLIBC_2.2 getuid F
-GLIBC_2.2 getusershell F
-GLIBC_2.2 getutent F
-GLIBC_2.2 getutent_r F
-GLIBC_2.2 getutid F
-GLIBC_2.2 getutid_r F
-GLIBC_2.2 getutline F
-GLIBC_2.2 getutline_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 getw 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 getwd F
-GLIBC_2.2 glob F
-GLIBC_2.2 glob64 F
-GLIBC_2.2 glob_pattern_p F
-GLIBC_2.2 globfree F
-GLIBC_2.2 globfree64 F
-GLIBC_2.2 gmtime F
-GLIBC_2.2 gmtime_r 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 group_member F
-GLIBC_2.2 gsignal F
-GLIBC_2.2 gtty F
-GLIBC_2.2 h_errlist D 0x14
-GLIBC_2.2 h_nerr D 0x4
-GLIBC_2.2 hasmntopt F
-GLIBC_2.2 hcreate F
-GLIBC_2.2 hcreate_r F
-GLIBC_2.2 hdestroy F
-GLIBC_2.2 hdestroy_r F
-GLIBC_2.2 herror F
-GLIBC_2.2 host2netname F
-GLIBC_2.2 hsearch F
-GLIBC_2.2 hsearch_r F
-GLIBC_2.2 hstrerror F
-GLIBC_2.2 htonl F
-GLIBC_2.2 htons 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 index F
-GLIBC_2.2 inet_addr F
-GLIBC_2.2 inet_aton F
-GLIBC_2.2 inet_lnaof F
-GLIBC_2.2 inet_makeaddr F
-GLIBC_2.2 inet_netof F
-GLIBC_2.2 inet_network F
-GLIBC_2.2 inet_nsap_addr F
-GLIBC_2.2 inet_nsap_ntoa F
-GLIBC_2.2 inet_ntoa F
-GLIBC_2.2 inet_ntop F
-GLIBC_2.2 inet_pton F
-GLIBC_2.2 init_module F
-GLIBC_2.2 initgroups F
-GLIBC_2.2 initstate F
-GLIBC_2.2 initstate_r F
-GLIBC_2.2 innetgr F
-GLIBC_2.2 insque F
-GLIBC_2.2 ioctl F
-GLIBC_2.2 iruserok F
-GLIBC_2.2 iruserok_af F
-GLIBC_2.2 isalnum F
-GLIBC_2.2 isalpha F
-GLIBC_2.2 isascii F
-GLIBC_2.2 isastream F
-GLIBC_2.2 isatty F
-GLIBC_2.2 isblank F
-GLIBC_2.2 iscntrl F
-GLIBC_2.2 isdigit F
-GLIBC_2.2 isfdtype F
-GLIBC_2.2 isgraph F
-GLIBC_2.2 isinf F
-GLIBC_2.2 isinff F
-GLIBC_2.2 isinfl F
-GLIBC_2.2 islower F
-GLIBC_2.2 isnan F
-GLIBC_2.2 isnanf F
-GLIBC_2.2 isnanl F
-GLIBC_2.2 isprint F
-GLIBC_2.2 ispunct F
-GLIBC_2.2 isspace F
-GLIBC_2.2 isupper F
-GLIBC_2.2 iswalnum F
-GLIBC_2.2 iswalpha F
-GLIBC_2.2 iswblank F
-GLIBC_2.2 iswcntrl F
-GLIBC_2.2 iswctype F
-GLIBC_2.2 iswdigit F
-GLIBC_2.2 iswgraph F
-GLIBC_2.2 iswlower F
-GLIBC_2.2 iswprint F
-GLIBC_2.2 iswpunct F
-GLIBC_2.2 iswspace F
-GLIBC_2.2 iswupper F
-GLIBC_2.2 iswxdigit F
-GLIBC_2.2 isxdigit F
-GLIBC_2.2 jrand48 F
-GLIBC_2.2 jrand48_r 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 kill F
-GLIBC_2.2 killpg F
-GLIBC_2.2 klogctl F
-GLIBC_2.2 l64a F
-GLIBC_2.2 labs F
-GLIBC_2.2 lchown F
-GLIBC_2.2 lckpwdf F
-GLIBC_2.2 lcong48 F
-GLIBC_2.2 lcong48_r F
-GLIBC_2.2 ldexp F
-GLIBC_2.2 ldexpf F
-GLIBC_2.2 ldexpl F
-GLIBC_2.2 ldiv F
-GLIBC_2.2 lfind F
-GLIBC_2.2 link F
-GLIBC_2.2 listen F
-GLIBC_2.2 llabs F
-GLIBC_2.2 lldiv F
-GLIBC_2.2 llseek F
-GLIBC_2.2 loc1 D 0x4
-GLIBC_2.2 loc2 D 0x4
-GLIBC_2.2 localeconv F
-GLIBC_2.2 localtime F
-GLIBC_2.2 localtime_r F
-GLIBC_2.2 lockf F
-GLIBC_2.2 lockf64 F
-GLIBC_2.2 locs D 0x4
-GLIBC_2.2 longjmp F
-GLIBC_2.2 lrand48 F
-GLIBC_2.2 lrand48_r F
-GLIBC_2.2 lsearch F
-GLIBC_2.2 lseek F
-GLIBC_2.2 lseek64 F
-GLIBC_2.2 madvise F
-GLIBC_2.2 makecontext F
-GLIBC_2.2 mallinfo F
-GLIBC_2.2 malloc F
-GLIBC_2.2 malloc_get_state F
-GLIBC_2.2 malloc_set_state F
-GLIBC_2.2 malloc_stats F
-GLIBC_2.2 malloc_trim F
-GLIBC_2.2 malloc_usable_size F
-GLIBC_2.2 mallopt F
-GLIBC_2.2 mallwatch D 0x4
-GLIBC_2.2 mblen F
-GLIBC_2.2 mbrlen F
-GLIBC_2.2 mbrtowc F
-GLIBC_2.2 mbsinit F
-GLIBC_2.2 mbsnrtowcs F
-GLIBC_2.2 mbsrtowcs F
-GLIBC_2.2 mbstowcs F
-GLIBC_2.2 mbtowc F
-GLIBC_2.2 mcheck F
-GLIBC_2.2 mcheck_check_all F
-GLIBC_2.2 mcheck_pedantic F
-GLIBC_2.2 mcount F
-GLIBC_2.2 memalign F
-GLIBC_2.2 memccpy F
-GLIBC_2.2 memchr F
-GLIBC_2.2 memcmp F
-GLIBC_2.2 memcpy F
-GLIBC_2.2 memfrob F
-GLIBC_2.2 memmem F
-GLIBC_2.2 memmove F
-GLIBC_2.2 mempcpy F
-GLIBC_2.2 memrchr F
-GLIBC_2.2 memset F
-GLIBC_2.2 mincore F
-GLIBC_2.2 mkdir F
-GLIBC_2.2 mkdtemp F
-GLIBC_2.2 mkfifo F
-GLIBC_2.2 mkstemp F
-GLIBC_2.2 mkstemp64 F
-GLIBC_2.2 mktemp F
-GLIBC_2.2 mktime F
-GLIBC_2.2 mlock F
-GLIBC_2.2 mlockall F
-GLIBC_2.2 mmap F
-GLIBC_2.2 mmap64 F
-GLIBC_2.2 modf F
-GLIBC_2.2 modff F
-GLIBC_2.2 modfl F
-GLIBC_2.2 moncontrol F
-GLIBC_2.2 monstartup F
-GLIBC_2.2 mount F
-GLIBC_2.2 mprobe F
-GLIBC_2.2 mprotect F
-GLIBC_2.2 mrand48 F
-GLIBC_2.2 mrand48_r F
-GLIBC_2.2 mremap F
-GLIBC_2.2 msgctl F
-GLIBC_2.2 msgget F
-GLIBC_2.2 msgrcv F
-GLIBC_2.2 msgsnd F
-GLIBC_2.2 msync F
-GLIBC_2.2 mtrace F
-GLIBC_2.2 munlock F
-GLIBC_2.2 munlockall F
-GLIBC_2.2 munmap F
-GLIBC_2.2 muntrace F
-GLIBC_2.2 nanosleep F
-GLIBC_2.2 netname2host F
-GLIBC_2.2 netname2user F
-GLIBC_2.2 nfsservctl F
-GLIBC_2.2 nftw F
-GLIBC_2.2 nftw64 F
-GLIBC_2.2 ngettext F
-GLIBC_2.2 nice F
-GLIBC_2.2 nl_langinfo F
-GLIBC_2.2 nrand48 F
-GLIBC_2.2 nrand48_r F
-GLIBC_2.2 ntohl F
-GLIBC_2.2 ntohs F
-GLIBC_2.2 ntp_adjtime F
-GLIBC_2.2 ntp_gettime F
-GLIBC_2.2 obstack_alloc_failed_handler D 0x4
-GLIBC_2.2 obstack_exit_failure D 0x4
-GLIBC_2.2 obstack_free F
-GLIBC_2.2 obstack_printf F
-GLIBC_2.2 obstack_vprintf F
-GLIBC_2.2 on_exit F
-GLIBC_2.2 open F
-GLIBC_2.2 open64 F
-GLIBC_2.2 open_memstream F
-GLIBC_2.2 opendir F
-GLIBC_2.2 openlog F
-GLIBC_2.2 optarg D 0x4
-GLIBC_2.2 opterr D 0x4
-GLIBC_2.2 optind D 0x4
-GLIBC_2.2 optopt D 0x4
-GLIBC_2.2 parse_printf_format F
-GLIBC_2.2 passwd2des F
-GLIBC_2.2 pathconf F
-GLIBC_2.2 pause F
-GLIBC_2.2 pclose F
-GLIBC_2.2 perror F
-GLIBC_2.2 personality F
-GLIBC_2.2 pipe F
-GLIBC_2.2 pmap_getmaps F
-GLIBC_2.2 pmap_getport F
-GLIBC_2.2 pmap_rmtcall F
-GLIBC_2.2 pmap_set F
-GLIBC_2.2 pmap_unset F
-GLIBC_2.2 poll 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 prctl F
-GLIBC_2.2 pread F
-GLIBC_2.2 pread64 F
-GLIBC_2.2 printf F
-GLIBC_2.2 printf_size F
-GLIBC_2.2 printf_size_info F
-GLIBC_2.2 profil F
-GLIBC_2.2 program_invocation_name D 0x4
-GLIBC_2.2 program_invocation_short_name D 0x4
-GLIBC_2.2 pselect F
-GLIBC_2.2 psignal F
-GLIBC_2.2 pthread_attr_destroy F
-GLIBC_2.2 pthread_attr_getdetachstate F
-GLIBC_2.2 pthread_attr_getinheritsched F
-GLIBC_2.2 pthread_attr_getschedparam F
-GLIBC_2.2 pthread_attr_getschedpolicy F
-GLIBC_2.2 pthread_attr_getscope F
-GLIBC_2.2 pthread_attr_init F
-GLIBC_2.2 pthread_attr_setdetachstate F
-GLIBC_2.2 pthread_attr_setinheritsched F
-GLIBC_2.2 pthread_attr_setschedparam F
-GLIBC_2.2 pthread_attr_setschedpolicy F
-GLIBC_2.2 pthread_attr_setscope F
-GLIBC_2.2 pthread_cond_broadcast F
-GLIBC_2.2 pthread_cond_destroy F
-GLIBC_2.2 pthread_cond_init F
-GLIBC_2.2 pthread_cond_signal F
-GLIBC_2.2 pthread_cond_timedwait F
-GLIBC_2.2 pthread_cond_wait F
-GLIBC_2.2 pthread_condattr_destroy F
-GLIBC_2.2 pthread_condattr_init F
-GLIBC_2.2 pthread_equal F
-GLIBC_2.2 pthread_exit F
-GLIBC_2.2 pthread_getschedparam F
-GLIBC_2.2 pthread_mutex_destroy F
-GLIBC_2.2 pthread_mutex_init F
-GLIBC_2.2 pthread_mutex_lock F
-GLIBC_2.2 pthread_mutex_unlock F
-GLIBC_2.2 pthread_self F
-GLIBC_2.2 pthread_setcancelstate F
-GLIBC_2.2 pthread_setcanceltype F
-GLIBC_2.2 pthread_setschedparam F
-GLIBC_2.2 ptrace F
-GLIBC_2.2 ptsname F
-GLIBC_2.2 ptsname_r F
-GLIBC_2.2 putc F
-GLIBC_2.2 putc_unlocked F
-GLIBC_2.2 putchar F
-GLIBC_2.2 putchar_unlocked F
-GLIBC_2.2 putenv F
-GLIBC_2.2 putgrent F
-GLIBC_2.2 putmsg F
-GLIBC_2.2 putpmsg F
-GLIBC_2.2 putpwent F
-GLIBC_2.2 puts F
-GLIBC_2.2 putspent F
-GLIBC_2.2 pututline F
-GLIBC_2.2 pututxline F
-GLIBC_2.2 putw 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 pvalloc F
-GLIBC_2.2 pwrite F
-GLIBC_2.2 pwrite64 F
-GLIBC_2.2 qecvt F
-GLIBC_2.2 qecvt_r F
-GLIBC_2.2 qfcvt F
-GLIBC_2.2 qfcvt_r F
-GLIBC_2.2 qgcvt F
-GLIBC_2.2 qsort F
-GLIBC_2.2 query_module F
-GLIBC_2.2 quotactl F
-GLIBC_2.2 raise F
-GLIBC_2.2 rand F
-GLIBC_2.2 rand_r F
-GLIBC_2.2 random F
-GLIBC_2.2 random_r F
-GLIBC_2.2 rawmemchr F
-GLIBC_2.2 rcmd F
-GLIBC_2.2 rcmd_af F
-GLIBC_2.2 re_comp F
-GLIBC_2.2 re_compile_fastmap F
-GLIBC_2.2 re_compile_pattern F
-GLIBC_2.2 re_exec F
-GLIBC_2.2 re_match F
-GLIBC_2.2 re_match_2 F
-GLIBC_2.2 re_max_failures D 0x4
-GLIBC_2.2 re_search F
-GLIBC_2.2 re_search_2 F
-GLIBC_2.2 re_set_registers F
-GLIBC_2.2 re_set_syntax F
-GLIBC_2.2 re_syntax_options D 0x4
-GLIBC_2.2 read F
-GLIBC_2.2 readdir F
-GLIBC_2.2 readdir64 F
-GLIBC_2.2 readdir64_r F
-GLIBC_2.2 readdir_r F
-GLIBC_2.2 readlink F
-GLIBC_2.2 readv F
-GLIBC_2.2 realloc F
-GLIBC_2.2 realpath F
-GLIBC_2.2 reboot F
-GLIBC_2.2 recv F
-GLIBC_2.2 recvfrom F
-GLIBC_2.2 recvmsg F
-GLIBC_2.2 regcomp F
-GLIBC_2.2 regerror F
-GLIBC_2.2 regexec F
-GLIBC_2.2 regfree F
-GLIBC_2.2 register_printf_function F
-GLIBC_2.2 registerrpc F
-GLIBC_2.2 remove F
-GLIBC_2.2 remque F
-GLIBC_2.2 rename F
-GLIBC_2.2 revoke F
-GLIBC_2.2 rewind F
-GLIBC_2.2 rewinddir F
-GLIBC_2.2 rexec F
-GLIBC_2.2 rexec_af F
-GLIBC_2.2 rexecoptions D 0x4
-GLIBC_2.2 rindex F
-GLIBC_2.2 rmdir F
-GLIBC_2.2 rpc_createerr D 0x10
-GLIBC_2.2 rpmatch F
-GLIBC_2.2 rresvport F
-GLIBC_2.2 rresvport_af F
-GLIBC_2.2 rtime F
-GLIBC_2.2 ruserok F
-GLIBC_2.2 ruserok_af F
-GLIBC_2.2 ruserpass F
-GLIBC_2.2 sbrk F
-GLIBC_2.2 scalbn F
-GLIBC_2.2 scalbnf F
-GLIBC_2.2 scalbnl F
-GLIBC_2.2 scandir F
-GLIBC_2.2 scandir64 F
-GLIBC_2.2 scanf F
-GLIBC_2.2 sched_get_priority_max F
-GLIBC_2.2 sched_get_priority_min F
-GLIBC_2.2 sched_getparam F
-GLIBC_2.2 sched_getscheduler F
-GLIBC_2.2 sched_rr_get_interval F
-GLIBC_2.2 sched_setparam F
-GLIBC_2.2 sched_setscheduler F
-GLIBC_2.2 sched_yield F
-GLIBC_2.2 seed48 F
-GLIBC_2.2 seed48_r F
-GLIBC_2.2 seekdir F
-GLIBC_2.2 select F
-GLIBC_2.2 semctl F
-GLIBC_2.2 semget F
-GLIBC_2.2 semop F
-GLIBC_2.2 send F
-GLIBC_2.2 sendfile F
-GLIBC_2.2 sendmsg F
-GLIBC_2.2 sendto F
-GLIBC_2.2 setaliasent F
-GLIBC_2.2 setbuf F
-GLIBC_2.2 setbuffer F
-GLIBC_2.2 setcontext F
-GLIBC_2.2 setdomainname F
-GLIBC_2.2 setegid F
-GLIBC_2.2 setenv F
-GLIBC_2.2 seteuid F
-GLIBC_2.2 setfsent F
-GLIBC_2.2 setfsgid F
-GLIBC_2.2 setfsuid F
-GLIBC_2.2 setgid F
-GLIBC_2.2 setgrent F
-GLIBC_2.2 setgroups F
-GLIBC_2.2 sethostent F
-GLIBC_2.2 sethostid F
-GLIBC_2.2 sethostname F
-GLIBC_2.2 setitimer F
-GLIBC_2.2 setjmp F
-GLIBC_2.2 setlinebuf F
-GLIBC_2.2 setlocale F
-GLIBC_2.2 setlogin F
-GLIBC_2.2 setlogmask F
-GLIBC_2.2 setmntent F
-GLIBC_2.2 setnetent F
-GLIBC_2.2 setnetgrent F
-GLIBC_2.2 setpgid F
-GLIBC_2.2 setpgrp F
-GLIBC_2.2 setpriority F
-GLIBC_2.2 setprotoent F
-GLIBC_2.2 setpwent F
-GLIBC_2.2 setregid F
-GLIBC_2.2 setresgid F
-GLIBC_2.2 setresuid F
-GLIBC_2.2 setreuid F
-GLIBC_2.2 setrlimit F
-GLIBC_2.2 setrlimit64 F
-GLIBC_2.2 setrpcent F
-GLIBC_2.2 setservent F
-GLIBC_2.2 setsid F
-GLIBC_2.2 setsockopt F
-GLIBC_2.2 setspent F
-GLIBC_2.2 setstate F
-GLIBC_2.2 setstate_r F
-GLIBC_2.2 settimeofday F
-GLIBC_2.2 setttyent F
-GLIBC_2.2 setuid F
-GLIBC_2.2 setusershell F
-GLIBC_2.2 setutent F
-GLIBC_2.2 setutxent F
-GLIBC_2.2 setvbuf F
-GLIBC_2.2 sgetspent F
-GLIBC_2.2 sgetspent_r F
-GLIBC_2.2 shmat F
-GLIBC_2.2 shmctl F
-GLIBC_2.2 shmdt F
-GLIBC_2.2 shmget F
-GLIBC_2.2 shutdown F
-GLIBC_2.2 sigaction F
-GLIBC_2.2 sigaddset F
-GLIBC_2.2 sigaltstack F
-GLIBC_2.2 sigandset F
-GLIBC_2.2 sigblock F
-GLIBC_2.2 sigdelset F
-GLIBC_2.2 sigemptyset F
-GLIBC_2.2 sigfillset F
-GLIBC_2.2 siggetmask F
-GLIBC_2.2 sighold F
-GLIBC_2.2 sigignore F
-GLIBC_2.2 siginterrupt F
-GLIBC_2.2 sigisemptyset F
-GLIBC_2.2 sigismember F
-GLIBC_2.2 siglongjmp F
-GLIBC_2.2 signal F
-GLIBC_2.2 sigorset F
-GLIBC_2.2 sigpause F
-GLIBC_2.2 sigpending F
-GLIBC_2.2 sigprocmask F
-GLIBC_2.2 sigqueue F
-GLIBC_2.2 sigrelse F
-GLIBC_2.2 sigreturn F
-GLIBC_2.2 sigset F
-GLIBC_2.2 sigsetmask F
-GLIBC_2.2 sigstack F
-GLIBC_2.2 sigsuspend F
-GLIBC_2.2 sigtimedwait F
-GLIBC_2.2 sigvec F
-GLIBC_2.2 sigwait F
-GLIBC_2.2 sigwaitinfo F
-GLIBC_2.2 sleep F
-GLIBC_2.2 snprintf F
-GLIBC_2.2 socket F
-GLIBC_2.2 socketpair F
-GLIBC_2.2 sprintf F
-GLIBC_2.2 srand F
-GLIBC_2.2 srand48 F
-GLIBC_2.2 srand48_r F
-GLIBC_2.2 srandom F
-GLIBC_2.2 srandom_r F
-GLIBC_2.2 sscanf F
-GLIBC_2.2 ssignal F
-GLIBC_2.2 sstk F
-GLIBC_2.2 statfs F
-GLIBC_2.2 statfs64 F
-GLIBC_2.2 statvfs F
-GLIBC_2.2 statvfs64 F
-GLIBC_2.2 stderr D 0x4
-GLIBC_2.2 stdin D 0x4
-GLIBC_2.2 stdout D 0x4
-GLIBC_2.2 step F
-GLIBC_2.2 stime F
-GLIBC_2.2 stpcpy F
-GLIBC_2.2 stpncpy F
-GLIBC_2.2 strcasecmp F
-GLIBC_2.2 strcasestr F
-GLIBC_2.2 strcat F
-GLIBC_2.2 strchr F
-GLIBC_2.2 strchrnul F
-GLIBC_2.2 strcmp F
-GLIBC_2.2 strcoll F
-GLIBC_2.2 strcpy F
-GLIBC_2.2 strcspn F
-GLIBC_2.2 strdup F
-GLIBC_2.2 strerror F
-GLIBC_2.2 strerror_r F
-GLIBC_2.2 strfmon F
-GLIBC_2.2 strfry F
-GLIBC_2.2 strftime F
-GLIBC_2.2 strlen F
-GLIBC_2.2 strncasecmp F
-GLIBC_2.2 strncat F
-GLIBC_2.2 strncmp F
-GLIBC_2.2 strncpy F
-GLIBC_2.2 strndup F
-GLIBC_2.2 strnlen F
-GLIBC_2.2 strpbrk F
-GLIBC_2.2 strptime F
-GLIBC_2.2 strrchr F
-GLIBC_2.2 strsep F
-GLIBC_2.2 strsignal F
-GLIBC_2.2 strspn F
-GLIBC_2.2 strstr F
-GLIBC_2.2 strtod F
-GLIBC_2.2 strtof F
-GLIBC_2.2 strtoimax F
-GLIBC_2.2 strtok F
-GLIBC_2.2 strtok_r F
-GLIBC_2.2 strtol F
-GLIBC_2.2 strtold F
-GLIBC_2.2 strtoll F
-GLIBC_2.2 strtoq F
-GLIBC_2.2 strtoul F
-GLIBC_2.2 strtoull F
-GLIBC_2.2 strtoumax F
-GLIBC_2.2 strtouq F
-GLIBC_2.2 strverscmp F
-GLIBC_2.2 strxfrm F
-GLIBC_2.2 stty F
-GLIBC_2.2 svc_exit F
-GLIBC_2.2 svc_fdset D 0x80
-GLIBC_2.2 svc_getreq F
-GLIBC_2.2 svc_getreq_common F
-GLIBC_2.2 svc_getreq_poll F
-GLIBC_2.2 svc_getreqset F
-GLIBC_2.2 svc_max_pollfd D 0x4
-GLIBC_2.2 svc_pollfd D 0x4
-GLIBC_2.2 svc_register F
-GLIBC_2.2 svc_run F
-GLIBC_2.2 svc_sendreply F
-GLIBC_2.2 svc_unregister F
-GLIBC_2.2 svcauthdes_stats D 0xc
-GLIBC_2.2 svcerr_auth F
-GLIBC_2.2 svcerr_decode F
-GLIBC_2.2 svcerr_noproc F
-GLIBC_2.2 svcerr_noprog F
-GLIBC_2.2 svcerr_progvers F
-GLIBC_2.2 svcerr_systemerr F
-GLIBC_2.2 svcerr_weakauth F
-GLIBC_2.2 svcfd_create F
-GLIBC_2.2 svcraw_create F
-GLIBC_2.2 svctcp_create F
-GLIBC_2.2 svcudp_bufcreate F
-GLIBC_2.2 svcudp_create F
-GLIBC_2.2 svcudp_enablecache F
-GLIBC_2.2 svcunix_create F
-GLIBC_2.2 svcunixfd_create F
-GLIBC_2.2 swab F
-GLIBC_2.2 swapcontext F
-GLIBC_2.2 swapoff F
-GLIBC_2.2 swapon F
-GLIBC_2.2 swprintf F
-GLIBC_2.2 swscanf F
-GLIBC_2.2 symlink F
-GLIBC_2.2 sync F
-GLIBC_2.2 sys_errlist D 0x1f4
-GLIBC_2.2 sys_nerr D 0x4
-GLIBC_2.2 sys_sigabbrev D 0x100
-GLIBC_2.2 sys_siglist D 0x100
-GLIBC_2.2 syscall F
-GLIBC_2.2 sysconf F
-GLIBC_2.2 sysctl F
-GLIBC_2.2 sysinfo F
-GLIBC_2.2 syslog F
-GLIBC_2.2 system F
-GLIBC_2.2 sysv_signal F
-GLIBC_2.2 tcdrain F
-GLIBC_2.2 tcflow F
-GLIBC_2.2 tcflush F
-GLIBC_2.2 tcgetattr F
-GLIBC_2.2 tcgetpgrp F
-GLIBC_2.2 tcgetsid F
-GLIBC_2.2 tcsendbreak F
-GLIBC_2.2 tcsetattr F
-GLIBC_2.2 tcsetpgrp F
-GLIBC_2.2 tdelete F
-GLIBC_2.2 tdestroy F
-GLIBC_2.2 telldir F
-GLIBC_2.2 tempnam F
-GLIBC_2.2 textdomain F
-GLIBC_2.2 tfind F
-GLIBC_2.2 time F
-GLIBC_2.2 timegm F
-GLIBC_2.2 timelocal F
-GLIBC_2.2 times F
-GLIBC_2.2 timezone D 0x4
-GLIBC_2.2 tmpfile F
-GLIBC_2.2 tmpfile64 F
-GLIBC_2.2 tmpnam F
-GLIBC_2.2 tmpnam_r F
-GLIBC_2.2 toascii F
-GLIBC_2.2 tolower F
-GLIBC_2.2 toupper F
-GLIBC_2.2 towctrans F
-GLIBC_2.2 towlower F
-GLIBC_2.2 towupper F
-GLIBC_2.2 tr_break F
-GLIBC_2.2 truncate F
-GLIBC_2.2 truncate64 F
-GLIBC_2.2 tsearch F
-GLIBC_2.2 ttyname F
-GLIBC_2.2 ttyname_r F
-GLIBC_2.2 ttyslot F
-GLIBC_2.2 twalk F
-GLIBC_2.2 tzname D 0x8
-GLIBC_2.2 tzset F
-GLIBC_2.2 ualarm F
-GLIBC_2.2 ulckpwdf F
-GLIBC_2.2 ulimit F
-GLIBC_2.2 umask F
-GLIBC_2.2 umount F
-GLIBC_2.2 umount2 F
-GLIBC_2.2 uname F
-GLIBC_2.2 ungetc F
-GLIBC_2.2 ungetwc F
-GLIBC_2.2 unlink F
-GLIBC_2.2 unlockpt F
-GLIBC_2.2 unsetenv F
-GLIBC_2.2 updwtmp F
-GLIBC_2.2 updwtmpx F
-GLIBC_2.2 uselib F
-GLIBC_2.2 user2netname F
-GLIBC_2.2 usleep F
-GLIBC_2.2 ustat F
-GLIBC_2.2 utime F
-GLIBC_2.2 utimes F
-GLIBC_2.2 utmpname F
-GLIBC_2.2 utmpxname F
-GLIBC_2.2 valloc F
-GLIBC_2.2 vasprintf F
-GLIBC_2.2 vdprintf F
-GLIBC_2.2 verr F
-GLIBC_2.2 verrx F
-GLIBC_2.2 versionsort F
-GLIBC_2.2 versionsort64 F
-GLIBC_2.2 vfork F
-GLIBC_2.2 vfprintf F
-GLIBC_2.2 vfscanf F
-GLIBC_2.2 vfwprintf F
-GLIBC_2.2 vfwscanf F
-GLIBC_2.2 vhangup F
-GLIBC_2.2 vlimit F
-GLIBC_2.2 vprintf F
-GLIBC_2.2 vscanf F
-GLIBC_2.2 vsnprintf F
-GLIBC_2.2 vsprintf F
-GLIBC_2.2 vsscanf F
-GLIBC_2.2 vswprintf F
-GLIBC_2.2 vswscanf F
-GLIBC_2.2 vsyslog F
-GLIBC_2.2 vtimes F
-GLIBC_2.2 vwarn F
-GLIBC_2.2 vwarnx F
-GLIBC_2.2 vwprintf F
-GLIBC_2.2 vwscanf F
-GLIBC_2.2 wait F
-GLIBC_2.2 wait3 F
-GLIBC_2.2 wait4 F
-GLIBC_2.2 waitid F
-GLIBC_2.2 waitpid F
-GLIBC_2.2 warn F
-GLIBC_2.2 warnx F
-GLIBC_2.2 wcpcpy F
-GLIBC_2.2 wcpncpy F
-GLIBC_2.2 wcrtomb F
-GLIBC_2.2 wcscasecmp F
-GLIBC_2.2 wcscat F
-GLIBC_2.2 wcschr F
-GLIBC_2.2 wcschrnul F
-GLIBC_2.2 wcscmp F
-GLIBC_2.2 wcscoll F
-GLIBC_2.2 wcscpy F
-GLIBC_2.2 wcscspn F
-GLIBC_2.2 wcsdup F
-GLIBC_2.2 wcsftime F
-GLIBC_2.2 wcslen F
-GLIBC_2.2 wcsncasecmp F
-GLIBC_2.2 wcsncat F
-GLIBC_2.2 wcsncmp F
-GLIBC_2.2 wcsncpy F
-GLIBC_2.2 wcsnlen F
-GLIBC_2.2 wcsnrtombs F
-GLIBC_2.2 wcspbrk F
-GLIBC_2.2 wcsrchr F
-GLIBC_2.2 wcsrtombs F
-GLIBC_2.2 wcsspn F
-GLIBC_2.2 wcsstr F
-GLIBC_2.2 wcstod F
-GLIBC_2.2 wcstof F
-GLIBC_2.2 wcstoimax F
-GLIBC_2.2 wcstok F
-GLIBC_2.2 wcstol F
-GLIBC_2.2 wcstold F
-GLIBC_2.2 wcstoll F
-GLIBC_2.2 wcstombs F
-GLIBC_2.2 wcstoq F
-GLIBC_2.2 wcstoul F
-GLIBC_2.2 wcstoull F
-GLIBC_2.2 wcstoumax F
-GLIBC_2.2 wcstouq F
-GLIBC_2.2 wcswcs F
-GLIBC_2.2 wcswidth F
-GLIBC_2.2 wcsxfrm F
-GLIBC_2.2 wctob F
-GLIBC_2.2 wctomb F
-GLIBC_2.2 wctrans F
-GLIBC_2.2 wctype F
-GLIBC_2.2 wcwidth F
-GLIBC_2.2 wmemchr F
-GLIBC_2.2 wmemcmp F
-GLIBC_2.2 wmemcpy F
-GLIBC_2.2 wmemmove F
-GLIBC_2.2 wmempcpy F
-GLIBC_2.2 wmemset F
-GLIBC_2.2 wordexp F
-GLIBC_2.2 wordfree F
-GLIBC_2.2 wprintf F
-GLIBC_2.2 write F
-GLIBC_2.2 writev F
-GLIBC_2.2 wscanf F
-GLIBC_2.2 xdecrypt F
-GLIBC_2.2 xdr_accepted_reply F
-GLIBC_2.2 xdr_array F
-GLIBC_2.2 xdr_authdes_cred F
-GLIBC_2.2 xdr_authdes_verf F
-GLIBC_2.2 xdr_authunix_parms F
-GLIBC_2.2 xdr_bool F
-GLIBC_2.2 xdr_bytes F
-GLIBC_2.2 xdr_callhdr F
-GLIBC_2.2 xdr_callmsg F
-GLIBC_2.2 xdr_char F
-GLIBC_2.2 xdr_cryptkeyarg F
-GLIBC_2.2 xdr_cryptkeyarg2 F
-GLIBC_2.2 xdr_cryptkeyres F
-GLIBC_2.2 xdr_des_block F
-GLIBC_2.2 xdr_double F
-GLIBC_2.2 xdr_enum F
-GLIBC_2.2 xdr_float F
-GLIBC_2.2 xdr_free F
-GLIBC_2.2 xdr_getcredres F
-GLIBC_2.2 xdr_hyper F
-GLIBC_2.2 xdr_int 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_key_netstarg F
-GLIBC_2.2 xdr_key_netstres F
-GLIBC_2.2 xdr_keybuf F
-GLIBC_2.2 xdr_keystatus F
-GLIBC_2.2 xdr_long F
-GLIBC_2.2 xdr_longlong_t F
-GLIBC_2.2 xdr_netnamestr F
-GLIBC_2.2 xdr_netobj F
-GLIBC_2.2 xdr_opaque F
-GLIBC_2.2 xdr_opaque_auth F
-GLIBC_2.2 xdr_pmap F
-GLIBC_2.2 xdr_pmaplist F
-GLIBC_2.2 xdr_pointer F
-GLIBC_2.2 xdr_reference F
-GLIBC_2.2 xdr_rejected_reply F
-GLIBC_2.2 xdr_replymsg F
-GLIBC_2.2 xdr_rmtcall_args F
-GLIBC_2.2 xdr_rmtcallres F
-GLIBC_2.2 xdr_short F
-GLIBC_2.2 xdr_sizeof F
-GLIBC_2.2 xdr_string F
-GLIBC_2.2 xdr_u_char F
-GLIBC_2.2 xdr_u_hyper F
-GLIBC_2.2 xdr_u_int F
-GLIBC_2.2 xdr_u_long F
-GLIBC_2.2 xdr_u_longlong_t F
-GLIBC_2.2 xdr_u_short 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_union F
-GLIBC_2.2 xdr_unixcred F
-GLIBC_2.2 xdr_vector F
-GLIBC_2.2 xdr_void F
-GLIBC_2.2 xdr_wrapstring F
-GLIBC_2.2 xdrmem_create F
-GLIBC_2.2 xdrrec_create F
-GLIBC_2.2 xdrrec_endofrecord F
-GLIBC_2.2 xdrrec_eof F
-GLIBC_2.2 xdrrec_skiprecord F
-GLIBC_2.2 xdrstdio_create F
-GLIBC_2.2 xencrypt F
-GLIBC_2.2 xprt_register F
-GLIBC_2.2 xprt_unregister 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 _sys_errlist D 0x1f8
-GLIBC_2.3 _sys_nerr D 0x4
-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 sys_errlist D 0x1f8
-GLIBC_2.3 sys_nerr D 0x4
-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 0x104
-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 0x104
-GLIBC_2.3.3 sys_siglist D 0x104
-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 _sys_errlist D 0x210
-GLIBC_2.4 _sys_nerr D 0x4
-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 sys_errlist D 0x210
-GLIBC_2.4 sys_nerr D 0x4
-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/sysdeps/unix/sysv/linux/sh/libcrypt.abilist b/sysdeps/unix/sysv/linux/sh/libcrypt.abilist
deleted file mode 100644
index 4db2639336..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libcrypt.abilist
+++ /dev/null
@@ -1,8 +0,0 @@
-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/sysdeps/unix/sysv/linux/sh/libdl.abilist b/sysdeps/unix/sysv/linux/sh/libdl.abilist
deleted file mode 100644
index 5536f6e0a9..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libdl.abilist
+++ /dev/null
@@ -1,14 +0,0 @@
-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.1 GLIBC_2.1 A
-GLIBC_2.1 dlopen F
-GLIBC_2.1 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/sysdeps/unix/sysv/linux/sh/libm.abilist b/sysdeps/unix/sysv/linux/sh/libm.abilist
deleted file mode 100644
index 6b24852b68..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libm.abilist
+++ /dev/null
@@ -1,433 +0,0 @@
-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 _LIB_VERSION D 0x4
-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 acos F
-GLIBC_2.2 acosf F
-GLIBC_2.2 acosh F
-GLIBC_2.2 acoshf F
-GLIBC_2.2 acoshl F
-GLIBC_2.2 acosl F
-GLIBC_2.2 asin F
-GLIBC_2.2 asinf F
-GLIBC_2.2 asinh F
-GLIBC_2.2 asinhf F
-GLIBC_2.2 asinhl F
-GLIBC_2.2 asinl F
-GLIBC_2.2 atan F
-GLIBC_2.2 atan2 F
-GLIBC_2.2 atan2f F
-GLIBC_2.2 atan2l F
-GLIBC_2.2 atanf F
-GLIBC_2.2 atanh F
-GLIBC_2.2 atanhf F
-GLIBC_2.2 atanhl F
-GLIBC_2.2 atanl 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 cbrt F
-GLIBC_2.2 cbrtf F
-GLIBC_2.2 cbrtl 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 ceil F
-GLIBC_2.2 ceilf F
-GLIBC_2.2 ceill 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 copysign F
-GLIBC_2.2 copysignf F
-GLIBC_2.2 copysignl F
-GLIBC_2.2 cos F
-GLIBC_2.2 cosf F
-GLIBC_2.2 cosh F
-GLIBC_2.2 coshf F
-GLIBC_2.2 coshl F
-GLIBC_2.2 cosl 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 drem F
-GLIBC_2.2 dremf F
-GLIBC_2.2 dreml F
-GLIBC_2.2 erf F
-GLIBC_2.2 erfc F
-GLIBC_2.2 erfcf F
-GLIBC_2.2 erfcl F
-GLIBC_2.2 erff F
-GLIBC_2.2 erfl F
-GLIBC_2.2 exp 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 expf F
-GLIBC_2.2 expl F
-GLIBC_2.2 expm1 F
-GLIBC_2.2 expm1f F
-GLIBC_2.2 expm1l F
-GLIBC_2.2 fabs F
-GLIBC_2.2 fabsf F
-GLIBC_2.2 fabsl 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 finite F
-GLIBC_2.2 finitef F
-GLIBC_2.2 finitel F
-GLIBC_2.2 floor F
-GLIBC_2.2 floorf F
-GLIBC_2.2 floorl 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 fmod F
-GLIBC_2.2 fmodf F
-GLIBC_2.2 fmodl F
-GLIBC_2.2 frexp F
-GLIBC_2.2 frexpf F
-GLIBC_2.2 frexpl F
-GLIBC_2.2 gamma F
-GLIBC_2.2 gammaf F
-GLIBC_2.2 gammal F
-GLIBC_2.2 hypot F
-GLIBC_2.2 hypotf F
-GLIBC_2.2 hypotl F
-GLIBC_2.2 ilogb F
-GLIBC_2.2 ilogbf F
-GLIBC_2.2 ilogbl F
-GLIBC_2.2 j0 F
-GLIBC_2.2 j0f F
-GLIBC_2.2 j0l F
-GLIBC_2.2 j1 F
-GLIBC_2.2 j1f F
-GLIBC_2.2 j1l F
-GLIBC_2.2 jn F
-GLIBC_2.2 jnf F
-GLIBC_2.2 jnl F
-GLIBC_2.2 ldexp F
-GLIBC_2.2 ldexpf F
-GLIBC_2.2 ldexpl F
-GLIBC_2.2 lgamma F
-GLIBC_2.2 lgamma_r F
-GLIBC_2.2 lgammaf F
-GLIBC_2.2 lgammaf_r F
-GLIBC_2.2 lgammal F
-GLIBC_2.2 lgammal_r 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 log F
-GLIBC_2.2 log10 F
-GLIBC_2.2 log10f F
-GLIBC_2.2 log10l F
-GLIBC_2.2 log1p F
-GLIBC_2.2 log1pf F
-GLIBC_2.2 log1pl F
-GLIBC_2.2 log2 F
-GLIBC_2.2 log2f F
-GLIBC_2.2 log2l F
-GLIBC_2.2 logb F
-GLIBC_2.2 logbf F
-GLIBC_2.2 logbl F
-GLIBC_2.2 logf F
-GLIBC_2.2 logl 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 matherr F
-GLIBC_2.2 modf F
-GLIBC_2.2 modff F
-GLIBC_2.2 modfl 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 nextafter F
-GLIBC_2.2 nextafterf F
-GLIBC_2.2 nextafterl F
-GLIBC_2.2 nexttoward F
-GLIBC_2.2 nexttowardf F
-GLIBC_2.2 nexttowardl F
-GLIBC_2.2 pow F
-GLIBC_2.2 pow10 F
-GLIBC_2.2 pow10f F
-GLIBC_2.2 pow10l F
-GLIBC_2.2 powf F
-GLIBC_2.2 powl F
-GLIBC_2.2 remainder F
-GLIBC_2.2 remainderf F
-GLIBC_2.2 remainderl F
-GLIBC_2.2 remquo F
-GLIBC_2.2 remquof F
-GLIBC_2.2 remquol F
-GLIBC_2.2 rint F
-GLIBC_2.2 rintf F
-GLIBC_2.2 rintl F
-GLIBC_2.2 round F
-GLIBC_2.2 roundf F
-GLIBC_2.2 roundl F
-GLIBC_2.2 scalb F
-GLIBC_2.2 scalbf F
-GLIBC_2.2 scalbl F
-GLIBC_2.2 scalbln F
-GLIBC_2.2 scalblnf F
-GLIBC_2.2 scalblnl F
-GLIBC_2.2 scalbn F
-GLIBC_2.2 scalbnf F
-GLIBC_2.2 scalbnl F
-GLIBC_2.2 signgam D 0x4
-GLIBC_2.2 significand F
-GLIBC_2.2 significandf F
-GLIBC_2.2 significandl F
-GLIBC_2.2 sin F
-GLIBC_2.2 sincos F
-GLIBC_2.2 sincosf F
-GLIBC_2.2 sincosl F
-GLIBC_2.2 sinf F
-GLIBC_2.2 sinh F
-GLIBC_2.2 sinhf F
-GLIBC_2.2 sinhl F
-GLIBC_2.2 sinl F
-GLIBC_2.2 sqrt F
-GLIBC_2.2 sqrtf F
-GLIBC_2.2 sqrtl F
-GLIBC_2.2 tan F
-GLIBC_2.2 tanf F
-GLIBC_2.2 tanh F
-GLIBC_2.2 tanhf F
-GLIBC_2.2 tanhl F
-GLIBC_2.2 tanl 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.2 y0 F
-GLIBC_2.2 y0f F
-GLIBC_2.2 y0l F
-GLIBC_2.2 y1 F
-GLIBC_2.2 y1f F
-GLIBC_2.2 y1l F
-GLIBC_2.2 yn F
-GLIBC_2.2 ynf F
-GLIBC_2.2 ynl 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
diff --git a/sysdeps/unix/sysv/linux/sh/libnsl.abilist b/sysdeps/unix/sysv/linux/sh/libnsl.abilist
deleted file mode 100644
index a23db2aeaf..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libnsl.abilist
+++ /dev/null
@@ -1,124 +0,0 @@
-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.1 GLIBC_2.1 A
-GLIBC_2.1 __free_fdresult F
-GLIBC_2.1 __nis_default_access F
-GLIBC_2.1 __nis_default_group F
-GLIBC_2.1 __nis_default_owner F
-GLIBC_2.1 __nis_default_ttl F
-GLIBC_2.1 __nis_finddirectory F
-GLIBC_2.1 __nis_hash F
-GLIBC_2.1 __nisbind_connect F
-GLIBC_2.1 __nisbind_create F
-GLIBC_2.1 __nisbind_destroy F
-GLIBC_2.1 __nisbind_next F
-GLIBC_2.1 nis_add F
-GLIBC_2.1 nis_add_entry F
-GLIBC_2.1 nis_addmember F
-GLIBC_2.1 nis_checkpoint F
-GLIBC_2.1 nis_clone_directory F
-GLIBC_2.1 nis_clone_object F
-GLIBC_2.1 nis_clone_result F
-GLIBC_2.1 nis_creategroup F
-GLIBC_2.1 nis_destroy_object F
-GLIBC_2.1 nis_destroygroup F
-GLIBC_2.1 nis_dir_cmp F
-GLIBC_2.1 nis_domain_of F
-GLIBC_2.1 nis_domain_of_r F
-GLIBC_2.1 nis_first_entry F
-GLIBC_2.1 nis_free_directory F
-GLIBC_2.1 nis_free_object F
-GLIBC_2.1 nis_free_request F
-GLIBC_2.1 nis_freenames F
-GLIBC_2.1 nis_freeresult F
-GLIBC_2.1 nis_freeservlist F
-GLIBC_2.1 nis_freetags F
-GLIBC_2.1 nis_getnames F
-GLIBC_2.1 nis_getservlist F
-GLIBC_2.1 nis_ismember F
-GLIBC_2.1 nis_leaf_of F
-GLIBC_2.1 nis_leaf_of_r F
-GLIBC_2.1 nis_lerror F
-GLIBC_2.1 nis_list F
-GLIBC_2.1 nis_local_directory F
-GLIBC_2.1 nis_local_group F
-GLIBC_2.1 nis_local_host F
-GLIBC_2.1 nis_local_principal F
-GLIBC_2.1 nis_lookup F
-GLIBC_2.1 nis_mkdir F
-GLIBC_2.1 nis_modify F
-GLIBC_2.1 nis_modify_entry F
-GLIBC_2.1 nis_name_of F
-GLIBC_2.1 nis_name_of_r F
-GLIBC_2.1 nis_next_entry F
-GLIBC_2.1 nis_perror F
-GLIBC_2.1 nis_ping F
-GLIBC_2.1 nis_print_directory F
-GLIBC_2.1 nis_print_entry F
-GLIBC_2.1 nis_print_group F
-GLIBC_2.1 nis_print_group_entry F
-GLIBC_2.1 nis_print_link F
-GLIBC_2.1 nis_print_object F
-GLIBC_2.1 nis_print_result F
-GLIBC_2.1 nis_print_rights F
-GLIBC_2.1 nis_print_table F
-GLIBC_2.1 nis_read_obj F
-GLIBC_2.1 nis_remove F
-GLIBC_2.1 nis_remove_entry F
-GLIBC_2.1 nis_removemember F
-GLIBC_2.1 nis_rmdir F
-GLIBC_2.1 nis_servstate F
-GLIBC_2.1 nis_sperrno F
-GLIBC_2.1 nis_sperror F
-GLIBC_2.1 nis_sperror_r F
-GLIBC_2.1 nis_stats F
-GLIBC_2.1 nis_verifygroup F
-GLIBC_2.1 nis_write_obj F
-GLIBC_2.1 readColdStartFile F
-GLIBC_2.1 writeColdStartFile F
-GLIBC_2.1 xdr_cback_data F
-GLIBC_2.1 xdr_obj_p F
-GLIBC_2.2 GLIBC_2.2 A
-GLIBC_2.2 xdr_ypall F
diff --git a/sysdeps/unix/sysv/linux/sh/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/libpthread.abilist
deleted file mode 100644
index a73aa43c55..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libpthread.abilist
+++ /dev/null
@@ -1,245 +0,0 @@
-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 _IO_flockfile F
-GLIBC_2.2 _IO_ftrylockfile F
-GLIBC_2.2 _IO_funlockfile F
-GLIBC_2.2 __close F
-GLIBC_2.2 __connect F
-GLIBC_2.2 __errno_location F
-GLIBC_2.2 __fcntl F
-GLIBC_2.2 __fork F
-GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
-GLIBC_2.2 __lseek F
-GLIBC_2.2 __open F
-GLIBC_2.2 __open64 F
-GLIBC_2.2 __pread64 F
-GLIBC_2.2 __pthread_getspecific F
-GLIBC_2.2 __pthread_key_create F
-GLIBC_2.2 __pthread_mutex_destroy F
-GLIBC_2.2 __pthread_mutex_init F
-GLIBC_2.2 __pthread_mutex_lock F
-GLIBC_2.2 __pthread_mutex_trylock F
-GLIBC_2.2 __pthread_mutex_unlock F
-GLIBC_2.2 __pthread_mutexattr_destroy F
-GLIBC_2.2 __pthread_mutexattr_init F
-GLIBC_2.2 __pthread_mutexattr_settype F
-GLIBC_2.2 __pthread_once 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 __pthread_setspecific F
-GLIBC_2.2 __pwrite64 F
-GLIBC_2.2 __read F
-GLIBC_2.2 __res_state F
-GLIBC_2.2 __send F
-GLIBC_2.2 __sigaction F
-GLIBC_2.2 __vfork F
-GLIBC_2.2 __wait F
-GLIBC_2.2 __write F
-GLIBC_2.2 _pthread_cleanup_pop F
-GLIBC_2.2 _pthread_cleanup_pop_restore F
-GLIBC_2.2 _pthread_cleanup_push F
-GLIBC_2.2 _pthread_cleanup_push_defer F
-GLIBC_2.2 accept F
-GLIBC_2.2 close F
-GLIBC_2.2 connect F
-GLIBC_2.2 fcntl F
-GLIBC_2.2 flockfile F
-GLIBC_2.2 fork F
-GLIBC_2.2 fsync F
-GLIBC_2.2 ftrylockfile F
-GLIBC_2.2 funlockfile F
-GLIBC_2.2 longjmp F
-GLIBC_2.2 lseek F
-GLIBC_2.2 lseek64 F
-GLIBC_2.2 msync F
-GLIBC_2.2 nanosleep F
-GLIBC_2.2 open F
-GLIBC_2.2 open64 F
-GLIBC_2.2 pause F
-GLIBC_2.2 pread F
-GLIBC_2.2 pread64 F
-GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
-GLIBC_2.2 pthread_attr_getdetachstate F
-GLIBC_2.2 pthread_attr_getguardsize F
-GLIBC_2.2 pthread_attr_getinheritsched F
-GLIBC_2.2 pthread_attr_getschedparam F
-GLIBC_2.2 pthread_attr_getschedpolicy F
-GLIBC_2.2 pthread_attr_getscope 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_setdetachstate F
-GLIBC_2.2 pthread_attr_setguardsize F
-GLIBC_2.2 pthread_attr_setinheritsched F
-GLIBC_2.2 pthread_attr_setschedparam F
-GLIBC_2.2 pthread_attr_setschedpolicy F
-GLIBC_2.2 pthread_attr_setscope 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_cancel F
-GLIBC_2.2 pthread_cond_broadcast F
-GLIBC_2.2 pthread_cond_destroy F
-GLIBC_2.2 pthread_cond_init F
-GLIBC_2.2 pthread_cond_signal F
-GLIBC_2.2 pthread_cond_timedwait F
-GLIBC_2.2 pthread_cond_wait F
-GLIBC_2.2 pthread_condattr_destroy F
-GLIBC_2.2 pthread_condattr_getpshared F
-GLIBC_2.2 pthread_condattr_init F
-GLIBC_2.2 pthread_condattr_setpshared F
-GLIBC_2.2 pthread_create F
-GLIBC_2.2 pthread_detach F
-GLIBC_2.2 pthread_equal F
-GLIBC_2.2 pthread_exit F
-GLIBC_2.2 pthread_getconcurrency F
-GLIBC_2.2 pthread_getcpuclockid F
-GLIBC_2.2 pthread_getschedparam F
-GLIBC_2.2 pthread_getspecific F
-GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_create F
-GLIBC_2.2 pthread_key_delete F
-GLIBC_2.2 pthread_kill F
-GLIBC_2.2 pthread_kill_other_threads_np F
-GLIBC_2.2 pthread_mutex_destroy F
-GLIBC_2.2 pthread_mutex_init F
-GLIBC_2.2 pthread_mutex_lock F
-GLIBC_2.2 pthread_mutex_timedlock F
-GLIBC_2.2 pthread_mutex_trylock F
-GLIBC_2.2 pthread_mutex_unlock F
-GLIBC_2.2 pthread_mutexattr_destroy F
-GLIBC_2.2 pthread_mutexattr_getkind_np F
-GLIBC_2.2 pthread_mutexattr_getpshared F
-GLIBC_2.2 pthread_mutexattr_gettype F
-GLIBC_2.2 pthread_mutexattr_init F
-GLIBC_2.2 pthread_mutexattr_setkind_np F
-GLIBC_2.2 pthread_mutexattr_setpshared F
-GLIBC_2.2 pthread_mutexattr_settype F
-GLIBC_2.2 pthread_once 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_self F
-GLIBC_2.2 pthread_setcancelstate F
-GLIBC_2.2 pthread_setcanceltype F
-GLIBC_2.2 pthread_setconcurrency F
-GLIBC_2.2 pthread_setschedparam F
-GLIBC_2.2 pthread_setspecific F
-GLIBC_2.2 pthread_sigmask 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_testcancel F
-GLIBC_2.2 pthread_yield F
-GLIBC_2.2 pwrite F
-GLIBC_2.2 pwrite64 F
-GLIBC_2.2 raise F
-GLIBC_2.2 read F
-GLIBC_2.2 recv F
-GLIBC_2.2 recvfrom F
-GLIBC_2.2 recvmsg 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 send F
-GLIBC_2.2 sendmsg F
-GLIBC_2.2 sendto F
-GLIBC_2.2 sigaction F
-GLIBC_2.2 siglongjmp F
-GLIBC_2.2 sigwait F
-GLIBC_2.2 system F
-GLIBC_2.2 tcdrain F
-GLIBC_2.2 vfork F
-GLIBC_2.2 wait F
-GLIBC_2.2 waitpid F
-GLIBC_2.2 write 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_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/sysdeps/unix/sysv/linux/sh/libresolv.abilist b/sysdeps/unix/sysv/linux/sh/libresolv.abilist
deleted file mode 100644
index 4d50e7c8c6..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libresolv.abilist
+++ /dev/null
@@ -1,100 +0,0 @@
-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/sysdeps/unix/sysv/linux/sh/librt.abilist b/sysdeps/unix/sysv/linux/sh/librt.abilist
deleted file mode 100644
index 15e4418863..0000000000
--- a/sysdeps/unix/sysv/linux/sh/librt.abilist
+++ /dev/null
@@ -1,47 +0,0 @@
-GLIBC_2.1 GLIBC_2.1 A
-GLIBC_2.1 aio_cancel F
-GLIBC_2.1 aio_cancel64 F
-GLIBC_2.1 aio_error F
-GLIBC_2.1 aio_error64 F
-GLIBC_2.1 aio_fsync F
-GLIBC_2.1 aio_fsync64 F
-GLIBC_2.1 aio_init F
-GLIBC_2.1 aio_read F
-GLIBC_2.1 aio_read64 F
-GLIBC_2.1 aio_return F
-GLIBC_2.1 aio_return64 F
-GLIBC_2.1 aio_suspend F
-GLIBC_2.1 aio_suspend64 F
-GLIBC_2.1 aio_write F
-GLIBC_2.1 aio_write64 F
-GLIBC_2.1 lio_listio F
-GLIBC_2.1 lio_listio64 F
-GLIBC_2.2 GLIBC_2.2 A
-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 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/sysdeps/unix/sysv/linux/sh/libthread_db.abilist b/sysdeps/unix/sysv/linux/sh/libthread_db.abilist
deleted file mode 100644
index a8a8c2c68d..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libthread_db.abilist
+++ /dev/null
@@ -1,44 +0,0 @@
-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/sysdeps/unix/sysv/linux/sh/libutil.abilist b/sysdeps/unix/sysv/linux/sh/libutil.abilist
deleted file mode 100644
index 89c67755c4..0000000000
--- a/sysdeps/unix/sysv/linux/sh/libutil.abilist
+++ /dev/null
@@ -1,7 +0,0 @@
-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/sysdeps/unix/sysv/linux/sh/localplt.data b/sysdeps/unix/sysv/linux/sh/localplt.data
deleted file mode 100644
index f1f5effc24..0000000000
--- a/sysdeps/unix/sysv/linux/sh/localplt.data
+++ /dev/null
@@ -1,21 +0,0 @@
-# See scripts/check-localplt.awk for how this file is processed.
-# PLT use is required for the malloc family and for matherr because
-# users can define their own functions and have library internals call them.
-libc.so: calloc
-libc.so: free
-libc.so: malloc
-libc.so: memalign
-libc.so: realloc
-libc.so: _Unwind_Find_FDE
-libc.so: _exit
-libc.so: __errno_location
-libm.so: matherr
-# The main malloc is interposed into the dynamic linker, for
-# allocations after the initial link (when dlopen is used).
-ld.so: malloc
-ld.so: calloc
-ld.so: realloc
-ld.so: free
-# The TLS-enabled version of these functions is interposed from libc.so.
-ld.so: _dl_signal_error
-ld.so: _dl_catch_error
diff --git a/sysdeps/unix/sysv/linux/sh/lockf64.c b/sysdeps/unix/sysv/linux/sh/lockf64.c
deleted file mode 100644
index a88f5a784a..0000000000
--- a/sysdeps/unix/sysv/linux/sh/lockf64.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/lockf64.c>
diff --git a/sysdeps/unix/sysv/linux/sh/lowlevel-atomic.h b/sysdeps/unix/sysv/linux/sh/lowlevel-atomic.h
deleted file mode 100644
index b8cc5b2c4c..0000000000
--- a/sysdeps/unix/sysv/linux/sh/lowlevel-atomic.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/* 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/>. */
-
-#ifdef __ASSEMBLER__
-
-#define _IMP1 #1
-#define _IMM1 #-1
-#define _IMM4 #-4
-#define _IMM6 #-6
-#define _IMM8 #-8
-
-#define INC(mem, reg) \
- .align 2; \
- mova 99f, r0; \
- mov r15, r1; \
- mov _IMM6, r15; \
-98: mov.l mem, reg; \
- add _IMP1, reg; \
- mov.l reg, mem; \
-99: mov r1, r15
-
-#define DEC(mem, reg) \
- .align 2; \
- mova 99f, r0; \
- mov r15, r1; \
- mov _IMM6, r15; \
-98: mov.l mem, reg; \
- add _IMM1, reg; \
- mov.l reg, mem; \
-99: mov r1, r15
-
-#define XADD(reg, mem, old, tmp) \
- .align 2; \
- mova 99f, r0; \
- nop; \
- mov r15, r1; \
- mov _IMM8, r15; \
-98: mov.l mem, old; \
- mov reg, tmp; \
- add old, tmp; \
- mov.l tmp, mem; \
-99: mov r1, r15
-
-#define XCHG(reg, mem, old) \
- .align 2; \
- mova 99f, r0; \
- nop; \
- mov r15, r1; \
- mov _IMM4, r15; \
-98: mov.l mem, old; \
- mov.l reg, mem; \
-99: mov r1, r15
-
-#define CMPXCHG(reg, mem, new, old) \
- .align 2; \
- mova 99f, r0; \
- nop; \
- mov r15, r1; \
- mov _IMM8, r15; \
-98: mov.l mem, old; \
- cmp/eq old, reg; \
- bf 99f; \
- mov.l new, mem; \
-99: mov r1, r15
-
-#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/unix/sysv/linux/sh/lxstat.c b/sysdeps/unix/sysv/linux/sh/lxstat.c
deleted file mode 100644
index 2371cd9719..0000000000
--- a/sysdeps/unix/sysv/linux/sh/lxstat.c
+++ /dev/null
@@ -1,2 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/lxstat.c>
-
diff --git a/sysdeps/unix/sysv/linux/sh/makecontext.S b/sysdeps/unix/sysv/linux/sh/makecontext.S
deleted file mode 100644
index 4506961007..0000000000
--- a/sysdeps/unix/sysv/linux/sh/makecontext.S
+++ /dev/null
@@ -1,160 +0,0 @@
-/* Create new context.
- 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 <sysdep.h>
-#include <abort-instr.h>
-
-#include "ucontext_i.h"
-
-/* void __makecontext (struct ucontext *ucp, void (*func)(), int argc, ...);
- __makecontext sets up a stack and registers for context to run a given
- function. The registers are set up like this:
- r4-r7: parameters 1 to 4
- r8 : uc_link from ucontext structure
- pc : (*func) pointer
- pr : address of exitcode
- r15 : stack pointer for func. */
-
- .text
- .align 5
-ENTRY(__makecontext)
- mov #4, r3
- mov.l @(oSS_SP,r4), r1 /* r1 <- ucb->stack_base */
- mov.l @(oSS_SIZE,r4), r2 /* r2 <- ucb->stack_size */
- add r1, r2 /* r2 <- stack_top */
- cmp/gt r3, r6 /* argc > 4? */
- bf/s 1f
- shlr2 r2 /* r2 <- stack_top / 4 */
- sub r6, r2
- add r3, r2
-1:
- shll2 r2 /* r2 <- stack_top - ((argc > 4) ? 4 * (argc - 4) : 0 */
- mov #oR15, r0
- mov.l @(oLINK,r4), r1
- mov.l r2, @(r0,r4) /* ucp->r15 <- r2 */
- mov.l r1, @(oR8,r4) /* ucp->r8 <- ucp->uc_link */
- mov #oPC, r0
- mov.l r5, @(r0,r4) /* ucp->PC <- func */
-
- cmp/pl r6 /* argc > 0? */
- bf/s .L1
- dt r6
- mov.l r7, @(oR4,r4) /* ucp->r4 <- argv[0] */
- cmp/pl r6 /* argc > 1? */
- bf/s .L1
- dt r6
- mov.l @(0,r15), r1
- mov.l r1, @(oR5,r4) /* ucp->r5 <- argv[1] */
- cmp/pl r6 /* argc > 2? */
- bf/s .L1
- dt r6
- mov.l @(4,r15), r1
- mov.l r1, @(oR6,r4) /* ucp->r6 <- argv[2] */
- cmp/pl r6 /* argc > 3? */
- bf/s .L1
- dt r6
- mov.l @(8,r15), r1
- mov.l r1, @(oR7,r4) /* ucp->r7 <- argv[3] */
- mov #12,r0
-.L0: /* Save remaining argv[] on the stack. */
- cmp/pl r6
- bf/s .L1
- dt r6
- mov.l @(r0,r15), r1
- mov.l r1, @r2
- add #4, r0
- bra .L0
- add #4, r2
-.L1:
-#ifdef PIC
- mova .Lexitcode, r0
-#else
- mov.l .L2, r0
-#endif
- add #oPR, r4
- rts
- mov.l r0, @r4 /* ucp->pr <- exitcode */
-#ifndef PIC
- .align 2
-.L2:
- .long .Lexitcode
-#endif
- cfi_endproc
-
- .align 5
- cfi_startproc
-.Lexitcode:
-#ifdef PIC
- mov.l r12, @-r15
- cfi_adjust_cfa_offset (4)
- cfi_rel_offset (r12, 0)
- mova .Lgot, r0
- mov.l .Lgot, r12
- add r0, r12
-#endif
- tst r8, r8 /* ucb->uc_link == NULL? */
- bt/s 2f
- mov r8, r4 /* r4 <- ucb->uc_link */
- mov.l .Lsetcontext, r1
- sts.l pr, @-r15
- cfi_adjust_cfa_offset (4)
- cfi_rel_offset (pr, 0)
-#ifdef PIC
- bsrf r1
-.LPCS0:
- nop
-#else
- jsr @r1
- nop
-#endif
- /* Restore to keep CFI/CFA balanced. */
- lds.l @r15+, pr
- cfi_adjust_cfa_offset (-4)
- cfi_restore (pr)
- /* If this returns (which can happen if the syscall fails) we'll exit
- the program with the return error value (-1). */
- mov r0, r4
-
-2:
- mov.l .Lexit, r1
-#ifdef PIC
- add r12, r1
-#endif
- jsr @r1
- nop
- /* The 'exit' call should never return. In case it does cause the
- process to terminate. */
- ABORT_INSTRUCTION_ASM
-
- .align 2
-#ifdef PIC
-.Lgot:
- .long _GLOBAL_OFFSET_TABLE_
-.Lsetcontext:
- .long __setcontext@PLT-(.LPCS0+2-(.))
-.Lexit:
- .long HIDDEN_JUMPTARGET(exit)@GOTOFF
-#else
-.Lsetcontext:
- .long __setcontext
-.Lexit:
- .long HIDDEN_JUMPTARGET(exit)
-#endif
-PSEUDO_END(__makecontext)
-
-weak_alias (__makecontext, makecontext)
diff --git a/sysdeps/unix/sysv/linux/sh/pipe.S b/sysdeps/unix/sysv/linux/sh/pipe.S
deleted file mode 100644
index 994d11ad5c..0000000000
--- a/sysdeps/unix/sysv/linux/sh/pipe.S
+++ /dev/null
@@ -1,42 +0,0 @@
-/* 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 <sysdep.h>
-
-ENTRY (__libc_pipe)
- mov #+__NR_pipe, r3
- trapa #0x10
- mov r0, r3
- mov #-12, r2
- shad r2, r3
- not r3, r3 // r1=0 means r0 = -1 to -4095
- tst r3, r3 // i.e. error in linux
- bt 1f
- mov.l r0, @r4
- mov.l r1, @(4, r4)
- rts
- mov #0, r0
-1:
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-PSEUDO_END (__libc_pipe)
-
-weak_alias (__libc_pipe, __pipe)
-libc_hidden_def (__pipe)
-weak_alias (__libc_pipe, pipe)
diff --git a/sysdeps/unix/sysv/linux/sh/profil-counter.h b/sysdeps/unix/sysv/linux/sh/profil-counter.h
deleted file mode 100644
index 98db140e04..0000000000
--- a/sysdeps/unix/sysv/linux/sh/profil-counter.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Low-level statistical profiling support function. Linux/SH 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/>. */
-
-#include <signal.h>
-
-static void
-__profil_counter (int signo, int _a2, int _a3, int _a4, struct sigcontext sc)
-{
- void *pc;
- pc = (void *) sc.sc_pc;
- profil_count (pc);
-
- /* This is a hack to prevent the compiler from implementing the
- above function call as a sibcall. The sibcall would overwrite
- the signal context. */
- asm volatile ("");
-}
diff --git a/sysdeps/unix/sysv/linux/sh/pt-vfork.S b/sysdeps/unix/sysv/linux/sh/pt-vfork.S
deleted file mode 100644
index 65cc3823ac..0000000000
--- a/sysdeps/unix/sysv/linux/sh/pt-vfork.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/alpha/pt-vfork.S>
diff --git a/sysdeps/unix/sysv/linux/sh/sh3/getcontext.S b/sysdeps/unix/sysv/linux/sh/sh3/getcontext.S
deleted file mode 100644
index c09c16937c..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh3/getcontext.S
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Save current context.
- 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 <sysdep.h>
-
-#include "ucontext_i.h"
-
-/* int __getcontext (ucontext_t *uc); */
-
- .text
- .align 5
-ENTRY(__getcontext)
-
- /* Return value of getcontext. R0 is the only register whose
- value is not preserved. */
- mov #0, r0
- mov.l r0, @(oR0,r4)
- mov.l r1, @(oR1,r4)
- mov.l r2, @(oR2,r4)
- mov.l r3, @(oR3,r4)
- mov.l r4, @(oR4,r4)
- mov.l r5, @(oR5,r4)
- mov.l r6, @(oR6,r4)
- mov.l r7, @(oR7,r4)
- mov r4, r0
- add #(oMACL+4), r0
- sts.l macl, @-r0
- sts.l mach, @-r0
- stc.l gbr, @-r0
-
- /* Save T flag to SR. */
- movt r1
- mov.l r1, @-r0
- sts.l pr, @-r0
-
- /* The return address of getcontext is the restart pc. */
- sts.l pr, @-r0
-
- mov.l r15, @-r0
- mov.l r14, @-r0
- mov.l r13, @-r0
- mov.l r12, @-r0
- mov.l r11, @-r0
- mov.l r10, @-r0
- mov.l r9, @-r0
- mov.l r8, @-r0
-
- /* sigprocmask (SIG_BLOCK, NULL, &uc->uc_sigmask). */
- mov r4, r6
- add #oSIGMASK, r6
- mov #SIG_BLOCK, r4
- mov #0, r5
- mov #+SYS_ify(sigprocmask), r3
- trapa #0x13
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lgetcontext_end
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lgetcontext_end:
- /* All done, return 0 for success. */
- mov #0, r0
-.Lpseudo_end:
- rts
- nop
-
-PSEUDO_END(__getcontext)
-
-weak_alias (__getcontext, getcontext)
diff --git a/sysdeps/unix/sysv/linux/sh/sh3/register-dump.h b/sysdeps/unix/sysv/linux/sh/sh3/register-dump.h
deleted file mode 100644
index f8530c43c0..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh3/register-dump.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Dump registers.
- 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 <sys/uio.h>
-#include <_itoa.h>
-
-/* We will print the register dump in this format:
-
- R0: XXXXXXXX R1: XXXXXXXX R2: XXXXXXXX R3: XXXXXXXX
- R4: XXXXXXXX R5: XXXXXXXX R6: XXXXXXXX R7: XXXXXXXX
- R8: XXXXXXXX R9: XXXXXXXX R10: XXXXXXXX R11: XXXXXXXX
- R12: XXXXXXXX R13: XXXXXXXX R14: XXXXXXXX R15: XXXXXXXX
-
-MACL: XXXXXXXX MACH: XXXXXXXX
-
- PC: XXXXXXXX PR: XXXXXXXX GBR: XXXXXXXX SR: XXXXXXXX
-
- FR0: XXXXXXXX FR1: XXXXXXXX FR2: XXXXXXXX FR3: XXXXXXXX
- FR4: XXXXXXXX FR5: XXXXXXXX FR6: XXXXXXXX FR7: XXXXXXXX
- FR8: XXXXXXXX FR9: XXXXXXXX FR10: XXXXXXXX FR11: XXXXXXXX
-FR12: XXXXXXXX FR13: XXXXXXXX FR14: XXXXXXXX FR15: XXXXXXXX
-
- XR0: XXXXXXXX XR1: XXXXXXXX XR2: XXXXXXXX XR3: XXXXXXXX
- XR4: XXXXXXXX XR5: XXXXXXXX XR6: XXXXXXXX XR7: XXXXXXXX
- XR8: XXXXXXXX XR9: XXXXXXXX XR10: XXXXXXXX XR11: XXXXXXXX
-XR12: XXXXXXXX XR13: XXXXXXXX XR14: XXXXXXXX XR15: XXXXXXXX
-
-FPSCR: XXXXXXXX FPUL: XXXXXXXX
-
- */
-
-static void
-hexvalue (unsigned long int value, char *buf, size_t len)
-{
- char *cp = _itoa_word (value, buf + len, 16, 0);
- while (cp > buf)
- *--cp = '0';
-}
-
-static void
-register_dump (int fd, struct sigcontext *ctx)
-{
- char regs[22][8];
- struct iovec iov[112];
- size_t nr = 0;
-
-#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. */
- hexvalue (ctx->sc_regs[0], regs[0], 8);
- hexvalue (ctx->sc_regs[1], regs[1], 8);
- hexvalue (ctx->sc_regs[2], regs[2], 8);
- hexvalue (ctx->sc_regs[3], regs[3], 8);
- hexvalue (ctx->sc_regs[4], regs[4], 8);
- hexvalue (ctx->sc_regs[5], regs[5], 8);
- hexvalue (ctx->sc_regs[6], regs[6], 8);
- hexvalue (ctx->sc_regs[7], regs[7], 8);
- hexvalue (ctx->sc_regs[8], regs[8], 8);
- hexvalue (ctx->sc_regs[9], regs[9], 8);
- hexvalue (ctx->sc_regs[10], regs[10], 8);
- hexvalue (ctx->sc_regs[11], regs[11], 8);
- hexvalue (ctx->sc_regs[12], regs[12], 8);
- hexvalue (ctx->sc_regs[13], regs[13], 8);
- hexvalue (ctx->sc_regs[14], regs[14], 8);
- hexvalue (ctx->sc_regs[15], regs[15], 8);
- hexvalue (ctx->sc_macl, regs[16], 8);
- hexvalue (ctx->sc_mach, regs[17], 8);
- hexvalue (ctx->sc_pc, regs[18], 8);
- hexvalue (ctx->sc_pr, regs[19], 8);
- hexvalue (ctx->sc_gbr, regs[20], 8);
- hexvalue (ctx->sc_sr, regs[21], 8);
-
- /* Generate the output. */
- ADD_STRING ("Register dump:\n\n R0: ");
- ADD_MEM (regs[0], 8);
- ADD_STRING (" R1: ");
- ADD_MEM (regs[1], 8);
- ADD_STRING (" R2: ");
- ADD_MEM (regs[2], 8);
- ADD_STRING (" R3: ");
- ADD_MEM (regs[3], 8);
- ADD_STRING ("\n R4: ");
- ADD_MEM (regs[4], 8);
- ADD_STRING (" R5: ");
- ADD_MEM (regs[5], 8);
- ADD_STRING (" R6: ");
- ADD_MEM (regs[6], 8);
- ADD_STRING (" R7: ");
- ADD_MEM (regs[7], 8);
- ADD_STRING ("\n R8: ");
- ADD_MEM (regs[8], 8);
- ADD_STRING (" R9: ");
- ADD_MEM (regs[9], 8);
- ADD_STRING (" R10: ");
- ADD_MEM (regs[10], 8);
- ADD_STRING (" R11: ");
- ADD_MEM (regs[11], 8);
- ADD_STRING ("\n R12: ");
- ADD_MEM (regs[12], 8);
- ADD_STRING (" R13: ");
- ADD_MEM (regs[13], 8);
- ADD_STRING (" R14: ");
- ADD_MEM (regs[14], 8);
- ADD_STRING (" R15: ");
- ADD_MEM (regs[15], 8);
-
- ADD_STRING ("\n\nMACL: ");
- ADD_MEM (regs[16], 8);
- ADD_STRING (" MACH: ");
- ADD_MEM (regs[17], 8);
-
- ADD_STRING ("\n\n PC: ");
- ADD_MEM (regs[18], 8);
- ADD_STRING (" PR: ");
- ADD_MEM (regs[19], 8);
- ADD_STRING (" GBR: ");
- ADD_MEM (regs[20], 8);
- ADD_STRING (" SR: ");
- ADD_MEM (regs[21], 8);
-
- ADD_STRING ("\n");
-
- /* Write the stuff out. */
- writev (fd, iov, nr);
-}
-
-
-#define REGISTER_DUMP register_dump (fd, &ctx)
diff --git a/sysdeps/unix/sysv/linux/sh/sh3/setcontext.S b/sysdeps/unix/sysv/linux/sh/sh3/setcontext.S
deleted file mode 100644
index d97b064d2f..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh3/setcontext.S
+++ /dev/null
@@ -1,99 +0,0 @@
-/* Install given context.
- 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 <sysdep.h>
-
-#include "ucontext_i.h"
-
-/* int __setcontext (const ucontext_t *uc); */
-
- .text
- .align 5
-ENTRY(__setcontext)
-
- mov r4, r8
-
- /* sigprocmask (SIG_SETMASK, &uc->uc_sigmask, NULL). */
- mov r4, r5
- add #oSIGMASK, r5
- mov #SIG_SETMASK, r4
- mov #0, r6
- mov #+SYS_ify(sigprocmask), r3
- trapa #0x13
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lsetcontext_restore
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-
-.Lsetcontext_restore:
- mov r8, r0
- add #(oPC), r0
- mov.l @r0+, r2
- lds.l @r0+, pr
-
- /* Restore T frag. */
- mov.l @r0+, r1
- shlr r1
- /* Skip GBR which is used for thread pointer. */
- add #4, r0
-
- lds.l @r0+, mach
- lds.l @r0+, macl
-
- mov r8, r0
- add #(oR9), r0
- mov.l @r0+, r9
- mov.l @r0+, r10
- mov.l @r0+, r11
- mov.l @r0+, r12
- mov.l @r0+, r13
- mov.l @r0+, r14
- mov.l @r0+, r15
-
- mov r8, r0
- mov.l @(oR0,r0), r1
- mov.l r1, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r1, 0)
- mov.l r2, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r2, 0)
-
- mov.l @(oR1,r0), r1
- mov.l @(oR2,r0), r2
- mov.l @(oR3,r0), r3
- mov.l @(oR4,r0), r4
- mov.l @(oR5,r0), r5
- mov.l @(oR6,r0), r6
- mov.l @(oR7,r0), r7
- mov.l @(oR8,r0), r8
- mov.l @r15+, r0
- cfi_adjust_cfa_offset(-4)
- jmp @r0
- mov.l @r15+, r0
-
-PSEUDO_END(__setcontext)
-
-weak_alias (__setcontext, setcontext)
diff --git a/sysdeps/unix/sysv/linux/sh/sh3/swapcontext.S b/sysdeps/unix/sysv/linux/sh/sh3/swapcontext.S
deleted file mode 100644
index 986fcee47a..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh3/swapcontext.S
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Save current context and install the given one.
- 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 <sysdep.h>
-
-#include "ucontext_i.h"
-
-/* int __swapcontext (ucontext_t *ouc, const ucontext_t *uc); */
-
- .text
- .align 5
-ENTRY(__swapcontext)
-
- /* Return value of getcontext. R0 is the only register whose
- value is not preserved. */
- mov #0, r0
- mov.l r0, @(oR0,r4)
- mov.l r1, @(oR1,r4)
- mov.l r2, @(oR2,r4)
- mov.l r3, @(oR3,r4)
- mov.l r4, @(oR4,r4)
- mov.l r5, @(oR5,r4)
- mov.l r6, @(oR6,r4)
- mov.l r7, @(oR7,r4)
- mov r4, r0
- add #(oMACL+4), r0
- sts.l macl, @-r0
- sts.l mach, @-r0
- stc.l gbr, @-r0
-
- /* Save T flag to SR. */
- movt r1
- mov.l r1, @-r0
- sts.l pr, @-r0
-
- /* The return address of getcontext is the restart pc. */
- sts.l pr, @-r0
-
- mov.l r15, @-r0
- mov.l r14, @-r0
- mov.l r13, @-r0
- mov.l r12, @-r0
- mov.l r11, @-r0
- mov.l r10, @-r0
- mov.l r9, @-r0
- mov.l r8, @-r0
-
- mov r5, r8
-
- /* sigprocmask (SIG_SETMASK, &uc->uc_sigmask, &ouc->uc_sigmask). */
- add #oSIGMASK, r5
- mov r4, r6
- add #oSIGMASK, r6
- mov #SIG_SETMASK, r4
- mov #+SYS_ify(sigprocmask), r3
- trapa #0x13
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lswapcontext_restore
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-.Lswapcontext_restore:
- mov r8, r0
- add #(oPC), r0
- mov.l @r0+, r2
- lds.l @r0+, pr
-
- /* Restore T frag. */
- mov.l @r0+, r1
- shlr r1
- /* Skip GBR which is used for thread pointer. */
- add #4, r0
-
- lds.l @r0+, mach
- lds.l @r0+, macl
-
- mov r8, r0
- add #(oR9), r0
- mov.l @r0+, r9
- mov.l @r0+, r10
- mov.l @r0+, r11
- mov.l @r0+, r12
- mov.l @r0+, r13
- mov.l @r0+, r14
- mov.l @r0+, r15
-
- mov r8, r0
- mov.l @(oR0,r0), r1
- mov.l r1, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r1, 0)
- mov.l r2, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r2, 0)
-
- mov.l @(oR1,r0), r1
- mov.l @(oR2,r0), r2
- mov.l @(oR3,r0), r3
- mov.l @(oR4,r0), r4
- mov.l @(oR5,r0), r5
- mov.l @(oR6,r0), r6
- mov.l @(oR7,r0), r7
- mov.l @(oR8,r0), r8
- mov.l @r15+, r0
- cfi_adjust_cfa_offset(-4)
- jmp @r0
- mov.l @r15+, r0
-
-PSEUDO_END(__swapcontext)
-
-weak_alias (__swapcontext, swapcontext)
diff --git a/sysdeps/unix/sysv/linux/sh/sh3/ucontext_i.sym b/sysdeps/unix/sysv/linux/sh/sh3/ucontext_i.sym
deleted file mode 100644
index 25f914a93b..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh3/ucontext_i.sym
+++ /dev/null
@@ -1,38 +0,0 @@
-#include <stddef.h>
-#include <signal.h>
-#include <sys/ucontext.h>
-
---
-
-SIG_BLOCK
-SIG_SETMASK
-
-#define ucontext(member) offsetof (ucontext_t, member)
-#define mcontext(member) ucontext (uc_mcontext.member)
-
-oLINK ucontext (uc_link)
-oSS_SP ucontext (uc_stack.ss_sp)
-oSS_SIZE ucontext (uc_stack.ss_size)
-oR0 mcontext (gregs[REG_R0])
-oR1 mcontext (gregs[REG_R1])
-oR2 mcontext (gregs[REG_R2])
-oR3 mcontext (gregs[REG_R3])
-oR4 mcontext (gregs[REG_R4])
-oR5 mcontext (gregs[REG_R5])
-oR6 mcontext (gregs[REG_R6])
-oR7 mcontext (gregs[REG_R7])
-oR8 mcontext (gregs[REG_R8])
-oR9 mcontext (gregs[REG_R9])
-oR10 mcontext (gregs[REG_R10])
-oR11 mcontext (gregs[REG_R11])
-oR12 mcontext (gregs[REG_R12])
-oR13 mcontext (gregs[REG_R13])
-oR14 mcontext (gregs[REG_R14])
-oR15 mcontext (gregs[REG_R15])
-oPC mcontext (pc)
-oPR mcontext (pr)
-oSR mcontext (sr)
-oGBR mcontext (gbr)
-oMACH mcontext (mach)
-oMACL mcontext (macl)
-oSIGMASK ucontext (uc_sigmask)
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S b/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S
deleted file mode 100644
index 40cabd1d91..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Save current context.
- 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 <sysdep.h>
-
-#include "ucontext_i.h"
-
-/* int __getcontext (ucontext_t *uc); */
-
- .text
- .align 5
-ENTRY(__getcontext)
-
- /* Return value of getcontext. R0 is the only register whose
- value is not preserved. */
- mov #0, r0
- mov.l r0, @(oR0,r4)
- mov.l r1, @(oR1,r4)
- mov.l r2, @(oR2,r4)
- mov.l r3, @(oR3,r4)
- mov.l r4, @(oR4,r4)
- mov.l r5, @(oR5,r4)
- mov.l r6, @(oR6,r4)
- mov.l r7, @(oR7,r4)
- mov r4, r0
- add #(oMACL+4), r0
- sts.l macl, @-r0
- sts.l mach, @-r0
- stc.l gbr, @-r0
-
- /* Save T flag to SR. */
- movt r1
- mov.l r1, @-r0
- sts.l pr, @-r0
-
- /* The return address of getcontext is the restart pc. */
- sts.l pr, @-r0
-
- mov.l r15, @-r0
- mov.l r14, @-r0
- mov.l r13, @-r0
- mov.l r12, @-r0
- mov.l r11, @-r0
- mov.l r10, @-r0
- mov.l r9, @-r0
- mov.l r8, @-r0
-
-#ifdef __SH_FPU_ANY__
- mov r4, r0
- /* We need 2 add instruction because oFPUL+4 > 127. */
- add #124,r0
- add #(oFPUL+4-124),r0
- sts.l fpul, @-r0
- sts.l fpscr, @-r0
- frchg
- fmov.s fr15, @-r0
- fmov.s fr14, @-r0
- fmov.s fr13, @-r0
- fmov.s fr12, @-r0
- fmov.s fr11, @-r0
- fmov.s fr10, @-r0
- fmov.s fr9, @-r0
- fmov.s fr8, @-r0
- fmov.s fr7, @-r0
- fmov.s fr6, @-r0
- fmov.s fr5, @-r0
- fmov.s fr4, @-r0
- fmov.s fr3, @-r0
- fmov.s fr2, @-r0
- fmov.s fr1, @-r0
- fmov.s fr0, @-r0
- frchg
- fmov.s fr15, @-r0
- fmov.s fr14, @-r0
- fmov.s fr13, @-r0
- fmov.s fr12, @-r0
- fmov.s fr11, @-r0
- fmov.s fr10, @-r0
- fmov.s fr9, @-r0
- fmov.s fr8, @-r0
- fmov.s fr7, @-r0
- fmov.s fr6, @-r0
- fmov.s fr5, @-r0
- fmov.s fr4, @-r0
- fmov.s fr3, @-r0
- fmov.s fr2, @-r0
- fmov.s fr1, @-r0
- fmov.s fr0, @-r0
-#endif /* __SH_FPU_ANY__ */
-
- /* sigprocmask (SIG_BLOCK, NULL, &uc->uc_sigmask). */
- mov r4, r6
- /* We need 2 add instruction because oSIGMASK > 127. */
- add #(oSIGMASK/2), r6
- add #(oSIGMASK/2), r6
- mov #SIG_BLOCK, r4
- mov #0, r5
- mov #+SYS_ify(sigprocmask), r3
- trapa #0x13
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lgetcontext_end
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lgetcontext_end:
- /* All done, return 0 for success. */
- mov #0, r0
-.Lpseudo_end:
- rts
- nop
-
-PSEUDO_END(__getcontext)
-
-weak_alias (__getcontext, getcontext)
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h b/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
deleted file mode 100644
index 5595e90d91..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
+++ /dev/null
@@ -1,263 +0,0 @@
-/* Dump registers.
- 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 <sys/uio.h>
-#include <_itoa.h>
-
-/* We will print the register dump in this format:
-
- R0: XXXXXXXX R1: XXXXXXXX R2: XXXXXXXX R3: XXXXXXXX
- R4: XXXXXXXX R5: XXXXXXXX R6: XXXXXXXX R7: XXXXXXXX
- R8: XXXXXXXX R9: XXXXXXXX R10: XXXXXXXX R11: XXXXXXXX
- R12: XXXXXXXX R13: XXXXXXXX R14: XXXXXXXX R15: XXXXXXXX
-
-MACL: XXXXXXXX MACH: XXXXXXXX
-
- PC: XXXXXXXX PR: XXXXXXXX GBR: XXXXXXXX SR: XXXXXXXX
-
- FR0: XXXXXXXX FR1: XXXXXXXX FR2: XXXXXXXX FR3: XXXXXXXX
- FR4: XXXXXXXX FR5: XXXXXXXX FR6: XXXXXXXX FR7: XXXXXXXX
- FR8: XXXXXXXX FR9: XXXXXXXX FR10: XXXXXXXX FR11: XXXXXXXX
-FR12: XXXXXXXX FR13: XXXXXXXX FR14: XXXXXXXX FR15: XXXXXXXX
-
- XR0: XXXXXXXX XR1: XXXXXXXX XR2: XXXXXXXX XR3: XXXXXXXX
- XR4: XXXXXXXX XR5: XXXXXXXX XR6: XXXXXXXX XR7: XXXXXXXX
- XR8: XXXXXXXX XR9: XXXXXXXX XR10: XXXXXXXX XR11: XXXXXXXX
-XR12: XXXXXXXX XR13: XXXXXXXX XR14: XXXXXXXX XR15: XXXXXXXX
-
-FPSCR: XXXXXXXX FPUL: XXXXXXXX
-
- */
-
-static void
-hexvalue (unsigned long int value, char *buf, size_t len)
-{
- char *cp = _itoa_word (value, buf + len, 16, 0);
- while (cp > buf)
- *--cp = '0';
-}
-
-static void
-register_dump (int fd, struct sigcontext *ctx)
-{
- char regs[22][8];
- struct iovec iov[22 * 2 + 34 * 2 + 2];
- size_t nr = 0;
-
-#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. */
- hexvalue (ctx->sc_regs[0], regs[0], 8);
- hexvalue (ctx->sc_regs[1], regs[1], 8);
- hexvalue (ctx->sc_regs[2], regs[2], 8);
- hexvalue (ctx->sc_regs[3], regs[3], 8);
- hexvalue (ctx->sc_regs[4], regs[4], 8);
- hexvalue (ctx->sc_regs[5], regs[5], 8);
- hexvalue (ctx->sc_regs[6], regs[6], 8);
- hexvalue (ctx->sc_regs[7], regs[7], 8);
- hexvalue (ctx->sc_regs[8], regs[8], 8);
- hexvalue (ctx->sc_regs[9], regs[9], 8);
- hexvalue (ctx->sc_regs[10], regs[10], 8);
- hexvalue (ctx->sc_regs[11], regs[11], 8);
- hexvalue (ctx->sc_regs[12], regs[12], 8);
- hexvalue (ctx->sc_regs[13], regs[13], 8);
- hexvalue (ctx->sc_regs[14], regs[14], 8);
- hexvalue (ctx->sc_regs[15], regs[15], 8);
- hexvalue (ctx->sc_macl, regs[16], 8);
- hexvalue (ctx->sc_mach, regs[17], 8);
- hexvalue (ctx->sc_pc, regs[18], 8);
- hexvalue (ctx->sc_pr, regs[19], 8);
- hexvalue (ctx->sc_gbr, regs[20], 8);
- hexvalue (ctx->sc_sr, regs[21], 8);
-
- /* Generate the output. */
- ADD_STRING ("Register dump:\n\n R0: ");
- ADD_MEM (regs[0], 8);
- ADD_STRING (" R1: ");
- ADD_MEM (regs[1], 8);
- ADD_STRING (" R2: ");
- ADD_MEM (regs[2], 8);
- ADD_STRING (" R3: ");
- ADD_MEM (regs[3], 8);
- ADD_STRING ("\n R4: ");
- ADD_MEM (regs[4], 8);
- ADD_STRING (" R5: ");
- ADD_MEM (regs[5], 8);
- ADD_STRING (" R6: ");
- ADD_MEM (regs[6], 8);
- ADD_STRING (" R7: ");
- ADD_MEM (regs[7], 8);
- ADD_STRING ("\n R8: ");
- ADD_MEM (regs[8], 8);
- ADD_STRING (" R9: ");
- ADD_MEM (regs[9], 8);
- ADD_STRING (" R10: ");
- ADD_MEM (regs[10], 8);
- ADD_STRING (" R11: ");
- ADD_MEM (regs[11], 8);
- ADD_STRING ("\n R12: ");
- ADD_MEM (regs[12], 8);
- ADD_STRING (" R13: ");
- ADD_MEM (regs[13], 8);
- ADD_STRING (" R14: ");
- ADD_MEM (regs[14], 8);
- ADD_STRING (" R15: ");
- ADD_MEM (regs[15], 8);
-
- ADD_STRING ("\n\nMACL: ");
- ADD_MEM (regs[16], 8);
- ADD_STRING (" MACH: ");
- ADD_MEM (regs[17], 8);
-
- ADD_STRING ("\n\n PC: ");
- ADD_MEM (regs[18], 8);
- ADD_STRING (" PR: ");
- ADD_MEM (regs[19], 8);
- ADD_STRING (" GBR: ");
- ADD_MEM (regs[20], 8);
- ADD_STRING (" SR: ");
- ADD_MEM (regs[21], 8);
-
- ADD_STRING ("\n");
-
-#ifdef __SH_FPU_ANY__
- char fpregs[34][8];
- if (ctx->sc_ownedfp != 0)
- {
- hexvalue (ctx->sc_fpregs[0], fpregs[0], 8);
- hexvalue (ctx->sc_fpregs[1], fpregs[1], 8);
- hexvalue (ctx->sc_fpregs[2], fpregs[2], 8);
- hexvalue (ctx->sc_fpregs[3], fpregs[3], 8);
- hexvalue (ctx->sc_fpregs[4], fpregs[4], 8);
- hexvalue (ctx->sc_fpregs[5], fpregs[5], 8);
- hexvalue (ctx->sc_fpregs[6], fpregs[6], 8);
- hexvalue (ctx->sc_fpregs[7], fpregs[7], 8);
- hexvalue (ctx->sc_fpregs[8], fpregs[8], 8);
- hexvalue (ctx->sc_fpregs[9], fpregs[9], 8);
- hexvalue (ctx->sc_fpregs[10], fpregs[10], 8);
- hexvalue (ctx->sc_fpregs[11], fpregs[11], 8);
- hexvalue (ctx->sc_fpregs[12], fpregs[12], 8);
- hexvalue (ctx->sc_fpregs[13], fpregs[13], 8);
- hexvalue (ctx->sc_fpregs[14], fpregs[14], 8);
- hexvalue (ctx->sc_fpregs[15], fpregs[15], 8);
- hexvalue (ctx->sc_xfpregs[0], fpregs[16], 8);
- hexvalue (ctx->sc_xfpregs[1], fpregs[17], 8);
- hexvalue (ctx->sc_xfpregs[2], fpregs[18], 8);
- hexvalue (ctx->sc_xfpregs[3], fpregs[19], 8);
- hexvalue (ctx->sc_xfpregs[4], fpregs[20], 8);
- hexvalue (ctx->sc_xfpregs[5], fpregs[21], 8);
- hexvalue (ctx->sc_xfpregs[6], fpregs[22], 8);
- hexvalue (ctx->sc_xfpregs[7], fpregs[23], 8);
- hexvalue (ctx->sc_xfpregs[8], fpregs[24], 8);
- hexvalue (ctx->sc_xfpregs[9], fpregs[25], 8);
- hexvalue (ctx->sc_xfpregs[10], fpregs[26], 8);
- hexvalue (ctx->sc_xfpregs[11], fpregs[27], 8);
- hexvalue (ctx->sc_xfpregs[12], fpregs[28], 8);
- hexvalue (ctx->sc_xfpregs[13], fpregs[29], 8);
- hexvalue (ctx->sc_xfpregs[14], fpregs[30], 8);
- hexvalue (ctx->sc_xfpregs[15], fpregs[31], 8);
- hexvalue (ctx->sc_fpscr, fpregs[32], 8);
- hexvalue (ctx->sc_fpul, fpregs[33], 8);
-
- ADD_STRING ("\n\n FR0: ");
- ADD_MEM (fpregs[0], 8);
- ADD_STRING (" FR1: ");
- ADD_MEM (fpregs[1], 8);
- ADD_STRING (" FR2: ");
- ADD_MEM (fpregs[2], 8);
- ADD_STRING (" FR3: ");
- ADD_MEM (fpregs[3], 8);
- ADD_STRING ("\n FR4: ");
- ADD_MEM (fpregs[4], 8);
- ADD_STRING (" FR5: ");
- ADD_MEM (fpregs[5], 8);
- ADD_STRING (" FR6: ");
- ADD_MEM (fpregs[6], 8);
- ADD_STRING (" FR7: ");
- ADD_MEM (fpregs[7], 8);
- ADD_STRING ("\n FR8: ");
- ADD_MEM (fpregs[8], 8);
- ADD_STRING (" FR9: ");
- ADD_MEM (fpregs[9], 8);
- ADD_STRING (" FR10: ");
- ADD_MEM (fpregs[10], 8);
- ADD_STRING (" FR11: ");
- ADD_MEM (fpregs[11], 8);
- ADD_STRING ("\nFR12: ");
- ADD_MEM (fpregs[12], 8);
- ADD_STRING (" FR13: ");
- ADD_MEM (fpregs[13], 8);
- ADD_STRING (" FR14: ");
- ADD_MEM (fpregs[14], 8);
- ADD_STRING (" FR15: ");
- ADD_MEM (fpregs[15], 8);
- ADD_STRING ("\n\n XR0: ");
- ADD_MEM (fpregs[16], 8);
- ADD_STRING (" XR1: ");
- ADD_MEM (fpregs[17], 8);
- ADD_STRING (" XR2: ");
- ADD_MEM (fpregs[18], 8);
- ADD_STRING (" XR3: ");
- ADD_MEM (fpregs[19], 8);
- ADD_STRING ("\n XR4: ");
- ADD_MEM (fpregs[20], 8);
- ADD_STRING (" XR5: ");
- ADD_MEM (fpregs[21], 8);
- ADD_STRING (" XR6: ");
- ADD_MEM (fpregs[22], 8);
- ADD_STRING (" XR7: ");
- ADD_MEM (fpregs[23], 8);
- ADD_STRING ("\n XR8: ");
- ADD_MEM (fpregs[24], 8);
- ADD_STRING (" XR9: ");
- ADD_MEM (fpregs[25], 8);
- ADD_STRING (" XR10: ");
- ADD_MEM (fpregs[26], 8);
- ADD_STRING (" XR11: ");
- ADD_MEM (fpregs[27], 8);
- ADD_STRING ("\nXR12: ");
- ADD_MEM (fpregs[28], 8);
- ADD_STRING (" XR13: ");
- ADD_MEM (fpregs[29], 8);
- ADD_STRING (" XR14: ");
- ADD_MEM (fpregs[30], 8);
- ADD_STRING (" XR15: ");
- ADD_MEM (fpregs[31], 8);
-
- ADD_STRING ("\n\nFPSCR: ");
- ADD_MEM (fpregs[32], 8);
- ADD_STRING (" FPUL: ");
- ADD_MEM (fpregs[33], 8);
-
- ADD_STRING ("\n");
- }
-#endif /* __SH_FPU_ANY__ */
-
- /* Write the stuff out. */
- writev (fd, iov, nr);
-}
-
-
-#define REGISTER_DUMP register_dump (fd, &ctx)
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S b/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S
deleted file mode 100644
index e6672a6585..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S
+++ /dev/null
@@ -1,141 +0,0 @@
-/* Install given context.
- 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 <sysdep.h>
-
-#include "ucontext_i.h"
-
-/* int __setcontext (const ucontext_t *uc); */
-
- .text
- .align 5
-ENTRY(__setcontext)
-
- mov r4, r8
-
- /* sigprocmask (SIG_SETMASK, &uc->uc_sigmask, NULL). */
- mov r4, r5
- add #(oSIGMASK/2), r5
- add #(oSIGMASK/2), r5
- mov #SIG_SETMASK, r4
- mov #0, r6
- mov #+SYS_ify(sigprocmask), r3
- trapa #0x13
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lsetcontext_restore
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-
-.Lsetcontext_restore:
-#ifdef __SH_FPU_ANY__
- mov r8, r0
- add #(oFR0),r0
- fmov.s @r0+, fr0
- fmov.s @r0+, fr1
- fmov.s @r0+, fr2
- fmov.s @r0+, fr3
- fmov.s @r0+, fr4
- fmov.s @r0+, fr5
- fmov.s @r0+, fr6
- fmov.s @r0+, fr7
- fmov.s @r0+, fr8
- fmov.s @r0+, fr9
- fmov.s @r0+, fr10
- fmov.s @r0+, fr11
- fmov.s @r0+, fr12
- fmov.s @r0+, fr13
- fmov.s @r0+, fr14
- fmov.s @r0+, fr15
- frchg
- fmov.s @r0+, fr0
- fmov.s @r0+, fr1
- fmov.s @r0+, fr2
- fmov.s @r0+, fr3
- fmov.s @r0+, fr4
- fmov.s @r0+, fr5
- fmov.s @r0+, fr6
- fmov.s @r0+, fr7
- fmov.s @r0+, fr8
- fmov.s @r0+, fr9
- fmov.s @r0+, fr10
- fmov.s @r0+, fr11
- fmov.s @r0+, fr12
- fmov.s @r0+, fr13
- fmov.s @r0+, fr14
- fmov.s @r0+, fr15
- frchg
- lds.l @r0+, fpscr
- lds.l @r0+, fpul
-#endif /* __SH_FPU_ANY__ */
-
- mov r8, r0
- add #(oPC), r0
- mov.l @r0+, r2
- lds.l @r0+, pr
-
- /* Restore T frag. */
- mov.l @r0+, r1
- shlr r1
- /* Skip GBR which is used for thread pointer. */
- add #4, r0
-
- lds.l @r0+, mach
- lds.l @r0+, macl
-
- mov r8, r0
- add #(oR9), r0
- mov.l @r0+, r9
- mov.l @r0+, r10
- mov.l @r0+, r11
- mov.l @r0+, r12
- mov.l @r0+, r13
- mov.l @r0+, r14
- mov.l @r0+, r15
-
- mov r8, r0
- mov.l @(oR0,r0), r1
- mov.l r1, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r1, 0)
- mov.l r2, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r2, 0)
-
- mov.l @(oR1,r0), r1
- mov.l @(oR2,r0), r2
- mov.l @(oR3,r0), r3
- mov.l @(oR4,r0), r4
- mov.l @(oR5,r0), r5
- mov.l @(oR6,r0), r6
- mov.l @(oR7,r0), r7
- mov.l @(oR8,r0), r8
- mov.l @r15+, r0
- cfi_adjust_cfa_offset(-4)
- jmp @r0
- mov.l @r15+, r0
-
-PSEUDO_END(__setcontext)
-
-weak_alias (__setcontext, setcontext)
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S b/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S
deleted file mode 100644
index 5f96790be1..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S
+++ /dev/null
@@ -1,218 +0,0 @@
-/* Save current context and install the given one.
- 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 <sysdep.h>
-
-#include "ucontext_i.h"
-
-/* int __swapcontext (ucontext_t *ouc, const ucontext_t *uc); */
-
- .text
- .align 5
-ENTRY(__swapcontext)
-
- /* Return value of getcontext. R0 is the only register whose
- value is not preserved. */
- mov #0, r0
- mov.l r0, @(oR0,r4)
- mov.l r1, @(oR1,r4)
- mov.l r2, @(oR2,r4)
- mov.l r3, @(oR3,r4)
- mov.l r4, @(oR4,r4)
- mov.l r5, @(oR5,r4)
- mov.l r6, @(oR6,r4)
- mov.l r7, @(oR7,r4)
- mov r4, r0
- add #(oMACL+4), r0
- sts.l macl, @-r0
- sts.l mach, @-r0
- stc.l gbr, @-r0
-
- /* Save T flag to SR. */
- movt r1
- mov.l r1, @-r0
- sts.l pr, @-r0
-
- /* The return address of getcontext is the restart pc. */
- sts.l pr, @-r0
-
- mov.l r15, @-r0
- mov.l r14, @-r0
- mov.l r13, @-r0
- mov.l r12, @-r0
- mov.l r11, @-r0
- mov.l r10, @-r0
- mov.l r9, @-r0
- mov.l r8, @-r0
-
-#ifdef __SH_FPU_ANY__
- mov r4, r0
- /* We need 2 add instruction because oFPUL+4 >= 127. */
- add #124,r0
- add #(oFPUL+4-124),r0
- sts.l fpul, @-r0
- sts.l fpscr, @-r0
- frchg
- fmov.s fr15, @-r0
- fmov.s fr14, @-r0
- fmov.s fr13, @-r0
- fmov.s fr12, @-r0
- fmov.s fr11, @-r0
- fmov.s fr10, @-r0
- fmov.s fr9, @-r0
- fmov.s fr8, @-r0
- fmov.s fr7, @-r0
- fmov.s fr6, @-r0
- fmov.s fr5, @-r0
- fmov.s fr4, @-r0
- fmov.s fr3, @-r0
- fmov.s fr2, @-r0
- fmov.s fr1, @-r0
- fmov.s fr0, @-r0
- frchg
- fmov.s fr15, @-r0
- fmov.s fr14, @-r0
- fmov.s fr13, @-r0
- fmov.s fr12, @-r0
- fmov.s fr11, @-r0
- fmov.s fr10, @-r0
- fmov.s fr9, @-r0
- fmov.s fr8, @-r0
- fmov.s fr7, @-r0
- fmov.s fr6, @-r0
- fmov.s fr5, @-r0
- fmov.s fr4, @-r0
- fmov.s fr3, @-r0
- fmov.s fr2, @-r0
- fmov.s fr1, @-r0
- fmov.s fr0, @-r0
-#endif /* __SH_FPU_ANY__ */
-
- mov r5, r8
-
- /* sigprocmask (SIG_SETMASK, &uc->uc_sigmask, &ouc->uc_sigmask). */
- mov #oSIGMASK, r1
- extu.b r1, r1
- add r1, r5
- mov r4, r6
- add r1, r6
- mov #SIG_SETMASK, r4
- mov #+SYS_ify(sigprocmask), r3
- trapa #0x13
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lswapcontext_restore
-.Lsyscall_error:
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-.Lswapcontext_restore:
-#ifdef __SH_FPU_ANY__
- mov r8, r0
- add #(oFR0),r0
- fmov.s @r0+, fr0
- fmov.s @r0+, fr1
- fmov.s @r0+, fr2
- fmov.s @r0+, fr3
- fmov.s @r0+, fr4
- fmov.s @r0+, fr5
- fmov.s @r0+, fr6
- fmov.s @r0+, fr7
- fmov.s @r0+, fr8
- fmov.s @r0+, fr9
- fmov.s @r0+, fr10
- fmov.s @r0+, fr11
- fmov.s @r0+, fr12
- fmov.s @r0+, fr13
- fmov.s @r0+, fr14
- fmov.s @r0+, fr15
- frchg
- fmov.s @r0+, fr0
- fmov.s @r0+, fr1
- fmov.s @r0+, fr2
- fmov.s @r0+, fr3
- fmov.s @r0+, fr4
- fmov.s @r0+, fr5
- fmov.s @r0+, fr6
- fmov.s @r0+, fr7
- fmov.s @r0+, fr8
- fmov.s @r0+, fr9
- fmov.s @r0+, fr10
- fmov.s @r0+, fr11
- fmov.s @r0+, fr12
- fmov.s @r0+, fr13
- fmov.s @r0+, fr14
- fmov.s @r0+, fr15
- frchg
- lds.l @r0+, fpscr
- lds.l @r0+, fpul
-#endif /* __SH_FPU_ANY__ */
-
- mov r8, r0
- add #(oPC), r0
- mov.l @r0+, r2
- lds.l @r0+, pr
-
- /* Restore T frag. */
- mov.l @r0+, r1
- shlr r1
- /* Skip GBR which is used for thread pointer. */
- add #4, r0
-
- lds.l @r0+, mach
- lds.l @r0+, macl
-
- mov r8, r0
- add #(oR9), r0
- mov.l @r0+, r9
- mov.l @r0+, r10
- mov.l @r0+, r11
- mov.l @r0+, r12
- mov.l @r0+, r13
- mov.l @r0+, r14
- mov.l @r0+, r15
-
- mov r8, r0
- mov.l @(oR0,r0), r1
- mov.l r1, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r1, 0)
- mov.l r2, @-r15
- cfi_adjust_cfa_offset(4)
- cfi_rel_offset (r2, 0)
-
- mov.l @(oR1,r0), r1
- mov.l @(oR2,r0), r2
- mov.l @(oR3,r0), r3
- mov.l @(oR4,r0), r4
- mov.l @(oR5,r0), r5
- mov.l @(oR6,r0), r6
- mov.l @(oR7,r0), r7
- mov.l @(oR8,r0), r8
- mov.l @r15+, r0
- cfi_adjust_cfa_offset(-4)
- jmp @r0
- mov.l @r15+, r0
-
-PSEUDO_END(__swapcontext)
-
-weak_alias (__swapcontext, swapcontext)
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/sysdep.h b/sysdeps/unix/sysv/linux/sh/sh4/sysdep.h
deleted file mode 100644
index 852f8eed7f..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh4/sysdep.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* 4 instruction cycles not accessing cache and TLB are needed after
- trapa instruction to avoid an SH-4 silicon bug. */
-#define NEED_SYSCALL_INST_PAD
-#include <sysdeps/unix/sysv/linux/sh/sysdep.h>
diff --git a/sysdeps/unix/sysv/linux/sh/sh4/ucontext_i.sym b/sysdeps/unix/sysv/linux/sh/sh4/ucontext_i.sym
deleted file mode 100644
index 130f60cd96..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sh4/ucontext_i.sym
+++ /dev/null
@@ -1,73 +0,0 @@
-#include <stddef.h>
-#include <signal.h>
-#include <sys/ucontext.h>
-
---
-
-SIG_BLOCK
-SIG_SETMASK
-
-#define ucontext(member) offsetof (ucontext_t, member)
-#define mcontext(member) ucontext (uc_mcontext.member)
-
-oLINK ucontext (uc_link)
-oSS_SP ucontext (uc_stack.ss_sp)
-oSS_SIZE ucontext (uc_stack.ss_size)
-oR0 mcontext (gregs[REG_R0])
-oR1 mcontext (gregs[REG_R1])
-oR2 mcontext (gregs[REG_R2])
-oR3 mcontext (gregs[REG_R3])
-oR4 mcontext (gregs[REG_R4])
-oR5 mcontext (gregs[REG_R5])
-oR6 mcontext (gregs[REG_R6])
-oR7 mcontext (gregs[REG_R7])
-oR8 mcontext (gregs[REG_R8])
-oR9 mcontext (gregs[REG_R9])
-oR10 mcontext (gregs[REG_R10])
-oR11 mcontext (gregs[REG_R11])
-oR12 mcontext (gregs[REG_R12])
-oR13 mcontext (gregs[REG_R13])
-oR14 mcontext (gregs[REG_R14])
-oR15 mcontext (gregs[REG_R15])
-oPC mcontext (pc)
-oPR mcontext (pr)
-oSR mcontext (sr)
-oGBR mcontext (gbr)
-oMACH mcontext (mach)
-oMACL mcontext (macl)
-oFR0 mcontext (fpregs[0])
-oFR1 mcontext (fpregs[1])
-oFR2 mcontext (fpregs[2])
-oFR3 mcontext (fpregs[3])
-oFR4 mcontext (fpregs[4])
-oFR5 mcontext (fpregs[5])
-oFR6 mcontext (fpregs[6])
-oFR7 mcontext (fpregs[7])
-oFR8 mcontext (fpregs[8])
-oFR9 mcontext (fpregs[9])
-oFR10 mcontext (fpregs[10])
-oFR11 mcontext (fpregs[11])
-oFR12 mcontext (fpregs[12])
-oFR13 mcontext (fpregs[13])
-oFR14 mcontext (fpregs[14])
-oFR15 mcontext (fpregs[15])
-oXFR0 mcontext (xfpregs[0])
-oXFR1 mcontext (xfpregs[1])
-oXFR2 mcontext (xfpregs[2])
-oXFR3 mcontext (xfpregs[3])
-oXFR4 mcontext (xfpregs[4])
-oXFR5 mcontext (xfpregs[5])
-oXFR6 mcontext (xfpregs[6])
-oXFR7 mcontext (xfpregs[7])
-oXFR8 mcontext (xfpregs[8])
-oXFR9 mcontext (xfpregs[9])
-oXFR10 mcontext (xfpregs[10])
-oXFR11 mcontext (xfpregs[11])
-oXFR12 mcontext (xfpregs[12])
-oXFR13 mcontext (xfpregs[13])
-oXFR14 mcontext (xfpregs[14])
-oXFR15 mcontext (xfpregs[15])
-oFPSCR mcontext (fpscr)
-oFPUL mcontext (fpul)
-oOWNEDFP mcontext (ownedfp)
-oSIGMASK ucontext (uc_sigmask)
diff --git a/sysdeps/unix/sysv/linux/sh/shlib-versions b/sysdeps/unix/sysv/linux/sh/shlib-versions
deleted file mode 100644
index 9333bbd7a3..0000000000
--- a/sysdeps/unix/sysv/linux/sh/shlib-versions
+++ /dev/null
@@ -1,5 +0,0 @@
-libm=6 GLIBC_2.2
-libc=6 GLIBC_2.2
-ld=ld-linux.so.2 GLIBC_2.2
-libBrokenLocale=1 GLIBC_2.2
-libpthread=0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/sh/sigaltstack-offsets.sym b/sysdeps/unix/sysv/linux/sh/sigaltstack-offsets.sym
deleted file mode 100644
index f73446941a..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sigaltstack-offsets.sym
+++ /dev/null
@@ -1,13 +0,0 @@
-#include <stddef.h>
-#include <signal.h>
-
---
-
-#define sigaltstack(member) offsetof (stack_t, member)
-
-sizeSS sizeof (stack_t)
-oSS_SP sigaltstack (ss_sp)
-oSS_FLAGS sigaltstack (ss_flags)
-oSS_SIZE sigaltstack (ss_size)
-
-SS_ONSTACK
diff --git a/sysdeps/unix/sysv/linux/sh/sigcontextinfo.h b/sysdeps/unix/sysv/linux/sh/sigcontextinfo.h
deleted file mode 100644
index 546f23bb3e..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sigcontextinfo.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1999-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Philip Blundell <philb@gnu.org>, 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/>. */
-
-#define SIGCONTEXT int _a2, int _a3, int _a4, struct sigcontext
-
-#define SIGCONTEXT_EXTRA_ARGS _a2, _a3, _a4,
-#define GET_PC(ctx) ((void *) ctx.sc_pc)
-#define GET_FRAME(ctx) ((void *) ctx.sc_regs[14])
-#define GET_STACK(ctx) ((void *) ctx.sc_regs[15])
-#define CALL_SIGHANDLER(handler, signo, ctx) \
- (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
diff --git a/sysdeps/unix/sysv/linux/sh/smp.h b/sysdeps/unix/sysv/linux/sh/smp.h
deleted file mode 100644
index 8914a5b10c..0000000000
--- a/sysdeps/unix/sysv/linux/sh/smp.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Determine whether the host has multiple processors. SH version.
- 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 Library General Public License as
- published by the Free Software Foundation; either version 2 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
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If
- not, see <http://www.gnu.org/licenses/>. */
-
-static inline int
-is_smp_system (void)
-{
- return 0;
-}
diff --git a/sysdeps/unix/sysv/linux/sh/sys/procfs.h b/sysdeps/unix/sysv/linux/sh/sys/procfs.h
deleted file mode 100644
index 414911a661..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sys/procfs.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/* 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 <sys/time.h>
-#include <sys/types.h>
-#include <sys/user.h>
-
-__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
- {
-#if 0
- long int pr_flags; /* XXX Process flags. */
- short int pr_why; /* XXX Reason for process halt. */
- short int pr_what; /* XXX More detailed reason. */
-#endif
- struct elf_siginfo pr_info; /* Info associated with signal. */
- short int pr_cursig; /* Current signal. */
- unsigned long int pr_sigpend; /* Set of pending signals. */
- unsigned long int pr_sighold; /* Set of held signals. */
-#if 0
- stack_t pr_altstack; /* Alternate stack info. */
- struct sigaction pr_action; /* Signal action for current sig. */
-#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. */
-#if 0
- long int pr_instr; /* Current instruction. */
-#endif
- 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. */
- unsigned long int pr_flag; /* Flags. */
- unsigned short int pr_uid;
- unsigned short int 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/sysdeps/unix/sysv/linux/sh/sys/ucontext.h b/sysdeps/unix/sysv/linux/sh/sys/ucontext.h
deleted file mode 100644
index d44f95e0f9..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sys/ucontext.h
+++ /dev/null
@@ -1,127 +0,0 @@
-/* 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/>. */
-
-/* Where is System V/SH ABI? */
-
-#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>
-
-
-typedef int greg_t;
-
-/* Number of general registers. */
-#define __NGREG 16
-#ifdef __USE_MISC
-# define NGREG __NGREG
-#endif
-
-/* Container for all general registers. */
-typedef greg_t gregset_t[__NGREG];
-
-#ifdef __USE_MISC
-/* Number of each register is the `gregset_t' array. */
-enum
-{
- REG_R0 = 0,
-# define REG_R0 REG_R0
- REG_R1 = 1,
-# define REG_R1 REG_R1
- REG_R2 = 2,
-# define REG_R2 REG_R2
- REG_R3 = 3,
-# define REG_R3 REG_R3
- REG_R4 = 4,
-# define REG_R4 REG_R4
- REG_R5 = 5,
-# define REG_R5 REG_R5
- REG_R6 = 6,
-# define REG_R6 REG_R6
- REG_R7 = 7,
-# define REG_R7 REG_R7
- REG_R8 = 8,
-# define REG_R8 REG_R8
- REG_R9 = 9,
-# define REG_R9 REG_R9
- REG_R10 = 10,
-# define REG_R10 REG_R10
- REG_R11 = 11,
-# define REG_R11 REG_R11
- REG_R12 = 12,
-# define REG_R12 REG_R12
- REG_R13 = 13,
-# define REG_R13 REG_R13
- REG_R14 = 14,
-# define REG_R14 REG_R14
- REG_R15 = 15,
-# define REG_R15 REG_R15
-};
-#endif
-
-typedef int freg_t;
-
-/* Number of FPU registers. */
-#define __NFPREG 16
-#ifdef __USE_MISC
-# define NFPREG __NFPREG
-#endif
-
-/* Structure to describe FPU registers. */
-typedef freg_t fpregset_t[__NFPREG];
-
-#ifdef __USE_MISC
-# define __ctx(fld) fld
-#else
-# define __ctx(fld) __ ## fld
-#endif
-
-/* Context to describe whole processor state. */
-typedef struct
- {
- unsigned int __ctx(oldmask);
- gregset_t __ctx(gregs);
- unsigned int __ctx(pc);
- unsigned int __ctx(pr);
- unsigned int __ctx(sr);
- unsigned int __ctx(gbr);
- unsigned int __ctx(mach);
- unsigned int __ctx(macl);
- fpregset_t __ctx(fpregs);
- fpregset_t __ctx(xfpregs);
- unsigned int __ctx(fpscr);
- unsigned int __ctx(fpul);
- unsigned int __ctx(ownedfp);
- } mcontext_t;
-
-#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/sysdeps/unix/sysv/linux/sh/sys/user.h b/sysdeps/unix/sysv/linux/sh/sys/user.h
deleted file mode 100644
index 2ecda2d962..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sys/user.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* 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 _SYS_USER_H
-#define _SYS_USER_H 1
-
-#include <asm/ptrace.h>
-#include <stddef.h>
-
-/* asm/ptrace.h polutes the namespace. */
-#undef PTRACE_GETREGS
-#undef PTRACE_SETREGS
-#undef PTRACE_GETFPREGS
-#undef PTRACE_SETFPREGS
-#undef PTRACE_GETFDPIC
-#undef PTRACE_GETFDPIC_EXEC
-#undef PTRACE_GETFDPIC_INTERP
-#undef PTRACE_GETDSPREGS
-#undef PTRACE_SETDSPREGS
-
-typedef unsigned long elf_greg_t;
-
-#define ELF_NGREG (sizeof (struct pt_regs) / sizeof (elf_greg_t))
-typedef elf_greg_t elf_gregset_t[ELF_NGREG];
-
-struct user_fpu_struct
- {
- unsigned long fp_regs[16];
- unsigned long xfp_regs[16];
- unsigned long fpscr;
- unsigned long fpul;
- };
-typedef struct user_fpu_struct elf_fpregset_t;
-
-struct user
- {
- struct pt_regs regs;
- struct user_fpu_struct fpu;
- int u_fpvalid;
- size_t u_tsize;
- size_t u_dsize;
- size_t u_ssize;
- unsigned long start_code;
- unsigned long start_data;
- unsigned long start_stack;
- long int signal;
- unsigned long u_ar0;
- struct user_fpu_struct *u_fpstate;
- unsigned long magic;
- char u_comm[32];
- };
-
-#endif /* sys/user.h */
diff --git a/sysdeps/unix/sysv/linux/sh/syscall.S b/sysdeps/unix/sysv/linux/sh/syscall.S
deleted file mode 100644
index af1695bc44..0000000000
--- a/sysdeps/unix/sysv/linux/sh/syscall.S
+++ /dev/null
@@ -1,43 +0,0 @@
-/* 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 <sysdep.h>
-
-ENTRY (__syscall)
- mov r4, r3 // syscall number
- mov r5, r4 // p1
- mov r6, r5 // p2
- mov r7, r6 // p3
- mov.l @r15, r7 // p4
- mov.l @(4,r15), r0 // p5
- mov.l @(8,r15), r1 // p6
- mov.l @(12,r15), r2 // p7
- trapa #0x17
- mov r0, r1
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lpseudo_end
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-
-PSEUDO_END (__syscall)
-
-weak_alias (__syscall, syscall)
diff --git a/sysdeps/unix/sysv/linux/sh/syscalls.list b/sysdeps/unix/sysv/linux/sh/syscalls.list
deleted file mode 100644
index 32badd1ee0..0000000000
--- a/sysdeps/unix/sysv/linux/sh/syscalls.list
+++ /dev/null
@@ -1,22 +0,0 @@
-# File name Caller Syscall name # args Strong name Weak names
-
-chown - chown32 i:sii __chown chown
-lchown - lchown32 i:sii __lchown lchown
-fchown - fchown32 i:iii __fchown fchown
-
-getegid - getegid32 Ei: __getegid getegid
-geteuid - geteuid32 Ei: __geteuid geteuid
-getgid - getgid32 Ei: __getgid getgid
-getuid - getuid32 Ei: __getuid getuid
-getresgid - getresgid32 i:ppp __getresgid getresgid
-getresuid - getresuid32 i:ppp __getresuid getresuid
-getgroups - getgroups32 i:ip __getgroups getgroups
-
-setfsgid - setfsgid32 Ei:i setfsgid
-setfsuid - setfsuid32 Ei:i setfsuid
-
-prlimit64 EXTRA prlimit64 i:iipp prlimit64
-
-fanotify_mark EXTRA fanotify_mark i:iiiiis __fanotify_mark fanotify_mark@@GLIBC_2.16
-
-personality EXTRA personality Ei:i __personality personality
diff --git a/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h b/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
deleted file mode 100644
index 5645cadbcd..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
+++ /dev/null
@@ -1,169 +0,0 @@
-/* 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 <tls.h>
-#ifndef __ASSEMBLER__
-# include <nptl/pthreadP.h>
-#endif
-
-#if IS_IN (libc) || IS_IN (libpthread) || IS_IN (librt)
-
-# define _IMM12 #-12
-# define _IMM16 #-16
-# define _IMP16 #16
-# undef PSEUDO
-# define PSEUDO(name, syscall_name, args) \
- .text; \
- ENTRY (name); \
- .Lpseudo_start: \
- SINGLE_THREAD_P; \
- bf .Lpseudo_cancel; \
- .type __##syscall_name##_nocancel,@function; \
- .globl __##syscall_name##_nocancel; \
- __##syscall_name##_nocancel: \
- DO_CALL (syscall_name, args); \
- mov r0,r1; \
- mov _IMM12,r2; \
- shad r2,r1; \
- not r1,r1; \
- tst r1,r1; \
- bt .Lsyscall_error; \
- bra .Lpseudo_end; \
- nop; \
- .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \
- .Lpseudo_cancel: \
- sts.l pr,@-r15; \
- cfi_adjust_cfa_offset (4); \
- cfi_rel_offset (pr, 0); \
- add _IMM16,r15; \
- cfi_adjust_cfa_offset (16); \
- SAVE_ARGS_##args; \
- CENABLE; \
- LOAD_ARGS_##args; \
- add _IMP16,r15; \
- cfi_adjust_cfa_offset (-16); \
- lds.l @r15+,pr; \
- cfi_adjust_cfa_offset (-4); \
- cfi_restore (pr); \
- DO_CALL(syscall_name, args); \
- SYSCALL_INST_PAD; \
- sts.l pr,@-r15; \
- cfi_adjust_cfa_offset (4); \
- cfi_rel_offset (pr, 0); \
- mov.l r0,@-r15; \
- cfi_adjust_cfa_offset (4); \
- cfi_rel_offset (r0, 0); \
- CDISABLE; \
- mov.l @r15+,r0; \
- cfi_adjust_cfa_offset (-4); \
- cfi_restore (r0); \
- lds.l @r15+,pr; \
- cfi_adjust_cfa_offset (-4); \
- cfi_restore (pr); \
- mov r0,r1; \
- mov _IMM12,r2; \
- shad r2,r1; \
- not r1,r1; \
- tst r1,r1; \
- bf .Lpseudo_end; \
- .Lsyscall_error: \
- SYSCALL_ERROR_HANDLER; \
- .Lpseudo_end:
-
-# undef PSEUDO_END
-# define PSEUDO_END(sym) \
- END (sym)
-
-# define SAVE_ARGS_0 /* Nothing. */
-# define SAVE_ARGS_1 SAVE_ARGS_0; mov.l r4,@(0,r15); cfi_offset (r4,-4)
-# define SAVE_ARGS_2 SAVE_ARGS_1; mov.l r5,@(4,r15); cfi_offset (r5,-8)
-# define SAVE_ARGS_3 SAVE_ARGS_2; mov.l r6,@(8,r15); cfi_offset (r6,-12)
-# define SAVE_ARGS_4 SAVE_ARGS_3; mov.l r7,@(12,r15); cfi_offset (r7,-16)
-# define SAVE_ARGS_5 SAVE_ARGS_4
-# define SAVE_ARGS_6 SAVE_ARGS_5
-
-# define LOAD_ARGS_0 /* Nothing. */
-# define LOAD_ARGS_1 LOAD_ARGS_0; mov.l @(0,r15),r4; cfi_restore (r4)
-# define LOAD_ARGS_2 LOAD_ARGS_1; mov.l @(4,r15),r5; cfi_restore (r5)
-# define LOAD_ARGS_3 LOAD_ARGS_2; mov.l @(8,r15),r6; cfi_restore (r6)
-# define LOAD_ARGS_4 LOAD_ARGS_3; mov.l @(12,r15),r7; cfi_restore (r7)
-# define LOAD_ARGS_5 LOAD_ARGS_4
-# define LOAD_ARGS_6 LOAD_ARGS_5
-
-# if IS_IN (libpthread)
-# define __local_enable_asynccancel __pthread_enable_asynccancel
-# define __local_disable_asynccancel __pthread_disable_asynccancel
-# elif IS_IN (libc)
-# define __local_enable_asynccancel __libc_enable_asynccancel
-# define __local_disable_asynccancel __libc_disable_asynccancel
-# elif IS_IN (librt)
-# define __local_enable_asynccancel __librt_enable_asynccancel
-# define __local_disable_asynccancel __librt_disable_asynccancel
-# else
-# error Unsupported library
-# endif
-
-# define CENABLE \
- mov.l 1f,r0; \
- bsrf r0; \
- nop; \
- 0: bra 2f; \
- mov r0,r2; \
- .align 2; \
- 1: .long __local_enable_asynccancel - 0b; \
- 2:
-
-# define CDISABLE \
- mov.l 1f,r0; \
- bsrf r0; \
- mov r2,r4; \
- 0: bra 2f; \
- nop; \
- .align 2; \
- 1: .long __local_disable_asynccancel - 0b; \
- 2:
-
-# ifndef __ASSEMBLER__
-# define SINGLE_THREAD_P \
- __builtin_expect (THREAD_GETMEM (THREAD_SELF, \
- header.multiple_threads) == 0, 1)
-# else
-# define SINGLE_THREAD_P \
- stc gbr,r0; \
- mov.w 0f,r1; \
- sub r1,r0; \
- mov.l @(MULTIPLE_THREADS_OFFSET,r0),r0; \
- bra 1f; \
- tst r0,r0; \
- 0: .word TLS_PRE_TCB_SIZE; \
- 1:
-
-# 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/sysdeps/unix/sysv/linux/sh/sysdep.S b/sysdeps/unix/sysv/linux/sh/sysdep.S
deleted file mode 100644
index 5f11bc737b..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sysdep.S
+++ /dev/null
@@ -1,32 +0,0 @@
-/* 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/>. */
-
-#include <sysdep.h>
-
-/* The syscall stubs jump here when they detect an error.
- The code for Linux is almost identical to the canonical Unix
- code, except that the error number in R0 is negated. */
-
-#undef CALL_MCOUNT
-#define CALL_MCOUNT /* Don't insert the profiling call, it clobbers R0. */
-
-ENTRY (__syscall_error)
- neg r4, r0
- cfi_endproc
-
-#define __syscall_error __syscall_error_1
-#include <sysdeps/unix/sh/sysdep.S>
diff --git a/sysdeps/unix/sysv/linux/sh/sysdep.h b/sysdeps/unix/sysv/linux/sh/sysdep.h
deleted file mode 100644
index b76140cd90..0000000000
--- a/sysdeps/unix/sysv/linux/sh/sysdep.h
+++ /dev/null
@@ -1,360 +0,0 @@
-/* Copyright (C) 1992-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper, <drepper@gnu.ai.mit.edu>, August 1995.
- Changed by Kaz Kojima, <kkojima@rr.iij4u.or.jp>.
-
- 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_SH_SYSDEP_H
-#define _LINUX_SH_SYSDEP_H 1
-
-/* There is some commonality. */
-#include <sysdeps/unix/sysv/linux/sysdep.h>
-#include <sysdeps/unix/sh/sysdep.h>
-#include <tls.h>
-
-/* 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__
-
-/* Linux uses a negative return value to indicate syscall errors,
- unlike most Unices, which use the condition codes' carry flag.
-
- Since version 2.1 the return value of a system call might be
- negative even if the call succeeded. E.g., the `lseek' system call
- might return a large offset. Therefore we must not anymore test
- for < 0, but test for a real error by making sure the value in R0
- is a real error number. Linus said he will make sure the no syscall
- returns a value in -1 .. -4095 as a valid result so we can savely
- test with -4095. */
-
-#define _IMM1 #-1
-#define _IMM12 #-12
-#undef PSEUDO
-#define PSEUDO(name, syscall_name, args) \
- .text; \
- ENTRY (name); \
- DO_CALL (syscall_name, args); \
- mov r0,r1; \
- mov _IMM12,r2; \
- shad r2,r1; \
- not r1,r1; \
- tst r1,r1; \
- bf .Lpseudo_end; \
- SYSCALL_ERROR_HANDLER; \
- .Lpseudo_end:
-
-#undef PSEUDO_END
-#define PSEUDO_END(name) \
- END (name)
-
-#undef PSEUDO_NOERRNO
-#define PSEUDO_NOERRNO(name, syscall_name, args) \
- .text; \
- ENTRY (name); \
- DO_CALL (syscall_name, args)
-
-#undef PSEUDO_END_NOERRNO
-#define PSEUDO_END_NOERRNO(name) \
- END (name)
-
-#define ret_NOERRNO ret
-
-#define PSEUDO_ERRVAL(name, syscall_name, args) \
- .text; \
- ENTRY (name); \
- DO_CALL (syscall_name, args);
-
-#undef PSEUDO_END_ERRVAL
-#define PSEUDO_END_ERRVAL(name) \
- END (name)
-
-#define ret_ERRVAL ret
-
-#ifndef PIC
-# define SYSCALL_ERROR_HANDLER \
- mov.l 0f,r1; \
- jmp @r1; \
- mov r0,r4; \
- .align 2; \
- 0: .long __syscall_error
-#else
-# if RTLD_PRIVATE_ERRNO
-# define SYSCALL_ERROR_HANDLER \
- neg r0,r1; \
- mov r12,r2; \
- cfi_register (r12, r2); \
- mov.l 0f,r12; \
- mova 0f,r0; \
- add r0,r12; \
- mov.l 1f,r0; \
- mov.l r1,@(r0,r12); \
- mov r2,r12; \
- cfi_restore (r12); \
- bra .Lpseudo_end; \
- mov _IMM1,r0; \
- .align 2; \
- 0: .long _GLOBAL_OFFSET_TABLE_; \
- 1: .long rtld_errno@GOTOFF
-
-# elif defined _LIBC_REENTRANT
-
-# if IS_IN (libc)
-# define SYSCALL_ERROR_ERRNO __libc_errno
-# else
-# define SYSCALL_ERROR_ERRNO errno
-# endif
-# define SYSCALL_ERROR_HANDLER \
- neg r0,r1; \
- mov r12,r2; \
- cfi_register (r12, r2); \
- mov.l 0f,r12; \
- mova 0f,r0; \
- add r0,r12; \
- mov.l 1f,r0; \
- stc gbr, r4; \
- mov.l @(r0,r12),r0; \
- mov r2,r12; \
- cfi_restore (r12); \
- add r4,r0; \
- mov.l r1,@r0; \
- bra .Lpseudo_end; \
- mov _IMM1,r0; \
- .align 2; \
- 0: .long _GLOBAL_OFFSET_TABLE_; \
- 1: .long SYSCALL_ERROR_ERRNO@GOTTPOFF
-# else
-/* Store (-r0) into errno through the GOT. */
-# define SYSCALL_ERROR_HANDLER \
- neg r0,r1; \
- mov r12,r2; \
- cfi_register (r12, r2); \
- mov.l 0f,r12; \
- mova 0f,r0; \
- add r0,r12; \
- mov.l 1f,r0; \
- mov.l @(r0,r12),r0; \
- mov r2,r12; \
- cfi_restore (r12); \
- mov.l r1,@r0; \
- bra .Lpseudo_end; \
- mov _IMM1,r0; \
- .align 2; \
- 0: .long _GLOBAL_OFFSET_TABLE_; \
- 1: .long errno@GOT
-# endif /* _LIBC_REENTRANT */
-#endif /* PIC */
-
-# ifdef NEED_SYSCALL_INST_PAD
-# define SYSCALL_INST_PAD \
- or r0,r0; or r0,r0; or r0,r0; or r0,r0; or r0,r0
-# else
-# define SYSCALL_INST_PAD
-# endif
-
-#define SYSCALL_INST0 trapa #0x10
-#define SYSCALL_INST1 trapa #0x11
-#define SYSCALL_INST2 trapa #0x12
-#define SYSCALL_INST3 trapa #0x13
-#define SYSCALL_INST4 trapa #0x14
-#define SYSCALL_INST5 mov.l @(0,r15),r0; trapa #0x15
-#define SYSCALL_INST6 mov.l @(0,r15),r0; mov.l @(4,r15),r1; trapa #0x16
-
-#undef DO_CALL
-#define DO_CALL(syscall_name, args) \
- mov.l 1f,r3; \
- SYSCALL_INST##args; \
- SYSCALL_INST_PAD; \
- bra 2f; \
- nop; \
- .align 2; \
- 1: .long SYS_ify (syscall_name); \
- 2:
-
-#else /* not __ASSEMBLER__ */
-
-#define SYSCALL_INST_STR0 "trapa #0x10\n\t"
-#define SYSCALL_INST_STR1 "trapa #0x11\n\t"
-#define SYSCALL_INST_STR2 "trapa #0x12\n\t"
-#define SYSCALL_INST_STR3 "trapa #0x13\n\t"
-#define SYSCALL_INST_STR4 "trapa #0x14\n\t"
-#define SYSCALL_INST_STR5 "trapa #0x15\n\t"
-#define SYSCALL_INST_STR6 "trapa #0x16\n\t"
-
-# ifdef NEED_SYSCALL_INST_PAD
-# define SYSCALL_INST_PAD "\
- or r0,r0; or r0,r0; or r0,r0; or r0,r0; or r0,r0"
-# else
-# define SYSCALL_INST_PAD
-# endif
-
-#define ASMFMT_0
-#define ASMFMT_1 \
- , "r" (r4)
-#define ASMFMT_2 \
- , "r" (r4), "r" (r5)
-#define ASMFMT_3 \
- , "r" (r4), "r" (r5), "r" (r6)
-#define ASMFMT_4 \
- , "r" (r4), "r" (r5), "r" (r6), "r" (r7)
-#define ASMFMT_5 \
- , "r" (r4), "r" (r5), "r" (r6), "r" (r7), "0" (r0)
-#define ASMFMT_6 \
- , "r" (r4), "r" (r5), "r" (r6), "r" (r7), "0" (r0), "r" (r1)
-#define ASMFMT_7 \
- , "r" (r4), "r" (r5), "r" (r6), "r" (r7), "0" (r0), "r" (r1), "r" (r2)
-
-#define SUBSTITUTE_ARGS_0()
-#define SUBSTITUTE_ARGS_1(arg1) \
- long int _arg1 = (long int) (arg1); \
- register long int r4 asm ("%r4") = (long int) (_arg1)
-#define SUBSTITUTE_ARGS_2(arg1, arg2) \
- long int _arg1 = (long int) (arg1); \
- long int _arg2 = (long int) (arg2); \
- register long int r4 asm ("%r4") = (long int) (_arg1); \
- register long int r5 asm ("%r5") = (long int) (_arg2)
-#define SUBSTITUTE_ARGS_3(arg1, arg2, arg3) \
- long int _arg1 = (long int) (arg1); \
- long int _arg2 = (long int) (arg2); \
- long int _arg3 = (long int) (arg3); \
- register long int r4 asm ("%r4") = (long int) (_arg1); \
- register long int r5 asm ("%r5") = (long int) (_arg2); \
- register long int r6 asm ("%r6") = (long int) (_arg3)
-#define SUBSTITUTE_ARGS_4(arg1, arg2, arg3, arg4) \
- long int _arg1 = (long int) (arg1); \
- long int _arg2 = (long int) (arg2); \
- long int _arg3 = (long int) (arg3); \
- long int _arg4 = (long int) (arg4); \
- register long int r4 asm ("%r4") = (long int) (_arg1); \
- register long int r5 asm ("%r5") = (long int) (_arg2); \
- register long int r6 asm ("%r6") = (long int) (_arg3); \
- register long int r7 asm ("%r7") = (long int) (_arg4)
-#define SUBSTITUTE_ARGS_5(arg1, arg2, arg3, arg4, arg5) \
- long int _arg1 = (long int) (arg1); \
- long int _arg2 = (long int) (arg2); \
- long int _arg3 = (long int) (arg3); \
- long int _arg4 = (long int) (arg4); \
- long int _arg5 = (long int) (arg5); \
- register long int r4 asm ("%r4") = (long int) (_arg1); \
- register long int r5 asm ("%r5") = (long int) (_arg2); \
- register long int r6 asm ("%r6") = (long int) (_arg3); \
- register long int r7 asm ("%r7") = (long int) (_arg4); \
- register long int r0 asm ("%r0") = (long int) (_arg5)
-#define SUBSTITUTE_ARGS_6(arg1, arg2, arg3, arg4, arg5, arg6) \
- long int _arg1 = (long int) (arg1); \
- long int _arg2 = (long int) (arg2); \
- long int _arg3 = (long int) (arg3); \
- long int _arg4 = (long int) (arg4); \
- long int _arg5 = (long int) (arg5); \
- long int _arg6 = (long int) (arg6); \
- register long int r4 asm ("%r4") = (long int)(_arg1); \
- register long int r5 asm ("%r5") = (long int) (_arg2); \
- register long int r6 asm ("%r6") = (long int) (_arg3); \
- register long int r7 asm ("%r7") = (long int) (_arg4); \
- register long int r0 asm ("%r0") = (long int) (_arg5); \
- register long int r1 asm ("%r1") = (long int) (_arg6)
-#define SUBSTITUTE_ARGS_7(arg1, arg2, arg3, arg4, arg5, arg6, arg7) \
- long int _arg1 = (long int) (arg1); \
- long int _arg2 = (long int) (arg2); \
- long int _arg3 = (long int) (arg3); \
- long int _arg4 = (long int) (arg4); \
- long int _arg5 = (long int) (arg5); \
- long int _arg6 = (long int) (arg6); \
- long int _arg7 = (long int) (arg7); \
- register long int r4 asm ("%r4") = (long int) (_arg1); \
- register long int r5 asm ("%r5") = (long int) (_arg2); \
- register long int r6 asm ("%r6") = (long int) (_arg3); \
- register long int r7 asm ("%r7") = (long int) (_arg4); \
- register long int r0 asm ("%r0") = (long int) (_arg5); \
- register long int r1 asm ("%r1") = (long int) (_arg6); \
- register long int r2 asm ("%r2") = (long int) (_arg7)
-
-#undef INLINE_SYSCALL
-#define INLINE_SYSCALL(name, nr, args...) \
- ({ \
- unsigned int resultvar = INTERNAL_SYSCALL (name, , nr, args); \
- if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (resultvar, ), 0)) \
- { \
- __set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, )); \
- resultvar = 0xffffffff; \
- } \
- (int) resultvar; })
-
-#undef INTERNAL_SYSCALL
-#define INTERNAL_SYSCALL(name, err, nr, args...) \
- ({ \
- unsigned long int resultvar; \
- register long int r3 asm ("%r3") = SYS_ify (name); \
- SUBSTITUTE_ARGS_##nr(args); \
- \
- asm volatile (SYSCALL_INST_STR##nr SYSCALL_INST_PAD \
- : "=z" (resultvar) \
- : "r" (r3) ASMFMT_##nr \
- : "memory", "t"); \
- \
- (int) resultvar; })
-
-/* The _NCS variant allows non-constant syscall numbers. */
-#define INTERNAL_SYSCALL_NCS(name, err, nr, args...) \
- ({ \
- unsigned long int resultvar; \
- register long int r3 asm ("%r3") = (name); \
- SUBSTITUTE_ARGS_##nr(args); \
- \
- asm volatile (SYSCALL_INST_STR##nr SYSCALL_INST_PAD \
- : "=z" (resultvar) \
- : "r" (r3) ASMFMT_##nr \
- : "memory", "t"); \
- \
- (int) resultvar; })
-
-#undef INTERNAL_SYSCALL_DECL
-#define INTERNAL_SYSCALL_DECL(err) do { } while (0)
-
-#undef INTERNAL_SYSCALL_ERROR_P
-#define INTERNAL_SYSCALL_ERROR_P(val, err) \
- ((unsigned int) (val) >= 0xfffff001u)
-
-#undef INTERNAL_SYSCALL_ERRNO
-#define INTERNAL_SYSCALL_ERRNO(val, err) (-(val))
-
-#endif /* __ASSEMBLER__ */
-
-/* Pointer mangling support. */
-#if IS_IN (rtld)
-/* We cannot use the thread descriptor because in ld.so we use setjmp
- earlier than the descriptor is initialized. Using a global variable
- is too complicated here since we have no PC-relative addressing mode. */
-#else
-# ifdef __ASSEMBLER__
-# define PTR_MANGLE(reg, tmp) \
- stc gbr,tmp; mov.l @(POINTER_GUARD,tmp),tmp; xor tmp,reg
-# define PTR_MANGLE2(reg, tmp) xor tmp,reg
-# define PTR_DEMANGLE(reg, tmp) PTR_MANGLE (reg, tmp)
-# define PTR_DEMANGLE2(reg, tmp) PTR_MANGLE2 (reg, tmp)
-# else
-# define PTR_MANGLE(var) \
- (var) = (void *) ((uintptr_t) (var) ^ THREAD_GET_POINTER_GUARD ())
-# define PTR_DEMANGLE(var) PTR_MANGLE (var)
-# endif
-#endif
-
-#endif /* linux/sh/sysdep.h */
diff --git a/sysdeps/unix/sysv/linux/sh/vfork.S b/sysdeps/unix/sysv/linux/sh/vfork.S
deleted file mode 100644
index 0626bda2df..0000000000
--- a/sysdeps/unix/sysv/linux/sh/vfork.S
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Copyright (C) 2004-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>
-#define _ERRNO_H 1
-#include <bits/errno.h>
-#include <tcb-offsets.h>
-
-/* Clone the calling process, but without copying the whole address space.
- The calling process is suspended until the new process exits or is
- replaced by a call to `execve'. Return -1 for errors, 0 to the new process,
- and the process ID of the new process to the old process. */
-
-ENTRY (__libc_vfork)
-
- mov.w .L1, r3
- trapa #0x10
- mov r0, r1
-
- mov #-12, r2
- shad r2, r1
- not r1, r1 // r1=0 means r0 = -1 to -4095
- tst r1, r1 // i.e. error in linux
- bf .Lpseudo_end
- SYSCALL_ERROR_HANDLER
-.Lpseudo_end:
- rts
- nop
-.L1:
- .word __NR_vfork
- .align 2
-PSEUDO_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/sysdeps/unix/sysv/linux/sh/xstat.c b/sysdeps/unix/sysv/linux/sh/xstat.c
deleted file mode 100644
index e9869f5508..0000000000
--- a/sysdeps/unix/sysv/linux/sh/xstat.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/xstat.c>