summaryrefslogtreecommitdiff
path: root/sysdeps/mach/hurd/i386
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mach/hurd/i386')
-rw-r--r--sysdeps/mach/hurd/i386/Implies2
-rw-r--r--sysdeps/mach/hurd/i386/Makefile96
-rw-r--r--sysdeps/mach/hurd/i386/____longjmp_chk.S6
-rw-r--r--sysdeps/mach/hurd/i386/bits/sigcontext.h10
-rw-r--r--sysdeps/mach/hurd/i386/c++-types.data67
-rw-r--r--sysdeps/mach/hurd/i386/exc2signal.c3
-rw-r--r--sysdeps/mach/hurd/i386/htl/Implies2
-rw-r--r--sysdeps/mach/hurd/i386/htl/pt-machdep.c82
-rw-r--r--sysdeps/mach/hurd/i386/htl/pt-setup.c110
-rw-r--r--sysdeps/mach/hurd/i386/init-first.c48
-rw-r--r--sysdeps/mach/hurd/i386/intr-msg.h2
-rw-r--r--sysdeps/mach/hurd/i386/ioperm.c2
-rw-r--r--sysdeps/mach/hurd/i386/jmp_buf-macros.h6
-rw-r--r--sysdeps/mach/hurd/i386/ld.abilist25
-rw-r--r--sysdeps/mach/hurd/i386/libBrokenLocale.abilist1
-rw-r--r--sysdeps/mach/hurd/i386/libanl.abilist4
-rw-r--r--sysdeps/mach/hurd/i386/libc.abilist2306
-rw-r--r--sysdeps/mach/hurd/i386/libcrypt.abilist7
-rw-r--r--sysdeps/mach/hurd/i386/libdl.abilist9
-rw-r--r--sysdeps/mach/hurd/i386/libm.abilist1070
-rw-r--r--sysdeps/mach/hurd/i386/libnsl.abilist121
-rw-r--r--sysdeps/mach/hurd/i386/libpthread.abilist149
-rw-r--r--sysdeps/mach/hurd/i386/libresolv.abilist91
-rw-r--r--sysdeps/mach/hurd/i386/librt.abilist42
-rw-r--r--sysdeps/mach/hurd/i386/libutil.abilist6
-rw-r--r--sysdeps/mach/hurd/i386/localplt.data64
-rw-r--r--sysdeps/mach/hurd/i386/longjmp-ts.c2
-rw-r--r--sysdeps/mach/hurd/i386/makecontext-helper.c2
-rw-r--r--sysdeps/mach/hurd/i386/makecontext.S2
-rw-r--r--sysdeps/mach/hurd/i386/sigcontextinfo.h7
-rw-r--r--sysdeps/mach/hurd/i386/signal-defines.sym6
-rw-r--r--sysdeps/mach/hurd/i386/sigreturn.c2
-rw-r--r--sysdeps/mach/hurd/i386/static-start.S2
-rw-r--r--sysdeps/mach/hurd/i386/sys/io.h2
-rw-r--r--sysdeps/mach/hurd/i386/tls.h82
-rw-r--r--sysdeps/mach/hurd/i386/tlsdesc.sym19
-rw-r--r--sysdeps/mach/hurd/i386/trampoline.c2
37 files changed, 4363 insertions, 96 deletions
diff --git a/sysdeps/mach/hurd/i386/Implies b/sysdeps/mach/hurd/i386/Implies
new file mode 100644
index 0000000000..eedc9eada9
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/Implies
@@ -0,0 +1,2 @@
+mach/hurd/x86
+mach/hurd/i386/htl
diff --git a/sysdeps/mach/hurd/i386/Makefile b/sysdeps/mach/hurd/i386/Makefile
index 9e1a978b6f..1a53065ae7 100644
--- a/sysdeps/mach/hurd/i386/Makefile
+++ b/sysdeps/mach/hurd/i386/Makefile
@@ -11,3 +11,99 @@ ifeq ($(subdir),stdlib)
gen-as-const-headers += ucontext_i.sym
sysdep_routines += makecontext-helper
endif
+
+ifeq ($(subdir),csu)
+ifeq (yes,$(build-shared))
+sysdep_routines += divdi3
+shared-only-routines += divdi3
+CPPFLAGS-divdi3.c = -Din_divdi3_c
+endif
+endif
+
+ifeq ($(subdir),conform)
+# For bugs 23081, 23082, 23083, 23084, 23085, 23086.
+conformtest-xfail-conds += i386-gnu
+
+# For bug 23088
+test-xfail-POSIX/fcntl.h/conform = yes
+test-xfail-POSIX/signal.h/conform = yes
+test-xfail-POSIX/semaphore.h/conform = yes
+test-xfail-POSIX/regex.h/conform = yes
+test-xfail-POSIX/aio.h/conform = yes
+test-xfail-POSIX/mqueue.h/conform = yes
+test-xfail-POSIX/sys/types.h/conform = yes
+test-xfail-UNIX98/fcntl.h/conform = yes
+test-xfail-UNIX98/netdb.h/conform = yes
+test-xfail-UNIX98/signal.h/conform = yes
+test-xfail-UNIX98/semaphore.h/conform = yes
+test-xfail-UNIX98/regex.h/conform = yes
+test-xfail-UNIX98/aio.h/conform = yes
+test-xfail-UNIX98/ftw.h/conform = yes
+test-xfail-UNIX98/mqueue.h/conform = yes
+test-xfail-UNIX98/netinet/in.h/conform = yes
+test-xfail-UNIX98/sys/wait.h/conform = yes
+test-xfail-UNIX98/sys/sem.h/conform = yes
+test-xfail-UNIX98/sys/uio.h/conform = yes
+test-xfail-UNIX98/sys/socket.h/conform = yes
+test-xfail-UNIX98/sys/types.h/conform = yes
+test-xfail-UNIX98/stdlib.h/conform = yes
+test-xfail-UNIX98/arpa/inet.h/conform = yes
+test-xfail-POSIX2008/fcntl.h/conform = yes
+test-xfail-POSIX2008/netdb.h/conform = yes
+test-xfail-POSIX2008/signal.h/conform = yes
+test-xfail-POSIX2008/semaphore.h/conform = yes
+test-xfail-POSIX2008/regex.h/conform = yes
+test-xfail-POSIX2008/aio.h/conform = yes
+test-xfail-POSIX2008/mqueue.h/conform = yes
+test-xfail-POSIX2008/netinet/in.h/conform = yes
+test-xfail-POSIX2008/sys/wait.h/conform = yes
+test-xfail-POSIX2008/sys/socket.h/conform = yes
+test-xfail-POSIX2008/sys/types.h/conform = yes
+test-xfail-POSIX2008/arpa/inet.h/conform = yes
+test-xfail-XOPEN2K/fcntl.h/conform = yes
+test-xfail-XOPEN2K/netdb.h/conform = yes
+test-xfail-XOPEN2K/signal.h/conform = yes
+test-xfail-XOPEN2K/semaphore.h/conform = yes
+test-xfail-XOPEN2K/regex.h/conform = yes
+test-xfail-XOPEN2K/aio.h/conform = yes
+test-xfail-XOPEN2K/ftw.h/conform = yes
+test-xfail-XOPEN2K/mqueue.h/conform = yes
+test-xfail-XOPEN2K/netinet/in.h/conform = yes
+test-xfail-XOPEN2K/sys/wait.h/conform = yes
+test-xfail-XOPEN2K/sys/sem.h/conform = yes
+test-xfail-XOPEN2K/sys/uio.h/conform = yes
+test-xfail-XOPEN2K/sys/socket.h/conform = yes
+test-xfail-XOPEN2K/sys/types.h/conform = yes
+test-xfail-XOPEN2K/stdlib.h/conform = yes
+test-xfail-XOPEN2K/arpa/inet.h/conform = yes
+test-xfail-XOPEN2K8/fcntl.h/conform = yes
+test-xfail-XOPEN2K8/netdb.h/conform = yes
+test-xfail-XOPEN2K8/signal.h/conform = yes
+test-xfail-XOPEN2K8/semaphore.h/conform = yes
+test-xfail-XOPEN2K8/regex.h/conform = yes
+test-xfail-XOPEN2K8/aio.h/conform = yes
+test-xfail-XOPEN2K8/ftw.h/conform = yes
+test-xfail-XOPEN2K8/mqueue.h/conform = yes
+test-xfail-XOPEN2K8/netinet/in.h/conform = yes
+test-xfail-XOPEN2K8/sys/wait.h/conform = yes
+test-xfail-XOPEN2K8/sys/sem.h/conform = yes
+test-xfail-XOPEN2K8/sys/uio.h/conform = yes
+test-xfail-XOPEN2K8/sys/socket.h/conform = yes
+test-xfail-XOPEN2K8/sys/types.h/conform = yes
+test-xfail-XOPEN2K8/stdlib.h/conform = yes
+test-xfail-XOPEN2K8/arpa/inet.h/conform = yes
+endif
+
+# For bug 23286
+ifeq ($(subdir),hurd)
+test-xfail-check-abi-libhurduser = yes
+endif
+ifeq ($(subdir),mach)
+test-xfail-check-abi-libmachuser = yes
+endif
+
+ifeq ($(subdir),elf)
+# We do use nested functions involving creation of trampolines, notably for
+# callbacks whose parameters don't permit to get the context parameters.
+check-execstack-xfail += ld.so libc.so libpthread.so
+endif
diff --git a/sysdeps/mach/hurd/i386/____longjmp_chk.S b/sysdeps/mach/hurd/i386/____longjmp_chk.S
index 4ddf6cd82e..7c3a73adba 100644
--- a/sysdeps/mach/hurd/i386/____longjmp_chk.S
+++ b/sysdeps/mach/hurd/i386/____longjmp_chk.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2016 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2018 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
@@ -36,9 +36,11 @@ longjmp_msg:
cfi_register(%ebx,%ecx); \
LOAD_PIC_REG (bx); \
leal longjmp_msg@GOTOFF(%ebx), %eax; \
+ movl %eax, (%esp); \
call HIDDEN_JUMPTARGET(__fortify_fail)
#else
# define CALL_FAIL movl $longjmp_msg, %eax; \
+ movl %eax, (%esp); \
call HIDDEN_JUMPTARGET(__fortify_fail)
#endif
@@ -66,7 +68,7 @@ ENTRY (____longjmp_chk)
/* TODO: need locking? */
/* struct hurd_sigstate * _hurd_self_sigstate (void) */
- call _hurd_self_sigstate
+ call HIDDEN_JUMPTARGET(_hurd_self_sigstate)
/* TODO: %eax and %eax->sigaltstack are always valid? */
testl $SS_ONSTACK, (HURD_SIGSTATE__SIGALTSTACK__OFFSET + SIGALTSTACK__SS_FLAGS__OFFSET)(%eax)
diff --git a/sysdeps/mach/hurd/i386/bits/sigcontext.h b/sysdeps/mach/hurd/i386/bits/sigcontext.h
index 6d15b039ef..f493bc9750 100644
--- a/sysdeps/mach/hurd/i386/bits/sigcontext.h
+++ b/sysdeps/mach/hurd/i386/bits/sigcontext.h
@@ -1,5 +1,5 @@
/* Machine-dependent signal context structure for GNU Hurd. i386 version.
- Copyright (C) 1991-2016 Free Software Foundation, Inc.
+ Copyright (C) 1991-2018 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
@@ -16,15 +16,17 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#ifndef _BITS_SIGCONTEXT_H
+#define _BITS_SIGCONTEXT_H 1
+
#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
#endif
-#ifndef sc_pc
-
/* Signal handlers are actually called:
void handler (int sig, int code, struct sigcontext *scp); */
+#include <bits/types/__sigset_t.h>
#include <mach/machine/fp_reg.h>
/* State of this thread when the signal was taken. */
@@ -116,4 +118,4 @@ struct sigcontext
#define DBG_SINGLE_TRAP 0x1 /* single step */
#define DBG_BRKPNT_FAULT 0x2 /* breakpoint instruction */
-#endif /* sc_pc */
+#endif /* bits/sigcontext.h */
diff --git a/sysdeps/mach/hurd/i386/c++-types.data b/sysdeps/mach/hurd/i386/c++-types.data
new file mode 100644
index 0000000000..4cde3ca667
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/c++-types.data
@@ -0,0 +1,67 @@
+blkcnt64_t:x
+blkcnt_t:l
+blksize_t:l
+caddr_t:Pc
+clockid_t:i
+clock_t:l
+daddr_t:i
+dev_t:j
+fd_mask:l
+fsblkcnt64_t:y
+fsblkcnt_t:m
+fsfilcnt64_t:y
+fsfilcnt_t:m
+fsid_t:y
+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:14__pthread_attr
+pthread_barrier_t:17__pthread_barrier
+pthread_barrierattr_t:21__pthread_barrierattr
+pthread_cond_t:14__pthread_cond
+pthread_condattr_t:18__pthread_condattr
+pthread_key_t:i
+pthread_mutex_t:15__pthread_mutex
+pthread_mutexattr_t:19__pthread_mutexattr
+pthread_once_t:14__pthread_once
+pthread_rwlock_t:16__pthread_rwlock
+pthread_rwlockattr_t:20__pthread_rwlockattr
+pthread_spinlock_t:i
+pthread_t:i
+quad_t:x
+register_t:i
+rlim64_t:y
+rlim_t:m
+sigset_t:m
+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/mach/hurd/i386/exc2signal.c b/sysdeps/mach/hurd/i386/exc2signal.c
index bf0ca2e367..57bc05df99 100644
--- a/sysdeps/mach/hurd/i386/exc2signal.c
+++ b/sysdeps/mach/hurd/i386/exc2signal.c
@@ -1,5 +1,5 @@
/* Translate Mach exception codes into signal numbers. i386 version.
- Copyright (C) 1991-2016 Free Software Foundation, Inc.
+ Copyright (C) 1991-2018 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
@@ -163,3 +163,4 @@ _hurd_exception2signal (struct hurd_signal_detail *detail, int *signo)
break;
}
}
+libc_hidden_def (_hurd_exception2signal)
diff --git a/sysdeps/mach/hurd/i386/htl/Implies b/sysdeps/mach/hurd/i386/htl/Implies
new file mode 100644
index 0000000000..7a0f99d772
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/htl/Implies
@@ -0,0 +1,2 @@
+mach/hurd/htl
+i386/htl
diff --git a/sysdeps/mach/hurd/i386/htl/pt-machdep.c b/sysdeps/mach/hurd/i386/htl/pt-machdep.c
new file mode 100644
index 0000000000..2e35a095ab
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/htl/pt-machdep.c
@@ -0,0 +1,82 @@
+/* Machine dependent pthreads code. Hurd/i386 version.
+ Copyright (C) 2000-2018 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 <mach.h>
+#include <mach/i386/thread_status.h>
+#include <mach/i386/mach_i386.h>
+#include <mach/mig_errors.h>
+#include <mach/thread_status.h>
+
+#define HURD_TLS_DESC_DECL(desc, tcb) \
+ struct descriptor desc = \
+ { /* low word: */ \
+ 0xffff /* limit 0..15 */ \
+ | (((unsigned int) (tcb)) << 16) /* base 0..15 */ \
+ , /* high word: */ \
+ ((((unsigned int) (tcb)) >> 16) & 0xff) /* base 16..23 */ \
+ | ((0x12 | 0x60 | 0x80) << 8) /* access = ACC_DATA_W|ACC_PL_U|ACC_P */ \
+ | (0xf << 16) /* limit 16..19 */ \
+ | ((4 | 8) << 20) /* granularity = SZ_32|SZ_G */ \
+ | (((unsigned int) (tcb)) & 0xff000000) /* base 24..31 */ \
+ }
+
+int
+__thread_set_pcsptp (thread_t thread,
+ int set_ip, void *ip,
+ int set_sp, void *sp,
+ int set_tp, void *tp)
+{
+ error_t err;
+ struct i386_thread_state state;
+ mach_msg_type_number_t state_count;
+
+ state_count = i386_THREAD_STATE_COUNT;
+
+ err = __thread_get_state (thread, i386_REGS_SEGS_STATE,
+ (thread_state_t) &state, &state_count);
+ if (err)
+ return err;
+
+ if (set_sp)
+ state.uesp = (unsigned int) sp;
+ if (set_ip)
+ state.eip = (unsigned int) ip;
+ if (set_tp)
+ {
+ HURD_TLS_DESC_DECL (desc, tp);
+ int sel;
+
+ asm ("mov %%gs, %w0": "=q" (sel):"0" (0));
+ if (__builtin_expect (sel, 0x48) & 4) /* LDT selector */
+ err = __i386_set_ldt (thread, sel, &desc, 1);
+ else
+ err = __i386_set_gdt (thread, &sel, desc);
+ if (err)
+ return err;
+ state.gs = sel;
+ }
+
+ err = __thread_set_state (thread, i386_REGS_SEGS_STATE,
+ (thread_state_t) &state, i386_THREAD_STATE_COUNT);
+ if (err)
+ return err;
+
+ return 0;
+}
diff --git a/sysdeps/mach/hurd/i386/htl/pt-setup.c b/sysdeps/mach/hurd/i386/htl/pt-setup.c
new file mode 100644
index 0000000000..e10d38a842
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/htl/pt-setup.c
@@ -0,0 +1,110 @@
+/* Setup thread stack. Hurd/i386 version.
+ Copyright (C) 2000-2018 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>
+#include <assert.h>
+#include <mach.h>
+
+#include <pt-internal.h>
+
+/* The stack layout used on the i386 is:
+
+ -----------------
+ | ARG |
+ -----------------
+ | START_ROUTINE |
+ -----------------
+ | 0 |
+ -----------------
+ */
+
+/* Set up the stack for THREAD, such that it appears as if
+ START_ROUTINE and ARG were passed to the new thread's entry-point.
+ Return the stack pointer for the new thread. */
+static void *
+stack_setup (struct __pthread *thread,
+ void *(*start_routine) (void *), void *arg)
+{
+ error_t err;
+ uintptr_t *bottom, *top;
+
+ /* Calculate the top of the new stack. */
+ bottom = thread->stackaddr;
+ top = (uintptr_t *) ((uintptr_t) bottom + thread->stacksize
+ + ((thread->guardsize + __vm_page_size - 1)
+ / __vm_page_size) * __vm_page_size);
+
+ if (start_routine != NULL)
+ {
+ /* And then the call frame. */
+ top -= 3;
+ top = (uintptr_t *) ((uintptr_t) top & ~0xf);
+ top[2] = (uintptr_t) arg; /* Argument to START_ROUTINE. */
+ top[1] = (uintptr_t) start_routine;
+ top[0] = (uintptr_t) thread;
+ *--top = 0; /* Fake return address. */
+ }
+
+ if (thread->guardsize)
+ {
+ err = __vm_protect (__mach_task_self (), (vm_address_t) bottom,
+ thread->guardsize, 0, 0);
+ assert_perror (err);
+ }
+
+ return top;
+}
+
+int
+__pthread_setup (struct __pthread *thread,
+ void (*entry_point) (struct __pthread *, void *(*)(void *),
+ void *), void *(*start_routine) (void *),
+ void *arg)
+{
+ tcbhead_t *tcb;
+ error_t err;
+ mach_port_t ktid;
+
+ thread->mcontext.pc = entry_point;
+ thread->mcontext.sp = stack_setup (thread, start_routine, arg);
+
+ ktid = __mach_thread_self ();
+ if (thread->kernel_thread == ktid)
+ /* Fix up the TCB for the main thread. The C library has already
+ installed a TCB, which we want to keep using. This TCB must not
+ be freed so don't register it in the thread structure. On the
+ other hand, it's not yet possible to reliably release a TCB.
+ Leave the unused one registered so that it doesn't leak. The
+ only thing left to do is to correctly set the `self' member in
+ the already existing TCB. */
+ tcb = THREAD_SELF;
+ else
+ {
+ err = __thread_set_pcsptp (thread->kernel_thread,
+ 1, thread->mcontext.pc,
+ 1, thread->mcontext.sp,
+ 1, thread->tcb);
+ assert_perror (err);
+ tcb = thread->tcb;
+ }
+ __mach_port_deallocate (__mach_task_self (), ktid);
+
+ tcb->self = thread->kernel_thread;
+
+ return 0;
+}
diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c
index 5252f7f214..f8ad2ceb8e 100644
--- a/sysdeps/mach/hurd/i386/init-first.c
+++ b/sysdeps/mach/hurd/i386/init-first.c
@@ -1,5 +1,5 @@
/* Initialization code run first thing by the ELF startup code. For i386/Hurd.
- Copyright (C) 1995-2016 Free Software Foundation, Inc.
+ Copyright (C) 1995-2018 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
@@ -33,12 +33,8 @@
extern void __mach_init (void);
extern void __init_misc (int, char **, char **);
-#ifdef USE_NONOPTION_FLAGS
-extern void __getopt_clean_environment (char **);
-#endif
extern void __libc_global_ctors (void);
-unsigned int __hurd_threadvar_max;
unsigned long int __hurd_threadvar_stack_offset;
unsigned long int __hurd_threadvar_stack_mask;
@@ -88,11 +84,6 @@ posixland_init (int argc, char **argv, char **envp)
#endif
__init_misc (argc, argv, envp);
-#ifdef USE_NONOPTION_FLAGS
- /* This is a hack to make the special getopt in GNU libc working. */
- __getopt_clean_environment (envp);
-#endif
-
/* Initialize ctype data. */
__ctype_init ();
@@ -113,10 +104,12 @@ init1 (int argc, char *arg0, ...)
++envp;
d = (void *) ++envp;
- /* If we are the bootstrap task started by the kernel,
- then after the environment pointers there is no Hurd
- data block; the argument strings start there. */
+ /* Initialize libpthread if linked in. */
+ if (__pthread_initialize_minimal != NULL)
+ __pthread_initialize_minimal ();
+
if ((void *) d == argv[0])
+ /* No Hurd data block to process. */
return;
#ifndef SHARED
@@ -171,21 +164,21 @@ init (int *data)
/* If we are the bootstrap task started by the kernel,
then after the environment pointers there is no Hurd
data block; the argument strings start there. */
- if ((void *) d == argv[0])
+ if ((void *) d == argv[0] || d->phdr == 0)
{
/* With a new enough linker (binutils-2.23 or better),
- the magic __ehdr_start symbol will be available and
- __libc_start_main will have done this that way already. */
+ the magic __ehdr_start symbol will be available and
+ __libc_start_main will have done this that way already. */
if (_dl_phdr == NULL)
{
- /* We may need to see our own phdrs, e.g. for TLS setup.
- Try the usual kludge to find the headers without help from
- the exec server. */
- extern const void __executable_start;
- const ElfW(Ehdr) *const ehdr = &__executable_start;
- _dl_phdr = (const void *) ehdr + ehdr->e_phoff;
- _dl_phnum = ehdr->e_phnum;
- assert (ehdr->e_phentsize == sizeof (ElfW(Phdr)));
+ /* We may need to see our own phdrs, e.g. for TLS setup.
+ Try the usual kludge to find the headers without help from
+ the exec server. */
+ extern const void __executable_start;
+ const ElfW(Ehdr) *const ehdr = &__executable_start;
+ _dl_phdr = (const void *) ehdr + ehdr->e_phoff;
+ _dl_phnum = ehdr->e_phnum;
+ assert (ehdr->e_phentsize == sizeof (ElfW(Phdr)));
}
}
else
@@ -195,13 +188,10 @@ init (int *data)
assert (d->phdrsz % sizeof (ElfW(Phdr)) == 0);
}
- /* We need to setup TLS before starting the signal thread. */
- extern void __pthread_initialize_minimal (void);
- if (__pthread_initialize_minimal != NULL)
- __pthread_initialize_minimal ();
+ /* We need to setup TLS before initializing libpthread. */
+ __libc_setup_tls ();
#endif
-
/* After possibly switching stacks, call `init1' (above) with the user
code as the return address, and the argument data immediately above
that on the stack. */
diff --git a/sysdeps/mach/hurd/i386/intr-msg.h b/sysdeps/mach/hurd/i386/intr-msg.h
index d60cb197d6..64f05f8c4e 100644
--- a/sysdeps/mach/hurd/i386/intr-msg.h
+++ b/sysdeps/mach/hurd/i386/intr-msg.h
@@ -1,5 +1,5 @@
/* Machine-dependent details of interruptible RPC messaging. i386 version.
- Copyright (C) 1995-2016 Free Software Foundation, Inc.
+ Copyright (C) 1995-2018 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
diff --git a/sysdeps/mach/hurd/i386/ioperm.c b/sysdeps/mach/hurd/i386/ioperm.c
index d89a6bf79d..6f22a88490 100644
--- a/sysdeps/mach/hurd/i386/ioperm.c
+++ b/sysdeps/mach/hurd/i386/ioperm.c
@@ -1,5 +1,5 @@
/* Access to hardware i/o ports. Hurd/x86 version.
- Copyright (C) 2002-2016 Free Software Foundation, Inc.
+ Copyright (C) 2002-2018 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
diff --git a/sysdeps/mach/hurd/i386/jmp_buf-macros.h b/sysdeps/mach/hurd/i386/jmp_buf-macros.h
new file mode 100644
index 0000000000..834f5fb243
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/jmp_buf-macros.h
@@ -0,0 +1,6 @@
+#define JMP_BUF_SIZE 32
+#define SIGJMP_BUF_SIZE 32
+#define JMP_BUF_ALIGN 4
+#define SIGJMP_BUF_ALIGN 4
+#define MASK_WAS_SAVED_OFFSET 24
+#define SAVED_MASK_OFFSET 28
diff --git a/sysdeps/mach/hurd/i386/ld.abilist b/sysdeps/mach/hurd/i386/ld.abilist
new file mode 100644
index 0000000000..c76b913486
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/ld.abilist
@@ -0,0 +1,25 @@
+GLIBC_2.2.6 __close F
+GLIBC_2.2.6 __errno_location F
+GLIBC_2.2.6 __fxstat64 F
+GLIBC_2.2.6 __getpid F
+GLIBC_2.2.6 __libc_stack_end D 0x4
+GLIBC_2.2.6 __mmap F
+GLIBC_2.2.6 __open F
+GLIBC_2.2.6 __open64 F
+GLIBC_2.2.6 __read F
+GLIBC_2.2.6 __sbrk F
+GLIBC_2.2.6 __strtoul_internal F
+GLIBC_2.2.6 __write F
+GLIBC_2.2.6 __writev F
+GLIBC_2.2.6 __xstat64 F
+GLIBC_2.2.6 _dl_mcount F
+GLIBC_2.2.6 _hurd_intr_rpc_mach_msg F
+GLIBC_2.2.6 _r_debug D 0x14
+GLIBC_2.2.6 abort F
+GLIBC_2.2.6 calloc F
+GLIBC_2.2.6 free F
+GLIBC_2.2.6 malloc F
+GLIBC_2.2.6 realloc F
+GLIBC_2.3 ___tls_get_addr F
+GLIBC_2.3 __tls_get_addr F
+GLIBC_2.4 __stack_chk_guard D 0x4
diff --git a/sysdeps/mach/hurd/i386/libBrokenLocale.abilist b/sysdeps/mach/hurd/i386/libBrokenLocale.abilist
new file mode 100644
index 0000000000..a0f854c7f8
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libBrokenLocale.abilist
@@ -0,0 +1 @@
+GLIBC_2.2.6 __ctype_get_mb_cur_max F
diff --git a/sysdeps/mach/hurd/i386/libanl.abilist b/sysdeps/mach/hurd/i386/libanl.abilist
new file mode 100644
index 0000000000..123013b2ce
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libanl.abilist
@@ -0,0 +1,4 @@
+GLIBC_2.2.6 gai_cancel F
+GLIBC_2.2.6 gai_error F
+GLIBC_2.2.6 gai_suspend F
+GLIBC_2.2.6 getaddrinfo_a F
diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist
new file mode 100644
index 0000000000..e3fc05137b
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libc.abilist
@@ -0,0 +1,2306 @@
+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 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 __longjmp_chk F
+GLIBC_2.11 execvpe F
+GLIBC_2.11 mkostemps F
+GLIBC_2.11 mkostemps64 F
+GLIBC_2.11 mkstemps F
+GLIBC_2.11 mkstemps64 F
+GLIBC_2.13 __fentry__ F
+GLIBC_2.14 syncfs F
+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 scandirat F
+GLIBC_2.15 scandirat64 F
+GLIBC_2.16 __getauxval F
+GLIBC_2.16 __poll_chk F
+GLIBC_2.16 __ppoll_chk F
+GLIBC_2.16 aligned_alloc F
+GLIBC_2.16 c16rtomb F
+GLIBC_2.16 c32rtomb F
+GLIBC_2.16 getauxval F
+GLIBC_2.16 mbrtoc16 F
+GLIBC_2.16 mbrtoc32 F
+GLIBC_2.16 timespec_get F
+GLIBC_2.17 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 recvmmsg F
+GLIBC_2.17 secure_getenv F
+GLIBC_2.17 sendmmsg F
+GLIBC_2.18 __cxa_thread_atexit_impl F
+GLIBC_2.2.6 _Exit F
+GLIBC_2.2.6 _IO_2_1_stderr_ D 0x98
+GLIBC_2.2.6 _IO_2_1_stdin_ D 0x98
+GLIBC_2.2.6 _IO_2_1_stdout_ D 0x98
+GLIBC_2.2.6 _IO_adjust_column F
+GLIBC_2.2.6 _IO_adjust_wcolumn F
+GLIBC_2.2.6 _IO_default_doallocate F
+GLIBC_2.2.6 _IO_default_finish F
+GLIBC_2.2.6 _IO_default_pbackfail F
+GLIBC_2.2.6 _IO_default_uflow F
+GLIBC_2.2.6 _IO_default_xsgetn F
+GLIBC_2.2.6 _IO_default_xsputn F
+GLIBC_2.2.6 _IO_do_write F
+GLIBC_2.2.6 _IO_doallocbuf F
+GLIBC_2.2.6 _IO_fclose F
+GLIBC_2.2.6 _IO_fdopen F
+GLIBC_2.2.6 _IO_feof F
+GLIBC_2.2.6 _IO_ferror F
+GLIBC_2.2.6 _IO_fflush F
+GLIBC_2.2.6 _IO_fgetpos F
+GLIBC_2.2.6 _IO_fgetpos64 F
+GLIBC_2.2.6 _IO_fgets F
+GLIBC_2.2.6 _IO_file_attach F
+GLIBC_2.2.6 _IO_file_close F
+GLIBC_2.2.6 _IO_file_close_it F
+GLIBC_2.2.6 _IO_file_doallocate F
+GLIBC_2.2.6 _IO_file_finish F
+GLIBC_2.2.6 _IO_file_fopen F
+GLIBC_2.2.6 _IO_file_init F
+GLIBC_2.2.6 _IO_file_jumps D 0x54
+GLIBC_2.2.6 _IO_file_open F
+GLIBC_2.2.6 _IO_file_overflow F
+GLIBC_2.2.6 _IO_file_read F
+GLIBC_2.2.6 _IO_file_seek F
+GLIBC_2.2.6 _IO_file_seekoff F
+GLIBC_2.2.6 _IO_file_setbuf F
+GLIBC_2.2.6 _IO_file_stat F
+GLIBC_2.2.6 _IO_file_sync F
+GLIBC_2.2.6 _IO_file_underflow F
+GLIBC_2.2.6 _IO_file_write F
+GLIBC_2.2.6 _IO_file_xsputn F
+GLIBC_2.2.6 _IO_flockfile F
+GLIBC_2.2.6 _IO_flush_all F
+GLIBC_2.2.6 _IO_flush_all_linebuffered F
+GLIBC_2.2.6 _IO_fopen F
+GLIBC_2.2.6 _IO_fprintf F
+GLIBC_2.2.6 _IO_fputs F
+GLIBC_2.2.6 _IO_fread F
+GLIBC_2.2.6 _IO_free_backup_area F
+GLIBC_2.2.6 _IO_free_wbackup_area F
+GLIBC_2.2.6 _IO_fsetpos F
+GLIBC_2.2.6 _IO_fsetpos64 F
+GLIBC_2.2.6 _IO_ftell F
+GLIBC_2.2.6 _IO_ftrylockfile F
+GLIBC_2.2.6 _IO_funlockfile F
+GLIBC_2.2.6 _IO_fwrite F
+GLIBC_2.2.6 _IO_getc F
+GLIBC_2.2.6 _IO_getline F
+GLIBC_2.2.6 _IO_getline_info F
+GLIBC_2.2.6 _IO_gets F
+GLIBC_2.2.6 _IO_init F
+GLIBC_2.2.6 _IO_init_marker F
+GLIBC_2.2.6 _IO_init_wmarker F
+GLIBC_2.2.6 _IO_iter_begin F
+GLIBC_2.2.6 _IO_iter_end F
+GLIBC_2.2.6 _IO_iter_file F
+GLIBC_2.2.6 _IO_iter_next F
+GLIBC_2.2.6 _IO_least_wmarker F
+GLIBC_2.2.6 _IO_link_in F
+GLIBC_2.2.6 _IO_list_all D 0x4
+GLIBC_2.2.6 _IO_list_lock F
+GLIBC_2.2.6 _IO_list_resetlock F
+GLIBC_2.2.6 _IO_list_unlock F
+GLIBC_2.2.6 _IO_marker_delta F
+GLIBC_2.2.6 _IO_marker_difference F
+GLIBC_2.2.6 _IO_padn F
+GLIBC_2.2.6 _IO_peekc_locked F
+GLIBC_2.2.6 _IO_popen F
+GLIBC_2.2.6 _IO_printf F
+GLIBC_2.2.6 _IO_proc_close F
+GLIBC_2.2.6 _IO_proc_open F
+GLIBC_2.2.6 _IO_putc F
+GLIBC_2.2.6 _IO_puts F
+GLIBC_2.2.6 _IO_remove_marker F
+GLIBC_2.2.6 _IO_seekmark F
+GLIBC_2.2.6 _IO_seekoff F
+GLIBC_2.2.6 _IO_seekpos F
+GLIBC_2.2.6 _IO_seekwmark F
+GLIBC_2.2.6 _IO_setb F
+GLIBC_2.2.6 _IO_setbuffer F
+GLIBC_2.2.6 _IO_setvbuf F
+GLIBC_2.2.6 _IO_sgetn F
+GLIBC_2.2.6 _IO_sprintf F
+GLIBC_2.2.6 _IO_sputbackc F
+GLIBC_2.2.6 _IO_sputbackwc F
+GLIBC_2.2.6 _IO_sscanf F
+GLIBC_2.2.6 _IO_str_init_readonly F
+GLIBC_2.2.6 _IO_str_init_static F
+GLIBC_2.2.6 _IO_str_overflow F
+GLIBC_2.2.6 _IO_str_pbackfail F
+GLIBC_2.2.6 _IO_str_seekoff F
+GLIBC_2.2.6 _IO_str_underflow F
+GLIBC_2.2.6 _IO_sungetc F
+GLIBC_2.2.6 _IO_sungetwc F
+GLIBC_2.2.6 _IO_switch_to_get_mode F
+GLIBC_2.2.6 _IO_switch_to_main_wget_area F
+GLIBC_2.2.6 _IO_switch_to_wbackup_area F
+GLIBC_2.2.6 _IO_switch_to_wget_mode F
+GLIBC_2.2.6 _IO_un_link F
+GLIBC_2.2.6 _IO_ungetc F
+GLIBC_2.2.6 _IO_unsave_markers F
+GLIBC_2.2.6 _IO_unsave_wmarkers F
+GLIBC_2.2.6 _IO_vfprintf F
+GLIBC_2.2.6 _IO_vfscanf F
+GLIBC_2.2.6 _IO_vsprintf F
+GLIBC_2.2.6 _IO_wdefault_doallocate F
+GLIBC_2.2.6 _IO_wdefault_finish F
+GLIBC_2.2.6 _IO_wdefault_pbackfail F
+GLIBC_2.2.6 _IO_wdefault_uflow F
+GLIBC_2.2.6 _IO_wdefault_xsgetn F
+GLIBC_2.2.6 _IO_wdefault_xsputn F
+GLIBC_2.2.6 _IO_wdo_write F
+GLIBC_2.2.6 _IO_wdoallocbuf F
+GLIBC_2.2.6 _IO_wfile_jumps D 0x54
+GLIBC_2.2.6 _IO_wfile_overflow F
+GLIBC_2.2.6 _IO_wfile_seekoff F
+GLIBC_2.2.6 _IO_wfile_sync F
+GLIBC_2.2.6 _IO_wfile_underflow F
+GLIBC_2.2.6 _IO_wfile_xsputn F
+GLIBC_2.2.6 _IO_wmarker_delta F
+GLIBC_2.2.6 _IO_wsetb F
+GLIBC_2.2.6 _S_catch_exception_raise F
+GLIBC_2.2.6 _S_msg_add_auth F
+GLIBC_2.2.6 _S_msg_del_auth F
+GLIBC_2.2.6 _S_msg_describe_ports F
+GLIBC_2.2.6 _S_msg_get_dtable F
+GLIBC_2.2.6 _S_msg_get_env_variable F
+GLIBC_2.2.6 _S_msg_get_environment F
+GLIBC_2.2.6 _S_msg_get_fd F
+GLIBC_2.2.6 _S_msg_get_init_int F
+GLIBC_2.2.6 _S_msg_get_init_ints F
+GLIBC_2.2.6 _S_msg_get_init_port F
+GLIBC_2.2.6 _S_msg_get_init_ports F
+GLIBC_2.2.6 _S_msg_proc_newids F
+GLIBC_2.2.6 _S_msg_report_wait F
+GLIBC_2.2.6 _S_msg_set_dtable F
+GLIBC_2.2.6 _S_msg_set_env_variable F
+GLIBC_2.2.6 _S_msg_set_environment F
+GLIBC_2.2.6 _S_msg_set_fd F
+GLIBC_2.2.6 _S_msg_set_init_int F
+GLIBC_2.2.6 _S_msg_set_init_ints F
+GLIBC_2.2.6 _S_msg_set_init_port F
+GLIBC_2.2.6 _S_msg_set_init_ports F
+GLIBC_2.2.6 _S_msg_sig_post F
+GLIBC_2.2.6 _S_msg_sig_post_untraced F
+GLIBC_2.2.6 ___brk_addr D 0x4
+GLIBC_2.2.6 __after_morecore_hook D 0x4
+GLIBC_2.2.6 __argz_count F
+GLIBC_2.2.6 __argz_next F
+GLIBC_2.2.6 __argz_stringify F
+GLIBC_2.2.6 __asprintf F
+GLIBC_2.2.6 __assert F
+GLIBC_2.2.6 __assert_fail F
+GLIBC_2.2.6 __assert_perror_fail F
+GLIBC_2.2.6 __backtrace F
+GLIBC_2.2.6 __backtrace_symbols F
+GLIBC_2.2.6 __backtrace_symbols_fd F
+GLIBC_2.2.6 __bsd_getpgrp F
+GLIBC_2.2.6 __bzero F
+GLIBC_2.2.6 __check_rhosts_file D 0x4
+GLIBC_2.2.6 __close F
+GLIBC_2.2.6 __cmsg_nxthdr F
+GLIBC_2.2.6 __connect F
+GLIBC_2.2.6 __ctype32_b D 0x4
+GLIBC_2.2.6 __ctype32_tolower D 0x4
+GLIBC_2.2.6 __ctype32_toupper D 0x4
+GLIBC_2.2.6 __ctype_b D 0x4
+GLIBC_2.2.6 __ctype_get_mb_cur_max F
+GLIBC_2.2.6 __ctype_tolower D 0x4
+GLIBC_2.2.6 __ctype_toupper D 0x4
+GLIBC_2.2.6 __cxa_atexit F
+GLIBC_2.2.6 __cxa_finalize F
+GLIBC_2.2.6 __cyg_profile_func_enter F
+GLIBC_2.2.6 __cyg_profile_func_exit F
+GLIBC_2.2.6 __daylight D 0x4
+GLIBC_2.2.6 __dcgettext F
+GLIBC_2.2.6 __default_morecore F
+GLIBC_2.2.6 __dgettext F
+GLIBC_2.2.6 __divdi3 F
+GLIBC_2.2.6 __dup2 F
+GLIBC_2.2.6 __duplocale F
+GLIBC_2.2.6 __environ D 0x4
+GLIBC_2.2.6 __errno_location F
+GLIBC_2.2.6 __fbufsize F
+GLIBC_2.2.6 __fcntl F
+GLIBC_2.2.6 __ffs F
+GLIBC_2.2.6 __finite F
+GLIBC_2.2.6 __finitef F
+GLIBC_2.2.6 __finitel F
+GLIBC_2.2.6 __flbf F
+GLIBC_2.2.6 __fork F
+GLIBC_2.2.6 __fpending F
+GLIBC_2.2.6 __fpu_control D 0x2
+GLIBC_2.2.6 __fpurge F
+GLIBC_2.2.6 __freadable F
+GLIBC_2.2.6 __freading F
+GLIBC_2.2.6 __free_hook D 0x4
+GLIBC_2.2.6 __freelocale F
+GLIBC_2.2.6 __fsetlocking F
+GLIBC_2.2.6 __fwritable F
+GLIBC_2.2.6 __fwriting F
+GLIBC_2.2.6 __fxstat F
+GLIBC_2.2.6 __fxstat64 F
+GLIBC_2.2.6 __getdelim F
+GLIBC_2.2.6 __getpagesize F
+GLIBC_2.2.6 __getpgid F
+GLIBC_2.2.6 __getpid F
+GLIBC_2.2.6 __gettimeofday F
+GLIBC_2.2.6 __gmtime_r F
+GLIBC_2.2.6 __h_errno_location F
+GLIBC_2.2.6 __hurd_fail F
+GLIBC_2.2.6 __hurd_threadvar_stack_mask D 0x4
+GLIBC_2.2.6 __hurd_threadvar_stack_offset D 0x4
+GLIBC_2.2.6 __isalnum_l F
+GLIBC_2.2.6 __isalpha_l F
+GLIBC_2.2.6 __isascii_l F
+GLIBC_2.2.6 __isblank_l F
+GLIBC_2.2.6 __iscntrl_l F
+GLIBC_2.2.6 __isdigit_l F
+GLIBC_2.2.6 __isgraph_l F
+GLIBC_2.2.6 __isinf F
+GLIBC_2.2.6 __isinff F
+GLIBC_2.2.6 __isinfl F
+GLIBC_2.2.6 __islower_l F
+GLIBC_2.2.6 __isnan F
+GLIBC_2.2.6 __isnanf F
+GLIBC_2.2.6 __isnanl F
+GLIBC_2.2.6 __isprint_l F
+GLIBC_2.2.6 __ispunct_l F
+GLIBC_2.2.6 __isspace_l F
+GLIBC_2.2.6 __isupper_l F
+GLIBC_2.2.6 __iswalnum_l F
+GLIBC_2.2.6 __iswalpha_l F
+GLIBC_2.2.6 __iswblank_l F
+GLIBC_2.2.6 __iswcntrl_l F
+GLIBC_2.2.6 __iswctype F
+GLIBC_2.2.6 __iswctype_l F
+GLIBC_2.2.6 __iswdigit_l F
+GLIBC_2.2.6 __iswgraph_l F
+GLIBC_2.2.6 __iswlower_l F
+GLIBC_2.2.6 __iswprint_l F
+GLIBC_2.2.6 __iswpunct_l F
+GLIBC_2.2.6 __iswspace_l F
+GLIBC_2.2.6 __iswupper_l F
+GLIBC_2.2.6 __iswxdigit_l F
+GLIBC_2.2.6 __isxdigit_l F
+GLIBC_2.2.6 __ivaliduser F
+GLIBC_2.2.6 __key_decryptsession_pk_LOCAL D 0x4
+GLIBC_2.2.6 __key_encryptsession_pk_LOCAL D 0x4
+GLIBC_2.2.6 __key_gendes_LOCAL D 0x4
+GLIBC_2.2.6 __libc_allocate_rtsig F
+GLIBC_2.2.6 __libc_calloc F
+GLIBC_2.2.6 __libc_current_sigrtmax F
+GLIBC_2.2.6 __libc_current_sigrtmin F
+GLIBC_2.2.6 __libc_free F
+GLIBC_2.2.6 __libc_freeres F
+GLIBC_2.2.6 __libc_init_first F
+GLIBC_2.2.6 __libc_mallinfo F
+GLIBC_2.2.6 __libc_malloc F
+GLIBC_2.2.6 __libc_mallopt F
+GLIBC_2.2.6 __libc_memalign F
+GLIBC_2.2.6 __libc_pvalloc F
+GLIBC_2.2.6 __libc_realloc F
+GLIBC_2.2.6 __libc_start_main F
+GLIBC_2.2.6 __libc_valloc F
+GLIBC_2.2.6 __lseek F
+GLIBC_2.2.6 __lxstat F
+GLIBC_2.2.6 __lxstat64 F
+GLIBC_2.2.6 __mach_msg F
+GLIBC_2.2.6 __mach_msg_destroy F
+GLIBC_2.2.6 __mach_port_allocate F
+GLIBC_2.2.6 __mach_port_deallocate F
+GLIBC_2.2.6 __mach_port_insert_right F
+GLIBC_2.2.6 __mach_reply_port F
+GLIBC_2.2.6 __mach_task_self_ D 0x4
+GLIBC_2.2.6 __mach_thread_self F
+GLIBC_2.2.6 __malloc_hook D 0x4
+GLIBC_2.2.6 __malloc_initialize_hook D 0x4
+GLIBC_2.2.6 __mbrlen F
+GLIBC_2.2.6 __mbrtowc F
+GLIBC_2.2.6 __memalign_hook D 0x4
+GLIBC_2.2.6 __memcpy_by2 F
+GLIBC_2.2.6 __memcpy_by4 F
+GLIBC_2.2.6 __memcpy_c F
+GLIBC_2.2.6 __memcpy_g F
+GLIBC_2.2.6 __mempcpy F
+GLIBC_2.2.6 __mempcpy_by2 F
+GLIBC_2.2.6 __mempcpy_by4 F
+GLIBC_2.2.6 __mempcpy_byn F
+GLIBC_2.2.6 __mempcpy_small F
+GLIBC_2.2.6 __memset_cc F
+GLIBC_2.2.6 __memset_ccn_by2 F
+GLIBC_2.2.6 __memset_ccn_by4 F
+GLIBC_2.2.6 __memset_cg F
+GLIBC_2.2.6 __memset_gcn_by2 F
+GLIBC_2.2.6 __memset_gcn_by4 F
+GLIBC_2.2.6 __memset_gg F
+GLIBC_2.2.6 __mig_allocate F
+GLIBC_2.2.6 __mig_dealloc_reply_port F
+GLIBC_2.2.6 __mig_deallocate F
+GLIBC_2.2.6 __mig_get_reply_port F
+GLIBC_2.2.6 __mig_init F
+GLIBC_2.2.6 __mig_put_reply_port F
+GLIBC_2.2.6 __mig_strncpy F
+GLIBC_2.2.6 __mmap F
+GLIBC_2.2.6 __moddi3 F
+GLIBC_2.2.6 __monstartup F
+GLIBC_2.2.6 __morecore D 0x4
+GLIBC_2.2.6 __nanosleep F
+GLIBC_2.2.6 __newlocale F
+GLIBC_2.2.6 __nl_langinfo_l F
+GLIBC_2.2.6 __nss_configure_lookup F
+GLIBC_2.2.6 __nss_database_lookup F
+GLIBC_2.2.6 __nss_group_lookup F
+GLIBC_2.2.6 __nss_hostname_digits_dots F
+GLIBC_2.2.6 __nss_hosts_lookup F
+GLIBC_2.2.6 __nss_next F
+GLIBC_2.2.6 __nss_passwd_lookup F
+GLIBC_2.2.6 __open F
+GLIBC_2.2.6 __open64 F
+GLIBC_2.2.6 __overflow F
+GLIBC_2.2.6 __pipe F
+GLIBC_2.2.6 __poll F
+GLIBC_2.2.6 __pread64 F
+GLIBC_2.2.6 __printf_fp F
+GLIBC_2.2.6 __profile_frequency F
+GLIBC_2.2.6 __progname D 0x4
+GLIBC_2.2.6 __progname_full D 0x4
+GLIBC_2.2.6 __pwrite64 F
+GLIBC_2.2.6 __rawmemchr F
+GLIBC_2.2.6 __rcmd_errstr D 0x4
+GLIBC_2.2.6 __read F
+GLIBC_2.2.6 __realloc_hook D 0x4
+GLIBC_2.2.6 __res_init F
+GLIBC_2.2.6 __res_nclose F
+GLIBC_2.2.6 __res_ninit F
+GLIBC_2.2.6 __res_randomid F
+GLIBC_2.2.6 __res_state F
+GLIBC_2.2.6 __rpc_thread_createerr F
+GLIBC_2.2.6 __rpc_thread_svc_fdset F
+GLIBC_2.2.6 __rpc_thread_svc_max_pollfd F
+GLIBC_2.2.6 __rpc_thread_svc_pollfd F
+GLIBC_2.2.6 __sbrk F
+GLIBC_2.2.6 __sched_get_priority_max F
+GLIBC_2.2.6 __sched_get_priority_min F
+GLIBC_2.2.6 __sched_getparam F
+GLIBC_2.2.6 __sched_getscheduler F
+GLIBC_2.2.6 __sched_setscheduler F
+GLIBC_2.2.6 __sched_yield F
+GLIBC_2.2.6 __secure_getenv F
+GLIBC_2.2.6 __select F
+GLIBC_2.2.6 __send F
+GLIBC_2.2.6 __setpgid F
+GLIBC_2.2.6 __sigaction F
+GLIBC_2.2.6 __sigaddset F
+GLIBC_2.2.6 __sigdelset F
+GLIBC_2.2.6 __sigismember F
+GLIBC_2.2.6 __signbit F
+GLIBC_2.2.6 __signbitf F
+GLIBC_2.2.6 __signbitl F
+GLIBC_2.2.6 __sigpause F
+GLIBC_2.2.6 __sigsetjmp F
+GLIBC_2.2.6 __sigsuspend F
+GLIBC_2.2.6 __stpcpy F
+GLIBC_2.2.6 __stpcpy_g F
+GLIBC_2.2.6 __stpcpy_small F
+GLIBC_2.2.6 __stpncpy F
+GLIBC_2.2.6 __strcasecmp F
+GLIBC_2.2.6 __strcasecmp_l F
+GLIBC_2.2.6 __strcasestr F
+GLIBC_2.2.6 __strcat_c F
+GLIBC_2.2.6 __strcat_g F
+GLIBC_2.2.6 __strchr_c F
+GLIBC_2.2.6 __strchr_g F
+GLIBC_2.2.6 __strchrnul_c F
+GLIBC_2.2.6 __strchrnul_g F
+GLIBC_2.2.6 __strcmp_gg F
+GLIBC_2.2.6 __strcoll_l F
+GLIBC_2.2.6 __strcpy_g F
+GLIBC_2.2.6 __strcpy_small F
+GLIBC_2.2.6 __strcspn_c1 F
+GLIBC_2.2.6 __strcspn_c2 F
+GLIBC_2.2.6 __strcspn_c3 F
+GLIBC_2.2.6 __strcspn_cg F
+GLIBC_2.2.6 __strcspn_g F
+GLIBC_2.2.6 __strdup F
+GLIBC_2.2.6 __strerror_r F
+GLIBC_2.2.6 __strfmon_l F
+GLIBC_2.2.6 __strlen_g F
+GLIBC_2.2.6 __strncasecmp_l F
+GLIBC_2.2.6 __strncat_g F
+GLIBC_2.2.6 __strncmp_g F
+GLIBC_2.2.6 __strncpy_by2 F
+GLIBC_2.2.6 __strncpy_by4 F
+GLIBC_2.2.6 __strncpy_byn F
+GLIBC_2.2.6 __strncpy_gg F
+GLIBC_2.2.6 __strndup F
+GLIBC_2.2.6 __strpbrk_c2 F
+GLIBC_2.2.6 __strpbrk_c3 F
+GLIBC_2.2.6 __strpbrk_cg F
+GLIBC_2.2.6 __strpbrk_g F
+GLIBC_2.2.6 __strrchr_c F
+GLIBC_2.2.6 __strrchr_g F
+GLIBC_2.2.6 __strsep_1c F
+GLIBC_2.2.6 __strsep_2c F
+GLIBC_2.2.6 __strsep_3c F
+GLIBC_2.2.6 __strsep_g F
+GLIBC_2.2.6 __strspn_c1 F
+GLIBC_2.2.6 __strspn_c2 F
+GLIBC_2.2.6 __strspn_c3 F
+GLIBC_2.2.6 __strspn_cg F
+GLIBC_2.2.6 __strspn_g F
+GLIBC_2.2.6 __strstr_cg F
+GLIBC_2.2.6 __strstr_g F
+GLIBC_2.2.6 __strtod_internal F
+GLIBC_2.2.6 __strtod_l F
+GLIBC_2.2.6 __strtof_internal F
+GLIBC_2.2.6 __strtof_l F
+GLIBC_2.2.6 __strtok_r F
+GLIBC_2.2.6 __strtok_r_1c F
+GLIBC_2.2.6 __strtol_internal F
+GLIBC_2.2.6 __strtol_l F
+GLIBC_2.2.6 __strtold_internal F
+GLIBC_2.2.6 __strtold_l F
+GLIBC_2.2.6 __strtoll_internal F
+GLIBC_2.2.6 __strtoll_l F
+GLIBC_2.2.6 __strtoul_internal F
+GLIBC_2.2.6 __strtoul_l F
+GLIBC_2.2.6 __strtoull_internal F
+GLIBC_2.2.6 __strtoull_l F
+GLIBC_2.2.6 __strverscmp F
+GLIBC_2.2.6 __strxfrm_l F
+GLIBC_2.2.6 __sysconf F
+GLIBC_2.2.6 __sysv_signal F
+GLIBC_2.2.6 __timezone D 0x4
+GLIBC_2.2.6 __toascii_l F
+GLIBC_2.2.6 __tolower_l F
+GLIBC_2.2.6 __toupper_l F
+GLIBC_2.2.6 __towctrans F
+GLIBC_2.2.6 __towctrans_l F
+GLIBC_2.2.6 __towlower_l F
+GLIBC_2.2.6 __towupper_l F
+GLIBC_2.2.6 __tzname D 0x8
+GLIBC_2.2.6 __udivdi3 F
+GLIBC_2.2.6 __uflow F
+GLIBC_2.2.6 __umoddi3 F
+GLIBC_2.2.6 __underflow F
+GLIBC_2.2.6 __vfork F
+GLIBC_2.2.6 __vfscanf F
+GLIBC_2.2.6 __vm_allocate F
+GLIBC_2.2.6 __vm_deallocate F
+GLIBC_2.2.6 __vm_page_size D 0x4
+GLIBC_2.2.6 __vsnprintf F
+GLIBC_2.2.6 __vsscanf F
+GLIBC_2.2.6 __wait F
+GLIBC_2.2.6 __waitpid F
+GLIBC_2.2.6 __wcscasecmp_l F
+GLIBC_2.2.6 __wcscoll_l F
+GLIBC_2.2.6 __wcsncasecmp_l F
+GLIBC_2.2.6 __wcstod_internal F
+GLIBC_2.2.6 __wcstod_l F
+GLIBC_2.2.6 __wcstof_internal F
+GLIBC_2.2.6 __wcstof_l F
+GLIBC_2.2.6 __wcstol_internal F
+GLIBC_2.2.6 __wcstol_l F
+GLIBC_2.2.6 __wcstold_internal F
+GLIBC_2.2.6 __wcstold_l F
+GLIBC_2.2.6 __wcstoll_internal F
+GLIBC_2.2.6 __wcstoll_l F
+GLIBC_2.2.6 __wcstoul_internal F
+GLIBC_2.2.6 __wcstoul_l F
+GLIBC_2.2.6 __wcstoull_internal F
+GLIBC_2.2.6 __wcstoull_l F
+GLIBC_2.2.6 __wcsxfrm_l F
+GLIBC_2.2.6 __wctrans_l F
+GLIBC_2.2.6 __wctype_l F
+GLIBC_2.2.6 __woverflow F
+GLIBC_2.2.6 __write F
+GLIBC_2.2.6 __writev F
+GLIBC_2.2.6 __wuflow F
+GLIBC_2.2.6 __wunderflow F
+GLIBC_2.2.6 __xmknod F
+GLIBC_2.2.6 __xpg_basename F
+GLIBC_2.2.6 __xpg_sigpause F
+GLIBC_2.2.6 __xstat F
+GLIBC_2.2.6 __xstat64 F
+GLIBC_2.2.6 _authenticate F
+GLIBC_2.2.6 _dl_mcount_wrapper F
+GLIBC_2.2.6 _dl_mcount_wrapper_check F
+GLIBC_2.2.6 _end GLIBC_2.2.6 g ? D .bss 00000000
+GLIBC_2.2.6 _environ D 0x4
+GLIBC_2.2.6 _exit F
+GLIBC_2.2.6 _flushlbf F
+GLIBC_2.2.6 _hurd_canonicalize_directory_name_internal F
+GLIBC_2.2.6 _hurd_critical_section_lock F
+GLIBC_2.2.6 _hurd_critical_section_unlock F
+GLIBC_2.2.6 _hurd_device_master D 0x4
+GLIBC_2.2.6 _hurd_dtable D 0x4
+GLIBC_2.2.6 _hurd_dtable_lock D 0x18
+GLIBC_2.2.6 _hurd_dtablesize D 0x4
+GLIBC_2.2.6 _hurd_exception2signal F
+GLIBC_2.2.6 _hurd_exec F
+GLIBC_2.2.6 _hurd_fd_get F
+GLIBC_2.2.6 _hurd_host_priv D 0x4
+GLIBC_2.2.6 _hurd_init F
+GLIBC_2.2.6 _hurd_intern_fd F
+GLIBC_2.2.6 _hurd_intr_rpc_mach_msg F
+GLIBC_2.2.6 _hurd_msgport D 0x4
+GLIBC_2.2.6 _hurd_port_cleanup F
+GLIBC_2.2.6 _hurd_port_free F
+GLIBC_2.2.6 _hurd_port_get F
+GLIBC_2.2.6 _hurd_port_init F
+GLIBC_2.2.6 _hurd_port_locked_get F
+GLIBC_2.2.6 _hurd_port_set F
+GLIBC_2.2.6 _hurd_ports D 0x4
+GLIBC_2.2.6 _hurd_ports_use F
+GLIBC_2.2.6 _hurd_proc_init F
+GLIBC_2.2.6 _hurd_raise_signal F
+GLIBC_2.2.6 _hurd_self_sigstate F
+GLIBC_2.2.6 _hurd_thread_sigstate F
+GLIBC_2.2.6 _hurdsig_fault_catch_exception_raise F
+GLIBC_2.2.6 _hurdsig_fault_env D 0x20
+GLIBC_2.2.6 _hurdsig_fault_preemptor D 0x18
+GLIBC_2.2.6 _hurdsig_interrupt_timeout D 0x4
+GLIBC_2.2.6 _libc_intl_domainname D 0x5
+GLIBC_2.2.6 _longjmp F
+GLIBC_2.2.6 _mcleanup F
+GLIBC_2.2.6 _mcount F
+GLIBC_2.2.6 _nl_default_dirname D 0xe
+GLIBC_2.2.6 _nl_domain_bindings D 0x4
+GLIBC_2.2.6 _nl_msg_cat_cntr D 0x4
+GLIBC_2.2.6 _null_auth D 0xc
+GLIBC_2.2.6 _obstack D 0x4
+GLIBC_2.2.6 _obstack_allocated_p F
+GLIBC_2.2.6 _obstack_begin F
+GLIBC_2.2.6 _obstack_begin_1 F
+GLIBC_2.2.6 _obstack_free F
+GLIBC_2.2.6 _obstack_memory_used F
+GLIBC_2.2.6 _obstack_newchunk F
+GLIBC_2.2.6 _res D 0x200
+GLIBC_2.2.6 _res_hconf D 0x30
+GLIBC_2.2.6 _rpc_dtablesize F
+GLIBC_2.2.6 _seterr_reply F
+GLIBC_2.2.6 _setjmp F
+GLIBC_2.2.6 _sys_siglist D 0x84
+GLIBC_2.2.6 _tolower F
+GLIBC_2.2.6 _toupper F
+GLIBC_2.2.6 a64l F
+GLIBC_2.2.6 abort F
+GLIBC_2.2.6 abs F
+GLIBC_2.2.6 accept F
+GLIBC_2.2.6 access F
+GLIBC_2.2.6 acct F
+GLIBC_2.2.6 addmntent F
+GLIBC_2.2.6 addseverity F
+GLIBC_2.2.6 adjtime F
+GLIBC_2.2.6 advance F
+GLIBC_2.2.6 alarm F
+GLIBC_2.2.6 alphasort F
+GLIBC_2.2.6 alphasort64 F
+GLIBC_2.2.6 argp_err_exit_status D 0x4
+GLIBC_2.2.6 argp_error F
+GLIBC_2.2.6 argp_failure F
+GLIBC_2.2.6 argp_help F
+GLIBC_2.2.6 argp_parse F
+GLIBC_2.2.6 argp_program_bug_address D 0x4
+GLIBC_2.2.6 argp_program_version D 0x4
+GLIBC_2.2.6 argp_program_version_hook D 0x4
+GLIBC_2.2.6 argp_state_help F
+GLIBC_2.2.6 argp_usage F
+GLIBC_2.2.6 argz_add F
+GLIBC_2.2.6 argz_add_sep F
+GLIBC_2.2.6 argz_append F
+GLIBC_2.2.6 argz_count F
+GLIBC_2.2.6 argz_create F
+GLIBC_2.2.6 argz_create_sep F
+GLIBC_2.2.6 argz_delete F
+GLIBC_2.2.6 argz_extract F
+GLIBC_2.2.6 argz_insert F
+GLIBC_2.2.6 argz_next F
+GLIBC_2.2.6 argz_replace F
+GLIBC_2.2.6 argz_stringify F
+GLIBC_2.2.6 asctime F
+GLIBC_2.2.6 asctime_r F
+GLIBC_2.2.6 asprintf F
+GLIBC_2.2.6 atof F
+GLIBC_2.2.6 atoi F
+GLIBC_2.2.6 atol F
+GLIBC_2.2.6 atoll F
+GLIBC_2.2.6 authdes_create F
+GLIBC_2.2.6 authdes_getucred F
+GLIBC_2.2.6 authdes_pk_create F
+GLIBC_2.2.6 authnone_create F
+GLIBC_2.2.6 authunix_create F
+GLIBC_2.2.6 authunix_create_default F
+GLIBC_2.2.6 backtrace F
+GLIBC_2.2.6 backtrace_symbols F
+GLIBC_2.2.6 backtrace_symbols_fd F
+GLIBC_2.2.6 basename F
+GLIBC_2.2.6 bcmp F
+GLIBC_2.2.6 bcopy F
+GLIBC_2.2.6 bind F
+GLIBC_2.2.6 bind_textdomain_codeset F
+GLIBC_2.2.6 bindresvport F
+GLIBC_2.2.6 bindtextdomain F
+GLIBC_2.2.6 brk F
+GLIBC_2.2.6 bsd_signal F
+GLIBC_2.2.6 bsearch F
+GLIBC_2.2.6 btowc F
+GLIBC_2.2.6 bzero F
+GLIBC_2.2.6 calloc F
+GLIBC_2.2.6 callrpc F
+GLIBC_2.2.6 canonicalize_file_name F
+GLIBC_2.2.6 catclose F
+GLIBC_2.2.6 catgets F
+GLIBC_2.2.6 catopen F
+GLIBC_2.2.6 cbc_crypt F
+GLIBC_2.2.6 cfgetispeed F
+GLIBC_2.2.6 cfgetospeed F
+GLIBC_2.2.6 cfmakeraw F
+GLIBC_2.2.6 cfree F
+GLIBC_2.2.6 cfsetispeed F
+GLIBC_2.2.6 cfsetospeed F
+GLIBC_2.2.6 cfsetspeed F
+GLIBC_2.2.6 chdir F
+GLIBC_2.2.6 chflags F
+GLIBC_2.2.6 chmod F
+GLIBC_2.2.6 chown F
+GLIBC_2.2.6 chroot F
+GLIBC_2.2.6 clearenv F
+GLIBC_2.2.6 clearerr F
+GLIBC_2.2.6 clearerr_unlocked F
+GLIBC_2.2.6 clnt_broadcast F
+GLIBC_2.2.6 clnt_create F
+GLIBC_2.2.6 clnt_pcreateerror F
+GLIBC_2.2.6 clnt_perrno F
+GLIBC_2.2.6 clnt_perror F
+GLIBC_2.2.6 clnt_spcreateerror F
+GLIBC_2.2.6 clnt_sperrno F
+GLIBC_2.2.6 clnt_sperror F
+GLIBC_2.2.6 clntraw_create F
+GLIBC_2.2.6 clnttcp_create F
+GLIBC_2.2.6 clntudp_bufcreate F
+GLIBC_2.2.6 clntudp_create F
+GLIBC_2.2.6 clntunix_create F
+GLIBC_2.2.6 clock F
+GLIBC_2.2.6 close F
+GLIBC_2.2.6 closedir F
+GLIBC_2.2.6 closelog F
+GLIBC_2.2.6 confstr F
+GLIBC_2.2.6 connect F
+GLIBC_2.2.6 copysign F
+GLIBC_2.2.6 copysignf F
+GLIBC_2.2.6 copysignl F
+GLIBC_2.2.6 creat F
+GLIBC_2.2.6 creat64 F
+GLIBC_2.2.6 ctermid F
+GLIBC_2.2.6 ctime F
+GLIBC_2.2.6 ctime_r F
+GLIBC_2.2.6 cuserid F
+GLIBC_2.2.6 daemon F
+GLIBC_2.2.6 daylight D 0x4
+GLIBC_2.2.6 dcgettext F
+GLIBC_2.2.6 dcngettext F
+GLIBC_2.2.6 des_setparity F
+GLIBC_2.2.6 dgettext F
+GLIBC_2.2.6 difftime F
+GLIBC_2.2.6 directory_name_split F
+GLIBC_2.2.6 dirfd F
+GLIBC_2.2.6 dirname F
+GLIBC_2.2.6 div F
+GLIBC_2.2.6 dl_iterate_phdr F
+GLIBC_2.2.6 dngettext F
+GLIBC_2.2.6 dprintf F
+GLIBC_2.2.6 drand48 F
+GLIBC_2.2.6 drand48_r F
+GLIBC_2.2.6 dup F
+GLIBC_2.2.6 dup2 F
+GLIBC_2.2.6 dysize F
+GLIBC_2.2.6 ecb_crypt F
+GLIBC_2.2.6 ecvt F
+GLIBC_2.2.6 ecvt_r F
+GLIBC_2.2.6 endaliasent F
+GLIBC_2.2.6 endfsent F
+GLIBC_2.2.6 endgrent F
+GLIBC_2.2.6 endhostent F
+GLIBC_2.2.6 endmntent F
+GLIBC_2.2.6 endnetent F
+GLIBC_2.2.6 endnetgrent F
+GLIBC_2.2.6 endprotoent F
+GLIBC_2.2.6 endpwent F
+GLIBC_2.2.6 endrpcent F
+GLIBC_2.2.6 endservent F
+GLIBC_2.2.6 endspent F
+GLIBC_2.2.6 endttyent F
+GLIBC_2.2.6 endusershell F
+GLIBC_2.2.6 endutent F
+GLIBC_2.2.6 endutxent F
+GLIBC_2.2.6 environ D 0x4
+GLIBC_2.2.6 envz_add F
+GLIBC_2.2.6 envz_entry F
+GLIBC_2.2.6 envz_get F
+GLIBC_2.2.6 envz_merge F
+GLIBC_2.2.6 envz_remove F
+GLIBC_2.2.6 envz_strip F
+GLIBC_2.2.6 erand48 F
+GLIBC_2.2.6 erand48_r F
+GLIBC_2.2.6 err F
+GLIBC_2.2.6 error F
+GLIBC_2.2.6 error_at_line F
+GLIBC_2.2.6 error_message_count D 0x4
+GLIBC_2.2.6 error_one_per_line D 0x4
+GLIBC_2.2.6 error_print_progname D 0x4
+GLIBC_2.2.6 errx F
+GLIBC_2.2.6 ether_aton F
+GLIBC_2.2.6 ether_aton_r F
+GLIBC_2.2.6 ether_hostton F
+GLIBC_2.2.6 ether_line F
+GLIBC_2.2.6 ether_ntoa F
+GLIBC_2.2.6 ether_ntoa_r F
+GLIBC_2.2.6 ether_ntohost F
+GLIBC_2.2.6 euidaccess F
+GLIBC_2.2.6 evc_wait F
+GLIBC_2.2.6 execl F
+GLIBC_2.2.6 execle F
+GLIBC_2.2.6 execlp F
+GLIBC_2.2.6 execv F
+GLIBC_2.2.6 execve F
+GLIBC_2.2.6 execvp F
+GLIBC_2.2.6 exit F
+GLIBC_2.2.6 fattach F
+GLIBC_2.2.6 fchdir F
+GLIBC_2.2.6 fchflags F
+GLIBC_2.2.6 fchmod F
+GLIBC_2.2.6 fchown F
+GLIBC_2.2.6 fclose F
+GLIBC_2.2.6 fcloseall F
+GLIBC_2.2.6 fcntl F
+GLIBC_2.2.6 fcvt F
+GLIBC_2.2.6 fcvt_r F
+GLIBC_2.2.6 fdatasync F
+GLIBC_2.2.6 fdetach F
+GLIBC_2.2.6 fdopen F
+GLIBC_2.2.6 feof F
+GLIBC_2.2.6 feof_unlocked F
+GLIBC_2.2.6 ferror F
+GLIBC_2.2.6 ferror_unlocked F
+GLIBC_2.2.6 fexecve F
+GLIBC_2.2.6 fflush F
+GLIBC_2.2.6 fflush_unlocked F
+GLIBC_2.2.6 ffs F
+GLIBC_2.2.6 ffsl F
+GLIBC_2.2.6 ffsll F
+GLIBC_2.2.6 fgetc F
+GLIBC_2.2.6 fgetc_unlocked F
+GLIBC_2.2.6 fgetgrent F
+GLIBC_2.2.6 fgetgrent_r F
+GLIBC_2.2.6 fgetpos F
+GLIBC_2.2.6 fgetpos64 F
+GLIBC_2.2.6 fgetpwent F
+GLIBC_2.2.6 fgetpwent_r F
+GLIBC_2.2.6 fgets F
+GLIBC_2.2.6 fgets_unlocked F
+GLIBC_2.2.6 fgetspent F
+GLIBC_2.2.6 fgetspent_r F
+GLIBC_2.2.6 fgetwc F
+GLIBC_2.2.6 fgetwc_unlocked F
+GLIBC_2.2.6 fgetws F
+GLIBC_2.2.6 fgetws_unlocked F
+GLIBC_2.2.6 file_name_lookup F
+GLIBC_2.2.6 file_name_lookup_under F
+GLIBC_2.2.6 file_name_path_lookup F
+GLIBC_2.2.6 file_name_split F
+GLIBC_2.2.6 fileno F
+GLIBC_2.2.6 fileno_unlocked F
+GLIBC_2.2.6 finite F
+GLIBC_2.2.6 finitef F
+GLIBC_2.2.6 finitel F
+GLIBC_2.2.6 flock F
+GLIBC_2.2.6 flockfile F
+GLIBC_2.2.6 fmemopen F
+GLIBC_2.2.6 fmtmsg F
+GLIBC_2.2.6 fnmatch F
+GLIBC_2.2.6 fopen F
+GLIBC_2.2.6 fopen64 F
+GLIBC_2.2.6 fopencookie F
+GLIBC_2.2.6 fopenport F
+GLIBC_2.2.6 fork F
+GLIBC_2.2.6 fpathconf F
+GLIBC_2.2.6 fprintf F
+GLIBC_2.2.6 fputc F
+GLIBC_2.2.6 fputc_unlocked F
+GLIBC_2.2.6 fputs F
+GLIBC_2.2.6 fputs_unlocked F
+GLIBC_2.2.6 fputwc F
+GLIBC_2.2.6 fputwc_unlocked F
+GLIBC_2.2.6 fputws F
+GLIBC_2.2.6 fputws_unlocked F
+GLIBC_2.2.6 fread F
+GLIBC_2.2.6 fread_unlocked F
+GLIBC_2.2.6 free F
+GLIBC_2.2.6 freeaddrinfo F
+GLIBC_2.2.6 freopen F
+GLIBC_2.2.6 freopen64 F
+GLIBC_2.2.6 frexp F
+GLIBC_2.2.6 frexpf F
+GLIBC_2.2.6 frexpl F
+GLIBC_2.2.6 fscanf F
+GLIBC_2.2.6 fseek F
+GLIBC_2.2.6 fseeko F
+GLIBC_2.2.6 fseeko64 F
+GLIBC_2.2.6 fsetpos F
+GLIBC_2.2.6 fsetpos64 F
+GLIBC_2.2.6 fstatfs F
+GLIBC_2.2.6 fstatfs64 F
+GLIBC_2.2.6 fstatvfs F
+GLIBC_2.2.6 fstatvfs64 F
+GLIBC_2.2.6 fsync F
+GLIBC_2.2.6 ftell F
+GLIBC_2.2.6 ftello F
+GLIBC_2.2.6 ftello64 F
+GLIBC_2.2.6 ftime F
+GLIBC_2.2.6 ftok F
+GLIBC_2.2.6 ftruncate F
+GLIBC_2.2.6 ftruncate64 F
+GLIBC_2.2.6 ftrylockfile F
+GLIBC_2.2.6 fts_children F
+GLIBC_2.2.6 fts_close F
+GLIBC_2.2.6 fts_open F
+GLIBC_2.2.6 fts_read F
+GLIBC_2.2.6 fts_set F
+GLIBC_2.2.6 ftw F
+GLIBC_2.2.6 ftw64 F
+GLIBC_2.2.6 funlockfile F
+GLIBC_2.2.6 fwide F
+GLIBC_2.2.6 fwprintf F
+GLIBC_2.2.6 fwrite F
+GLIBC_2.2.6 fwrite_unlocked F
+GLIBC_2.2.6 fwscanf F
+GLIBC_2.2.6 gai_strerror F
+GLIBC_2.2.6 gcvt F
+GLIBC_2.2.6 get_avphys_pages F
+GLIBC_2.2.6 get_current_dir_name F
+GLIBC_2.2.6 get_myaddress F
+GLIBC_2.2.6 get_nprocs F
+GLIBC_2.2.6 get_nprocs_conf F
+GLIBC_2.2.6 get_phys_pages F
+GLIBC_2.2.6 get_privileged_ports F
+GLIBC_2.2.6 getaddrinfo F
+GLIBC_2.2.6 getaliasbyname F
+GLIBC_2.2.6 getaliasbyname_r F
+GLIBC_2.2.6 getaliasent F
+GLIBC_2.2.6 getaliasent_r F
+GLIBC_2.2.6 getauth F
+GLIBC_2.2.6 getc F
+GLIBC_2.2.6 getc_unlocked F
+GLIBC_2.2.6 getchar F
+GLIBC_2.2.6 getchar_unlocked F
+GLIBC_2.2.6 getcontext F
+GLIBC_2.2.6 getcrdir F
+GLIBC_2.2.6 getcttyid F
+GLIBC_2.2.6 getcwd F
+GLIBC_2.2.6 getcwdir F
+GLIBC_2.2.6 getdate F
+GLIBC_2.2.6 getdate_err D 0x4
+GLIBC_2.2.6 getdate_r F
+GLIBC_2.2.6 getdelim F
+GLIBC_2.2.6 getdirentries F
+GLIBC_2.2.6 getdirentries64 F
+GLIBC_2.2.6 getdomainname F
+GLIBC_2.2.6 getdport F
+GLIBC_2.2.6 getdtablesize F
+GLIBC_2.2.6 getegid F
+GLIBC_2.2.6 getenv F
+GLIBC_2.2.6 geteuid F
+GLIBC_2.2.6 geteuids F
+GLIBC_2.2.6 getfsent F
+GLIBC_2.2.6 getfsfile F
+GLIBC_2.2.6 getfsspec F
+GLIBC_2.2.6 getgid F
+GLIBC_2.2.6 getgrent F
+GLIBC_2.2.6 getgrent_r F
+GLIBC_2.2.6 getgrgid F
+GLIBC_2.2.6 getgrgid_r F
+GLIBC_2.2.6 getgrnam F
+GLIBC_2.2.6 getgrnam_r F
+GLIBC_2.2.6 getgrouplist F
+GLIBC_2.2.6 getgroups F
+GLIBC_2.2.6 gethostbyaddr F
+GLIBC_2.2.6 gethostbyaddr_r F
+GLIBC_2.2.6 gethostbyname F
+GLIBC_2.2.6 gethostbyname2 F
+GLIBC_2.2.6 gethostbyname2_r F
+GLIBC_2.2.6 gethostbyname_r F
+GLIBC_2.2.6 gethostent F
+GLIBC_2.2.6 gethostent_r F
+GLIBC_2.2.6 gethostid F
+GLIBC_2.2.6 gethostname F
+GLIBC_2.2.6 getitimer F
+GLIBC_2.2.6 getline F
+GLIBC_2.2.6 getloadavg F
+GLIBC_2.2.6 getlogin F
+GLIBC_2.2.6 getlogin_r F
+GLIBC_2.2.6 getmntent F
+GLIBC_2.2.6 getmntent_r F
+GLIBC_2.2.6 getmsg F
+GLIBC_2.2.6 getnameinfo F
+GLIBC_2.2.6 getnetbyaddr F
+GLIBC_2.2.6 getnetbyaddr_r F
+GLIBC_2.2.6 getnetbyname F
+GLIBC_2.2.6 getnetbyname_r F
+GLIBC_2.2.6 getnetent F
+GLIBC_2.2.6 getnetent_r F
+GLIBC_2.2.6 getnetgrent F
+GLIBC_2.2.6 getnetgrent_r F
+GLIBC_2.2.6 getnetname F
+GLIBC_2.2.6 getopt F
+GLIBC_2.2.6 getopt_long F
+GLIBC_2.2.6 getopt_long_only F
+GLIBC_2.2.6 getpagesize F
+GLIBC_2.2.6 getpass F
+GLIBC_2.2.6 getpeername F
+GLIBC_2.2.6 getpgid F
+GLIBC_2.2.6 getpgrp F
+GLIBC_2.2.6 getpid F
+GLIBC_2.2.6 getpmsg F
+GLIBC_2.2.6 getppid F
+GLIBC_2.2.6 getpriority F
+GLIBC_2.2.6 getproc F
+GLIBC_2.2.6 getprotobyname F
+GLIBC_2.2.6 getprotobyname_r F
+GLIBC_2.2.6 getprotobynumber F
+GLIBC_2.2.6 getprotobynumber_r F
+GLIBC_2.2.6 getprotoent F
+GLIBC_2.2.6 getprotoent_r F
+GLIBC_2.2.6 getpt F
+GLIBC_2.2.6 getpublickey F
+GLIBC_2.2.6 getpw F
+GLIBC_2.2.6 getpwent F
+GLIBC_2.2.6 getpwent_r F
+GLIBC_2.2.6 getpwnam F
+GLIBC_2.2.6 getpwnam_r F
+GLIBC_2.2.6 getpwuid F
+GLIBC_2.2.6 getpwuid_r F
+GLIBC_2.2.6 getrlimit F
+GLIBC_2.2.6 getrlimit64 F
+GLIBC_2.2.6 getrpcbyname F
+GLIBC_2.2.6 getrpcbyname_r F
+GLIBC_2.2.6 getrpcbynumber F
+GLIBC_2.2.6 getrpcbynumber_r F
+GLIBC_2.2.6 getrpcent F
+GLIBC_2.2.6 getrpcent_r F
+GLIBC_2.2.6 getrpcport F
+GLIBC_2.2.6 getrusage F
+GLIBC_2.2.6 gets F
+GLIBC_2.2.6 getsecretkey F
+GLIBC_2.2.6 getservbyname F
+GLIBC_2.2.6 getservbyname_r F
+GLIBC_2.2.6 getservbyport F
+GLIBC_2.2.6 getservbyport_r F
+GLIBC_2.2.6 getservent F
+GLIBC_2.2.6 getservent_r F
+GLIBC_2.2.6 getsid F
+GLIBC_2.2.6 getsockname F
+GLIBC_2.2.6 getsockopt F
+GLIBC_2.2.6 getspent F
+GLIBC_2.2.6 getspent_r F
+GLIBC_2.2.6 getspnam F
+GLIBC_2.2.6 getspnam_r F
+GLIBC_2.2.6 getsubopt F
+GLIBC_2.2.6 gettext F
+GLIBC_2.2.6 gettimeofday F
+GLIBC_2.2.6 getttyent F
+GLIBC_2.2.6 getttynam F
+GLIBC_2.2.6 getuid F
+GLIBC_2.2.6 getumask F
+GLIBC_2.2.6 getusershell F
+GLIBC_2.2.6 getutent F
+GLIBC_2.2.6 getutent_r F
+GLIBC_2.2.6 getutid F
+GLIBC_2.2.6 getutid_r F
+GLIBC_2.2.6 getutline F
+GLIBC_2.2.6 getutline_r F
+GLIBC_2.2.6 getutmp F
+GLIBC_2.2.6 getutmpx F
+GLIBC_2.2.6 getutxent F
+GLIBC_2.2.6 getutxid F
+GLIBC_2.2.6 getutxline F
+GLIBC_2.2.6 getw F
+GLIBC_2.2.6 getwc F
+GLIBC_2.2.6 getwc_unlocked F
+GLIBC_2.2.6 getwchar F
+GLIBC_2.2.6 getwchar_unlocked F
+GLIBC_2.2.6 getwd F
+GLIBC_2.2.6 glob F
+GLIBC_2.2.6 glob64 F
+GLIBC_2.2.6 glob_pattern_p F
+GLIBC_2.2.6 globfree F
+GLIBC_2.2.6 globfree64 F
+GLIBC_2.2.6 gmtime F
+GLIBC_2.2.6 gmtime_r F
+GLIBC_2.2.6 gnu_get_libc_release F
+GLIBC_2.2.6 gnu_get_libc_version F
+GLIBC_2.2.6 grantpt F
+GLIBC_2.2.6 group_member F
+GLIBC_2.2.6 gsignal F
+GLIBC_2.2.6 gtty F
+GLIBC_2.2.6 h_errlist D 0x14
+GLIBC_2.2.6 h_nerr D 0x4
+GLIBC_2.2.6 hasmntopt F
+GLIBC_2.2.6 hcreate F
+GLIBC_2.2.6 hcreate_r F
+GLIBC_2.2.6 hdestroy F
+GLIBC_2.2.6 hdestroy_r F
+GLIBC_2.2.6 herror F
+GLIBC_2.2.6 host2netname F
+GLIBC_2.2.6 hsearch F
+GLIBC_2.2.6 hsearch_r F
+GLIBC_2.2.6 hstrerror F
+GLIBC_2.2.6 htonl F
+GLIBC_2.2.6 htons F
+GLIBC_2.2.6 hurd_catch_signal F
+GLIBC_2.2.6 hurd_check_cancel F
+GLIBC_2.2.6 hurd_directory_name_split F
+GLIBC_2.2.6 hurd_file_name_lookup F
+GLIBC_2.2.6 hurd_file_name_lookup_retry F
+GLIBC_2.2.6 hurd_file_name_path_lookup F
+GLIBC_2.2.6 hurd_file_name_split F
+GLIBC_2.2.6 hurd_preempt_signals F
+GLIBC_2.2.6 hurd_safe_copyin F
+GLIBC_2.2.6 hurd_safe_copyout F
+GLIBC_2.2.6 hurd_safe_memmove F
+GLIBC_2.2.6 hurd_safe_memset F
+GLIBC_2.2.6 hurd_sig_post F
+GLIBC_2.2.6 hurd_thread_cancel F
+GLIBC_2.2.6 hurd_thread_self F
+GLIBC_2.2.6 hurd_unpreempt_signals F
+GLIBC_2.2.6 iconv F
+GLIBC_2.2.6 iconv_close F
+GLIBC_2.2.6 iconv_open F
+GLIBC_2.2.6 if_freenameindex F
+GLIBC_2.2.6 if_indextoname F
+GLIBC_2.2.6 if_nameindex F
+GLIBC_2.2.6 if_nametoindex F
+GLIBC_2.2.6 imaxabs F
+GLIBC_2.2.6 imaxdiv F
+GLIBC_2.2.6 in6addr_any D 0x10
+GLIBC_2.2.6 in6addr_loopback D 0x10
+GLIBC_2.2.6 index F
+GLIBC_2.2.6 inet_addr F
+GLIBC_2.2.6 inet_aton F
+GLIBC_2.2.6 inet_lnaof F
+GLIBC_2.2.6 inet_makeaddr F
+GLIBC_2.2.6 inet_netof F
+GLIBC_2.2.6 inet_network F
+GLIBC_2.2.6 inet_nsap_addr F
+GLIBC_2.2.6 inet_nsap_ntoa F
+GLIBC_2.2.6 inet_ntoa F
+GLIBC_2.2.6 inet_ntop F
+GLIBC_2.2.6 inet_pton F
+GLIBC_2.2.6 initgroups F
+GLIBC_2.2.6 initstate F
+GLIBC_2.2.6 initstate_r F
+GLIBC_2.2.6 innetgr F
+GLIBC_2.2.6 insque F
+GLIBC_2.2.6 ioctl F
+GLIBC_2.2.6 ioperm F
+GLIBC_2.2.6 iruserok F
+GLIBC_2.2.6 iruserok_af F
+GLIBC_2.2.6 isalnum F
+GLIBC_2.2.6 isalpha F
+GLIBC_2.2.6 isascii F
+GLIBC_2.2.6 isastream F
+GLIBC_2.2.6 isatty F
+GLIBC_2.2.6 isblank F
+GLIBC_2.2.6 iscntrl F
+GLIBC_2.2.6 isdigit F
+GLIBC_2.2.6 isfdtype F
+GLIBC_2.2.6 isgraph F
+GLIBC_2.2.6 isinf F
+GLIBC_2.2.6 isinff F
+GLIBC_2.2.6 isinfl F
+GLIBC_2.2.6 islower F
+GLIBC_2.2.6 isnan F
+GLIBC_2.2.6 isnanf F
+GLIBC_2.2.6 isnanl F
+GLIBC_2.2.6 isprint F
+GLIBC_2.2.6 ispunct F
+GLIBC_2.2.6 isspace F
+GLIBC_2.2.6 isupper F
+GLIBC_2.2.6 iswalnum F
+GLIBC_2.2.6 iswalpha F
+GLIBC_2.2.6 iswblank F
+GLIBC_2.2.6 iswcntrl F
+GLIBC_2.2.6 iswctype F
+GLIBC_2.2.6 iswdigit F
+GLIBC_2.2.6 iswgraph F
+GLIBC_2.2.6 iswlower F
+GLIBC_2.2.6 iswprint F
+GLIBC_2.2.6 iswpunct F
+GLIBC_2.2.6 iswspace F
+GLIBC_2.2.6 iswupper F
+GLIBC_2.2.6 iswxdigit F
+GLIBC_2.2.6 isxdigit F
+GLIBC_2.2.6 jrand48 F
+GLIBC_2.2.6 jrand48_r F
+GLIBC_2.2.6 key_decryptsession F
+GLIBC_2.2.6 key_decryptsession_pk F
+GLIBC_2.2.6 key_encryptsession F
+GLIBC_2.2.6 key_encryptsession_pk F
+GLIBC_2.2.6 key_gendes F
+GLIBC_2.2.6 key_get_conv F
+GLIBC_2.2.6 key_secretkey_is_set F
+GLIBC_2.2.6 key_setnet F
+GLIBC_2.2.6 key_setsecret F
+GLIBC_2.2.6 kill F
+GLIBC_2.2.6 killpg F
+GLIBC_2.2.6 l64a F
+GLIBC_2.2.6 labs F
+GLIBC_2.2.6 lchown F
+GLIBC_2.2.6 lckpwdf F
+GLIBC_2.2.6 lcong48 F
+GLIBC_2.2.6 lcong48_r F
+GLIBC_2.2.6 ldexp F
+GLIBC_2.2.6 ldexpf F
+GLIBC_2.2.6 ldexpl F
+GLIBC_2.2.6 ldiv F
+GLIBC_2.2.6 lfind F
+GLIBC_2.2.6 link F
+GLIBC_2.2.6 listen F
+GLIBC_2.2.6 llabs F
+GLIBC_2.2.6 lldiv F
+GLIBC_2.2.6 loc1 D 0x4
+GLIBC_2.2.6 loc2 D 0x4
+GLIBC_2.2.6 localeconv F
+GLIBC_2.2.6 localtime F
+GLIBC_2.2.6 localtime_r F
+GLIBC_2.2.6 lockf F
+GLIBC_2.2.6 lockf64 F
+GLIBC_2.2.6 locs D 0x4
+GLIBC_2.2.6 longjmp F
+GLIBC_2.2.6 lrand48 F
+GLIBC_2.2.6 lrand48_r F
+GLIBC_2.2.6 lsearch F
+GLIBC_2.2.6 lseek F
+GLIBC_2.2.6 lseek64 F
+GLIBC_2.2.6 mach_error F
+GLIBC_2.2.6 mach_error_string F
+GLIBC_2.2.6 mach_error_type F
+GLIBC_2.2.6 mach_host_self F
+GLIBC_2.2.6 mach_msg F
+GLIBC_2.2.6 mach_msg_destroy F
+GLIBC_2.2.6 mach_msg_receive F
+GLIBC_2.2.6 mach_msg_send F
+GLIBC_2.2.6 mach_msg_server F
+GLIBC_2.2.6 mach_msg_server_timeout F
+GLIBC_2.2.6 mach_open_devstream F
+GLIBC_2.2.6 mach_port_allocate F
+GLIBC_2.2.6 mach_port_allocate_name F
+GLIBC_2.2.6 mach_port_deallocate F
+GLIBC_2.2.6 mach_port_insert_right F
+GLIBC_2.2.6 mach_reply_port F
+GLIBC_2.2.6 mach_setup_thread F
+GLIBC_2.2.6 mach_setup_tls F
+GLIBC_2.2.6 mach_task_self F
+GLIBC_2.2.6 mach_thread_self F
+GLIBC_2.2.6 madvise F
+GLIBC_2.2.6 makecontext F
+GLIBC_2.2.6 mallinfo F
+GLIBC_2.2.6 malloc F
+GLIBC_2.2.6 malloc_get_state F
+GLIBC_2.2.6 malloc_set_state F
+GLIBC_2.2.6 malloc_stats F
+GLIBC_2.2.6 malloc_trim F
+GLIBC_2.2.6 malloc_usable_size F
+GLIBC_2.2.6 mallopt F
+GLIBC_2.2.6 mallwatch D 0x4
+GLIBC_2.2.6 mblen F
+GLIBC_2.2.6 mbrlen F
+GLIBC_2.2.6 mbrtowc F
+GLIBC_2.2.6 mbsinit F
+GLIBC_2.2.6 mbsnrtowcs F
+GLIBC_2.2.6 mbsrtowcs F
+GLIBC_2.2.6 mbstowcs F
+GLIBC_2.2.6 mbtowc F
+GLIBC_2.2.6 mcheck F
+GLIBC_2.2.6 mcheck_check_all F
+GLIBC_2.2.6 mcheck_pedantic F
+GLIBC_2.2.6 mcount F
+GLIBC_2.2.6 memalign F
+GLIBC_2.2.6 memccpy F
+GLIBC_2.2.6 memchr F
+GLIBC_2.2.6 memcmp F
+GLIBC_2.2.6 memcpy F
+GLIBC_2.2.6 memfrob F
+GLIBC_2.2.6 memmem F
+GLIBC_2.2.6 memmove F
+GLIBC_2.2.6 mempcpy F
+GLIBC_2.2.6 memrchr F
+GLIBC_2.2.6 memset F
+GLIBC_2.2.6 mig_allocate F
+GLIBC_2.2.6 mig_dealloc_reply_port F
+GLIBC_2.2.6 mig_deallocate F
+GLIBC_2.2.6 mig_get_reply_port F
+GLIBC_2.2.6 mig_init F
+GLIBC_2.2.6 mig_put_reply_port F
+GLIBC_2.2.6 mig_strncpy F
+GLIBC_2.2.6 mincore F
+GLIBC_2.2.6 mkdir F
+GLIBC_2.2.6 mkdtemp F
+GLIBC_2.2.6 mkfifo F
+GLIBC_2.2.6 mkstemp F
+GLIBC_2.2.6 mkstemp64 F
+GLIBC_2.2.6 mktemp F
+GLIBC_2.2.6 mktime F
+GLIBC_2.2.6 mlock F
+GLIBC_2.2.6 mlockall F
+GLIBC_2.2.6 mmap F
+GLIBC_2.2.6 mmap64 F
+GLIBC_2.2.6 modf F
+GLIBC_2.2.6 modff F
+GLIBC_2.2.6 modfl F
+GLIBC_2.2.6 moncontrol F
+GLIBC_2.2.6 monstartup F
+GLIBC_2.2.6 mprobe F
+GLIBC_2.2.6 mprotect F
+GLIBC_2.2.6 mrand48 F
+GLIBC_2.2.6 mrand48_r F
+GLIBC_2.2.6 msgctl F
+GLIBC_2.2.6 msgget F
+GLIBC_2.2.6 msgrcv F
+GLIBC_2.2.6 msgsnd F
+GLIBC_2.2.6 msync F
+GLIBC_2.2.6 mtrace F
+GLIBC_2.2.6 munlock F
+GLIBC_2.2.6 munlockall F
+GLIBC_2.2.6 munmap F
+GLIBC_2.2.6 muntrace F
+GLIBC_2.2.6 nanosleep F
+GLIBC_2.2.6 netname2host F
+GLIBC_2.2.6 netname2user F
+GLIBC_2.2.6 nftw F
+GLIBC_2.2.6 nftw64 F
+GLIBC_2.2.6 ngettext F
+GLIBC_2.2.6 nice F
+GLIBC_2.2.6 nl_langinfo F
+GLIBC_2.2.6 nrand48 F
+GLIBC_2.2.6 nrand48_r F
+GLIBC_2.2.6 ntohl F
+GLIBC_2.2.6 ntohs F
+GLIBC_2.2.6 obstack_alloc_failed_handler D 0x4
+GLIBC_2.2.6 obstack_exit_failure D 0x4
+GLIBC_2.2.6 obstack_free F
+GLIBC_2.2.6 obstack_printf F
+GLIBC_2.2.6 obstack_vprintf F
+GLIBC_2.2.6 on_exit F
+GLIBC_2.2.6 open F
+GLIBC_2.2.6 open64 F
+GLIBC_2.2.6 open_memstream F
+GLIBC_2.2.6 opendir F
+GLIBC_2.2.6 openlog F
+GLIBC_2.2.6 openport F
+GLIBC_2.2.6 optarg D 0x4
+GLIBC_2.2.6 opterr D 0x4
+GLIBC_2.2.6 optind D 0x4
+GLIBC_2.2.6 optopt D 0x4
+GLIBC_2.2.6 parse_printf_format F
+GLIBC_2.2.6 passwd2des F
+GLIBC_2.2.6 pathconf F
+GLIBC_2.2.6 pause F
+GLIBC_2.2.6 pclose F
+GLIBC_2.2.6 perror F
+GLIBC_2.2.6 pid2task F
+GLIBC_2.2.6 pipe F
+GLIBC_2.2.6 pmap_getmaps F
+GLIBC_2.2.6 pmap_getport F
+GLIBC_2.2.6 pmap_rmtcall F
+GLIBC_2.2.6 pmap_set F
+GLIBC_2.2.6 pmap_unset F
+GLIBC_2.2.6 poll F
+GLIBC_2.2.6 popen F
+GLIBC_2.2.6 posix_fadvise F
+GLIBC_2.2.6 posix_fadvise64 F
+GLIBC_2.2.6 posix_fallocate F
+GLIBC_2.2.6 posix_fallocate64 F
+GLIBC_2.2.6 posix_madvise F
+GLIBC_2.2.6 posix_memalign F
+GLIBC_2.2.6 posix_openpt F
+GLIBC_2.2.6 posix_spawn F
+GLIBC_2.2.6 posix_spawn_file_actions_addclose F
+GLIBC_2.2.6 posix_spawn_file_actions_adddup2 F
+GLIBC_2.2.6 posix_spawn_file_actions_addopen F
+GLIBC_2.2.6 posix_spawn_file_actions_destroy F
+GLIBC_2.2.6 posix_spawn_file_actions_init F
+GLIBC_2.2.6 posix_spawnattr_destroy F
+GLIBC_2.2.6 posix_spawnattr_getflags F
+GLIBC_2.2.6 posix_spawnattr_getpgroup F
+GLIBC_2.2.6 posix_spawnattr_getschedparam F
+GLIBC_2.2.6 posix_spawnattr_getschedpolicy F
+GLIBC_2.2.6 posix_spawnattr_getsigdefault F
+GLIBC_2.2.6 posix_spawnattr_getsigmask F
+GLIBC_2.2.6 posix_spawnattr_init F
+GLIBC_2.2.6 posix_spawnattr_setflags F
+GLIBC_2.2.6 posix_spawnattr_setpgroup F
+GLIBC_2.2.6 posix_spawnattr_setschedparam F
+GLIBC_2.2.6 posix_spawnattr_setschedpolicy F
+GLIBC_2.2.6 posix_spawnattr_setsigdefault F
+GLIBC_2.2.6 posix_spawnattr_setsigmask F
+GLIBC_2.2.6 posix_spawnp F
+GLIBC_2.2.6 pread F
+GLIBC_2.2.6 pread64 F
+GLIBC_2.2.6 printf F
+GLIBC_2.2.6 printf_size F
+GLIBC_2.2.6 printf_size_info F
+GLIBC_2.2.6 profil F
+GLIBC_2.2.6 program_invocation_name D 0x4
+GLIBC_2.2.6 program_invocation_short_name D 0x4
+GLIBC_2.2.6 pselect F
+GLIBC_2.2.6 psignal F
+GLIBC_2.2.6 ptrace F
+GLIBC_2.2.6 ptsname F
+GLIBC_2.2.6 ptsname_r F
+GLIBC_2.2.6 putc F
+GLIBC_2.2.6 putc_unlocked F
+GLIBC_2.2.6 putchar F
+GLIBC_2.2.6 putchar_unlocked F
+GLIBC_2.2.6 putenv F
+GLIBC_2.2.6 putgrent F
+GLIBC_2.2.6 putmsg F
+GLIBC_2.2.6 putpmsg F
+GLIBC_2.2.6 putpwent F
+GLIBC_2.2.6 puts F
+GLIBC_2.2.6 putspent F
+GLIBC_2.2.6 pututline F
+GLIBC_2.2.6 pututxline F
+GLIBC_2.2.6 putw F
+GLIBC_2.2.6 putwc F
+GLIBC_2.2.6 putwc_unlocked F
+GLIBC_2.2.6 putwchar F
+GLIBC_2.2.6 putwchar_unlocked F
+GLIBC_2.2.6 pvalloc F
+GLIBC_2.2.6 pwrite F
+GLIBC_2.2.6 pwrite64 F
+GLIBC_2.2.6 qecvt F
+GLIBC_2.2.6 qecvt_r F
+GLIBC_2.2.6 qfcvt F
+GLIBC_2.2.6 qfcvt_r F
+GLIBC_2.2.6 qgcvt F
+GLIBC_2.2.6 qsort F
+GLIBC_2.2.6 raise F
+GLIBC_2.2.6 rand F
+GLIBC_2.2.6 rand_r F
+GLIBC_2.2.6 random F
+GLIBC_2.2.6 random_r F
+GLIBC_2.2.6 rawmemchr F
+GLIBC_2.2.6 rcmd F
+GLIBC_2.2.6 rcmd_af F
+GLIBC_2.2.6 re_comp F
+GLIBC_2.2.6 re_compile_fastmap F
+GLIBC_2.2.6 re_compile_pattern F
+GLIBC_2.2.6 re_exec F
+GLIBC_2.2.6 re_match F
+GLIBC_2.2.6 re_match_2 F
+GLIBC_2.2.6 re_max_failures D 0x4
+GLIBC_2.2.6 re_search F
+GLIBC_2.2.6 re_search_2 F
+GLIBC_2.2.6 re_set_registers F
+GLIBC_2.2.6 re_set_syntax F
+GLIBC_2.2.6 re_syntax_options D 0x4
+GLIBC_2.2.6 read F
+GLIBC_2.2.6 readdir F
+GLIBC_2.2.6 readdir64 F
+GLIBC_2.2.6 readdir64_r F
+GLIBC_2.2.6 readdir_r F
+GLIBC_2.2.6 readlink F
+GLIBC_2.2.6 readv F
+GLIBC_2.2.6 realloc F
+GLIBC_2.2.6 realpath F
+GLIBC_2.2.6 reboot F
+GLIBC_2.2.6 recv F
+GLIBC_2.2.6 recvfrom F
+GLIBC_2.2.6 recvmsg F
+GLIBC_2.2.6 regcomp F
+GLIBC_2.2.6 regerror F
+GLIBC_2.2.6 regexec F
+GLIBC_2.2.6 regfree F
+GLIBC_2.2.6 register_printf_function F
+GLIBC_2.2.6 registerrpc F
+GLIBC_2.2.6 remove F
+GLIBC_2.2.6 remque F
+GLIBC_2.2.6 rename F
+GLIBC_2.2.6 revoke F
+GLIBC_2.2.6 rewind F
+GLIBC_2.2.6 rewinddir F
+GLIBC_2.2.6 rexec F
+GLIBC_2.2.6 rexec_af F
+GLIBC_2.2.6 rexecoptions D 0x4
+GLIBC_2.2.6 rindex F
+GLIBC_2.2.6 rmdir F
+GLIBC_2.2.6 rpc_createerr D 0x10
+GLIBC_2.2.6 rpmatch F
+GLIBC_2.2.6 rresvport F
+GLIBC_2.2.6 rresvport_af F
+GLIBC_2.2.6 rtime F
+GLIBC_2.2.6 ruserok F
+GLIBC_2.2.6 ruserok_af F
+GLIBC_2.2.6 ruserpass F
+GLIBC_2.2.6 sbrk F
+GLIBC_2.2.6 scalbln F
+GLIBC_2.2.6 scalblnf F
+GLIBC_2.2.6 scalblnl F
+GLIBC_2.2.6 scalbn F
+GLIBC_2.2.6 scalbnf F
+GLIBC_2.2.6 scalbnl F
+GLIBC_2.2.6 scandir F
+GLIBC_2.2.6 scandir64 F
+GLIBC_2.2.6 scanf F
+GLIBC_2.2.6 sched_get_priority_max F
+GLIBC_2.2.6 sched_get_priority_min F
+GLIBC_2.2.6 sched_getparam F
+GLIBC_2.2.6 sched_getscheduler F
+GLIBC_2.2.6 sched_rr_get_interval F
+GLIBC_2.2.6 sched_setparam F
+GLIBC_2.2.6 sched_setscheduler F
+GLIBC_2.2.6 sched_yield F
+GLIBC_2.2.6 seed48 F
+GLIBC_2.2.6 seed48_r F
+GLIBC_2.2.6 seekdir F
+GLIBC_2.2.6 select F
+GLIBC_2.2.6 semctl F
+GLIBC_2.2.6 semget F
+GLIBC_2.2.6 semop F
+GLIBC_2.2.6 send F
+GLIBC_2.2.6 sendfile F
+GLIBC_2.2.6 sendmsg F
+GLIBC_2.2.6 sendto F
+GLIBC_2.2.6 setaliasent F
+GLIBC_2.2.6 setauth F
+GLIBC_2.2.6 setbuf F
+GLIBC_2.2.6 setbuffer F
+GLIBC_2.2.6 setcontext F
+GLIBC_2.2.6 setcrdir F
+GLIBC_2.2.6 setcttyid F
+GLIBC_2.2.6 setcwdir F
+GLIBC_2.2.6 setdomainname F
+GLIBC_2.2.6 setegid F
+GLIBC_2.2.6 setenv F
+GLIBC_2.2.6 seteuid F
+GLIBC_2.2.6 seteuids F
+GLIBC_2.2.6 setfsent F
+GLIBC_2.2.6 setgid F
+GLIBC_2.2.6 setgrent F
+GLIBC_2.2.6 setgroups F
+GLIBC_2.2.6 sethostent F
+GLIBC_2.2.6 sethostid F
+GLIBC_2.2.6 sethostname F
+GLIBC_2.2.6 setitimer F
+GLIBC_2.2.6 setjmp F
+GLIBC_2.2.6 setlinebuf F
+GLIBC_2.2.6 setlocale F
+GLIBC_2.2.6 setlogin F
+GLIBC_2.2.6 setlogmask F
+GLIBC_2.2.6 setmntent F
+GLIBC_2.2.6 setnetent F
+GLIBC_2.2.6 setnetgrent F
+GLIBC_2.2.6 setpgid F
+GLIBC_2.2.6 setpgrp F
+GLIBC_2.2.6 setpriority F
+GLIBC_2.2.6 setproc F
+GLIBC_2.2.6 setprotoent F
+GLIBC_2.2.6 setpwent F
+GLIBC_2.2.6 setregid F
+GLIBC_2.2.6 setreuid F
+GLIBC_2.2.6 setrlimit F
+GLIBC_2.2.6 setrlimit64 F
+GLIBC_2.2.6 setrpcent F
+GLIBC_2.2.6 setservent F
+GLIBC_2.2.6 setsid F
+GLIBC_2.2.6 setsockopt F
+GLIBC_2.2.6 setspent F
+GLIBC_2.2.6 setstate F
+GLIBC_2.2.6 setstate_r F
+GLIBC_2.2.6 settimeofday F
+GLIBC_2.2.6 setttyent F
+GLIBC_2.2.6 setuid F
+GLIBC_2.2.6 setusershell F
+GLIBC_2.2.6 setutent F
+GLIBC_2.2.6 setutxent F
+GLIBC_2.2.6 setvbuf F
+GLIBC_2.2.6 sgetspent F
+GLIBC_2.2.6 sgetspent_r F
+GLIBC_2.2.6 shmat F
+GLIBC_2.2.6 shmctl F
+GLIBC_2.2.6 shmdt F
+GLIBC_2.2.6 shmget F
+GLIBC_2.2.6 shutdown F
+GLIBC_2.2.6 sigaction F
+GLIBC_2.2.6 sigaddset F
+GLIBC_2.2.6 sigaltstack F
+GLIBC_2.2.6 sigandset F
+GLIBC_2.2.6 sigblock F
+GLIBC_2.2.6 sigdelset F
+GLIBC_2.2.6 sigemptyset F
+GLIBC_2.2.6 sigfillset F
+GLIBC_2.2.6 siggetmask F
+GLIBC_2.2.6 sighold F
+GLIBC_2.2.6 sigignore F
+GLIBC_2.2.6 siginterrupt F
+GLIBC_2.2.6 sigisemptyset F
+GLIBC_2.2.6 sigismember F
+GLIBC_2.2.6 siglongjmp F
+GLIBC_2.2.6 signal F
+GLIBC_2.2.6 sigorset F
+GLIBC_2.2.6 sigpause F
+GLIBC_2.2.6 sigpending F
+GLIBC_2.2.6 sigprocmask F
+GLIBC_2.2.6 sigqueue F
+GLIBC_2.2.6 sigrelse F
+GLIBC_2.2.6 sigreturn F
+GLIBC_2.2.6 sigset F
+GLIBC_2.2.6 sigsetmask F
+GLIBC_2.2.6 sigstack F
+GLIBC_2.2.6 sigsuspend F
+GLIBC_2.2.6 sigtimedwait F
+GLIBC_2.2.6 sigvec F
+GLIBC_2.2.6 sigwait F
+GLIBC_2.2.6 sigwaitinfo F
+GLIBC_2.2.6 sleep F
+GLIBC_2.2.6 snprintf F
+GLIBC_2.2.6 sockatmark F
+GLIBC_2.2.6 socket F
+GLIBC_2.2.6 socketpair F
+GLIBC_2.2.6 sprintf F
+GLIBC_2.2.6 sprofil F
+GLIBC_2.2.6 srand F
+GLIBC_2.2.6 srand48 F
+GLIBC_2.2.6 srand48_r F
+GLIBC_2.2.6 srandom F
+GLIBC_2.2.6 srandom_r F
+GLIBC_2.2.6 sscanf F
+GLIBC_2.2.6 ssignal F
+GLIBC_2.2.6 sstk F
+GLIBC_2.2.6 statfs F
+GLIBC_2.2.6 statfs64 F
+GLIBC_2.2.6 statvfs F
+GLIBC_2.2.6 statvfs64 F
+GLIBC_2.2.6 stderr D 0x4
+GLIBC_2.2.6 stdin D 0x4
+GLIBC_2.2.6 stdout D 0x4
+GLIBC_2.2.6 step F
+GLIBC_2.2.6 stime F
+GLIBC_2.2.6 stpcpy F
+GLIBC_2.2.6 stpncpy F
+GLIBC_2.2.6 strcasecmp F
+GLIBC_2.2.6 strcasestr F
+GLIBC_2.2.6 strcat F
+GLIBC_2.2.6 strchr F
+GLIBC_2.2.6 strchrnul F
+GLIBC_2.2.6 strcmp F
+GLIBC_2.2.6 strcoll F
+GLIBC_2.2.6 strcpy F
+GLIBC_2.2.6 strcspn F
+GLIBC_2.2.6 strdup F
+GLIBC_2.2.6 strerror F
+GLIBC_2.2.6 strerror_r F
+GLIBC_2.2.6 strfmon F
+GLIBC_2.2.6 strfry F
+GLIBC_2.2.6 strftime F
+GLIBC_2.2.6 strlen F
+GLIBC_2.2.6 strncasecmp F
+GLIBC_2.2.6 strncat F
+GLIBC_2.2.6 strncmp F
+GLIBC_2.2.6 strncpy F
+GLIBC_2.2.6 strndup F
+GLIBC_2.2.6 strnlen F
+GLIBC_2.2.6 strpbrk F
+GLIBC_2.2.6 strptime F
+GLIBC_2.2.6 strrchr F
+GLIBC_2.2.6 strsep F
+GLIBC_2.2.6 strsignal F
+GLIBC_2.2.6 strspn F
+GLIBC_2.2.6 strstr F
+GLIBC_2.2.6 strtod F
+GLIBC_2.2.6 strtof F
+GLIBC_2.2.6 strtoimax F
+GLIBC_2.2.6 strtok F
+GLIBC_2.2.6 strtok_r F
+GLIBC_2.2.6 strtol F
+GLIBC_2.2.6 strtold F
+GLIBC_2.2.6 strtoll F
+GLIBC_2.2.6 strtoq F
+GLIBC_2.2.6 strtoul F
+GLIBC_2.2.6 strtoull F
+GLIBC_2.2.6 strtoumax F
+GLIBC_2.2.6 strtouq F
+GLIBC_2.2.6 strverscmp F
+GLIBC_2.2.6 strxfrm F
+GLIBC_2.2.6 stty F
+GLIBC_2.2.6 svc_exit F
+GLIBC_2.2.6 svc_fdset D 0x20
+GLIBC_2.2.6 svc_getreq F
+GLIBC_2.2.6 svc_getreq_common F
+GLIBC_2.2.6 svc_getreq_poll F
+GLIBC_2.2.6 svc_getreqset F
+GLIBC_2.2.6 svc_max_pollfd D 0x4
+GLIBC_2.2.6 svc_pollfd D 0x4
+GLIBC_2.2.6 svc_register F
+GLIBC_2.2.6 svc_run F
+GLIBC_2.2.6 svc_sendreply F
+GLIBC_2.2.6 svc_unregister F
+GLIBC_2.2.6 svcauthdes_stats D 0xc
+GLIBC_2.2.6 svcerr_auth F
+GLIBC_2.2.6 svcerr_decode F
+GLIBC_2.2.6 svcerr_noproc F
+GLIBC_2.2.6 svcerr_noprog F
+GLIBC_2.2.6 svcerr_progvers F
+GLIBC_2.2.6 svcerr_systemerr F
+GLIBC_2.2.6 svcerr_weakauth F
+GLIBC_2.2.6 svcfd_create F
+GLIBC_2.2.6 svcraw_create F
+GLIBC_2.2.6 svctcp_create F
+GLIBC_2.2.6 svcudp_bufcreate F
+GLIBC_2.2.6 svcudp_create F
+GLIBC_2.2.6 svcudp_enablecache F
+GLIBC_2.2.6 svcunix_create F
+GLIBC_2.2.6 svcunixfd_create F
+GLIBC_2.2.6 swab F
+GLIBC_2.2.6 swapcontext F
+GLIBC_2.2.6 swprintf F
+GLIBC_2.2.6 swscanf F
+GLIBC_2.2.6 swtch F
+GLIBC_2.2.6 swtch_pri F
+GLIBC_2.2.6 symlink F
+GLIBC_2.2.6 sync F
+GLIBC_2.2.6 sys_sigabbrev D 0x84
+GLIBC_2.2.6 sys_siglist D 0x84
+GLIBC_2.2.6 syscall F
+GLIBC_2.2.6 sysconf F
+GLIBC_2.2.6 syslog F
+GLIBC_2.2.6 system F
+GLIBC_2.2.6 sysv_signal F
+GLIBC_2.2.6 task2pid F
+GLIBC_2.2.6 task_create F
+GLIBC_2.2.6 task_set_special_port F
+GLIBC_2.2.6 task_suspend F
+GLIBC_2.2.6 task_terminate F
+GLIBC_2.2.6 tcdrain F
+GLIBC_2.2.6 tcflow F
+GLIBC_2.2.6 tcflush F
+GLIBC_2.2.6 tcgetattr F
+GLIBC_2.2.6 tcgetpgrp F
+GLIBC_2.2.6 tcgetsid F
+GLIBC_2.2.6 tcsendbreak F
+GLIBC_2.2.6 tcsetattr F
+GLIBC_2.2.6 tcsetpgrp F
+GLIBC_2.2.6 tdelete F
+GLIBC_2.2.6 tdestroy F
+GLIBC_2.2.6 telldir F
+GLIBC_2.2.6 tempnam F
+GLIBC_2.2.6 textdomain F
+GLIBC_2.2.6 tfind F
+GLIBC_2.2.6 thread_depress_abort F
+GLIBC_2.2.6 thread_switch F
+GLIBC_2.2.6 time F
+GLIBC_2.2.6 timegm F
+GLIBC_2.2.6 timelocal F
+GLIBC_2.2.6 times F
+GLIBC_2.2.6 timezone D 0x4
+GLIBC_2.2.6 tmpfile F
+GLIBC_2.2.6 tmpfile64 F
+GLIBC_2.2.6 tmpnam F
+GLIBC_2.2.6 tmpnam_r F
+GLIBC_2.2.6 toascii F
+GLIBC_2.2.6 tolower F
+GLIBC_2.2.6 toupper F
+GLIBC_2.2.6 towctrans F
+GLIBC_2.2.6 towlower F
+GLIBC_2.2.6 towupper F
+GLIBC_2.2.6 tr_break F
+GLIBC_2.2.6 truncate F
+GLIBC_2.2.6 truncate64 F
+GLIBC_2.2.6 tsearch F
+GLIBC_2.2.6 ttyname F
+GLIBC_2.2.6 ttyname_r F
+GLIBC_2.2.6 ttyslot F
+GLIBC_2.2.6 twalk F
+GLIBC_2.2.6 tzname D 0x8
+GLIBC_2.2.6 tzset F
+GLIBC_2.2.6 ualarm F
+GLIBC_2.2.6 ulckpwdf F
+GLIBC_2.2.6 ulimit F
+GLIBC_2.2.6 umask F
+GLIBC_2.2.6 uname F
+GLIBC_2.2.6 ungetc F
+GLIBC_2.2.6 ungetwc F
+GLIBC_2.2.6 unlink F
+GLIBC_2.2.6 unlockpt F
+GLIBC_2.2.6 unsetenv F
+GLIBC_2.2.6 updwtmp F
+GLIBC_2.2.6 updwtmpx F
+GLIBC_2.2.6 user2netname F
+GLIBC_2.2.6 usleep F
+GLIBC_2.2.6 ustat F
+GLIBC_2.2.6 utime F
+GLIBC_2.2.6 utimes F
+GLIBC_2.2.6 utmpname F
+GLIBC_2.2.6 utmpxname F
+GLIBC_2.2.6 valloc F
+GLIBC_2.2.6 vasprintf F
+GLIBC_2.2.6 vdprintf F
+GLIBC_2.2.6 verr F
+GLIBC_2.2.6 verrx F
+GLIBC_2.2.6 versionsort F
+GLIBC_2.2.6 versionsort64 F
+GLIBC_2.2.6 vfork F
+GLIBC_2.2.6 vfprintf F
+GLIBC_2.2.6 vfscanf F
+GLIBC_2.2.6 vfwprintf F
+GLIBC_2.2.6 vfwscanf F
+GLIBC_2.2.6 vhangup F
+GLIBC_2.2.6 vlimit F
+GLIBC_2.2.6 vm_allocate F
+GLIBC_2.2.6 vm_deallocate F
+GLIBC_2.2.6 vm_map F
+GLIBC_2.2.6 vm_page_size D 0x4
+GLIBC_2.2.6 vpprintf F
+GLIBC_2.2.6 vprintf F
+GLIBC_2.2.6 vscanf F
+GLIBC_2.2.6 vsnprintf F
+GLIBC_2.2.6 vsprintf F
+GLIBC_2.2.6 vsscanf F
+GLIBC_2.2.6 vswprintf F
+GLIBC_2.2.6 vswscanf F
+GLIBC_2.2.6 vsyslog F
+GLIBC_2.2.6 vtimes F
+GLIBC_2.2.6 vwarn F
+GLIBC_2.2.6 vwarnx F
+GLIBC_2.2.6 vwprintf F
+GLIBC_2.2.6 vwscanf F
+GLIBC_2.2.6 wait F
+GLIBC_2.2.6 wait3 F
+GLIBC_2.2.6 wait4 F
+GLIBC_2.2.6 waitid F
+GLIBC_2.2.6 waitpid F
+GLIBC_2.2.6 warn F
+GLIBC_2.2.6 warnx F
+GLIBC_2.2.6 wcpcpy F
+GLIBC_2.2.6 wcpncpy F
+GLIBC_2.2.6 wcrtomb F
+GLIBC_2.2.6 wcscasecmp F
+GLIBC_2.2.6 wcscat F
+GLIBC_2.2.6 wcschr F
+GLIBC_2.2.6 wcschrnul F
+GLIBC_2.2.6 wcscmp F
+GLIBC_2.2.6 wcscoll F
+GLIBC_2.2.6 wcscpy F
+GLIBC_2.2.6 wcscspn F
+GLIBC_2.2.6 wcsdup F
+GLIBC_2.2.6 wcsftime F
+GLIBC_2.2.6 wcslen F
+GLIBC_2.2.6 wcsncasecmp F
+GLIBC_2.2.6 wcsncat F
+GLIBC_2.2.6 wcsncmp F
+GLIBC_2.2.6 wcsncpy F
+GLIBC_2.2.6 wcsnlen F
+GLIBC_2.2.6 wcsnrtombs F
+GLIBC_2.2.6 wcspbrk F
+GLIBC_2.2.6 wcsrchr F
+GLIBC_2.2.6 wcsrtombs F
+GLIBC_2.2.6 wcsspn F
+GLIBC_2.2.6 wcsstr F
+GLIBC_2.2.6 wcstod F
+GLIBC_2.2.6 wcstof F
+GLIBC_2.2.6 wcstoimax F
+GLIBC_2.2.6 wcstok F
+GLIBC_2.2.6 wcstol F
+GLIBC_2.2.6 wcstold F
+GLIBC_2.2.6 wcstoll F
+GLIBC_2.2.6 wcstombs F
+GLIBC_2.2.6 wcstoq F
+GLIBC_2.2.6 wcstoul F
+GLIBC_2.2.6 wcstoull F
+GLIBC_2.2.6 wcstoumax F
+GLIBC_2.2.6 wcstouq F
+GLIBC_2.2.6 wcswcs F
+GLIBC_2.2.6 wcswidth F
+GLIBC_2.2.6 wcsxfrm F
+GLIBC_2.2.6 wctob F
+GLIBC_2.2.6 wctomb F
+GLIBC_2.2.6 wctrans F
+GLIBC_2.2.6 wctype F
+GLIBC_2.2.6 wcwidth F
+GLIBC_2.2.6 wmemchr F
+GLIBC_2.2.6 wmemcmp F
+GLIBC_2.2.6 wmemcpy F
+GLIBC_2.2.6 wmemmove F
+GLIBC_2.2.6 wmempcpy F
+GLIBC_2.2.6 wmemset F
+GLIBC_2.2.6 wordexp F
+GLIBC_2.2.6 wordfree F
+GLIBC_2.2.6 wprintf F
+GLIBC_2.2.6 write F
+GLIBC_2.2.6 writev F
+GLIBC_2.2.6 wscanf F
+GLIBC_2.2.6 xdecrypt F
+GLIBC_2.2.6 xdr_accepted_reply F
+GLIBC_2.2.6 xdr_array F
+GLIBC_2.2.6 xdr_authdes_cred F
+GLIBC_2.2.6 xdr_authdes_verf F
+GLIBC_2.2.6 xdr_authunix_parms F
+GLIBC_2.2.6 xdr_bool F
+GLIBC_2.2.6 xdr_bytes F
+GLIBC_2.2.6 xdr_callhdr F
+GLIBC_2.2.6 xdr_callmsg F
+GLIBC_2.2.6 xdr_char F
+GLIBC_2.2.6 xdr_cryptkeyarg F
+GLIBC_2.2.6 xdr_cryptkeyarg2 F
+GLIBC_2.2.6 xdr_cryptkeyres F
+GLIBC_2.2.6 xdr_des_block F
+GLIBC_2.2.6 xdr_double F
+GLIBC_2.2.6 xdr_enum F
+GLIBC_2.2.6 xdr_float F
+GLIBC_2.2.6 xdr_free F
+GLIBC_2.2.6 xdr_getcredres F
+GLIBC_2.2.6 xdr_hyper F
+GLIBC_2.2.6 xdr_int F
+GLIBC_2.2.6 xdr_int16_t F
+GLIBC_2.2.6 xdr_int32_t F
+GLIBC_2.2.6 xdr_int64_t F
+GLIBC_2.2.6 xdr_int8_t F
+GLIBC_2.2.6 xdr_key_netstarg F
+GLIBC_2.2.6 xdr_key_netstres F
+GLIBC_2.2.6 xdr_keybuf F
+GLIBC_2.2.6 xdr_keystatus F
+GLIBC_2.2.6 xdr_long F
+GLIBC_2.2.6 xdr_longlong_t F
+GLIBC_2.2.6 xdr_netnamestr F
+GLIBC_2.2.6 xdr_netobj F
+GLIBC_2.2.6 xdr_opaque F
+GLIBC_2.2.6 xdr_opaque_auth F
+GLIBC_2.2.6 xdr_pmap F
+GLIBC_2.2.6 xdr_pmaplist F
+GLIBC_2.2.6 xdr_pointer F
+GLIBC_2.2.6 xdr_reference F
+GLIBC_2.2.6 xdr_rejected_reply F
+GLIBC_2.2.6 xdr_replymsg F
+GLIBC_2.2.6 xdr_rmtcall_args F
+GLIBC_2.2.6 xdr_rmtcallres F
+GLIBC_2.2.6 xdr_short F
+GLIBC_2.2.6 xdr_sizeof F
+GLIBC_2.2.6 xdr_string F
+GLIBC_2.2.6 xdr_u_char F
+GLIBC_2.2.6 xdr_u_hyper F
+GLIBC_2.2.6 xdr_u_int F
+GLIBC_2.2.6 xdr_u_long F
+GLIBC_2.2.6 xdr_u_longlong_t F
+GLIBC_2.2.6 xdr_u_short F
+GLIBC_2.2.6 xdr_uint16_t F
+GLIBC_2.2.6 xdr_uint32_t F
+GLIBC_2.2.6 xdr_uint64_t F
+GLIBC_2.2.6 xdr_uint8_t F
+GLIBC_2.2.6 xdr_union F
+GLIBC_2.2.6 xdr_unixcred F
+GLIBC_2.2.6 xdr_vector F
+GLIBC_2.2.6 xdr_void F
+GLIBC_2.2.6 xdr_wrapstring F
+GLIBC_2.2.6 xdrmem_create F
+GLIBC_2.2.6 xdrrec_create F
+GLIBC_2.2.6 xdrrec_endofrecord F
+GLIBC_2.2.6 xdrrec_eof F
+GLIBC_2.2.6 xdrrec_skiprecord F
+GLIBC_2.2.6 xdrstdio_create F
+GLIBC_2.2.6 xencrypt F
+GLIBC_2.2.6 xprt_register F
+GLIBC_2.2.6 xprt_unregister F
+GLIBC_2.21 __mach_host_self_ D 0x4
+GLIBC_2.21 __pthread_get_cleanup_stack F
+GLIBC_2.21 pthread_attr_destroy F
+GLIBC_2.21 pthread_attr_getdetachstate F
+GLIBC_2.21 pthread_attr_getinheritsched F
+GLIBC_2.21 pthread_attr_getschedparam F
+GLIBC_2.21 pthread_attr_getschedpolicy F
+GLIBC_2.21 pthread_attr_getscope F
+GLIBC_2.21 pthread_attr_init F
+GLIBC_2.21 pthread_attr_setdetachstate F
+GLIBC_2.21 pthread_attr_setinheritsched F
+GLIBC_2.21 pthread_attr_setschedparam F
+GLIBC_2.21 pthread_attr_setschedpolicy F
+GLIBC_2.21 pthread_attr_setscope F
+GLIBC_2.21 pthread_cond_broadcast F
+GLIBC_2.21 pthread_cond_destroy F
+GLIBC_2.21 pthread_cond_init F
+GLIBC_2.21 pthread_cond_signal F
+GLIBC_2.21 pthread_cond_timedwait F
+GLIBC_2.21 pthread_cond_wait F
+GLIBC_2.21 pthread_condattr_destroy F
+GLIBC_2.21 pthread_condattr_init F
+GLIBC_2.21 pthread_equal F
+GLIBC_2.21 pthread_exit F
+GLIBC_2.21 pthread_getschedparam F
+GLIBC_2.21 pthread_mutex_destroy F
+GLIBC_2.21 pthread_mutex_init F
+GLIBC_2.21 pthread_mutex_lock F
+GLIBC_2.21 pthread_mutex_unlock F
+GLIBC_2.21 pthread_self F
+GLIBC_2.21 pthread_setcancelstate F
+GLIBC_2.21 pthread_setcanceltype F
+GLIBC_2.21 pthread_setschedparam F
+GLIBC_2.22 __register_atfork F
+GLIBC_2.22 fmemopen F
+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 quick_exit F
+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 gnu_dev_major F
+GLIBC_2.25 gnu_dev_makedev F
+GLIBC_2.25 gnu_dev_minor F
+GLIBC_2.25 strfromd F
+GLIBC_2.25 strfromf F
+GLIBC_2.25 strfroml F
+GLIBC_2.26 __strtof128_internal F
+GLIBC_2.26 __wcstof128_internal F
+GLIBC_2.26 _hurd_exec_paths F
+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.26 strfromf128 F
+GLIBC_2.26 strtof128 F
+GLIBC_2.26 strtof128_l F
+GLIBC_2.26 wcstof128 F
+GLIBC_2.26 wcstof128_l F
+GLIBC_2.27 __hurd_dfail F
+GLIBC_2.27 __hurd_sockfail F
+GLIBC_2.27 _hurd_fd_error F
+GLIBC_2.27 _hurd_fd_error_signal F
+GLIBC_2.27 _hurd_port_locked_set F
+GLIBC_2.27 _hurd_userlink_clear F
+GLIBC_2.27 _hurd_userlink_link F
+GLIBC_2.27 _hurd_userlink_unlink F
+GLIBC_2.27 copy_file_range F
+GLIBC_2.27 glob F
+GLIBC_2.27 glob64 F
+GLIBC_2.27 strfromf32 F
+GLIBC_2.27 strfromf32x F
+GLIBC_2.27 strfromf64 F
+GLIBC_2.27 strfromf64x F
+GLIBC_2.27 strtof32 F
+GLIBC_2.27 strtof32_l F
+GLIBC_2.27 strtof32x F
+GLIBC_2.27 strtof32x_l F
+GLIBC_2.27 strtof64 F
+GLIBC_2.27 strtof64_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
+GLIBC_2.27 wcstof32 F
+GLIBC_2.27 wcstof32_l F
+GLIBC_2.27 wcstof32x F
+GLIBC_2.27 wcstof32x_l F
+GLIBC_2.27 wcstof64 F
+GLIBC_2.27 wcstof64_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
+GLIBC_2.28 fcntl64 F
+GLIBC_2.28 renameat2 F
+GLIBC_2.28 statx F
+GLIBC_2.3 __ctype_b_loc F
+GLIBC_2.3 __ctype_tolower_loc F
+GLIBC_2.3 __ctype_toupper_loc F
+GLIBC_2.3 __isctype F
+GLIBC_2.3 __strftime_l F
+GLIBC_2.3 __uselocale F
+GLIBC_2.3 __wcsftime_l F
+GLIBC_2.3 duplocale F
+GLIBC_2.3 fgetxattr F
+GLIBC_2.3 flistxattr F
+GLIBC_2.3 freeifaddrs F
+GLIBC_2.3 freelocale F
+GLIBC_2.3 fremovexattr F
+GLIBC_2.3 fsetxattr F
+GLIBC_2.3 futimes F
+GLIBC_2.3 getifaddrs F
+GLIBC_2.3 getxattr F
+GLIBC_2.3 isalnum_l F
+GLIBC_2.3 isalpha_l F
+GLIBC_2.3 isblank_l F
+GLIBC_2.3 iscntrl_l F
+GLIBC_2.3 isctype F
+GLIBC_2.3 isdigit_l F
+GLIBC_2.3 isgraph_l F
+GLIBC_2.3 islower_l F
+GLIBC_2.3 isprint_l F
+GLIBC_2.3 ispunct_l F
+GLIBC_2.3 isspace_l F
+GLIBC_2.3 isupper_l F
+GLIBC_2.3 iswalnum_l F
+GLIBC_2.3 iswalpha_l F
+GLIBC_2.3 iswblank_l F
+GLIBC_2.3 iswcntrl_l F
+GLIBC_2.3 iswctype_l F
+GLIBC_2.3 iswdigit_l F
+GLIBC_2.3 iswgraph_l F
+GLIBC_2.3 iswlower_l F
+GLIBC_2.3 iswprint_l F
+GLIBC_2.3 iswpunct_l F
+GLIBC_2.3 iswspace_l F
+GLIBC_2.3 iswupper_l F
+GLIBC_2.3 iswxdigit_l F
+GLIBC_2.3 isxdigit_l F
+GLIBC_2.3 lgetxattr F
+GLIBC_2.3 listxattr F
+GLIBC_2.3 llistxattr F
+GLIBC_2.3 lremovexattr F
+GLIBC_2.3 lsetxattr F
+GLIBC_2.3 lutimes F
+GLIBC_2.3 newlocale F
+GLIBC_2.3 nl_langinfo_l F
+GLIBC_2.3 realpath F
+GLIBC_2.3 removexattr F
+GLIBC_2.3 sendfile64 F
+GLIBC_2.3 setxattr F
+GLIBC_2.3 strcasecmp_l F
+GLIBC_2.3 strcoll_l F
+GLIBC_2.3 strfmon_l F
+GLIBC_2.3 strftime_l F
+GLIBC_2.3 strncasecmp_l F
+GLIBC_2.3 strtod_l F
+GLIBC_2.3 strtof_l F
+GLIBC_2.3 strtol_l F
+GLIBC_2.3 strtold_l F
+GLIBC_2.3 strtoll_l F
+GLIBC_2.3 strtoul_l F
+GLIBC_2.3 strtoull_l F
+GLIBC_2.3 strxfrm_l F
+GLIBC_2.3 tolower_l F
+GLIBC_2.3 toupper_l F
+GLIBC_2.3 towctrans_l F
+GLIBC_2.3 towlower_l F
+GLIBC_2.3 towupper_l F
+GLIBC_2.3 uselocale F
+GLIBC_2.3 wcscasecmp_l F
+GLIBC_2.3 wcscoll_l F
+GLIBC_2.3 wcsftime_l F
+GLIBC_2.3 wcsncasecmp_l F
+GLIBC_2.3 wcstod_l F
+GLIBC_2.3 wcstof_l F
+GLIBC_2.3 wcstol_l F
+GLIBC_2.3 wcstold_l F
+GLIBC_2.3 wcstoll_l F
+GLIBC_2.3 wcstoul_l F
+GLIBC_2.3 wcstoull_l F
+GLIBC_2.3 wcsxfrm_l F
+GLIBC_2.3 wctrans_l F
+GLIBC_2.3 wctype_l F
+GLIBC_2.3.2 getresgid F
+GLIBC_2.3.2 getresuid F
+GLIBC_2.3.2 lchmod F
+GLIBC_2.3.2 setresgid F
+GLIBC_2.3.2 setresuid F
+GLIBC_2.3.2 strptime_l 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_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.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 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 __confstr_chk F
+GLIBC_2.4 __fgets_chk F
+GLIBC_2.4 __fgets_unlocked_chk F
+GLIBC_2.4 __fgetws_chk F
+GLIBC_2.4 __fgetws_unlocked_chk F
+GLIBC_2.4 __fwprintf_chk F
+GLIBC_2.4 __fxstatat F
+GLIBC_2.4 __fxstatat64 F
+GLIBC_2.4 __getcwd_chk F
+GLIBC_2.4 __getdomainname_chk F
+GLIBC_2.4 __getgroups_chk F
+GLIBC_2.4 __gethostname_chk F
+GLIBC_2.4 __getlogin_r_chk F
+GLIBC_2.4 __getwd_chk F
+GLIBC_2.4 __mbsnrtowcs_chk F
+GLIBC_2.4 __mbsrtowcs_chk F
+GLIBC_2.4 __mbstowcs_chk F
+GLIBC_2.4 __pread64_chk F
+GLIBC_2.4 __pread_chk F
+GLIBC_2.4 __ptsname_r_chk F
+GLIBC_2.4 __read_chk F
+GLIBC_2.4 __readlink_chk F
+GLIBC_2.4 __realpath_chk F
+GLIBC_2.4 __recv_chk F
+GLIBC_2.4 __recvfrom_chk F
+GLIBC_2.4 __stack_chk_fail F
+GLIBC_2.4 __stpncpy_chk F
+GLIBC_2.4 __swprintf_chk F
+GLIBC_2.4 __syslog_chk F
+GLIBC_2.4 __ttyname_r_chk F
+GLIBC_2.4 __vfwprintf_chk F
+GLIBC_2.4 __vswprintf_chk F
+GLIBC_2.4 __vsyslog_chk F
+GLIBC_2.4 __vwprintf_chk F
+GLIBC_2.4 __wcpcpy_chk F
+GLIBC_2.4 __wcpncpy_chk F
+GLIBC_2.4 __wcrtomb_chk F
+GLIBC_2.4 __wcscat_chk F
+GLIBC_2.4 __wcscpy_chk F
+GLIBC_2.4 __wcsncat_chk F
+GLIBC_2.4 __wcsncpy_chk F
+GLIBC_2.4 __wcsnrtombs_chk F
+GLIBC_2.4 __wcsrtombs_chk F
+GLIBC_2.4 __wcstombs_chk F
+GLIBC_2.4 __wctomb_chk F
+GLIBC_2.4 __wmemcpy_chk F
+GLIBC_2.4 __wmemmove_chk F
+GLIBC_2.4 __wmempcpy_chk F
+GLIBC_2.4 __wmemset_chk F
+GLIBC_2.4 __wprintf_chk F
+GLIBC_2.4 __xmknodat F
+GLIBC_2.4 eaccess F
+GLIBC_2.4 faccessat F
+GLIBC_2.4 fchmodat F
+GLIBC_2.4 fchownat F
+GLIBC_2.4 fdopendir F
+GLIBC_2.4 futimesat F
+GLIBC_2.4 linkat F
+GLIBC_2.4 mkdirat F
+GLIBC_2.4 mkfifoat F
+GLIBC_2.4 open_wmemstream F
+GLIBC_2.4 openat F
+GLIBC_2.4 openat64 F
+GLIBC_2.4 ppoll F
+GLIBC_2.4 readlinkat F
+GLIBC_2.4 renameat F
+GLIBC_2.4 symlinkat F
+GLIBC_2.4 unlinkat F
+GLIBC_2.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.6 __sched_cpucount F
+GLIBC_2.6 futimens F
+GLIBC_2.6 strerror_l F
+GLIBC_2.6 utimensat F
+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 mkostemp F
+GLIBC_2.7 mkostemp64 F
+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.9 dup3 F
+GLIBC_2.9 pipe2 F
+HURD_CTHREADS_0.3 __cthread_getspecific F
+HURD_CTHREADS_0.3 __cthread_keycreate F
+HURD_CTHREADS_0.3 __cthread_setspecific F
+HURD_CTHREADS_0.3 __mutex_init F
+HURD_CTHREADS_0.3 __mutex_lock F
+HURD_CTHREADS_0.3 __mutex_lock_solid F
+HURD_CTHREADS_0.3 __mutex_trylock F
+HURD_CTHREADS_0.3 __mutex_unlock F
+HURD_CTHREADS_0.3 __mutex_unlock_solid F
+HURD_CTHREADS_0.3 __spin_lock F
+HURD_CTHREADS_0.3 __spin_lock_init F
+HURD_CTHREADS_0.3 __spin_lock_solid F
+HURD_CTHREADS_0.3 __spin_try_lock F
+HURD_CTHREADS_0.3 __spin_unlock F
+HURD_CTHREADS_0.3 _cthread_exit_routine D 0x4
diff --git a/sysdeps/mach/hurd/i386/libcrypt.abilist b/sysdeps/mach/hurd/i386/libcrypt.abilist
new file mode 100644
index 0000000000..5cd9b78d1e
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libcrypt.abilist
@@ -0,0 +1,7 @@
+GLIBC_2.2.6 crypt F
+GLIBC_2.2.6 crypt_r F
+GLIBC_2.2.6 encrypt F
+GLIBC_2.2.6 encrypt_r F
+GLIBC_2.2.6 fcrypt F
+GLIBC_2.2.6 setkey F
+GLIBC_2.2.6 setkey_r F
diff --git a/sysdeps/mach/hurd/i386/libdl.abilist b/sysdeps/mach/hurd/i386/libdl.abilist
new file mode 100644
index 0000000000..27d133bb7b
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libdl.abilist
@@ -0,0 +1,9 @@
+GLIBC_2.2.6 dladdr F
+GLIBC_2.2.6 dlclose F
+GLIBC_2.2.6 dlerror F
+GLIBC_2.2.6 dlopen F
+GLIBC_2.2.6 dlsym F
+GLIBC_2.2.6 dlvsym F
+GLIBC_2.3.3 dladdr1 F
+GLIBC_2.3.3 dlinfo F
+GLIBC_2.3.4 dlmopen F
diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist
new file mode 100644
index 0000000000..fd0a277bdc
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libm.abilist
@@ -0,0 +1,1070 @@
+GLIBC_2.15 __acos_finite F
+GLIBC_2.15 __acosf_finite F
+GLIBC_2.15 __acosh_finite F
+GLIBC_2.15 __acoshf_finite F
+GLIBC_2.15 __acoshl_finite F
+GLIBC_2.15 __acosl_finite F
+GLIBC_2.15 __asin_finite F
+GLIBC_2.15 __asinf_finite F
+GLIBC_2.15 __asinl_finite F
+GLIBC_2.15 __atan2_finite F
+GLIBC_2.15 __atan2f_finite F
+GLIBC_2.15 __atan2l_finite F
+GLIBC_2.15 __atanh_finite F
+GLIBC_2.15 __atanhf_finite F
+GLIBC_2.15 __atanhl_finite F
+GLIBC_2.15 __cosh_finite F
+GLIBC_2.15 __coshf_finite F
+GLIBC_2.15 __coshl_finite F
+GLIBC_2.15 __exp10_finite F
+GLIBC_2.15 __exp10f_finite F
+GLIBC_2.15 __exp10l_finite F
+GLIBC_2.15 __exp2_finite F
+GLIBC_2.15 __exp2f_finite F
+GLIBC_2.15 __exp2l_finite F
+GLIBC_2.15 __exp_finite F
+GLIBC_2.15 __expf_finite F
+GLIBC_2.15 __expl_finite F
+GLIBC_2.15 __fmod_finite F
+GLIBC_2.15 __fmodf_finite F
+GLIBC_2.15 __fmodl_finite F
+GLIBC_2.15 __gamma_r_finite F
+GLIBC_2.15 __gammaf_r_finite F
+GLIBC_2.15 __gammal_r_finite F
+GLIBC_2.15 __hypot_finite F
+GLIBC_2.15 __hypotf_finite F
+GLIBC_2.15 __hypotl_finite F
+GLIBC_2.15 __j0_finite F
+GLIBC_2.15 __j0f_finite F
+GLIBC_2.15 __j0l_finite F
+GLIBC_2.15 __j1_finite F
+GLIBC_2.15 __j1f_finite F
+GLIBC_2.15 __j1l_finite F
+GLIBC_2.15 __jn_finite F
+GLIBC_2.15 __jnf_finite F
+GLIBC_2.15 __jnl_finite F
+GLIBC_2.15 __lgamma_r_finite F
+GLIBC_2.15 __lgammaf_r_finite F
+GLIBC_2.15 __lgammal_r_finite F
+GLIBC_2.15 __log10_finite F
+GLIBC_2.15 __log10f_finite F
+GLIBC_2.15 __log10l_finite F
+GLIBC_2.15 __log2_finite F
+GLIBC_2.15 __log2f_finite F
+GLIBC_2.15 __log2l_finite F
+GLIBC_2.15 __log_finite F
+GLIBC_2.15 __logf_finite F
+GLIBC_2.15 __logl_finite F
+GLIBC_2.15 __pow_finite F
+GLIBC_2.15 __powf_finite F
+GLIBC_2.15 __powl_finite F
+GLIBC_2.15 __remainder_finite F
+GLIBC_2.15 __remainderf_finite F
+GLIBC_2.15 __remainderl_finite F
+GLIBC_2.15 __scalb_finite F
+GLIBC_2.15 __scalbf_finite F
+GLIBC_2.15 __scalbl_finite F
+GLIBC_2.15 __sinh_finite F
+GLIBC_2.15 __sinhf_finite F
+GLIBC_2.15 __sinhl_finite F
+GLIBC_2.15 __sqrt_finite F
+GLIBC_2.15 __sqrtf_finite F
+GLIBC_2.15 __sqrtl_finite F
+GLIBC_2.15 __y0_finite F
+GLIBC_2.15 __y0f_finite F
+GLIBC_2.15 __y0l_finite F
+GLIBC_2.15 __y1_finite F
+GLIBC_2.15 __y1f_finite F
+GLIBC_2.15 __y1l_finite F
+GLIBC_2.15 __yn_finite F
+GLIBC_2.15 __ynf_finite F
+GLIBC_2.15 __ynl_finite F
+GLIBC_2.18 __issignaling F
+GLIBC_2.18 __issignalingf F
+GLIBC_2.18 __issignalingl F
+GLIBC_2.2.6 _LIB_VERSION D 0x4
+GLIBC_2.2.6 __clog10 F
+GLIBC_2.2.6 __clog10f F
+GLIBC_2.2.6 __clog10l F
+GLIBC_2.2.6 __expl F
+GLIBC_2.2.6 __expm1l F
+GLIBC_2.2.6 __finite F
+GLIBC_2.2.6 __finitef F
+GLIBC_2.2.6 __finitel F
+GLIBC_2.2.6 __fpclassify F
+GLIBC_2.2.6 __fpclassifyf F
+GLIBC_2.2.6 __fpclassifyl F
+GLIBC_2.2.6 __signbit F
+GLIBC_2.2.6 __signbitf F
+GLIBC_2.2.6 __signbitl F
+GLIBC_2.2.6 acos F
+GLIBC_2.2.6 acosf F
+GLIBC_2.2.6 acosh F
+GLIBC_2.2.6 acoshf F
+GLIBC_2.2.6 acoshl F
+GLIBC_2.2.6 acosl F
+GLIBC_2.2.6 asin F
+GLIBC_2.2.6 asinf F
+GLIBC_2.2.6 asinh F
+GLIBC_2.2.6 asinhf F
+GLIBC_2.2.6 asinhl F
+GLIBC_2.2.6 asinl F
+GLIBC_2.2.6 atan F
+GLIBC_2.2.6 atan2 F
+GLIBC_2.2.6 atan2f F
+GLIBC_2.2.6 atan2l F
+GLIBC_2.2.6 atanf F
+GLIBC_2.2.6 atanh F
+GLIBC_2.2.6 atanhf F
+GLIBC_2.2.6 atanhl F
+GLIBC_2.2.6 atanl F
+GLIBC_2.2.6 cabs F
+GLIBC_2.2.6 cabsf F
+GLIBC_2.2.6 cabsl F
+GLIBC_2.2.6 cacos F
+GLIBC_2.2.6 cacosf F
+GLIBC_2.2.6 cacosh F
+GLIBC_2.2.6 cacoshf F
+GLIBC_2.2.6 cacoshl F
+GLIBC_2.2.6 cacosl F
+GLIBC_2.2.6 carg F
+GLIBC_2.2.6 cargf F
+GLIBC_2.2.6 cargl F
+GLIBC_2.2.6 casin F
+GLIBC_2.2.6 casinf F
+GLIBC_2.2.6 casinh F
+GLIBC_2.2.6 casinhf F
+GLIBC_2.2.6 casinhl F
+GLIBC_2.2.6 casinl F
+GLIBC_2.2.6 catan F
+GLIBC_2.2.6 catanf F
+GLIBC_2.2.6 catanh F
+GLIBC_2.2.6 catanhf F
+GLIBC_2.2.6 catanhl F
+GLIBC_2.2.6 catanl F
+GLIBC_2.2.6 cbrt F
+GLIBC_2.2.6 cbrtf F
+GLIBC_2.2.6 cbrtl F
+GLIBC_2.2.6 ccos F
+GLIBC_2.2.6 ccosf F
+GLIBC_2.2.6 ccosh F
+GLIBC_2.2.6 ccoshf F
+GLIBC_2.2.6 ccoshl F
+GLIBC_2.2.6 ccosl F
+GLIBC_2.2.6 ceil F
+GLIBC_2.2.6 ceilf F
+GLIBC_2.2.6 ceill F
+GLIBC_2.2.6 cexp F
+GLIBC_2.2.6 cexpf F
+GLIBC_2.2.6 cexpl F
+GLIBC_2.2.6 cimag F
+GLIBC_2.2.6 cimagf F
+GLIBC_2.2.6 cimagl F
+GLIBC_2.2.6 clog F
+GLIBC_2.2.6 clog10 F
+GLIBC_2.2.6 clog10f F
+GLIBC_2.2.6 clog10l F
+GLIBC_2.2.6 clogf F
+GLIBC_2.2.6 clogl F
+GLIBC_2.2.6 conj F
+GLIBC_2.2.6 conjf F
+GLIBC_2.2.6 conjl F
+GLIBC_2.2.6 copysign F
+GLIBC_2.2.6 copysignf F
+GLIBC_2.2.6 copysignl F
+GLIBC_2.2.6 cos F
+GLIBC_2.2.6 cosf F
+GLIBC_2.2.6 cosh F
+GLIBC_2.2.6 coshf F
+GLIBC_2.2.6 coshl F
+GLIBC_2.2.6 cosl F
+GLIBC_2.2.6 cpow F
+GLIBC_2.2.6 cpowf F
+GLIBC_2.2.6 cpowl F
+GLIBC_2.2.6 cproj F
+GLIBC_2.2.6 cprojf F
+GLIBC_2.2.6 cprojl F
+GLIBC_2.2.6 creal F
+GLIBC_2.2.6 crealf F
+GLIBC_2.2.6 creall F
+GLIBC_2.2.6 csin F
+GLIBC_2.2.6 csinf F
+GLIBC_2.2.6 csinh F
+GLIBC_2.2.6 csinhf F
+GLIBC_2.2.6 csinhl F
+GLIBC_2.2.6 csinl F
+GLIBC_2.2.6 csqrt F
+GLIBC_2.2.6 csqrtf F
+GLIBC_2.2.6 csqrtl F
+GLIBC_2.2.6 ctan F
+GLIBC_2.2.6 ctanf F
+GLIBC_2.2.6 ctanh F
+GLIBC_2.2.6 ctanhf F
+GLIBC_2.2.6 ctanhl F
+GLIBC_2.2.6 ctanl F
+GLIBC_2.2.6 drem F
+GLIBC_2.2.6 dremf F
+GLIBC_2.2.6 dreml F
+GLIBC_2.2.6 erf F
+GLIBC_2.2.6 erfc F
+GLIBC_2.2.6 erfcf F
+GLIBC_2.2.6 erfcl F
+GLIBC_2.2.6 erff F
+GLIBC_2.2.6 erfl F
+GLIBC_2.2.6 exp F
+GLIBC_2.2.6 exp10 F
+GLIBC_2.2.6 exp10f F
+GLIBC_2.2.6 exp10l F
+GLIBC_2.2.6 exp2 F
+GLIBC_2.2.6 exp2f F
+GLIBC_2.2.6 exp2l F
+GLIBC_2.2.6 expf F
+GLIBC_2.2.6 expl F
+GLIBC_2.2.6 expm1 F
+GLIBC_2.2.6 expm1f F
+GLIBC_2.2.6 expm1l F
+GLIBC_2.2.6 fabs F
+GLIBC_2.2.6 fabsf F
+GLIBC_2.2.6 fabsl F
+GLIBC_2.2.6 fdim F
+GLIBC_2.2.6 fdimf F
+GLIBC_2.2.6 fdiml F
+GLIBC_2.2.6 feclearexcept F
+GLIBC_2.2.6 fedisableexcept F
+GLIBC_2.2.6 feenableexcept F
+GLIBC_2.2.6 fegetenv F
+GLIBC_2.2.6 fegetexcept F
+GLIBC_2.2.6 fegetexceptflag F
+GLIBC_2.2.6 fegetround F
+GLIBC_2.2.6 feholdexcept F
+GLIBC_2.2.6 feraiseexcept F
+GLIBC_2.2.6 fesetenv F
+GLIBC_2.2.6 fesetexceptflag F
+GLIBC_2.2.6 fesetround F
+GLIBC_2.2.6 fetestexcept F
+GLIBC_2.2.6 feupdateenv F
+GLIBC_2.2.6 finite F
+GLIBC_2.2.6 finitef F
+GLIBC_2.2.6 finitel F
+GLIBC_2.2.6 floor F
+GLIBC_2.2.6 floorf F
+GLIBC_2.2.6 floorl F
+GLIBC_2.2.6 fma F
+GLIBC_2.2.6 fmaf F
+GLIBC_2.2.6 fmal F
+GLIBC_2.2.6 fmax F
+GLIBC_2.2.6 fmaxf F
+GLIBC_2.2.6 fmaxl F
+GLIBC_2.2.6 fmin F
+GLIBC_2.2.6 fminf F
+GLIBC_2.2.6 fminl F
+GLIBC_2.2.6 fmod F
+GLIBC_2.2.6 fmodf F
+GLIBC_2.2.6 fmodl F
+GLIBC_2.2.6 frexp F
+GLIBC_2.2.6 frexpf F
+GLIBC_2.2.6 frexpl F
+GLIBC_2.2.6 gamma F
+GLIBC_2.2.6 gammaf F
+GLIBC_2.2.6 gammal F
+GLIBC_2.2.6 hypot F
+GLIBC_2.2.6 hypotf F
+GLIBC_2.2.6 hypotl F
+GLIBC_2.2.6 ilogb F
+GLIBC_2.2.6 ilogbf F
+GLIBC_2.2.6 ilogbl F
+GLIBC_2.2.6 j0 F
+GLIBC_2.2.6 j0f F
+GLIBC_2.2.6 j0l F
+GLIBC_2.2.6 j1 F
+GLIBC_2.2.6 j1f F
+GLIBC_2.2.6 j1l F
+GLIBC_2.2.6 jn F
+GLIBC_2.2.6 jnf F
+GLIBC_2.2.6 jnl F
+GLIBC_2.2.6 ldexp F
+GLIBC_2.2.6 ldexpf F
+GLIBC_2.2.6 ldexpl F
+GLIBC_2.2.6 lgamma F
+GLIBC_2.2.6 lgamma_r F
+GLIBC_2.2.6 lgammaf F
+GLIBC_2.2.6 lgammaf_r F
+GLIBC_2.2.6 lgammal F
+GLIBC_2.2.6 lgammal_r F
+GLIBC_2.2.6 llrint F
+GLIBC_2.2.6 llrintf F
+GLIBC_2.2.6 llrintl F
+GLIBC_2.2.6 llround F
+GLIBC_2.2.6 llroundf F
+GLIBC_2.2.6 llroundl F
+GLIBC_2.2.6 log F
+GLIBC_2.2.6 log10 F
+GLIBC_2.2.6 log10f F
+GLIBC_2.2.6 log10l F
+GLIBC_2.2.6 log1p F
+GLIBC_2.2.6 log1pf F
+GLIBC_2.2.6 log1pl F
+GLIBC_2.2.6 log2 F
+GLIBC_2.2.6 log2f F
+GLIBC_2.2.6 log2l F
+GLIBC_2.2.6 logb F
+GLIBC_2.2.6 logbf F
+GLIBC_2.2.6 logbl F
+GLIBC_2.2.6 logf F
+GLIBC_2.2.6 logl F
+GLIBC_2.2.6 lrint F
+GLIBC_2.2.6 lrintf F
+GLIBC_2.2.6 lrintl F
+GLIBC_2.2.6 lround F
+GLIBC_2.2.6 lroundf F
+GLIBC_2.2.6 lroundl F
+GLIBC_2.2.6 matherr F
+GLIBC_2.2.6 modf F
+GLIBC_2.2.6 modff F
+GLIBC_2.2.6 modfl F
+GLIBC_2.2.6 nan F
+GLIBC_2.2.6 nanf F
+GLIBC_2.2.6 nanl F
+GLIBC_2.2.6 nearbyint F
+GLIBC_2.2.6 nearbyintf F
+GLIBC_2.2.6 nearbyintl F
+GLIBC_2.2.6 nextafter F
+GLIBC_2.2.6 nextafterf F
+GLIBC_2.2.6 nextafterl F
+GLIBC_2.2.6 nexttoward F
+GLIBC_2.2.6 nexttowardf F
+GLIBC_2.2.6 nexttowardl F
+GLIBC_2.2.6 pow F
+GLIBC_2.2.6 pow10 F
+GLIBC_2.2.6 pow10f F
+GLIBC_2.2.6 pow10l F
+GLIBC_2.2.6 powf F
+GLIBC_2.2.6 powl F
+GLIBC_2.2.6 remainder F
+GLIBC_2.2.6 remainderf F
+GLIBC_2.2.6 remainderl F
+GLIBC_2.2.6 remquo F
+GLIBC_2.2.6 remquof F
+GLIBC_2.2.6 remquol F
+GLIBC_2.2.6 rint F
+GLIBC_2.2.6 rintf F
+GLIBC_2.2.6 rintl F
+GLIBC_2.2.6 round F
+GLIBC_2.2.6 roundf F
+GLIBC_2.2.6 roundl F
+GLIBC_2.2.6 scalb F
+GLIBC_2.2.6 scalbf F
+GLIBC_2.2.6 scalbl F
+GLIBC_2.2.6 scalbln F
+GLIBC_2.2.6 scalblnf F
+GLIBC_2.2.6 scalblnl F
+GLIBC_2.2.6 scalbn F
+GLIBC_2.2.6 scalbnf F
+GLIBC_2.2.6 scalbnl F
+GLIBC_2.2.6 signgam D 0x4
+GLIBC_2.2.6 significand F
+GLIBC_2.2.6 significandf F
+GLIBC_2.2.6 significandl F
+GLIBC_2.2.6 sin F
+GLIBC_2.2.6 sincos F
+GLIBC_2.2.6 sincosf F
+GLIBC_2.2.6 sincosl F
+GLIBC_2.2.6 sinf F
+GLIBC_2.2.6 sinh F
+GLIBC_2.2.6 sinhf F
+GLIBC_2.2.6 sinhl F
+GLIBC_2.2.6 sinl F
+GLIBC_2.2.6 sqrt F
+GLIBC_2.2.6 sqrtf F
+GLIBC_2.2.6 sqrtl F
+GLIBC_2.2.6 tan F
+GLIBC_2.2.6 tanf F
+GLIBC_2.2.6 tanh F
+GLIBC_2.2.6 tanhf F
+GLIBC_2.2.6 tanhl F
+GLIBC_2.2.6 tanl F
+GLIBC_2.2.6 tgamma F
+GLIBC_2.2.6 tgammaf F
+GLIBC_2.2.6 tgammal F
+GLIBC_2.2.6 trunc F
+GLIBC_2.2.6 truncf F
+GLIBC_2.2.6 truncl F
+GLIBC_2.2.6 y0 F
+GLIBC_2.2.6 y0f F
+GLIBC_2.2.6 y0l F
+GLIBC_2.2.6 y1 F
+GLIBC_2.2.6 y1f F
+GLIBC_2.2.6 y1l F
+GLIBC_2.2.6 yn F
+GLIBC_2.2.6 ynf F
+GLIBC_2.2.6 ynl F
+GLIBC_2.23 __signgam D 0x4
+GLIBC_2.23 lgamma F
+GLIBC_2.23 lgammaf F
+GLIBC_2.23 lgammal F
+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 __iscanonicall F
+GLIBC_2.25 __iseqsig F
+GLIBC_2.25 __iseqsigf F
+GLIBC_2.25 __iseqsigl F
+GLIBC_2.25 canonicalize F
+GLIBC_2.25 canonicalizef F
+GLIBC_2.25 canonicalizel F
+GLIBC_2.25 fegetmode F
+GLIBC_2.25 fesetexcept F
+GLIBC_2.25 fesetmode F
+GLIBC_2.25 fetestexceptflag F
+GLIBC_2.25 fmaxmag F
+GLIBC_2.25 fmaxmagf F
+GLIBC_2.25 fmaxmagl F
+GLIBC_2.25 fminmag F
+GLIBC_2.25 fminmagf F
+GLIBC_2.25 fminmagl F
+GLIBC_2.25 fromfp F
+GLIBC_2.25 fromfpf F
+GLIBC_2.25 fromfpl F
+GLIBC_2.25 fromfpx F
+GLIBC_2.25 fromfpxf F
+GLIBC_2.25 fromfpxl F
+GLIBC_2.25 getpayload F
+GLIBC_2.25 getpayloadf F
+GLIBC_2.25 getpayloadl F
+GLIBC_2.25 llogb F
+GLIBC_2.25 llogbf F
+GLIBC_2.25 llogbl F
+GLIBC_2.25 roundeven F
+GLIBC_2.25 roundevenf F
+GLIBC_2.25 roundevenl F
+GLIBC_2.25 setpayload F
+GLIBC_2.25 setpayloadf F
+GLIBC_2.25 setpayloadl F
+GLIBC_2.25 setpayloadsig F
+GLIBC_2.25 setpayloadsigf F
+GLIBC_2.25 setpayloadsigl F
+GLIBC_2.25 totalorder F
+GLIBC_2.25 totalorderf F
+GLIBC_2.25 totalorderl F
+GLIBC_2.25 totalordermag F
+GLIBC_2.25 totalordermagf F
+GLIBC_2.25 totalordermagl F
+GLIBC_2.25 ufromfp F
+GLIBC_2.25 ufromfpf F
+GLIBC_2.25 ufromfpl F
+GLIBC_2.25 ufromfpx F
+GLIBC_2.25 ufromfpxf F
+GLIBC_2.25 ufromfpxl F
+GLIBC_2.26 __acosf128_finite F
+GLIBC_2.26 __acoshf128_finite F
+GLIBC_2.26 __asinf128_finite F
+GLIBC_2.26 __atan2f128_finite F
+GLIBC_2.26 __atanhf128_finite F
+GLIBC_2.26 __coshf128_finite F
+GLIBC_2.26 __exp10f128_finite F
+GLIBC_2.26 __exp2f128_finite F
+GLIBC_2.26 __expf128_finite F
+GLIBC_2.26 __finitef128 F
+GLIBC_2.26 __fmodf128_finite F
+GLIBC_2.26 __fpclassifyf128 F
+GLIBC_2.26 __gammaf128_r_finite F
+GLIBC_2.26 __hypotf128_finite F
+GLIBC_2.26 __iseqsigf128 F
+GLIBC_2.26 __isinff128 F
+GLIBC_2.26 __isnanf128 F
+GLIBC_2.26 __issignalingf128 F
+GLIBC_2.26 __j0f128_finite F
+GLIBC_2.26 __j1f128_finite F
+GLIBC_2.26 __jnf128_finite F
+GLIBC_2.26 __lgammaf128_r_finite F
+GLIBC_2.26 __log10f128_finite F
+GLIBC_2.26 __log2f128_finite F
+GLIBC_2.26 __logf128_finite F
+GLIBC_2.26 __powf128_finite F
+GLIBC_2.26 __remainderf128_finite F
+GLIBC_2.26 __signbitf128 F
+GLIBC_2.26 __sinhf128_finite F
+GLIBC_2.26 __sqrtf128_finite F
+GLIBC_2.26 __y0f128_finite F
+GLIBC_2.26 __y1f128_finite F
+GLIBC_2.26 __ynf128_finite F
+GLIBC_2.26 acosf128 F
+GLIBC_2.26 acoshf128 F
+GLIBC_2.26 asinf128 F
+GLIBC_2.26 asinhf128 F
+GLIBC_2.26 atan2f128 F
+GLIBC_2.26 atanf128 F
+GLIBC_2.26 atanhf128 F
+GLIBC_2.26 cabsf128 F
+GLIBC_2.26 cacosf128 F
+GLIBC_2.26 cacoshf128 F
+GLIBC_2.26 canonicalizef128 F
+GLIBC_2.26 cargf128 F
+GLIBC_2.26 casinf128 F
+GLIBC_2.26 casinhf128 F
+GLIBC_2.26 catanf128 F
+GLIBC_2.26 catanhf128 F
+GLIBC_2.26 cbrtf128 F
+GLIBC_2.26 ccosf128 F
+GLIBC_2.26 ccoshf128 F
+GLIBC_2.26 ceilf128 F
+GLIBC_2.26 cexpf128 F
+GLIBC_2.26 cimagf128 F
+GLIBC_2.26 clog10f128 F
+GLIBC_2.26 clogf128 F
+GLIBC_2.26 conjf128 F
+GLIBC_2.26 copysignf128 F
+GLIBC_2.26 cosf128 F
+GLIBC_2.26 coshf128 F
+GLIBC_2.26 cpowf128 F
+GLIBC_2.26 cprojf128 F
+GLIBC_2.26 crealf128 F
+GLIBC_2.26 csinf128 F
+GLIBC_2.26 csinhf128 F
+GLIBC_2.26 csqrtf128 F
+GLIBC_2.26 ctanf128 F
+GLIBC_2.26 ctanhf128 F
+GLIBC_2.26 erfcf128 F
+GLIBC_2.26 erff128 F
+GLIBC_2.26 exp10f128 F
+GLIBC_2.26 exp2f128 F
+GLIBC_2.26 expf128 F
+GLIBC_2.26 expm1f128 F
+GLIBC_2.26 fabsf128 F
+GLIBC_2.26 fdimf128 F
+GLIBC_2.26 floorf128 F
+GLIBC_2.26 fmaf128 F
+GLIBC_2.26 fmaxf128 F
+GLIBC_2.26 fmaxmagf128 F
+GLIBC_2.26 fminf128 F
+GLIBC_2.26 fminmagf128 F
+GLIBC_2.26 fmodf128 F
+GLIBC_2.26 frexpf128 F
+GLIBC_2.26 fromfpf128 F
+GLIBC_2.26 fromfpxf128 F
+GLIBC_2.26 getpayloadf128 F
+GLIBC_2.26 hypotf128 F
+GLIBC_2.26 ilogbf128 F
+GLIBC_2.26 j0f128 F
+GLIBC_2.26 j1f128 F
+GLIBC_2.26 jnf128 F
+GLIBC_2.26 ldexpf128 F
+GLIBC_2.26 lgammaf128 F
+GLIBC_2.26 lgammaf128_r F
+GLIBC_2.26 llogbf128 F
+GLIBC_2.26 llrintf128 F
+GLIBC_2.26 llroundf128 F
+GLIBC_2.26 log10f128 F
+GLIBC_2.26 log1pf128 F
+GLIBC_2.26 log2f128 F
+GLIBC_2.26 logbf128 F
+GLIBC_2.26 logf128 F
+GLIBC_2.26 lrintf128 F
+GLIBC_2.26 lroundf128 F
+GLIBC_2.26 modff128 F
+GLIBC_2.26 nanf128 F
+GLIBC_2.26 nearbyintf128 F
+GLIBC_2.26 nextafterf128 F
+GLIBC_2.26 nextdownf128 F
+GLIBC_2.26 nextupf128 F
+GLIBC_2.26 powf128 F
+GLIBC_2.26 remainderf128 F
+GLIBC_2.26 remquof128 F
+GLIBC_2.26 rintf128 F
+GLIBC_2.26 roundevenf128 F
+GLIBC_2.26 roundf128 F
+GLIBC_2.26 scalblnf128 F
+GLIBC_2.26 scalbnf128 F
+GLIBC_2.26 setpayloadf128 F
+GLIBC_2.26 setpayloadsigf128 F
+GLIBC_2.26 sincosf128 F
+GLIBC_2.26 sinf128 F
+GLIBC_2.26 sinhf128 F
+GLIBC_2.26 sqrtf128 F
+GLIBC_2.26 tanf128 F
+GLIBC_2.26 tanhf128 F
+GLIBC_2.26 tgammaf128 F
+GLIBC_2.26 totalorderf128 F
+GLIBC_2.26 totalordermagf128 F
+GLIBC_2.26 truncf128 F
+GLIBC_2.26 ufromfpf128 F
+GLIBC_2.26 ufromfpxf128 F
+GLIBC_2.26 y0f128 F
+GLIBC_2.26 y1f128 F
+GLIBC_2.26 ynf128 F
+GLIBC_2.27 acosf32 F
+GLIBC_2.27 acosf32x F
+GLIBC_2.27 acosf64 F
+GLIBC_2.27 acosf64x F
+GLIBC_2.27 acoshf32 F
+GLIBC_2.27 acoshf32x F
+GLIBC_2.27 acoshf64 F
+GLIBC_2.27 acoshf64x F
+GLIBC_2.27 asinf32 F
+GLIBC_2.27 asinf32x F
+GLIBC_2.27 asinf64 F
+GLIBC_2.27 asinf64x F
+GLIBC_2.27 asinhf32 F
+GLIBC_2.27 asinhf32x F
+GLIBC_2.27 asinhf64 F
+GLIBC_2.27 asinhf64x F
+GLIBC_2.27 atan2f32 F
+GLIBC_2.27 atan2f32x F
+GLIBC_2.27 atan2f64 F
+GLIBC_2.27 atan2f64x F
+GLIBC_2.27 atanf32 F
+GLIBC_2.27 atanf32x F
+GLIBC_2.27 atanf64 F
+GLIBC_2.27 atanf64x F
+GLIBC_2.27 atanhf32 F
+GLIBC_2.27 atanhf32x F
+GLIBC_2.27 atanhf64 F
+GLIBC_2.27 atanhf64x F
+GLIBC_2.27 cabsf32 F
+GLIBC_2.27 cabsf32x F
+GLIBC_2.27 cabsf64 F
+GLIBC_2.27 cabsf64x F
+GLIBC_2.27 cacosf32 F
+GLIBC_2.27 cacosf32x F
+GLIBC_2.27 cacosf64 F
+GLIBC_2.27 cacosf64x F
+GLIBC_2.27 cacoshf32 F
+GLIBC_2.27 cacoshf32x F
+GLIBC_2.27 cacoshf64 F
+GLIBC_2.27 cacoshf64x F
+GLIBC_2.27 canonicalizef32 F
+GLIBC_2.27 canonicalizef32x F
+GLIBC_2.27 canonicalizef64 F
+GLIBC_2.27 canonicalizef64x F
+GLIBC_2.27 cargf32 F
+GLIBC_2.27 cargf32x F
+GLIBC_2.27 cargf64 F
+GLIBC_2.27 cargf64x F
+GLIBC_2.27 casinf32 F
+GLIBC_2.27 casinf32x F
+GLIBC_2.27 casinf64 F
+GLIBC_2.27 casinf64x F
+GLIBC_2.27 casinhf32 F
+GLIBC_2.27 casinhf32x F
+GLIBC_2.27 casinhf64 F
+GLIBC_2.27 casinhf64x F
+GLIBC_2.27 catanf32 F
+GLIBC_2.27 catanf32x F
+GLIBC_2.27 catanf64 F
+GLIBC_2.27 catanf64x F
+GLIBC_2.27 catanhf32 F
+GLIBC_2.27 catanhf32x F
+GLIBC_2.27 catanhf64 F
+GLIBC_2.27 catanhf64x F
+GLIBC_2.27 cbrtf32 F
+GLIBC_2.27 cbrtf32x F
+GLIBC_2.27 cbrtf64 F
+GLIBC_2.27 cbrtf64x F
+GLIBC_2.27 ccosf32 F
+GLIBC_2.27 ccosf32x F
+GLIBC_2.27 ccosf64 F
+GLIBC_2.27 ccosf64x F
+GLIBC_2.27 ccoshf32 F
+GLIBC_2.27 ccoshf32x F
+GLIBC_2.27 ccoshf64 F
+GLIBC_2.27 ccoshf64x F
+GLIBC_2.27 ceilf32 F
+GLIBC_2.27 ceilf32x F
+GLIBC_2.27 ceilf64 F
+GLIBC_2.27 ceilf64x F
+GLIBC_2.27 cexpf32 F
+GLIBC_2.27 cexpf32x F
+GLIBC_2.27 cexpf64 F
+GLIBC_2.27 cexpf64x F
+GLIBC_2.27 cimagf32 F
+GLIBC_2.27 cimagf32x F
+GLIBC_2.27 cimagf64 F
+GLIBC_2.27 cimagf64x F
+GLIBC_2.27 clog10f32 F
+GLIBC_2.27 clog10f32x F
+GLIBC_2.27 clog10f64 F
+GLIBC_2.27 clog10f64x F
+GLIBC_2.27 clogf32 F
+GLIBC_2.27 clogf32x F
+GLIBC_2.27 clogf64 F
+GLIBC_2.27 clogf64x F
+GLIBC_2.27 conjf32 F
+GLIBC_2.27 conjf32x F
+GLIBC_2.27 conjf64 F
+GLIBC_2.27 conjf64x F
+GLIBC_2.27 copysignf32 F
+GLIBC_2.27 copysignf32x F
+GLIBC_2.27 copysignf64 F
+GLIBC_2.27 copysignf64x F
+GLIBC_2.27 cosf32 F
+GLIBC_2.27 cosf32x F
+GLIBC_2.27 cosf64 F
+GLIBC_2.27 cosf64x F
+GLIBC_2.27 coshf32 F
+GLIBC_2.27 coshf32x F
+GLIBC_2.27 coshf64 F
+GLIBC_2.27 coshf64x F
+GLIBC_2.27 cpowf32 F
+GLIBC_2.27 cpowf32x F
+GLIBC_2.27 cpowf64 F
+GLIBC_2.27 cpowf64x F
+GLIBC_2.27 cprojf32 F
+GLIBC_2.27 cprojf32x F
+GLIBC_2.27 cprojf64 F
+GLIBC_2.27 cprojf64x F
+GLIBC_2.27 crealf32 F
+GLIBC_2.27 crealf32x F
+GLIBC_2.27 crealf64 F
+GLIBC_2.27 crealf64x F
+GLIBC_2.27 csinf32 F
+GLIBC_2.27 csinf32x F
+GLIBC_2.27 csinf64 F
+GLIBC_2.27 csinf64x F
+GLIBC_2.27 csinhf32 F
+GLIBC_2.27 csinhf32x F
+GLIBC_2.27 csinhf64 F
+GLIBC_2.27 csinhf64x F
+GLIBC_2.27 csqrtf32 F
+GLIBC_2.27 csqrtf32x F
+GLIBC_2.27 csqrtf64 F
+GLIBC_2.27 csqrtf64x F
+GLIBC_2.27 ctanf32 F
+GLIBC_2.27 ctanf32x F
+GLIBC_2.27 ctanf64 F
+GLIBC_2.27 ctanf64x F
+GLIBC_2.27 ctanhf32 F
+GLIBC_2.27 ctanhf32x F
+GLIBC_2.27 ctanhf64 F
+GLIBC_2.27 ctanhf64x F
+GLIBC_2.27 erfcf32 F
+GLIBC_2.27 erfcf32x F
+GLIBC_2.27 erfcf64 F
+GLIBC_2.27 erfcf64x F
+GLIBC_2.27 erff32 F
+GLIBC_2.27 erff32x F
+GLIBC_2.27 erff64 F
+GLIBC_2.27 erff64x F
+GLIBC_2.27 exp10f32 F
+GLIBC_2.27 exp10f32x F
+GLIBC_2.27 exp10f64 F
+GLIBC_2.27 exp10f64x F
+GLIBC_2.27 exp2f F
+GLIBC_2.27 exp2f32 F
+GLIBC_2.27 exp2f32x F
+GLIBC_2.27 exp2f64 F
+GLIBC_2.27 exp2f64x F
+GLIBC_2.27 expf F
+GLIBC_2.27 expf32 F
+GLIBC_2.27 expf32x F
+GLIBC_2.27 expf64 F
+GLIBC_2.27 expf64x F
+GLIBC_2.27 expm1f32 F
+GLIBC_2.27 expm1f32x F
+GLIBC_2.27 expm1f64 F
+GLIBC_2.27 expm1f64x F
+GLIBC_2.27 fabsf32 F
+GLIBC_2.27 fabsf32x F
+GLIBC_2.27 fabsf64 F
+GLIBC_2.27 fabsf64x F
+GLIBC_2.27 fdimf32 F
+GLIBC_2.27 fdimf32x F
+GLIBC_2.27 fdimf64 F
+GLIBC_2.27 fdimf64x F
+GLIBC_2.27 floorf32 F
+GLIBC_2.27 floorf32x F
+GLIBC_2.27 floorf64 F
+GLIBC_2.27 floorf64x F
+GLIBC_2.27 fmaf32 F
+GLIBC_2.27 fmaf32x F
+GLIBC_2.27 fmaf64 F
+GLIBC_2.27 fmaf64x F
+GLIBC_2.27 fmaxf32 F
+GLIBC_2.27 fmaxf32x F
+GLIBC_2.27 fmaxf64 F
+GLIBC_2.27 fmaxf64x F
+GLIBC_2.27 fmaxmagf32 F
+GLIBC_2.27 fmaxmagf32x F
+GLIBC_2.27 fmaxmagf64 F
+GLIBC_2.27 fmaxmagf64x F
+GLIBC_2.27 fminf32 F
+GLIBC_2.27 fminf32x F
+GLIBC_2.27 fminf64 F
+GLIBC_2.27 fminf64x F
+GLIBC_2.27 fminmagf32 F
+GLIBC_2.27 fminmagf32x F
+GLIBC_2.27 fminmagf64 F
+GLIBC_2.27 fminmagf64x F
+GLIBC_2.27 fmodf32 F
+GLIBC_2.27 fmodf32x F
+GLIBC_2.27 fmodf64 F
+GLIBC_2.27 fmodf64x F
+GLIBC_2.27 frexpf32 F
+GLIBC_2.27 frexpf32x F
+GLIBC_2.27 frexpf64 F
+GLIBC_2.27 frexpf64x F
+GLIBC_2.27 fromfpf32 F
+GLIBC_2.27 fromfpf32x F
+GLIBC_2.27 fromfpf64 F
+GLIBC_2.27 fromfpf64x F
+GLIBC_2.27 fromfpxf32 F
+GLIBC_2.27 fromfpxf32x F
+GLIBC_2.27 fromfpxf64 F
+GLIBC_2.27 fromfpxf64x F
+GLIBC_2.27 getpayloadf32 F
+GLIBC_2.27 getpayloadf32x F
+GLIBC_2.27 getpayloadf64 F
+GLIBC_2.27 getpayloadf64x F
+GLIBC_2.27 hypotf32 F
+GLIBC_2.27 hypotf32x F
+GLIBC_2.27 hypotf64 F
+GLIBC_2.27 hypotf64x F
+GLIBC_2.27 ilogbf32 F
+GLIBC_2.27 ilogbf32x F
+GLIBC_2.27 ilogbf64 F
+GLIBC_2.27 ilogbf64x F
+GLIBC_2.27 j0f32 F
+GLIBC_2.27 j0f32x F
+GLIBC_2.27 j0f64 F
+GLIBC_2.27 j0f64x F
+GLIBC_2.27 j1f32 F
+GLIBC_2.27 j1f32x F
+GLIBC_2.27 j1f64 F
+GLIBC_2.27 j1f64x F
+GLIBC_2.27 jnf32 F
+GLIBC_2.27 jnf32x F
+GLIBC_2.27 jnf64 F
+GLIBC_2.27 jnf64x F
+GLIBC_2.27 ldexpf32 F
+GLIBC_2.27 ldexpf32x F
+GLIBC_2.27 ldexpf64 F
+GLIBC_2.27 ldexpf64x F
+GLIBC_2.27 lgammaf32 F
+GLIBC_2.27 lgammaf32_r F
+GLIBC_2.27 lgammaf32x F
+GLIBC_2.27 lgammaf32x_r F
+GLIBC_2.27 lgammaf64 F
+GLIBC_2.27 lgammaf64_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
+GLIBC_2.27 llogbf32 F
+GLIBC_2.27 llogbf32x F
+GLIBC_2.27 llogbf64 F
+GLIBC_2.27 llogbf64x F
+GLIBC_2.27 llrintf32 F
+GLIBC_2.27 llrintf32x F
+GLIBC_2.27 llrintf64 F
+GLIBC_2.27 llrintf64x F
+GLIBC_2.27 llroundf32 F
+GLIBC_2.27 llroundf32x F
+GLIBC_2.27 llroundf64 F
+GLIBC_2.27 llroundf64x F
+GLIBC_2.27 log10f32 F
+GLIBC_2.27 log10f32x F
+GLIBC_2.27 log10f64 F
+GLIBC_2.27 log10f64x F
+GLIBC_2.27 log1pf32 F
+GLIBC_2.27 log1pf32x F
+GLIBC_2.27 log1pf64 F
+GLIBC_2.27 log1pf64x F
+GLIBC_2.27 log2f F
+GLIBC_2.27 log2f32 F
+GLIBC_2.27 log2f32x F
+GLIBC_2.27 log2f64 F
+GLIBC_2.27 log2f64x F
+GLIBC_2.27 logbf32 F
+GLIBC_2.27 logbf32x F
+GLIBC_2.27 logbf64 F
+GLIBC_2.27 logbf64x F
+GLIBC_2.27 logf F
+GLIBC_2.27 logf32 F
+GLIBC_2.27 logf32x F
+GLIBC_2.27 logf64 F
+GLIBC_2.27 logf64x F
+GLIBC_2.27 lrintf32 F
+GLIBC_2.27 lrintf32x F
+GLIBC_2.27 lrintf64 F
+GLIBC_2.27 lrintf64x F
+GLIBC_2.27 lroundf32 F
+GLIBC_2.27 lroundf32x F
+GLIBC_2.27 lroundf64 F
+GLIBC_2.27 lroundf64x F
+GLIBC_2.27 modff32 F
+GLIBC_2.27 modff32x F
+GLIBC_2.27 modff64 F
+GLIBC_2.27 modff64x F
+GLIBC_2.27 nanf32 F
+GLIBC_2.27 nanf32x F
+GLIBC_2.27 nanf64 F
+GLIBC_2.27 nanf64x F
+GLIBC_2.27 nearbyintf32 F
+GLIBC_2.27 nearbyintf32x F
+GLIBC_2.27 nearbyintf64 F
+GLIBC_2.27 nearbyintf64x F
+GLIBC_2.27 nextafterf32 F
+GLIBC_2.27 nextafterf32x F
+GLIBC_2.27 nextafterf64 F
+GLIBC_2.27 nextafterf64x F
+GLIBC_2.27 nextdownf32 F
+GLIBC_2.27 nextdownf32x F
+GLIBC_2.27 nextdownf64 F
+GLIBC_2.27 nextdownf64x F
+GLIBC_2.27 nextupf32 F
+GLIBC_2.27 nextupf32x F
+GLIBC_2.27 nextupf64 F
+GLIBC_2.27 nextupf64x F
+GLIBC_2.27 powf F
+GLIBC_2.27 powf32 F
+GLIBC_2.27 powf32x F
+GLIBC_2.27 powf64 F
+GLIBC_2.27 powf64x F
+GLIBC_2.27 remainderf32 F
+GLIBC_2.27 remainderf32x F
+GLIBC_2.27 remainderf64 F
+GLIBC_2.27 remainderf64x F
+GLIBC_2.27 remquof32 F
+GLIBC_2.27 remquof32x F
+GLIBC_2.27 remquof64 F
+GLIBC_2.27 remquof64x F
+GLIBC_2.27 rintf32 F
+GLIBC_2.27 rintf32x F
+GLIBC_2.27 rintf64 F
+GLIBC_2.27 rintf64x F
+GLIBC_2.27 roundevenf32 F
+GLIBC_2.27 roundevenf32x F
+GLIBC_2.27 roundevenf64 F
+GLIBC_2.27 roundevenf64x F
+GLIBC_2.27 roundf32 F
+GLIBC_2.27 roundf32x F
+GLIBC_2.27 roundf64 F
+GLIBC_2.27 roundf64x F
+GLIBC_2.27 scalblnf32 F
+GLIBC_2.27 scalblnf32x F
+GLIBC_2.27 scalblnf64 F
+GLIBC_2.27 scalblnf64x F
+GLIBC_2.27 scalbnf32 F
+GLIBC_2.27 scalbnf32x F
+GLIBC_2.27 scalbnf64 F
+GLIBC_2.27 scalbnf64x F
+GLIBC_2.27 setpayloadf32 F
+GLIBC_2.27 setpayloadf32x F
+GLIBC_2.27 setpayloadf64 F
+GLIBC_2.27 setpayloadf64x F
+GLIBC_2.27 setpayloadsigf32 F
+GLIBC_2.27 setpayloadsigf32x F
+GLIBC_2.27 setpayloadsigf64 F
+GLIBC_2.27 setpayloadsigf64x F
+GLIBC_2.27 sincosf32 F
+GLIBC_2.27 sincosf32x F
+GLIBC_2.27 sincosf64 F
+GLIBC_2.27 sincosf64x F
+GLIBC_2.27 sinf32 F
+GLIBC_2.27 sinf32x F
+GLIBC_2.27 sinf64 F
+GLIBC_2.27 sinf64x F
+GLIBC_2.27 sinhf32 F
+GLIBC_2.27 sinhf32x F
+GLIBC_2.27 sinhf64 F
+GLIBC_2.27 sinhf64x F
+GLIBC_2.27 sqrtf32 F
+GLIBC_2.27 sqrtf32x F
+GLIBC_2.27 sqrtf64 F
+GLIBC_2.27 sqrtf64x F
+GLIBC_2.27 tanf32 F
+GLIBC_2.27 tanf32x F
+GLIBC_2.27 tanf64 F
+GLIBC_2.27 tanf64x F
+GLIBC_2.27 tanhf32 F
+GLIBC_2.27 tanhf32x F
+GLIBC_2.27 tanhf64 F
+GLIBC_2.27 tanhf64x F
+GLIBC_2.27 tgammaf32 F
+GLIBC_2.27 tgammaf32x F
+GLIBC_2.27 tgammaf64 F
+GLIBC_2.27 tgammaf64x F
+GLIBC_2.27 totalorderf32 F
+GLIBC_2.27 totalorderf32x F
+GLIBC_2.27 totalorderf64 F
+GLIBC_2.27 totalorderf64x F
+GLIBC_2.27 totalordermagf32 F
+GLIBC_2.27 totalordermagf32x F
+GLIBC_2.27 totalordermagf64 F
+GLIBC_2.27 totalordermagf64x F
+GLIBC_2.27 truncf32 F
+GLIBC_2.27 truncf32x F
+GLIBC_2.27 truncf64 F
+GLIBC_2.27 truncf64x F
+GLIBC_2.27 ufromfpf32 F
+GLIBC_2.27 ufromfpf32x F
+GLIBC_2.27 ufromfpf64 F
+GLIBC_2.27 ufromfpf64x F
+GLIBC_2.27 ufromfpxf32 F
+GLIBC_2.27 ufromfpxf32x F
+GLIBC_2.27 ufromfpxf64 F
+GLIBC_2.27 ufromfpxf64x F
+GLIBC_2.27 y0f32 F
+GLIBC_2.27 y0f32x F
+GLIBC_2.27 y0f64 F
+GLIBC_2.27 y0f64x F
+GLIBC_2.27 y1f32 F
+GLIBC_2.27 y1f32x F
+GLIBC_2.27 y1f64 F
+GLIBC_2.27 y1f64x F
+GLIBC_2.27 ynf32 F
+GLIBC_2.27 ynf32x F
+GLIBC_2.27 ynf64 F
+GLIBC_2.27 ynf64x F
+GLIBC_2.28 daddl F
+GLIBC_2.28 ddivl F
+GLIBC_2.28 dmull F
+GLIBC_2.28 dsubl F
+GLIBC_2.28 f32addf128 F
+GLIBC_2.28 f32addf32x F
+GLIBC_2.28 f32addf64 F
+GLIBC_2.28 f32addf64x F
+GLIBC_2.28 f32divf128 F
+GLIBC_2.28 f32divf32x F
+GLIBC_2.28 f32divf64 F
+GLIBC_2.28 f32divf64x F
+GLIBC_2.28 f32mulf128 F
+GLIBC_2.28 f32mulf32x F
+GLIBC_2.28 f32mulf64 F
+GLIBC_2.28 f32mulf64x F
+GLIBC_2.28 f32subf128 F
+GLIBC_2.28 f32subf32x F
+GLIBC_2.28 f32subf64 F
+GLIBC_2.28 f32subf64x F
+GLIBC_2.28 f32xaddf128 F
+GLIBC_2.28 f32xaddf64 F
+GLIBC_2.28 f32xaddf64x F
+GLIBC_2.28 f32xdivf128 F
+GLIBC_2.28 f32xdivf64 F
+GLIBC_2.28 f32xdivf64x F
+GLIBC_2.28 f32xmulf128 F
+GLIBC_2.28 f32xmulf64 F
+GLIBC_2.28 f32xmulf64x F
+GLIBC_2.28 f32xsubf128 F
+GLIBC_2.28 f32xsubf64 F
+GLIBC_2.28 f32xsubf64x F
+GLIBC_2.28 f64addf128 F
+GLIBC_2.28 f64addf64x F
+GLIBC_2.28 f64divf128 F
+GLIBC_2.28 f64divf64x F
+GLIBC_2.28 f64mulf128 F
+GLIBC_2.28 f64mulf64x F
+GLIBC_2.28 f64subf128 F
+GLIBC_2.28 f64subf64x F
+GLIBC_2.28 f64xaddf128 F
+GLIBC_2.28 f64xdivf128 F
+GLIBC_2.28 f64xmulf128 F
+GLIBC_2.28 f64xsubf128 F
+GLIBC_2.28 fadd F
+GLIBC_2.28 faddl F
+GLIBC_2.28 fdiv F
+GLIBC_2.28 fdivl F
+GLIBC_2.28 fmul F
+GLIBC_2.28 fmull F
+GLIBC_2.28 fsub F
+GLIBC_2.28 fsubl F
diff --git a/sysdeps/mach/hurd/i386/libnsl.abilist b/sysdeps/mach/hurd/i386/libnsl.abilist
new file mode 100644
index 0000000000..c3979162d3
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libnsl.abilist
@@ -0,0 +1,121 @@
+GLIBC_2.2.6 __free_fdresult F
+GLIBC_2.2.6 __nis_default_access F
+GLIBC_2.2.6 __nis_default_group F
+GLIBC_2.2.6 __nis_default_owner F
+GLIBC_2.2.6 __nis_default_ttl F
+GLIBC_2.2.6 __nis_finddirectory F
+GLIBC_2.2.6 __nis_hash F
+GLIBC_2.2.6 __nisbind_connect F
+GLIBC_2.2.6 __nisbind_create F
+GLIBC_2.2.6 __nisbind_destroy F
+GLIBC_2.2.6 __nisbind_next F
+GLIBC_2.2.6 __yp_check F
+GLIBC_2.2.6 nis_add F
+GLIBC_2.2.6 nis_add_entry F
+GLIBC_2.2.6 nis_addmember F
+GLIBC_2.2.6 nis_checkpoint F
+GLIBC_2.2.6 nis_clone_directory F
+GLIBC_2.2.6 nis_clone_object F
+GLIBC_2.2.6 nis_clone_result F
+GLIBC_2.2.6 nis_creategroup F
+GLIBC_2.2.6 nis_destroy_object F
+GLIBC_2.2.6 nis_destroygroup F
+GLIBC_2.2.6 nis_dir_cmp F
+GLIBC_2.2.6 nis_domain_of F
+GLIBC_2.2.6 nis_domain_of_r F
+GLIBC_2.2.6 nis_first_entry F
+GLIBC_2.2.6 nis_free_directory F
+GLIBC_2.2.6 nis_free_object F
+GLIBC_2.2.6 nis_free_request F
+GLIBC_2.2.6 nis_freenames F
+GLIBC_2.2.6 nis_freeresult F
+GLIBC_2.2.6 nis_freeservlist F
+GLIBC_2.2.6 nis_freetags F
+GLIBC_2.2.6 nis_getnames F
+GLIBC_2.2.6 nis_getservlist F
+GLIBC_2.2.6 nis_ismember F
+GLIBC_2.2.6 nis_leaf_of F
+GLIBC_2.2.6 nis_leaf_of_r F
+GLIBC_2.2.6 nis_lerror F
+GLIBC_2.2.6 nis_list F
+GLIBC_2.2.6 nis_local_directory F
+GLIBC_2.2.6 nis_local_group F
+GLIBC_2.2.6 nis_local_host F
+GLIBC_2.2.6 nis_local_principal F
+GLIBC_2.2.6 nis_lookup F
+GLIBC_2.2.6 nis_mkdir F
+GLIBC_2.2.6 nis_modify F
+GLIBC_2.2.6 nis_modify_entry F
+GLIBC_2.2.6 nis_name_of F
+GLIBC_2.2.6 nis_name_of_r F
+GLIBC_2.2.6 nis_next_entry F
+GLIBC_2.2.6 nis_perror F
+GLIBC_2.2.6 nis_ping F
+GLIBC_2.2.6 nis_print_directory F
+GLIBC_2.2.6 nis_print_entry F
+GLIBC_2.2.6 nis_print_group F
+GLIBC_2.2.6 nis_print_group_entry F
+GLIBC_2.2.6 nis_print_link F
+GLIBC_2.2.6 nis_print_object F
+GLIBC_2.2.6 nis_print_result F
+GLIBC_2.2.6 nis_print_rights F
+GLIBC_2.2.6 nis_print_table F
+GLIBC_2.2.6 nis_read_obj F
+GLIBC_2.2.6 nis_remove F
+GLIBC_2.2.6 nis_remove_entry F
+GLIBC_2.2.6 nis_removemember F
+GLIBC_2.2.6 nis_rmdir F
+GLIBC_2.2.6 nis_servstate F
+GLIBC_2.2.6 nis_sperrno F
+GLIBC_2.2.6 nis_sperror F
+GLIBC_2.2.6 nis_sperror_r F
+GLIBC_2.2.6 nis_stats F
+GLIBC_2.2.6 nis_verifygroup F
+GLIBC_2.2.6 nis_write_obj F
+GLIBC_2.2.6 readColdStartFile F
+GLIBC_2.2.6 writeColdStartFile F
+GLIBC_2.2.6 xdr_cback_data F
+GLIBC_2.2.6 xdr_domainname F
+GLIBC_2.2.6 xdr_keydat F
+GLIBC_2.2.6 xdr_mapname F
+GLIBC_2.2.6 xdr_obj_p F
+GLIBC_2.2.6 xdr_peername F
+GLIBC_2.2.6 xdr_valdat F
+GLIBC_2.2.6 xdr_yp_buf F
+GLIBC_2.2.6 xdr_ypall F
+GLIBC_2.2.6 xdr_ypbind_binding F
+GLIBC_2.2.6 xdr_ypbind_resp F
+GLIBC_2.2.6 xdr_ypbind_resptype F
+GLIBC_2.2.6 xdr_ypbind_setdom F
+GLIBC_2.2.6 xdr_ypdelete_args F
+GLIBC_2.2.6 xdr_ypmap_parms F
+GLIBC_2.2.6 xdr_ypmaplist F
+GLIBC_2.2.6 xdr_yppush_status F
+GLIBC_2.2.6 xdr_yppushresp_xfr F
+GLIBC_2.2.6 xdr_ypreq_key F
+GLIBC_2.2.6 xdr_ypreq_nokey F
+GLIBC_2.2.6 xdr_ypreq_xfr F
+GLIBC_2.2.6 xdr_ypresp_all F
+GLIBC_2.2.6 xdr_ypresp_key_val F
+GLIBC_2.2.6 xdr_ypresp_maplist F
+GLIBC_2.2.6 xdr_ypresp_master F
+GLIBC_2.2.6 xdr_ypresp_order F
+GLIBC_2.2.6 xdr_ypresp_val F
+GLIBC_2.2.6 xdr_ypresp_xfr F
+GLIBC_2.2.6 xdr_ypstat F
+GLIBC_2.2.6 xdr_ypupdate_args F
+GLIBC_2.2.6 xdr_ypxfrstat F
+GLIBC_2.2.6 yp_all F
+GLIBC_2.2.6 yp_bind F
+GLIBC_2.2.6 yp_first F
+GLIBC_2.2.6 yp_get_default_domain F
+GLIBC_2.2.6 yp_maplist F
+GLIBC_2.2.6 yp_master F
+GLIBC_2.2.6 yp_match F
+GLIBC_2.2.6 yp_next F
+GLIBC_2.2.6 yp_order F
+GLIBC_2.2.6 yp_unbind F
+GLIBC_2.2.6 yp_update F
+GLIBC_2.2.6 ypbinderr_string F
+GLIBC_2.2.6 yperr_string F
+GLIBC_2.2.6 ypprot_err F
diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist
new file mode 100644
index 0000000000..4c7d06d073
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libpthread.abilist
@@ -0,0 +1,149 @@
+GLIBC_2.12 __mutex_lock_solid F
+GLIBC_2.12 __mutex_unlock_solid F
+GLIBC_2.12 __pthread_get_cleanup_stack F
+GLIBC_2.12 __pthread_key_create F
+GLIBC_2.12 __pthread_kill F
+GLIBC_2.12 __pthread_mutex_transfer_np F
+GLIBC_2.12 __pthread_self F
+GLIBC_2.12 __pthread_spin_destroy F
+GLIBC_2.12 __pthread_spin_init F
+GLIBC_2.12 __pthread_spin_lock F
+GLIBC_2.12 __pthread_spin_trylock F
+GLIBC_2.12 __pthread_spin_unlock F
+GLIBC_2.12 _cthread_init_routine D 0x4
+GLIBC_2.12 _cthreads_flockfile F
+GLIBC_2.12 _cthreads_ftrylockfile F
+GLIBC_2.12 _cthreads_funlockfile F
+GLIBC_2.12 _pthread_mutex_destroy F
+GLIBC_2.12 _pthread_mutex_init F
+GLIBC_2.12 _pthread_mutex_lock F
+GLIBC_2.12 _pthread_mutex_trylock F
+GLIBC_2.12 _pthread_mutex_unlock F
+GLIBC_2.12 _pthread_rwlock_destroy F
+GLIBC_2.12 _pthread_rwlock_init F
+GLIBC_2.12 _pthread_spin_lock F
+GLIBC_2.12 cthread_detach F
+GLIBC_2.12 cthread_fork F
+GLIBC_2.12 cthread_getspecific F
+GLIBC_2.12 cthread_keycreate F
+GLIBC_2.12 cthread_setspecific F
+GLIBC_2.12 flockfile F
+GLIBC_2.12 ftrylockfile F
+GLIBC_2.12 funlockfile F
+GLIBC_2.12 pthread_atfork F
+GLIBC_2.12 pthread_attr_destroy F
+GLIBC_2.12 pthread_attr_getdetachstate F
+GLIBC_2.12 pthread_attr_getguardsize F
+GLIBC_2.12 pthread_attr_getinheritsched F
+GLIBC_2.12 pthread_attr_getschedparam F
+GLIBC_2.12 pthread_attr_getschedpolicy F
+GLIBC_2.12 pthread_attr_getscope F
+GLIBC_2.12 pthread_attr_getstack F
+GLIBC_2.12 pthread_attr_getstackaddr F
+GLIBC_2.12 pthread_attr_getstacksize F
+GLIBC_2.12 pthread_attr_init F
+GLIBC_2.12 pthread_attr_setdetachstate F
+GLIBC_2.12 pthread_attr_setguardsize F
+GLIBC_2.12 pthread_attr_setinheritsched F
+GLIBC_2.12 pthread_attr_setschedparam F
+GLIBC_2.12 pthread_attr_setschedpolicy F
+GLIBC_2.12 pthread_attr_setscope F
+GLIBC_2.12 pthread_attr_setstack F
+GLIBC_2.12 pthread_attr_setstackaddr F
+GLIBC_2.12 pthread_attr_setstacksize F
+GLIBC_2.12 pthread_barrier_destroy F
+GLIBC_2.12 pthread_barrier_init F
+GLIBC_2.12 pthread_barrier_wait F
+GLIBC_2.12 pthread_barrierattr_destroy F
+GLIBC_2.12 pthread_barrierattr_getpshared F
+GLIBC_2.12 pthread_barrierattr_init F
+GLIBC_2.12 pthread_barrierattr_setpshared F
+GLIBC_2.12 pthread_cancel F
+GLIBC_2.12 pthread_cond_broadcast F
+GLIBC_2.12 pthread_cond_destroy F
+GLIBC_2.12 pthread_cond_init F
+GLIBC_2.12 pthread_cond_signal F
+GLIBC_2.12 pthread_cond_timedwait F
+GLIBC_2.12 pthread_cond_wait F
+GLIBC_2.12 pthread_condattr_destroy F
+GLIBC_2.12 pthread_condattr_getclock F
+GLIBC_2.12 pthread_condattr_getpshared F
+GLIBC_2.12 pthread_condattr_init F
+GLIBC_2.12 pthread_condattr_setclock F
+GLIBC_2.12 pthread_condattr_setpshared F
+GLIBC_2.12 pthread_create F
+GLIBC_2.12 pthread_detach F
+GLIBC_2.12 pthread_equal F
+GLIBC_2.12 pthread_exit F
+GLIBC_2.12 pthread_getattr_np F
+GLIBC_2.12 pthread_getconcurrency F
+GLIBC_2.12 pthread_getcpuclockid F
+GLIBC_2.12 pthread_getschedparam F
+GLIBC_2.12 pthread_getspecific F
+GLIBC_2.12 pthread_join F
+GLIBC_2.12 pthread_key_create F
+GLIBC_2.12 pthread_key_delete F
+GLIBC_2.12 pthread_kill F
+GLIBC_2.12 pthread_mutex_destroy F
+GLIBC_2.12 pthread_mutex_getprioceiling F
+GLIBC_2.12 pthread_mutex_init F
+GLIBC_2.12 pthread_mutex_lock F
+GLIBC_2.12 pthread_mutex_setprioceiling F
+GLIBC_2.12 pthread_mutex_timedlock F
+GLIBC_2.12 pthread_mutex_transfer_np F
+GLIBC_2.12 pthread_mutex_trylock F
+GLIBC_2.12 pthread_mutex_unlock F
+GLIBC_2.12 pthread_mutexattr_destroy F
+GLIBC_2.12 pthread_mutexattr_getprioceiling F
+GLIBC_2.12 pthread_mutexattr_getprotocol F
+GLIBC_2.12 pthread_mutexattr_getpshared F
+GLIBC_2.12 pthread_mutexattr_gettype F
+GLIBC_2.12 pthread_mutexattr_init F
+GLIBC_2.12 pthread_mutexattr_setprioceiling F
+GLIBC_2.12 pthread_mutexattr_setprotocol F
+GLIBC_2.12 pthread_mutexattr_setpshared F
+GLIBC_2.12 pthread_mutexattr_settype F
+GLIBC_2.12 pthread_once F
+GLIBC_2.12 pthread_rwlock_destroy F
+GLIBC_2.12 pthread_rwlock_init F
+GLIBC_2.12 pthread_rwlock_rdlock F
+GLIBC_2.12 pthread_rwlock_timedrdlock F
+GLIBC_2.12 pthread_rwlock_timedwrlock F
+GLIBC_2.12 pthread_rwlock_tryrdlock F
+GLIBC_2.12 pthread_rwlock_trywrlock F
+GLIBC_2.12 pthread_rwlock_unlock F
+GLIBC_2.12 pthread_rwlock_wrlock F
+GLIBC_2.12 pthread_rwlockattr_destroy F
+GLIBC_2.12 pthread_rwlockattr_getpshared F
+GLIBC_2.12 pthread_rwlockattr_init F
+GLIBC_2.12 pthread_rwlockattr_setpshared F
+GLIBC_2.12 pthread_self F
+GLIBC_2.12 pthread_setcancelstate F
+GLIBC_2.12 pthread_setcanceltype F
+GLIBC_2.12 pthread_setconcurrency F
+GLIBC_2.12 pthread_setschedparam F
+GLIBC_2.12 pthread_setschedprio F
+GLIBC_2.12 pthread_setspecific F
+GLIBC_2.12 pthread_sigmask F
+GLIBC_2.12 pthread_spin_destroy F
+GLIBC_2.12 pthread_spin_init F
+GLIBC_2.12 pthread_spin_lock F
+GLIBC_2.12 pthread_spin_trylock F
+GLIBC_2.12 pthread_spin_unlock F
+GLIBC_2.12 pthread_testcancel F
+GLIBC_2.12 pthread_yield F
+GLIBC_2.12 sem_close F
+GLIBC_2.12 sem_destroy F
+GLIBC_2.12 sem_getvalue F
+GLIBC_2.12 sem_init F
+GLIBC_2.12 sem_open F
+GLIBC_2.12 sem_post F
+GLIBC_2.12 sem_timedwait F
+GLIBC_2.12 sem_trywait F
+GLIBC_2.12 sem_unlink F
+GLIBC_2.12 sem_wait F
+GLIBC_2.2.6 _IO_flockfile F
+GLIBC_2.2.6 _IO_ftrylockfile F
+GLIBC_2.2.6 _IO_funlockfile F
+GLIBC_2.21 pthread_hurd_cond_timedwait_np F
+GLIBC_2.21 pthread_hurd_cond_wait_np F
diff --git a/sysdeps/mach/hurd/i386/libresolv.abilist b/sysdeps/mach/hurd/i386/libresolv.abilist
new file mode 100644
index 0000000000..e662651c8e
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libresolv.abilist
@@ -0,0 +1,91 @@
+GLIBC_2.2.6 __b64_ntop F
+GLIBC_2.2.6 __b64_pton F
+GLIBC_2.2.6 __dn_comp F
+GLIBC_2.2.6 __dn_count_labels F
+GLIBC_2.2.6 __dn_expand F
+GLIBC_2.2.6 __dn_skipname F
+GLIBC_2.2.6 __fp_nquery F
+GLIBC_2.2.6 __fp_query F
+GLIBC_2.2.6 __fp_resstat F
+GLIBC_2.2.6 __hostalias F
+GLIBC_2.2.6 __loc_aton F
+GLIBC_2.2.6 __loc_ntoa F
+GLIBC_2.2.6 __p_cdname F
+GLIBC_2.2.6 __p_cdnname F
+GLIBC_2.2.6 __p_class F
+GLIBC_2.2.6 __p_class_syms D 0x54
+GLIBC_2.2.6 __p_fqname F
+GLIBC_2.2.6 __p_fqnname F
+GLIBC_2.2.6 __p_option F
+GLIBC_2.2.6 __p_query F
+GLIBC_2.2.6 __p_secstodate F
+GLIBC_2.2.6 __p_time F
+GLIBC_2.2.6 __p_type F
+GLIBC_2.2.6 __p_type_syms D 0x228
+GLIBC_2.2.6 __putlong F
+GLIBC_2.2.6 __putshort F
+GLIBC_2.2.6 __res_close F
+GLIBC_2.2.6 __res_dnok F
+GLIBC_2.2.6 __res_hnok F
+GLIBC_2.2.6 __res_hostalias F
+GLIBC_2.2.6 __res_isourserver F
+GLIBC_2.2.6 __res_mailok F
+GLIBC_2.2.6 __res_mkquery F
+GLIBC_2.2.6 __res_nameinquery F
+GLIBC_2.2.6 __res_nmkquery F
+GLIBC_2.2.6 __res_nquery F
+GLIBC_2.2.6 __res_nquerydomain F
+GLIBC_2.2.6 __res_nsearch F
+GLIBC_2.2.6 __res_nsend F
+GLIBC_2.2.6 __res_ownok F
+GLIBC_2.2.6 __res_queriesmatch F
+GLIBC_2.2.6 __res_query F
+GLIBC_2.2.6 __res_querydomain F
+GLIBC_2.2.6 __res_search F
+GLIBC_2.2.6 __res_send F
+GLIBC_2.2.6 __sym_ntop F
+GLIBC_2.2.6 __sym_ntos F
+GLIBC_2.2.6 __sym_ston F
+GLIBC_2.2.6 _gethtbyaddr F
+GLIBC_2.2.6 _gethtbyname F
+GLIBC_2.2.6 _gethtbyname2 F
+GLIBC_2.2.6 _gethtent F
+GLIBC_2.2.6 _getlong F
+GLIBC_2.2.6 _getshort F
+GLIBC_2.2.6 _res_opcodes D 0x40
+GLIBC_2.2.6 _sethtent F
+GLIBC_2.2.6 inet_net_ntop F
+GLIBC_2.2.6 inet_net_pton F
+GLIBC_2.2.6 inet_neta F
+GLIBC_2.2.6 res_gethostbyaddr F
+GLIBC_2.2.6 res_gethostbyname F
+GLIBC_2.2.6 res_gethostbyname2 F
+GLIBC_2.2.6 res_send_setqhook F
+GLIBC_2.2.6 res_send_setrhook F
+GLIBC_2.3.2 __p_rcode F
+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/mach/hurd/i386/librt.abilist b/sysdeps/mach/hurd/i386/librt.abilist
new file mode 100644
index 0000000000..d5fe32b3a9
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/librt.abilist
@@ -0,0 +1,42 @@
+GLIBC_2.2.6 aio_cancel F
+GLIBC_2.2.6 aio_cancel64 F
+GLIBC_2.2.6 aio_error F
+GLIBC_2.2.6 aio_error64 F
+GLIBC_2.2.6 aio_fsync F
+GLIBC_2.2.6 aio_fsync64 F
+GLIBC_2.2.6 aio_init F
+GLIBC_2.2.6 aio_read F
+GLIBC_2.2.6 aio_read64 F
+GLIBC_2.2.6 aio_return F
+GLIBC_2.2.6 aio_return64 F
+GLIBC_2.2.6 aio_suspend F
+GLIBC_2.2.6 aio_suspend64 F
+GLIBC_2.2.6 aio_write F
+GLIBC_2.2.6 aio_write64 F
+GLIBC_2.2.6 clock_getcpuclockid F
+GLIBC_2.2.6 clock_getres F
+GLIBC_2.2.6 clock_gettime F
+GLIBC_2.2.6 clock_nanosleep F
+GLIBC_2.2.6 clock_settime F
+GLIBC_2.2.6 lio_listio F
+GLIBC_2.2.6 lio_listio64 F
+GLIBC_2.2.6 shm_open F
+GLIBC_2.2.6 shm_unlink F
+GLIBC_2.2.6 timer_create F
+GLIBC_2.2.6 timer_delete F
+GLIBC_2.2.6 timer_getoverrun F
+GLIBC_2.2.6 timer_gettime F
+GLIBC_2.2.6 timer_settime F
+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 lio_listio F
+GLIBC_2.4 lio_listio64 F
+GLIBC_2.7 __mq_open_2 F
diff --git a/sysdeps/mach/hurd/i386/libutil.abilist b/sysdeps/mach/hurd/i386/libutil.abilist
new file mode 100644
index 0000000000..1dd59e0afb
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/libutil.abilist
@@ -0,0 +1,6 @@
+GLIBC_2.2.6 forkpty F
+GLIBC_2.2.6 login F
+GLIBC_2.2.6 login_tty F
+GLIBC_2.2.6 logout F
+GLIBC_2.2.6 logwtmp F
+GLIBC_2.2.6 openpty F
diff --git a/sysdeps/mach/hurd/i386/localplt.data b/sysdeps/mach/hurd/i386/localplt.data
new file mode 100644
index 0000000000..a5b5241b84
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/localplt.data
@@ -0,0 +1,64 @@
+# 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.
+# Linker in binutils 2.26 and newer consolidates R_X86_64_JUMP_SLOT
+# relocation with R_386_GLOB_DAT relocation against the same symbol.
+libc.so: calloc + REL R_386_GLOB_DAT
+libc.so: free + REL R_386_GLOB_DAT
+libc.so: malloc + REL R_386_GLOB_DAT
+libc.so: memalign + REL R_386_GLOB_DAT
+libc.so: realloc + REL R_386_GLOB_DAT
+libm.so: matherr + REL R_386_GLOB_DAT
+# The main malloc is interposed into the dynamic linker, for
+# allocations after the initial link (when dlopen is used).
+ld.so: malloc + REL R_386_GLOB_DAT
+ld.so: calloc + REL R_386_GLOB_DAT
+ld.so: realloc + REL R_386_GLOB_DAT
+ld.so: free + REL R_386_GLOB_DAT
+# The TLS-enabled version of these functions is interposed from libc.so.
+ld.so: _dl_signal_error + REL R_386_GLOB_DAT
+ld.so: _dl_catch_error + REL R_386_GLOB_DAT
+ld.so: _dl_signal_exception + REL R_386_GLOB_DAT
+ld.so: _dl_catch_exception + REL R_386_GLOB_DAT
+# The dynamic linker has its own versions of basic functions for initial loading
+# of shared libraries. These need to be overriden by libc once loaded.
+ld.so: __open ?
+ld.so: __open64
+ld.so: __close
+ld.so: __read
+ld.so: __write
+ld.so: __writev
+ld.so: __libc_lseek64
+ld.so: __mmap
+ld.so: __fxstat64
+ld.so: __xstat64
+#ld.so: __access
+ld.so: __access_noerrno
+ld.so: __getpid
+#ld.so: __getcwd
+ld.so: __sbrk
+ld.so: __strtoul_internal
+#ld.so: _exit
+ld.so: abort
+ld.so: _hurd_intr_rpc_mach_msg
+ld.so: __errno_location
+# rtld_hidden is currently disabled to avoid having to special-case the
+# functions above which do need a PLT. These are thus currently expected.
+ld.so: _dl_allocate_tls
+ld.so: _dl_allocate_tls_init
+ld.so: _dl_exception_create
+ld.so: _dl_exception_create_format
+ld.so: _dl_exception_free
+ld.so: _dl_find_dso_for_object
+ld.so: _dl_init_first
+ld.so: _dl_mcount
+ld.so: ___tls_get_addr
+ld.so: __tunable_get_val
+#
+# These should ideally be avoided, but is currently difficult
+libc.so: siglongjmp ?
+libc.so: longjmp ?
+# This is from lseek.c
+libc.so: __libc_lseek64 ?
+# This is through cleanup_region_start from vfprintf.c
+libc.so: _IO_funlockfile ?
diff --git a/sysdeps/mach/hurd/i386/longjmp-ts.c b/sysdeps/mach/hurd/i386/longjmp-ts.c
index ce2871e25e..37ac78ce5d 100644
--- a/sysdeps/mach/hurd/i386/longjmp-ts.c
+++ b/sysdeps/mach/hurd/i386/longjmp-ts.c
@@ -1,5 +1,5 @@
/* Perform a `longjmp' on a Mach thread_state. i386 version.
- Copyright (C) 1991-2016 Free Software Foundation, Inc.
+ Copyright (C) 1991-2018 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
diff --git a/sysdeps/mach/hurd/i386/makecontext-helper.c b/sysdeps/mach/hurd/i386/makecontext-helper.c
index e604488264..6db3b7e018 100644
--- a/sysdeps/mach/hurd/i386/makecontext-helper.c
+++ b/sysdeps/mach/hurd/i386/makecontext-helper.c
@@ -22,7 +22,6 @@
#include <string.h>
#include <ucontext.h>
-#if 0
void
__makecontext_helper (ucontext_t *ucp)
@@ -68,4 +67,3 @@ __makecontext_helper (ucontext_t *ucp)
ucp->uc_stack.ss_size -= t_size;
}
}
-#endif
diff --git a/sysdeps/mach/hurd/i386/makecontext.S b/sysdeps/mach/hurd/i386/makecontext.S
index b81403b04f..7f3f6b0b90 100644
--- a/sysdeps/mach/hurd/i386/makecontext.S
+++ b/sysdeps/mach/hurd/i386/makecontext.S
@@ -27,7 +27,7 @@ ENTRY(__makecontext)
subl $4, %esp
cfi_adjust_cfa_offset (4)
movl %eax, (%esp)
- /* call HIDDEN_JUMPTARGET (__makecontext_helper) */
+ call HIDDEN_JUMPTARGET (__makecontext_helper)
addl $4, %esp
cfi_adjust_cfa_offset (-4)
diff --git a/sysdeps/mach/hurd/i386/sigcontextinfo.h b/sysdeps/mach/hurd/i386/sigcontextinfo.h
index ff03b7a8bf..836ecb227f 100644
--- a/sysdeps/mach/hurd/i386/sigcontextinfo.h
+++ b/sysdeps/mach/hurd/i386/sigcontextinfo.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1998-2018 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
@@ -16,9 +16,4 @@
<http://www.gnu.org/licenses/>. */
#define SIGCONTEXT struct sigcontext
-#define SIGCONTEXT_EXTRA_ARGS
#define GET_PC(ctx) ((void *) (ctx).sc_eip)
-#define GET_FRAME(ctx) ((void *) (ctx).sc_ebp)
-#define GET_STACK(ctx) ((void *) (ctx).sc_uesp)
-#define CALL_SIGHANDLER(handler, signo, ctx) \
- (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
diff --git a/sysdeps/mach/hurd/i386/signal-defines.sym b/sysdeps/mach/hurd/i386/signal-defines.sym
index 9521bd723c..e42bbbe061 100644
--- a/sysdeps/mach/hurd/i386/signal-defines.sym
+++ b/sysdeps/mach/hurd/i386/signal-defines.sym
@@ -5,6 +5,6 @@
HURD_SIGSTATE__SIGALTSTACK__OFFSET offsetof(struct hurd_sigstate, sigaltstack)
-SIGALTSTACK__SS_SP__OFFSET offsetof(struct sigaltstack, ss_sp)
-SIGALTSTACK__SS_SIZE__OFFSET offsetof(struct sigaltstack, ss_size)
-SIGALTSTACK__SS_FLAGS__OFFSET offsetof(struct sigaltstack, ss_flags)
+SIGALTSTACK__SS_SP__OFFSET offsetof(stack_t, ss_sp)
+SIGALTSTACK__SS_SIZE__OFFSET offsetof(stack_t, ss_size)
+SIGALTSTACK__SS_FLAGS__OFFSET offsetof(stack_t, ss_flags)
diff --git a/sysdeps/mach/hurd/i386/sigreturn.c b/sysdeps/mach/hurd/i386/sigreturn.c
index 0a3af1fdef..07633e17c8 100644
--- a/sysdeps/mach/hurd/i386/sigreturn.c
+++ b/sysdeps/mach/hurd/i386/sigreturn.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2018 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
diff --git a/sysdeps/mach/hurd/i386/static-start.S b/sysdeps/mach/hurd/i386/static-start.S
index 320191a1a5..1df95a0a18 100644
--- a/sysdeps/mach/hurd/i386/static-start.S
+++ b/sysdeps/mach/hurd/i386/static-start.S
@@ -1,5 +1,5 @@
/* Startup code for statically linked Hurd/i386 binaries.
- Copyright (C) 1998-2016 Free Software Foundation, Inc.
+ Copyright (C) 1998-2018 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
diff --git a/sysdeps/mach/hurd/i386/sys/io.h b/sysdeps/mach/hurd/i386/sys/io.h
index b0d20b6bee..81165f00a1 100644
--- a/sysdeps/mach/hurd/i386/sys/io.h
+++ b/sysdeps/mach/hurd/i386/sys/io.h
@@ -1,5 +1,5 @@
/* Access to hardware i/o ports. GNU/x86 version.
- Copyright (C) 2002-2016 Free Software Foundation, Inc.
+ Copyright (C) 2002-2018 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
diff --git a/sysdeps/mach/hurd/i386/tls.h b/sysdeps/mach/hurd/i386/tls.h
index 1a55fdb752..da1f7b78da 100644
--- a/sysdeps/mach/hurd/i386/tls.h
+++ b/sysdeps/mach/hurd/i386/tls.h
@@ -1,5 +1,5 @@
/* Definitions for thread-local data handling. Hurd/i386 version.
- Copyright (C) 2003-2016 Free Software Foundation, Inc.
+ Copyright (C) 2003-2018 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
@@ -25,17 +25,7 @@
#ifndef __ASSEMBLER__
-/* Type for the dtv. */
-typedef union dtv
-{
- size_t counter;
- struct
- {
- void *val;
- bool is_static;
- } pointer;
-} dtv_t;
-
+# include <dl-dtv.h>
/* Type of the TCB. */
typedef struct
@@ -54,12 +44,26 @@ typedef struct
/* GCC split stack support. */
void *__private_ss;
- /* Keep this field last */
- mach_port_t reply_port; /* This thread's reply port. */
+ /* Keep this field last, so fields above can continue being compatible with
+ the Linux version. */
+ mach_port_t reply_port; /* This thread's reply port. */
struct hurd_sigstate *_hurd_sigstate;
} tcbhead_t;
#endif
+/* Return tcbhead_t from a TLS segment descriptor. */
+# define HURD_DESC_TLS(desc) \
+ ({ \
+ (tcbhead_t *) ( (desc->low_word >> 16) \
+ | ((desc->high_word & 0xff) << 16) \
+ | (desc->high_word & 0xff000000)); \
+ })
+
+/* Return 1 if TLS is not initialized yet. */
+#define __LIBC_NO_TLS() \
+ ({ unsigned short ds, gs; \
+ asm ("movw %%ds,%w0; movw %%gs,%w1" : "=q" (ds), "=q" (gs)); \
+ __builtin_expect (ds == gs, 0); })
/* The TCB can have any size and the memory following the address the
thread pointer points to is unspecified. Allocate the TCB there. */
@@ -85,8 +89,6 @@ typedef struct
# define __i386_set_gdt(thr, sel, desc) ((void) (thr), (void) (sel), (void) (desc), MIG_BAD_ID)
# endif
-#define __i386_selector_is_ldt(sel) (!!((sel) & 4))
-
# include <errno.h>
# include <assert.h>
@@ -103,52 +105,49 @@ typedef struct
| (((unsigned int) (tcb)) & 0xff000000) /* base 24..31 */ \
}
-# define HURD_DESC_TLS(desc) \
- ({ \
- (tcbhead_t *) ( (desc->low_word >> 16) \
- | ((desc->high_word & 0xff) << 16) \
- | (desc->high_word & 0xff000000) \
- );})
-
-#define __LIBC_NO_TLS() \
- ({ unsigned short ds, gs; \
- asm ("movw %%ds,%w0; movw %%gs,%w1" : "=q" (ds), "=q" (gs)); \
- ds == gs; })
+# define HURD_SEL_LDT(sel) (__builtin_expect ((sel) & 4, 0))
static inline const char * __attribute__ ((unused))
_hurd_tls_init (tcbhead_t *tcb)
{
HURD_TLS_DESC_DECL (desc, tcb);
+ thread_t self = __mach_thread_self ();
+ const char *msg = NULL;
/* This field is used by TLS accesses to get our "thread pointer"
from the TLS point of view. */
tcb->tcb = tcb;
-
- /* Cache our thread port. */
- tcb->self = __mach_thread_self ();
+ /* We always at least start the sigthread anyway. */
+ tcb->multiple_threads = 1;
/* Get the first available selector. */
int sel = -1;
- error_t err = __i386_set_gdt (tcb->self, &sel, desc);
+ error_t err = __i386_set_gdt (self, &sel, desc);
if (err == MIG_BAD_ID)
{
/* Old kernel, use a per-thread LDT. */
sel = 0x27;
- err = __i386_set_ldt (tcb->self, sel, &desc, 1);
+ err = __i386_set_ldt (self, sel, &desc, 1);
assert_perror (err);
if (err)
- return "i386_set_ldt failed";
+ {
+ msg = "i386_set_ldt failed";
+ goto out;
+ }
}
else if (err)
{
assert_perror (err); /* Separate from above with different line #. */
- return "i386_set_gdt failed";
+ msg = "i386_set_gdt failed";
+ goto out;
}
/* Now install the new selector. */
asm volatile ("mov %w0, %%gs" :: "q" (sel));
- return 0;
+out:
+ __mach_port_deallocate (__mach_task_self (), self);
+ return msg;
}
/* Code to initially initialize the thread pointer. This might need
@@ -164,19 +163,20 @@ _hurd_tls_init (tcbhead_t *tcb)
: "i" (offsetof (tcbhead_t, tcb))); \
__tcb;})
-/* Return the TCB address of a thread given its state. */
+/* Return the TCB address of a thread given its state.
+ Note: this is expensive. */
# define THREAD_TCB(thread, thread_state) \
({ int __sel = (thread_state)->basic.gs; \
struct descriptor __desc, *___desc = &__desc; \
unsigned int __count = 1; \
kern_return_t __err; \
- if (__builtin_expect (__sel, 0x48) & 4) /* LDT selector */ \
+ if (HURD_SEL_LDT (__sel)) \
__err = __i386_get_ldt ((thread), __sel, 1, &___desc, &__count); \
else \
__err = __i386_get_gdt ((thread), __sel, &__desc); \
assert_perror (__err); \
assert (__count == 1); \
- HURD_DESC_TLS(___desc);})
+ HURD_DESC_TLS (___desc);})
/* Install new dtv for current thread. */
# define INSTALL_NEW_DTV(dtvp) \
@@ -205,7 +205,7 @@ _hurd_tls_fork (thread_t child, thread_t orig, struct i386_thread_state *state)
error_t err;
unsigned int count = 1;
- if (__glibc_unlikely (__i386_selector_is_ldt(sel)))
+ if (HURD_SEL_LDT (sel))
err = __i386_get_ldt (orig, sel, 1, &_desc, &count);
else
err = __i386_get_gdt (orig, sel, &desc);
@@ -214,7 +214,7 @@ _hurd_tls_fork (thread_t child, thread_t orig, struct i386_thread_state *state)
if (err)
return err;
- if (__glibc_unlikely (__i386_selector_is_ldt(sel)))
+ if (HURD_SEL_LDT (sel))
err = __i386_set_ldt (child, sel, &desc, 1);
else
err = __i386_set_gdt (child, &sel, desc);
@@ -238,7 +238,7 @@ _hurd_tls_new (thread_t child, struct i386_thread_state *state, tcbhead_t *tcb)
tcb->tcb = tcb;
tcb->self = child;
- if (__glibc_unlikely (__i386_selector_is_ldt(sel)))
+ if (HURD_SEL_LDT (sel))
err = __i386_set_ldt (child, sel, &desc, 1);
else
err = __i386_set_gdt (child, &sel, desc);
diff --git a/sysdeps/mach/hurd/i386/tlsdesc.sym b/sysdeps/mach/hurd/i386/tlsdesc.sym
new file mode 100644
index 0000000000..a358f7e325
--- /dev/null
+++ b/sysdeps/mach/hurd/i386/tlsdesc.sym
@@ -0,0 +1,19 @@
+#include <stddef.h>
+#include <sysdep.h>
+#include <tls.h>
+#include <link.h>
+#include <dl-tlsdesc.h>
+
+--
+
+-- We have to override sysdeps/i386/tlsdesc.sym to adapt to our libpthread.
+
+-- Abuse tls.h macros to derive offsets relative to the thread register.
+
+DTV_OFFSET offsetof(tcbhead_t, dtv)
+
+TLSDESC_ARG offsetof(struct tlsdesc, arg)
+
+TLSDESC_GEN_COUNT offsetof(struct tlsdesc_dynamic_arg, gen_count)
+TLSDESC_MODID offsetof(struct tlsdesc_dynamic_arg, tlsinfo.ti_module)
+TLSDESC_MODOFF offsetof(struct tlsdesc_dynamic_arg, tlsinfo.ti_offset)
diff --git a/sysdeps/mach/hurd/i386/trampoline.c b/sysdeps/mach/hurd/i386/trampoline.c
index 5de27564dd..0e795f9389 100644
--- a/sysdeps/mach/hurd/i386/trampoline.c
+++ b/sysdeps/mach/hurd/i386/trampoline.c
@@ -1,5 +1,5 @@
/* Set thread_state for sighandler, and sigcontext to recover. i386 version.
- Copyright (C) 1994-2016 Free Software Foundation, Inc.
+ Copyright (C) 1994-2018 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