GCC Bugzilla – Attachment 33118 Details for
Bug 61801
sched2 miscompiles syscall sequence with -g
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
testcase from glibc trunk
bug-887141_pthread_create.i (text/plain), 409.68 KB, created by
Richard Biener
on 2014-07-14 14:46:10 UTC
(
hide
)
Description:
testcase from glibc trunk
Filename:
MIME Type:
Creator:
Richard Biener
Created:
2014-07-14 14:46:10 UTC
Size:
409.68 KB
patch
obsolete
># 1 "pthread_create.c" ># 1 "/suse/schwab/src/libc/libc/nptl//" ># 1 "<command-line>" ># 1 "../include/stdc-predef.h" 1 ># 1 "<command-line>" 2 ># 1 "./../include/libc-symbols.h" 1 ># 49 "./../include/libc-symbols.h" ># 1 "/suse/schwab/src/libc/i586/config.h" 1 ># 50 "./../include/libc-symbols.h" 2 ># 777 "./../include/libc-symbols.h" ># 1 "../sysdeps/wordsize-32/symbol-hacks.h" 1 ># 19 "../sysdeps/wordsize-32/symbol-hacks.h" ># 1 "../sysdeps/generic/symbol-hacks.h" 1 ># 20 "../sysdeps/wordsize-32/symbol-hacks.h" 2 ># 778 "./../include/libc-symbols.h" 2 ># 1 "<command-line>" 2 ># 1 "pthread_create.c" ># 19 "pthread_create.c" ># 1 "../include/ctype.h" 1 > > > > >extern void __ctype_init (void); > > >extern int __isctype (int __c, int __mask); ># 52 "../include/ctype.h" ># 1 "../ctype/ctype.h" 1 ># 25 "../ctype/ctype.h" ># 1 "../include/features.h" 1 ># 365 "../include/features.h" ># 1 "../include/sys/cdefs.h" 1 > > ># 1 "../misc/sys/cdefs.h" 1 ># 395 "../misc/sys/cdefs.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 396 "../misc/sys/cdefs.h" 2 ># 4 "../include/sys/cdefs.h" 2 ># 12 "../include/sys/cdefs.h" >extern void __chk_fail (void) __attribute__ ((__noreturn__)); > > ># 366 "../include/features.h" 2 ># 389 "../include/features.h" ># 1 "../include/gnu/stubs.h" 1 ># 390 "../include/features.h" 2 ># 26 "../ctype/ctype.h" 2 ># 1 "../bits/types.h" 1 ># 27 "../bits/types.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 28 "../bits/types.h" 2 > > >typedef unsigned char __u_char; >typedef unsigned short int __u_short; >typedef unsigned int __u_int; >typedef unsigned long int __u_long; > > >typedef signed char __int8_t; >typedef unsigned char __uint8_t; >typedef signed short int __int16_t; >typedef unsigned short int __uint16_t; >typedef signed int __int32_t; >typedef unsigned int __uint32_t; > > > > >__extension__ typedef signed long long int __int64_t; >__extension__ typedef unsigned long long int __uint64_t; > > > > > > > >__extension__ typedef long long int __quad_t; >__extension__ typedef unsigned long long int __u_quad_t; ># 121 "../bits/types.h" ># 1 "../sysdeps/unix/sysv/linux/x86/bits/typesizes.h" 1 ># 122 "../bits/types.h" 2 > > >__extension__ typedef __u_quad_t __dev_t; >__extension__ typedef unsigned int __uid_t; >__extension__ typedef unsigned int __gid_t; >__extension__ typedef unsigned long int __ino_t; >__extension__ typedef __u_quad_t __ino64_t; >__extension__ typedef unsigned int __mode_t; >__extension__ typedef unsigned int __nlink_t; >__extension__ typedef long int __off_t; >__extension__ typedef __quad_t __off64_t; >__extension__ typedef int __pid_t; >__extension__ typedef struct { int __val[2]; } __fsid_t; >__extension__ typedef long int __clock_t; >__extension__ typedef unsigned long int __rlim_t; >__extension__ typedef __u_quad_t __rlim64_t; >__extension__ typedef unsigned int __id_t; >__extension__ typedef long int __time_t; >__extension__ typedef unsigned int __useconds_t; >__extension__ typedef long int __suseconds_t; > >__extension__ typedef int __daddr_t; >__extension__ typedef int __key_t; > > >__extension__ typedef int __clockid_t; > > >__extension__ typedef void * __timer_t; > > >__extension__ typedef long int __blksize_t; > > > > >__extension__ typedef long int __blkcnt_t; >__extension__ typedef __quad_t __blkcnt64_t; > > >__extension__ typedef unsigned long int __fsblkcnt_t; >__extension__ typedef __u_quad_t __fsblkcnt64_t; > > >__extension__ typedef unsigned long int __fsfilcnt_t; >__extension__ typedef __u_quad_t __fsfilcnt64_t; > > >__extension__ typedef int __fsword_t; > >__extension__ typedef int __ssize_t; > > >__extension__ typedef long int __syscall_slong_t; > >__extension__ typedef unsigned long int __syscall_ulong_t; > > > >typedef __off64_t __loff_t; >typedef __quad_t *__qaddr_t; >typedef char *__caddr_t; > > >__extension__ typedef int __intptr_t; > > >__extension__ typedef unsigned int __socklen_t; ># 27 "../ctype/ctype.h" 2 > > ># 39 "../ctype/ctype.h" ># 1 "../include/endian.h" 1 ># 1 "../string/endian.h" 1 ># 36 "../string/endian.h" ># 1 "../sysdeps/x86/bits/endian.h" 1 ># 37 "../string/endian.h" 2 ># 60 "../string/endian.h" ># 1 "../sysdeps/x86/bits/byteswap.h" 1 ># 28 "../sysdeps/x86/bits/byteswap.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 29 "../sysdeps/x86/bits/byteswap.h" 2 > > > > > > ># 1 "../sysdeps/x86/bits/byteswap-16.h" 1 ># 36 "../sysdeps/x86/bits/byteswap.h" 2 ># 44 "../sysdeps/x86/bits/byteswap.h" >static __inline unsigned int >__bswap_32 (unsigned int __bsx) >{ > return __builtin_bswap32 (__bsx); >} ># 108 "../sysdeps/x86/bits/byteswap.h" >static __inline __uint64_t >__bswap_64 (__uint64_t __bsx) >{ > return __builtin_bswap64 (__bsx); >} ># 61 "../string/endian.h" 2 ># 2 "../include/endian.h" 2 ># 40 "../ctype/ctype.h" 2 > > > > > > >enum >{ > _ISupper = ((0) < 8 ? ((1 << (0)) << 8) : ((1 << (0)) >> 8)), > _ISlower = ((1) < 8 ? ((1 << (1)) << 8) : ((1 << (1)) >> 8)), > _ISalpha = ((2) < 8 ? ((1 << (2)) << 8) : ((1 << (2)) >> 8)), > _ISdigit = ((3) < 8 ? ((1 << (3)) << 8) : ((1 << (3)) >> 8)), > _ISxdigit = ((4) < 8 ? ((1 << (4)) << 8) : ((1 << (4)) >> 8)), > _ISspace = ((5) < 8 ? ((1 << (5)) << 8) : ((1 << (5)) >> 8)), > _ISprint = ((6) < 8 ? ((1 << (6)) << 8) : ((1 << (6)) >> 8)), > _ISgraph = ((7) < 8 ? ((1 << (7)) << 8) : ((1 << (7)) >> 8)), > _ISblank = ((8) < 8 ? ((1 << (8)) << 8) : ((1 << (8)) >> 8)), > _IScntrl = ((9) < 8 ? ((1 << (9)) << 8) : ((1 << (9)) >> 8)), > _ISpunct = ((10) < 8 ? ((1 << (10)) << 8) : ((1 << (10)) >> 8)), > _ISalnum = ((11) < 8 ? ((1 << (11)) << 8) : ((1 << (11)) >> 8)) >}; ># 79 "../ctype/ctype.h" >extern const unsigned short int **__ctype_b_loc (void) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >extern const __int32_t **__ctype_tolower_loc (void) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >extern const __int32_t **__ctype_toupper_loc (void) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); ># 104 "../ctype/ctype.h" > > > > > > >extern int isalnum (int) __attribute__ ((__nothrow__ )); >extern int isalpha (int) __attribute__ ((__nothrow__ )); >extern int iscntrl (int) __attribute__ ((__nothrow__ )); >extern int isdigit (int) __attribute__ ((__nothrow__ )); >extern int islower (int) __attribute__ ((__nothrow__ )); >extern int isgraph (int) __attribute__ ((__nothrow__ )); >extern int isprint (int) __attribute__ ((__nothrow__ )); >extern int ispunct (int) __attribute__ ((__nothrow__ )); >extern int isspace (int) __attribute__ ((__nothrow__ )); >extern int isupper (int) __attribute__ ((__nothrow__ )); >extern int isxdigit (int) __attribute__ ((__nothrow__ )); > > > >extern int tolower (int __c) __attribute__ ((__nothrow__ )); > > >extern int toupper (int __c) __attribute__ ((__nothrow__ )); > > > > > > > > >extern int isblank (int) __attribute__ ((__nothrow__ )); > > > > > > >extern int isctype (int __c, int __mask) __attribute__ ((__nothrow__ )); > > > > > > >extern int isascii (int __c) __attribute__ ((__nothrow__ )); > > > >extern int toascii (int __c) __attribute__ ((__nothrow__ )); > > > >extern int _toupper (int) __attribute__ ((__nothrow__ )); >extern int _tolower (int) __attribute__ ((__nothrow__ )); ># 214 "../ctype/ctype.h" >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) tolower (int __c) >{ > return __c >= -128 && __c < 256 ? (*__ctype_tolower_loc ())[__c] : __c; >} > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) toupper (int __c) >{ > return __c >= -128 && __c < 256 ? (*__ctype_toupper_loc ())[__c] : __c; >} ># 257 "../ctype/ctype.h" ># 1 "../include/xlocale.h" 1 ># 1 "../locale/xlocale.h" 1 ># 27 "../locale/xlocale.h" >typedef struct __locale_struct >{ > > struct __locale_data *__locales[13]; > > > const unsigned short int *__ctype_b; > const int *__ctype_tolower; > const int *__ctype_toupper; > > > const char *__names[13]; >} *__locale_t; > > >typedef __locale_t locale_t; ># 1 "../include/xlocale.h" 2 ># 258 "../ctype/ctype.h" 2 ># 271 "../ctype/ctype.h" >extern int isalnum_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isalpha_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int iscntrl_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isdigit_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int islower_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isgraph_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isprint_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int ispunct_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isspace_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isupper_l (int, __locale_t) __attribute__ ((__nothrow__ )); >extern int isxdigit_l (int, __locale_t) __attribute__ ((__nothrow__ )); > >extern int isblank_l (int, __locale_t) __attribute__ ((__nothrow__ )); > > > >extern int __tolower_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ )); >extern int tolower_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ )); > > >extern int __toupper_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ )); >extern int toupper_l (int __c, __locale_t __l) __attribute__ ((__nothrow__ )); ># 347 "../ctype/ctype.h" > ># 53 "../include/ctype.h" 2 ># 20 "pthread_create.c" 2 ># 1 "../include/errno.h" 1 > > ># 1 "../stdlib/errno.h" 1 ># 31 "../stdlib/errno.h" > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/errno.h" 1 ># 24 "../sysdeps/unix/sysv/linux/bits/errno.h" ># 1 "/usr/include/linux/errno.h" 1 3 4 ># 1 "/usr/include/asm/errno.h" 1 3 4 ># 1 "/usr/include/asm-generic/errno.h" 1 3 4 > > > ># 1 "/usr/include/asm-generic/errno-base.h" 1 3 4 ># 5 "/usr/include/asm-generic/errno.h" 2 3 4 ># 1 "/usr/include/asm/errno.h" 2 3 4 ># 1 "/usr/include/linux/errno.h" 2 3 4 ># 25 "../sysdeps/unix/sysv/linux/bits/errno.h" 2 ># 50 "../sysdeps/unix/sysv/linux/bits/errno.h" >extern int *__errno_location (void) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); ># 36 "../stdlib/errno.h" 2 ># 54 "../stdlib/errno.h" >extern char *program_invocation_name, *program_invocation_short_name; > > > > ># 68 "../stdlib/errno.h" >typedef int error_t; ># 4 "../include/errno.h" 2 ># 27 "../include/errno.h" ># 1 "../sysdeps/i386/nptl/tls.h" 1 ># 22 "../sysdeps/i386/nptl/tls.h" ># 1 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 1 ># 21 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" ># 1 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 1 ># 19 "../sysdeps/unix/sysv/linux/dl-sysdep.h" ># 1 "../sysdeps/generic/dl-sysdep.h" 1 ># 20 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/dl-sysdep.h" >extern int _dl_discover_osversion (void) __attribute__ ((visibility ("hidden"))); ># 22 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" >extern void _dl_sysinfo_int80 (void) __attribute__ ((visibility ("hidden"))); ># 23 "../sysdeps/i386/nptl/tls.h" 2 > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stdbool.h" 1 3 4 ># 25 "../sysdeps/i386/nptl/tls.h" 2 ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 147 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 3 4 >typedef int ptrdiff_t; ># 212 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 3 4 >typedef unsigned int size_t; ># 324 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 3 4 >typedef long int wchar_t; ># 26 "../sysdeps/i386/nptl/tls.h" 2 ># 1 "../sysdeps/generic/stdint.h" 1 ># 26 "../sysdeps/generic/stdint.h" ># 1 "../bits/wchar.h" 1 ># 27 "../sysdeps/generic/stdint.h" 2 ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 28 "../sysdeps/generic/stdint.h" 2 ># 36 "../sysdeps/generic/stdint.h" >typedef signed char int8_t; >typedef short int int16_t; >typedef int int32_t; > > > >__extension__ >typedef long long int int64_t; > > > > >typedef unsigned char uint8_t; >typedef unsigned short int uint16_t; > >typedef unsigned int uint32_t; > > > > > >__extension__ >typedef unsigned long long int uint64_t; > > > > > > >typedef signed char int_least8_t; >typedef short int int_least16_t; >typedef int int_least32_t; > > > >__extension__ >typedef long long int int_least64_t; > > > >typedef unsigned char uint_least8_t; >typedef unsigned short int uint_least16_t; >typedef unsigned int uint_least32_t; > > > >__extension__ >typedef unsigned long long int uint_least64_t; > > > > > > >typedef signed char int_fast8_t; > > > > > >typedef int int_fast16_t; >typedef int int_fast32_t; >__extension__ >typedef long long int int_fast64_t; > > > >typedef unsigned char uint_fast8_t; > > > > > >typedef unsigned int uint_fast16_t; >typedef unsigned int uint_fast32_t; >__extension__ >typedef unsigned long long int uint_fast64_t; ># 125 "../sysdeps/generic/stdint.h" >typedef int intptr_t; > > >typedef unsigned int uintptr_t; ># 137 "../sysdeps/generic/stdint.h" >__extension__ >typedef long long int intmax_t; >__extension__ >typedef unsigned long long int uintmax_t; ># 27 "../sysdeps/i386/nptl/tls.h" 2 ># 1 "../include/stdlib.h" 1 > > > > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 9 "../include/stdlib.h" 2 > ># 1 "../stdlib/stdlib.h" 1 ># 32 "../stdlib/stdlib.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 33 "../stdlib/stdlib.h" 2 > > > > > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/waitflags.h" 1 ># 42 "../stdlib/stdlib.h" 2 ># 1 "../bits/waitstatus.h" 1 ># 64 "../bits/waitstatus.h" ># 1 "../include/endian.h" 1 ># 65 "../bits/waitstatus.h" 2 > >union wait > { > int w_status; > struct > { > > unsigned int __w_termsig:7; > unsigned int __w_coredump:1; > unsigned int __w_retcode:8; > unsigned int:16; > > > > > > > > } __wait_terminated; > struct > { > > unsigned int __w_stopval:8; > unsigned int __w_stopsig:8; > unsigned int:16; > > > > > > > } __wait_stopped; > }; ># 43 "../stdlib/stdlib.h" 2 ># 67 "../stdlib/stdlib.h" >typedef union > { > union wait *__uptr; > int *__iptr; > } __WAIT_STATUS __attribute__ ((__transparent_union__)); ># 95 "../stdlib/stdlib.h" > > >typedef struct > { > int quot; > int rem; > } div_t; > > > >typedef struct > { > long int quot; > long int rem; > } ldiv_t; > > > > > > > >__extension__ typedef struct > { > long long int quot; > long long int rem; > } lldiv_t; > > ># 139 "../stdlib/stdlib.h" >extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__ )) ; > > > > >extern double atof (const char *__nptr) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > >extern int atoi (const char *__nptr) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > >extern long int atol (const char *__nptr) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > >__extension__ extern long long int atoll (const char *__nptr) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > >extern double strtod (const char *__restrict __nptr, > char **__restrict __endptr) > __attribute__ ((__nothrow__ )) ; > > > > > >extern float strtof (const char *__restrict __nptr, > char **__restrict __endptr) __attribute__ ((__nothrow__ )) ; > >extern long double strtold (const char *__restrict __nptr, > char **__restrict __endptr) > __attribute__ ((__nothrow__ )) ; > > > > > >extern long int strtol (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > __attribute__ ((__nothrow__ )) ; > >extern unsigned long int strtoul (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > __attribute__ ((__nothrow__ )) ; > > > > >__extension__ >extern long long int strtoq (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > __attribute__ ((__nothrow__ )) ; > >__extension__ >extern unsigned long long int strtouq (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > __attribute__ ((__nothrow__ )) ; > > > > > >__extension__ >extern long long int strtoll (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > __attribute__ ((__nothrow__ )) ; > >__extension__ >extern unsigned long long int strtoull (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > __attribute__ ((__nothrow__ )) ; > ># 235 "../stdlib/stdlib.h" ># 1 "../include/xlocale.h" 1 ># 236 "../stdlib/stdlib.h" 2 > > > >extern long int strtol_l (const char *__restrict __nptr, > char **__restrict __endptr, int __base, > __locale_t __loc) __attribute__ ((__nothrow__ )) ; > >extern unsigned long int strtoul_l (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, __locale_t __loc) > __attribute__ ((__nothrow__ )) ; > >__extension__ >extern long long int strtoll_l (const char *__restrict __nptr, > char **__restrict __endptr, int __base, > __locale_t __loc) > __attribute__ ((__nothrow__ )) ; > >__extension__ >extern unsigned long long int strtoull_l (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, __locale_t __loc) > __attribute__ ((__nothrow__ )) ; > >extern double strtod_l (const char *__restrict __nptr, > char **__restrict __endptr, __locale_t __loc) > __attribute__ ((__nothrow__ )) ; > >extern float strtof_l (const char *__restrict __nptr, > char **__restrict __endptr, __locale_t __loc) > __attribute__ ((__nothrow__ )) ; > >extern long double strtold_l (const char *__restrict __nptr, > char **__restrict __endptr, > __locale_t __loc) > __attribute__ ((__nothrow__ )) ; > > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) atoi (const char *__nptr) >{ > return (int) strtol (__nptr, (char **) ((void *)0), 10); >} >extern __inline __attribute__ ((__gnu_inline__)) long int >__attribute__ ((__nothrow__ )) atol (const char *__nptr) >{ > return strtol (__nptr, (char **) ((void *)0), 10); >} > > > > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) long long int >__attribute__ ((__nothrow__ )) atoll (const char *__nptr) >{ > return strtoll (__nptr, (char **) ((void *)0), 10); >} > ># 305 "../stdlib/stdlib.h" >extern char *l64a (long int __n) __attribute__ ((__nothrow__ )) ; > > >extern long int a64l (const char *__s) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > ># 1 "../include/sys/types.h" 1 ># 1 "../posix/sys/types.h" 1 ># 27 "../posix/sys/types.h" > > > > > > >typedef __u_char u_char; >typedef __u_short u_short; >typedef __u_int u_int; >typedef __u_long u_long; >typedef __quad_t quad_t; >typedef __u_quad_t u_quad_t; >typedef __fsid_t fsid_t; > > > > >typedef __loff_t loff_t; > > > >typedef __ino_t ino_t; > > > > > > >typedef __ino64_t ino64_t; > > > > >typedef __dev_t dev_t; > > > > >typedef __gid_t gid_t; > > > > >typedef __mode_t mode_t; > > > > >typedef __nlink_t nlink_t; > > > > >typedef __uid_t uid_t; > > > > > >typedef __off_t off_t; > > > > > > >typedef __off64_t off64_t; > > > > >typedef __pid_t pid_t; > > > > > >typedef __id_t id_t; > > > > >typedef __ssize_t ssize_t; > > > > > >typedef __daddr_t daddr_t; >typedef __caddr_t caddr_t; > > > > > >typedef __key_t key_t; ># 132 "../posix/sys/types.h" ># 1 "../include/time.h" 1 > > ># 1 "../time/time.h" 1 ># 57 "../time/time.h" > > >typedef __clock_t clock_t; > > > ># 73 "../time/time.h" > > >typedef __time_t time_t; > > > ># 91 "../time/time.h" >typedef __clockid_t clockid_t; ># 103 "../time/time.h" >typedef __timer_t timer_t; ># 4 "../include/time.h" 2 ># 133 "../posix/sys/types.h" 2 > > > >typedef __useconds_t useconds_t; > > > >typedef __suseconds_t suseconds_t; > > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 147 "../posix/sys/types.h" 2 > > > >typedef unsigned long int ulong; >typedef unsigned short int ushort; >typedef unsigned int uint; ># 200 "../posix/sys/types.h" >typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__))); >typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__))); >typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__))); >typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__))); > >typedef int register_t __attribute__ ((__mode__ (__word__))); ># 216 "../posix/sys/types.h" ># 1 "../include/endian.h" 1 ># 217 "../posix/sys/types.h" 2 > > ># 1 "../include/sys/select.h" 1 > ># 1 "../misc/sys/select.h" 1 ># 30 "../misc/sys/select.h" ># 1 "../sysdeps/x86/bits/select.h" 1 ># 22 "../sysdeps/x86/bits/select.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 23 "../sysdeps/x86/bits/select.h" 2 ># 31 "../misc/sys/select.h" 2 > > ># 1 "../sysdeps/unix/sysv/linux/bits/sigset.h" 1 ># 22 "../sysdeps/unix/sysv/linux/bits/sigset.h" >typedef int __sig_atomic_t; > > > > >typedef struct > { > unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))]; > } __sigset_t; ># 34 "../misc/sys/select.h" 2 > > > >typedef __sigset_t sigset_t; > > > > > ># 1 "../include/time.h" 1 > > ># 1 "../time/time.h" 1 ># 120 "../time/time.h" >struct timespec > { > __time_t tv_sec; > __syscall_slong_t tv_nsec; > }; ># 4 "../include/time.h" 2 ># 44 "../misc/sys/select.h" 2 > ># 1 "../sysdeps/unix/sysv/linux/bits/time.h" 1 ># 30 "../sysdeps/unix/sysv/linux/bits/time.h" >struct timeval > { > __time_t tv_sec; > __suseconds_t tv_usec; > }; ># 46 "../misc/sys/select.h" 2 ># 54 "../misc/sys/select.h" >typedef long int __fd_mask; ># 64 "../misc/sys/select.h" >typedef struct > { > > > > __fd_mask fds_bits[1024 / (8 * (int) sizeof (__fd_mask))]; > > > > > > } fd_set; > > > > > > >typedef __fd_mask fd_mask; ># 96 "../misc/sys/select.h" > ># 106 "../misc/sys/select.h" >extern int select (int __nfds, fd_set *__restrict __readfds, > fd_set *__restrict __writefds, > fd_set *__restrict __exceptfds, > struct timeval *__restrict __timeout); ># 118 "../misc/sys/select.h" >extern int pselect (int __nfds, fd_set *__restrict __readfds, > fd_set *__restrict __writefds, > fd_set *__restrict __exceptfds, > const struct timespec *__restrict __timeout, > const __sigset_t *__restrict __sigmask); ># 131 "../misc/sys/select.h" > ># 3 "../include/sys/select.h" 2 > > > >extern int __pselect (int __nfds, fd_set *__readfds, > fd_set *__writefds, fd_set *__exceptfds, > const struct timespec *__timeout, > const __sigset_t *__sigmask); > >extern int __select (int __nfds, fd_set *__restrict __readfds, > fd_set *__restrict __writefds, > fd_set *__restrict __exceptfds, > struct timeval *__restrict __timeout); > ># 220 "../posix/sys/types.h" 2 > > ># 1 "../sysdeps/unix/sysv/linux/sys/sysmacros.h" 1 ># 24 "../sysdeps/unix/sysv/linux/sys/sysmacros.h" > > >__extension__ >extern unsigned int gnu_dev_major (unsigned long long int __dev) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >__extension__ >extern unsigned int gnu_dev_minor (unsigned long long int __dev) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >__extension__ >extern unsigned long long int gnu_dev_makedev (unsigned int __major, > unsigned int __minor) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) __attribute__ ((__const__)) unsigned int >__attribute__ ((__nothrow__ )) gnu_dev_major (unsigned long long int __dev) >{ > return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff); >} > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) __attribute__ ((__const__)) unsigned int >__attribute__ ((__nothrow__ )) gnu_dev_minor (unsigned long long int __dev) >{ > return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff); >} > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) __attribute__ ((__const__)) unsigned long long int >__attribute__ ((__nothrow__ )) gnu_dev_makedev (unsigned int __major, unsigned int __minor) >{ > return ((__minor & 0xff) | ((__major & 0xfff) << 8) > | (((unsigned long long int) (__minor & ~0xff)) << 12) > | (((unsigned long long int) (__major & ~0xfff)) << 32)); >} > > ># 223 "../posix/sys/types.h" 2 > > > > > >typedef __blksize_t blksize_t; > > > > > > >typedef __blkcnt_t blkcnt_t; > > > >typedef __fsblkcnt_t fsblkcnt_t; > > > >typedef __fsfilcnt_t fsfilcnt_t; ># 262 "../posix/sys/types.h" >typedef __blkcnt64_t blkcnt64_t; >typedef __fsblkcnt64_t fsblkcnt64_t; >typedef __fsfilcnt64_t fsfilcnt64_t; > > > > > ># 1 "../sysdeps/x86/bits/pthreadtypes.h" 1 ># 21 "../sysdeps/x86/bits/pthreadtypes.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 22 "../sysdeps/x86/bits/pthreadtypes.h" 2 ># 60 "../sysdeps/x86/bits/pthreadtypes.h" >typedef unsigned long int pthread_t; > > >union pthread_attr_t >{ > char __size[36]; > long int __align; >}; > >typedef union pthread_attr_t pthread_attr_t; ># 81 "../sysdeps/x86/bits/pthreadtypes.h" >typedef struct __pthread_internal_slist >{ > struct __pthread_internal_slist *__next; >} __pthread_slist_t; > > > > > >typedef union >{ > struct __pthread_mutex_s > { > int __lock; > unsigned int __count; > int __owner; > > > > > > int __kind; ># 111 "../sysdeps/x86/bits/pthreadtypes.h" > unsigned int __nusers; > __extension__ union > { > struct > { > short __espins; > short __elision; > > > > } __elision_data; > __pthread_slist_t __list; > }; > > } __data; > char __size[24]; > long int __align; >} pthread_mutex_t; > >typedef union >{ > char __size[4]; > int __align; >} pthread_mutexattr_t; > > > > >typedef union >{ > struct > { > int __lock; > unsigned int __futex; > __extension__ unsigned long long int __total_seq; > __extension__ unsigned long long int __wakeup_seq; > __extension__ unsigned long long int __woken_seq; > void *__mutex; > unsigned int __nwaiters; > unsigned int __broadcast_seq; > } __data; > char __size[48]; > __extension__ long long int __align; >} pthread_cond_t; > >typedef union >{ > char __size[4]; > int __align; >} pthread_condattr_t; > > > >typedef unsigned int pthread_key_t; > > > >typedef int pthread_once_t; > > > > > >typedef union >{ ># 202 "../sysdeps/x86/bits/pthreadtypes.h" > struct > { > int __lock; > unsigned int __nr_readers; > unsigned int __readers_wakeup; > unsigned int __writer_wakeup; > unsigned int __nr_readers_queued; > unsigned int __nr_writers_queued; > > > unsigned char __flags; > unsigned char __shared; > signed char __rwelision; > > unsigned char __pad2; > int __writer; > } __data; > > char __size[32]; > long int __align; >} pthread_rwlock_t; > >typedef union >{ > char __size[8]; > long int __align; >} pthread_rwlockattr_t; > > > > > >typedef volatile int pthread_spinlock_t; > > > > >typedef union >{ > char __size[20]; > long int __align; >} pthread_barrier_t; > >typedef union >{ > char __size[4]; > int __align; >} pthread_barrierattr_t; ># 271 "../posix/sys/types.h" 2 > > > ># 1 "../include/sys/types.h" 2 ># 315 "../stdlib/stdlib.h" 2 > > > > > > >extern long int random (void) __attribute__ ((__nothrow__ )); > > >extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__ )); > > > > > >extern char *initstate (unsigned int __seed, char *__statebuf, > size_t __statelen) __attribute__ ((__nothrow__ )) ; > > > >extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__ )) ; > > > > > > > >struct random_data > { > int32_t *fptr; > int32_t *rptr; > int32_t *state; > int rand_type; > int rand_deg; > int rand_sep; > int32_t *end_ptr; > }; > >extern int random_r (struct random_data *__restrict __buf, > int32_t *__restrict __result) __attribute__ ((__nothrow__ )) ; > >extern int srandom_r (unsigned int __seed, struct random_data *__buf) > __attribute__ ((__nothrow__ )) ; > >extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, > size_t __statelen, > struct random_data *__restrict __buf) > __attribute__ ((__nothrow__ )) ; > >extern int setstate_r (char *__restrict __statebuf, > struct random_data *__restrict __buf) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern int rand (void) __attribute__ ((__nothrow__ )); > >extern void srand (unsigned int __seed) __attribute__ ((__nothrow__ )); > > > > >extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__ )); > > > > > > > >extern double drand48 (void) __attribute__ ((__nothrow__ )); >extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__ )) ; > > >extern long int lrand48 (void) __attribute__ ((__nothrow__ )); >extern long int nrand48 (unsigned short int __xsubi[3]) > __attribute__ ((__nothrow__ )) ; > > >extern long int mrand48 (void) __attribute__ ((__nothrow__ )); >extern long int jrand48 (unsigned short int __xsubi[3]) > __attribute__ ((__nothrow__ )) ; > > >extern void srand48 (long int __seedval) __attribute__ ((__nothrow__ )); >extern unsigned short int *seed48 (unsigned short int __seed16v[3]) > __attribute__ ((__nothrow__ )) ; >extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__ )) ; > > > > > >struct drand48_data > { > unsigned short int __x[3]; > unsigned short int __old_x[3]; > unsigned short int __c; > unsigned short int __init; > __extension__ unsigned long long int __a; > > }; > > >extern int drand48_r (struct drand48_data *__restrict __buffer, > double *__restrict __result) __attribute__ ((__nothrow__ )) ; >extern int erand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > double *__restrict __result) __attribute__ ((__nothrow__ )) ; > > >extern int lrand48_r (struct drand48_data *__restrict __buffer, > long int *__restrict __result) > __attribute__ ((__nothrow__ )) ; >extern int nrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > long int *__restrict __result) > __attribute__ ((__nothrow__ )) ; > > >extern int mrand48_r (struct drand48_data *__restrict __buffer, > long int *__restrict __result) > __attribute__ ((__nothrow__ )) ; >extern int jrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > long int *__restrict __result) > __attribute__ ((__nothrow__ )) ; > > >extern int srand48_r (long int __seedval, struct drand48_data *__buffer) > __attribute__ ((__nothrow__ )) ; > >extern int seed48_r (unsigned short int __seed16v[3], > struct drand48_data *__buffer) __attribute__ ((__nothrow__ )) ; > >extern int lcong48_r (unsigned short int __param[7], > struct drand48_data *__buffer) > __attribute__ ((__nothrow__ )) ; > > > > > > > > > >extern void *malloc (size_t __size) __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) ; > >extern void *calloc (size_t __nmemb, size_t __size) > __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) ; > > > > > > > > > > >extern void *realloc (void *__ptr, size_t __size) > __attribute__ ((__nothrow__ )) __attribute__ ((__warn_unused_result__)); > >extern void free (void *__ptr) __attribute__ ((__nothrow__ )); > > > > >extern void cfree (void *__ptr) __attribute__ ((__nothrow__ )); > > > ># 1 "../include/alloca.h" 1 > > ># 1 "../stdlib/alloca.h" 1 ># 24 "../stdlib/alloca.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 25 "../stdlib/alloca.h" 2 > > > > > > > >extern void *alloca (size_t __size) __attribute__ ((__nothrow__ )); > > > > > > ># 4 "../include/alloca.h" 2 ># 1 "../include/stackinfo.h" 1 ># 24 "../include/stackinfo.h" ># 1 "../sysdeps/i386/stackinfo.h" 1 ># 24 "../sysdeps/i386/stackinfo.h" ># 1 "../include/elf.h" 1 > ># 1 "../elf/elf.h" 1 ># 24 "../elf/elf.h" > > > > > > > >typedef uint16_t Elf32_Half; >typedef uint16_t Elf64_Half; > > >typedef uint32_t Elf32_Word; >typedef int32_t Elf32_Sword; >typedef uint32_t Elf64_Word; >typedef int32_t Elf64_Sword; > > >typedef uint64_t Elf32_Xword; >typedef int64_t Elf32_Sxword; >typedef uint64_t Elf64_Xword; >typedef int64_t Elf64_Sxword; > > >typedef uint32_t Elf32_Addr; >typedef uint64_t Elf64_Addr; > > >typedef uint32_t Elf32_Off; >typedef uint64_t Elf64_Off; > > >typedef uint16_t Elf32_Section; >typedef uint16_t Elf64_Section; > > >typedef Elf32_Half Elf32_Versym; >typedef Elf64_Half Elf64_Versym; > > > > > > >typedef struct >{ > unsigned char e_ident[(16)]; > Elf32_Half e_type; > Elf32_Half e_machine; > Elf32_Word e_version; > Elf32_Addr e_entry; > Elf32_Off e_phoff; > Elf32_Off e_shoff; > Elf32_Word e_flags; > Elf32_Half e_ehsize; > Elf32_Half e_phentsize; > Elf32_Half e_phnum; > Elf32_Half e_shentsize; > Elf32_Half e_shnum; > Elf32_Half e_shstrndx; >} Elf32_Ehdr; > >typedef struct >{ > unsigned char e_ident[(16)]; > Elf64_Half e_type; > Elf64_Half e_machine; > Elf64_Word e_version; > Elf64_Addr e_entry; > Elf64_Off e_phoff; > Elf64_Off e_shoff; > Elf64_Word e_flags; > Elf64_Half e_ehsize; > Elf64_Half e_phentsize; > Elf64_Half e_phnum; > Elf64_Half e_shentsize; > Elf64_Half e_shnum; > Elf64_Half e_shstrndx; >} Elf64_Ehdr; ># 272 "../elf/elf.h" >typedef struct >{ > Elf32_Word sh_name; > Elf32_Word sh_type; > Elf32_Word sh_flags; > Elf32_Addr sh_addr; > Elf32_Off sh_offset; > Elf32_Word sh_size; > Elf32_Word sh_link; > Elf32_Word sh_info; > Elf32_Word sh_addralign; > Elf32_Word sh_entsize; >} Elf32_Shdr; > >typedef struct >{ > Elf64_Word sh_name; > Elf64_Word sh_type; > Elf64_Xword sh_flags; > Elf64_Addr sh_addr; > Elf64_Off sh_offset; > Elf64_Xword sh_size; > Elf64_Word sh_link; > Elf64_Word sh_info; > Elf64_Xword sh_addralign; > Elf64_Xword sh_entsize; >} Elf64_Shdr; ># 381 "../elf/elf.h" >typedef struct >{ > Elf32_Word st_name; > Elf32_Addr st_value; > Elf32_Word st_size; > unsigned char st_info; > unsigned char st_other; > Elf32_Section st_shndx; >} Elf32_Sym; > >typedef struct >{ > Elf64_Word st_name; > unsigned char st_info; > unsigned char st_other; > Elf64_Section st_shndx; > Elf64_Addr st_value; > Elf64_Xword st_size; >} Elf64_Sym; > > > > >typedef struct >{ > Elf32_Half si_boundto; > Elf32_Half si_flags; >} Elf32_Syminfo; > >typedef struct >{ > Elf64_Half si_boundto; > Elf64_Half si_flags; >} Elf64_Syminfo; ># 496 "../elf/elf.h" >typedef struct >{ > Elf32_Addr r_offset; > Elf32_Word r_info; >} Elf32_Rel; > > > > > > >typedef struct >{ > Elf64_Addr r_offset; > Elf64_Xword r_info; >} Elf64_Rel; > > > >typedef struct >{ > Elf32_Addr r_offset; > Elf32_Word r_info; > Elf32_Sword r_addend; >} Elf32_Rela; > >typedef struct >{ > Elf64_Addr r_offset; > Elf64_Xword r_info; > Elf64_Sxword r_addend; >} Elf64_Rela; ># 541 "../elf/elf.h" >typedef struct >{ > Elf32_Word p_type; > Elf32_Off p_offset; > Elf32_Addr p_vaddr; > Elf32_Addr p_paddr; > Elf32_Word p_filesz; > Elf32_Word p_memsz; > Elf32_Word p_flags; > Elf32_Word p_align; >} Elf32_Phdr; > >typedef struct >{ > Elf64_Word p_type; > Elf64_Word p_flags; > Elf64_Off p_offset; > Elf64_Addr p_vaddr; > Elf64_Addr p_paddr; > Elf64_Xword p_filesz; > Elf64_Xword p_memsz; > Elf64_Xword p_align; >} Elf64_Phdr; ># 652 "../elf/elf.h" >typedef struct >{ > Elf32_Sword d_tag; > union > { > Elf32_Word d_val; > Elf32_Addr d_ptr; > } d_un; >} Elf32_Dyn; > >typedef struct >{ > Elf64_Sxword d_tag; > union > { > Elf64_Xword d_val; > Elf64_Addr d_ptr; > } d_un; >} Elf64_Dyn; ># 828 "../elf/elf.h" >typedef struct >{ > Elf32_Half vd_version; > Elf32_Half vd_flags; > Elf32_Half vd_ndx; > Elf32_Half vd_cnt; > Elf32_Word vd_hash; > Elf32_Word vd_aux; > Elf32_Word vd_next; > >} Elf32_Verdef; > >typedef struct >{ > Elf64_Half vd_version; > Elf64_Half vd_flags; > Elf64_Half vd_ndx; > Elf64_Half vd_cnt; > Elf64_Word vd_hash; > Elf64_Word vd_aux; > Elf64_Word vd_next; > >} Elf64_Verdef; ># 870 "../elf/elf.h" >typedef struct >{ > Elf32_Word vda_name; > Elf32_Word vda_next; > >} Elf32_Verdaux; > >typedef struct >{ > Elf64_Word vda_name; > Elf64_Word vda_next; > >} Elf64_Verdaux; > > > > >typedef struct >{ > Elf32_Half vn_version; > Elf32_Half vn_cnt; > Elf32_Word vn_file; > > Elf32_Word vn_aux; > Elf32_Word vn_next; > >} Elf32_Verneed; > >typedef struct >{ > Elf64_Half vn_version; > Elf64_Half vn_cnt; > Elf64_Word vn_file; > > Elf64_Word vn_aux; > Elf64_Word vn_next; > >} Elf64_Verneed; ># 917 "../elf/elf.h" >typedef struct >{ > Elf32_Word vna_hash; > Elf32_Half vna_flags; > Elf32_Half vna_other; > Elf32_Word vna_name; > Elf32_Word vna_next; > >} Elf32_Vernaux; > >typedef struct >{ > Elf64_Word vna_hash; > Elf64_Half vna_flags; > Elf64_Half vna_other; > Elf64_Word vna_name; > Elf64_Word vna_next; > >} Elf64_Vernaux; ># 951 "../elf/elf.h" >typedef struct >{ > uint32_t a_type; > union > { > uint32_t a_val; > > > > } a_un; >} Elf32_auxv_t; > >typedef struct >{ > uint64_t a_type; > union > { > uint64_t a_val; > > > > } a_un; >} Elf64_auxv_t; ># 1038 "../elf/elf.h" >typedef struct >{ > Elf32_Word n_namesz; > Elf32_Word n_descsz; > Elf32_Word n_type; >} Elf32_Nhdr; > >typedef struct >{ > Elf64_Word n_namesz; > Elf64_Word n_descsz; > Elf64_Word n_type; >} Elf64_Nhdr; ># 1102 "../elf/elf.h" >typedef struct >{ > Elf32_Xword m_value; > Elf32_Word m_info; > Elf32_Word m_poffset; > Elf32_Half m_repeat; > Elf32_Half m_stride; >} Elf32_Move; > >typedef struct >{ > Elf64_Xword m_value; > Elf64_Xword m_info; > Elf64_Xword m_poffset; > Elf64_Half m_repeat; > Elf64_Half m_stride; >} Elf64_Move; ># 1488 "../elf/elf.h" >typedef union >{ > struct > { > Elf32_Word gt_current_g_value; > Elf32_Word gt_unused; > } gt_header; > struct > { > Elf32_Word gt_g_value; > Elf32_Word gt_bytes; > } gt_entry; >} Elf32_gptab; > > > >typedef struct >{ > Elf32_Word ri_gprmask; > Elf32_Word ri_cprmask[4]; > Elf32_Sword ri_gp_value; >} Elf32_RegInfo; > > > >typedef struct >{ > unsigned char kind; > > unsigned char size; > Elf32_Section section; > > Elf32_Word info; >} Elf_Options; ># 1564 "../elf/elf.h" >typedef struct >{ > Elf32_Word hwp_flags1; > Elf32_Word hwp_flags2; >} Elf_Options_Hw; ># 1725 "../elf/elf.h" >typedef struct >{ > Elf32_Word l_name; > Elf32_Word l_time_stamp; > Elf32_Word l_checksum; > Elf32_Word l_version; > Elf32_Word l_flags; >} Elf32_Lib; > >typedef struct >{ > Elf64_Word l_name; > Elf64_Word l_time_stamp; > Elf64_Word l_checksum; > Elf64_Word l_version; > Elf64_Word l_flags; >} Elf64_Lib; ># 1756 "../elf/elf.h" >typedef Elf32_Addr Elf32_Conflict; ># 3361 "../elf/elf.h" > ># 3 "../include/elf.h" 2 > > ># 1 "../sysdeps/generic/dl-dtprocnum.h" 1 ># 6 "../include/elf.h" 2 ># 25 "../sysdeps/i386/stackinfo.h" 2 ># 25 "../include/stackinfo.h" 2 ># 5 "../include/alloca.h" 2 > > > > >extern void *__alloca (size_t __size); > > > > > >extern int __libc_use_alloca (size_t size) __attribute__ ((const)); >extern int __libc_alloca_cutoff (size_t size) __attribute__ ((const)); > > > > ># 1 "../sysdeps/pthread/allocalim.h" 1 ># 19 "../sysdeps/pthread/allocalim.h" ># 1 "../include/alloca.h" 1 ># 20 "../sysdeps/pthread/allocalim.h" 2 ># 1 "../include/limits.h" 1 ># 123 "../include/limits.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed/limits.h" 1 3 4 ># 124 "../include/limits.h" 2 ># 143 "../include/limits.h" ># 1 "../include/bits/posix1_lim.h" 1 ># 1 "../posix/bits/posix1_lim.h" 1 ># 160 "../posix/bits/posix1_lim.h" ># 1 "../sysdeps/unix/sysv/linux/bits/local_lim.h" 1 ># 38 "../sysdeps/unix/sysv/linux/bits/local_lim.h" ># 1 "/usr/include/linux/limits.h" 1 3 4 ># 39 "../sysdeps/unix/sysv/linux/bits/local_lim.h" 2 ># 161 "../posix/bits/posix1_lim.h" 2 ># 1 "../include/bits/posix1_lim.h" 2 ># 144 "../include/limits.h" 2 > > > ># 1 "../include/bits/posix2_lim.h" 1 ># 1 "../posix/bits/posix2_lim.h" 1 ># 1 "../include/bits/posix2_lim.h" 2 ># 148 "../include/limits.h" 2 > > > ># 1 "../include/bits/xopen_lim.h" 1 ># 33 "../include/bits/xopen_lim.h" ># 1 "/suse/schwab/src/libc/i586/bits/stdio_lim.h" 1 ># 34 "../include/bits/xopen_lim.h" 2 ># 152 "../include/limits.h" 2 ># 21 "../sysdeps/pthread/allocalim.h" 2 > > >extern __inline __attribute__ ((__always_inline__)) >int >__libc_use_alloca (size_t size) >{ > return (__builtin_expect (size <= 16384 / 4, 1) > || __builtin_expect (__libc_alloca_cutoff (size), 1)); >} ># 22 "../include/alloca.h" 2 ># 493 "../stdlib/stdlib.h" 2 > > > > > >extern void *valloc (size_t __size) __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) ; > > > > >extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size) > __attribute__ ((__nothrow__ )) ; > > > > >extern void *aligned_alloc (size_t __alignment, size_t __size) > __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) __attribute__ ((__alloc_size__ (2))) ; > > > > >extern void abort (void) __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > >extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int at_quick_exit (void (*__func) (void)) __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern void exit (int __status) __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > > > >extern void quick_exit (int __status) __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > > > > > >extern void _Exit (int __status) __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > > > > >extern char *getenv (const char *__name) __attribute__ ((__nothrow__ )) ; > > > > > >extern char *secure_getenv (const char *__name) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern int putenv (char *__string) __attribute__ ((__nothrow__ )) ; > > > > > >extern int setenv (const char *__name, const char *__value, int __replace) > __attribute__ ((__nothrow__ )) ; > > >extern int unsetenv (const char *__name) __attribute__ ((__nothrow__ )) ; > > > > > > >extern int clearenv (void) __attribute__ ((__nothrow__ )); ># 606 "../stdlib/stdlib.h" >extern char *mktemp (char *__template) __attribute__ ((__nothrow__ )) ; ># 619 "../stdlib/stdlib.h" >extern int mkstemp (char *__template) ; ># 629 "../stdlib/stdlib.h" >extern int mkstemp64 (char *__template) ; ># 641 "../stdlib/stdlib.h" >extern int mkstemps (char *__template, int __suffixlen) ; ># 651 "../stdlib/stdlib.h" >extern int mkstemps64 (char *__template, int __suffixlen) > ; ># 662 "../stdlib/stdlib.h" >extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__ )) ; ># 673 "../stdlib/stdlib.h" >extern int mkostemp (char *__template, int __flags) ; ># 683 "../stdlib/stdlib.h" >extern int mkostemp64 (char *__template, int __flags) ; ># 693 "../stdlib/stdlib.h" >extern int mkostemps (char *__template, int __suffixlen, int __flags) > ; ># 705 "../stdlib/stdlib.h" >extern int mkostemps64 (char *__template, int __suffixlen, int __flags) > ; > > > > > > > > > >extern int system (const char *__command) ; > > > > > > >extern char *canonicalize_file_name (const char *__name) > __attribute__ ((__nothrow__ )) ; ># 733 "../stdlib/stdlib.h" >extern char *realpath (const char *__restrict __name, > char *__restrict __resolved) __attribute__ ((__nothrow__ )) ; > > > > > > >typedef int (*__compar_fn_t) (const void *, const void *); > > >typedef __compar_fn_t comparison_fn_t; > > > >typedef int (*__compar_d_fn_t) (const void *, const void *, void *); > > > > > >extern void *bsearch (const void *__key, const void *__base, > size_t __nmemb, size_t __size, __compar_fn_t __compar) > ; > > ># 1 "../bits/stdlib-bsearch.h" 1 ># 19 "../bits/stdlib-bsearch.h" >extern __inline __attribute__ ((__gnu_inline__)) void * >bsearch (const void *__key, const void *__base, size_t __nmemb, size_t __size, > __compar_fn_t __compar) >{ > size_t __l, __u, __idx; > const void *__p; > int __comparison; > > __l = 0; > __u = __nmemb; > while (__l < __u) > { > __idx = (__l + __u) / 2; > __p = (void *) (((const char *) __base) + (__idx * __size)); > __comparison = (*__compar) (__key, __p); > if (__comparison < 0) > __u = __idx; > else if (__comparison > 0) > __l = __idx + 1; > else > return (void *) __p; > } > > return ((void *)0); >} ># 760 "../stdlib/stdlib.h" 2 > > > > >extern void qsort (void *__base, size_t __nmemb, size_t __size, > __compar_fn_t __compar) ; > >extern void qsort_r (void *__base, size_t __nmemb, size_t __size, > __compar_d_fn_t __compar, void *__arg) > ; > > > > >extern int abs (int __x) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) ; >extern long int labs (long int __x) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) ; > > > >__extension__ extern long long int llabs (long long int __x) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) ; > > > > > > > >extern div_t div (int __numer, int __denom) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) ; >extern ldiv_t ldiv (long int __numer, long int __denom) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) ; > > > > >__extension__ extern lldiv_t lldiv (long long int __numer, > long long int __denom) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) ; > ># 811 "../stdlib/stdlib.h" >extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign) __attribute__ ((__nothrow__ )) ; > > > > >extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign) __attribute__ ((__nothrow__ )) ; > > > > >extern char *gcvt (double __value, int __ndigit, char *__buf) > __attribute__ ((__nothrow__ )) ; > > > > >extern char *qecvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign) > __attribute__ ((__nothrow__ )) ; >extern char *qfcvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign) > __attribute__ ((__nothrow__ )) ; >extern char *qgcvt (long double __value, int __ndigit, char *__buf) > __attribute__ ((__nothrow__ )) ; > > > > >extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len) __attribute__ ((__nothrow__ )) ; >extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len) __attribute__ ((__nothrow__ )) ; > >extern int qecvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len) > __attribute__ ((__nothrow__ )) ; >extern int qfcvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern int mblen (const char *__s, size_t __n) __attribute__ ((__nothrow__ )); > > >extern int mbtowc (wchar_t *__restrict __pwc, > const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ )); > > >extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__ )); > > > >extern size_t mbstowcs (wchar_t *__restrict __pwcs, > const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ )); > >extern size_t wcstombs (char *__restrict __s, > const wchar_t *__restrict __pwcs, size_t __n) > __attribute__ ((__nothrow__ )); > > > > > > > > >extern int rpmatch (const char *__response) __attribute__ ((__nothrow__ )) ; ># 898 "../stdlib/stdlib.h" >extern int getsubopt (char **__restrict __optionp, > char *const *__restrict __tokens, > char **__restrict __valuep) > __attribute__ ((__nothrow__ )) ; > > > > > >extern void setkey (const char *__key) __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int posix_openpt (int __oflag) ; > > > > > > > >extern int grantpt (int __fd) __attribute__ ((__nothrow__ )); > > > >extern int unlockpt (int __fd) __attribute__ ((__nothrow__ )); > > > > >extern char *ptsname (int __fd) __attribute__ ((__nothrow__ )) ; > > > > > > >extern int ptsname_r (int __fd, char *__buf, size_t __buflen) > __attribute__ ((__nothrow__ )) ; > > >extern int getpt (void); > > > > > > >extern int getloadavg (double __loadavg[], int __nelem) > __attribute__ ((__nothrow__ )) ; > > ># 1 "../include/bits/stdlib-float.h" 1 > > ># 1 "../stdlib/bits/stdlib-float.h" 1 ># 24 "../stdlib/bits/stdlib-float.h" > >extern __inline __attribute__ ((__gnu_inline__)) double >__attribute__ ((__nothrow__ )) atof (const char *__nptr) >{ > return strtod (__nptr, (char **) ((void *)0)); >} > ># 4 "../include/bits/stdlib-float.h" 2 ># 955 "../stdlib/stdlib.h" 2 ># 967 "../stdlib/stdlib.h" > ># 11 "../include/stdlib.h" 2 > > > ># 1 "../include/sys/stat.h" 1 > ># 1 "../io/sys/stat.h" 1 ># 36 "../io/sys/stat.h" ># 1 "../include/time.h" 1 > > ># 1 "../time/time.h" 1 ># 4 "../include/time.h" 2 ># 37 "../io/sys/stat.h" 2 ># 102 "../io/sys/stat.h" > > ># 1 "../sysdeps/unix/sysv/linux/x86/bits/stat.h" 1 ># 46 "../sysdeps/unix/sysv/linux/x86/bits/stat.h" >struct stat > { > __dev_t st_dev; > > unsigned short int __pad1; > > > __ino_t st_ino; > > > > > __mode_t st_mode; > __nlink_t st_nlink; > > > > > __uid_t st_uid; > __gid_t st_gid; > > > > __dev_t st_rdev; > > unsigned short int __pad2; > > > __off_t st_size; > > > > __blksize_t st_blksize; > > __blkcnt_t st_blocks; ># 91 "../sysdeps/unix/sysv/linux/x86/bits/stat.h" > struct timespec st_atim; > struct timespec st_mtim; > struct timespec st_ctim; ># 109 "../sysdeps/unix/sysv/linux/x86/bits/stat.h" > unsigned long int __glibc_reserved4; > unsigned long int __glibc_reserved5; > > > > > }; > > > >struct stat64 > { > __dev_t st_dev; > > > > > > unsigned int __pad1; > __ino_t __st_ino; > __mode_t st_mode; > __nlink_t st_nlink; > > __uid_t st_uid; > __gid_t st_gid; > > > > > > __dev_t st_rdev; > unsigned int __pad2; > __off64_t st_size; > > __blksize_t st_blksize; > __blkcnt64_t st_blocks; > > > > > > > > struct timespec st_atim; > struct timespec st_mtim; > struct timespec st_ctim; ># 166 "../sysdeps/unix/sysv/linux/x86/bits/stat.h" > __ino64_t st_ino; > > }; ># 105 "../io/sys/stat.h" 2 ># 208 "../io/sys/stat.h" >extern int stat (const char *__restrict __file, > struct stat *__restrict __buf) __attribute__ ((__nothrow__ )) ; > > > >extern int fstat (int __fd, struct stat *__buf) __attribute__ ((__nothrow__ )) ; ># 227 "../io/sys/stat.h" >extern int stat64 (const char *__restrict __file, > struct stat64 *__restrict __buf) __attribute__ ((__nothrow__ )) ; >extern int fstat64 (int __fd, struct stat64 *__buf) __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int fstatat (int __fd, const char *__restrict __file, > struct stat *__restrict __buf, int __flag) > __attribute__ ((__nothrow__ )) ; ># 252 "../io/sys/stat.h" >extern int fstatat64 (int __fd, const char *__restrict __file, > struct stat64 *__restrict __buf, int __flag) > __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int lstat (const char *__restrict __file, > struct stat *__restrict __buf) __attribute__ ((__nothrow__ )) ; ># 275 "../io/sys/stat.h" >extern int lstat64 (const char *__restrict __file, > struct stat64 *__restrict __buf) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int chmod (const char *__file, __mode_t __mode) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int lchmod (const char *__file, __mode_t __mode) > __attribute__ ((__nothrow__ )) ; > > > > >extern int fchmod (int __fd, __mode_t __mode) __attribute__ ((__nothrow__ )); > > > > > >extern int fchmodat (int __fd, const char *__file, __mode_t __mode, > int __flag) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern __mode_t umask (__mode_t __mask) __attribute__ ((__nothrow__ )); > > > > >extern __mode_t getumask (void) __attribute__ ((__nothrow__ )); > > > >extern int mkdir (const char *__path, __mode_t __mode) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int mkdirat (int __fd, const char *__path, __mode_t __mode) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern int mknod (const char *__path, __mode_t __mode, __dev_t __dev) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int mknodat (int __fd, const char *__path, __mode_t __mode, > __dev_t __dev) __attribute__ ((__nothrow__ )) ; > > > > > >extern int mkfifo (const char *__path, __mode_t __mode) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int mkfifoat (int __fd, const char *__path, __mode_t __mode) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int utimensat (int __fd, const char *__path, > const struct timespec __times[2], > int __flags) > __attribute__ ((__nothrow__ )) ; > > > > >extern int futimens (int __fd, const struct timespec __times[2]) __attribute__ ((__nothrow__ )); ># 398 "../io/sys/stat.h" >extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf) > __attribute__ ((__nothrow__ )) ; >extern int __xstat (int __ver, const char *__filename, > struct stat *__stat_buf) __attribute__ ((__nothrow__ )) ; >extern int __lxstat (int __ver, const char *__filename, > struct stat *__stat_buf) __attribute__ ((__nothrow__ )) ; >extern int __fxstatat (int __ver, int __fildes, const char *__filename, > struct stat *__stat_buf, int __flag) > __attribute__ ((__nothrow__ )) ; ># 431 "../io/sys/stat.h" >extern int __fxstat64 (int __ver, int __fildes, struct stat64 *__stat_buf) > __attribute__ ((__nothrow__ )) ; >extern int __xstat64 (int __ver, const char *__filename, > struct stat64 *__stat_buf) __attribute__ ((__nothrow__ )) ; >extern int __lxstat64 (int __ver, const char *__filename, > struct stat64 *__stat_buf) __attribute__ ((__nothrow__ )) ; >extern int __fxstatat64 (int __ver, int __fildes, const char *__filename, > struct stat64 *__stat_buf, int __flag) > __attribute__ ((__nothrow__ )) ; > >extern int __xmknod (int __ver, const char *__path, __mode_t __mode, > __dev_t *__dev) __attribute__ ((__nothrow__ )) ; > >extern int __xmknodat (int __ver, int __fd, const char *__path, > __mode_t __mode, __dev_t *__dev) > __attribute__ ((__nothrow__ )) ; > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) stat (const char *__path, struct stat *__statbuf) >{ > return __xstat (3, __path, __statbuf); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) lstat (const char *__path, struct stat *__statbuf) >{ > return __lxstat (3, __path, __statbuf); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) fstat (int __fd, struct stat *__statbuf) >{ > return __fxstat (3, __fd, __statbuf); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) fstatat (int __fd, const char *__filename, struct stat *__statbuf, int __flag) > >{ > return __fxstatat (3, __fd, __filename, __statbuf, __flag); >} > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) mknod (const char *__path, __mode_t __mode, __dev_t __dev) >{ > return __xmknod (1, __path, __mode, &__dev); >} > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) mknodat (int __fd, const char *__path, __mode_t __mode, __dev_t __dev) > >{ > return __xmknodat (1, __fd, __path, __mode, &__dev); >} > > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) stat64 (const char *__path, struct stat64 *__statbuf) >{ > return __xstat64 (3, __path, __statbuf); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) lstat64 (const char *__path, struct stat64 *__statbuf) >{ > return __lxstat64 (3, __path, __statbuf); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) fstat64 (int __fd, struct stat64 *__statbuf) >{ > return __fxstat64 (3, __fd, __statbuf); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) fstatat64 (int __fd, const char *__filename, struct stat64 *__statbuf, int __flag) > >{ > return __fxstatat64 (3, __fd, __filename, __statbuf, __flag); >} > > > > > > > ># 3 "../include/sys/stat.h" 2 > > > >extern int __stat (const char *__file, struct stat *__buf); >extern int __fstat (int __fd, struct stat *__buf); >extern int __lstat (const char *__file, struct stat *__buf); >extern int __chmod (const char *__file, __mode_t __mode); >extern int __fchmod (int __fd, __mode_t __mode); >extern __mode_t __umask (__mode_t __mask); >extern int __mkdir (const char *__path, __mode_t __mode); >extern int __mknod (const char *__path, > __mode_t __mode, __dev_t __dev); ># 23 "../include/sys/stat.h" >extern __inline__ int __stat (const char *__path, struct stat *__statbuf) >{ > return __xstat (3, __path, __statbuf); >} > >extern __inline__ int __mknod (const char *__path, __mode_t __mode, > __dev_t __dev) >{ > return __xmknod (1, __path, __mode, &__dev); >} > > > > ># 15 "../include/stdlib.h" 2 > > > >extern __typeof (strtol_l) __strtol_l; >extern __typeof (strtoul_l) __strtoul_l; >extern __typeof (strtoll_l) __strtoll_l; >extern __typeof (strtoull_l) __strtoull_l; >extern __typeof (strtod_l) __strtod_l; >extern __typeof (strtof_l) __strtof_l; >extern __typeof (strtold_l) __strtold_l; > > > > > > > > > > > >extern __typeof (secure_getenv) __libc_secure_getenv; > > > > > > > >extern long int __random (void); >extern void __srandom (unsigned int __seed); >extern char *__initstate (unsigned int __seed, char *__statebuf, > size_t __statelen); >extern char *__setstate (char *__statebuf); >extern int __random_r (struct random_data *__buf, int32_t *__result); >extern int __srandom_r (unsigned int __seed, struct random_data *__buf); >extern int __initstate_r (unsigned int __seed, char *__statebuf, > size_t __statelen, struct random_data *__buf); >extern int __setstate_r (char *__statebuf, struct random_data *__buf); >extern int __rand_r (unsigned int *__seed); >extern int __erand48_r (unsigned short int __xsubi[3], > struct drand48_data *__buffer, double *__result); >extern int __nrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__buffer, > long int *__result); >extern int __jrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__buffer, > long int *__result); >extern int __srand48_r (long int __seedval, > struct drand48_data *__buffer); >extern int __seed48_r (unsigned short int __seed16v[3], > struct drand48_data *__buffer); >extern int __lcong48_r (unsigned short int __param[7], > struct drand48_data *__buffer); > > >extern int __drand48_iterate (unsigned short int __xsubi[3], > struct drand48_data *__buffer); > > >extern struct drand48_data __libc_drand48_data __attribute__ ((visibility ("hidden"))); > >extern int __setenv (const char *__name, const char *__value, int __replace); >extern int __unsetenv (const char *__name); >extern int __clearenv (void); >extern char *__mktemp (char *__template) __attribute__ ((__nothrow__ )) ; >extern char *__canonicalize_file_name (const char *__name); >extern char *__realpath (const char *__name, char *__resolved); >extern int __ptsname_r (int __fd, char *__buf, size_t __buflen); > >extern int __ptsname_internal (int fd, char *buf, size_t buflen, > struct stat64 *stp); > >extern int __getpt (void); >extern int __posix_openpt (int __oflag); > >extern int __add_to_environ (const char *name, const char *value, > const char *combines, int replace); > >extern void _quicksort (void *const pbase, size_t total_elems, > size_t size, __compar_d_fn_t cmp, void *arg); > >extern int __on_exit (void (*__func) (int __status, void *__arg), void *__arg); > >extern int __cxa_atexit (void (*func) (void *), void *arg, void *d); >extern int __cxa_atexit_internal (void (*func) (void *), void *arg, void *d) > __attribute__ ((visibility ("hidden"))); > >extern int __cxa_thread_atexit_impl (void (*func) (void *), void *arg, > void *d); >extern void __call_tls_dtors (void) > > > > ; > > >extern void __cxa_finalize (void *d); > >extern int __posix_memalign (void **memptr, size_t alignment, size_t size); > >extern void *__libc_memalign (size_t alignment, size_t size) > __attribute__ ((__malloc__)); > >extern int __libc_system (const char *line); > > >extern double __strtod_internal (const char *__restrict __nptr, > char **__restrict __endptr, int __group) > __attribute__ ((__nothrow__ )) ; >extern float __strtof_internal (const char *__restrict __nptr, > char **__restrict __endptr, int __group) > __attribute__ ((__nothrow__ )) ; >extern long double __strtold_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __group) > __attribute__ ((__nothrow__ )) ; >extern long int __strtol_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group) > __attribute__ ((__nothrow__ )) ; >extern unsigned long int __strtoul_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group) > __attribute__ ((__nothrow__ )) ; >__extension__ >extern long long int __strtoll_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group) > __attribute__ ((__nothrow__ )) ; >__extension__ >extern unsigned long long int __strtoull_internal (const char * > __restrict __nptr, > char **__restrict __endptr, > int __base, int __group) > __attribute__ ((__nothrow__ )) ; > > > > > > > > >extern double ____strtod_l_internal (const char *__restrict __nptr, > char **__restrict __endptr, int __group, > __locale_t __loc); >extern float ____strtof_l_internal (const char *__restrict __nptr, > char **__restrict __endptr, int __group, > __locale_t __loc); >extern long double ____strtold_l_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __group, __locale_t __loc); >extern long int ____strtol_l_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group, > __locale_t __loc); >extern unsigned long int ____strtoul_l_internal (const char * > __restrict __nptr, > char **__restrict __endptr, > int __base, int __group, > __locale_t __loc); >__extension__ >extern long long int ____strtoll_l_internal (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group, > __locale_t __loc); >__extension__ >extern unsigned long long int ____strtoull_l_internal (const char * > __restrict __nptr, > char ** > __restrict __endptr, > int __base, int __group, > __locale_t __loc); > > > > > > > > > > > > > > > > > >extern char *__ecvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign); >extern char *__fcvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign); >extern char *__gcvt (double __value, int __ndigit, char *__buf); >extern int __ecvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len); >extern int __fcvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len); >extern char *__qecvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign); >extern char *__qfcvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign); >extern char *__qgcvt (long double __value, int __ndigit, char *__buf); >extern int __qecvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len); >extern int __qfcvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len); ># 236 "../include/stdlib.h" >extern void *__default_morecore (ptrdiff_t) __attribute__ ((__nothrow__ )); > > >struct abort_msg_s >{ > unsigned int size; > char msg[0]; >}; >extern struct abort_msg_s *__abort_msg; > > > ># 28 "../sysdeps/i386/nptl/tls.h" 2 ># 1 "../sysdeps/unix/sysv/linux/i386/sysdep.h" 1 ># 23 "../sysdeps/unix/sysv/linux/i386/sysdep.h" ># 1 "../sysdeps/unix/i386/sysdep.h" 1 ># 18 "../sysdeps/unix/i386/sysdep.h" ># 1 "../sysdeps/unix/sysdep.h" 1 ># 18 "../sysdeps/unix/sysdep.h" ># 1 "../sysdeps/generic/sysdep.h" 1 ># 97 "../sysdeps/generic/sysdep.h" ># 1 "../sysdeps/generic/dwarf2.h" 1 ># 38 "../sysdeps/generic/dwarf2.h" >enum dwarf_tag > { > DW_TAG_padding = 0x00, > DW_TAG_array_type = 0x01, > DW_TAG_class_type = 0x02, > DW_TAG_entry_point = 0x03, > DW_TAG_enumeration_type = 0x04, > DW_TAG_formal_parameter = 0x05, > DW_TAG_imported_declaration = 0x08, > DW_TAG_label = 0x0a, > DW_TAG_lexical_block = 0x0b, > DW_TAG_member = 0x0d, > DW_TAG_pointer_type = 0x0f, > DW_TAG_reference_type = 0x10, > DW_TAG_compile_unit = 0x11, > DW_TAG_string_type = 0x12, > DW_TAG_structure_type = 0x13, > DW_TAG_subroutine_type = 0x15, > DW_TAG_typedef = 0x16, > DW_TAG_union_type = 0x17, > DW_TAG_unspecified_parameters = 0x18, > DW_TAG_variant = 0x19, > DW_TAG_common_block = 0x1a, > DW_TAG_common_inclusion = 0x1b, > DW_TAG_inheritance = 0x1c, > DW_TAG_inlined_subroutine = 0x1d, > DW_TAG_module = 0x1e, > DW_TAG_ptr_to_member_type = 0x1f, > DW_TAG_set_type = 0x20, > DW_TAG_subrange_type = 0x21, > DW_TAG_with_stmt = 0x22, > DW_TAG_access_declaration = 0x23, > DW_TAG_base_type = 0x24, > DW_TAG_catch_block = 0x25, > DW_TAG_const_type = 0x26, > DW_TAG_constant = 0x27, > DW_TAG_enumerator = 0x28, > DW_TAG_file_type = 0x29, > DW_TAG_friend = 0x2a, > DW_TAG_namelist = 0x2b, > DW_TAG_namelist_item = 0x2c, > DW_TAG_packed_type = 0x2d, > DW_TAG_subprogram = 0x2e, > DW_TAG_template_type_param = 0x2f, > DW_TAG_template_value_param = 0x30, > DW_TAG_thrown_type = 0x31, > DW_TAG_try_block = 0x32, > DW_TAG_variant_part = 0x33, > DW_TAG_variable = 0x34, > DW_TAG_volatile_type = 0x35, > > DW_TAG_MIPS_loop = 0x4081, > > DW_TAG_format_label = 0x4101, > DW_TAG_function_template = 0x4102, > DW_TAG_class_template = 0x4103, > DW_TAG_GNU_BINCL = 0x4104, > DW_TAG_GNU_EINCL = 0x4105 > }; ># 106 "../sysdeps/generic/dwarf2.h" >enum dwarf_form > { > DW_FORM_addr = 0x01, > DW_FORM_block2 = 0x03, > DW_FORM_block4 = 0x04, > DW_FORM_data2 = 0x05, > DW_FORM_data4 = 0x06, > DW_FORM_data8 = 0x07, > DW_FORM_string = 0x08, > DW_FORM_block = 0x09, > DW_FORM_block1 = 0x0a, > DW_FORM_data1 = 0x0b, > DW_FORM_flag = 0x0c, > DW_FORM_sdata = 0x0d, > DW_FORM_strp = 0x0e, > DW_FORM_udata = 0x0f, > DW_FORM_ref_addr = 0x10, > DW_FORM_ref1 = 0x11, > DW_FORM_ref2 = 0x12, > DW_FORM_ref4 = 0x13, > DW_FORM_ref8 = 0x14, > DW_FORM_ref_udata = 0x15, > DW_FORM_indirect = 0x16 > }; > > > >enum dwarf_attribute > { > DW_AT_sibling = 0x01, > DW_AT_location = 0x02, > DW_AT_name = 0x03, > DW_AT_ordering = 0x09, > DW_AT_subscr_data = 0x0a, > DW_AT_byte_size = 0x0b, > DW_AT_bit_offset = 0x0c, > DW_AT_bit_size = 0x0d, > DW_AT_element_list = 0x0f, > DW_AT_stmt_list = 0x10, > DW_AT_low_pc = 0x11, > DW_AT_high_pc = 0x12, > DW_AT_language = 0x13, > DW_AT_member = 0x14, > DW_AT_discr = 0x15, > DW_AT_discr_value = 0x16, > DW_AT_visibility = 0x17, > DW_AT_import = 0x18, > DW_AT_string_length = 0x19, > DW_AT_common_reference = 0x1a, > DW_AT_comp_dir = 0x1b, > DW_AT_const_value = 0x1c, > DW_AT_containing_type = 0x1d, > DW_AT_default_value = 0x1e, > DW_AT_inline = 0x20, > DW_AT_is_optional = 0x21, > DW_AT_lower_bound = 0x22, > DW_AT_producer = 0x25, > DW_AT_prototyped = 0x27, > DW_AT_return_addr = 0x2a, > DW_AT_start_scope = 0x2c, > DW_AT_stride_size = 0x2e, > DW_AT_upper_bound = 0x2f, > DW_AT_abstract_origin = 0x31, > DW_AT_accessibility = 0x32, > DW_AT_address_class = 0x33, > DW_AT_artificial = 0x34, > DW_AT_base_types = 0x35, > DW_AT_calling_convention = 0x36, > DW_AT_count = 0x37, > DW_AT_data_member_location = 0x38, > DW_AT_decl_column = 0x39, > DW_AT_decl_file = 0x3a, > DW_AT_decl_line = 0x3b, > DW_AT_declaration = 0x3c, > DW_AT_discr_list = 0x3d, > DW_AT_encoding = 0x3e, > DW_AT_external = 0x3f, > DW_AT_frame_base = 0x40, > DW_AT_friend = 0x41, > DW_AT_identifier_case = 0x42, > DW_AT_macro_info = 0x43, > DW_AT_namelist_items = 0x44, > DW_AT_priority = 0x45, > DW_AT_segment = 0x46, > DW_AT_specification = 0x47, > DW_AT_static_link = 0x48, > DW_AT_type = 0x49, > DW_AT_use_location = 0x4a, > DW_AT_variable_parameter = 0x4b, > DW_AT_virtuality = 0x4c, > DW_AT_vtable_elem_location = 0x4d, > > DW_AT_MIPS_fde = 0x2001, > DW_AT_MIPS_loop_begin = 0x2002, > DW_AT_MIPS_tail_loop_begin = 0x2003, > DW_AT_MIPS_epilog_begin = 0x2004, > DW_AT_MIPS_loop_unroll_factor = 0x2005, > DW_AT_MIPS_software_pipeline_depth = 0x2006, > DW_AT_MIPS_linkage_name = 0x2007, > DW_AT_MIPS_stride = 0x2008, > DW_AT_MIPS_abstract_name = 0x2009, > DW_AT_MIPS_clone_origin = 0x200a, > DW_AT_MIPS_has_inlines = 0x200b, > > DW_AT_sf_names = 0x2101, > DW_AT_src_info = 0x2102, > DW_AT_mac_info = 0x2103, > DW_AT_src_coords = 0x2104, > DW_AT_body_begin = 0x2105, > DW_AT_body_end = 0x2106 > }; > > > > > > >enum dwarf_location_atom > { > DW_OP_addr = 0x03, > DW_OP_deref = 0x06, > DW_OP_const1u = 0x08, > DW_OP_const1s = 0x09, > DW_OP_const2u = 0x0a, > DW_OP_const2s = 0x0b, > DW_OP_const4u = 0x0c, > DW_OP_const4s = 0x0d, > DW_OP_const8u = 0x0e, > DW_OP_const8s = 0x0f, > DW_OP_constu = 0x10, > DW_OP_consts = 0x11, > DW_OP_dup = 0x12, > DW_OP_drop = 0x13, > DW_OP_over = 0x14, > DW_OP_pick = 0x15, > DW_OP_swap = 0x16, > DW_OP_rot = 0x17, > DW_OP_xderef = 0x18, > DW_OP_abs = 0x19, > DW_OP_and = 0x1a, > DW_OP_div = 0x1b, > DW_OP_minus = 0x1c, > DW_OP_mod = 0x1d, > DW_OP_mul = 0x1e, > DW_OP_neg = 0x1f, > DW_OP_not = 0x20, > DW_OP_or = 0x21, > DW_OP_plus = 0x22, > DW_OP_plus_uconst = 0x23, > DW_OP_shl = 0x24, > DW_OP_shr = 0x25, > DW_OP_shra = 0x26, > DW_OP_xor = 0x27, > DW_OP_bra = 0x28, > DW_OP_eq = 0x29, > DW_OP_ge = 0x2a, > DW_OP_gt = 0x2b, > DW_OP_le = 0x2c, > DW_OP_lt = 0x2d, > DW_OP_ne = 0x2e, > DW_OP_skip = 0x2f, > DW_OP_lit0 = 0x30, > DW_OP_lit1 = 0x31, > DW_OP_lit2 = 0x32, > DW_OP_lit3 = 0x33, > DW_OP_lit4 = 0x34, > DW_OP_lit5 = 0x35, > DW_OP_lit6 = 0x36, > DW_OP_lit7 = 0x37, > DW_OP_lit8 = 0x38, > DW_OP_lit9 = 0x39, > DW_OP_lit10 = 0x3a, > DW_OP_lit11 = 0x3b, > DW_OP_lit12 = 0x3c, > DW_OP_lit13 = 0x3d, > DW_OP_lit14 = 0x3e, > DW_OP_lit15 = 0x3f, > DW_OP_lit16 = 0x40, > DW_OP_lit17 = 0x41, > DW_OP_lit18 = 0x42, > DW_OP_lit19 = 0x43, > DW_OP_lit20 = 0x44, > DW_OP_lit21 = 0x45, > DW_OP_lit22 = 0x46, > DW_OP_lit23 = 0x47, > DW_OP_lit24 = 0x48, > DW_OP_lit25 = 0x49, > DW_OP_lit26 = 0x4a, > DW_OP_lit27 = 0x4b, > DW_OP_lit28 = 0x4c, > DW_OP_lit29 = 0x4d, > DW_OP_lit30 = 0x4e, > DW_OP_lit31 = 0x4f, > DW_OP_reg0 = 0x50, > DW_OP_reg1 = 0x51, > DW_OP_reg2 = 0x52, > DW_OP_reg3 = 0x53, > DW_OP_reg4 = 0x54, > DW_OP_reg5 = 0x55, > DW_OP_reg6 = 0x56, > DW_OP_reg7 = 0x57, > DW_OP_reg8 = 0x58, > DW_OP_reg9 = 0x59, > DW_OP_reg10 = 0x5a, > DW_OP_reg11 = 0x5b, > DW_OP_reg12 = 0x5c, > DW_OP_reg13 = 0x5d, > DW_OP_reg14 = 0x5e, > DW_OP_reg15 = 0x5f, > DW_OP_reg16 = 0x60, > DW_OP_reg17 = 0x61, > DW_OP_reg18 = 0x62, > DW_OP_reg19 = 0x63, > DW_OP_reg20 = 0x64, > DW_OP_reg21 = 0x65, > DW_OP_reg22 = 0x66, > DW_OP_reg23 = 0x67, > DW_OP_reg24 = 0x68, > DW_OP_reg25 = 0x69, > DW_OP_reg26 = 0x6a, > DW_OP_reg27 = 0x6b, > DW_OP_reg28 = 0x6c, > DW_OP_reg29 = 0x6d, > DW_OP_reg30 = 0x6e, > DW_OP_reg31 = 0x6f, > DW_OP_breg0 = 0x70, > DW_OP_breg1 = 0x71, > DW_OP_breg2 = 0x72, > DW_OP_breg3 = 0x73, > DW_OP_breg4 = 0x74, > DW_OP_breg5 = 0x75, > DW_OP_breg6 = 0x76, > DW_OP_breg7 = 0x77, > DW_OP_breg8 = 0x78, > DW_OP_breg9 = 0x79, > DW_OP_breg10 = 0x7a, > DW_OP_breg11 = 0x7b, > DW_OP_breg12 = 0x7c, > DW_OP_breg13 = 0x7d, > DW_OP_breg14 = 0x7e, > DW_OP_breg15 = 0x7f, > DW_OP_breg16 = 0x80, > DW_OP_breg17 = 0x81, > DW_OP_breg18 = 0x82, > DW_OP_breg19 = 0x83, > DW_OP_breg20 = 0x84, > DW_OP_breg21 = 0x85, > DW_OP_breg22 = 0x86, > DW_OP_breg23 = 0x87, > DW_OP_breg24 = 0x88, > DW_OP_breg25 = 0x89, > DW_OP_breg26 = 0x8a, > DW_OP_breg27 = 0x8b, > DW_OP_breg28 = 0x8c, > DW_OP_breg29 = 0x8d, > DW_OP_breg30 = 0x8e, > DW_OP_breg31 = 0x8f, > DW_OP_regx = 0x90, > DW_OP_fbreg = 0x91, > DW_OP_bregx = 0x92, > DW_OP_piece = 0x93, > DW_OP_deref_size = 0x94, > DW_OP_xderef_size = 0x95, > DW_OP_nop = 0x96 > }; > > > > > > >enum dwarf_type > { > DW_ATE_void = 0x0, > DW_ATE_address = 0x1, > DW_ATE_boolean = 0x2, > DW_ATE_complex_float = 0x3, > DW_ATE_float = 0x4, > DW_ATE_signed = 0x5, > DW_ATE_signed_char = 0x6, > DW_ATE_unsigned = 0x7, > DW_ATE_unsigned_char = 0x8 > }; > > > > > >enum dwarf_array_dim_ordering > { > DW_ORD_row_major = 0, > DW_ORD_col_major = 1 > }; > > >enum dwarf_access_attribute > { > DW_ACCESS_public = 1, > DW_ACCESS_protected = 2, > DW_ACCESS_private = 3 > }; > > >enum dwarf_visibility_attribute > { > DW_VIS_local = 1, > DW_VIS_exported = 2, > DW_VIS_qualified = 3 > }; > > >enum dwarf_virtuality_attribute > { > DW_VIRTUALITY_none = 0, > DW_VIRTUALITY_virtual = 1, > DW_VIRTUALITY_pure_virtual = 2 > }; > > >enum dwarf_id_case > { > DW_ID_case_sensitive = 0, > DW_ID_up_case = 1, > DW_ID_down_case = 2, > DW_ID_case_insensitive = 3 > }; > > >enum dwarf_calling_convention > { > DW_CC_normal = 0x1, > DW_CC_program = 0x2, > DW_CC_nocall = 0x3 > }; > > > > > >enum dwarf_inline_attribute > { > DW_INL_not_inlined = 0, > DW_INL_inlined = 1, > DW_INL_declared_not_inlined = 2, > DW_INL_declared_inlined = 3 > }; > > >enum dwarf_discrim_list > { > DW_DSC_label = 0, > DW_DSC_range = 1 > }; > > >enum dwarf_line_number_ops > { > DW_LNS_extended_op = 0, > DW_LNS_copy = 1, > DW_LNS_advance_pc = 2, > DW_LNS_advance_line = 3, > DW_LNS_set_file = 4, > DW_LNS_set_column = 5, > DW_LNS_negate_stmt = 6, > DW_LNS_set_basic_block = 7, > DW_LNS_const_add_pc = 8, > DW_LNS_fixed_advance_pc = 9 > }; > > >enum dwarf_line_number_x_ops > { > DW_LNE_end_sequence = 1, > DW_LNE_set_address = 2, > DW_LNE_define_file = 3 > }; > > >enum dwarf_call_frame_info > { > DW_CFA_advance_loc = 0x40, > DW_CFA_offset = 0x80, > DW_CFA_restore = 0xc0, > DW_CFA_nop = 0x00, > DW_CFA_set_loc = 0x01, > DW_CFA_advance_loc1 = 0x02, > DW_CFA_advance_loc2 = 0x03, > DW_CFA_advance_loc4 = 0x04, > DW_CFA_offset_extended = 0x05, > DW_CFA_restore_extended = 0x06, > DW_CFA_undefined = 0x07, > DW_CFA_same_value = 0x08, > DW_CFA_register = 0x09, > DW_CFA_remember_state = 0x0a, > DW_CFA_restore_state = 0x0b, > DW_CFA_def_cfa = 0x0c, > DW_CFA_def_cfa_register = 0x0d, > DW_CFA_def_cfa_offset = 0x0e, > DW_CFA_def_cfa_expression = 0x0f, > DW_CFA_expression = 0x10, > > DW_CFA_offset_extended_sf = 0x11, > DW_CFA_def_cfa_sf = 0x12, > DW_CFA_def_cfa_offset_sf = 0x13, > > > DW_CFA_MIPS_advance_loc8 = 0x1d, > > > DW_CFA_GNU_window_save = 0x2d, > DW_CFA_GNU_args_size = 0x2e, > DW_CFA_GNU_negative_offset_extended = 0x2f > }; ># 534 "../sysdeps/generic/dwarf2.h" >enum dwarf_source_language > { > DW_LANG_C89 = 0x0001, > DW_LANG_C = 0x0002, > DW_LANG_Ada83 = 0x0003, > DW_LANG_C_plus_plus = 0x0004, > DW_LANG_Cobol74 = 0x0005, > DW_LANG_Cobol85 = 0x0006, > DW_LANG_Fortran77 = 0x0007, > DW_LANG_Fortran90 = 0x0008, > DW_LANG_Pascal83 = 0x0009, > DW_LANG_Modula2 = 0x000a, > DW_LANG_Java = 0x000b, > DW_LANG_Mips_Assembler = 0x8001 > }; > > > > > > > >enum dwarf_macinfo_record_type > { > DW_MACINFO_define = 1, > DW_MACINFO_undef = 2, > DW_MACINFO_start_file = 3, > DW_MACINFO_end_file = 4, > DW_MACINFO_vendor_ext = 255 > }; ># 97 "../sysdeps/generic/sysdep.h" 2 ># 19 "../sysdeps/unix/sysdep.h" 2 > ># 1 "../sysdeps/unix/sysv/linux/sys/syscall.h" 1 ># 24 "../sysdeps/unix/sysv/linux/sys/syscall.h" ># 1 "/usr/include/asm/unistd.h" 1 3 4 > > > > > > > ># 1 "/usr/include/asm/unistd_32.h" 1 3 4 ># 9 "/usr/include/asm/unistd.h" 2 3 4 ># 25 "../sysdeps/unix/sysv/linux/sys/syscall.h" 2 ># 21 "../sysdeps/unix/sysdep.h" 2 ># 19 "../sysdeps/unix/i386/sysdep.h" 2 ># 1 "../sysdeps/i386/sysdep.h" 1 ># 19 "../sysdeps/i386/sysdep.h" ># 1 "../sysdeps/generic/sysdep.h" 1 ># 20 "../sysdeps/i386/sysdep.h" 2 ># 20 "../sysdeps/unix/i386/sysdep.h" 2 ># 24 "../sysdeps/unix/sysv/linux/i386/sysdep.h" 2 > ># 1 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 1 ># 21 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" ># 1 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 1 ># 19 "../sysdeps/unix/sysv/linux/dl-sysdep.h" ># 1 "../sysdeps/generic/dl-sysdep.h" 1 ># 20 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/dl-sysdep.h" >extern int _dl_discover_osversion (void) __attribute__ ((visibility ("hidden"))); ># 22 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" >extern void _dl_sysinfo_int80 (void) __attribute__ ((visibility ("hidden"))); ># 26 "../sysdeps/unix/sysv/linux/i386/sysdep.h" 2 ># 1 "../sysdeps/i386/nptl/tls.h" 1 ># 27 "../sysdeps/unix/sysv/linux/i386/sysdep.h" 2 ># 280 "../sysdeps/unix/sysv/linux/i386/sysdep.h" >asm (".L__X'%ebx = 1\n\t" > ".L__X'%ecx = 2\n\t" > ".L__X'%edx = 2\n\t" > ".L__X'%eax = 3\n\t" > ".L__X'%esi = 3\n\t" > ".L__X'%edi = 3\n\t" > ".L__X'%ebp = 3\n\t" > ".L__X'%esp = 3\n\t" > ".macro bpushl name reg\n\t" > ".if 1 - \\name\n\t" > ".if 2 - \\name\n\t" > "error\n\t" > ".else\n\t" > "xchgl \\reg, %ebx\n\t" > ".endif\n\t" > ".endif\n\t" > ".endm\n\t" > ".macro bpopl name reg\n\t" > ".if 1 - \\name\n\t" > ".if 2 - \\name\n\t" > "error\n\t" > ".else\n\t" > "xchgl \\reg, %ebx\n\t" > ".endif\n\t" > ".endif\n\t" > ".endm\n\t"); ># 29 "../sysdeps/i386/nptl/tls.h" 2 ># 1 "../include/libc-internal.h" 1 > > > > > > ># 1 "../sysdeps/generic/hp-timing.h" 1 ># 31 "../sysdeps/generic/hp-timing.h" >typedef int hp_timing_t; ># 8 "../include/libc-internal.h" 2 > > >extern void __libc_init_secure (void); > > >extern void __libc_global_ctors (void); > > > >extern int __profile_frequency (void); > > > >extern void __cyg_profile_func_enter (void *this_fn, void *call_site); >extern void __cyg_profile_func_exit (void *this_fn, void *call_site); > > >extern hp_timing_t __get_clockfreq (void); > > >extern void __libc_freeres (void); > > > >extern void __libc_thread_freeres (void); > > >extern void __init_misc (int, char **, char **); ># 30 "../sysdeps/i386/nptl/tls.h" 2 ># 1 "../sysdeps/unix/sysv/linux/kernel-features.h" 1 ># 31 "../sysdeps/i386/nptl/tls.h" 2 > > > >typedef union dtv >{ > size_t counter; > struct > { > void *val; > _Bool is_static; > } pointer; >} dtv_t; > > >typedef struct >{ > void *tcb; > > dtv_t *dtv; > void *self; > int multiple_threads; > uintptr_t sysinfo; > uintptr_t stack_guard; > uintptr_t pointer_guard; > int gscope_flag; > > > > int __glibc_reserved1; > > > void *__private_tm[4]; > > void *__private_ss; >} tcbhead_t; ># 85 "../sysdeps/i386/nptl/tls.h" >struct user_desc >{ > unsigned int entry_number; > unsigned long int base_addr; > unsigned int limit; > unsigned int seg_32bit:1; > unsigned int contents:2; > unsigned int read_exec_only:1; > unsigned int limit_in_pages:1; > unsigned int seg_not_present:1; > unsigned int useable:1; > unsigned int empty:25; >}; > > >union user_desc_init >{ > struct user_desc desc; > unsigned int vals[4]; >}; ># 127 "../sysdeps/i386/nptl/tls.h" ># 1 "../nptl/descr.h" 1 ># 22 "../nptl/descr.h" ># 1 "../include/limits.h" 1 ># 143 "../include/limits.h" ># 1 "../include/bits/posix1_lim.h" 1 ># 144 "../include/limits.h" 2 > > > ># 1 "../include/bits/posix2_lim.h" 1 ># 148 "../include/limits.h" 2 ># 23 "../nptl/descr.h" 2 ># 1 "../include/sched.h" 1 > ># 1 "../posix/sched.h" 1 ># 28 "../posix/sched.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 29 "../posix/sched.h" 2 > > > > > ># 1 "../include/time.h" 1 > > ># 1 "../time/time.h" 1 ># 4 "../include/time.h" 2 ># 35 "../posix/sched.h" 2 ># 43 "../posix/sched.h" ># 1 "../sysdeps/unix/sysv/linux/bits/sched.h" 1 ># 72 "../sysdeps/unix/sysv/linux/bits/sched.h" >struct sched_param > { > int __sched_priority; > }; > > > > > >extern int clone (int (*__fn) (void *__arg), void *__child_stack, > int __flags, void *__arg, ...) __attribute__ ((__nothrow__ )); > > >extern int unshare (int __flags) __attribute__ ((__nothrow__ )); > > >extern int sched_getcpu (void) __attribute__ ((__nothrow__ )); > > >extern int setns (int __fd, int __nstype) __attribute__ ((__nothrow__ )); > > > > > > > > > > > >struct __sched_param > { > int __sched_priority; > }; ># 118 "../sysdeps/unix/sysv/linux/bits/sched.h" >typedef unsigned long int __cpu_mask; > > > > > > >typedef struct >{ > __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))]; >} cpu_set_t; ># 201 "../sysdeps/unix/sysv/linux/bits/sched.h" > > >extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp) > __attribute__ ((__nothrow__ )); >extern cpu_set_t *__sched_cpualloc (size_t __count) __attribute__ ((__nothrow__ )) ; >extern void __sched_cpufree (cpu_set_t *__set) __attribute__ ((__nothrow__ )); > > ># 44 "../posix/sched.h" 2 > > > > > > > >extern int sched_setparam (__pid_t __pid, const struct sched_param *__param) > __attribute__ ((__nothrow__ )); > > >extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __attribute__ ((__nothrow__ )); > > >extern int sched_setscheduler (__pid_t __pid, int __policy, > const struct sched_param *__param) __attribute__ ((__nothrow__ )); > > >extern int sched_getscheduler (__pid_t __pid) __attribute__ ((__nothrow__ )); > > >extern int sched_yield (void) __attribute__ ((__nothrow__ )); > > >extern int sched_get_priority_max (int __algorithm) __attribute__ ((__nothrow__ )); > > >extern int sched_get_priority_min (int __algorithm) __attribute__ ((__nothrow__ )); > > >extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __attribute__ ((__nothrow__ )); ># 118 "../posix/sched.h" >extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize, > const cpu_set_t *__cpuset) __attribute__ ((__nothrow__ )); > > >extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize, > cpu_set_t *__cpuset) __attribute__ ((__nothrow__ )); > > > ># 3 "../include/sched.h" 2 > > > >extern int __sched_setparam (__pid_t __pid, > const struct sched_param *__param); >extern int __sched_getparam (__pid_t __pid, struct sched_param *__param); >extern int __sched_setscheduler (__pid_t __pid, int __policy, > const struct sched_param *__param); > >extern int __sched_getscheduler (__pid_t __pid); >extern int __sched_yield (void); > >extern int __sched_get_priority_max (int __algorithm); >extern int __sched_get_priority_min (int __algorithm); >extern int __sched_rr_get_interval (__pid_t __pid, struct timespec *__t); > > >extern int __clone (int (*__fn) (void *__arg), void *__child_stack, > int __flags, void *__arg, ...); >extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base, > size_t __child_stack_size, int __flags, void *__arg, ...); ># 24 "../nptl/descr.h" 2 ># 1 "../include/setjmp.h" 1 > ># 1 "../setjmp/setjmp.h" 1 ># 27 "../setjmp/setjmp.h" > > ># 1 "../sysdeps/x86/bits/setjmp.h" 1 ># 26 "../sysdeps/x86/bits/setjmp.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 27 "../sysdeps/x86/bits/setjmp.h" 2 ># 35 "../sysdeps/x86/bits/setjmp.h" >typedef int __jmp_buf[6]; ># 30 "../setjmp/setjmp.h" 2 ># 1 "../sysdeps/unix/sysv/linux/bits/sigset.h" 1 ># 31 "../setjmp/setjmp.h" 2 > > > >struct __jmp_buf_tag > { > > > > > __jmp_buf __jmpbuf; > int __mask_was_saved; > __sigset_t __saved_mask; > }; > > > > >typedef struct __jmp_buf_tag jmp_buf[1]; > > > >extern int setjmp (jmp_buf __env) __attribute__ ((__nothrow__)); > > > > > > >extern int __sigsetjmp (struct __jmp_buf_tag __env[1], int __savemask) __attribute__ ((__nothrow__)); > > > >extern int _setjmp (struct __jmp_buf_tag __env[1]) __attribute__ ((__nothrow__)); > > > > > > > > > > >extern void longjmp (struct __jmp_buf_tag __env[1], int __val) > __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__)); > > > > > > > >extern void _longjmp (struct __jmp_buf_tag __env[1], int __val) > __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__)); > > > > > > > >typedef struct __jmp_buf_tag sigjmp_buf[1]; ># 102 "../setjmp/setjmp.h" >extern void siglongjmp (sigjmp_buf __env, int __val) > __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__)); ># 112 "../setjmp/setjmp.h" > ># 3 "../include/setjmp.h" 2 > > > > > >extern void __longjmp (__jmp_buf __env, int __val) > __attribute__ ((__noreturn__)); > > > > > >extern int __sigjmp_save (jmp_buf __env, int __savemask); > >extern void _longjmp_unwind (jmp_buf env, int val); > >extern void __libc_siglongjmp (sigjmp_buf env, int val) > __attribute__ ((noreturn)); >extern void __libc_longjmp (sigjmp_buf env, int val) > __attribute__ ((noreturn)); > > > > ># 25 "../nptl/descr.h" 2 > ># 1 "../include/sys/types.h" 1 ># 27 "../nptl/descr.h" 2 > > ># 1 "../include/list.h" 1 ># 34 "../include/list.h" >typedef struct list_head >{ > struct list_head *next; > struct list_head *prev; >} list_t; ># 30 "../nptl/descr.h" 2 ># 1 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" 1 ># 22 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" ># 1 "../include/stap-probe.h" 1 ># 23 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" 2 > > ># 1 "../include/time.h" 1 > > > > ># 1 "../time/time.h" 1 ># 29 "../time/time.h" > > > > > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 38 "../time/time.h" 2 > > > ># 1 "../sysdeps/unix/sysv/linux/bits/time.h" 1 ># 86 "../sysdeps/unix/sysv/linux/bits/time.h" ># 1 "../sysdeps/unix/sysv/linux/bits/timex.h" 1 ># 25 "../sysdeps/unix/sysv/linux/bits/timex.h" >struct timex >{ > unsigned int modes; > __syscall_slong_t offset; > __syscall_slong_t freq; > __syscall_slong_t maxerror; > __syscall_slong_t esterror; > int status; > __syscall_slong_t constant; > __syscall_slong_t precision; > __syscall_slong_t tolerance; > struct timeval time; > __syscall_slong_t tick; > __syscall_slong_t ppsfreq; > __syscall_slong_t jitter; > int shift; > __syscall_slong_t stabil; > __syscall_slong_t jitcnt; > __syscall_slong_t calcnt; > __syscall_slong_t errcnt; > __syscall_slong_t stbcnt; > > int tai; > > > int :32; int :32; int :32; int :32; > int :32; int :32; int :32; int :32; > int :32; int :32; int :32; >}; ># 87 "../sysdeps/unix/sysv/linux/bits/time.h" 2 > > > > >extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) __attribute__ ((__nothrow__ )); > > ># 42 "../time/time.h" 2 ># 131 "../time/time.h" > > >struct tm >{ > int tm_sec; > int tm_min; > int tm_hour; > int tm_mday; > int tm_mon; > int tm_year; > int tm_wday; > int tm_yday; > int tm_isdst; > > > long int tm_gmtoff; > const char *tm_zone; > > > > >}; > > > > > > > > >struct itimerspec > { > struct timespec it_interval; > struct timespec it_value; > }; > > >struct sigevent; ># 186 "../time/time.h" > > > >extern clock_t clock (void) __attribute__ ((__nothrow__ )); > > >extern time_t time (time_t *__timer) __attribute__ ((__nothrow__ )); > > >extern double difftime (time_t __time1, time_t __time0) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > >extern time_t mktime (struct tm *__tp) __attribute__ ((__nothrow__ )); > > > > > >extern size_t strftime (char *__restrict __s, size_t __maxsize, > const char *__restrict __format, > const struct tm *__restrict __tp) __attribute__ ((__nothrow__ )); > > > > > >extern char *strptime (const char *__restrict __s, > const char *__restrict __fmt, struct tm *__tp) > __attribute__ ((__nothrow__ )); > > > > > ># 1 "../include/xlocale.h" 1 ># 222 "../time/time.h" 2 > >extern size_t strftime_l (char *__restrict __s, size_t __maxsize, > const char *__restrict __format, > const struct tm *__restrict __tp, > __locale_t __loc) __attribute__ ((__nothrow__ )); > > > >extern char *strptime_l (const char *__restrict __s, > const char *__restrict __fmt, struct tm *__tp, > __locale_t __loc) __attribute__ ((__nothrow__ )); > > > > > > >extern struct tm *gmtime (const time_t *__timer) __attribute__ ((__nothrow__ )); > > > >extern struct tm *localtime (const time_t *__timer) __attribute__ ((__nothrow__ )); > > > > > >extern struct tm *gmtime_r (const time_t *__restrict __timer, > struct tm *__restrict __tp) __attribute__ ((__nothrow__ )); > > > >extern struct tm *localtime_r (const time_t *__restrict __timer, > struct tm *__restrict __tp) __attribute__ ((__nothrow__ )); > > > > > >extern char *asctime (const struct tm *__tp) __attribute__ ((__nothrow__ )); > > >extern char *ctime (const time_t *__timer) __attribute__ ((__nothrow__ )); > > > > > > > >extern char *asctime_r (const struct tm *__restrict __tp, > char *__restrict __buf) __attribute__ ((__nothrow__ )); > > >extern char *ctime_r (const time_t *__restrict __timer, > char *__restrict __buf) __attribute__ ((__nothrow__ )); > > > > >extern char *__tzname[2]; >extern int __daylight; >extern long int __timezone; > > > > >extern char *tzname[2]; > > > >extern void tzset (void) __attribute__ ((__nothrow__ )); > > > >extern int daylight; >extern long int timezone; > > > > > >extern int stime (const time_t *__when) __attribute__ ((__nothrow__ )); ># 319 "../time/time.h" >extern time_t timegm (struct tm *__tp) __attribute__ ((__nothrow__ )); > > >extern time_t timelocal (struct tm *__tp) __attribute__ ((__nothrow__ )); > > >extern int dysize (int __year) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); ># 334 "../time/time.h" >extern int nanosleep (const struct timespec *__requested_time, > struct timespec *__remaining); > > > >extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __attribute__ ((__nothrow__ )); > > >extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) __attribute__ ((__nothrow__ )); > > >extern int clock_settime (clockid_t __clock_id, const struct timespec *__tp) > __attribute__ ((__nothrow__ )); > > > > > > >extern int clock_nanosleep (clockid_t __clock_id, int __flags, > const struct timespec *__req, > struct timespec *__rem); > > >extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __attribute__ ((__nothrow__ )); > > > > >extern int timer_create (clockid_t __clock_id, > struct sigevent *__restrict __evp, > timer_t *__restrict __timerid) __attribute__ ((__nothrow__ )); > > >extern int timer_delete (timer_t __timerid) __attribute__ ((__nothrow__ )); > > >extern int timer_settime (timer_t __timerid, int __flags, > const struct itimerspec *__restrict __value, > struct itimerspec *__restrict __ovalue) __attribute__ ((__nothrow__ )); > > >extern int timer_gettime (timer_t __timerid, struct itimerspec *__value) > __attribute__ ((__nothrow__ )); > > >extern int timer_getoverrun (timer_t __timerid) __attribute__ ((__nothrow__ )); > > > > > >extern int timespec_get (struct timespec *__ts, int __base) > __attribute__ ((__nothrow__ )) ; ># 403 "../time/time.h" >extern int getdate_err; ># 412 "../time/time.h" >extern struct tm *getdate (const char *__string); ># 426 "../time/time.h" >extern int getdate_r (const char *__restrict __string, > struct tm *__restrict __resbufp); > > > ># 6 "../include/time.h" 2 ># 1 "../include/xlocale.h" 1 ># 7 "../include/time.h" 2 > > > >extern __typeof (strftime_l) __strftime_l; > >extern __typeof (strptime_l) __strptime_l; > > > > > > > > > >extern __typeof (clock_getres) __clock_getres; >extern __typeof (clock_gettime) __clock_gettime; > >extern __typeof (clock_settime) __clock_settime; >extern __typeof (clock_nanosleep) __clock_nanosleep; >extern __typeof (clock_getcpuclockid) __clock_getcpuclockid; > > >struct tm; > > >extern const unsigned short int __mon_yday[2][13] __attribute__ ((visibility ("hidden"))); > > >extern struct tm _tmbuf __attribute__ ((visibility ("hidden"))); > > >extern char *__tzstring (const char *string); > > >extern size_t __tzname_cur_max __attribute__ ((visibility ("hidden"))); > > >extern int __use_tzfile __attribute__ ((visibility ("hidden"))); > >extern void __tzfile_read (const char *file, size_t extra, > char **extrap); >extern void __tzfile_compute (time_t timer, int use_localtime, > long int *leap_correct, int *leap_hit, > struct tm *tp); >extern void __tzfile_default (const char *std, const char *dst, > long int stdoff, long int dstoff); >extern void __tzset_parse_tz (const char *tz); >extern void __tz_compute (time_t timer, struct tm *tm, int use_localtime) > __attribute__ ((__nothrow__ )) __attribute__ ((regparm (3), stdcall)); > > > > >extern time_t __mktime_internal (struct tm *__tp, > struct tm *(*__func) (const time_t *, > struct tm *), > time_t *__offset); >extern struct tm *__localtime_r (const time_t *__timer, > struct tm *__tp) __attribute__ ((visibility ("hidden"))); > >extern struct tm *__gmtime_r (const time_t *__restrict __timer, > struct tm *__restrict __tp); > > > > > > >extern int __offtime (const time_t *__timer, > long int __offset, > struct tm *__tp); > >extern char *__asctime_r (const struct tm *__tp, char *__buf); >extern void __tzset (void); > > >extern struct tm *__tz_convert (const time_t *timer, int use_localtime, struct tm *tp); > > > >extern long int __tzname_max (void); > >extern int __nanosleep (const struct timespec *__requested_time, > struct timespec *__remaining); > >extern int __nanosleep_nocancel (const struct timespec *__requested_time, > struct timespec *__remaining) > __attribute__ ((visibility ("hidden"))); >extern int __getdate_r (const char *__string, struct tm *__resbufp); > > > >extern int __getclktck (void); > > > >extern char * __strptime_internal (const char *rp, const char *fmt, > struct tm *tm, void *statep, > __locale_t locparam) > __attribute__ ((regparm (3), stdcall)); > >extern double __difftime (time_t time1, time_t time0); > > > > > > > ># 26 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" 2 ># 1 "../include/sys/param.h" 1 ># 1 "../misc/sys/param.h" 1 ># 23 "../misc/sys/param.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 24 "../misc/sys/param.h" 2 > ># 1 "../include/sys/types.h" 1 ># 26 "../misc/sys/param.h" 2 ># 1 "../include/limits.h" 1 ># 143 "../include/limits.h" ># 1 "../include/bits/posix1_lim.h" 1 ># 144 "../include/limits.h" 2 > > > ># 1 "../include/bits/posix2_lim.h" 1 ># 148 "../include/limits.h" 2 ># 27 "../misc/sys/param.h" 2 ># 1 "../include/endian.h" 1 ># 28 "../misc/sys/param.h" 2 ># 1 "../include/signal.h" 1 > > > > ># 1 "../signal/signal.h" 1 ># 30 "../signal/signal.h" > > ># 1 "../sysdeps/unix/sysv/linux/bits/sigset.h" 1 ># 102 "../sysdeps/unix/sysv/linux/bits/sigset.h" >extern int __sigismember (const __sigset_t *, int); >extern int __sigaddset (__sigset_t *, int); >extern int __sigdelset (__sigset_t *, int); ># 116 "../sysdeps/unix/sysv/linux/bits/sigset.h" >extern __inline __attribute__ ((__gnu_inline__)) int __sigismember (const __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return (__set->__val[__word] & __mask) ? 1 : 0; } >extern __inline __attribute__ ((__gnu_inline__)) int __sigaddset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] |= __mask), 0); } >extern __inline __attribute__ ((__gnu_inline__)) int __sigdelset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] &= ~__mask), 0); } ># 33 "../signal/signal.h" 2 > > > > > > > >typedef __sig_atomic_t sig_atomic_t; > ># 57 "../signal/signal.h" ># 1 "../sysdeps/unix/sysv/linux/bits/signum.h" 1 ># 58 "../signal/signal.h" 2 ># 80 "../signal/signal.h" ># 1 "../sysdeps/unix/sysv/linux/x86/bits/siginfo.h" 1 ># 24 "../sysdeps/unix/sysv/linux/x86/bits/siginfo.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 25 "../sysdeps/unix/sysv/linux/x86/bits/siginfo.h" 2 > > > > > > > >typedef union sigval > { > int sival_int; > void *sival_ptr; > } sigval_t; ># 58 "../sysdeps/unix/sysv/linux/x86/bits/siginfo.h" >typedef __clock_t __sigchld_clock_t; > > > >typedef struct > { > int si_signo; > int si_errno; > > int si_code; > > union > { > int _pad[((128 / sizeof (int)) - 3)]; > > > struct > { > __pid_t si_pid; > __uid_t si_uid; > } _kill; > > > struct > { > int si_tid; > int si_overrun; > sigval_t si_sigval; > } _timer; > > > struct > { > __pid_t si_pid; > __uid_t si_uid; > sigval_t si_sigval; > } _rt; > > > struct > { > __pid_t si_pid; > __uid_t si_uid; > int si_status; > __sigchld_clock_t si_utime; > __sigchld_clock_t si_stime; > } _sigchld; > > > struct > { > void *si_addr; > short int si_addr_lsb; > } _sigfault; > > > struct > { > long int si_band; > int si_fd; > } _sigpoll; > > > struct > { > void *_call_addr; > int _syscall; > unsigned int _arch; > } _sigsys; > } _sifields; > } siginfo_t ; ># 153 "../sysdeps/unix/sysv/linux/x86/bits/siginfo.h" >enum >{ > SI_ASYNCNL = -60, > > SI_TKILL = -6, > > SI_SIGIO, > > SI_ASYNCIO, > > SI_MESGQ, > > SI_TIMER, > > SI_QUEUE, > > SI_USER, > > SI_KERNEL = 0x80 > >}; > > > > >enum >{ > ILL_ILLOPC = 1, > > ILL_ILLOPN, > > ILL_ILLADR, > > ILL_ILLTRP, > > ILL_PRVOPC, > > ILL_PRVREG, > > ILL_COPROC, > > ILL_BADSTK > >}; > > >enum >{ > FPE_INTDIV = 1, > > FPE_INTOVF, > > FPE_FLTDIV, > > FPE_FLTOVF, > > FPE_FLTUND, > > FPE_FLTRES, > > FPE_FLTINV, > > FPE_FLTSUB > >}; > > >enum >{ > SEGV_MAPERR = 1, > > SEGV_ACCERR > >}; > > >enum >{ > BUS_ADRALN = 1, > > BUS_ADRERR, > > BUS_OBJERR, > > BUS_MCEERR_AR, > > BUS_MCEERR_AO > >}; > > > > >enum >{ > TRAP_BRKPT = 1, > > TRAP_TRACE > >}; > > > > >enum >{ > CLD_EXITED = 1, > > CLD_KILLED, > > CLD_DUMPED, > > CLD_TRAPPED, > > CLD_STOPPED, > > CLD_CONTINUED > >}; > > >enum >{ > POLL_IN = 1, > > POLL_OUT, > > POLL_MSG, > > POLL_ERR, > > POLL_PRI, > > POLL_HUP > >}; ># 313 "../sysdeps/unix/sysv/linux/x86/bits/siginfo.h" >typedef struct sigevent > { > sigval_t sigev_value; > int sigev_signo; > int sigev_notify; > > union > { > int _pad[((64 / sizeof (int)) - 3)]; > > > > __pid_t _tid; > > struct > { > void (*_function) (sigval_t); > pthread_attr_t *_attribute; > } _sigev_thread; > } _sigev_un; > } sigevent_t; > > > > > > >enum >{ > SIGEV_SIGNAL = 0, > > SIGEV_NONE, > > SIGEV_THREAD, > > > SIGEV_THREAD_ID = 4 > >}; ># 81 "../signal/signal.h" 2 > > > > >typedef void (*__sighandler_t) (int); > > > > >extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler) > __attribute__ ((__nothrow__ )); > >extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler) > __attribute__ ((__nothrow__ )); > > > > > > > >extern __sighandler_t signal (int __sig, __sighandler_t __handler) > __attribute__ ((__nothrow__ )); ># 114 "../signal/signal.h" > > > > > >extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler) > __attribute__ ((__nothrow__ )); > > > > > > >extern int kill (__pid_t __pid, int __sig) __attribute__ ((__nothrow__ )); > > > > > > >extern int killpg (__pid_t __pgrp, int __sig) __attribute__ ((__nothrow__ )); > > > > >extern int raise (int __sig) __attribute__ ((__nothrow__ )); > > > > >extern __sighandler_t ssignal (int __sig, __sighandler_t __handler) > __attribute__ ((__nothrow__ )); >extern int gsignal (int __sig) __attribute__ ((__nothrow__ )); > > > > >extern void psignal (int __sig, const char *__s); > > > > >extern void psiginfo (const siginfo_t *__pinfo, const char *__s); ># 167 "../signal/signal.h" >extern int __sigpause (int __sig_or_mask, int __is_sig); > > > >extern int sigpause (int __sig) __asm__ ("__xpg_sigpause"); ># 189 "../signal/signal.h" >extern int sigblock (int __mask) __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); > > >extern int sigsetmask (int __mask) __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); > > >extern int siggetmask (void) __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); ># 204 "../signal/signal.h" >typedef __sighandler_t sighandler_t; > > > > >typedef __sighandler_t sig_t; > > > > > >extern int sigemptyset (sigset_t *__set) __attribute__ ((__nothrow__ )) ; > > >extern int sigfillset (sigset_t *__set) __attribute__ ((__nothrow__ )) ; > > >extern int sigaddset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__ )) ; > > >extern int sigdelset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__ )) ; > > >extern int sigismember (const sigset_t *__set, int __signo) > __attribute__ ((__nothrow__ )) ; > > > >extern int sigisemptyset (const sigset_t *__set) __attribute__ ((__nothrow__ )) ; > > >extern int sigandset (sigset_t *__set, const sigset_t *__left, > const sigset_t *__right) __attribute__ ((__nothrow__ )) ; > > >extern int sigorset (sigset_t *__set, const sigset_t *__left, > const sigset_t *__right) __attribute__ ((__nothrow__ )) ; > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/sigaction.h" 1 ># 24 "../sysdeps/unix/sysv/linux/bits/sigaction.h" >struct sigaction > { > > > union > { > > __sighandler_t sa_handler; > > void (*sa_sigaction) (int, siginfo_t *, void *); > } > __sigaction_handler; > > > > > > > > __sigset_t sa_mask; > > > int sa_flags; > > > void (*sa_restorer) (void); > }; ># 246 "../signal/signal.h" 2 > > >extern int sigprocmask (int __how, const sigset_t *__restrict __set, > sigset_t *__restrict __oset) __attribute__ ((__nothrow__ )); > > > > > > >extern int sigsuspend (const sigset_t *__set) ; > > >extern int sigaction (int __sig, const struct sigaction *__restrict __act, > struct sigaction *__restrict __oact) __attribute__ ((__nothrow__ )); > > >extern int sigpending (sigset_t *__set) __attribute__ ((__nothrow__ )) ; > > > > > > >extern int sigwait (const sigset_t *__restrict __set, int *__restrict __sig) > ; > > > > > > >extern int sigwaitinfo (const sigset_t *__restrict __set, > siginfo_t *__restrict __info) ; > > > > > > >extern int sigtimedwait (const sigset_t *__restrict __set, > siginfo_t *__restrict __info, > const struct timespec *__restrict __timeout) > ; > > > >extern int sigqueue (__pid_t __pid, int __sig, const union sigval __val) > __attribute__ ((__nothrow__ )); ># 303 "../signal/signal.h" >extern const char *const _sys_siglist[65]; >extern const char *const sys_siglist[65]; > > >struct sigvec > { > __sighandler_t sv_handler; > int sv_mask; > > int sv_flags; > > }; ># 327 "../signal/signal.h" >extern int sigvec (int __sig, const struct sigvec *__vec, > struct sigvec *__ovec) __attribute__ ((__nothrow__ )); > > > ># 1 "../sysdeps/unix/sysv/linux/x86/bits/sigcontext.h" 1 ># 29 "../sysdeps/unix/sysv/linux/x86/bits/sigcontext.h" >struct _fpx_sw_bytes >{ > __uint32_t magic1; > __uint32_t extended_size; > __uint64_t xstate_bv; > __uint32_t xstate_size; > __uint32_t padding[7]; >}; > >struct _fpreg >{ > unsigned short significand[4]; > unsigned short exponent; >}; > >struct _fpxreg >{ > unsigned short significand[4]; > unsigned short exponent; > unsigned short padding[3]; >}; > >struct _xmmreg >{ > __uint32_t element[4]; >}; > > > > > >struct _fpstate >{ > > __uint32_t cw; > __uint32_t sw; > __uint32_t tag; > __uint32_t ipoff; > __uint32_t cssel; > __uint32_t dataoff; > __uint32_t datasel; > struct _fpreg _st[8]; > unsigned short status; > unsigned short magic; > > > __uint32_t _fxsr_env[6]; > __uint32_t mxcsr; > __uint32_t reserved; > struct _fpxreg _fxsr_st[8]; > struct _xmmreg _xmm[8]; > __uint32_t padding[56]; >}; ># 93 "../sysdeps/unix/sysv/linux/x86/bits/sigcontext.h" >struct sigcontext >{ > unsigned short gs, __gsh; > unsigned short fs, __fsh; > unsigned short es, __esh; > unsigned short ds, __dsh; > unsigned long edi; > unsigned long esi; > unsigned long ebp; > unsigned long esp; > unsigned long ebx; > unsigned long edx; > unsigned long ecx; > unsigned long eax; > unsigned long trapno; > unsigned long err; > unsigned long eip; > unsigned short cs, __csh; > unsigned long eflags; > unsigned long esp_at_signal; > unsigned short ss, __ssh; > struct _fpstate * fpstate; > unsigned long oldmask; > unsigned long cr2; >}; ># 175 "../sysdeps/unix/sysv/linux/x86/bits/sigcontext.h" >struct _xsave_hdr >{ > __uint64_t xstate_bv; > __uint64_t reserved1[2]; > __uint64_t reserved2[5]; >}; > >struct _ymmh_state >{ > __uint32_t ymmh_space[64]; >}; > >struct _xstate >{ > struct _fpstate fpstate; > struct _xsave_hdr xstate_hdr; > struct _ymmh_state ymmh; >}; ># 333 "../signal/signal.h" 2 > > >extern int sigreturn (struct sigcontext *__scp) __attribute__ ((__nothrow__ )); > > > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 343 "../signal/signal.h" 2 > > > > >extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__ )); > ># 1 "../sysdeps/unix/sysv/linux/bits/sigstack.h" 1 ># 25 "../sysdeps/unix/sysv/linux/bits/sigstack.h" >struct sigstack > { > void *ss_sp; > int ss_onstack; > }; > > > >enum >{ > SS_ONSTACK = 1, > > SS_DISABLE > >}; ># 49 "../sysdeps/unix/sysv/linux/bits/sigstack.h" >typedef struct sigaltstack > { > void *ss_sp; > int ss_flags; > size_t ss_size; > } stack_t; ># 350 "../signal/signal.h" 2 > > ># 1 "../sysdeps/unix/sysv/linux/x86/sys/ucontext.h" 1 ># 22 "../sysdeps/unix/sysv/linux/x86/sys/ucontext.h" ># 1 "../include/signal.h" 1 ># 23 "../sysdeps/unix/sysv/linux/x86/sys/ucontext.h" 2 ># 146 "../sysdeps/unix/sysv/linux/x86/sys/ucontext.h" >typedef int greg_t; > > > > > >typedef greg_t gregset_t[19]; > > > >enum >{ > REG_GS = 0, > > REG_FS, > > REG_ES, > > REG_DS, > > REG_EDI, > > REG_ESI, > > REG_EBP, > > REG_ESP, > > REG_EBX, > > REG_EDX, > > REG_ECX, > > REG_EAX, > > REG_TRAPNO, > > REG_ERR, > > REG_EIP, > > REG_CS, > > REG_EFL, > > REG_UESP, > > REG_SS > >}; > > > >struct _libc_fpreg >{ > unsigned short int significand[4]; > unsigned short int exponent; >}; > >struct _libc_fpstate >{ > unsigned long int cw; > unsigned long int sw; > unsigned long int tag; > unsigned long int ipoff; > unsigned long int cssel; > unsigned long int dataoff; > unsigned long int datasel; > struct _libc_fpreg _st[8]; > unsigned long int status; >}; > > >typedef struct _libc_fpstate *fpregset_t; > > >typedef struct > { > gregset_t gregs; > > > fpregset_t fpregs; > unsigned long int oldmask; > unsigned long int cr2; > } mcontext_t; > > >typedef struct ucontext > { > unsigned long int uc_flags; > struct ucontext *uc_link; > stack_t uc_stack; > mcontext_t uc_mcontext; > __sigset_t uc_sigmask; > struct _libc_fpstate __fpregs_mem; > } ucontext_t; ># 353 "../signal/signal.h" 2 > > > > > >extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); > > > >extern int sigaltstack (const struct sigaltstack *__restrict __ss, > struct sigaltstack *__restrict __oss) __attribute__ ((__nothrow__ )); > > > > > > > >extern int sighold (int __sig) __attribute__ ((__nothrow__ )); > > >extern int sigrelse (int __sig) __attribute__ ((__nothrow__ )); > > >extern int sigignore (int __sig) __attribute__ ((__nothrow__ )); > > >extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __attribute__ ((__nothrow__ )); > > > > > > ># 1 "../sysdeps/pthread/bits/sigthread.h" 1 ># 30 "../sysdeps/pthread/bits/sigthread.h" >extern int pthread_sigmask (int __how, > const __sigset_t *__restrict __newmask, > __sigset_t *__restrict __oldmask)__attribute__ ((__nothrow__ )); > > >extern int pthread_kill (pthread_t __threadid, int __signo) __attribute__ ((__nothrow__ )); > > > >extern int pthread_sigqueue (pthread_t __threadid, int __signo, > const union sigval __value) __attribute__ ((__nothrow__ )); ># 389 "../signal/signal.h" 2 > > > > > > >extern int __libc_current_sigrtmin (void) __attribute__ ((__nothrow__ )); > >extern int __libc_current_sigrtmax (void) __attribute__ ((__nothrow__ )); > > > > ># 6 "../include/signal.h" 2 > > > > > > > > > > > > > > >extern __sighandler_t __bsd_signal (int __sig, __sighandler_t __handler); >extern int __kill (__pid_t __pid, int __sig); >extern int __sigaction (int __sig, const struct sigaction *__restrict __act, > struct sigaction *__restrict __oact); > >extern int __sigblock (int __mask); >extern int __sigsetmask (int __mask); >extern int __sigprocmask (int __how, > const sigset_t *__set, sigset_t *__oset); >extern int __sigsuspend (const sigset_t *__set); > > >extern int __sigsuspend_nocancel (const sigset_t *__set) __attribute__ ((visibility ("hidden"))); > >extern int __sigwait (const sigset_t *__set, int *__sig); > >extern int __sigwaitinfo (const sigset_t *__set, siginfo_t *__info); > >extern int __sigtimedwait (const sigset_t *__set, siginfo_t *__info, > const struct timespec *__timeout); > >extern int __sigqueue (__pid_t __pid, int __sig, > const union sigval __val); >extern int __sigvec (int __sig, const struct sigvec *__vec, > struct sigvec *__ovec); >extern int __sigreturn (struct sigcontext *__scp); >extern int __sigaltstack (const struct sigaltstack *__ss, > struct sigaltstack *__oss); >extern int __libc_sigaction (int sig, const struct sigaction *act, > struct sigaction *oact); > > >extern int __sigpause (int sig_or_mask, int is_sig); >extern int __default_sigpause (int mask); >extern int __xpg_sigpause (int sig); ># 63 "../include/signal.h" >extern int __libc_allocate_rtsig (int __high); ># 29 "../misc/sys/param.h" 2 > > ># 1 "../sysdeps/unix/sysv/linux/bits/param.h" 1 ># 28 "../sysdeps/unix/sysv/linux/bits/param.h" ># 1 "/usr/include/linux/param.h" 1 3 4 > > > ># 1 "/usr/include/asm/param.h" 1 3 4 ># 1 "/usr/include/asm-generic/param.h" 1 3 4 ># 1 "/usr/include/asm/param.h" 2 3 4 ># 5 "/usr/include/linux/param.h" 2 3 4 ># 29 "../sysdeps/unix/sysv/linux/bits/param.h" 2 ># 32 "../misc/sys/param.h" 2 ># 1 "../include/sys/param.h" 2 ># 27 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" 2 > ># 1 "../sysdeps/unix/sysv/linux/kernel-features.h" 1 ># 29 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" 2 ># 1 "/suse/schwab/src/libc/i586/tcb-offsets.h" 1 ># 30 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" 2 ># 305 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" >extern int __lll_timedlock_elision (int *futex, short *adapt_count, > const struct timespec *timeout, > int private) __attribute__ ((visibility ("hidden"))); ># 407 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" >extern int __lll_timedwait_tid (int *tid, const struct timespec *abstime) > __attribute__ ((regparm (2))) __attribute__ ((visibility ("hidden"))); ># 421 "../sysdeps/unix/sysv/linux/i386/lowlevellock.h" >extern int __lll_lock_elision (int *futex, short *adapt_count, int private) > __attribute__ ((visibility ("hidden"))); > >extern int __lll_unlock_elision(int *lock, int private) > __attribute__ ((visibility ("hidden"))); > >extern int __lll_trylock_elision(int *lock, short *adapt_count) > __attribute__ ((visibility ("hidden"))); ># 31 "../nptl/descr.h" 2 ># 1 "../sysdeps/i386/nptl/pthreaddef.h" 1 ># 32 "../nptl/descr.h" 2 ># 1 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 1 ># 21 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" ># 1 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 1 ># 19 "../sysdeps/unix/sysv/linux/dl-sysdep.h" ># 1 "../sysdeps/generic/dl-sysdep.h" 1 ># 20 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/dl-sysdep.h" >extern int _dl_discover_osversion (void) __attribute__ ((visibility ("hidden"))); ># 22 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" >extern void _dl_sysinfo_int80 (void) __attribute__ ((visibility ("hidden"))); ># 33 "../nptl/descr.h" 2 ># 1 "../nptl/../nptl_db/thread_db.h" 1 ># 25 "../nptl/../nptl_db/thread_db.h" ># 1 "../include/pthread.h" 1 ># 1 "../sysdeps/nptl/pthread.h" 1 ># 22 "../sysdeps/nptl/pthread.h" ># 1 "../include/endian.h" 1 ># 23 "../sysdeps/nptl/pthread.h" 2 > > > > > ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 29 "../sysdeps/nptl/pthread.h" 2 > > > >enum >{ > PTHREAD_CREATE_JOINABLE, > > PTHREAD_CREATE_DETACHED > >}; > > > >enum >{ > PTHREAD_MUTEX_TIMED_NP, > PTHREAD_MUTEX_RECURSIVE_NP, > PTHREAD_MUTEX_ERRORCHECK_NP, > PTHREAD_MUTEX_ADAPTIVE_NP > > , > PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP, > PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP, > PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP, > PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL > > > > , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP > >}; > > > > >enum >{ > PTHREAD_MUTEX_STALLED, > PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED, > PTHREAD_MUTEX_ROBUST, > PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST >}; > > > > > >enum >{ > PTHREAD_PRIO_NONE, > PTHREAD_PRIO_INHERIT, > PTHREAD_PRIO_PROTECT >}; ># 116 "../sysdeps/nptl/pthread.h" >enum >{ > PTHREAD_RWLOCK_PREFER_READER_NP, > PTHREAD_RWLOCK_PREFER_WRITER_NP, > PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, > PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP >}; ># 157 "../sysdeps/nptl/pthread.h" >enum >{ > PTHREAD_INHERIT_SCHED, > > PTHREAD_EXPLICIT_SCHED > >}; > > > >enum >{ > PTHREAD_SCOPE_SYSTEM, > > PTHREAD_SCOPE_PROCESS > >}; > > > >enum >{ > PTHREAD_PROCESS_PRIVATE, > > PTHREAD_PROCESS_SHARED > >}; ># 192 "../sysdeps/nptl/pthread.h" >struct _pthread_cleanup_buffer >{ > void (*__routine) (void *); > void *__arg; > int __canceltype; > struct _pthread_cleanup_buffer *__prev; >}; > > >enum >{ > PTHREAD_CANCEL_ENABLE, > > PTHREAD_CANCEL_DISABLE > >}; >enum >{ > PTHREAD_CANCEL_DEFERRED, > > PTHREAD_CANCEL_ASYNCHRONOUS > >}; ># 230 "../sysdeps/nptl/pthread.h" > > > > > >extern int pthread_create (pthread_t *__restrict __newthread, > const pthread_attr_t *__restrict __attr, > void *(*__start_routine) (void *), > void *__restrict __arg) __attribute__ ((__nothrow__)) ; > > > > > >extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__)); > > > > > > > >extern int pthread_join (pthread_t __th, void **__thread_return); > > > > >extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) __attribute__ ((__nothrow__ )); > > > > > > > >extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return, > const struct timespec *__abstime); > > > > > > >extern int pthread_detach (pthread_t __th) __attribute__ ((__nothrow__ )); > > > >extern pthread_t pthread_self (void) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > >extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > > > > > > >extern int pthread_attr_init (pthread_attr_t *__attr) __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_destroy (pthread_attr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_getdetachstate (const pthread_attr_t *__attr, > int *__detachstate) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_setdetachstate (pthread_attr_t *__attr, > int __detachstate) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_attr_getguardsize (const pthread_attr_t *__attr, > size_t *__guardsize) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_setguardsize (pthread_attr_t *__attr, > size_t __guardsize) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_attr_getschedparam (const pthread_attr_t *__restrict __attr, > struct sched_param *__restrict __param) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr, > const struct sched_param *__restrict > __param) __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_getschedpolicy (const pthread_attr_t *__restrict > __attr, int *__restrict __policy) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_getinheritsched (const pthread_attr_t *__restrict > __attr, int *__restrict __inherit) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_setinheritsched (pthread_attr_t *__attr, > int __inherit) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_attr_getscope (const pthread_attr_t *__restrict __attr, > int *__restrict __scope) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_attr_getstackaddr (const pthread_attr_t *__restrict > __attr, void **__restrict __stackaddr) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); > > > > > >extern int pthread_attr_setstackaddr (pthread_attr_t *__attr, > void *__stackaddr) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); > > >extern int pthread_attr_getstacksize (const pthread_attr_t *__restrict > __attr, size_t *__restrict __stacksize) > __attribute__ ((__nothrow__ )) ; > > > > >extern int pthread_attr_setstacksize (pthread_attr_t *__attr, > size_t __stacksize) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_attr_getstack (const pthread_attr_t *__restrict __attr, > void **__restrict __stackaddr, > size_t *__restrict __stacksize) > __attribute__ ((__nothrow__ )) ; > > > > >extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, > size_t __stacksize) __attribute__ ((__nothrow__ )) ; > > > > > >extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr, > size_t __cpusetsize, > const cpu_set_t *__cpuset) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_attr_getaffinity_np (const pthread_attr_t *__attr, > size_t __cpusetsize, > cpu_set_t *__cpuset) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_getattr_default_np (pthread_attr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_setattr_default_np (const pthread_attr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > > > >extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int pthread_setschedparam (pthread_t __target_thread, int __policy, > const struct sched_param *__param) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_getschedparam (pthread_t __target_thread, > int *__restrict __policy, > struct sched_param *__restrict __param) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_setschedprio (pthread_t __target_thread, int __prio) > __attribute__ ((__nothrow__ )); > > > > >extern int pthread_getname_np (pthread_t __target_thread, char *__buf, > size_t __buflen) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_setname_np (pthread_t __target_thread, const char *__name) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int pthread_getconcurrency (void) __attribute__ ((__nothrow__ )); > > >extern int pthread_setconcurrency (int __level) __attribute__ ((__nothrow__ )); > > > > > > > >extern int pthread_yield (void) __attribute__ ((__nothrow__ )); > > > > >extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize, > const cpu_set_t *__cpuset) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize, > cpu_set_t *__cpuset) > __attribute__ ((__nothrow__ )) ; ># 496 "../sysdeps/nptl/pthread.h" >extern int pthread_once (pthread_once_t *__once_control, > void (*__init_routine) (void)) ; ># 508 "../sysdeps/nptl/pthread.h" >extern int pthread_setcancelstate (int __state, int *__oldstate); > > > >extern int pthread_setcanceltype (int __type, int *__oldtype); > > >extern int pthread_cancel (pthread_t __th); > > > > >extern void pthread_testcancel (void); > > > > >typedef struct >{ > struct > { > __jmp_buf __cancel_jmp_buf; > int __mask_was_saved; > } __cancel_jmp_buf[1]; > void *__pad[4]; >} __pthread_unwind_buf_t __attribute__ ((__aligned__)); ># 542 "../sysdeps/nptl/pthread.h" >struct __pthread_cleanup_frame >{ > void (*__cancel_routine) (void *); > void *__cancel_arg; > int __do_it; > int __cancel_type; >}; ># 682 "../sysdeps/nptl/pthread.h" >extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))); ># 694 "../sysdeps/nptl/pthread.h" >extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))); ># 717 "../sysdeps/nptl/pthread.h" >extern void __pthread_register_cancel_defer (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))); ># 730 "../sysdeps/nptl/pthread.h" >extern void __pthread_unregister_cancel_restore (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))); > > > >extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))) __attribute__ ((__noreturn__)) > > > > ; > > > >struct __jmp_buf_tag; >extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) __attribute__ ((__nothrow__)); > > > > > >extern int pthread_mutex_init (pthread_mutex_t *__mutex, > const pthread_mutexattr_t *__mutexattr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutex_destroy (pthread_mutex_t *__mutex) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutex_trylock (pthread_mutex_t *__mutex) > __attribute__ ((__nothrow__)) ; > > >extern int pthread_mutex_lock (pthread_mutex_t *__mutex) > __attribute__ ((__nothrow__)) ; > > > >extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex, > const struct timespec *__restrict > __abstime) __attribute__ ((__nothrow__)) ; > > > >extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) > __attribute__ ((__nothrow__)) ; > > > >extern int pthread_mutex_getprioceiling (const pthread_mutex_t * > __restrict __mutex, > int *__restrict __prioceiling) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex, > int __prioceiling, > int *__restrict __old_ceiling) > __attribute__ ((__nothrow__ )) ; > > > > >extern int pthread_mutex_consistent (pthread_mutex_t *__mutex) > __attribute__ ((__nothrow__ )) ; > >extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex) > __attribute__ ((__nothrow__ )) ; ># 808 "../sysdeps/nptl/pthread.h" >extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutexattr_getpshared (const pthread_mutexattr_t * > __restrict __attr, > int *__restrict __pshared) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr, > int __pshared) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_mutexattr_gettype (const pthread_mutexattr_t *__restrict > __attr, int *__restrict __kind) > __attribute__ ((__nothrow__ )) ; > > > > >extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_mutexattr_getprotocol (const pthread_mutexattr_t * > __restrict __attr, > int *__restrict __protocol) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr, > int __protocol) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutexattr_getprioceiling (const pthread_mutexattr_t * > __restrict __attr, > int *__restrict __prioceiling) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr, > int __prioceiling) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_mutexattr_getrobust (const pthread_mutexattr_t *__attr, > int *__robustness) > __attribute__ ((__nothrow__ )) ; > >extern int pthread_mutexattr_getrobust_np (const pthread_mutexattr_t *__attr, > int *__robustness) > __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr, > int __robustness) > __attribute__ ((__nothrow__ )) ; > >extern int pthread_mutexattr_setrobust_np (pthread_mutexattr_t *__attr, > int __robustness) > __attribute__ ((__nothrow__ )) ; ># 890 "../sysdeps/nptl/pthread.h" >extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock, > const pthread_rwlockattr_t *__restrict > __attr) __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock) > __attribute__ ((__nothrow__)) ; > > >extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock) > __attribute__ ((__nothrow__)) ; > > > >extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock, > const struct timespec *__restrict > __abstime) __attribute__ ((__nothrow__)) ; > > > >extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock) > __attribute__ ((__nothrow__)) ; > > >extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock) > __attribute__ ((__nothrow__)) ; > > > >extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock, > const struct timespec *__restrict > __abstime) __attribute__ ((__nothrow__)) ; > > > >extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock) > __attribute__ ((__nothrow__)) ; > > > > > >extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlockattr_getpshared (const pthread_rwlockattr_t * > __restrict __attr, > int *__restrict __pshared) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, > int __pshared) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlockattr_getkind_np (const pthread_rwlockattr_t * > __restrict __attr, > int *__restrict __pref) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr, > int __pref) __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int pthread_cond_init (pthread_cond_t *__restrict __cond, > const pthread_condattr_t *__restrict __cond_attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_cond_destroy (pthread_cond_t *__cond) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_cond_signal (pthread_cond_t *__cond) > __attribute__ ((__nothrow__)) ; > > >extern int pthread_cond_broadcast (pthread_cond_t *__cond) > __attribute__ ((__nothrow__)) ; > > > > > > >extern int pthread_cond_wait (pthread_cond_t *__restrict __cond, > pthread_mutex_t *__restrict __mutex) > ; ># 1002 "../sysdeps/nptl/pthread.h" >extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond, > pthread_mutex_t *__restrict __mutex, > const struct timespec *__restrict __abstime) > ; > > > > >extern int pthread_condattr_init (pthread_condattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_condattr_destroy (pthread_condattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_condattr_getpshared (const pthread_condattr_t * > __restrict __attr, > int *__restrict __pshared) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_condattr_setpshared (pthread_condattr_t *__attr, > int __pshared) __attribute__ ((__nothrow__ )) ; > > > >extern int pthread_condattr_getclock (const pthread_condattr_t * > __restrict __attr, > __clockid_t *__restrict __clock_id) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_condattr_setclock (pthread_condattr_t *__attr, > __clockid_t __clock_id) > __attribute__ ((__nothrow__ )) ; ># 1046 "../sysdeps/nptl/pthread.h" >extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_spin_destroy (pthread_spinlock_t *__lock) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_spin_lock (pthread_spinlock_t *__lock) > __attribute__ ((__nothrow__)) ; > > >extern int pthread_spin_trylock (pthread_spinlock_t *__lock) > __attribute__ ((__nothrow__)) ; > > >extern int pthread_spin_unlock (pthread_spinlock_t *__lock) > __attribute__ ((__nothrow__)) ; > > > > > > >extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier, > const pthread_barrierattr_t *__restrict > __attr, unsigned int __count) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_barrier_destroy (pthread_barrier_t *__barrier) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_barrier_wait (pthread_barrier_t *__barrier) > __attribute__ ((__nothrow__)) ; > > > >extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_barrierattr_getpshared (const pthread_barrierattr_t * > __restrict __attr, > int *__restrict __pshared) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, > int __pshared) > __attribute__ ((__nothrow__ )) ; ># 1113 "../sysdeps/nptl/pthread.h" >extern int pthread_key_create (pthread_key_t *__key, > void (*__destr_function) (void *)) > __attribute__ ((__nothrow__ )) ; > > >extern int pthread_key_delete (pthread_key_t __key) __attribute__ ((__nothrow__ )); > > >extern void *pthread_getspecific (pthread_key_t __key) __attribute__ ((__nothrow__ )); > > >extern int pthread_setspecific (pthread_key_t __key, > const void *__pointer) __attribute__ ((__nothrow__ )) ; > > > > >extern int pthread_getcpuclockid (pthread_t __thread_id, > __clockid_t *__clock_id) > __attribute__ ((__nothrow__ )) ; ># 1147 "../sysdeps/nptl/pthread.h" >extern int pthread_atfork (void (*__prepare) (void), > void (*__parent) (void), > void (*__child) (void)) __attribute__ ((__nothrow__ )); > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) pthread_equal (pthread_t __thread1, pthread_t __thread2) >{ > return __thread1 == __thread2; >} > > > ># 2 "../include/pthread.h" 2 > > > >extern void __pthread_initialize (void) __attribute__ ((weak)); ># 26 "../nptl/../nptl_db/thread_db.h" 2 > ># 1 "../include/sys/types.h" 1 ># 28 "../nptl/../nptl_db/thread_db.h" 2 ># 1 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" 1 ># 31 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" ># 1 "../include/sys/time.h" 1 ># 20 "../include/sys/time.h" ># 1 "../time/sys/time.h" 1 ># 27 "../time/sys/time.h" ># 1 "../sysdeps/unix/sysv/linux/bits/time.h" 1 ># 28 "../time/sys/time.h" 2 ># 37 "../time/sys/time.h" > ># 55 "../time/sys/time.h" >struct timezone > { > int tz_minuteswest; > int tz_dsttime; > }; > >typedef struct timezone *__restrict __timezone_ptr_t; ># 71 "../time/sys/time.h" >extern int gettimeofday (struct timeval *__restrict __tv, > __timezone_ptr_t __tz) __attribute__ ((__nothrow__ )) ; > > > > >extern int settimeofday (const struct timeval *__tv, > const struct timezone *__tz) > __attribute__ ((__nothrow__ )); > > > > > >extern int adjtime (const struct timeval *__delta, > struct timeval *__olddelta) __attribute__ ((__nothrow__ )); > > > > >enum __itimer_which > { > > ITIMER_REAL = 0, > > > ITIMER_VIRTUAL = 1, > > > > ITIMER_PROF = 2 > > }; > > > >struct itimerval > { > > struct timeval it_interval; > > struct timeval it_value; > }; > > > > >typedef enum __itimer_which __itimer_which_t; > > > > > > >extern int getitimer (__itimer_which_t __which, > struct itimerval *__value) __attribute__ ((__nothrow__ )); > > > > >extern int setitimer (__itimer_which_t __which, > const struct itimerval *__restrict __new, > struct itimerval *__restrict __old) __attribute__ ((__nothrow__ )); > > > > >extern int utimes (const char *__file, const struct timeval __tvp[2]) > __attribute__ ((__nothrow__ )) ; > > > >extern int lutimes (const char *__file, const struct timeval __tvp[2]) > __attribute__ ((__nothrow__ )) ; > > >extern int futimes (int __fd, const struct timeval __tvp[2]) __attribute__ ((__nothrow__ )); > > > > > > >extern int futimesat (int __fd, const char *__file, > const struct timeval __tvp[2]) __attribute__ ((__nothrow__ )); ># 189 "../time/sys/time.h" > ># 21 "../include/sys/time.h" 2 > > >extern int __gettimeofday (struct timeval *__tv, > struct timezone *__tz); > > >extern int __settimeofday (const struct timeval *__tv, > const struct timezone *__tz) > __attribute__ ((visibility ("hidden"))); >extern int __adjtime (const struct timeval *__delta, > struct timeval *__olddelta); >extern int __getitimer (enum __itimer_which __which, > struct itimerval *__value); >extern int __setitimer (enum __itimer_which __which, > const struct itimerval *__restrict __new, > struct itimerval *__restrict __old) > __attribute__ ((visibility ("hidden"))); >extern int __utimes (const char *__file, const struct timeval __tvp[2]) > __attribute__ ((visibility ("hidden"))); >extern int __futimes (int fd, const struct timeval tvp[2]) __attribute__ ((visibility ("hidden"))); ># 32 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" 2 ># 1 "../include/sys/types.h" 1 ># 33 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" 2 ># 1 "../sysdeps/unix/sysv/linux/x86/sys/user.h" 1 ># 102 "../sysdeps/unix/sysv/linux/x86/sys/user.h" >struct user_fpregs_struct >{ > long int cwd; > long int swd; > long int twd; > long int fip; > long int fcs; > long int foo; > long int fos; > long int st_space [20]; >}; > >struct user_fpxregs_struct >{ > unsigned short int cwd; > unsigned short int swd; > unsigned short int twd; > unsigned short int fop; > long int fip; > long int fcs; > long int foo; > long int fos; > long int mxcsr; > long int reserved; > long int st_space[32]; > long int xmm_space[32]; > long int padding[56]; >}; > >struct user_regs_struct >{ > long int ebx; > long int ecx; > long int edx; > long int esi; > long int edi; > long int ebp; > long int eax; > long int xds; > long int xes; > long int xfs; > long int xgs; > long int orig_eax; > long int eip; > long int xcs; > long int eflags; > long int esp; > long int xss; >}; > >struct user >{ > struct user_regs_struct regs; > int u_fpvalid; > struct user_fpregs_struct i387; > unsigned long int u_tsize; > unsigned long int u_dsize; > unsigned long int u_ssize; > unsigned long int start_code; > unsigned long int start_stack; > long int signal; > int reserved; > struct user_regs_struct* u_ar0; > struct user_fpregs_struct* u_fpstate; > unsigned long int magic; > char u_comm [32]; > int u_debugreg [8]; >}; ># 34 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" 2 > > > > > > > >typedef unsigned long elf_greg_t; > > > > > > > >typedef elf_greg_t elf_gregset_t[(sizeof (struct user_regs_struct) / sizeof(elf_greg_t))]; > > > >typedef struct user_fpregs_struct elf_fpregset_t; > > > > >typedef struct user_fpxregs_struct elf_fpxregset_t; ># 67 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" >struct elf_siginfo > { > int si_signo; > int si_code; > int si_errno; > }; ># 82 "../sysdeps/unix/sysv/linux/x86/sys/procfs.h" >struct elf_prstatus > { > struct elf_siginfo pr_info; > short int pr_cursig; > unsigned long int pr_sigpend; > unsigned long int pr_sighold; > __pid_t pr_pid; > __pid_t pr_ppid; > __pid_t pr_pgrp; > __pid_t pr_sid; > struct timeval pr_utime; > struct timeval pr_stime; > struct timeval pr_cutime; > struct timeval pr_cstime; > elf_gregset_t pr_reg; > int pr_fpvalid; > }; > > > > >struct elf_prpsinfo > { > char pr_state; > char pr_sname; > char pr_zomb; > char pr_nice; > unsigned long int pr_flag; > > unsigned short int pr_uid; > unsigned short int pr_gid; > > > > > int pr_pid, pr_ppid, pr_pgrp, pr_sid; > > char pr_fname[16]; > char pr_psargs[(80)]; > }; > > > > > > > >typedef void *psaddr_t; > > >typedef elf_gregset_t prgregset_t; >typedef elf_fpregset_t prfpregset_t; > > > >typedef __pid_t lwpid_t; > > >typedef struct elf_prstatus prstatus_t; >typedef struct elf_prpsinfo prpsinfo_t; > > ># 29 "../nptl/../nptl_db/thread_db.h" 2 > > > >typedef enum >{ > TD_OK, > TD_ERR, > TD_NOTHR, > TD_NOSV, > TD_NOLWP, > TD_BADPH, > TD_BADTH, > TD_BADSH, > TD_BADTA, > TD_BADKEY, > TD_NOMSG, > TD_NOFPREGS, > TD_NOLIBTHREAD, > TD_NOEVENT, > TD_NOCAPAB, > TD_DBERR, > TD_NOAPLIC, > TD_NOTSD, > TD_MALLOC, > TD_PARTIALREG, > TD_NOXREGS, > TD_TLSDEFER, > TD_NOTALLOC = TD_TLSDEFER, > TD_VERSION, > TD_NOTLS >} td_err_e; > > > > >typedef enum >{ > TD_THR_ANY_STATE, > TD_THR_UNKNOWN, > TD_THR_STOPPED, > TD_THR_RUN, > TD_THR_ACTIVE, > TD_THR_ZOMBIE, > TD_THR_SLEEP, > TD_THR_STOPPED_ASLEEP >} td_thr_state_e; > > > >typedef enum >{ > TD_THR_ANY_TYPE, > TD_THR_USER, > TD_THR_SYSTEM >} td_thr_type_e; > > > > > >typedef struct td_thragent td_thragent_t; > > >typedef struct td_thrhandle >{ > td_thragent_t *th_ta_p; > psaddr_t th_unique; >} td_thrhandle_t; > > > >struct link_map; ># 115 "../nptl/../nptl_db/thread_db.h" >typedef struct td_thr_events >{ > uint32_t event_bits[2]; >} td_thr_events_t; ># 154 "../nptl/../nptl_db/thread_db.h" >typedef enum >{ > TD_ALL_EVENTS, > TD_EVENT_NONE = TD_ALL_EVENTS, > TD_READY, > TD_SLEEP, > TD_SWITCHTO, > TD_SWITCHFROM, > TD_LOCK_TRY, > TD_CATCHSIG, > TD_IDLE, > TD_CREATE, > TD_DEATH, > TD_PREEMPT, > TD_PRI_INHERIT, > TD_REAP, > TD_CONCURRENCY, > TD_TIMEOUT, > TD_MIN_EVENT_NUM = TD_READY, > TD_MAX_EVENT_NUM = TD_TIMEOUT, > TD_EVENTS_ENABLE = 31 >} td_event_e; > > >typedef enum >{ > NOTIFY_BPT, > NOTIFY_AUTOBPT, > > NOTIFY_SYSCALL >} td_notify_e; > > >typedef struct td_notify >{ > td_notify_e type; > union > { > psaddr_t bptaddr; > int syscallno; > } u; >} td_notify_t; > > >typedef struct td_event_msg >{ > td_event_e event; > const td_thrhandle_t *th_p; > union > { > > > > uintptr_t data; > } msg; >} td_event_msg_t; > > >typedef struct >{ > td_thr_events_t eventmask; > td_event_e eventnum; > void *eventdata; >} td_eventbuf_t; > > > >typedef struct td_ta_stats >{ > int nthreads; > int r_concurrency; > int nrunnable_num; > int nrunnable_den; > int a_concurrency_num; > int a_concurrency_den; > int nlwps_num; > > int nlwps_den; > > int nidle_num; > > int nidle_den; > >} td_ta_stats_t; > > > > >typedef pthread_t thread_t; >typedef pthread_key_t thread_key_t; > > > >typedef int td_thr_iter_f (const td_thrhandle_t *, void *); > > >typedef int td_key_iter_f (thread_key_t, void (*) (void *), void *); > > > > >struct ps_prochandle; > > > >typedef struct td_thrinfo >{ > td_thragent_t *ti_ta_p; > unsigned int ti_user_flags; > thread_t ti_tid; > > char *ti_tls; > psaddr_t ti_startfunc; > > psaddr_t ti_stkbase; > long int ti_stksize; > psaddr_t ti_ro_area; > int ti_ro_size; > td_thr_state_e ti_state; > unsigned char ti_db_suspended; > td_thr_type_e ti_type; > > intptr_t ti_pc; > intptr_t ti_sp; > short int ti_flags; > int ti_pri; > lwpid_t ti_lid; > sigset_t ti_sigmask; > unsigned char ti_traceme; > > unsigned char ti_preemptflag; > unsigned char ti_pirecflag; > sigset_t ti_pending; > td_thr_events_t ti_events; >} td_thrinfo_t; > > > > > > >extern td_err_e td_init (void); > > >extern td_err_e td_log (void); > > >extern const char **td_symbol_list (void); > > >extern td_err_e td_ta_new (struct ps_prochandle *__ps, td_thragent_t **__ta); > > >extern td_err_e td_ta_delete (td_thragent_t *__ta); > > >extern td_err_e td_ta_get_nthreads (const td_thragent_t *__ta, int *__np); > > > >extern td_err_e td_ta_get_ph (const td_thragent_t *__ta, > struct ps_prochandle **__ph); > > > >extern td_err_e td_ta_map_id2thr (const td_thragent_t *__ta, pthread_t __pt, > td_thrhandle_t *__th); > > > >extern td_err_e td_ta_map_lwp2thr (const td_thragent_t *__ta, lwpid_t __lwpid, > td_thrhandle_t *__th); > > > > >extern td_err_e td_ta_thr_iter (const td_thragent_t *__ta, > td_thr_iter_f *__callback, void *__cbdata_p, > td_thr_state_e __state, int __ti_pri, > sigset_t *__ti_sigmask_p, > unsigned int __ti_user_flags); > > >extern td_err_e td_ta_tsd_iter (const td_thragent_t *__ta, td_key_iter_f *__ki, > void *__p); > > > >extern td_err_e td_ta_event_addr (const td_thragent_t *__ta, > td_event_e __event, td_notify_t *__ptr); > > >extern td_err_e td_ta_set_event (const td_thragent_t *__ta, > td_thr_events_t *__event); > > >extern td_err_e td_ta_clear_event (const td_thragent_t *__ta, > td_thr_events_t *__event); > > >extern td_err_e td_ta_event_getmsg (const td_thragent_t *__ta, > td_event_msg_t *__msg); > > > >extern td_err_e td_ta_setconcurrency (const td_thragent_t *__ta, int __level); > > > >extern td_err_e td_ta_enable_stats (const td_thragent_t *__ta, int __enable); > > >extern td_err_e td_ta_reset_stats (const td_thragent_t *__ta); > > >extern td_err_e td_ta_get_stats (const td_thragent_t *__ta, > td_ta_stats_t *__statsp); > > > >extern td_err_e td_thr_validate (const td_thrhandle_t *__th); > > >extern td_err_e td_thr_get_info (const td_thrhandle_t *__th, > td_thrinfo_t *__infop); > > >extern td_err_e td_thr_getfpregs (const td_thrhandle_t *__th, > prfpregset_t *__regset); > > >extern td_err_e td_thr_getgregs (const td_thrhandle_t *__th, > prgregset_t __gregs); > > >extern td_err_e td_thr_getxregs (const td_thrhandle_t *__th, void *__xregs); > > >extern td_err_e td_thr_getxregsize (const td_thrhandle_t *__th, int *__sizep); > > >extern td_err_e td_thr_setfpregs (const td_thrhandle_t *__th, > const prfpregset_t *__fpregs); > > >extern td_err_e td_thr_setgregs (const td_thrhandle_t *__th, > prgregset_t __gregs); > > >extern td_err_e td_thr_setxregs (const td_thrhandle_t *__th, > const void *__addr); > > > >extern td_err_e td_thr_tlsbase (const td_thrhandle_t *__th, > unsigned long int __modid, > psaddr_t *__base); > > >extern td_err_e td_thr_tls_get_addr (const td_thrhandle_t *__th, > psaddr_t __map_address, size_t __offset, > psaddr_t *__address); > > > >extern td_err_e td_thr_event_enable (const td_thrhandle_t *__th, int __event); > > >extern td_err_e td_thr_set_event (const td_thrhandle_t *__th, > td_thr_events_t *__event); > > >extern td_err_e td_thr_clear_event (const td_thrhandle_t *__th, > td_thr_events_t *__event); > > >extern td_err_e td_thr_event_getmsg (const td_thrhandle_t *__th, > td_event_msg_t *__msg); > > > >extern td_err_e td_thr_setprio (const td_thrhandle_t *__th, int __prio); > > > >extern td_err_e td_thr_setsigpending (const td_thrhandle_t *__th, > unsigned char __n, const sigset_t *__ss); > > >extern td_err_e td_thr_sigsetmask (const td_thrhandle_t *__th, > const sigset_t *__ss); > > > >extern td_err_e td_thr_tsd (const td_thrhandle_t *__th, > const thread_key_t __tk, void **__data); > > > >extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th); > > >extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th); ># 34 "../nptl/descr.h" 2 > > ># 1 "../sysdeps/generic/unwind.h" 1 ># 34 "../sysdeps/generic/unwind.h" >typedef unsigned _Unwind_Word __attribute__((__mode__(__word__))); >typedef signed _Unwind_Sword __attribute__((__mode__(__word__))); > > > >typedef unsigned _Unwind_Ptr __attribute__((__mode__(__pointer__))); > >typedef unsigned _Unwind_Internal_Ptr __attribute__((__mode__(__pointer__))); > > > > > >typedef unsigned _Unwind_Exception_Class __attribute__((__mode__(__DI__))); > > > >typedef enum >{ > _URC_NO_REASON = 0, > _URC_FOREIGN_EXCEPTION_CAUGHT = 1, > _URC_FATAL_PHASE2_ERROR = 2, > _URC_FATAL_PHASE1_ERROR = 3, > _URC_NORMAL_STOP = 4, > _URC_END_OF_STACK = 5, > _URC_HANDLER_FOUND = 6, > _URC_INSTALL_CONTEXT = 7, > _URC_CONTINUE_UNWIND = 8 >} _Unwind_Reason_Code; ># 71 "../sysdeps/generic/unwind.h" >struct _Unwind_Exception; > >typedef void (*_Unwind_Exception_Cleanup_Fn) (_Unwind_Reason_Code, > struct _Unwind_Exception *); > >struct _Unwind_Exception >{ > _Unwind_Exception_Class exception_class; > _Unwind_Exception_Cleanup_Fn exception_cleanup; > _Unwind_Word private_1; > _Unwind_Word private_2; > > > > >} __attribute__((__aligned__)); > > > > >typedef int _Unwind_Action; ># 103 "../sysdeps/generic/unwind.h" >struct _Unwind_Context; > > >extern _Unwind_Reason_Code _Unwind_RaiseException (struct _Unwind_Exception *); > > > >typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn) > (int, _Unwind_Action, _Unwind_Exception_Class, > struct _Unwind_Exception *, struct _Unwind_Context *, void *); > >extern _Unwind_Reason_Code _Unwind_ForcedUnwind (struct _Unwind_Exception *, > _Unwind_Stop_Fn, > void *); > > >extern void _Unwind_DeleteException (struct _Unwind_Exception *); > > > >extern void _Unwind_Resume (struct _Unwind_Exception *); > > > > >typedef _Unwind_Reason_Code (*_Unwind_Trace_Fn) > (struct _Unwind_Context *, void *); > >extern _Unwind_Reason_Code _Unwind_Backtrace (_Unwind_Trace_Fn, void *); > > > > > > >extern _Unwind_Word _Unwind_GetGR (struct _Unwind_Context *, int); >extern void _Unwind_SetGR (struct _Unwind_Context *, int, _Unwind_Word); > >extern _Unwind_Ptr _Unwind_GetIP (struct _Unwind_Context *); >extern void _Unwind_SetIP (struct _Unwind_Context *, _Unwind_Ptr); > > >extern _Unwind_Word _Unwind_GetCFA (struct _Unwind_Context *); > >extern void *_Unwind_GetLanguageSpecificData (struct _Unwind_Context *); > >extern _Unwind_Ptr _Unwind_GetRegionStart (struct _Unwind_Context *); ># 166 "../sysdeps/generic/unwind.h" >typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn) > (int, _Unwind_Action, _Unwind_Exception_Class, > struct _Unwind_Exception *, struct _Unwind_Context *); > > > > >struct SjLj_Function_Context; >extern void _Unwind_SjLj_Register (struct SjLj_Function_Context *); >extern void _Unwind_SjLj_Unregister (struct SjLj_Function_Context *); > >extern _Unwind_Reason_Code _Unwind_SjLj_RaiseException > (struct _Unwind_Exception *); >extern _Unwind_Reason_Code _Unwind_SjLj_ForcedUnwind > (struct _Unwind_Exception *, _Unwind_Stop_Fn, void *); >extern void _Unwind_SjLj_Resume (struct _Unwind_Exception *); ># 207 "../sysdeps/generic/unwind.h" >extern _Unwind_Ptr _Unwind_GetDataRelBase (struct _Unwind_Context *); >extern _Unwind_Ptr _Unwind_GetTextRelBase (struct _Unwind_Context *); > > > > >extern void * _Unwind_FindEnclosingFunction (void *pc); ># 37 "../nptl/descr.h" 2 > > ># 1 "../include/resolv.h" 1 ># 12 "../include/resolv.h" ># 1 "../resolv/resolv.h" 1 ># 56 "../resolv/resolv.h" ># 1 "../include/sys/types.h" 1 ># 57 "../resolv/resolv.h" 2 ># 1 "../include/netinet/in.h" 1 > > ># 1 "../inet/netinet/in.h" 1 ># 23 "../inet/netinet/in.h" ># 1 "../include/sys/socket.h" 1 > ># 1 "../socket/sys/socket.h" 1 ># 24 "../socket/sys/socket.h" > > ># 1 "../include/sys/uio.h" 1 > ># 1 "../misc/sys/uio.h" 1 ># 23 "../misc/sys/uio.h" ># 1 "../include/sys/types.h" 1 ># 24 "../misc/sys/uio.h" 2 > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/uio.h" 1 ># 25 "../sysdeps/unix/sysv/linux/bits/uio.h" ># 1 "../include/sys/types.h" 1 ># 26 "../sysdeps/unix/sysv/linux/bits/uio.h" 2 ># 43 "../sysdeps/unix/sysv/linux/bits/uio.h" >struct iovec > { > void *iov_base; > size_t iov_len; > }; ># 56 "../sysdeps/unix/sysv/linux/bits/uio.h" > > > >extern ssize_t process_vm_readv (pid_t __pid, const struct iovec *__lvec, > unsigned long int __liovcnt, > const struct iovec *__rvec, > unsigned long int __riovcnt, > unsigned long int __flags) > __attribute__ ((__nothrow__ )); > > >extern ssize_t process_vm_writev (pid_t __pid, const struct iovec *__lvec, > unsigned long int __liovcnt, > const struct iovec *__rvec, > unsigned long int __riovcnt, > unsigned long int __flags) > __attribute__ ((__nothrow__ )); > > ># 29 "../misc/sys/uio.h" 2 ># 39 "../misc/sys/uio.h" >extern ssize_t readv (int __fd, const struct iovec *__iovec, int __count) > ; ># 50 "../misc/sys/uio.h" >extern ssize_t writev (int __fd, const struct iovec *__iovec, int __count) > ; ># 65 "../misc/sys/uio.h" >extern ssize_t preadv (int __fd, const struct iovec *__iovec, int __count, > __off_t __offset) ; ># 77 "../misc/sys/uio.h" >extern ssize_t pwritev (int __fd, const struct iovec *__iovec, int __count, > __off_t __offset) ; ># 103 "../misc/sys/uio.h" >extern ssize_t preadv64 (int __fd, const struct iovec *__iovec, int __count, > __off64_t __offset) ; ># 115 "../misc/sys/uio.h" >extern ssize_t pwritev64 (int __fd, const struct iovec *__iovec, int __count, > __off64_t __offset) ; > > > > ># 3 "../include/sys/uio.h" 2 > > > >extern ssize_t __readv (int __fd, const struct iovec *__iovec, > int __count); >extern ssize_t __libc_readv (int __fd, const struct iovec *__iovec, > int __count); >extern ssize_t __writev (int __fd, const struct iovec *__iovec, > int __count); >extern ssize_t __libc_writev (int __fd, const struct iovec *__iovec, > int __count); ># 27 "../socket/sys/socket.h" 2 > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 29 "../socket/sys/socket.h" 2 > > ># 1 "../sysdeps/unix/sysv/linux/bits/sigset.h" 1 ># 32 "../socket/sys/socket.h" 2 > > > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/socket.h" 1 ># 27 "../sysdeps/unix/sysv/linux/bits/socket.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 28 "../sysdeps/unix/sysv/linux/bits/socket.h" 2 > ># 1 "../include/sys/types.h" 1 ># 30 "../sysdeps/unix/sysv/linux/bits/socket.h" 2 > > > >typedef __socklen_t socklen_t; > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/socket_type.h" 1 ># 24 "../sysdeps/unix/sysv/linux/bits/socket_type.h" >enum __socket_type >{ > SOCK_STREAM = 1, > > > SOCK_DGRAM = 2, > > > SOCK_RAW = 3, > > SOCK_RDM = 4, > > SOCK_SEQPACKET = 5, > > > SOCK_DCCP = 6, > > SOCK_PACKET = 10, > > > > > > > > SOCK_CLOEXEC = 02000000, > > > SOCK_NONBLOCK = 00004000 > > >}; ># 39 "../sysdeps/unix/sysv/linux/bits/socket.h" 2 ># 146 "../sysdeps/unix/sysv/linux/bits/socket.h" ># 1 "../bits/sockaddr.h" 1 ># 28 "../bits/sockaddr.h" >typedef unsigned short int sa_family_t; ># 147 "../sysdeps/unix/sysv/linux/bits/socket.h" 2 > > >struct sockaddr > { > sa_family_t sa_family; > char sa_data[14]; > }; ># 162 "../sysdeps/unix/sysv/linux/bits/socket.h" >struct sockaddr_storage > { > sa_family_t ss_family; > unsigned long int __ss_align; > char __ss_padding[(128 - (2 * sizeof (unsigned long int)))]; > }; > > > >enum > { > MSG_OOB = 0x01, > > MSG_PEEK = 0x02, > > MSG_DONTROUTE = 0x04, > > > > MSG_TRYHARD = MSG_DONTROUTE, > > > MSG_CTRUNC = 0x08, > > MSG_PROXY = 0x10, > > MSG_TRUNC = 0x20, > > MSG_DONTWAIT = 0x40, > > MSG_EOR = 0x80, > > MSG_WAITALL = 0x100, > > MSG_FIN = 0x200, > > MSG_SYN = 0x400, > > MSG_CONFIRM = 0x800, > > MSG_RST = 0x1000, > > MSG_ERRQUEUE = 0x2000, > > MSG_NOSIGNAL = 0x4000, > > MSG_MORE = 0x8000, > > MSG_WAITFORONE = 0x10000, > > MSG_FASTOPEN = 0x20000000, > > > MSG_CMSG_CLOEXEC = 0x40000000 > > > > }; > > > > >struct msghdr > { > void *msg_name; > socklen_t msg_namelen; > > struct iovec *msg_iov; > size_t msg_iovlen; > > void *msg_control; > size_t msg_controllen; > > > > > int msg_flags; > }; > > >struct cmsghdr > { > size_t cmsg_len; > > > > > int cmsg_level; > int cmsg_type; > > __extension__ unsigned char __cmsg_data []; > > }; ># 272 "../sysdeps/unix/sysv/linux/bits/socket.h" >extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, > struct cmsghdr *__cmsg) __attribute__ ((__nothrow__ )); > > > > >extern __inline __attribute__ ((__gnu_inline__)) struct cmsghdr * >__attribute__ ((__nothrow__ )) __cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) >{ > if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) > > return (struct cmsghdr *) 0; > > __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg > + (((__cmsg->cmsg_len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))); > if ((unsigned char *) (__cmsg + 1) > ((unsigned char *) __mhdr->msg_control > + __mhdr->msg_controllen) > || ((unsigned char *) __cmsg + (((__cmsg->cmsg_len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) > > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen))) > > return (struct cmsghdr *) 0; > return __cmsg; >} > > > > >enum > { > SCM_RIGHTS = 0x01 > > > , SCM_CREDENTIALS = 0x02 > > > }; > > > >struct ucred >{ > pid_t pid; > uid_t uid; > gid_t gid; >}; ># 345 "../sysdeps/unix/sysv/linux/bits/socket.h" ># 1 "/usr/include/asm/socket.h" 1 3 4 ># 1 "/usr/include/asm-generic/socket.h" 1 3 4 > > > ># 1 "/usr/include/asm/sockios.h" 1 3 4 ># 1 "/usr/include/asm-generic/sockios.h" 1 3 4 ># 1 "/usr/include/asm/sockios.h" 2 3 4 ># 5 "/usr/include/asm-generic/socket.h" 2 3 4 ># 1 "/usr/include/asm/socket.h" 2 3 4 ># 346 "../sysdeps/unix/sysv/linux/bits/socket.h" 2 ># 379 "../sysdeps/unix/sysv/linux/bits/socket.h" >struct linger > { > int l_onoff; > int l_linger; > }; ># 39 "../socket/sys/socket.h" 2 > > > > >struct osockaddr > { > unsigned short int sa_family; > unsigned char sa_data[14]; > }; > > > > >enum >{ > SHUT_RD = 0, > > SHUT_WR, > > SHUT_RDWR > >}; ># 90 "../socket/sys/socket.h" >typedef union { struct sockaddr *__restrict __sockaddr__; struct sockaddr_at *__restrict __sockaddr_at__; struct sockaddr_ax25 *__restrict __sockaddr_ax25__; struct sockaddr_dl *__restrict __sockaddr_dl__; struct sockaddr_eon *__restrict __sockaddr_eon__; struct sockaddr_in *__restrict __sockaddr_in__; struct sockaddr_in6 *__restrict __sockaddr_in6__; struct sockaddr_inarp *__restrict __sockaddr_inarp__; struct sockaddr_ipx *__restrict __sockaddr_ipx__; struct sockaddr_iso *__restrict __sockaddr_iso__; struct sockaddr_ns *__restrict __sockaddr_ns__; struct sockaddr_un *__restrict __sockaddr_un__; struct sockaddr_x25 *__restrict __sockaddr_x25__; > } __SOCKADDR_ARG __attribute__ ((__transparent_union__)); > > >typedef union { const struct sockaddr *__restrict __sockaddr__; const struct sockaddr_at *__restrict __sockaddr_at__; const struct sockaddr_ax25 *__restrict __sockaddr_ax25__; const struct sockaddr_dl *__restrict __sockaddr_dl__; const struct sockaddr_eon *__restrict __sockaddr_eon__; const struct sockaddr_in *__restrict __sockaddr_in__; const struct sockaddr_in6 *__restrict __sockaddr_in6__; const struct sockaddr_inarp *__restrict __sockaddr_inarp__; const struct sockaddr_ipx *__restrict __sockaddr_ipx__; const struct sockaddr_iso *__restrict __sockaddr_iso__; const struct sockaddr_ns *__restrict __sockaddr_ns__; const struct sockaddr_un *__restrict __sockaddr_un__; const struct sockaddr_x25 *__restrict __sockaddr_x25__; > } __CONST_SOCKADDR_ARG __attribute__ ((__transparent_union__)); > > > > > >struct mmsghdr > { > struct msghdr msg_hdr; > unsigned int msg_len; > > }; > > > > > > >extern int socket (int __domain, int __type, int __protocol) __attribute__ ((__nothrow__ )); > > > > > >extern int socketpair (int __domain, int __type, int __protocol, > int __fds[2]) __attribute__ ((__nothrow__ )); > > >extern int bind (int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len) > __attribute__ ((__nothrow__ )); > > >extern int getsockname (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __len) __attribute__ ((__nothrow__ )); ># 137 "../socket/sys/socket.h" >extern int connect (int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len); > > > >extern int getpeername (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __len) __attribute__ ((__nothrow__ )); > > > > > > >extern ssize_t send (int __fd, const void *__buf, size_t __n, int __flags); > > > > > > >extern ssize_t recv (int __fd, void *__buf, size_t __n, int __flags); > > > > > > >extern ssize_t sendto (int __fd, const void *__buf, size_t __n, > int __flags, __CONST_SOCKADDR_ARG __addr, > socklen_t __addr_len); ># 174 "../socket/sys/socket.h" >extern ssize_t recvfrom (int __fd, void *__restrict __buf, size_t __n, > int __flags, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len); > > > > > > > >extern ssize_t sendmsg (int __fd, const struct msghdr *__message, > int __flags); > > > > > > > >extern int sendmmsg (int __fd, struct mmsghdr *__vmessages, > unsigned int __vlen, int __flags); > > > > > > > >extern ssize_t recvmsg (int __fd, struct msghdr *__message, int __flags); > > > > > > > >extern int recvmmsg (int __fd, struct mmsghdr *__vmessages, > unsigned int __vlen, int __flags, > const struct timespec *__tmo); > > > > > > >extern int getsockopt (int __fd, int __level, int __optname, > void *__restrict __optval, > socklen_t *__restrict __optlen) __attribute__ ((__nothrow__ )); > > > > >extern int setsockopt (int __fd, int __level, int __optname, > const void *__optval, socklen_t __optlen) __attribute__ ((__nothrow__ )); > > > > > >extern int listen (int __fd, int __n) __attribute__ ((__nothrow__ )); ># 243 "../socket/sys/socket.h" >extern int accept (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len); > > > > > > >extern int accept4 (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len, int __flags); ># 261 "../socket/sys/socket.h" >extern int shutdown (int __fd, int __how) __attribute__ ((__nothrow__ )); > > > > >extern int sockatmark (int __fd) __attribute__ ((__nothrow__ )); > > > > > > > >extern int isfdtype (int __fd, int __fdtype) __attribute__ ((__nothrow__ )); ># 283 "../socket/sys/socket.h" > ># 3 "../include/sys/socket.h" 2 > > > > > > > >extern int __socket (int __domain, int __type, > int __protocol) __attribute__ ((visibility ("hidden"))); > > > > > >extern int __socketpair (int __domain, int __type, int __protocol, > int __fds[2]) __attribute__ ((visibility ("hidden"))); > > > >extern int __opensock (void) __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern int __getpeername (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__len) __attribute__ ((visibility ("hidden"))); > > >extern ssize_t __libc_send (int __fd, const void *__buf, size_t __n, > int __flags); >extern ssize_t __send (int __fd, const void *__buf, size_t __n, int __flags); > > > > >extern ssize_t __libc_recv (int __fd, void *__buf, size_t __n, int __flags); > > > >extern ssize_t __libc_sendto (int __fd, const void *__buf, size_t __n, > int __flags, __CONST_SOCKADDR_ARG __addr, > socklen_t __addr_len); > > > > > >extern ssize_t __libc_recvfrom (int __fd, void *__restrict __buf, size_t __n, > int __flags, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len); > > > > > >extern int __libc_connect (int __fd, __CONST_SOCKADDR_ARG __addr, > socklen_t __len); >extern int __connect (int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len); > > > > > > > >extern ssize_t __recv (int __fd, void *__buf, size_t __n, int __flags) > __attribute__ ((visibility ("hidden"))); > > > >extern ssize_t __libc_sendto (int __fd, const void *__buf, size_t __n, > int __flags, __CONST_SOCKADDR_ARG __addr, > socklen_t __addr_len); >extern ssize_t __sendto (int __fd, const void *__buf, size_t __n, > int __flags, __CONST_SOCKADDR_ARG __addr, > socklen_t __addr_len) __attribute__ ((visibility ("hidden"))); > > > > > >extern ssize_t __recvfrom (int __fd, void *__restrict __buf, size_t __n, > int __flags, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len) __attribute__ ((visibility ("hidden"))); > > > >extern ssize_t __libc_sendmsg (int __fd, const struct msghdr *__message, > int __flags); >extern ssize_t __sendmsg (int __fd, const struct msghdr *__message, > int __flags) __attribute__ ((visibility ("hidden"))); > >extern int __sendmmsg (int __fd, struct mmsghdr *__vmessages, > unsigned int __vlen, int __flags); > > > > >extern ssize_t __libc_recvmsg (int __fd, struct msghdr *__message, > int __flags); >extern ssize_t __recvmsg (int __fd, struct msghdr *__message, > int __flags) __attribute__ ((visibility ("hidden"))); > > > > >extern int __setsockopt (int __fd, int __level, int __optname, > const void *__optval, > socklen_t __optlen) __attribute__ ((visibility ("hidden"))); > > > > >extern int __getsockopt (int __fd, int __level, int __optname, > void *__restrict __optval, > socklen_t *__restrict __optlen) __attribute__ ((visibility ("hidden"))); > > >extern int __getsockname (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __len) __attribute__ ((visibility ("hidden"))); > > >extern int __bind (int __fd, __CONST_SOCKADDR_ARG __addr, > socklen_t __len) __attribute__ ((visibility ("hidden"))); > > > > >extern int __listen (int __fd, int __n) __attribute__ ((visibility ("hidden"))); > > > > > > >extern int __libc_accept (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len) > __attribute__ ((__nothrow__ )) __attribute__ ((visibility ("hidden"))); > >extern int __libc_accept4 (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len, int __flags) > __attribute__ ((__nothrow__ )) __attribute__ ((visibility ("hidden"))); > > > > > >extern int __libc_sa_len (sa_family_t __af); > > > > > >extern int __have_sock_cloexec __attribute__ ((visibility ("hidden"))); ># 24 "../inet/netinet/in.h" 2 > > > > > > >typedef uint32_t in_addr_t; >struct in_addr > { > in_addr_t s_addr; > }; > > ># 1 "../sysdeps/unix/sysv/linux/bits/in.h" 1 ># 138 "../sysdeps/unix/sysv/linux/bits/in.h" >struct ip_opts > { > struct in_addr ip_dst; > char ip_opts[40]; > }; > > >struct ip_mreqn > { > struct in_addr imr_multiaddr; > struct in_addr imr_address; > int imr_ifindex; > }; > > >struct in_pktinfo > { > int ipi_ifindex; > struct in_addr ipi_spec_dst; > struct in_addr ipi_addr; > }; ># 38 "../inet/netinet/in.h" 2 > > >enum > { > IPPROTO_IP = 0, > > IPPROTO_ICMP = 1, > > IPPROTO_IGMP = 2, > > IPPROTO_IPIP = 4, > > IPPROTO_TCP = 6, > > IPPROTO_EGP = 8, > > IPPROTO_PUP = 12, > > IPPROTO_UDP = 17, > > IPPROTO_IDP = 22, > > IPPROTO_TP = 29, > > IPPROTO_DCCP = 33, > > IPPROTO_IPV6 = 41, > > IPPROTO_RSVP = 46, > > IPPROTO_GRE = 47, > > IPPROTO_ESP = 50, > > IPPROTO_AH = 51, > > IPPROTO_MTP = 92, > > IPPROTO_BEETPH = 94, > > IPPROTO_ENCAP = 98, > > IPPROTO_PIM = 103, > > IPPROTO_COMP = 108, > > IPPROTO_SCTP = 132, > > IPPROTO_UDPLITE = 136, > > IPPROTO_RAW = 255, > > IPPROTO_MAX > }; > > > > > >enum > { > IPPROTO_HOPOPTS = 0, > > IPPROTO_ROUTING = 43, > > IPPROTO_FRAGMENT = 44, > > IPPROTO_ICMPV6 = 58, > > IPPROTO_NONE = 59, > > IPPROTO_DSTOPTS = 60, > > IPPROTO_MH = 135 > > }; > > > >typedef uint16_t in_port_t; > > >enum > { > IPPORT_ECHO = 7, > IPPORT_DISCARD = 9, > IPPORT_SYSTAT = 11, > IPPORT_DAYTIME = 13, > IPPORT_NETSTAT = 15, > IPPORT_FTP = 21, > IPPORT_TELNET = 23, > IPPORT_SMTP = 25, > IPPORT_TIMESERVER = 37, > IPPORT_NAMESERVER = 42, > IPPORT_WHOIS = 43, > IPPORT_MTP = 57, > > IPPORT_TFTP = 69, > IPPORT_RJE = 77, > IPPORT_FINGER = 79, > IPPORT_TTYLINK = 87, > IPPORT_SUPDUP = 95, > > > IPPORT_EXECSERVER = 512, > IPPORT_LOGINSERVER = 513, > IPPORT_CMDSERVER = 514, > IPPORT_EFSSERVER = 520, > > > IPPORT_BIFFUDP = 512, > IPPORT_WHOSERVER = 513, > IPPORT_ROUTESERVER = 520, > > > IPPORT_RESERVED = 1024, > > > IPPORT_USERRESERVED = 5000 > }; ># 209 "../inet/netinet/in.h" >struct in6_addr > { > union > { > uint8_t __u6_addr8[16]; > > uint16_t __u6_addr16[8]; > uint32_t __u6_addr32[4]; > > } __in6_u; > > > > > > }; > > >extern const struct in6_addr in6addr_any; >extern const struct in6_addr in6addr_loopback; ># 237 "../inet/netinet/in.h" >struct sockaddr_in > { > sa_family_t sin_family; > in_port_t sin_port; > struct in_addr sin_addr; > > > unsigned char sin_zero[sizeof (struct sockaddr) - > (sizeof (unsigned short int)) - > sizeof (in_port_t) - > sizeof (struct in_addr)]; > }; > > > >struct sockaddr_in6 > { > sa_family_t sin6_family; > in_port_t sin6_port; > uint32_t sin6_flowinfo; > struct in6_addr sin6_addr; > uint32_t sin6_scope_id; > }; > > > > >struct ip_mreq > { > > struct in_addr imr_multiaddr; > > > struct in_addr imr_interface; > }; > >struct ip_mreq_source > { > > struct in_addr imr_multiaddr; > > > struct in_addr imr_interface; > > > struct in_addr imr_sourceaddr; > }; > > > > >struct ipv6_mreq > { > > struct in6_addr ipv6mr_multiaddr; > > > unsigned int ipv6mr_interface; > }; > > > > >struct group_req > { > > uint32_t gr_interface; > > > struct sockaddr_storage gr_group; > }; > >struct group_source_req > { > > uint32_t gsr_interface; > > > struct sockaddr_storage gsr_group; > > > struct sockaddr_storage gsr_source; > }; > > > >struct ip_msfilter > { > > struct in_addr imsf_multiaddr; > > > struct in_addr imsf_interface; > > > uint32_t imsf_fmode; > > > uint32_t imsf_numsrc; > > struct in_addr imsf_slist[1]; > }; > > > > > >struct group_filter > { > > uint32_t gf_interface; > > > struct sockaddr_storage gf_group; > > > uint32_t gf_fmode; > > > uint32_t gf_numsrc; > > struct sockaddr_storage gf_slist[1]; >}; ># 374 "../inet/netinet/in.h" >extern uint32_t ntohl (uint32_t __netlong) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >extern uint16_t ntohs (uint16_t __netshort) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >extern uint32_t htonl (uint32_t __hostlong) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >extern uint16_t htons (uint16_t __hostshort) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > ># 1 "../include/endian.h" 1 ># 383 "../inet/netinet/in.h" 2 > > ># 1 "../sysdeps/x86/bits/byteswap.h" 1 ># 386 "../inet/netinet/in.h" 2 ># 501 "../inet/netinet/in.h" >extern int bindresvport (int __sockfd, struct sockaddr_in *__sock_in) __attribute__ ((__nothrow__ )); > > >extern int bindresvport6 (int __sockfd, struct sockaddr_in6 *__sock_in) > __attribute__ ((__nothrow__ )); ># 531 "../inet/netinet/in.h" >struct cmsghdr; > > >struct in6_pktinfo > { > struct in6_addr ipi6_addr; > unsigned int ipi6_ifindex; > }; > > >struct ip6_mtuinfo > { > struct sockaddr_in6 ip6m_addr; > uint32_t ip6m_mtu; > }; > > > >extern int inet6_option_space (int __nbytes) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); >extern int inet6_option_init (void *__bp, struct cmsghdr **__cmsgp, > int __type) __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); >extern int inet6_option_append (struct cmsghdr *__cmsg, > const uint8_t *__typep, int __multx, > int __plusy) __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); >extern uint8_t *inet6_option_alloc (struct cmsghdr *__cmsg, int __datalen, > int __multx, int __plusy) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); >extern int inet6_option_next (const struct cmsghdr *__cmsg, > uint8_t **__tptrp) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); >extern int inet6_option_find (const struct cmsghdr *__cmsg, > uint8_t **__tptrp, int __type) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)); > > > >extern int inet6_opt_init (void *__extbuf, socklen_t __extlen) __attribute__ ((__nothrow__ )); >extern int inet6_opt_append (void *__extbuf, socklen_t __extlen, int __offset, > uint8_t __type, socklen_t __len, uint8_t __align, > void **__databufp) __attribute__ ((__nothrow__ )); >extern int inet6_opt_finish (void *__extbuf, socklen_t __extlen, int __offset) > __attribute__ ((__nothrow__ )); >extern int inet6_opt_set_val (void *__databuf, int __offset, void *__val, > socklen_t __vallen) __attribute__ ((__nothrow__ )); >extern int inet6_opt_next (void *__extbuf, socklen_t __extlen, int __offset, > uint8_t *__typep, socklen_t *__lenp, > void **__databufp) __attribute__ ((__nothrow__ )); >extern int inet6_opt_find (void *__extbuf, socklen_t __extlen, int __offset, > uint8_t __type, socklen_t *__lenp, > void **__databufp) __attribute__ ((__nothrow__ )); >extern int inet6_opt_get_val (void *__databuf, int __offset, void *__val, > socklen_t __vallen) __attribute__ ((__nothrow__ )); > > > >extern socklen_t inet6_rth_space (int __type, int __segments) __attribute__ ((__nothrow__ )); >extern void *inet6_rth_init (void *__bp, socklen_t __bp_len, int __type, > int __segments) __attribute__ ((__nothrow__ )); >extern int inet6_rth_add (void *__bp, const struct in6_addr *__addr) __attribute__ ((__nothrow__ )); >extern int inet6_rth_reverse (const void *__in, void *__out) __attribute__ ((__nothrow__ )); >extern int inet6_rth_segments (const void *__bp) __attribute__ ((__nothrow__ )); >extern struct in6_addr *inet6_rth_getaddr (const void *__bp, int __index) > __attribute__ ((__nothrow__ )); > > > > > >extern int getipv4sourcefilter (int __s, struct in_addr __interface_addr, > struct in_addr __group, uint32_t *__fmode, > uint32_t *__numsrc, struct in_addr *__slist) > __attribute__ ((__nothrow__ )); > > >extern int setipv4sourcefilter (int __s, struct in_addr __interface_addr, > struct in_addr __group, uint32_t __fmode, > uint32_t __numsrc, > const struct in_addr *__slist) > __attribute__ ((__nothrow__ )); > > > >extern int getsourcefilter (int __s, uint32_t __interface_addr, > const struct sockaddr *__group, > socklen_t __grouplen, uint32_t *__fmode, > uint32_t *__numsrc, > struct sockaddr_storage *__slist) __attribute__ ((__nothrow__ )); > > >extern int setsourcefilter (int __s, uint32_t __interface_addr, > const struct sockaddr *__group, > socklen_t __grouplen, uint32_t __fmode, > uint32_t __numsrc, > const struct sockaddr_storage *__slist) __attribute__ ((__nothrow__ )); > > > ># 4 "../include/netinet/in.h" 2 > > > > > ># 58 "../resolv/resolv.h" 2 ># 71 "../resolv/resolv.h" >typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error } > res_sendhookact; > >typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *__ns, > const u_char **__query, > int *__querylen, > u_char *__ans, > int __anssiz, > int *__resplen); > >typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *__ns, > const u_char *__query, > int __querylen, > u_char *__ans, > int __anssiz, > int *__resplen); ># 104 "../resolv/resolv.h" >struct __res_state { > int retrans; > int retry; > u_long options; > int nscount; > struct sockaddr_in > nsaddr_list[3]; > > u_short id; > > char *dnsrch[6 +1]; > char defdname[256]; > u_long pfcode; > unsigned ndots:4; > unsigned nsort:4; > unsigned ipv6_unavail:1; > unsigned unused:23; > struct { > struct in_addr addr; > u_int32_t mask; > } sort_list[10]; > > res_send_qhook qhook; > res_send_rhook rhook; > int res_h_errno; > int _vcsock; > u_int _flags; > > union { > char pad[52]; > struct { > u_int16_t nscount; > u_int16_t nsmap[3]; > int nssocks[3]; > u_int16_t nscount6; > u_int16_t nsinit; > struct sockaddr_in6 *nsaddrs[3]; > > unsigned long long int initstamp > __attribute__((packed)); > > > > } _ext; > } _u; >}; > >typedef struct __res_state *res_state; ># 13 "../include/resolv.h" 2 ># 40 "../nptl/descr.h" 2 ># 1 "../sysdeps/unix/sysv/linux/kernel-features.h" 1 ># 41 "../nptl/descr.h" 2 ># 66 "../nptl/descr.h" >struct pthread_unwind_buf >{ > struct > { > __jmp_buf jmp_buf; > int mask_was_saved; > } cancel_jmp_buf[1]; > > union > { > > void *pad[4]; > > struct > { > > struct pthread_unwind_buf *prev; > > > > > struct _pthread_cleanup_buffer *cleanup; > > > int canceltype; > } data; > } priv; >}; > > > > >struct xid_command >{ > int syscall_no; > long int id[3]; > volatile int cntr; > volatile int error; >}; > > > >struct robust_list_head >{ > void *list; > long int futex_offset; > void *list_op_pending; >}; > > > >struct priority_protection_data >{ > int priomax; > unsigned int priomap[]; >}; > > > >struct pthread >{ > union > { > > > tcbhead_t header; ># 162 "../nptl/descr.h" > void *__padding[24]; > }; > > > list_t list; > > > > pid_t tid; > > > pid_t pid; ># 214 "../nptl/descr.h" > union > { > __pthread_slist_t robust_list; > struct robust_list_head robust_head; > }; ># 252 "../nptl/descr.h" > struct _pthread_cleanup_buffer *cleanup; > > > struct pthread_unwind_buf *cleanup_jmp_buf; > > > > int cancelhandling; ># 293 "../nptl/descr.h" > int flags; > > > > struct pthread_key_data > { > > > > uintptr_t seq; > > > void *data; > } specific_1stblock[32]; > > > struct pthread_key_data *specific[((1024 + 32 - 1) / 32)]; > > > _Bool specific_used; > > > _Bool report_events; > > > _Bool user_stack; > > > _Bool stopped_start; > > > > int parent_cancelhandling; > > > int lock; > > > int setxid_futex; ># 344 "../nptl/descr.h" > struct pthread *joinid; > > > > > void *result; > > > struct sched_param schedparam; > int schedpolicy; > > > > void *(*start_routine) (void *); > void *arg; > > > td_eventbuf_t eventbuf; > > struct pthread *nextevent; > > > > struct _Unwind_Exception exc; > > > > > void *stackblock; > size_t stackblock_size; > > size_t guardsize; > > size_t reported_guardsize; > > > struct priority_protection_data *tpp; > > > struct __res_state res; > > > char end_padding[]; > > > >} __attribute ((aligned (64))); ># 128 "../sysdeps/i386/nptl/tls.h" 2 ># 195 "../sysdeps/i386/nptl/tls.h" >static inline void __attribute__ ((unused, always_inline)) >tls_fill_user_desc (union user_desc_init *desc, > unsigned int entry_number, > void *pd) >{ > desc->vals[0] = entry_number; > > desc->vals[1] = (unsigned long int) pd; > > desc->vals[2] = 0xfffff; > > > > > > > > desc->vals[3] = 0x51; >} ># 28 "../include/errno.h" 2 > > > > > > > >extern __thread int errno __attribute__ ((tls_model ("initial-exec"))); > > > > > > >extern int *__errno_location (void) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)) > > > >; > ># 21 "pthread_create.c" 2 > > ># 1 "../include/string.h" 1 > > > ># 1 "../include/sys/types.h" 1 ># 5 "../include/string.h" 2 > >extern void *__memccpy (void *__dest, const void *__src, > int __c, size_t __n); > >extern size_t __strnlen (const char *__string, size_t __maxlen) > __attribute__ ((__pure__)); > >extern char *__strsep (char **__stringp, const char *__delim); > >extern int __strverscmp (const char *__s1, const char *__s2) > __attribute__ ((__pure__)); > >extern int __strncasecmp (const char *__s1, const char *__s2, > size_t __n) > __attribute__ ((__pure__)); > >extern int __strcasecmp (const char *__s1, const char *__s2) > __attribute__ ((__pure__)); > >extern char *__strcasestr (const char *__haystack, const char *__needle) > __attribute__ ((__pure__)); > >extern char *__strdup (const char *__string) > __attribute__ ((__malloc__)); >extern char *__strndup (const char *__string, size_t __n) > __attribute__ ((__malloc__)); > >extern void *__rawmemchr (const void *__s, int __c) > __attribute__ ((__pure__)); > >extern char *__strchrnul (const char *__s, int __c) > __attribute__ ((__pure__)); > >extern void *__memrchr (const void *__s, int __c, size_t __n) > __attribute__ ((__pure__)); > >extern void *__memchr (const void *__s, int __c, size_t __n) > __attribute__ ((__pure__)); > >extern int __ffs (int __i) __attribute__ ((const)); > >extern char *__strerror_r (int __errnum, char *__buf, size_t __buflen); > > > > ># 1 "../string/string.h" 1 ># 27 "../string/string.h" > > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 33 "../string/string.h" 2 ># 44 "../string/string.h" > > >extern void *memcpy (void *__restrict __dest, const void *__restrict __src, > size_t __n) __attribute__ ((__nothrow__ )) ; > > >extern void *memmove (void *__dest, const void *__src, size_t __n) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern void *memccpy (void *__restrict __dest, const void *__restrict __src, > int __c, size_t __n) > __attribute__ ((__nothrow__ )) ; > > > > > >extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__ )) ; > > >extern int memcmp (const void *__s1, const void *__s2, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 96 "../string/string.h" >extern void *memchr (const void *__s, int __c, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > ># 110 "../string/string.h" >extern void *rawmemchr (const void *__s, int __c) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 121 "../string/string.h" >extern void *memrchr (const void *__s, int __c, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > > >extern char *strcpy (char *__restrict __dest, const char *__restrict __src) > __attribute__ ((__nothrow__ )) ; > >extern char *strncpy (char *__restrict __dest, > const char *__restrict __src, size_t __n) > __attribute__ ((__nothrow__ )) ; > > >extern char *strcat (char *__restrict __dest, const char *__restrict __src) > __attribute__ ((__nothrow__ )) ; > >extern char *strncat (char *__restrict __dest, const char *__restrict __src, > size_t __n) __attribute__ ((__nothrow__ )) ; > > >extern int strcmp (const char *__s1, const char *__s2) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > >extern int strncmp (const char *__s1, const char *__s2, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > >extern int strcoll (const char *__s1, const char *__s2) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > >extern size_t strxfrm (char *__restrict __dest, > const char *__restrict __src, size_t __n) > __attribute__ ((__nothrow__ )) ; > > > > > > ># 1 "../include/xlocale.h" 1 ># 164 "../string/string.h" 2 > > >extern int strcoll_l (const char *__s1, const char *__s2, __locale_t __l) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > >extern size_t strxfrm_l (char *__dest, const char *__src, size_t __n, > __locale_t __l) __attribute__ ((__nothrow__ )) ; > > > > >extern char *strdup (const char *__s) > __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) ; > > > > > > >extern char *strndup (const char *__string, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) ; ># 210 "../string/string.h" > ># 235 "../string/string.h" >extern char *strchr (const char *__s, int __c) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 262 "../string/string.h" >extern char *strrchr (const char *__s, int __c) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > ># 276 "../string/string.h" >extern char *strchrnul (const char *__s, int __c) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > > >extern size_t strcspn (const char *__s, const char *__reject) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > >extern size_t strspn (const char *__s, const char *__accept) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 314 "../string/string.h" >extern char *strpbrk (const char *__s, const char *__accept) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 341 "../string/string.h" >extern char *strstr (const char *__haystack, const char *__needle) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > >extern char *strtok (char *__restrict __s, const char *__restrict __delim) > __attribute__ ((__nothrow__ )) ; > > > > >extern char *__strtok_r (char *__restrict __s, > const char *__restrict __delim, > char **__restrict __save_ptr) > __attribute__ ((__nothrow__ )) ; > >extern char *strtok_r (char *__restrict __s, const char *__restrict __delim, > char **__restrict __save_ptr) > __attribute__ ((__nothrow__ )) ; ># 372 "../string/string.h" >extern char *strcasestr (const char *__haystack, const char *__needle) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > > > >extern void *memmem (const void *__haystack, size_t __haystacklen, > const void *__needle, size_t __needlelen) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > >extern void *__mempcpy (void *__restrict __dest, > const void *__restrict __src, size_t __n) > __attribute__ ((__nothrow__ )) ; >extern void *mempcpy (void *__restrict __dest, > const void *__restrict __src, size_t __n) > __attribute__ ((__nothrow__ )) ; > > > > > >extern size_t strlen (const char *__s) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > >extern size_t strnlen (const char *__string, size_t __maxlen) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > >extern char *strerror (int __errnum) __attribute__ ((__nothrow__ )); > ># 437 "../string/string.h" >extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) > __attribute__ ((__nothrow__ )) ; > > > > > >extern char *strerror_l (int __errnum, __locale_t __l) __attribute__ ((__nothrow__ )); > > > > > >extern void __bzero (void *__s, size_t __n) __attribute__ ((__nothrow__ )) ; > > > >extern void bcopy (const void *__src, void *__dest, size_t __n) > __attribute__ ((__nothrow__ )) ; > > >extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__ )) ; > > >extern int bcmp (const void *__s1, const void *__s2, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 488 "../string/string.h" >extern char *index (const char *__s, int __c) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; ># 516 "../string/string.h" >extern char *rindex (const char *__s, int __c) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > >extern int ffs (int __i) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > > > >extern int ffsl (long int __l) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); >__extension__ extern int ffsll (long long int __ll) > __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > > >extern int strcasecmp (const char *__s1, const char *__s2) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > >extern int strncasecmp (const char *__s1, const char *__s2, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > >extern int strcasecmp_l (const char *__s1, const char *__s2, > __locale_t __loc) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > >extern int strncasecmp_l (const char *__s1, const char *__s2, > size_t __n, __locale_t __loc) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > > > > >extern char *strsep (char **__restrict __stringp, > const char *__restrict __delim) > __attribute__ ((__nothrow__ )) ; > > > > >extern char *strsignal (int __sig) __attribute__ ((__nothrow__ )); > > >extern char *__stpcpy (char *__restrict __dest, const char *__restrict __src) > __attribute__ ((__nothrow__ )) ; >extern char *stpcpy (char *__restrict __dest, const char *__restrict __src) > __attribute__ ((__nothrow__ )) ; > > > >extern char *__stpncpy (char *__restrict __dest, > const char *__restrict __src, size_t __n) > __attribute__ ((__nothrow__ )) ; >extern char *stpncpy (char *__restrict __dest, > const char *__restrict __src, size_t __n) > __attribute__ ((__nothrow__ )) ; > > > > >extern int strverscmp (const char *__s1, const char *__s2) > __attribute__ ((__nothrow__ )) __attribute__ ((__pure__)) ; > > >extern char *strfry (char *__string) __attribute__ ((__nothrow__ )) ; > > >extern void *memfrob (void *__s, size_t __n) __attribute__ ((__nothrow__ )) ; ># 603 "../string/string.h" >extern char *basename (const char *__filename) __attribute__ ((__nothrow__ )) ; ># 631 "../string/string.h" ># 1 "../sysdeps/x86/bits/string.h" 1 ># 632 "../string/string.h" 2 > > ># 1 "../include/bits/string2.h" 1 ># 1 "../string/bits/string2.h" 1 ># 51 "../string/bits/string2.h" ># 1 "../include/endian.h" 1 ># 52 "../string/bits/string2.h" 2 ># 393 "../string/bits/string2.h" >extern void *__rawmemchr (const void *__s, int __c); ># 945 "../string/bits/string2.h" >extern __inline __attribute__ ((__gnu_inline__)) size_t __strcspn_c1 (const char *__s, int __reject); >extern __inline __attribute__ ((__gnu_inline__)) size_t >__strcspn_c1 (const char *__s, int __reject) >{ > size_t __result = 0; > while (__s[__result] != '\0' && __s[__result] != __reject) > ++__result; > return __result; >} > >extern __inline __attribute__ ((__gnu_inline__)) size_t __strcspn_c2 (const char *__s, int __reject1, > int __reject2); >extern __inline __attribute__ ((__gnu_inline__)) size_t >__strcspn_c2 (const char *__s, int __reject1, int __reject2) >{ > size_t __result = 0; > while (__s[__result] != '\0' && __s[__result] != __reject1 > && __s[__result] != __reject2) > ++__result; > return __result; >} > >extern __inline __attribute__ ((__gnu_inline__)) size_t __strcspn_c3 (const char *__s, int __reject1, > int __reject2, int __reject3); >extern __inline __attribute__ ((__gnu_inline__)) size_t >__strcspn_c3 (const char *__s, int __reject1, int __reject2, > int __reject3) >{ > size_t __result = 0; > while (__s[__result] != '\0' && __s[__result] != __reject1 > && __s[__result] != __reject2 && __s[__result] != __reject3) > ++__result; > return __result; >} ># 1021 "../string/bits/string2.h" >extern __inline __attribute__ ((__gnu_inline__)) size_t __strspn_c1 (const char *__s, int __accept); >extern __inline __attribute__ ((__gnu_inline__)) size_t >__strspn_c1 (const char *__s, int __accept) >{ > size_t __result = 0; > > while (__s[__result] == __accept) > ++__result; > return __result; >} > >extern __inline __attribute__ ((__gnu_inline__)) size_t __strspn_c2 (const char *__s, int __accept1, > int __accept2); >extern __inline __attribute__ ((__gnu_inline__)) size_t >__strspn_c2 (const char *__s, int __accept1, int __accept2) >{ > size_t __result = 0; > > while (__s[__result] == __accept1 || __s[__result] == __accept2) > ++__result; > return __result; >} > >extern __inline __attribute__ ((__gnu_inline__)) size_t __strspn_c3 (const char *__s, int __accept1, > int __accept2, int __accept3); >extern __inline __attribute__ ((__gnu_inline__)) size_t >__strspn_c3 (const char *__s, int __accept1, int __accept2, int __accept3) >{ > size_t __result = 0; > > while (__s[__result] == __accept1 || __s[__result] == __accept2 > || __s[__result] == __accept3) > ++__result; > return __result; >} ># 1097 "../string/bits/string2.h" >extern __inline __attribute__ ((__gnu_inline__)) char *__strpbrk_c2 (const char *__s, int __accept1, > int __accept2); >extern __inline __attribute__ ((__gnu_inline__)) char * >__strpbrk_c2 (const char *__s, int __accept1, int __accept2) >{ > > while (*__s != '\0' && *__s != __accept1 && *__s != __accept2) > ++__s; > return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s; >} > >extern __inline __attribute__ ((__gnu_inline__)) char *__strpbrk_c3 (const char *__s, int __accept1, > int __accept2, int __accept3); >extern __inline __attribute__ ((__gnu_inline__)) char * >__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3) >{ > > while (*__s != '\0' && *__s != __accept1 && *__s != __accept2 > && *__s != __accept3) > ++__s; > return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s; >} ># 1147 "../string/bits/string2.h" >extern __inline __attribute__ ((__gnu_inline__)) char *__strtok_r_1c (char *__s, char __sep, char **__nextp); >extern __inline __attribute__ ((__gnu_inline__)) char * >__strtok_r_1c (char *__s, char __sep, char **__nextp) >{ > char *__result; > if (__s == ((void *)0)) > __s = *__nextp; > while (*__s == __sep) > ++__s; > __result = ((void *)0); > if (*__s != '\0') > { > __result = __s++; > while (*__s != '\0') > if (*__s++ == __sep) > { > __s[-1] = '\0'; > break; > } > } > *__nextp = __s; > return __result; >} ># 1179 "../string/bits/string2.h" >extern char *__strsep_g (char **__stringp, const char *__delim); ># 1197 "../string/bits/string2.h" >extern __inline __attribute__ ((__gnu_inline__)) char *__strsep_1c (char **__s, char __reject); >extern __inline __attribute__ ((__gnu_inline__)) char * >__strsep_1c (char **__s, char __reject) >{ > char *__retval = *__s; > if (__retval != ((void *)0) && (*__s = (__extension__ (__builtin_constant_p (__reject) && !__builtin_constant_p (__retval) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : __builtin_strchr (__retval, __reject)))) != ((void *)0)) > *(*__s)++ = '\0'; > return __retval; >} > >extern __inline __attribute__ ((__gnu_inline__)) char *__strsep_2c (char **__s, char __reject1, char __reject2); >extern __inline __attribute__ ((__gnu_inline__)) char * >__strsep_2c (char **__s, char __reject1, char __reject2) >{ > char *__retval = *__s; > if (__retval != ((void *)0)) > { > char *__cp = __retval; > while (1) > { > if (*__cp == '\0') > { > __cp = ((void *)0); > break; > } > if (*__cp == __reject1 || *__cp == __reject2) > { > *__cp++ = '\0'; > break; > } > ++__cp; > } > *__s = __cp; > } > return __retval; >} > >extern __inline __attribute__ ((__gnu_inline__)) char *__strsep_3c (char **__s, char __reject1, char __reject2, > char __reject3); >extern __inline __attribute__ ((__gnu_inline__)) char * >__strsep_3c (char **__s, char __reject1, char __reject2, char __reject3) >{ > char *__retval = *__s; > if (__retval != ((void *)0)) > { > char *__cp = __retval; > while (1) > { > if (*__cp == '\0') > { > __cp = ((void *)0); > break; > } > if (*__cp == __reject1 || *__cp == __reject2 || *__cp == __reject3) > { > *__cp++ = '\0'; > break; > } > ++__cp; > } > *__s = __cp; > } > return __retval; >} ># 1278 "../string/bits/string2.h" >extern char *__strdup (const char *__string) __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)); ># 1297 "../string/bits/string2.h" >extern char *__strndup (const char *__string, size_t __n) > __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)); ># 1 "../include/bits/string2.h" 2 ># 635 "../string/string.h" 2 ># 643 "../string/string.h" > ># 52 "../include/string.h" 2 > > >extern __typeof (strcoll_l) __strcoll_l; >extern __typeof (strxfrm_l) __strxfrm_l; >extern __typeof (strcasecmp_l) __strcasecmp_l; >extern __typeof (strncasecmp_l) __strncasecmp_l; ># 73 "../include/string.h" > > > > > > > > > > > > > > > > >extern char *__strsep_g (char **__stringp, const char *__delim); > > > > > > > > > > > > > > > > > > > > > > > > > ># 125 "../include/string.h" >extern void *__memcpy_chk (void *__restrict __dest, > const void *__restrict __src, size_t __len, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern void *__memmove_chk (void *__dest, const void *__src, size_t __len, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern void *__mempcpy_chk (void *__restrict __dest, > const void *__restrict __src, size_t __len, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern void *__memset_chk (void *__dest, int __ch, size_t __len, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern char *__strcpy_chk (char *__restrict __dest, > const char *__restrict __src, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern char *__stpcpy_chk (char *__restrict __dest, > const char *__restrict __src, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern char *__strncpy_chk (char *__restrict __dest, > const char *__restrict __src, > size_t __len, size_t __destlen) __attribute__ ((__nothrow__ )); >extern char *__strcat_chk (char *__restrict __dest, > const char *__restrict __src, > size_t __destlen) __attribute__ ((__nothrow__ )); >extern char *__strncat_chk (char *__restrict __dest, > const char *__restrict __src, > size_t __len, size_t __destlen) __attribute__ ((__nothrow__ )); ># 24 "pthread_create.c" 2 > ># 1 "pthreadP.h" 1 ># 22 "pthreadP.h" ># 1 "../include/pthread.h" 1 > > > > >extern void __pthread_initialize (void) __attribute__ ((weak)); ># 23 "pthreadP.h" 2 > > > ># 1 "descr.h" 1 ># 27 "pthreadP.h" 2 > > > ># 1 "../sysdeps/nptl/internaltypes.h" 1 ># 25 "../sysdeps/nptl/internaltypes.h" >struct pthread_attr >{ > > struct sched_param schedparam; > int schedpolicy; > > int flags; > > size_t guardsize; > > void *stackaddr; > size_t stacksize; > > cpu_set_t *cpuset; > size_t cpusetsize; >}; ># 52 "../sysdeps/nptl/internaltypes.h" >struct pthread_mutexattr >{ > > > > > > > int mutexkind; >}; > > > >struct pthread_condattr >{ > > > > > > > int value; >}; ># 86 "../sysdeps/nptl/internaltypes.h" >struct pthread_rwlockattr >{ > int lockkind; > int pshared; >}; > > > >struct pthread_barrier >{ > unsigned int curr_event; > int lock; > unsigned int left; > unsigned int init_count; > int private; >}; > > > >struct pthread_barrierattr >{ > int pshared; >}; > > > >struct pthread_key_struct >{ > > > > > uintptr_t seq; > > > void (*destr) (void *); >}; ># 142 "../sysdeps/nptl/internaltypes.h" >struct new_sem >{ > unsigned int value; > int private; > unsigned long int nwaiters; >}; > >struct old_sem >{ > unsigned int value; >}; > > > >typedef struct >{ > pthread_cond_t *cond; >} pthread_cond_2_0_t; ># 31 "pthreadP.h" 2 ># 1 "../sysdeps/nptl/pthread-functions.h" 1 ># 22 "../sysdeps/nptl/pthread-functions.h" ># 1 "../include/pthread.h" 1 > > > > >extern void __pthread_initialize (void) __attribute__ ((weak)); ># 23 "../sysdeps/nptl/pthread-functions.h" 2 > > > > >struct xid_command; > > > >struct pthread_functions >{ > int (*ptr_pthread_attr_destroy) (pthread_attr_t *); > int (*ptr___pthread_attr_init_2_0) (pthread_attr_t *); > int (*ptr___pthread_attr_init_2_1) (pthread_attr_t *); > int (*ptr_pthread_attr_getdetachstate) (const pthread_attr_t *, int *); > int (*ptr_pthread_attr_setdetachstate) (pthread_attr_t *, int); > int (*ptr_pthread_attr_getinheritsched) (const pthread_attr_t *, int *); > int (*ptr_pthread_attr_setinheritsched) (pthread_attr_t *, int); > int (*ptr_pthread_attr_getschedparam) (const pthread_attr_t *, > struct sched_param *); > int (*ptr_pthread_attr_setschedparam) (pthread_attr_t *, > const struct sched_param *); > int (*ptr_pthread_attr_getschedpolicy) (const pthread_attr_t *, int *); > int (*ptr_pthread_attr_setschedpolicy) (pthread_attr_t *, int); > int (*ptr_pthread_attr_getscope) (const pthread_attr_t *, int *); > int (*ptr_pthread_attr_setscope) (pthread_attr_t *, int); > int (*ptr_pthread_condattr_destroy) (pthread_condattr_t *); > int (*ptr_pthread_condattr_init) (pthread_condattr_t *); > int (*ptr___pthread_cond_broadcast) (pthread_cond_t *); > int (*ptr___pthread_cond_destroy) (pthread_cond_t *); > int (*ptr___pthread_cond_init) (pthread_cond_t *, > const pthread_condattr_t *); > int (*ptr___pthread_cond_signal) (pthread_cond_t *); > int (*ptr___pthread_cond_wait) (pthread_cond_t *, pthread_mutex_t *); > int (*ptr___pthread_cond_timedwait) (pthread_cond_t *, pthread_mutex_t *, > const struct timespec *); > int (*ptr___pthread_cond_broadcast_2_0) (pthread_cond_2_0_t *); > int (*ptr___pthread_cond_destroy_2_0) (pthread_cond_2_0_t *); > int (*ptr___pthread_cond_init_2_0) (pthread_cond_2_0_t *, > const pthread_condattr_t *); > int (*ptr___pthread_cond_signal_2_0) (pthread_cond_2_0_t *); > int (*ptr___pthread_cond_wait_2_0) (pthread_cond_2_0_t *, pthread_mutex_t *); > int (*ptr___pthread_cond_timedwait_2_0) (pthread_cond_2_0_t *, > pthread_mutex_t *, > const struct timespec *); > int (*ptr_pthread_equal) (pthread_t, pthread_t); > void (*ptr___pthread_exit) (void *) __attribute__ ((__noreturn__)); > int (*ptr_pthread_getschedparam) (pthread_t, int *, struct sched_param *); > int (*ptr_pthread_setschedparam) (pthread_t, int, > const struct sched_param *); > int (*ptr_pthread_mutex_destroy) (pthread_mutex_t *); > int (*ptr_pthread_mutex_init) (pthread_mutex_t *, > const pthread_mutexattr_t *); > int (*ptr_pthread_mutex_lock) (pthread_mutex_t *); > int (*ptr_pthread_mutex_unlock) (pthread_mutex_t *); > pthread_t (*ptr_pthread_self) (void); > int (*ptr_pthread_setcancelstate) (int, int *); > int (*ptr_pthread_setcanceltype) (int, int *); > void (*ptr___pthread_cleanup_upto) (__jmp_buf, char *); > int (*ptr___pthread_once) (pthread_once_t *, void (*) (void)); > int (*ptr___pthread_rwlock_rdlock) (pthread_rwlock_t *); > int (*ptr___pthread_rwlock_wrlock) (pthread_rwlock_t *); > int (*ptr___pthread_rwlock_unlock) (pthread_rwlock_t *); > int (*ptr___pthread_key_create) (pthread_key_t *, void (*) (void *)); > void *(*ptr___pthread_getspecific) (pthread_key_t); > int (*ptr___pthread_setspecific) (pthread_key_t, const void *); > void (*ptr__pthread_cleanup_push_defer) (struct _pthread_cleanup_buffer *, > void (*) (void *), void *); > void (*ptr__pthread_cleanup_pop_restore) (struct _pthread_cleanup_buffer *, > int); > > unsigned int *ptr_nthreads; > void (*ptr___pthread_unwind) (__pthread_unwind_buf_t *) > __attribute ((noreturn)) __attribute__ ((__regparm__ (1))); > void (*ptr__nptl_deallocate_tsd) (void); > int (*ptr__nptl_setxid) (struct xid_command *); > void (*ptr_freeres) (void); > void (*ptr_set_robust) (struct pthread *); >}; > > >extern struct pthread_functions __libc_pthread_functions __attribute__ ((visibility ("hidden"))); >extern int __libc_pthread_functions_init __attribute__ ((visibility ("hidden"))); ># 32 "pthreadP.h" 2 ># 1 "../include/atomic.h" 1 ># 50 "../include/atomic.h" ># 1 "../sysdeps/i386/i486/bits/atomic.h" 1 ># 23 "../sysdeps/i386/i486/bits/atomic.h" >typedef int8_t atomic8_t; >typedef uint8_t uatomic8_t; >typedef int_fast8_t atomic_fast8_t; >typedef uint_fast8_t uatomic_fast8_t; > >typedef int16_t atomic16_t; >typedef uint16_t uatomic16_t; >typedef int_fast16_t atomic_fast16_t; >typedef uint_fast16_t uatomic_fast16_t; > >typedef int32_t atomic32_t; >typedef uint32_t uatomic32_t; >typedef int_fast32_t atomic_fast32_t; >typedef uint_fast32_t uatomic_fast32_t; > >typedef int64_t atomic64_t; >typedef uint64_t uatomic64_t; >typedef int_fast64_t atomic_fast64_t; >typedef uint_fast64_t uatomic_fast64_t; > >typedef intptr_t atomicptr_t; >typedef uintptr_t uatomicptr_t; >typedef intmax_t atomic_max_t; >typedef uintmax_t uatomic_max_t; ># 51 "../include/atomic.h" 2 ># 33 "pthreadP.h" 2 ># 1 "../sysdeps/unix/sysv/linux/kernel-features.h" 1 ># 34 "pthreadP.h" 2 ># 61 "pthreadP.h" >enum >{ > PTHREAD_MUTEX_KIND_MASK_NP = 3, > > PTHREAD_MUTEX_ELISION_NP = 256, > PTHREAD_MUTEX_NO_ELISION_NP = 512, > > PTHREAD_MUTEX_ROBUST_NORMAL_NP = 16, > PTHREAD_MUTEX_ROBUST_RECURSIVE_NP > = PTHREAD_MUTEX_ROBUST_NORMAL_NP | PTHREAD_MUTEX_RECURSIVE_NP, > PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP > = PTHREAD_MUTEX_ROBUST_NORMAL_NP | PTHREAD_MUTEX_ERRORCHECK_NP, > PTHREAD_MUTEX_ROBUST_ADAPTIVE_NP > = PTHREAD_MUTEX_ROBUST_NORMAL_NP | PTHREAD_MUTEX_ADAPTIVE_NP, > PTHREAD_MUTEX_PRIO_INHERIT_NP = 32, > PTHREAD_MUTEX_PI_NORMAL_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_NORMAL, > PTHREAD_MUTEX_PI_RECURSIVE_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_RECURSIVE_NP, > PTHREAD_MUTEX_PI_ERRORCHECK_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ERRORCHECK_NP, > PTHREAD_MUTEX_PI_ADAPTIVE_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ADAPTIVE_NP, > PTHREAD_MUTEX_PI_ROBUST_NORMAL_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NORMAL_NP, > PTHREAD_MUTEX_PI_ROBUST_RECURSIVE_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_RECURSIVE_NP, > PTHREAD_MUTEX_PI_ROBUST_ERRORCHECK_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP, > PTHREAD_MUTEX_PI_ROBUST_ADAPTIVE_NP > = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_ADAPTIVE_NP, > PTHREAD_MUTEX_PRIO_PROTECT_NP = 64, > PTHREAD_MUTEX_PP_NORMAL_NP > = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_NORMAL, > PTHREAD_MUTEX_PP_RECURSIVE_NP > = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_RECURSIVE_NP, > PTHREAD_MUTEX_PP_ERRORCHECK_NP > = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_ERRORCHECK_NP, > PTHREAD_MUTEX_PP_ADAPTIVE_NP > = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_ADAPTIVE_NP, > PTHREAD_MUTEX_ELISION_FLAGS_NP > = PTHREAD_MUTEX_ELISION_NP | PTHREAD_MUTEX_NO_ELISION_NP, > > PTHREAD_MUTEX_TIMED_ELISION_NP = > PTHREAD_MUTEX_TIMED_NP | PTHREAD_MUTEX_ELISION_NP, > PTHREAD_MUTEX_TIMED_NO_ELISION_NP = > PTHREAD_MUTEX_TIMED_NP | PTHREAD_MUTEX_NO_ELISION_NP, >}; ># 166 "pthreadP.h" >extern struct pthread_attr __default_pthread_attr __attribute__ ((visibility ("hidden"))); >extern int __default_pthread_attr_lock __attribute__ ((visibility ("hidden"))); > > >extern size_t __static_tls_size __attribute__ ((visibility ("hidden"))); >extern size_t __static_tls_align_m1 __attribute__ ((visibility ("hidden"))); > > >extern int __is_smp __attribute__ ((visibility ("hidden"))); > > >extern list_t __stack_user; >extern __typeof (__stack_user) __stack_user __asm__ ("" "__GI___stack_user") __attribute__ ((visibility ("hidden"))); > > >extern struct pthread_attr *__attr_list __attribute__ ((visibility ("hidden"))); >extern int __attr_list_lock __attribute__ ((visibility ("hidden"))); > > >extern int __current_sigrtmin __attribute__ ((visibility ("hidden"))); > >extern int __current_sigrtmax __attribute__ ((visibility ("hidden"))); > > >extern int __concurrency_level __attribute__ ((visibility ("hidden"))); > > >extern struct pthread_key_struct __pthread_keys[1024]; >extern __typeof (__pthread_keys) __pthread_keys __asm__ ("" "__GI___pthread_keys") __attribute__ ((visibility ("hidden"))); > > >extern unsigned int __nptl_nthreads __attribute__ ((visibility ("hidden"))); > > > > > > > >extern int __sched_fifo_min_prio __attribute__ ((visibility ("hidden"))); >extern int __sched_fifo_max_prio __attribute__ ((visibility ("hidden"))); >extern void __init_sched_fifo_prio (void) __attribute__ ((visibility ("hidden"))); >extern int __pthread_tpp_change_priority (int prev_prio, int new_prio) > __attribute__ ((visibility ("hidden"))); >extern int __pthread_current_priority (void) __attribute__ ((visibility ("hidden"))); > > > >extern int __pthread_debug __attribute__ ((visibility ("hidden"))); ># 242 "pthreadP.h" >extern void __pthread_unwind (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))) __attribute ((__noreturn__)) > > > > ; >extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))) __attribute ((__noreturn__)) > > > > ; >extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))); >extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf) > __attribute__ ((__regparm__ (1))); > >extern __typeof (__pthread_unwind) __pthread_unwind __asm__ ("" "__GI___pthread_unwind") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_unwind_next) __pthread_unwind_next __asm__ ("" "__GI___pthread_unwind_next") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_register_cancel) __pthread_register_cancel __asm__ ("" "__GI___pthread_register_cancel") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_unregister_cancel) __pthread_unregister_cancel __asm__ ("" "__GI___pthread_unregister_cancel") __attribute__ ((visibility ("hidden"))); > >extern void __attribute__ ((visibility ("hidden"))) pthread_cancel_init (void); >extern void __unwind_freeres (void); > > > > > >static inline void >__attribute ((noreturn, always_inline)) >__do_cancel (void) >{ > struct pthread *self = ({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;}); > > > (void) ({ if (sizeof ((self)->cancelhandling) == 4) asm volatile ("lock;" "orl %1, %%gs:%P0" :: "i" (__builtin_offsetof (struct pthread, cancelhandling)), "ir" (1 << (4))); else abort (); }); > > __pthread_unwind ((__pthread_unwind_buf_t *) > ({ __typeof (self->cleanup_jmp_buf) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf)), "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf) + 4)); } __value; })); >} ># 336 "pthreadP.h" >extern struct xid_command *__xidcmd __attribute__ ((visibility ("hidden"))); > > > > > >extern struct pthread *__find_in_stack_list (struct pthread *pd) > __attribute__ ((visibility ("hidden"))) __attribute__ ((regparm (3), stdcall)); > > > >extern void __free_tcb (struct pthread *pd) __attribute__ ((visibility ("hidden"))) __attribute__ ((regparm (3), stdcall)); > > >extern void __deallocate_stack (struct pthread *pd) > __attribute__ ((visibility ("hidden"))) __attribute__ ((regparm (3), stdcall)); > > > >extern void __reclaim_stacks (void) __attribute__ ((visibility ("hidden"))); > > >extern int __make_stacks_executable (void **stack_endp) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern void __pthread_cleanup_upto (__jmp_buf target, char *targetframe); > >extern __typeof (__pthread_cleanup_upto) __pthread_cleanup_upto __asm__ ("" "__GI___pthread_cleanup_upto") __attribute__ ((visibility ("hidden"))); > > > > >extern int __pthread_create_2_1 (pthread_t *newthread, > const pthread_attr_t *attr, > void *(*start_routine) (void *), void *arg); >extern int __pthread_create_2_0 (pthread_t *newthread, > const pthread_attr_t *attr, > void *(*start_routine) (void *), void *arg); >extern int __pthread_attr_init_2_1 (pthread_attr_t *attr); >extern int __pthread_attr_init_2_0 (pthread_attr_t *attr); > > > >extern void __nptl_create_event (void); >extern void __nptl_death_event (void); >extern __typeof (__nptl_create_event) __nptl_create_event __asm__ ("" "__GI___nptl_create_event") __attribute__ ((visibility ("hidden"))); >extern __typeof (__nptl_death_event) __nptl_death_event __asm__ ("" "__GI___nptl_death_event") __attribute__ ((visibility ("hidden"))); > > > >extern void __libc_pthread_init (unsigned long int *ptr, > void (*reclaim) (void), > const struct pthread_functions *functions) > __attribute__ ((regparm (3), stdcall)); ># 406 "pthreadP.h" >extern struct pthread *__find_thread_by_id (pid_t tid) __attribute__ ((visibility ("hidden"))) > >; > > > > > > >extern void __pthread_init_static_tls (struct link_map *) __attribute__ ((visibility ("hidden"))); > >extern size_t __pthread_get_minstack (const pthread_attr_t *attr); > > >extern int __pthread_getschedparam (pthread_t thread_id, int *policy, > struct sched_param *param); >extern int __pthread_setschedparam (pthread_t thread_id, int policy, > const struct sched_param *param); >extern int __pthread_setcancelstate (int state, int *oldstate); >extern int __pthread_mutex_init (pthread_mutex_t *__mutex, > const pthread_mutexattr_t *__mutexattr); >extern int __pthread_mutex_destroy (pthread_mutex_t *__mutex); >extern int __pthread_mutex_trylock (pthread_mutex_t *_mutex); >extern int __pthread_mutex_lock (pthread_mutex_t *__mutex); >extern int __pthread_mutex_cond_lock (pthread_mutex_t *__mutex) > __attribute__ ((visibility ("hidden"))) __attribute__ ((regparm (3), stdcall)); >extern void __pthread_mutex_cond_lock_adjust (pthread_mutex_t *__mutex) > __attribute__ ((visibility ("hidden"))) __attribute__ ((regparm (3), stdcall)); >extern int __pthread_mutex_unlock (pthread_mutex_t *__mutex); >extern int __pthread_mutex_unlock_usercnt (pthread_mutex_t *__mutex, > int __decr) > __attribute__ ((visibility ("hidden"))) __attribute__ ((regparm (3), stdcall)); >extern int __pthread_mutexattr_init (pthread_mutexattr_t *attr); >extern int __pthread_mutexattr_destroy (pthread_mutexattr_t *attr); >extern int __pthread_mutexattr_settype (pthread_mutexattr_t *attr, int kind); >extern int __pthread_attr_destroy (pthread_attr_t *attr); >extern int __pthread_attr_getdetachstate (const pthread_attr_t *attr, > int *detachstate); >extern int __pthread_attr_setdetachstate (pthread_attr_t *attr, > int detachstate); >extern int __pthread_attr_getinheritsched (const pthread_attr_t *attr, > int *inherit); >extern int __pthread_attr_setinheritsched (pthread_attr_t *attr, int inherit); >extern int __pthread_attr_getschedparam (const pthread_attr_t *attr, > struct sched_param *param); >extern int __pthread_attr_setschedparam (pthread_attr_t *attr, > const struct sched_param *param); >extern int __pthread_attr_getschedpolicy (const pthread_attr_t *attr, > int *policy); >extern int __pthread_attr_setschedpolicy (pthread_attr_t *attr, int policy); >extern int __pthread_attr_getscope (const pthread_attr_t *attr, int *scope); >extern int __pthread_attr_setscope (pthread_attr_t *attr, int scope); >extern int __pthread_attr_getstackaddr (const pthread_attr_t *__restrict > __attr, void **__restrict __stackaddr); >extern int __pthread_attr_setstackaddr (pthread_attr_t *__attr, > void *__stackaddr); >extern int __pthread_attr_getstacksize (const pthread_attr_t *__restrict > __attr, > size_t *__restrict __stacksize); >extern int __pthread_attr_setstacksize (pthread_attr_t *__attr, > size_t __stacksize); >extern int __pthread_attr_getstack (const pthread_attr_t *__restrict __attr, > void **__restrict __stackaddr, > size_t *__restrict __stacksize); >extern int __pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, > size_t __stacksize); >extern int __pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock, > const pthread_rwlockattr_t *__restrict > __attr); >extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock); >extern int __pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock); >extern int __pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock); >extern int __pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock); >extern int __pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock); >extern int __pthread_rwlock_unlock (pthread_rwlock_t *__rwlock); >extern int __pthread_cond_broadcast (pthread_cond_t *cond); >extern int __pthread_cond_destroy (pthread_cond_t *cond); >extern int __pthread_cond_init (pthread_cond_t *cond, > const pthread_condattr_t *cond_attr); >extern int __pthread_cond_signal (pthread_cond_t *cond); >extern int __pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex); >extern int __pthread_cond_timedwait (pthread_cond_t *cond, > pthread_mutex_t *mutex, > const struct timespec *abstime); >extern int __pthread_condattr_destroy (pthread_condattr_t *attr); >extern int __pthread_condattr_init (pthread_condattr_t *attr); >extern int __pthread_key_create (pthread_key_t *key, void (*destr) (void *)); >extern void *__pthread_getspecific (pthread_key_t key); >extern int __pthread_setspecific (pthread_key_t key, const void *value); >extern int __pthread_once (pthread_once_t *once_control, > void (*init_routine) (void)); >extern int __pthread_atfork (void (*prepare) (void), void (*parent) (void), > void (*child) (void)); >extern pthread_t __pthread_self (void); >extern int __pthread_equal (pthread_t thread1, pthread_t thread2); >extern int __pthread_kill (pthread_t threadid, int signo); >extern void __pthread_exit (void *value) __attribute__ ((__noreturn__)); >extern int __pthread_setcanceltype (int type, int *oldtype); >extern int __pthread_enable_asynccancel (void) __attribute__ ((visibility ("hidden"))); >extern void __pthread_disable_asynccancel (int oldtype) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern __typeof (__pthread_mutex_init) __pthread_mutex_init __asm__ ("" "__GI___pthread_mutex_init") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_mutex_destroy) __pthread_mutex_destroy __asm__ ("" "__GI___pthread_mutex_destroy") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_mutex_lock) __pthread_mutex_lock __asm__ ("" "__GI___pthread_mutex_lock") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_mutex_unlock) __pthread_mutex_unlock __asm__ ("" "__GI___pthread_mutex_unlock") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_rwlock_rdlock) __pthread_rwlock_rdlock __asm__ ("" "__GI___pthread_rwlock_rdlock") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_rwlock_wrlock) __pthread_rwlock_wrlock __asm__ ("" "__GI___pthread_rwlock_wrlock") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_rwlock_unlock) __pthread_rwlock_unlock __asm__ ("" "__GI___pthread_rwlock_unlock") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_key_create) __pthread_key_create __asm__ ("" "__GI___pthread_key_create") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_getspecific) __pthread_getspecific __asm__ ("" "__GI___pthread_getspecific") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_setspecific) __pthread_setspecific __asm__ ("" "__GI___pthread_setspecific") __attribute__ ((visibility ("hidden"))); >extern __typeof (__pthread_once) __pthread_once __asm__ ("" "__GI___pthread_once") __attribute__ ((visibility ("hidden"))); > > >extern int __pthread_cond_broadcast_2_0 (pthread_cond_2_0_t *cond); >extern int __pthread_cond_destroy_2_0 (pthread_cond_2_0_t *cond); >extern int __pthread_cond_init_2_0 (pthread_cond_2_0_t *cond, > const pthread_condattr_t *cond_attr); >extern int __pthread_cond_signal_2_0 (pthread_cond_2_0_t *cond); >extern int __pthread_cond_timedwait_2_0 (pthread_cond_2_0_t *cond, > pthread_mutex_t *mutex, > const struct timespec *abstime); >extern int __pthread_cond_wait_2_0 (pthread_cond_2_0_t *cond, > pthread_mutex_t *mutex); > >extern int __pthread_getaffinity_np (pthread_t th, size_t cpusetsize, > cpu_set_t *cpuset); > > >extern int __libc_enable_asynccancel (void) __attribute__ ((visibility ("hidden"))); >extern void __libc_disable_asynccancel (int oldtype) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern int __librt_enable_asynccancel (void) __attribute__ ((visibility ("hidden"))); >extern void __librt_disable_asynccancel (int oldtype) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern void __pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg) > __attribute__ ((visibility ("hidden"))); > > > > > >extern void __pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, > int execute) __attribute__ ((visibility ("hidden"))); > > > > > >extern void __pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg); >extern void __pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, > int execute); > > >extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg); >extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, > int execute); >extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg); >extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, > int execute); > >extern void __nptl_deallocate_tsd (void) __attribute__ ((visibility ("hidden"))); > >extern void __nptl_setxid_error (struct xid_command *cmdp, int error) > __attribute__ ((visibility ("hidden"))); >extern int __nptl_setxid (struct xid_command *cmdp) __attribute__ ((visibility ("hidden"))); > > > > >extern void __free_stacks (size_t limit) __attribute__ ((visibility ("hidden"))); > >extern void __wait_lookup_done (void) __attribute__ ((visibility ("hidden"))); ># 611 "pthreadP.h" >static inline int >check_sched_policy_attr (int pol) >{ > if (pol == 0 || pol == 1 || pol == 2) > return 0; > > return 22; >} > > > >static inline int >check_sched_priority_attr (int pr, int pol) >{ > int min = __sched_get_priority_min (pol); > int max = __sched_get_priority_max (pol); > > if (min >= 0 && max >= 0 && pr >= min && pr <= max) > return 0; > > return 22; >} > > > >static inline int >check_stacksize_attr (size_t st) >{ > if (st >= 16384) > return 0; > > return 22; >} > > >extern size_t __kernel_cpumask_size __attribute__ ((visibility ("hidden"))); >extern int __determine_cpumask_size (pid_t tid); > > > >static inline int >check_cpuset_attr (const cpu_set_t *cs, const size_t sz) >{ > if (__kernel_cpumask_size == 0) > { > int res = __determine_cpumask_size (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->tid); > if (res) > return res; > } > > > > for (size_t cnt = __kernel_cpumask_size; cnt < sz; ++cnt) > if (((char *) cs)[cnt] != '\0') > > > return 22; > > return 0; >} ># 26 "pthread_create.c" 2 > ># 1 "../sysdeps/unix/sysv/linux/ldsodefs.h" 1 ># 22 "../sysdeps/unix/sysv/linux/ldsodefs.h" ># 1 "../sysdeps/gnu/ldsodefs.h" 1 ># 23 "../sysdeps/gnu/ldsodefs.h" ># 1 "/suse/schwab/src/libc/i586/libc-abis.h" 1 > > > >enum >{ > LIBC_ABI_DEFAULT = 0, > LIBC_ABI_UNIQUE, > LIBC_ABI_IFUNC, > LIBC_ABI_MAX >}; ># 24 "../sysdeps/gnu/ldsodefs.h" 2 ># 46 "../sysdeps/gnu/ldsodefs.h" ># 1 "../sysdeps/i386/ldsodefs.h" 1 ># 24 "../sysdeps/i386/ldsodefs.h" >struct La_i86_regs; >struct La_i86_retval; ># 38 "../sysdeps/i386/ldsodefs.h" ># 1 "../sysdeps/generic/ldsodefs.h" 1 ># 27 "../sysdeps/generic/ldsodefs.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 28 "../sysdeps/generic/ldsodefs.h" 2 > > > > ># 1 "../include/dlfcn.h" 1 > ># 1 "../dlfcn/dlfcn.h" 1 ># 24 "../dlfcn/dlfcn.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 25 "../dlfcn/dlfcn.h" 2 > > ># 1 "../include/bits/dlfcn.h" 1 ># 1 "../bits/dlfcn.h" 1 ># 57 "../bits/dlfcn.h" > > > >extern void _dl_mcount_wrapper_check (void *__selfpc) __attribute__ ((__nothrow__ )); > > ># 2 "../include/bits/dlfcn.h" 2 > > > ># 28 "../dlfcn/dlfcn.h" 2 ># 44 "../dlfcn/dlfcn.h" >typedef long int Lmid_t; > > > > > > > > > > > >extern void *dlopen (const char *__file, int __mode) __attribute__ ((__nothrow__)); > > > >extern int dlclose (void *__handle) __attribute__ ((__nothrow__)) ; > > > >extern void *dlsym (void *__restrict __handle, > const char *__restrict __name) __attribute__ ((__nothrow__ )) ; > > > >extern void *dlmopen (Lmid_t __nsid, const char *__file, int __mode) __attribute__ ((__nothrow__)); > > > >extern void *dlvsym (void *__restrict __handle, > const char *__restrict __name, > const char *__restrict __version) > __attribute__ ((__nothrow__ )) ; > > > > > >extern char *dlerror (void) __attribute__ ((__nothrow__ )); > > > > > >typedef struct >{ > const char *dli_fname; > void *dli_fbase; > const char *dli_sname; > void *dli_saddr; >} Dl_info; > > > >extern int dladdr (const void *__address, Dl_info *__info) > __attribute__ ((__nothrow__ )) ; > > >extern int dladdr1 (const void *__address, Dl_info *__info, > void **__extra_info, int __flags) __attribute__ ((__nothrow__ )) ; > > > > >enum > { > > RTLD_DL_SYMENT = 1, > > > RTLD_DL_LINKMAP = 2 > }; > > > > > > > >extern int dlinfo (void *__restrict __handle, > int __request, void *__restrict __arg) > __attribute__ ((__nothrow__ )) ; > > >enum > { > > RTLD_DI_LMID = 1, > > > > RTLD_DI_LINKMAP = 2, > > RTLD_DI_CONFIGADDR = 3, > > > > > > > RTLD_DI_SERINFO = 4, > RTLD_DI_SERINFOSIZE = 5, > > > > RTLD_DI_ORIGIN = 6, > > RTLD_DI_PROFILENAME = 7, > RTLD_DI_PROFILEOUT = 8, > > > > > RTLD_DI_TLS_MODID = 9, > > > > > > RTLD_DI_TLS_DATA = 10, > > RTLD_DI_MAX = 10 > }; > > > > >typedef struct >{ > char *dls_name; > unsigned int dls_flags; >} Dl_serpath; > > > >typedef struct >{ > size_t dls_size; > unsigned int dls_cnt; > Dl_serpath dls_serpath[1]; >} Dl_serinfo; > > > > ># 3 "../include/dlfcn.h" 2 > ># 1 "../include/link.h" 1 ># 32 "../include/link.h" ># 1 "../elf/link.h" 1 ># 25 "../elf/link.h" ># 1 "../include/dlfcn.h" 1 ># 26 "../elf/link.h" 2 ># 1 "../include/sys/types.h" 1 ># 27 "../elf/link.h" 2 > > > > > > > ># 1 "../bits/elfclass.h" 1 ># 9 "../bits/elfclass.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 10 "../bits/elfclass.h" 2 > > > > >typedef uint32_t Elf_Symndx; ># 35 "../elf/link.h" 2 ># 1 "../sysdeps/x86/bits/link.h" 1 ># 25 "../sysdeps/x86/bits/link.h" >typedef struct La_i86_regs >{ > uint32_t lr_edx; > uint32_t lr_ecx; > uint32_t lr_eax; > uint32_t lr_ebp; > uint32_t lr_esp; >} La_i86_regs; > > >typedef struct La_i86_retval >{ > uint32_t lrv_eax; > uint32_t lrv_edx; > long double lrv_st0; > long double lrv_st1; >} La_i86_retval; > > > > >extern Elf32_Addr la_i86_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, > uintptr_t *__refcook, > uintptr_t *__defcook, > La_i86_regs *__regs, > unsigned int *__flags, > const char *__symname, > long int *__framesizep); >extern unsigned int la_i86_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, > uintptr_t *__refcook, > uintptr_t *__defcook, > const La_i86_regs *__inregs, > La_i86_retval *__outregs, > const char *symname); > > ># 36 "../elf/link.h" 2 > > > > > > >struct r_debug > { > int r_version; > > struct link_map_public *r_map; > > > > > > > Elf32_Addr r_brk; > enum > { > > > RT_CONSISTENT, > RT_ADD, > RT_DELETE > } r_state; > > Elf32_Addr r_ldbase; > }; > > >extern struct r_debug _r_debug; ># 76 "../elf/link.h" >extern Elf32_Dyn _DYNAMIC[]; > > > > > > > >struct link_map_public > { > > > > Elf32_Addr l_addr; > > char *l_name; > Elf32_Dyn *l_ld; > struct link_map_public *l_next, *l_prev; > }; > > > > > > > >enum > { > LA_ACT_CONSISTENT, > LA_ACT_ADD, > LA_ACT_DELETE > }; > > >enum > { > LA_SER_ORIG = 0x01, > LA_SER_LIBPATH = 0x02, > LA_SER_RUNPATH = 0x04, > LA_SER_CONFIG = 0x08, > LA_SER_DEFAULT = 0x40, > LA_SER_SECURE = 0x80 > }; > > >enum > { > LA_FLG_BINDTO = 0x01, > LA_FLG_BINDFROM = 0x02 > }; > > >enum > { > LA_SYMB_NOPLTENTER = 0x01, > LA_SYMB_NOPLTEXIT = 0x02, > LA_SYMB_STRUCTCALL = 0x04, > LA_SYMB_DLSYM = 0x08, > LA_SYMB_ALTVALUE = 0x10 > > }; > >struct dl_phdr_info > { > Elf32_Addr dlpi_addr; > const char *dlpi_name; > const Elf32_Phdr *dlpi_phdr; > Elf32_Half dlpi_phnum; > > > > > > > > __extension__ unsigned long long int dlpi_adds; > > __extension__ unsigned long long int dlpi_subs; > > > > size_t dlpi_tls_modid; > > > > > void *dlpi_tls_data; > }; > > > >extern int dl_iterate_phdr (int (*__callback) (struct dl_phdr_info *, > size_t, void *), > void *__data); > > > > > >extern unsigned int la_version (unsigned int __version); >extern void la_activity (uintptr_t *__cookie, unsigned int __flag); >extern char *la_objsearch (const char *__name, uintptr_t *__cookie, > unsigned int __flag); >extern unsigned int la_objopen_wrongproto (struct link_map_public *__map, Lmid_t __lmid, > uintptr_t *__cookie); >extern void la_preinit (uintptr_t *__cookie); >extern uintptr_t la_symbind32 (Elf32_Sym *__sym, unsigned int __ndx, > uintptr_t *__refcook, uintptr_t *__defcook, > unsigned int *__flags, const char *__symname); >extern uintptr_t la_symbind64 (Elf64_Sym *__sym, unsigned int __ndx, > uintptr_t *__refcook, uintptr_t *__defcook, > unsigned int *__flags, const char *__symname); >extern unsigned int la_objclose (uintptr_t *__cookie); > > ># 33 "../include/link.h" 2 > > > >struct link_map; >extern unsigned int la_objopen (struct link_map *__map, Lmid_t __lmid, > uintptr_t *__cookie); > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 42 "../include/link.h" 2 ># 1 "../sysdeps/x86/bits/linkmap.h" 1 ># 10 "../sysdeps/x86/bits/linkmap.h" >struct link_map_machine > { > Elf32_Addr plt; > Elf32_Addr gotplt; > void *tlsdesc_table; > }; ># 43 "../include/link.h" 2 ># 1 "../sysdeps/i386/dl-lookupcfg.h" 1 ># 21 "../sysdeps/i386/dl-lookupcfg.h" ># 1 "../sysdeps/generic/dl-lookupcfg.h" 1 ># 22 "../sysdeps/i386/dl-lookupcfg.h" 2 > >struct link_map; > >extern void __attribute__ ((regparm (3), stdcall)) _dl_unmap (struct link_map *map); ># 44 "../include/link.h" 2 > ># 1 "../sysdeps/nptl/bits/libc-lock.h" 1 ># 22 "../sysdeps/nptl/bits/libc-lock.h" ># 1 "../include/pthread.h" 1 > > > > >extern void __pthread_initialize (void) __attribute__ ((weak)); ># 23 "../sysdeps/nptl/bits/libc-lock.h" 2 > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 25 "../sysdeps/nptl/bits/libc-lock.h" 2 > > > > > > > >typedef struct { int lock; int cnt; void *owner; } __libc_lock_recursive_t; ># 150 "../sysdeps/nptl/bits/libc-lock.h" >extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg); >extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, > int execute); ># 184 "../sysdeps/nptl/bits/libc-lock.h" ># 1 "../sysdeps/nptl/bits/libc-lockP.h" 1 ># 22 "../sysdeps/nptl/bits/libc-lockP.h" ># 1 "../include/pthread.h" 1 > > > > >extern void __pthread_initialize (void) __attribute__ ((weak)); ># 23 "../sysdeps/nptl/bits/libc-lockP.h" 2 > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 25 "../sysdeps/nptl/bits/libc-lockP.h" 2 ># 41 "../sysdeps/nptl/bits/libc-lockP.h" >typedef int __libc_lock_t; > >typedef struct { pthread_mutex_t mutex; } __rtld_lock_recursive_t; >typedef pthread_rwlock_t __libc_rwlock_t; > > >typedef pthread_key_t __libc_key_t; ># 256 "../sysdeps/nptl/bits/libc-lockP.h" >extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg); >extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, > int execute); >extern void _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, > void (*routine) (void *), void *arg); >extern void _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, > int execute); ># 274 "../sysdeps/nptl/bits/libc-lockP.h" >extern __inline __attribute__ ((__gnu_inline__)) void >__libc_cleanup_routine (struct __pthread_cleanup_frame *f) >{ > if (f->__do_it) > f->__cancel_routine (f->__cancel_arg); >} ># 311 "../sysdeps/nptl/bits/libc-lockP.h" >extern int __register_atfork (void (*__prepare) (void), > void (*__parent) (void), > void (*__child) (void), > void *__dso_handle); > > > > >extern int __pthread_mutex_init (pthread_mutex_t *__mutex, > const pthread_mutexattr_t *__mutex_attr); > >extern int __pthread_mutex_destroy (pthread_mutex_t *__mutex); > >extern int __pthread_mutex_trylock (pthread_mutex_t *__mutex); > >extern int __pthread_mutex_lock (pthread_mutex_t *__mutex); > >extern int __pthread_mutex_unlock (pthread_mutex_t *__mutex); > >extern int __pthread_mutexattr_init (pthread_mutexattr_t *__attr); > >extern int __pthread_mutexattr_destroy (pthread_mutexattr_t *__attr); > >extern int __pthread_mutexattr_settype (pthread_mutexattr_t *__attr, > int __kind); > >extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock, > const pthread_rwlockattr_t *__attr); > >extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock); > >extern int __pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock); > >extern int __pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock); > >extern int __pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock); > >extern int __pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock); > >extern int __pthread_rwlock_unlock (pthread_rwlock_t *__rwlock); > >extern int __pthread_key_create (pthread_key_t *__key, > void (*__destr_function) (void *)); > >extern int __pthread_setspecific (pthread_key_t __key, > const void *__pointer); > >extern void *__pthread_getspecific (pthread_key_t __key); > >extern int __pthread_once (pthread_once_t *__once_control, > void (*__init_routine) (void)); > >extern int __pthread_atfork (void (*__prepare) (void), > void (*__parent) (void), > void (*__child) (void)); > > > > > > > > ># 373 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutex_init ># 373 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 374 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutex_destroy ># 374 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 375 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutex_lock ># 375 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 376 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutex_trylock ># 376 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 377 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutex_unlock ># 377 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 378 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutexattr_init ># 378 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 379 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutexattr_destroy ># 379 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 380 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_mutexattr_settype ># 380 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 381 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_init ># 381 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 382 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_destroy ># 382 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 383 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_rdlock ># 383 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 384 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_tryrdlock ># 384 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 385 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_wrlock ># 385 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 386 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_trywrlock ># 386 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 387 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_rwlock_unlock ># 387 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 388 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_key_create ># 388 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 389 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_setspecific ># 389 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 390 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_getspecific ># 390 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 391 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_once ># 391 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 392 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_initialize ># 392 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 393 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak __pthread_atfork ># 393 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 394 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak _pthread_cleanup_push_defer ># 394 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 395 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak _pthread_cleanup_pop_restore ># 395 "../sysdeps/nptl/bits/libc-lockP.h" > > ># 396 "../sysdeps/nptl/bits/libc-lockP.h" >#pragma weak pthread_setcancelstate ># 396 "../sysdeps/nptl/bits/libc-lockP.h" > ># 185 "../sysdeps/nptl/bits/libc-lock.h" 2 ># 46 "../include/link.h" 2 > > > > >struct libname_list; >struct r_found_version; >struct r_search_path_elem; > > >struct link_map; > > > >struct r_scope_elem >{ > > struct link_map **r_list; > > unsigned int r_nlist; >}; > > > >struct r_search_path_struct > { > struct r_search_path_elem **dirs; > int malloced; > }; ># 85 "../include/link.h" >struct link_map > { > > > > Elf32_Addr l_addr; > > char *l_name; > Elf32_Dyn *l_ld; > struct link_map *l_next, *l_prev; > > > > > > > > struct link_map *l_real; > > > Lmid_t l_ns; > > struct libname_list *l_libname; ># 123 "../include/link.h" > Elf32_Dyn *l_info[34 + 0 + 16 > + 3 + 12 + 11]; > const Elf32_Phdr *l_phdr; > Elf32_Addr l_entry; > Elf32_Half l_phnum; > Elf32_Half l_ldnum; > > > > > > struct r_scope_elem l_searchlist; > > > > struct r_scope_elem l_symbolic_searchlist; > > > struct link_map *l_loader; > > > struct r_found_version *l_versions; > unsigned int l_nversions; > > > Elf_Symndx l_nbuckets; > Elf32_Word l_gnu_bitmask_idxbits; > Elf32_Word l_gnu_shift; > const Elf32_Addr *l_gnu_bitmask; > union > { > const Elf32_Word *l_gnu_buckets; > const Elf_Symndx *l_chain; > }; > union > { > const Elf32_Word *l_gnu_chain_zero; > const Elf_Symndx *l_buckets; > }; > > unsigned int l_direct_opencount; > enum > { > lt_executable, > lt_library, > lt_loaded > } l_type:2; > unsigned int l_relocated:1; > unsigned int l_init_called:1; > unsigned int l_global:1; > unsigned int l_reserved:2; > unsigned int l_phdr_allocated:1; > > unsigned int l_soname_added:1; > > unsigned int l_faked:1; > > unsigned int l_need_tls_init:1; > > > unsigned int l_auditing:1; > unsigned int l_audit_any_plt:1; > > unsigned int l_removed:1; > > unsigned int l_contiguous:1; > > > unsigned int l_symbolic_in_local_scope:1; > > > > unsigned int l_free_initfini:1; > > > > > struct r_search_path_struct l_rpath_dirs; > > > struct reloc_result > { > Elf32_Addr addr; > struct link_map *bound; > unsigned int boundndx; > uint32_t enterexit; > unsigned int flags; > } *l_reloc_result; > > > Elf32_Versym *l_versyms; > > > const char *l_origin; > > > > Elf32_Addr l_map_start, l_map_end; > > Elf32_Addr l_text_end; > > > struct r_scope_elem *l_scope_mem[4]; > > size_t l_scope_max; > > > struct r_scope_elem **l_scope; > > > > struct r_scope_elem *l_local_scope[2]; > > > > dev_t l_dev; > ino64_t l_ino; > > > struct r_search_path_struct l_runpath_dirs; > > > struct link_map **l_initfini; > > > struct link_map_reldeps > { > unsigned int act; > struct link_map *list[]; > } *l_reldeps; > unsigned int l_reldepsmax; > > > unsigned int l_used; > > > Elf32_Word l_feature_1; > Elf32_Word l_flags_1; > Elf32_Word l_flags; > > > int l_idx; > > struct link_map_machine l_mach; > > struct > { > const Elf32_Sym *sym; > int type_class; > struct link_map *value; > const Elf32_Sym *ret; > } l_lookup_cache; > > > > > void *l_tls_initimage; > > size_t l_tls_initimage_size; > > size_t l_tls_blocksize; > > size_t l_tls_align; > > size_t l_tls_firstbyte_offset; ># 301 "../include/link.h" > ptrdiff_t l_tls_offset; > > size_t l_tls_modid; > > > size_t l_tls_dtor_count; > > > > Elf32_Addr l_relro_addr; > size_t l_relro_size; > > unsigned long long int l_serial; > > > > struct auditstate > { > uintptr_t cookie; > unsigned int bindflags; > } l_audit[0]; > }; ># 333 "../include/link.h" >extern int __dl_iterate_phdr (int (*callback) (struct dl_phdr_info *info, > size_t size, void *data), > void *data); ># 5 "../include/dlfcn.h" 2 ># 20 "../include/dlfcn.h" >extern int __dlfcn_argc __attribute__ ((visibility ("hidden"))); >extern char **__dlfcn_argv __attribute__ ((visibility ("hidden"))); ># 36 "../include/dlfcn.h" >extern void *__libc_dlopen_mode (const char *__name, int __mode); >extern void *__libc_dlsym (void *__map, const char *__name); >extern int __libc_dlclose (void *__map); > > > > > > >extern int _dl_addr (const void *address, Dl_info *info, > struct link_map **mapp, const Elf32_Sym **symbolp) > __attribute__ ((regparm (3), stdcall)); > > > >struct link_map; > > >extern void _dl_close (void *map) __attribute__ ((visibility ("hidden"))); > > >extern void _dl_close_worker (struct link_map *map) __attribute__ ((visibility ("hidden"))); > > > > >extern void *_dl_sym (void *handle, const char *name, void *who) > __attribute__ ((regparm (3), stdcall)); > > > > > >extern void *_dl_vsym (void *handle, const char *name, const char *version, > void *who) > __attribute__ ((regparm (3), stdcall)); ># 81 "../include/dlfcn.h" >extern int _dl_catch_error (const char **objname, const char **errstring, > _Bool *mallocedp, void (*operate) (void *), > void *args) > __attribute__ ((regparm (3), stdcall)); > > > > > >extern int _dlerror_run (void (*operate) (void *), void *args) > __attribute__ ((regparm (3), stdcall)); ># 101 "../include/dlfcn.h" >struct dlfcn_hook >{ > void *(*dlopen) (const char *file, int mode, void *dl_caller); > int (*dlclose) (void *handle); > void *(*dlsym) (void *handle, const char *name, void *dl_caller); > void *(*dlvsym) (void *handle, const char *name, const char *version, > void *dl_caller); > char *(*dlerror) (void); > int (*dladdr) (const void *address, Dl_info *info); > int (*dladdr1) (const void *address, Dl_info *info, > void **extra_info, int flags); > int (*dlinfo) (void *handle, int request, void *arg, void *dl_caller); > void *(*dlmopen) (Lmid_t nsid, const char *file, int mode, void *dl_caller); > void *pad[4]; >}; > >extern struct dlfcn_hook *_dlfcn_hook; > > >extern void *__dlopen (const char *file, int mode ) > __attribute__ ((visibility ("hidden"))); >extern void *__dlmopen (Lmid_t nsid, const char *file, int mode ) > __attribute__ ((visibility ("hidden"))); >extern int __dlclose (void *handle) > __attribute__ ((visibility ("hidden"))); >extern void *__dlsym (void *handle, const char *name ) > __attribute__ ((visibility ("hidden"))); >extern void *__dlvsym (void *handle, const char *name, const char *version > ) > __attribute__ ((visibility ("hidden"))); >extern char *__dlerror (void) > __attribute__ ((visibility ("hidden"))); >extern int __dladdr (const void *address, Dl_info *info) > __attribute__ ((visibility ("hidden"))); >extern int __dladdr1 (const void *address, Dl_info *info, > void **extra_info, int flags) > __attribute__ ((visibility ("hidden"))); >extern int __dlinfo (void *handle, int request, void *arg ) > __attribute__ ((visibility ("hidden"))); ># 33 "../sysdeps/generic/ldsodefs.h" 2 ># 1 "../include/fpu_control.h" 1 ># 1 "../sysdeps/x86/fpu_control.h" 1 ># 91 "../sysdeps/x86/fpu_control.h" >typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__HI__))); ># 107 "../sysdeps/x86/fpu_control.h" >extern fpu_control_t __fpu_control; ># 2 "../include/fpu_control.h" 2 > > >extern void __setfpucw (fpu_control_t); ># 34 "../sysdeps/generic/ldsodefs.h" 2 ># 1 "../include/sys/mman.h" 1 > ># 1 "../misc/sys/mman.h" 1 ># 25 "../misc/sys/mman.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 26 "../misc/sys/mman.h" 2 ># 41 "../misc/sys/mman.h" ># 1 "../sysdeps/unix/sysv/linux/x86/bits/mman.h" 1 ># 45 "../sysdeps/unix/sysv/linux/x86/bits/mman.h" ># 1 "../bits/mman-linux.h" 1 ># 45 "../sysdeps/unix/sysv/linux/x86/bits/mman.h" 2 ># 42 "../misc/sys/mman.h" 2 > > > > > ># 57 "../misc/sys/mman.h" >extern void *mmap (void *__addr, size_t __len, int __prot, > int __flags, int __fd, __off_t __offset) __attribute__ ((__nothrow__ )); ># 70 "../misc/sys/mman.h" >extern void *mmap64 (void *__addr, size_t __len, int __prot, > int __flags, int __fd, __off64_t __offset) __attribute__ ((__nothrow__ )); > > > > >extern int munmap (void *__addr, size_t __len) __attribute__ ((__nothrow__ )); > > > > >extern int mprotect (void *__addr, size_t __len, int __prot) __attribute__ ((__nothrow__ )); > > > > > > > >extern int msync (void *__addr, size_t __len, int __flags); > > > > >extern int madvise (void *__addr, size_t __len, int __advice) __attribute__ ((__nothrow__ )); > > > >extern int posix_madvise (void *__addr, size_t __len, int __advice) __attribute__ ((__nothrow__ )); > > > > >extern int mlock (const void *__addr, size_t __len) __attribute__ ((__nothrow__ )); > > >extern int munlock (const void *__addr, size_t __len) __attribute__ ((__nothrow__ )); > > > > >extern int mlockall (int __flags) __attribute__ ((__nothrow__ )); > > > >extern int munlockall (void) __attribute__ ((__nothrow__ )); > > > > > > > >extern int mincore (void *__start, size_t __len, unsigned char *__vec) > __attribute__ ((__nothrow__ )); ># 133 "../misc/sys/mman.h" >extern void *mremap (void *__addr, size_t __old_len, size_t __new_len, > int __flags, ...) __attribute__ ((__nothrow__ )); > > > >extern int remap_file_pages (void *__start, size_t __size, int __prot, > size_t __pgoff, int __flags) __attribute__ ((__nothrow__ )); > > > > >extern int shm_open (const char *__name, int __oflag, mode_t __mode); > > >extern int shm_unlink (const char *__name); > > ># 3 "../include/sys/mman.h" 2 > > > >extern void *__mmap (void *__addr, size_t __len, int __prot, > int __flags, int __fd, __off_t __offset); >extern void *__mmap64 (void *__addr, size_t __len, int __prot, > int __flags, int __fd, __off64_t __offset); >extern int __munmap (void *__addr, size_t __len); >extern int __mprotect (void *__addr, size_t __len, int __prot); > >extern int __madvise (void *__addr, size_t __len, int __advice); > > > >extern void *__mremap (void *__addr, size_t __old_len, > size_t __new_len, int __flags, ...); ># 35 "../sysdeps/generic/ldsodefs.h" 2 > ># 1 "../sysdeps/i386/dl-lookupcfg.h" 1 ># 21 "../sysdeps/i386/dl-lookupcfg.h" ># 1 "../sysdeps/generic/dl-lookupcfg.h" 1 ># 22 "../sysdeps/i386/dl-lookupcfg.h" 2 > >struct link_map; > >extern void __attribute__ ((regparm (3), stdcall)) _dl_unmap (struct link_map *map); ># 37 "../sysdeps/generic/ldsodefs.h" 2 ># 1 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 1 ># 21 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" ># 1 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 1 ># 19 "../sysdeps/unix/sysv/linux/dl-sysdep.h" ># 1 "../sysdeps/generic/dl-sysdep.h" 1 ># 20 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/dl-sysdep.h" >extern int _dl_discover_osversion (void) __attribute__ ((visibility ("hidden"))); ># 22 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" >extern void _dl_sysinfo_int80 (void) __attribute__ ((visibility ("hidden"))); ># 38 "../sysdeps/generic/ldsodefs.h" 2 > > > > > ># 67 "../sysdeps/generic/ldsodefs.h" >typedef struct link_map *lookup_t; ># 137 "../sysdeps/generic/ldsodefs.h" >struct r_found_version > { > const char *name; > Elf32_Word hash; > > int hidden; > const char *filename; > }; > > > >enum r_dir_status { unknown, nonexisting, existing }; > >struct r_search_path_elem > { > > struct r_search_path_elem *next; > > > const char *what; > const char *where; > > > > const char *dirname; > size_t dirnamelen; > > enum r_dir_status status[0]; > }; > >struct r_strlenpair > { > const char *str; > size_t len; > }; > > > >struct libname_list > { > const char *name; > struct libname_list *next; > int dont_free; > > }; > > > > >enum allowmask > { > allow_libc = 1, > allow_libdl = 2, > allow_libpthread = 4, > allow_ldso = 8 > }; > > >struct audit_ifaces >{ > void (*activity) (uintptr_t *, unsigned int); > char *(*objsearch) (const char *, uintptr_t *, unsigned int); > unsigned int (*objopen) (struct link_map *, Lmid_t, uintptr_t *); > void (*preinit) (uintptr_t *); > union > { > uintptr_t (*symbind32) (Elf32_Sym *, unsigned int, uintptr_t *, > uintptr_t *, unsigned int *, const char *); > uintptr_t (*symbind64) (Elf64_Sym *, unsigned int, uintptr_t *, > uintptr_t *, unsigned int *, const char *); > }; > union > { > > Elf32_Addr (*i86_gnu_pltenter) (Elf32_Sym *, unsigned int, uintptr_t *, uintptr_t *, struct La_i86_regs *, unsigned int *, const char *name, long int *framesizep); > > }; > union > { > > unsigned int (*i86_gnu_pltexit) (Elf32_Sym *, unsigned int, uintptr_t *, uintptr_t *, const struct La_i86_regs *, struct La_i86_retval *, const char *); > > }; > unsigned int (*objclose) (uintptr_t *); > > struct audit_ifaces *next; >}; > > > >extern int _dl_name_match_p (const char *__name, const struct link_map *__map) > __attribute__ ((regparm (3), stdcall)); > > >extern unsigned long int _dl_higher_prime_number (unsigned long int n) > __attribute__ ((regparm (3), stdcall)); > > > > >typedef void (*receiver_fct) (int, const char *, const char *); ># 258 "../sysdeps/generic/ldsodefs.h" >struct rtld_global >{ ># 270 "../sysdeps/generic/ldsodefs.h" > struct link_namespaces > { > > struct link_map *_ns_loaded; > > unsigned int _ns_nloaded; > > struct r_scope_elem *_ns_main_searchlist; > > > > size_t _ns_global_scope_alloc; > > struct unique_sym_table > { > __rtld_lock_recursive_t lock; > struct unique_sym > { > uint32_t hashval; > const char *name; > const Elf32_Sym *sym; > const struct link_map *map; > } *entries; > size_t size; > size_t n_elements; > void (*free) (void *); > } _ns_unique_sym_table; > > struct r_debug _ns_debug; > } _dl_ns[16]; > > size_t _dl_nns; ># 310 "../sysdeps/generic/ldsodefs.h" > __rtld_lock_recursive_t _dl_load_lock; > > > > __rtld_lock_recursive_t _dl_load_write_lock; > > > unsigned long long _dl_load_adds; > > > struct link_map *_dl_initfirst; > > > > > > > > struct link_map *_dl_profile_map; > > > unsigned long int _dl_num_relocations; > unsigned long int _dl_num_cache_relocations; > > > struct r_search_path_elem *_dl_all_dirs; > > > void **(*_dl_error_catch_tsd) (void) __attribute__ ((const)); > > > > > struct link_map _dl_rtld_map; > > struct auditstate audit_data[16]; > > > > > void (*_dl_rtld_lock_recursive) (void *); > void (*_dl_rtld_unlock_recursive) (void *); > > > > > > int (*_dl_make_stack_executable_hook) (void **) __attribute__ ((regparm (3), stdcall)); > > > Elf32_Word _dl_stack_flags; > > > _Bool _dl_tls_dtv_gaps; > > size_t _dl_tls_max_dtv_idx; > > struct dtv_slotinfo_list > { > size_t len; > struct dtv_slotinfo_list *next; > struct dtv_slotinfo > { > size_t gen; > struct link_map *map; > } slotinfo[0]; > } *_dl_tls_dtv_slotinfo_list; > > size_t _dl_tls_static_nelem; > > size_t _dl_tls_static_size; > > size_t _dl_tls_static_used; > > size_t _dl_tls_static_align; ># 395 "../sysdeps/generic/ldsodefs.h" > void *_dl_initial_dtv; > > size_t _dl_tls_generation; > > void (*_dl_init_static_tls) (struct link_map *); > > void (*_dl_wait_lookup_done) (void); > > > struct dl_scope_free_list > { > size_t count; > void *list[50]; > } *_dl_scope_free_list; > >}; ># 424 "../sysdeps/generic/ldsodefs.h" >extern struct rtld_global _rtld_global ; ># 436 "../sysdeps/generic/ldsodefs.h" >struct rtld_global_ro >{ > > > > int _dl_debug_mask; ># 457 "../sysdeps/generic/ldsodefs.h" > unsigned int _dl_osversion; > > const char *_dl_platform; > size_t _dl_platformlen; > > > size_t _dl_pagesize; > > > int _dl_inhibit_cache; > > > struct r_scope_elem _dl_initial_searchlist; > > > int _dl_clktck; > > > int _dl_verbose; > > > int _dl_debug_fd; > > > int _dl_lazy; > > > int _dl_bind_not; > > > > int _dl_dynamic_weak; > > > fpu_control_t _dl_fpu_control; > > > int _dl_correct_cache_id; > > > uint64_t _dl_hwcap; > > > uint64_t _dl_hwcap_mask; > > > Elf32_auxv_t *_dl_auxv; > > > > > > ># 1 "../sysdeps/i386/dl-procinfo.c" 1 ># 49 "../sysdeps/i386/dl-procinfo.c" > const char _dl_x86_cap_flags[32][8] ># 60 "../sysdeps/i386/dl-procinfo.c" >; > > > > > > > > const char _dl_x86_platforms[4][5] > > > > > > > >; ># 511 "../sysdeps/generic/ldsodefs.h" 2 > > > const char *_dl_inhibit_rpath; > > > const char *_dl_origin_path; > > > > > Elf32_Addr _dl_use_load_bias; > > > const char *_dl_profile; > > const char *_dl_profile_output; > > const char *_dl_trace_prelink; > > struct link_map *_dl_trace_prelink_map; > > > struct r_search_path_elem *_dl_init_all_dirs; > > > > uintptr_t _dl_sysinfo; > > > > > > const Elf32_Ehdr *_dl_sysinfo_dso; > > > > struct link_map *_dl_sysinfo_map; > > > > > uint64_t _dl_hwcap2; > > > > > > > void (*_dl_debug_printf) (const char *, ...) > __attribute__ ((__format__ (__printf__, 1, 2))); > int (__attribute__ ((regparm (3), stdcall)) *_dl_catch_error) (const char **, const char **, > _Bool *, void (*) (void *), void *); > void (__attribute__ ((regparm (3), stdcall)) *_dl_signal_error) (int, const char *, const char *, > const char *); > void (*_dl_mcount) (Elf32_Addr frompc, Elf32_Addr selfpc); > lookup_t (__attribute__ ((regparm (3), stdcall)) *_dl_lookup_symbol_x) (const char *, > struct link_map *, > const Elf32_Sym **, > struct r_scope_elem *[], > const struct r_found_version *, > int, int, > struct link_map *); > int (*_dl_check_caller) (const void *, enum allowmask); > void *(*_dl_open) (const char *file, int mode, const void *caller_dlopen, > Lmid_t nsid, int argc, char *argv[], char *env[]); > void (*_dl_close) (void *map); > void *(*_dl_tls_get_addr_soft) (struct link_map *); > > int (*_dl_discover_osversion) (void); > > > > struct audit_ifaces *_dl_audit; > unsigned int _dl_naudit; > > > int _dl_pointer_guard; >}; ># 600 "../sysdeps/generic/ldsodefs.h" >extern const struct rtld_global_ro _rtld_global_ro > __attribute__ ((section (".data.rel.ro"))) ; ># 622 "../sysdeps/generic/ldsodefs.h" >extern int _dl_make_stack_executable (void **stack_endp) __attribute__ ((regparm (3), stdcall)); > > > > > > > >extern void *__libc_stack_end > > __attribute__ ((section (".data.rel.ro"))) > > ; > > > >extern int _dl_argc __attribute__ ((visibility ("hidden"))) __attribute__ ((section (".data.rel.ro"))); >extern char **_dl_argv > > __attribute__ ((section (".data.rel.ro"))) > > ; ># 666 "../sysdeps/generic/ldsodefs.h" >extern int _dl_starting_up; > ># 667 "../sysdeps/generic/ldsodefs.h" >#pragma weak _dl_starting_up ># 667 "../sysdeps/generic/ldsodefs.h" > > > > > > >extern void *_dl_random __attribute__ ((visibility ("hidden"))) __attribute__ ((section (".data.rel.ro"))); > > >extern int _dl_sysdep_open_zero_fill (void); > > > > > >extern void _dl_debug_printf (const char *fmt, ...) > __attribute__ ((__format__ (__printf__, 1, 2))) __attribute__ ((visibility ("hidden"))); > > > > >extern void _dl_debug_printf_c (const char *fmt, ...) > __attribute__ ((__format__ (__printf__, 1, 2))); > > > > >extern void _dl_dprintf (int fd, const char *fmt, ...) > __attribute__ ((__format__ (__printf__, 2, 3))) > __attribute__ ((visibility ("hidden"))); ># 724 "../sysdeps/generic/ldsodefs.h" >extern void _dl_signal_error (int errcode, const char *object, > const char *occurred, const char *errstring) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((__noreturn__)) __attribute__ ((visibility ("hidden"))); > > > >extern void _dl_signal_cerror (int errcode, const char *object, > const char *occation, const char *errstring) > __attribute__ ((regparm (3), stdcall)); > > > > > >extern void _dl_receive_error (receiver_fct fct, void (*operate) (void *), > void *args) > __attribute__ ((regparm (3), stdcall)); > > > > > >extern struct link_map *_dl_map_object (struct link_map *loader, > const char *name, > int type, int trace_mode, int mode, > Lmid_t nsid) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > > > >extern void _dl_map_object_deps (struct link_map *map, > struct link_map **preloads, > unsigned int npreloads, int trace_mode, > int open_mode) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern void _dl_setup_hash (struct link_map *map) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > > > > > >extern void _dl_rtld_di_serinfo (struct link_map *loader, > Dl_serinfo *si, _Bool counting) > __attribute__ ((regparm (3), stdcall)); ># 786 "../sysdeps/generic/ldsodefs.h" >enum > { > > DL_LOOKUP_ADD_DEPENDENCY = 1, > > > DL_LOOKUP_RETURN_NEWEST = 2, > > DL_LOOKUP_GSCOPE_LOCK = 4, > }; > > >extern lookup_t _dl_lookup_symbol_x (const char *undef, > struct link_map *undef_map, > const Elf32_Sym **sym, > struct r_scope_elem *symbol_scope[], > const struct r_found_version *version, > int type_class, int flags, > struct link_map *skip_map) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern Elf32_Addr _dl_symbol_value (struct link_map *map, const char *name) > __attribute__ ((regparm (3), stdcall)); > > >extern void _dl_add_to_namespace_list (struct link_map *new, Lmid_t nsid) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern struct link_map *_dl_new_object (char *realname, const char *libname, > int type, struct link_map *loader, > int mode, Lmid_t nsid) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > > >extern void _dl_relocate_object (struct link_map *map, > struct r_scope_elem *scope[], > int reloc_mode, int consider_profiling) > __attribute__ ((visibility ("hidden"))); > > >extern void _dl_protect_relro (struct link_map *map) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > > >extern void _dl_reloc_bad_type (struct link_map *map, > unsigned int type, int plt) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((__noreturn__)); > > >extern void _dl_resolve_conflicts (struct link_map *l, > Elf32_Rela *conflict, > Elf32_Rela *conflictend); > > > >extern int _dl_check_all_versions (struct link_map *map, int verbose, > int trace_mode) > __attribute__ ((regparm (3), stdcall)); > > > >extern int _dl_check_map_versions (struct link_map *map, int verbose, > int trace_mode) > __attribute__ ((regparm (3), stdcall)); > > > >extern void _dl_init (struct link_map *main_map, int argc, char **argv, > char **env) __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern void _dl_fini (void) __attribute__ ((regparm (3), stdcall)); > > >extern void _dl_sort_fini (struct link_map **maps, size_t nmaps, char *used, > Lmid_t ns) > __attribute__ ((regparm (3), stdcall)); > > > > > >extern void _dl_debug_state (void); > > > > > >extern struct r_debug *_dl_debug_initialize (Elf32_Addr ldbase, Lmid_t ns) > __attribute__ ((regparm (3), stdcall)); > > >extern void _dl_init_paths (const char *library_path) __attribute__ ((regparm (3), stdcall)); > > > >extern void _dl_start_profile (void) __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern void _dl_mcount (Elf32_Addr frompc, Elf32_Addr selfpc); >extern void _dl_mcount_internal (Elf32_Addr frompc, Elf32_Addr selfpc) > __attribute__ ((visibility ("hidden"))); > > > > >extern void _dl_mcount_wrapper (void *selfpc); > > >extern void _dl_show_auxv (void) __attribute__ ((regparm (3), stdcall)); > > > >extern char *_dl_next_ld_env_entry (char ***position) __attribute__ ((regparm (3), stdcall)); > > >extern const struct r_strlenpair *_dl_important_hwcaps (const char *platform, > size_t paltform_len, > size_t *sz, > size_t *max_capstrlen) > __attribute__ ((regparm (3), stdcall)); > > > >extern const char *_dl_load_cache_lookup (const char *name) > __attribute__ ((regparm (3), stdcall)); > > > > > >extern void _dl_unload_cache (void) __attribute__ ((visibility ("hidden"))); > > > > >extern void *_dl_sysdep_read_whole_file (const char *file, size_t *sizep, > int prot) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > > > >extern Elf32_Addr _dl_sysdep_start (void **start_argptr, > void (*dl_main) (const Elf32_Phdr *phdr, > Elf32_Word phnum, > Elf32_Addr *user_entry, > Elf32_auxv_t *auxv)) > __attribute__ ((visibility ("hidden"))); > >extern void _dl_sysdep_start_cleanup (void) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern size_t _dl_next_tls_modid (void) __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern size_t _dl_count_modids (void) __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern void _dl_determine_tlsoffset (void) __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > > >extern int _dl_tls_setup (void) __attribute__ ((regparm (3), stdcall)); > > > >extern void *_dl_allocate_tls (void *mem) __attribute__ ((regparm (3), stdcall)); > > > >extern void _dl_get_tls_static_info (size_t *sizep, size_t *alignp) > __attribute__ ((regparm (3), stdcall)); > >extern void _dl_allocate_static_tls (struct link_map *map) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > > >extern void *_dl_allocate_tls_storage (void) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); >extern void *_dl_allocate_tls_init (void *) __attribute__ ((regparm (3), stdcall)); > > > >extern void _dl_deallocate_tls (void *tcb, _Bool dealloc_tcb) __attribute__ ((regparm (3), stdcall)); > > >extern void _dl_nothread_init_static_tls (struct link_map *) __attribute__ ((visibility ("hidden"))); > > >extern const char *_dl_get_origin (void) __attribute__ ((visibility ("hidden"))); > > >extern size_t _dl_dst_count (const char *name, int is_path) __attribute__ ((visibility ("hidden"))); > > >extern char *_dl_dst_substitute (struct link_map *l, const char *name, > char *result, int is_path) __attribute__ ((visibility ("hidden"))); > > >extern int _dl_check_caller (const void *caller, enum allowmask mask) > __attribute__ ((visibility ("hidden"))); > > > > >extern void *_dl_open (const char *name, int mode, const void *caller, > Lmid_t nsid, int argc, char *argv[], char *env[]) > __attribute__ ((visibility ("hidden"))); > > > > >extern int _dl_scope_free (void *) __attribute__ ((visibility ("hidden"))); > > >extern void _dl_add_to_slotinfo (struct link_map *l) __attribute__ ((visibility ("hidden"))); > > > >extern struct link_map *_dl_update_slotinfo (unsigned long int req_modid); > > > >extern void *_dl_tls_get_addr_soft (struct link_map *l) __attribute__ ((visibility ("hidden"))); > >extern int _dl_addr_inside_object (struct link_map *l, const Elf32_Addr addr) > __attribute__ ((regparm (3), stdcall)) __attribute__ ((visibility ("hidden"))); > > >extern void _dl_show_scope (struct link_map *new, int from); > >extern struct link_map *_dl_find_dso_for_object (const Elf32_Addr addr) > __attribute__ ((regparm (3), stdcall)); > > > >extern void _dl_non_dynamic_init (void) __attribute__ ((regparm (3), stdcall)); > > >extern void _dl_aux_init (Elf32_auxv_t *av) __attribute__ ((regparm (3), stdcall)); > > > ># 39 "../sysdeps/i386/ldsodefs.h" 2 ># 47 "../sysdeps/gnu/ldsodefs.h" 2 ># 23 "../sysdeps/unix/sysv/linux/ldsodefs.h" 2 ># 28 "pthread_create.c" 2 > > ># 1 "../include/resolv.h" 1 ># 12 "../include/resolv.h" ># 1 "../resolv/resolv.h" 1 ># 56 "../resolv/resolv.h" ># 1 "../include/sys/types.h" 1 ># 57 "../resolv/resolv.h" 2 > > > > > ># 1 "../include/sys/param.h" 1 ># 63 "../resolv/resolv.h" 2 > ># 1 "../include/stdio.h" 1 > > > > ># 1 "../libio/stdio.h" 1 ># 29 "../libio/stdio.h" > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 34 "../libio/stdio.h" 2 ># 44 "../libio/stdio.h" >struct _IO_FILE; > > > >typedef struct _IO_FILE FILE; > > > > > ># 64 "../libio/stdio.h" >typedef struct _IO_FILE __FILE; ># 74 "../libio/stdio.h" ># 1 "../include/libio.h" 1 ># 1 "../libio/libio.h" 1 ># 31 "../libio/libio.h" ># 1 "../sysdeps/unix/sysv/linux/_G_config.h" 1 ># 15 "../sysdeps/unix/sysv/linux/_G_config.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 16 "../sysdeps/unix/sysv/linux/_G_config.h" 2 > > > > ># 1 "../include/wchar.h" 1 > ># 1 "../wcsmbs/wchar.h" 1 ># 51 "../wcsmbs/wchar.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 353 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 3 4 >typedef unsigned int wint_t; ># 52 "../wcsmbs/wchar.h" 2 ># 82 "../wcsmbs/wchar.h" >typedef struct >{ > int __count; > union > { > > unsigned int __wch; > > > > char __wchb[4]; > } __value; >} __mbstate_t; ># 3 "../include/wchar.h" 2 ># 21 "../sysdeps/unix/sysv/linux/_G_config.h" 2 >typedef struct >{ > __off_t __pos; > __mbstate_t __state; >} _G_fpos_t; >typedef struct >{ > __off64_t __pos; > __mbstate_t __state; >} _G_fpos64_t; > ># 1 "../include/gconv.h" 1 ># 1 "../iconv/gconv.h" 1 ># 28 "../iconv/gconv.h" ># 1 "../include/wchar.h" 1 > ># 1 "../wcsmbs/wchar.h" 1 ># 51 "../wcsmbs/wchar.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 52 "../wcsmbs/wchar.h" 2 ># 3 "../include/wchar.h" 2 ># 29 "../iconv/gconv.h" 2 > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 32 "../iconv/gconv.h" 2 > > > > > >enum >{ > __GCONV_OK = 0, > __GCONV_NOCONV, > __GCONV_NODB, > __GCONV_NOMEM, > > __GCONV_EMPTY_INPUT, > __GCONV_FULL_OUTPUT, > __GCONV_ILLEGAL_INPUT, > __GCONV_INCOMPLETE_INPUT, > > __GCONV_ILLEGAL_DESCRIPTOR, > __GCONV_INTERNAL_ERROR >}; > > > >enum >{ > __GCONV_IS_LAST = 0x0001, > __GCONV_IGNORE_ERRORS = 0x0002, > __GCONV_SWAP = 0x0004 >}; > > > >struct __gconv_step; >struct __gconv_step_data; >struct __gconv_loaded_object; >struct __gconv_trans_data; > > > >typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *, > const unsigned char **, const unsigned char *, > unsigned char **, size_t *, int, int); > > >typedef wint_t (*__gconv_btowc_fct) (struct __gconv_step *, unsigned char); > > >typedef int (*__gconv_init_fct) (struct __gconv_step *); >typedef void (*__gconv_end_fct) (struct __gconv_step *); > > > >typedef int (*__gconv_trans_fct) (struct __gconv_step *, > struct __gconv_step_data *, void *, > const unsigned char *, > const unsigned char **, > const unsigned char *, unsigned char **, > size_t *); > > >typedef int (*__gconv_trans_context_fct) (void *, const unsigned char *, > const unsigned char *, > unsigned char *, unsigned char *); > > >typedef int (*__gconv_trans_query_fct) (const char *, const char ***, > size_t *); > > >typedef int (*__gconv_trans_init_fct) (void **, const char *); >typedef void (*__gconv_trans_end_fct) (void *); > >struct __gconv_trans_data >{ > > __gconv_trans_fct __trans_fct; > __gconv_trans_context_fct __trans_context_fct; > __gconv_trans_end_fct __trans_end_fct; > void *__data; > struct __gconv_trans_data *__next; >}; > > > >struct __gconv_step >{ > struct __gconv_loaded_object *__shlib_handle; > const char *__modname; > > int __counter; > > char *__from_name; > char *__to_name; > > __gconv_fct __fct; > __gconv_btowc_fct __btowc_fct; > __gconv_init_fct __init_fct; > __gconv_end_fct __end_fct; > > > > int __min_needed_from; > int __max_needed_from; > int __min_needed_to; > int __max_needed_to; > > > int __stateful; > > void *__data; >}; > > > >struct __gconv_step_data >{ > unsigned char *__outbuf; > unsigned char *__outbufend; > > > > int __flags; > > > > int __invocation_counter; > > > > int __internal_use; > > __mbstate_t *__statep; > __mbstate_t __state; > > > > struct __gconv_trans_data *__trans; >}; > > > >typedef struct __gconv_info >{ > size_t __nsteps; > struct __gconv_step *__steps; > __extension__ struct __gconv_step_data __data []; >} *__gconv_t; ># 1 "../include/gconv.h" 2 ># 33 "../sysdeps/unix/sysv/linux/_G_config.h" 2 >typedef union >{ > struct __gconv_info __cd; > struct > { > struct __gconv_info __cd; > struct __gconv_step_data __data; > } __combined; >} _G_iconv_t; ># 32 "../libio/libio.h" 2 ># 49 "../libio/libio.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stdarg.h" 1 3 4 ># 40 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stdarg.h" 3 4 >typedef __builtin_va_list __gnuc_va_list; ># 50 "../libio/libio.h" 2 ># 144 "../libio/libio.h" >struct _IO_jump_t; struct _IO_FILE; ># 154 "../libio/libio.h" >typedef void _IO_lock_t; > > > > > >struct _IO_marker { > struct _IO_marker *_next; > struct _IO_FILE *_sbuf; > > > > int _pos; ># 177 "../libio/libio.h" >}; > > >enum __codecvt_result >{ > __codecvt_ok, > __codecvt_partial, > __codecvt_error, > __codecvt_noconv >}; > > > > >struct _IO_codecvt >{ > void (*__codecvt_destr) (struct _IO_codecvt *); > enum __codecvt_result (*__codecvt_do_out) (struct _IO_codecvt *, > __mbstate_t *, > const wchar_t *, > const wchar_t *, > const wchar_t **, char *, > char *, char **); > enum __codecvt_result (*__codecvt_do_unshift) (struct _IO_codecvt *, > __mbstate_t *, char *, > char *, char **); > enum __codecvt_result (*__codecvt_do_in) (struct _IO_codecvt *, > __mbstate_t *, > const char *, const char *, > const char **, wchar_t *, > wchar_t *, wchar_t **); > int (*__codecvt_do_encoding) (struct _IO_codecvt *); > int (*__codecvt_do_always_noconv) (struct _IO_codecvt *); > int (*__codecvt_do_length) (struct _IO_codecvt *, __mbstate_t *, > const char *, const char *, size_t); > int (*__codecvt_do_max_length) (struct _IO_codecvt *); > > _G_iconv_t __cd_in; > _G_iconv_t __cd_out; >}; > > >struct _IO_wide_data >{ > wchar_t *_IO_read_ptr; > wchar_t *_IO_read_end; > wchar_t *_IO_read_base; > wchar_t *_IO_write_base; > wchar_t *_IO_write_ptr; > wchar_t *_IO_write_end; > wchar_t *_IO_buf_base; > wchar_t *_IO_buf_end; > > wchar_t *_IO_save_base; > wchar_t *_IO_backup_base; > > wchar_t *_IO_save_end; > > __mbstate_t _IO_state; > __mbstate_t _IO_last_state; > struct _IO_codecvt _codecvt; > > wchar_t _shortbuf[1]; > > const struct _IO_jump_t *_wide_vtable; >}; > > >struct _IO_FILE { > int _flags; > > > > > char* _IO_read_ptr; > char* _IO_read_end; > char* _IO_read_base; > char* _IO_write_base; > char* _IO_write_ptr; > char* _IO_write_end; > char* _IO_buf_base; > char* _IO_buf_end; > > char *_IO_save_base; > char *_IO_backup_base; > char *_IO_save_end; > > struct _IO_marker *_markers; > > struct _IO_FILE *_chain; > > int _fileno; > > > > int _flags2; > > __off_t _old_offset; > > > > unsigned short _cur_column; > signed char _vtable_offset; > char _shortbuf[1]; > > > > _IO_lock_t *_lock; ># 293 "../libio/libio.h" > __off64_t _offset; > > > struct _IO_codecvt *_codecvt; > struct _IO_wide_data *_wide_data; > struct _IO_FILE *_freeres_list; > void *_freeres_buf; > size_t _freeres_size; > > > > > > > > int _mode; > > char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)]; > >}; > > >typedef struct _IO_FILE _IO_FILE; > > >struct _IO_FILE_plus; > >extern struct _IO_FILE_plus _IO_2_1_stdin_; >extern struct _IO_FILE_plus _IO_2_1_stdout_; >extern struct _IO_FILE_plus _IO_2_1_stderr_; > > > > > >extern _IO_FILE *_IO_stdin __attribute__ ((visibility ("hidden"))); >extern _IO_FILE *_IO_stdout __attribute__ ((visibility ("hidden"))); >extern _IO_FILE *_IO_stderr __attribute__ ((visibility ("hidden"))); > > > > > > > >typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes); > > > > > > > >typedef __ssize_t __io_write_fn (void *__cookie, const char *__buf, > size_t __n); > > > > > > > >typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w); > > >typedef int __io_close_fn (void *__cookie); > > > > >typedef __io_read_fn cookie_read_function_t; >typedef __io_write_fn cookie_write_function_t; >typedef __io_seek_fn cookie_seek_function_t; >typedef __io_close_fn cookie_close_function_t; > > >typedef struct >{ > __io_read_fn *read; > __io_write_fn *write; > __io_seek_fn *seek; > __io_close_fn *close; >} _IO_cookie_io_functions_t; >typedef _IO_cookie_io_functions_t cookie_io_functions_t; > >struct _IO_cookie_file; > > >extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write, > void *__cookie, _IO_cookie_io_functions_t __fns); > > > > > > > >extern int __underflow (_IO_FILE *); >extern int __uflow (_IO_FILE *); >extern int __overflow (_IO_FILE *, int); > >extern wint_t __wunderflow (_IO_FILE *); >extern wint_t __wuflow (_IO_FILE *); >extern wint_t __woverflow (_IO_FILE *, wint_t); ># 434 "../libio/libio.h" >extern int _IO_getc (_IO_FILE *__fp); >extern int _IO_putc (int __c, _IO_FILE *__fp); >extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__ )); >extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__ )); > >extern int _IO_peekc_locked (_IO_FILE *__fp); > > > > > >extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__ )); >extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__ )); >extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__ )); ># 464 "../libio/libio.h" >extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict, > __gnuc_va_list, int *__restrict); >extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict, > __gnuc_va_list); >extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t); >extern size_t _IO_sgetn (_IO_FILE *, void *, size_t); > >extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int); >extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int); > >extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__ )); > > >extern wint_t _IO_getwc (_IO_FILE *__fp); >extern wint_t _IO_putwc (wchar_t __wc, _IO_FILE *__fp); >extern int _IO_fwide (_IO_FILE *__fp, int __mode) __attribute__ ((__nothrow__ )); > > > > ># 1 "../include/shlib-compat.h" 1 ># 24 "../include/shlib-compat.h" ># 1 "/suse/schwab/src/libc/i586/abi-versions.h" 1 ># 25 "../include/shlib-compat.h" 2 ># 485 "../libio/libio.h" 2 ># 513 "../libio/libio.h" >extern int _IO_vfwscanf (_IO_FILE * __restrict, const wchar_t * __restrict, > __gnuc_va_list, int *__restrict); >extern int _IO_vfwprintf (_IO_FILE *__restrict, const wchar_t *__restrict, > __gnuc_va_list); >extern __ssize_t _IO_wpadn (_IO_FILE *, wint_t, __ssize_t); >extern void _IO_free_wbackup_area (_IO_FILE *) __attribute__ ((__nothrow__ )); ># 2 "../include/libio.h" 2 > > > > > > > > > > > > > > > > > > ># 75 "../libio/stdio.h" 2 > > > > >typedef __gnuc_va_list va_list; ># 108 "../libio/stdio.h" > > >typedef _G_fpos_t fpos_t; > > > > > >typedef _G_fpos64_t fpos64_t; ># 164 "../libio/stdio.h" ># 1 "/suse/schwab/src/libc/i586/bits/stdio_lim.h" 1 ># 165 "../libio/stdio.h" 2 > > > >extern struct _IO_FILE *stdin; >extern struct _IO_FILE *stdout; >extern struct _IO_FILE *stderr; > > > > > > > >extern int remove (const char *__filename) __attribute__ ((__nothrow__ )); > >extern int rename (const char *__old, const char *__new) __attribute__ ((__nothrow__ )); > > > > >extern int renameat (int __oldfd, const char *__old, int __newfd, > const char *__new) __attribute__ ((__nothrow__ )); > > > > > > > > >extern FILE *tmpfile (void) ; ># 205 "../libio/stdio.h" >extern FILE *tmpfile64 (void) ; > > > >extern char *tmpnam (char *__s) __attribute__ ((__nothrow__ )) ; > > > > > >extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__ )) ; ># 227 "../libio/stdio.h" >extern char *tempnam (const char *__dir, const char *__pfx) > __attribute__ ((__nothrow__ )) __attribute__ ((__malloc__)) ; > > > > > > > > >extern int fclose (FILE *__stream); > > > > >extern int fflush (FILE *__stream); > ># 252 "../libio/stdio.h" >extern int fflush_unlocked (FILE *__stream); ># 262 "../libio/stdio.h" >extern int fcloseall (void); > > > > > > > > > >extern FILE *fopen (const char *__restrict __filename, > const char *__restrict __modes) ; > > > > >extern FILE *freopen (const char *__restrict __filename, > const char *__restrict __modes, > FILE *__restrict __stream) ; ># 295 "../libio/stdio.h" > > >extern FILE *fopen64 (const char *__restrict __filename, > const char *__restrict __modes) ; >extern FILE *freopen64 (const char *__restrict __filename, > const char *__restrict __modes, > FILE *__restrict __stream) ; > > > > >extern FILE *fdopen (int __fd, const char *__modes) __attribute__ ((__nothrow__ )) ; > > > > > >extern FILE *fopencookie (void *__restrict __magic_cookie, > const char *__restrict __modes, > _IO_cookie_io_functions_t __io_funcs) __attribute__ ((__nothrow__ )) ; > > > > >extern FILE *fmemopen (void *__s, size_t __len, const char *__modes) > __attribute__ ((__nothrow__ )) ; > > > > >extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__ )) ; > > > > > > >extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__ )); > > > >extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, > int __modes, size_t __n) __attribute__ ((__nothrow__ )); > > > > > >extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, > size_t __size) __attribute__ ((__nothrow__ )); > > >extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__ )); > > > > > > > > >extern int fprintf (FILE *__restrict __stream, > const char *__restrict __format, ...); > > > > >extern int printf (const char *__restrict __format, ...); > >extern int sprintf (char *__restrict __s, > const char *__restrict __format, ...) __attribute__ ((__nothrow__)); > > > > > >extern int vfprintf (FILE *__restrict __s, const char *__restrict __format, > __gnuc_va_list __arg); > > > > >extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg); > >extern int vsprintf (char *__restrict __s, const char *__restrict __format, > __gnuc_va_list __arg) __attribute__ ((__nothrow__)); > > > > > >extern int snprintf (char *__restrict __s, size_t __maxlen, > const char *__restrict __format, ...) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4))); > >extern int vsnprintf (char *__restrict __s, size_t __maxlen, > const char *__restrict __format, __gnuc_va_list __arg) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0))); > > > > > > >extern int vasprintf (char **__restrict __ptr, const char *__restrict __f, > __gnuc_va_list __arg) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0))) ; >extern int __asprintf (char **__restrict __ptr, > const char *__restrict __fmt, ...) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))) ; >extern int asprintf (char **__restrict __ptr, > const char *__restrict __fmt, ...) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))) ; > > > > >extern int vdprintf (int __fd, const char *__restrict __fmt, > __gnuc_va_list __arg) > __attribute__ ((__format__ (__printf__, 2, 0))); >extern int dprintf (int __fd, const char *__restrict __fmt, ...) > __attribute__ ((__format__ (__printf__, 2, 3))); > > > > > > > > >extern int fscanf (FILE *__restrict __stream, > const char *__restrict __format, ...) ; > > > > >extern int scanf (const char *__restrict __format, ...) ; > >extern int sscanf (const char *__restrict __s, > const char *__restrict __format, ...) __attribute__ ((__nothrow__ )); ># 463 "../libio/stdio.h" > > > > > > > > >extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, > __gnuc_va_list __arg) > __attribute__ ((__format__ (__scanf__, 2, 0))) ; > > > > > >extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg) > __attribute__ ((__format__ (__scanf__, 1, 0))) ; > > >extern int vsscanf (const char *__restrict __s, > const char *__restrict __format, __gnuc_va_list __arg) > __attribute__ ((__nothrow__ )) __attribute__ ((__format__ (__scanf__, 2, 0))); ># 522 "../libio/stdio.h" > > > > > > > > > >extern int fgetc (FILE *__stream); >extern int getc (FILE *__stream); > > > > > >extern int getchar (void); > ># 550 "../libio/stdio.h" >extern int getc_unlocked (FILE *__stream); >extern int getchar_unlocked (void); ># 561 "../libio/stdio.h" >extern int fgetc_unlocked (FILE *__stream); > > > > > > > > > > > >extern int fputc (int __c, FILE *__stream); >extern int putc (int __c, FILE *__stream); > > > > > >extern int putchar (int __c); > ># 594 "../libio/stdio.h" >extern int fputc_unlocked (int __c, FILE *__stream); > > > > > > > >extern int putc_unlocked (int __c, FILE *__stream); >extern int putchar_unlocked (int __c); > > > > > > >extern int getw (FILE *__stream); > > >extern int putw (int __w, FILE *__stream); > > > > > > > > >extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) > ; ># 640 "../libio/stdio.h" > ># 649 "../libio/stdio.h" >extern char *fgets_unlocked (char *__restrict __s, int __n, > FILE *__restrict __stream) ; ># 665 "../libio/stdio.h" >extern __ssize_t __getdelim (char **__restrict __lineptr, > size_t *__restrict __n, int __delimiter, > FILE *__restrict __stream) ; >extern __ssize_t getdelim (char **__restrict __lineptr, > size_t *__restrict __n, int __delimiter, > FILE *__restrict __stream) ; > > > > > > > >extern __ssize_t getline (char **__restrict __lineptr, > size_t *__restrict __n, > FILE *__restrict __stream) ; > > > > > > > > >extern int fputs (const char *__restrict __s, FILE *__restrict __stream); > > > > > >extern int puts (const char *__s); > > > > > > >extern int ungetc (int __c, FILE *__stream); > > > > > > >extern size_t fread (void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __stream) ; > > > > >extern size_t fwrite (const void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __s); > ># 726 "../libio/stdio.h" >extern int fputs_unlocked (const char *__restrict __s, > FILE *__restrict __stream); ># 737 "../libio/stdio.h" >extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __stream) ; >extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __stream); > > > > > > > > >extern int fseek (FILE *__stream, long int __off, int __whence); > > > > >extern long int ftell (FILE *__stream) ; > > > > >extern void rewind (FILE *__stream); > ># 773 "../libio/stdio.h" >extern int fseeko (FILE *__stream, __off_t __off, int __whence); > > > > >extern __off_t ftello (FILE *__stream) ; ># 792 "../libio/stdio.h" > > > > > > >extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); > > > > >extern int fsetpos (FILE *__stream, const fpos_t *__pos); ># 815 "../libio/stdio.h" > > > >extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence); >extern __off64_t ftello64 (FILE *__stream) ; >extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos); >extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos); > > > > >extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__ )); > >extern int feof (FILE *__stream) __attribute__ ((__nothrow__ )) ; > >extern int ferror (FILE *__stream) __attribute__ ((__nothrow__ )) ; > > > > >extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__ )); >extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__ )) ; >extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__ )) ; > > > > > > > > >extern void perror (const char *__s); > > > > > > ># 1 "../sysdeps/unix/sysv/linux/bits/sys_errlist.h" 1 ># 26 "../sysdeps/unix/sysv/linux/bits/sys_errlist.h" >extern int sys_nerr; >extern const char *const sys_errlist[]; > > >extern int _sys_nerr; >extern const char *const _sys_errlist[]; ># 854 "../libio/stdio.h" 2 > > > > >extern int fileno (FILE *__stream) __attribute__ ((__nothrow__ )) ; > > > > >extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__ )) ; ># 872 "../libio/stdio.h" >extern FILE *popen (const char *__command, const char *__modes) ; > > > > > >extern int pclose (FILE *__stream); > > > > > >extern char *ctermid (char *__s) __attribute__ ((__nothrow__ )); > > > > > >extern char *cuserid (char *__s); > > > > >struct obstack; > > >extern int obstack_printf (struct obstack *__restrict __obstack, > const char *__restrict __format, ...) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))); >extern int obstack_vprintf (struct obstack *__restrict __obstack, > const char *__restrict __format, > __gnuc_va_list __args) > __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0))); > > > > > > > >extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__ )); > > > >extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__ )) ; > > >extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__ )); ># 933 "../libio/stdio.h" ># 1 "../libio/bits/stdio.h" 1 ># 35 "../libio/bits/stdio.h" >extern __inline __attribute__ ((__gnu_inline__)) int >vprintf (const char *__restrict __fmt, __gnuc_va_list __arg) >{ > return vfprintf (stdout, __fmt, __arg); >} > > > >extern __inline __attribute__ ((__gnu_inline__)) int >getchar (void) >{ > return _IO_getc (stdin); >} > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >fgetc_unlocked (FILE *__fp) >{ > return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++); >} > > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >getc_unlocked (FILE *__fp) >{ > return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >getchar_unlocked (void) >{ > return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++); >} > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >putchar (int __c) >{ > return _IO_putc (__c, stdout); >} > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >fputc_unlocked (int __c, FILE *__stream) >{ > return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c))); >} > > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >putc_unlocked (int __c, FILE *__stream) >{ > return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c))); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >putchar_unlocked (int __c) >{ > return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c))); >} > > > > > >extern __inline __attribute__ ((__gnu_inline__)) __ssize_t >getline (char **__lineptr, size_t *__n, FILE *__stream) >{ > return __getdelim (__lineptr, __n, '\n', __stream); >} > > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) feof_unlocked (FILE *__stream) >{ > return (((__stream)->_flags & 0x10) != 0); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__nothrow__ )) ferror_unlocked (FILE *__stream) >{ > return (((__stream)->_flags & 0x20) != 0); >} ># 934 "../libio/stdio.h" 2 ># 942 "../libio/stdio.h" > ># 6 "../include/stdio.h" 2 > > > > >extern int __fcloseall (void); >extern int __snprintf (char *__restrict __s, size_t __maxlen, > const char *__restrict __format, ...) > __attribute__ ((__format__ (__printf__, 3, 4))); >extern int __vsnprintf (char *__restrict __s, size_t __maxlen, > const char *__restrict __format, __gnuc_va_list __arg) > __attribute__ ((__format__ (__printf__, 3, 0))); >extern int __vfscanf (FILE *__restrict __s, > const char *__restrict __format, > __gnuc_va_list __arg) > __attribute__ ((__format__ (__scanf__, 2, 0))); > >extern int __vscanf (const char *__restrict __format, > __gnuc_va_list __arg) > __attribute__ ((__format__ (__scanf__, 1, 0))); >extern __ssize_t __getline (char **__lineptr, size_t *__n, > FILE *__stream); >extern int __vsscanf (const char *__restrict __s, > const char *__restrict __format, > __gnuc_va_list __arg) > __attribute__ ((__format__ (__scanf__, 2, 0))); > > >extern int __sprintf_chk (char *, int, size_t, const char *, ...) __attribute__ ((__nothrow__ )); >extern int __snprintf_chk (char *, size_t, int, size_t, const char *, ...) > __attribute__ ((__nothrow__ )); >extern int __vsprintf_chk (char *, int, size_t, const char *, > __gnuc_va_list) __attribute__ ((__nothrow__ )); >extern int __vsnprintf_chk (char *, size_t, int, size_t, const char *, > __gnuc_va_list) __attribute__ ((__nothrow__ )); >extern int __printf_chk (int, const char *, ...); >extern int __fprintf_chk (FILE *, int, const char *, ...); >extern int __vprintf_chk (int, const char *, __gnuc_va_list); >extern int __vfprintf_chk (FILE *, int, const char *, __gnuc_va_list); >extern char *__fgets_unlocked_chk (char *buf, size_t size, int n, FILE *fp); >extern char *__fgets_chk (char *buf, size_t size, int n, FILE *fp); >extern int __asprintf_chk (char **, int, const char *, ...) __attribute__ ((__nothrow__ )); >extern int __vasprintf_chk (char **, int, const char *, __gnuc_va_list) __attribute__ ((__nothrow__ )); >extern int __dprintf_chk (int, int, const char *, ...); >extern int __vdprintf_chk (int, int, const char *, __gnuc_va_list); >extern int __obstack_printf_chk (struct obstack *, int, const char *, ...) > __attribute__ ((__nothrow__ )); >extern int __obstack_vprintf_chk (struct obstack *, int, const char *, > __gnuc_va_list) __attribute__ ((__nothrow__ )); > > >extern int __isoc99_fscanf (FILE *__restrict __stream, > const char *__restrict __format, ...) ; >extern int __isoc99_scanf (const char *__restrict __format, ...) ; >extern int __isoc99_sscanf (const char *__restrict __s, > const char *__restrict __format, ...) __attribute__ ((__nothrow__ )); >extern int __isoc99_vfscanf (FILE *__restrict __s, > const char *__restrict __format, > __gnuc_va_list __arg) ; >extern int __isoc99_vscanf (const char *__restrict __format, > __gnuc_va_list __arg) ; >extern int __isoc99_vsscanf (const char *__restrict __s, > const char *__restrict __format, > __gnuc_va_list __arg) __attribute__ ((__nothrow__ )); > > > > >extern FILE *__new_tmpfile (void); >extern FILE *__old_tmpfile (void); > > > > ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 80 "../include/stdio.h" 2 > >extern int __path_search (char *__tmpl, size_t __tmpl_len, > const char *__dir, const char *__pfx, > int __try_tempdir); > >extern int __gen_tempname (char *__tmpl, int __suffixlen, int __flags, > int __kind); > > > > > > >extern void __libc_fatal (const char *__message) > __attribute__ ((__noreturn__)); >extern void __libc_message (int do_abort, const char *__fnt, ...); >extern void __fortify_fail (const char *msg) > __attribute__ ((__noreturn__)) __attribute__ ((regparm (3), stdcall)); > > > >extern void __flockfile (FILE *__stream); > > >extern void __funlockfile (FILE *__stream); > > > >extern int __ftrylockfile (FILE *__stream); > >extern int __getc_unlocked (FILE *__fp); >extern wint_t __getwc_unlocked (FILE *__fp); > >extern int __fxprintf (FILE *__fp, const char *__fmt, ...) > __attribute__ ((__format__ (__printf__, 2, 3))); > >extern const char *const _sys_errlist_internal[] __attribute__ ((visibility ("hidden"))); >extern int _sys_nerr_internal __attribute__ ((visibility ("hidden"))); > > ># 136 "../include/stdio.h" > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >extern char *gets (char *__s); ># 183 "../include/stdio.h" > ># 65 "../resolv/resolv.h" 2 ># 1 "../include/arpa/nameser.h" 1 > > ># 1 "../resolv/arpa/nameser.h" 1 ># 59 "../resolv/arpa/nameser.h" ># 1 "../include/sys/param.h" 1 ># 60 "../resolv/arpa/nameser.h" 2 > ># 1 "../include/sys/bitypes.h" 1 ># 1 "../resolv/sys/bitypes.h" 1 > > ># 1 "../include/sys/types.h" 1 ># 3 "../resolv/sys/bitypes.h" 2 ># 1 "../include/sys/bitypes.h" 2 ># 62 "../resolv/arpa/nameser.h" 2 ># 98 "../resolv/arpa/nameser.h" >typedef enum __ns_sect { > ns_s_qd = 0, > ns_s_zn = 0, > ns_s_an = 1, > ns_s_pr = 1, > ns_s_ns = 2, > ns_s_ud = 2, > ns_s_ar = 3, > ns_s_max = 4 >} ns_sect; > > > > > > >typedef struct __ns_msg { > const u_char *_msg, *_eom; > u_int16_t _id, _flags, _counts[ns_s_max]; > const u_char *_sections[ns_s_max]; > ns_sect _sect; > int _rrnum; > const u_char *_msg_ptr; >} ns_msg; > > >struct _ns_flagdata { int mask, shift; }; >extern const struct _ns_flagdata _ns_flagdata[]; ># 138 "../resolv/arpa/nameser.h" >typedef struct __ns_rr { > char name[1025]; > u_int16_t type; > u_int16_t rr_class; > u_int32_t ttl; > u_int16_t rdlength; > const u_char * rdata; >} ns_rr; ># 160 "../resolv/arpa/nameser.h" >typedef enum __ns_flag { > ns_f_qr, > ns_f_opcode, > ns_f_aa, > ns_f_tc, > ns_f_rd, > ns_f_ra, > ns_f_z, > ns_f_ad, > ns_f_cd, > ns_f_rcode, > ns_f_max >} ns_flag; > > > > >typedef enum __ns_opcode { > ns_o_query = 0, > ns_o_iquery = 1, > ns_o_status = 2, > > ns_o_notify = 4, > ns_o_update = 5, > ns_o_max = 6 >} ns_opcode; > > > > >typedef enum __ns_rcode { > ns_r_noerror = 0, > ns_r_formerr = 1, > ns_r_servfail = 2, > ns_r_nxdomain = 3, > ns_r_notimpl = 4, > ns_r_refused = 5, > > ns_r_yxdomain = 6, > ns_r_yxrrset = 7, > ns_r_nxrrset = 8, > ns_r_notauth = 9, > ns_r_notzone = 10, > ns_r_max = 11, > > ns_r_badvers = 16, > > ns_r_badsig = 16, > ns_r_badkey = 17, > ns_r_badtime = 18 >} ns_rcode; > > >typedef enum __ns_update_operation { > ns_uop_delete = 0, > ns_uop_add = 1, > ns_uop_max = 2 >} ns_update_operation; > > > > >struct ns_tsig_key { > char name[1025], alg[1025]; > unsigned char *data; > int len; >}; >typedef struct ns_tsig_key ns_tsig_key; > > > > >struct ns_tcp_tsig_state { > int counter; > struct dst_key *key; > void *ctx; > unsigned char sig[512]; > int siglen; >}; >typedef struct ns_tcp_tsig_state ns_tcp_tsig_state; ># 252 "../resolv/arpa/nameser.h" >typedef enum __ns_type { > ns_t_invalid = 0, > ns_t_a = 1, > ns_t_ns = 2, > ns_t_md = 3, > ns_t_mf = 4, > ns_t_cname = 5, > ns_t_soa = 6, > ns_t_mb = 7, > ns_t_mg = 8, > ns_t_mr = 9, > ns_t_null = 10, > ns_t_wks = 11, > ns_t_ptr = 12, > ns_t_hinfo = 13, > ns_t_minfo = 14, > ns_t_mx = 15, > ns_t_txt = 16, > ns_t_rp = 17, > ns_t_afsdb = 18, > ns_t_x25 = 19, > ns_t_isdn = 20, > ns_t_rt = 21, > ns_t_nsap = 22, > ns_t_nsap_ptr = 23, > ns_t_sig = 24, > ns_t_key = 25, > ns_t_px = 26, > ns_t_gpos = 27, > ns_t_aaaa = 28, > ns_t_loc = 29, > ns_t_nxt = 30, > ns_t_eid = 31, > ns_t_nimloc = 32, > ns_t_srv = 33, > ns_t_atma = 34, > ns_t_naptr = 35, > ns_t_kx = 36, > ns_t_cert = 37, > ns_t_a6 = 38, > ns_t_dname = 39, > ns_t_sink = 40, > ns_t_opt = 41, > ns_t_apl = 42, > ns_t_tkey = 249, > ns_t_tsig = 250, > ns_t_ixfr = 251, > ns_t_axfr = 252, > ns_t_mailb = 253, > ns_t_maila = 254, > ns_t_any = 255, > ns_t_zxfr = 256, > ns_t_max = 65536 >} ns_type; ># 321 "../resolv/arpa/nameser.h" >typedef enum __ns_class { > ns_c_invalid = 0, > ns_c_in = 1, > ns_c_2 = 2, > ns_c_chaos = 3, > ns_c_hs = 4, > > ns_c_none = 254, > ns_c_any = 255, > ns_c_max = 65536 >} ns_class; > > > >typedef enum __ns_key_types { > ns_kt_rsa = 1, > ns_kt_dh = 2, > ns_kt_dsa = 3, > ns_kt_private = 254 >} ns_key_types; > >typedef enum __ns_cert_types { > cert_t_pkix = 1, > cert_t_spki = 2, > cert_t_pgp = 3, > cert_t_url = 253, > cert_t_oid = 254 >} ns_cert_types; ># 471 "../resolv/arpa/nameser.h" > >int ns_msg_getflag (ns_msg, int) __attribute__ ((__nothrow__ )); >u_int ns_get16 (const u_char *) __attribute__ ((__nothrow__ )); >u_long ns_get32 (const u_char *) __attribute__ ((__nothrow__ )); >void ns_put16 (u_int, u_char *) __attribute__ ((__nothrow__ )); >void ns_put32 (u_long, u_char *) __attribute__ ((__nothrow__ )); >int ns_initparse (const u_char *, int, ns_msg *) __attribute__ ((__nothrow__ )); >int ns_skiprr (const u_char *, const u_char *, ns_sect, int) > __attribute__ ((__nothrow__ )); >int ns_parserr (ns_msg *, ns_sect, int, ns_rr *) __attribute__ ((__nothrow__ )); >int ns_sprintrr (const ns_msg *, const ns_rr *, > const char *, const char *, char *, size_t) > __attribute__ ((__nothrow__ )); >int ns_sprintrrf (const u_char *, size_t, const char *, > ns_class, ns_type, u_long, const u_char *, > size_t, const char *, const char *, > char *, size_t) __attribute__ ((__nothrow__ )); >int ns_format_ttl (u_long, char *, size_t) __attribute__ ((__nothrow__ )); >int ns_parse_ttl (const char *, u_long *) __attribute__ ((__nothrow__ )); >u_int32_t ns_datetosecs (const char *, int *) __attribute__ ((__nothrow__ )); >int ns_name_ntol (const u_char *, u_char *, size_t) __attribute__ ((__nothrow__ )); >int ns_name_ntop (const u_char *, char *, size_t) __attribute__ ((__nothrow__ )); >int ns_name_pton (const char *, u_char *, size_t) __attribute__ ((__nothrow__ )); >int ns_name_unpack (const u_char *, const u_char *, > const u_char *, u_char *, size_t) __attribute__ ((__nothrow__ )); >int ns_name_pack (const u_char *, u_char *, int, > const u_char **, const u_char **) __attribute__ ((__nothrow__ )); >int ns_name_uncompress (const u_char *, const u_char *, > const u_char *, char *, size_t) __attribute__ ((__nothrow__ )); >int ns_name_compress (const char *, u_char *, size_t, > const u_char **, const u_char **) __attribute__ ((__nothrow__ )); >int ns_name_skip (const u_char **, const u_char *) __attribute__ ((__nothrow__ )); >void ns_name_rollback (const u_char *, const u_char **, > const u_char **) __attribute__ ((__nothrow__ )); >int ns_sign (u_char *, int *, int, int, void *, > const u_char *, int, u_char *, int *, time_t) __attribute__ ((__nothrow__ )); >int ns_sign2 (u_char *, int *, int, int, void *, > const u_char *, int, u_char *, int *, time_t, > u_char **, u_char **) __attribute__ ((__nothrow__ )); >int ns_sign_tcp (u_char *, int *, int, int, > ns_tcp_tsig_state *, int) __attribute__ ((__nothrow__ )); >int ns_sign_tcp2 (u_char *, int *, int, int, > ns_tcp_tsig_state *, int, > u_char **, u_char **) __attribute__ ((__nothrow__ )); >int ns_sign_tcp_init (void *, const u_char *, int, > ns_tcp_tsig_state *) __attribute__ ((__nothrow__ )); >u_char *ns_find_tsig (u_char *, u_char *) __attribute__ ((__nothrow__ )); >int ns_verify (u_char *, int *, void *, const u_char *, int, > u_char *, int *, time_t *, int) __attribute__ ((__nothrow__ )); >int ns_verify_tcp (u_char *, int *, ns_tcp_tsig_state *, int) > __attribute__ ((__nothrow__ )); >int ns_verify_tcp_init (void *, const u_char *, int, > ns_tcp_tsig_state *) __attribute__ ((__nothrow__ )); >int ns_samedomain (const char *, const char *) __attribute__ ((__nothrow__ )); >int ns_subdomain (const char *, const char *) __attribute__ ((__nothrow__ )); >int ns_makecanon (const char *, char *, size_t) __attribute__ ((__nothrow__ )); >int ns_samename (const char *, const char *) __attribute__ ((__nothrow__ )); > > > ># 1 "../include/arpa/nameser_compat.h" 1 > ># 1 "../resolv/arpa/nameser_compat.h" 1 ># 39 "../resolv/arpa/nameser_compat.h" ># 1 "../include/endian.h" 1 ># 40 "../resolv/arpa/nameser_compat.h" 2 ># 48 "../resolv/arpa/nameser_compat.h" >typedef struct { > unsigned id :16; ># 66 "../resolv/arpa/nameser_compat.h" > unsigned rd :1; > unsigned tc :1; > unsigned aa :1; > unsigned opcode :4; > unsigned qr :1; > > unsigned rcode :4; > unsigned cd: 1; > unsigned ad: 1; > unsigned unused :1; > unsigned ra :1; > > > unsigned qdcount :16; > unsigned ancount :16; > unsigned nscount :16; > unsigned arcount :16; >} HEADER; ># 3 "../include/arpa/nameser_compat.h" 2 ># 532 "../resolv/arpa/nameser.h" 2 ># 4 "../include/arpa/nameser.h" 2 ># 12 "../include/arpa/nameser.h" >extern const struct _ns_flagdata _ns_flagdata[] __attribute__ ((visibility ("hidden"))); ># 50 "../include/arpa/nameser.h" >extern u_int __ns_get16 (const u_char *) __attribute__ ((__nothrow__ )); >extern u_long __ns_get32 (const u_char *) __attribute__ ((__nothrow__ )); > > > > > > > > > > > > > > > > > > > > > > > > ># 66 "../resolv/resolv.h" 2 ># 176 "../resolv/resolv.h" >struct res_sym { > int number; > char * name; > char * humanname; >}; ># 248 "../resolv/resolv.h" > >extern struct __res_state *__res_state(void) __attribute__ ((__const__)); > ># 267 "../resolv/resolv.h" > >void __fp_nquery (const u_char *, int, FILE *) __attribute__ ((__nothrow__ )); >void __fp_query (const u_char *, FILE *) __attribute__ ((__nothrow__ )); >const char * __hostalias (const char *) __attribute__ ((__nothrow__ )); >void __p_query (const u_char *) __attribute__ ((__nothrow__ )); >void __res_close (void) __attribute__ ((__nothrow__ )); >int __res_init (void) __attribute__ ((__nothrow__ )); >int __res_isourserver (const struct sockaddr_in *) __attribute__ ((__nothrow__ )); >int __res_mkquery (int, const char *, int, int, const u_char *, > int, const u_char *, u_char *, int) __attribute__ ((__nothrow__ )); >int __res_query (const char *, int, int, u_char *, int) __attribute__ ((__nothrow__ )); >int __res_querydomain (const char *, const char *, int, int, > u_char *, int) __attribute__ ((__nothrow__ )); >int __res_search (const char *, int, int, u_char *, int) __attribute__ ((__nothrow__ )); >int __res_send (const u_char *, int, u_char *, int) __attribute__ ((__nothrow__ )); > ># 327 "../resolv/resolv.h" > >int __res_hnok (const char *) __attribute__ ((__nothrow__ )); >int __res_ownok (const char *) __attribute__ ((__nothrow__ )); >int __res_mailok (const char *) __attribute__ ((__nothrow__ )); >int __res_dnok (const char *) __attribute__ ((__nothrow__ )); >int __sym_ston (const struct res_sym *, const char *, int *) __attribute__ ((__nothrow__ )); >const char * __sym_ntos (const struct res_sym *, int, int *) __attribute__ ((__nothrow__ )); >const char * __sym_ntop (const struct res_sym *, int, int *) __attribute__ ((__nothrow__ )); >int __b64_ntop (u_char const *, size_t, char *, size_t) __attribute__ ((__nothrow__ )); >int __b64_pton (char const *, u_char *, size_t) __attribute__ ((__nothrow__ )); >int __loc_aton (const char *__ascii, u_char *__binary) __attribute__ ((__nothrow__ )); >const char * __loc_ntoa (const u_char *__binary, char *__ascii) __attribute__ ((__nothrow__ )); >int __dn_skipname (const u_char *, const u_char *) __attribute__ ((__nothrow__ )); >void __putlong (u_int32_t, u_char *) __attribute__ ((__nothrow__ )); >void __putshort (u_int16_t, u_char *) __attribute__ ((__nothrow__ )); >const char * __p_class (int) __attribute__ ((__nothrow__ )); >const char * __p_time (u_int32_t) __attribute__ ((__nothrow__ )); >const char * __p_type (int) __attribute__ ((__nothrow__ )); >const char * __p_rcode (int) __attribute__ ((__nothrow__ )); >const u_char * __p_cdnname (const u_char *, const u_char *, int, FILE *) > __attribute__ ((__nothrow__ )); >const u_char * __p_cdname (const u_char *, const u_char *, FILE *) __attribute__ ((__nothrow__ )); >const u_char * __p_fqnname (const u_char *__cp, const u_char *__msg, > int, char *, int) __attribute__ ((__nothrow__ )); >const u_char * __p_fqname (const u_char *, const u_char *, FILE *) __attribute__ ((__nothrow__ )); >const char * __p_option (u_long __option) __attribute__ ((__nothrow__ )); >char * __p_secstodate (u_long) __attribute__ ((__nothrow__ )); >int __dn_count_labels (const char *) __attribute__ ((__nothrow__ )); >int __dn_comp (const char *, u_char *, int, u_char **, u_char **) > __attribute__ ((__nothrow__ )); >int __dn_expand (const u_char *, const u_char *, const u_char *, > char *, int) __attribute__ ((__nothrow__ )); >u_int __res_randomid (void) __attribute__ ((__nothrow__ )); >int __res_nameinquery (const char *, int, int, > const u_char *, const u_char *) __attribute__ ((__nothrow__ )); >int __res_queriesmatch (const u_char *, const u_char *, > const u_char *, const u_char *) __attribute__ ((__nothrow__ )); >const char * __p_section (int __section, int __opcode) __attribute__ ((__nothrow__ )); > >int __res_ninit (res_state) __attribute__ ((__nothrow__ )); >int __res_nisourserver (const res_state, > const struct sockaddr_in *) __attribute__ ((__nothrow__ )); >void __fp_resstat (const res_state, FILE *) __attribute__ ((__nothrow__ )); >void __res_npquery (const res_state, const u_char *, int, FILE *) > __attribute__ ((__nothrow__ )); >const char * __res_hostalias (const res_state, const char *, char *, size_t) > __attribute__ ((__nothrow__ )); >int __res_nquery (res_state, const char *, int, int, u_char *, int) > __attribute__ ((__nothrow__ )); >int __res_nsearch (res_state, const char *, int, int, u_char *, int) > __attribute__ ((__nothrow__ )); >int __res_nquerydomain (res_state, const char *, const char *, int, > int, u_char *, int) __attribute__ ((__nothrow__ )); >int __res_nmkquery (res_state, int, const char *, int, int, > const u_char *, int, const u_char *, u_char *, > int) __attribute__ ((__nothrow__ )); >int __res_nsend (res_state, const u_char *, int, u_char *, int) > __attribute__ ((__nothrow__ )); >void __res_nclose (res_state) __attribute__ ((__nothrow__ )); > ># 13 "../include/resolv.h" 2 > > > > > > >extern __thread struct __res_state *__resp __attribute__ ((tls_model ("initial-exec"))); > > > > >extern int __res_vinit (res_state, int); >extern int __res_maybe_init (res_state, int); >extern void _sethtent (int); >extern void _endhtent (void); >extern struct hostent *_gethtent (void); >extern struct hostent *_gethtbyname (const char *__name); >extern struct hostent *_gethtbyname2 (const char *__name, int __af); >struct hostent *_gethtbyaddr (const char *addr, size_t __len, int __af); >extern u_int32_t _getlong (const u_char *__src); >extern u_int16_t _getshort (const u_char *__src); >extern void res_pquery (const res_state __statp, const u_char *__msg, > int __len, FILE *__file); >extern void res_send_setqhook (res_send_qhook __hook); >extern void res_send_setrhook (res_send_rhook __hook); >extern int res_ourserver_p (const res_state __statp, > const struct sockaddr_in6 *__inp); >extern void __res_iclose (res_state statp, _Bool free_addr); >extern int __res_nopt(res_state statp, int n0, u_char *buf, int buflen, > int anslen); > > > > > > > >int __libc_res_nquery (res_state, const char *, int, int, u_char *, int, > u_char **, u_char **, int *, int *, int *); >int __libc_res_nsearch (res_state, const char *, int, int, u_char *, int, > u_char **, u_char **, int *, int *, int *); >int __libc_res_nsend (res_state, const u_char *, int, const u_char *, int, > u_char *, int, u_char **, u_char **, int *, int *, int *) > __attribute__ ((visibility ("hidden"))); > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >extern const char *_res_opcodes[]; > ># 31 "pthread_create.c" 2 ># 1 "../sysdeps/unix/sysv/linux/kernel-features.h" 1 ># 32 "pthread_create.c" 2 ># 1 "../sysdeps/unix/sysv/linux/exit-thread.h" 1 ># 25 "../sysdeps/unix/sysv/linux/exit-thread.h" >static inline void __attribute__ ((noreturn, always_inline, unused)) >__exit_thread (void) >{ > > > > > > while (1) > { > do { } while (0); > ({ register unsigned int resultvar; asm volatile ( "bpushl .L__X'%k2, %k2\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "bpopl .L__X'%k2, %k2\n\t" : "=a" (resultvar) : "i" (1) , "cd" (0) : "memory", "cc"); (int) resultvar; }); > } >} ># 33 "pthread_create.c" 2 > > > > > > > >static int start_thread (void *arg); > > > >int __pthread_debug; > > >static td_thr_events_t __nptl_threads_events __attribute__ ((__used__)); > > >static struct pthread *__nptl_last_event __attribute__ ((__used__)); > > >unsigned int __nptl_nthreads = 1; > > > ># 1 "allocatestack.c" 1 ># 19 "allocatestack.c" ># 1 "../include/assert.h" 1 ># 1 "../assert/assert.h" 1 ># 64 "../assert/assert.h" > > > >extern void __assert_fail (const char *__assertion, const char *__file, > unsigned int __line, const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > >extern void __assert_perror_fail (int __errnum, const char *__file, > unsigned int __line, const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > > >extern void __assert (const char *__assertion, const char *__file, int __line) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > ># 2 "../include/assert.h" 2 > > > > > >extern void __assert_fail (const char *__assertion, const char *__file, > unsigned int __line, const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > >extern void __assert_perror_fail (int __errnum, const char *__file, > unsigned int __line, > const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > >extern void __assert_fail_base (const char *fmt, const char *assertion, > const char *file, unsigned int line, > const char *function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); ># 20 "allocatestack.c" 2 > > > > ># 1 "../include/unistd.h" 1 > ># 1 "../posix/unistd.h" 1 ># 27 "../posix/unistd.h" > ># 202 "../posix/unistd.h" ># 1 "../sysdeps/unix/sysv/linux/bits/posix_opt.h" 1 ># 203 "../posix/unistd.h" 2 > > > ># 1 "../sysdeps/unix/sysv/linux/x86/bits/environments.h" 1 ># 22 "../sysdeps/unix/sysv/linux/x86/bits/environments.h" ># 1 "../sysdeps/x86/bits/wordsize.h" 1 ># 23 "../sysdeps/unix/sysv/linux/x86/bits/environments.h" 2 ># 207 "../posix/unistd.h" 2 ># 226 "../posix/unistd.h" ># 1 "/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h" 1 3 4 ># 227 "../posix/unistd.h" 2 ># 287 "../posix/unistd.h" >extern int access (const char *__name, int __type) __attribute__ ((__nothrow__ )) ; > > > > >extern int euidaccess (const char *__name, int __type) > __attribute__ ((__nothrow__ )) ; > > >extern int eaccess (const char *__name, int __type) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern int faccessat (int __fd, const char *__file, int __type, int __flag) > __attribute__ ((__nothrow__ )) ; ># 334 "../posix/unistd.h" >extern __off_t lseek (int __fd, __off_t __offset, int __whence) __attribute__ ((__nothrow__ )); ># 345 "../posix/unistd.h" >extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) > __attribute__ ((__nothrow__ )); > > > > > > >extern int close (int __fd); > > > > > > >extern ssize_t read (int __fd, void *__buf, size_t __nbytes) ; > > > > > >extern ssize_t write (int __fd, const void *__buf, size_t __n) ; ># 376 "../posix/unistd.h" >extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, > __off_t __offset) ; > > > > > > >extern ssize_t pwrite (int __fd, const void *__buf, size_t __n, > __off_t __offset) ; ># 404 "../posix/unistd.h" >extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes, > __off64_t __offset) ; > > >extern ssize_t pwrite64 (int __fd, const void *__buf, size_t __n, > __off64_t __offset) ; > > > > > > > >extern int pipe (int __pipedes[2]) __attribute__ ((__nothrow__ )) ; > > > > >extern int pipe2 (int __pipedes[2], int __flags) __attribute__ ((__nothrow__ )) ; ># 432 "../posix/unistd.h" >extern unsigned int alarm (unsigned int __seconds) __attribute__ ((__nothrow__ )); ># 444 "../posix/unistd.h" >extern unsigned int sleep (unsigned int __seconds); > > > > > > > >extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval) > __attribute__ ((__nothrow__ )); > > > > > > >extern int usleep (__useconds_t __useconds); ># 469 "../posix/unistd.h" >extern int pause (void); > > > >extern int chown (const char *__file, __uid_t __owner, __gid_t __group) > __attribute__ ((__nothrow__ )) ; > > > >extern int fchown (int __fd, __uid_t __owner, __gid_t __group) __attribute__ ((__nothrow__ )) ; > > > > >extern int lchown (const char *__file, __uid_t __owner, __gid_t __group) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern int fchownat (int __fd, const char *__file, __uid_t __owner, > __gid_t __group, int __flag) > __attribute__ ((__nothrow__ )) ; > > > >extern int chdir (const char *__path) __attribute__ ((__nothrow__ )) ; > > > >extern int fchdir (int __fd) __attribute__ ((__nothrow__ )) ; ># 511 "../posix/unistd.h" >extern char *getcwd (char *__buf, size_t __size) __attribute__ ((__nothrow__ )) ; > > > > > >extern char *get_current_dir_name (void) __attribute__ ((__nothrow__ )); > > > > > > > >extern char *getwd (char *__buf) > __attribute__ ((__nothrow__ )) __attribute__ ((__deprecated__)) ; > > > > >extern int dup (int __fd) __attribute__ ((__nothrow__ )) ; > > >extern int dup2 (int __fd, int __fd2) __attribute__ ((__nothrow__ )); > > > > >extern int dup3 (int __fd, int __fd2, int __flags) __attribute__ ((__nothrow__ )); > > > >extern char **__environ; > >extern char **environ; > > > > > >extern int execve (const char *__path, char *const __argv[], > char *const __envp[]) __attribute__ ((__nothrow__ )) ; > > > > >extern int fexecve (int __fd, char *const __argv[], char *const __envp[]) > __attribute__ ((__nothrow__ )) ; > > > > >extern int execv (const char *__path, char *const __argv[]) > __attribute__ ((__nothrow__ )) ; > > > >extern int execle (const char *__path, const char *__arg, ...) > __attribute__ ((__nothrow__ )) ; > > > >extern int execl (const char *__path, const char *__arg, ...) > __attribute__ ((__nothrow__ )) ; > > > >extern int execvp (const char *__file, char *const __argv[]) > __attribute__ ((__nothrow__ )) ; > > > > >extern int execlp (const char *__file, const char *__arg, ...) > __attribute__ ((__nothrow__ )) ; > > > > >extern int execvpe (const char *__file, char *const __argv[], > char *const __envp[]) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int nice (int __inc) __attribute__ ((__nothrow__ )) ; > > > > >extern void _exit (int __status) __attribute__ ((__noreturn__)); > > > > > ># 1 "../bits/confname.h" 1 ># 24 "../bits/confname.h" >enum > { > _PC_LINK_MAX, > > _PC_MAX_CANON, > > _PC_MAX_INPUT, > > _PC_NAME_MAX, > > _PC_PATH_MAX, > > _PC_PIPE_BUF, > > _PC_CHOWN_RESTRICTED, > > _PC_NO_TRUNC, > > _PC_VDISABLE, > > _PC_SYNC_IO, > > _PC_ASYNC_IO, > > _PC_PRIO_IO, > > _PC_SOCK_MAXBUF, > > _PC_FILESIZEBITS, > > _PC_REC_INCR_XFER_SIZE, > > _PC_REC_MAX_XFER_SIZE, > > _PC_REC_MIN_XFER_SIZE, > > _PC_REC_XFER_ALIGN, > > _PC_ALLOC_SIZE_MIN, > > _PC_SYMLINK_MAX, > > _PC_2_SYMLINKS > > }; > > >enum > { > _SC_ARG_MAX, > > _SC_CHILD_MAX, > > _SC_CLK_TCK, > > _SC_NGROUPS_MAX, > > _SC_OPEN_MAX, > > _SC_STREAM_MAX, > > _SC_TZNAME_MAX, > > _SC_JOB_CONTROL, > > _SC_SAVED_IDS, > > _SC_REALTIME_SIGNALS, > > _SC_PRIORITY_SCHEDULING, > > _SC_TIMERS, > > _SC_ASYNCHRONOUS_IO, > > _SC_PRIORITIZED_IO, > > _SC_SYNCHRONIZED_IO, > > _SC_FSYNC, > > _SC_MAPPED_FILES, > > _SC_MEMLOCK, > > _SC_MEMLOCK_RANGE, > > _SC_MEMORY_PROTECTION, > > _SC_MESSAGE_PASSING, > > _SC_SEMAPHORES, > > _SC_SHARED_MEMORY_OBJECTS, > > _SC_AIO_LISTIO_MAX, > > _SC_AIO_MAX, > > _SC_AIO_PRIO_DELTA_MAX, > > _SC_DELAYTIMER_MAX, > > _SC_MQ_OPEN_MAX, > > _SC_MQ_PRIO_MAX, > > _SC_VERSION, > > _SC_PAGESIZE, > > > _SC_RTSIG_MAX, > > _SC_SEM_NSEMS_MAX, > > _SC_SEM_VALUE_MAX, > > _SC_SIGQUEUE_MAX, > > _SC_TIMER_MAX, > > > > > _SC_BC_BASE_MAX, > > _SC_BC_DIM_MAX, > > _SC_BC_SCALE_MAX, > > _SC_BC_STRING_MAX, > > _SC_COLL_WEIGHTS_MAX, > > _SC_EQUIV_CLASS_MAX, > > _SC_EXPR_NEST_MAX, > > _SC_LINE_MAX, > > _SC_RE_DUP_MAX, > > _SC_CHARCLASS_NAME_MAX, > > > _SC_2_VERSION, > > _SC_2_C_BIND, > > _SC_2_C_DEV, > > _SC_2_FORT_DEV, > > _SC_2_FORT_RUN, > > _SC_2_SW_DEV, > > _SC_2_LOCALEDEF, > > > _SC_PII, > > _SC_PII_XTI, > > _SC_PII_SOCKET, > > _SC_PII_INTERNET, > > _SC_PII_OSI, > > _SC_POLL, > > _SC_SELECT, > > _SC_UIO_MAXIOV, > > _SC_IOV_MAX = _SC_UIO_MAXIOV, > > _SC_PII_INTERNET_STREAM, > > _SC_PII_INTERNET_DGRAM, > > _SC_PII_OSI_COTS, > > _SC_PII_OSI_CLTS, > > _SC_PII_OSI_M, > > _SC_T_IOV_MAX, > > > > _SC_THREADS, > > _SC_THREAD_SAFE_FUNCTIONS, > > _SC_GETGR_R_SIZE_MAX, > > _SC_GETPW_R_SIZE_MAX, > > _SC_LOGIN_NAME_MAX, > > _SC_TTY_NAME_MAX, > > _SC_THREAD_DESTRUCTOR_ITERATIONS, > > _SC_THREAD_KEYS_MAX, > > _SC_THREAD_STACK_MIN, > > _SC_THREAD_THREADS_MAX, > > _SC_THREAD_ATTR_STACKADDR, > > _SC_THREAD_ATTR_STACKSIZE, > > _SC_THREAD_PRIORITY_SCHEDULING, > > _SC_THREAD_PRIO_INHERIT, > > _SC_THREAD_PRIO_PROTECT, > > _SC_THREAD_PROCESS_SHARED, > > > _SC_NPROCESSORS_CONF, > > _SC_NPROCESSORS_ONLN, > > _SC_PHYS_PAGES, > > _SC_AVPHYS_PAGES, > > _SC_ATEXIT_MAX, > > _SC_PASS_MAX, > > > _SC_XOPEN_VERSION, > > _SC_XOPEN_XCU_VERSION, > > _SC_XOPEN_UNIX, > > _SC_XOPEN_CRYPT, > > _SC_XOPEN_ENH_I18N, > > _SC_XOPEN_SHM, > > > _SC_2_CHAR_TERM, > > _SC_2_C_VERSION, > > _SC_2_UPE, > > > _SC_XOPEN_XPG2, > > _SC_XOPEN_XPG3, > > _SC_XOPEN_XPG4, > > > _SC_CHAR_BIT, > > _SC_CHAR_MAX, > > _SC_CHAR_MIN, > > _SC_INT_MAX, > > _SC_INT_MIN, > > _SC_LONG_BIT, > > _SC_WORD_BIT, > > _SC_MB_LEN_MAX, > > _SC_NZERO, > > _SC_SSIZE_MAX, > > _SC_SCHAR_MAX, > > _SC_SCHAR_MIN, > > _SC_SHRT_MAX, > > _SC_SHRT_MIN, > > _SC_UCHAR_MAX, > > _SC_UINT_MAX, > > _SC_ULONG_MAX, > > _SC_USHRT_MAX, > > > _SC_NL_ARGMAX, > > _SC_NL_LANGMAX, > > _SC_NL_MSGMAX, > > _SC_NL_NMAX, > > _SC_NL_SETMAX, > > _SC_NL_TEXTMAX, > > > _SC_XBS5_ILP32_OFF32, > > _SC_XBS5_ILP32_OFFBIG, > > _SC_XBS5_LP64_OFF64, > > _SC_XBS5_LPBIG_OFFBIG, > > > _SC_XOPEN_LEGACY, > > _SC_XOPEN_REALTIME, > > _SC_XOPEN_REALTIME_THREADS, > > > _SC_ADVISORY_INFO, > > _SC_BARRIERS, > > _SC_BASE, > > _SC_C_LANG_SUPPORT, > > _SC_C_LANG_SUPPORT_R, > > _SC_CLOCK_SELECTION, > > _SC_CPUTIME, > > _SC_THREAD_CPUTIME, > > _SC_DEVICE_IO, > > _SC_DEVICE_SPECIFIC, > > _SC_DEVICE_SPECIFIC_R, > > _SC_FD_MGMT, > > _SC_FIFO, > > _SC_PIPE, > > _SC_FILE_ATTRIBUTES, > > _SC_FILE_LOCKING, > > _SC_FILE_SYSTEM, > > _SC_MONOTONIC_CLOCK, > > _SC_MULTI_PROCESS, > > _SC_SINGLE_PROCESS, > > _SC_NETWORKING, > > _SC_READER_WRITER_LOCKS, > > _SC_SPIN_LOCKS, > > _SC_REGEXP, > > _SC_REGEX_VERSION, > > _SC_SHELL, > > _SC_SIGNALS, > > _SC_SPAWN, > > _SC_SPORADIC_SERVER, > > _SC_THREAD_SPORADIC_SERVER, > > _SC_SYSTEM_DATABASE, > > _SC_SYSTEM_DATABASE_R, > > _SC_TIMEOUTS, > > _SC_TYPED_MEMORY_OBJECTS, > > _SC_USER_GROUPS, > > _SC_USER_GROUPS_R, > > _SC_2_PBS, > > _SC_2_PBS_ACCOUNTING, > > _SC_2_PBS_LOCATE, > > _SC_2_PBS_MESSAGE, > > _SC_2_PBS_TRACK, > > _SC_SYMLOOP_MAX, > > _SC_STREAMS, > > _SC_2_PBS_CHECKPOINT, > > > _SC_V6_ILP32_OFF32, > > _SC_V6_ILP32_OFFBIG, > > _SC_V6_LP64_OFF64, > > _SC_V6_LPBIG_OFFBIG, > > > _SC_HOST_NAME_MAX, > > _SC_TRACE, > > _SC_TRACE_EVENT_FILTER, > > _SC_TRACE_INHERIT, > > _SC_TRACE_LOG, > > > _SC_LEVEL1_ICACHE_SIZE, > > _SC_LEVEL1_ICACHE_ASSOC, > > _SC_LEVEL1_ICACHE_LINESIZE, > > _SC_LEVEL1_DCACHE_SIZE, > > _SC_LEVEL1_DCACHE_ASSOC, > > _SC_LEVEL1_DCACHE_LINESIZE, > > _SC_LEVEL2_CACHE_SIZE, > > _SC_LEVEL2_CACHE_ASSOC, > > _SC_LEVEL2_CACHE_LINESIZE, > > _SC_LEVEL3_CACHE_SIZE, > > _SC_LEVEL3_CACHE_ASSOC, > > _SC_LEVEL3_CACHE_LINESIZE, > > _SC_LEVEL4_CACHE_SIZE, > > _SC_LEVEL4_CACHE_ASSOC, > > _SC_LEVEL4_CACHE_LINESIZE, > > > > _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, > > _SC_RAW_SOCKETS, > > > _SC_V7_ILP32_OFF32, > > _SC_V7_ILP32_OFFBIG, > > _SC_V7_LP64_OFF64, > > _SC_V7_LPBIG_OFFBIG, > > > _SC_SS_REPL_MAX, > > > _SC_TRACE_EVENT_NAME_MAX, > > _SC_TRACE_NAME_MAX, > > _SC_TRACE_SYS_MAX, > > _SC_TRACE_USER_EVENT_MAX, > > > _SC_XOPEN_STREAMS, > > > _SC_THREAD_ROBUST_PRIO_INHERIT, > > _SC_THREAD_ROBUST_PRIO_PROTECT > > }; > > >enum > { > _CS_PATH, > > > _CS_V6_WIDTH_RESTRICTED_ENVS, > > > > _CS_GNU_LIBC_VERSION, > > _CS_GNU_LIBPTHREAD_VERSION, > > > _CS_V5_WIDTH_RESTRICTED_ENVS, > > > > _CS_V7_WIDTH_RESTRICTED_ENVS, > > > > _CS_LFS_CFLAGS = 1000, > > _CS_LFS_LDFLAGS, > > _CS_LFS_LIBS, > > _CS_LFS_LINTFLAGS, > > _CS_LFS64_CFLAGS, > > _CS_LFS64_LDFLAGS, > > _CS_LFS64_LIBS, > > _CS_LFS64_LINTFLAGS, > > > _CS_XBS5_ILP32_OFF32_CFLAGS = 1100, > > _CS_XBS5_ILP32_OFF32_LDFLAGS, > > _CS_XBS5_ILP32_OFF32_LIBS, > > _CS_XBS5_ILP32_OFF32_LINTFLAGS, > > _CS_XBS5_ILP32_OFFBIG_CFLAGS, > > _CS_XBS5_ILP32_OFFBIG_LDFLAGS, > > _CS_XBS5_ILP32_OFFBIG_LIBS, > > _CS_XBS5_ILP32_OFFBIG_LINTFLAGS, > > _CS_XBS5_LP64_OFF64_CFLAGS, > > _CS_XBS5_LP64_OFF64_LDFLAGS, > > _CS_XBS5_LP64_OFF64_LIBS, > > _CS_XBS5_LP64_OFF64_LINTFLAGS, > > _CS_XBS5_LPBIG_OFFBIG_CFLAGS, > > _CS_XBS5_LPBIG_OFFBIG_LDFLAGS, > > _CS_XBS5_LPBIG_OFFBIG_LIBS, > > _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS, > > > _CS_POSIX_V6_ILP32_OFF32_CFLAGS, > > _CS_POSIX_V6_ILP32_OFF32_LDFLAGS, > > _CS_POSIX_V6_ILP32_OFF32_LIBS, > > _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS, > > _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS, > > _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS, > > _CS_POSIX_V6_ILP32_OFFBIG_LIBS, > > _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS, > > _CS_POSIX_V6_LP64_OFF64_CFLAGS, > > _CS_POSIX_V6_LP64_OFF64_LDFLAGS, > > _CS_POSIX_V6_LP64_OFF64_LIBS, > > _CS_POSIX_V6_LP64_OFF64_LINTFLAGS, > > _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS, > > _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS, > > _CS_POSIX_V6_LPBIG_OFFBIG_LIBS, > > _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS, > > > _CS_POSIX_V7_ILP32_OFF32_CFLAGS, > > _CS_POSIX_V7_ILP32_OFF32_LDFLAGS, > > _CS_POSIX_V7_ILP32_OFF32_LIBS, > > _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS, > > _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS, > > _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS, > > _CS_POSIX_V7_ILP32_OFFBIG_LIBS, > > _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS, > > _CS_POSIX_V7_LP64_OFF64_CFLAGS, > > _CS_POSIX_V7_LP64_OFF64_LDFLAGS, > > _CS_POSIX_V7_LP64_OFF64_LIBS, > > _CS_POSIX_V7_LP64_OFF64_LINTFLAGS, > > _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS, > > _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS, > > _CS_POSIX_V7_LPBIG_OFFBIG_LIBS, > > _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS, > > > _CS_V6_ENV, > > _CS_V7_ENV > > }; ># 610 "../posix/unistd.h" 2 > > >extern long int pathconf (const char *__path, int __name) > __attribute__ ((__nothrow__ )) ; > > >extern long int fpathconf (int __fd, int __name) __attribute__ ((__nothrow__ )); > > >extern long int sysconf (int __name) __attribute__ ((__nothrow__ )); > > > >extern size_t confstr (int __name, char *__buf, size_t __len) __attribute__ ((__nothrow__ )); > > > > >extern __pid_t getpid (void) __attribute__ ((__nothrow__ )); > > >extern __pid_t getppid (void) __attribute__ ((__nothrow__ )); > > >extern __pid_t getpgrp (void) __attribute__ ((__nothrow__ )); > > >extern __pid_t __getpgid (__pid_t __pid) __attribute__ ((__nothrow__ )); > >extern __pid_t getpgid (__pid_t __pid) __attribute__ ((__nothrow__ )); > > > > > > >extern int setpgid (__pid_t __pid, __pid_t __pgid) __attribute__ ((__nothrow__ )); ># 660 "../posix/unistd.h" >extern int setpgrp (void) __attribute__ ((__nothrow__ )); > > > > > > >extern __pid_t setsid (void) __attribute__ ((__nothrow__ )); > > > >extern __pid_t getsid (__pid_t __pid) __attribute__ ((__nothrow__ )); > > > >extern __uid_t getuid (void) __attribute__ ((__nothrow__ )); > > >extern __uid_t geteuid (void) __attribute__ ((__nothrow__ )); > > >extern __gid_t getgid (void) __attribute__ ((__nothrow__ )); > > >extern __gid_t getegid (void) __attribute__ ((__nothrow__ )); > > > > >extern int getgroups (int __size, __gid_t __list[]) __attribute__ ((__nothrow__ )) ; > > > >extern int group_member (__gid_t __gid) __attribute__ ((__nothrow__ )); > > > > > > >extern int setuid (__uid_t __uid) __attribute__ ((__nothrow__ )) ; > > > > >extern int setreuid (__uid_t __ruid, __uid_t __euid) __attribute__ ((__nothrow__ )) ; > > > > >extern int seteuid (__uid_t __uid) __attribute__ ((__nothrow__ )) ; > > > > > > >extern int setgid (__gid_t __gid) __attribute__ ((__nothrow__ )) ; > > > > >extern int setregid (__gid_t __rgid, __gid_t __egid) __attribute__ ((__nothrow__ )) ; > > > > >extern int setegid (__gid_t __gid) __attribute__ ((__nothrow__ )) ; > > > > > >extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid) > __attribute__ ((__nothrow__ )); > > > >extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid) > __attribute__ ((__nothrow__ )); > > > >extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid) > __attribute__ ((__nothrow__ )) ; > > > >extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern __pid_t fork (void) __attribute__ ((__nothrow__)); > > > > > > > >extern __pid_t vfork (void) __attribute__ ((__nothrow__ )); > > > > > >extern char *ttyname (int __fd) __attribute__ ((__nothrow__ )); > > > >extern int ttyname_r (int __fd, char *__buf, size_t __buflen) > __attribute__ ((__nothrow__ )) ; > > > >extern int isatty (int __fd) __attribute__ ((__nothrow__ )); > > > > > >extern int ttyslot (void) __attribute__ ((__nothrow__ )); > > > > >extern int link (const char *__from, const char *__to) > __attribute__ ((__nothrow__ )) ; > > > > >extern int linkat (int __fromfd, const char *__from, int __tofd, > const char *__to, int __flags) > __attribute__ ((__nothrow__ )) ; > > > > >extern int symlink (const char *__from, const char *__to) > __attribute__ ((__nothrow__ )) ; > > > > >extern ssize_t readlink (const char *__restrict __path, > char *__restrict __buf, size_t __len) > __attribute__ ((__nothrow__ )) ; > > > > >extern int symlinkat (const char *__from, int __tofd, > const char *__to) __attribute__ ((__nothrow__ )) ; > > >extern ssize_t readlinkat (int __fd, const char *__restrict __path, > char *__restrict __buf, size_t __len) > __attribute__ ((__nothrow__ )) ; > > > >extern int unlink (const char *__name) __attribute__ ((__nothrow__ )) ; > > > >extern int unlinkat (int __fd, const char *__name, int __flag) > __attribute__ ((__nothrow__ )) ; > > > >extern int rmdir (const char *__path) __attribute__ ((__nothrow__ )) ; > > > >extern __pid_t tcgetpgrp (int __fd) __attribute__ ((__nothrow__ )); > > >extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __attribute__ ((__nothrow__ )); > > > > > > >extern char *getlogin (void); > > > > > > > >extern int getlogin_r (char *__name, size_t __name_len) ; > > > > >extern int setlogin (const char *__name) __attribute__ ((__nothrow__ )) ; ># 871 "../posix/unistd.h" ># 1 "../include/getopt.h" 1 > > > ># 1 "../posix/getopt.h" 1 ># 57 "../posix/getopt.h" >extern char *optarg; ># 71 "../posix/getopt.h" >extern int optind; > > > > >extern int opterr; > > > >extern int optopt; ># 150 "../posix/getopt.h" >extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) > __attribute__ ((__nothrow__ )); ># 5 "../include/getopt.h" 2 ># 872 "../posix/unistd.h" 2 > > > > > > > >extern int gethostname (char *__name, size_t __len) __attribute__ ((__nothrow__ )) ; > > > > > > >extern int sethostname (const char *__name, size_t __len) > __attribute__ ((__nothrow__ )) ; > > > >extern int sethostid (long int __id) __attribute__ ((__nothrow__ )) ; > > > > > >extern int getdomainname (char *__name, size_t __len) > __attribute__ ((__nothrow__ )) ; >extern int setdomainname (const char *__name, size_t __len) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int vhangup (void) __attribute__ ((__nothrow__ )); > > >extern int revoke (const char *__file) __attribute__ ((__nothrow__ )) ; > > > > > > > >extern int profil (unsigned short int *__sample_buffer, size_t __size, > size_t __offset, unsigned int __scale) > __attribute__ ((__nothrow__ )) ; > > > > > >extern int acct (const char *__name) __attribute__ ((__nothrow__ )); > > > >extern char *getusershell (void) __attribute__ ((__nothrow__ )); >extern void endusershell (void) __attribute__ ((__nothrow__ )); >extern void setusershell (void) __attribute__ ((__nothrow__ )); > > > > > >extern int daemon (int __nochdir, int __noclose) __attribute__ ((__nothrow__ )) ; > > > > > > >extern int chroot (const char *__path) __attribute__ ((__nothrow__ )) ; > > > >extern char *getpass (const char *__prompt) ; > > > > > > > >extern int fsync (int __fd); > > > > > >extern int syncfs (int __fd) __attribute__ ((__nothrow__ )); > > > > > > >extern long int gethostid (void); > > >extern void sync (void) __attribute__ ((__nothrow__ )); > > > > > >extern int getpagesize (void) __attribute__ ((__nothrow__ )) __attribute__ ((__const__)); > > > > >extern int getdtablesize (void) __attribute__ ((__nothrow__ )); ># 993 "../posix/unistd.h" >extern int truncate (const char *__file, __off_t __length) > __attribute__ ((__nothrow__ )) ; ># 1005 "../posix/unistd.h" >extern int truncate64 (const char *__file, __off64_t __length) > __attribute__ ((__nothrow__ )) ; ># 1016 "../posix/unistd.h" >extern int ftruncate (int __fd, __off_t __length) __attribute__ ((__nothrow__ )) ; ># 1026 "../posix/unistd.h" >extern int ftruncate64 (int __fd, __off64_t __length) __attribute__ ((__nothrow__ )) ; ># 1037 "../posix/unistd.h" >extern int brk (void *__addr) __attribute__ ((__nothrow__ )) ; > > > > > >extern void *sbrk (intptr_t __delta) __attribute__ ((__nothrow__ )); ># 1058 "../posix/unistd.h" >extern long int syscall (long int __sysno, ...) __attribute__ ((__nothrow__ )); ># 1081 "../posix/unistd.h" >extern int lockf (int __fd, int __cmd, __off_t __len) ; ># 1091 "../posix/unistd.h" >extern int lockf64 (int __fd, int __cmd, __off64_t __len) ; ># 1112 "../posix/unistd.h" >extern int fdatasync (int __fildes); > > > > > > > >extern char *crypt (const char *__key, const char *__salt) > __attribute__ ((__nothrow__ )) ; > > > >extern void encrypt (char *__glibc_block, int __edflag) > __attribute__ ((__nothrow__ )) ; > > > > > > >extern void swab (const void *__restrict __from, void *__restrict __to, > ssize_t __n) __attribute__ ((__nothrow__ )) ; ># 1151 "../posix/unistd.h" > ># 3 "../include/unistd.h" 2 > > > > > > > > > > > > > > > > > > > > > >extern int __access (const char *__name, int __type); >extern int __euidaccess (const char *__name, int __type); >extern __off64_t __lseek64 (int __fd, __off64_t __offset, int __whence); >extern __off_t __lseek (int __fd, __off_t __offset, int __whence); > >extern __off_t __libc_lseek (int __fd, __off_t __offset, int __whence); >extern __off64_t __libc_lseek64 (int __fd, __off64_t __offset, int __whence); >extern ssize_t __pread (int __fd, void *__buf, size_t __nbytes, > __off_t __offset); >extern ssize_t __libc_pread (int __fd, void *__buf, size_t __nbytes, > __off_t __offset); >extern ssize_t __pread64 (int __fd, void *__buf, size_t __nbytes, > __off64_t __offset); >extern ssize_t __libc_pread64 (int __fd, void *__buf, size_t __nbytes, > __off64_t __offset); >extern ssize_t __pwrite (int __fd, const void *__buf, size_t __n, > __off_t __offset); >extern ssize_t __libc_pwrite (int __fd, const void *__buf, size_t __n, > __off_t __offset); >extern ssize_t __pwrite64 (int __fd, const void *__buf, size_t __n, > __off64_t __offset); > >extern ssize_t __libc_pwrite64 (int __fd, const void *__buf, size_t __n, > __off64_t __offset) __attribute__ ((visibility ("hidden"))); >extern ssize_t __libc_read (int __fd, void *__buf, size_t __n); > >extern ssize_t __libc_write (int __fd, const void *__buf, size_t __n); > >extern int __pipe (int __pipedes[2]); > >extern int __pipe2 (int __pipedes[2], int __flags); >extern unsigned int __sleep (unsigned int __seconds); >extern int __chown (const char *__file, > __uid_t __owner, __gid_t __group); > >extern int __fchown (int __fd, > __uid_t __owner, __gid_t __group); >extern int __lchown (const char *__file, __uid_t __owner, > __gid_t __group); >extern int __chdir (const char *__path); >extern int __fchdir (int __fd); >extern char *__getcwd (char *__buf, size_t __size); >extern int __rmdir (const char *__path); >extern int __execvpe (const char *file, char *const argv[], > char *const envp[]); > > > > > > > >char *__canonicalize_directory_name_internal (const char *__thisdir, > char *__buf, > size_t __size) __attribute__ ((visibility ("hidden"))); > >extern int __dup (int __fd); >extern int __dup2 (int __fd, int __fd2); > >extern int __dup3 (int __fd, int __fd2, int flags); > >extern int __execve (const char *__path, char *const __argv[], > char *const __envp[]); >extern long int __pathconf (const char *__path, int __name); >extern long int __fpathconf (int __fd, int __name); >extern long int __sysconf (int __name); > >extern __pid_t __getpid (void); > >extern __pid_t __getppid (void); >extern __pid_t __setsid (void); >extern __uid_t __getuid (void); >extern __uid_t __geteuid (void); >extern __gid_t __getgid (void); >extern __gid_t __getegid (void); >extern int __getgroups (int __size, __gid_t __list[]); > >extern int __group_member (__gid_t __gid); >extern int __setuid (__uid_t __uid); >extern int __setreuid (__uid_t __ruid, __uid_t __euid); >extern int __setgid (__gid_t __gid); >extern int __setpgid (__pid_t __pid, __pid_t __pgid); > >extern int __setregid (__gid_t __rgid, __gid_t __egid); >extern int __getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid); >extern int __getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid); >extern int __setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid); >extern int __setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid); > > > > >extern __pid_t __vfork (void); > >extern int __ttyname_r (int __fd, char *__buf, size_t __buflen); >extern int __isatty (int __fd); >extern int __link (const char *__from, const char *__to); >extern int __symlink (const char *__from, const char *__to); >extern ssize_t __readlink (const char *__path, char *__buf, size_t __len); >extern int __unlink (const char *__name); >extern int __gethostname (char *__name, size_t __len); >extern int __profil (unsigned short int *__sample_buffer, size_t __size, > size_t __offset, unsigned int __scale); >extern int __getdtablesize (void); >extern int __brk (void *__addr); >extern int __close (int __fd); > >extern int __libc_close (int __fd); >extern ssize_t __read (int __fd, void *__buf, size_t __nbytes); > >extern ssize_t __write (int __fd, const void *__buf, size_t __n); > >extern __pid_t __fork (void); > >extern int __getpagesize (void) __attribute__ ((__const__)); > >extern int __ftruncate (int __fd, __off_t __length); >extern int __ftruncate64 (int __fd, __off64_t __length); >extern int __truncate (const char *path, __off_t __length); >extern void *__sbrk (intptr_t __delta); > > > > > > > > >extern int __libc_enable_secure __attribute__ ((section (".data.rel.ro"))); >extern int __libc_enable_secure_decided; > > > > > > > >extern void __libc_check_standard_fds (void); > > > >extern __pid_t __libc_fork (void); > > > >extern int __libc_pause (void); > >extern int __pause_nocancel (void) __attribute__ ((visibility ("hidden"))); > >extern int __have_sock_cloexec __attribute__ ((visibility ("hidden"))); >extern int __have_pipe2 __attribute__ ((visibility ("hidden"))); >extern int __have_dup3 __attribute__ ((visibility ("hidden"))); > >extern int __getlogin_r_loginuid (char *name, size_t namesize) > __attribute__ ((visibility ("hidden"))); > > ># 25 "allocatestack.c" 2 > ># 1 "../include/sys/param.h" 1 ># 27 "allocatestack.c" 2 ># 1 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 1 ># 21 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" ># 1 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 1 ># 19 "../sysdeps/unix/sysv/linux/dl-sysdep.h" ># 1 "../sysdeps/generic/dl-sysdep.h" 1 ># 20 "../sysdeps/unix/sysv/linux/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/dl-sysdep.h" >extern int _dl_discover_osversion (void) __attribute__ ((visibility ("hidden"))); ># 22 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" 2 ># 31 "../sysdeps/unix/sysv/linux/i386/dl-sysdep.h" >extern void _dl_sysinfo_int80 (void) __attribute__ ((visibility ("hidden"))); ># 28 "allocatestack.c" 2 ># 1 "../sysdeps/i386/dl-tls.h" 1 ># 21 "../sysdeps/i386/dl-tls.h" >typedef struct dl_tls_index >{ > unsigned long int ti_module; > unsigned long int ti_offset; >} tls_index; > > > > >extern void *___tls_get_addr (tls_index *ti) > __attribute__ ((__regparm__ (1))); >extern void *___tls_get_addr_internal (tls_index *ti) > __attribute__ ((__regparm__ (1))) __attribute__ ((visibility ("hidden"))); ># 29 "allocatestack.c" 2 > ># 1 "../include/list.h" 1 ># 57 "../include/list.h" >static inline void >list_add (list_t *newp, list_t *head) >{ > newp->next = head->next; > newp->prev = head; > head->next->prev = newp; > __asm ("" ::: "memory"); > head->next = newp; >} > > > >static inline void >list_del (list_t *elem) >{ > elem->next->prev = elem->prev; > elem->prev->next = elem->next; >} > > > >static inline void >list_splice (list_t *add, list_t *head) >{ > > if (add != add->next) > { > add->next->prev = head; > add->prev->next = head->next; > head->next->prev = add->prev; > head->next = add->next; > } >} ># 31 "allocatestack.c" 2 > ># 1 "../sysdeps/unix/sysv/linux/kernel-features.h" 1 ># 33 "allocatestack.c" 2 ># 1 "./stack-aliasing.h" 1 ># 34 "allocatestack.c" 2 ># 105 "allocatestack.c" >static size_t stack_cache_maxsize = 40 * 1024 * 1024; >static size_t stack_cache_actsize; > > >static int stack_cache_lock = (0); > > >static list_t stack_cache = { &(stack_cache), &(stack_cache) }; > > >static list_t stack_used = { &(stack_used), &(stack_used) }; > > > > >static uintptr_t in_flight_stack; > > > >list_t __stack_user __attribute__ ((nocommon)); >extern __typeof (__stack_user) __EI___stack_user __asm__("" "__stack_user"); extern __typeof (__stack_user) __EI___stack_user __attribute__((alias ("" "__GI___stack_user"))); ># 137 "allocatestack.c" >static void >stack_list_del (list_t *elem) >{ > in_flight_stack = (uintptr_t) elem; > > __asm ("" ::: "memory"); > > list_del (elem); > > __asm ("" ::: "memory"); > > in_flight_stack = 0; >} > > >static void >stack_list_add (list_t *elem, list_t *list) >{ > in_flight_stack = (uintptr_t) elem | 1; > > __asm ("" ::: "memory"); > > list_add (elem, list); > > __asm ("" ::: "memory"); > > in_flight_stack = 0; >} ># 173 "allocatestack.c" >static struct pthread * >get_cached_stack (size_t *sizep, void **memp) >{ > size_t size = *sizep; > struct pthread *result = ((void *)0); > list_t *entry; > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > > > > > > > for (entry = (&stack_cache)->next; entry != (&stack_cache); entry = entry->next) > { > struct pthread *curr; > > curr = ((struct pthread *) ((char *) (entry) - (unsigned long) (&((struct pthread *) 0)->list))); > if (((curr)->tid <= 0) && curr->stackblock_size >= size) > { > if (curr->stackblock_size == size) > { > result = curr; > break; > } > > if (result == ((void *)0) > || result->stackblock_size > curr->stackblock_size) > result = curr; > } > } > > if (__builtin_expect (result == ((void *)0), 0) > > > || __builtin_expect (result->stackblock_size > 4 * size, 0)) > { > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > > return ((void *)0); > } > > > result->setxid_futex = -1; > > > stack_list_del (&result->list); > > > stack_list_add (&result->list, &stack_used); > > > stack_cache_actsize -= result->stackblock_size; > > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > > > *sizep = result->stackblock_size; > *memp = result->stackblock; > > > result->cancelhandling = 0; > result->cleanup = ((void *)0); > > > result->nextevent = ((void *)0); > > > dtv_t *dtv = (((tcbhead_t *) ((result)))->dtv); > for (size_t cnt = 0; cnt < dtv[-1].counter; ++cnt) > if (! dtv[1 + cnt].pointer.is_static > && dtv[1 + cnt].pointer.val != ((void *) -1l)) > free (dtv[1 + cnt].pointer.val); > memset (dtv, '\0', (dtv[-1].counter + 1) * sizeof (dtv_t)); > > > _dl_allocate_tls_init ((result)); > > return result; >} > > > >void >__free_stacks (size_t limit) >{ > > > list_t *entry; > list_t *prev; > > > for (entry = (&stack_cache)->prev, prev = entry->prev; entry != (&stack_cache); entry = prev, prev = entry->prev) > { > struct pthread *curr; > > curr = ((struct pthread *) ((char *) (entry) - (unsigned long) (&((struct pthread *) 0)->list))); > if (((curr)->tid <= 0)) > { > > stack_list_del (entry); > > > stack_cache_actsize -= curr->stackblock_size; > > > _dl_deallocate_tls ((curr), 0); > > > > if (munmap (curr->stackblock, curr->stackblock_size) != 0) > abort (); > > > if (stack_cache_actsize <= limit) > break; > } > } >} > > > > >static inline void >__attribute ((always_inline)) >queue_stack (struct pthread *stack) >{ > > > > stack_list_add (&stack->list, &stack_cache); > > stack_cache_actsize += stack->stackblock_size; > if (__builtin_expect ((stack_cache_actsize > stack_cache_maxsize), 0)) > __free_stacks (stack_cache_maxsize); >} > > >static int >__attribute__ ((regparm (3), stdcall)) >change_stack_perm (struct pthread *pd > > > > ) >{ > > > > > > > void *stack = pd->stackblock + pd->guardsize; > size_t len = pd->stackblock_size - pd->guardsize; > > > > > > > if (mprotect (stack, len, 0x1 | 0x2 | 0x4) != 0) > return errno; > > return 0; >} > > > > > > >static int >allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, > void **stack) >{ > struct pthread *pd; > size_t size; > size_t pagesize_m1 = __getpagesize () - 1; > void *stacktop; > > ((((((pagesize_m1 + 1) - 1) & (pagesize_m1 + 1)) == 0)) ? (void) (0) : __assert_fail ("((((pagesize_m1 + 1) - 1) & (pagesize_m1 + 1)) == 0)", "allocatestack.c", 357, __PRETTY_FUNCTION__)); > ((64 >= 16) ? (void) (0) : __assert_fail ("64 >= 16", "allocatestack.c", 358, __PRETTY_FUNCTION__)); > > > > if (attr->stacksize != 0) > size = attr->stacksize; > else > { > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (__default_pthread_attr_lock) : "0" (0), "1" (1), "m" (__default_pthread_attr_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (__default_pthread_attr_lock), "=&d" (ignore3) : "1" (1), "m" (__default_pthread_attr_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > size = __default_pthread_attr.stacksize; > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (__default_pthread_attr_lock), "=&a" (ignore) : "m" (__default_pthread_attr_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (__default_pthread_attr_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (__default_pthread_attr_lock), "g" ((int) (0)) : "memory"); } }); > } > > > if (__builtin_expect ((attr->flags & 0x0008), 0)) > { > uintptr_t adj; > > > > if (attr->stacksize != 0 > && attr->stacksize < (__static_tls_size + 2048)) > return 22; > > > > adj = ((uintptr_t) attr->stackaddr - sizeof (struct pthread)) > & __static_tls_align_m1; > ((size > adj + sizeof (struct pthread)) ? (void) (0) : __assert_fail ("size > adj + sizeof (struct pthread)", "allocatestack.c", 386, __PRETTY_FUNCTION__)); ># 398 "allocatestack.c" > pd = (struct pthread *) ((uintptr_t) attr->stackaddr > - sizeof (struct pthread) - adj); > > > > > > > > memset (pd, '\0', sizeof (struct pthread)); > > > pd->specific[0] = pd->specific_1stblock; > > > pd->stackblock = (char *) attr->stackaddr - size; > pd->stackblock_size = size; > > > > pd->user_stack = 1; > > > pd->header.multiple_threads = 1; ># 434 "allocatestack.c" > ((pd)->header.sysinfo) = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.sysinfo) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, header.sysinfo))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, header.sysinfo))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, header.sysinfo)), "i" (__builtin_offsetof (struct pthread, header.sysinfo) + 4)); } __value; }); > > > > pd->pid = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->pid) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, pid))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, pid))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, pid)), "i" (__builtin_offsetof (struct pthread, pid) + 4)); } __value; }); > > > pd->setxid_futex = -1; > > > if (_dl_allocate_tls ((pd)) == ((void *)0)) > { > > ((errno == 12) ? (void) (0) : __assert_fail ("errno == 12", "allocatestack.c", 447, __PRETTY_FUNCTION__)); > return errno; > } > > > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > > list_add (&pd->list, &__stack_user); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > } > else > { > > size_t guardsize; > size_t reqsize; > void *mem; > const int prot = (0x1 | 0x2 > | ((_rtld_global._dl_stack_flags & (1 << 0)) ? 0x4 : 0)); ># 478 "allocatestack.c" > size &= ~__static_tls_align_m1; > ((size != 0) ? (void) (0) : __assert_fail ("size != 0", "allocatestack.c", 479, __PRETTY_FUNCTION__)); > > > > guardsize = (attr->guardsize + pagesize_m1) & ~pagesize_m1; > if (__builtin_expect (size < ((guardsize + __static_tls_size > + 2048 + pagesize_m1) > & ~pagesize_m1), > 0)) > > return 22; > > > reqsize = size; > pd = get_cached_stack (&size, &mem); > if (pd == ((void *)0)) > { ># 505 "allocatestack.c" > mem = mmap (((void *)0), size, prot, > 0x02 | 0x20 | 0x20000, -1, 0); > > if (__builtin_expect ((mem == ((void *) -1)), 0)) > return errno; > > > > ((mem != ((void *)0)) ? (void) (0) : __assert_fail ("mem != ((void *)0)", "allocatestack.c", 513, __PRETTY_FUNCTION__)); ># 540 "allocatestack.c" > pd = (struct pthread *) ((char *) mem + size - 0) - 1; ># 549 "allocatestack.c" > pd->stackblock = mem; > pd->stackblock_size = size; > > > > > pd->specific[0] = pd->specific_1stblock; > > > pd->header.multiple_threads = 1; ># 571 "allocatestack.c" > ((pd)->header.sysinfo) = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.sysinfo) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, header.sysinfo))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, header.sysinfo))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, header.sysinfo)), "i" (__builtin_offsetof (struct pthread, header.sysinfo) + 4)); } __value; }); > > > > pd->setxid_futex = -1; > > > pd->pid = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->pid) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, pid))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, pid))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, pid)), "i" (__builtin_offsetof (struct pthread, pid) + 4)); } __value; }); > > > if (_dl_allocate_tls ((pd)) == ((void *)0)) > { > > ((errno == 12) ? (void) (0) : __assert_fail ("errno == 12", "allocatestack.c", 584, __PRETTY_FUNCTION__)); > > > (void) munmap (mem, size); > > return errno; > } > > > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > > stack_list_add (&pd->list, &stack_used); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > > > > > > > if (__builtin_expect ((_rtld_global._dl_stack_flags & (1 << 0)) != 0 > && (prot & 0x4) == 0, 0)) > { > int err = change_stack_perm (pd > > > > ); > if (err != 0) > { > > (void) munmap (mem, size); > > return err; > } > } ># 630 "allocatestack.c" > } > > > if (__builtin_expect ((guardsize > pd->guardsize), 0)) > { > > > > char *guard = mem; > > > > if (mprotect (guard, guardsize, 0x0) != 0) > { > mprot_error: > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > > stack_list_del (&pd->list); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > > > _dl_deallocate_tls ((pd), 0); > > > > > > > (void) munmap (mem, size); > > return errno; > } > > pd->guardsize = guardsize; > } > else if (__builtin_expect (pd->guardsize - guardsize > size - reqsize, > 0)) > { ># 685 "allocatestack.c" > if (mprotect ((char *) mem + guardsize, pd->guardsize - guardsize, > prot) != 0) > goto mprot_error; > > > > > > > pd->guardsize = guardsize; > } > > > > pd->reported_guardsize = guardsize; > } > > > > pd->lock = (0); > > > > > pd->robust_head.futex_offset = (__builtin_offsetof (pthread_mutex_t, __data.__lock) > - __builtin_offsetof (pthread_mutex_t, __data.__list.__next) > ); > pd->robust_head.list_op_pending = ((void *)0); > > > > pd->robust_head.list = &pd->robust_head; > > > *pdp = pd; > > > > stacktop = ((char *) (pd + 1) - __static_tls_size); ># 732 "allocatestack.c" > *stack = stacktop; > > > > > > return 0; >} > > >void >__attribute__ ((regparm (3), stdcall)) >__deallocate_stack (struct pthread *pd) >{ > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > > > stack_list_del (&pd->list); > > > > > > if (__builtin_expect ((! pd->user_stack), 1)) > (void) queue_stack (pd); > else > > _dl_deallocate_tls ((pd), 0); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); >} > > >int >__attribute__ ((regparm (3), stdcall)) >__make_stacks_executable (void **stack_endp) >{ > > int err = _dl_make_stack_executable (stack_endp); > if (err != 0) > return err; > > > > > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > list_t *runp; > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > { > err = change_stack_perm (((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))) > > > > ); > if (err != 0) > break; > } > > > > > if (err == 0) > for (runp = (&stack_cache)->next; runp != (&stack_cache); runp = runp->next) > { > err = change_stack_perm (((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))) > > > > ); > if (err != 0) > break; > } > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > > return err; >} > > > > > > >void >__reclaim_stacks (void) >{ > struct pthread *self = (struct pthread *) ({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;}); > > > > > > if (in_flight_stack != 0) > { > _Bool add_p = in_flight_stack & 1; > list_t *elem = (list_t *) (in_flight_stack & ~(uintptr_t) 1); > > if (add_p) > { > > > > list_t *l = ((void *)0); > > if (stack_used.next->prev != &stack_used) > l = &stack_used; > else if (stack_cache.next->prev != &stack_cache) > l = &stack_cache; > > if (l != ((void *)0)) > { > ((l->next->prev == elem) ? (void) (0) : __assert_fail ("l->next->prev == elem", "allocatestack.c", 846, __PRETTY_FUNCTION__)); > elem->next = l->next; > elem->prev = l; > l->next = elem; > } > } > else > { > > elem->next->prev = elem->prev; > elem->prev->next = elem->next; > } > } > > > list_t *runp; > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > { > struct pthread *curp = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (curp != self) > { > > curp->tid = 0; > > > curp->pid = self->pid; > > > stack_cache_actsize += curp->stackblock_size; > > if (curp->specific_used) > { > > memset (curp->specific_1stblock, '\0', > sizeof (curp->specific_1stblock)); > > curp->specific_used = 0; > > for (size_t cnt = 1; cnt < ((1024 + 32 - 1) / 32); ++cnt) > if (curp->specific[cnt] != ((void *)0)) > { > memset (curp->specific[cnt], '\0', > sizeof (curp->specific_1stblock)); > > > > curp->specific_used = 1; > } > } > } > } > > > for (runp = (&stack_cache)->next; runp != (&stack_cache); runp = runp->next) > { > struct pthread *curp = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > curp->pid = self->pid; > } > > > list_splice (&stack_used, &stack_cache); > > > > > stack_list_del (&self->list); > > > (&stack_used)->next = (&stack_used)->prev = (&stack_used); > (&__stack_user)->next = (&__stack_user)->prev = (&__stack_user); > > if (__builtin_expect ((({ __typeof (self->user_stack) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, user_stack))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, user_stack))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, user_stack)), "i" (__builtin_offsetof (struct pthread, user_stack) + 4)); } __value; })), 0)) > list_add (&self->list, &__stack_user); > else > list_add (&self->list, &stack_used); > > > __nptl_nthreads = 1; > > in_flight_stack = 0; > > > stack_cache_lock = (0); > __default_pthread_attr_lock = (0); >} ># 981 "allocatestack.c" >static void >__attribute__ ((regparm (3), stdcall)) >setxid_mark_thread (struct xid_command *cmdp, struct pthread *t) >{ > int ch; > > > if (t->setxid_futex == -1 > && ! (! __sync_bool_compare_and_swap (&t->setxid_futex, -1, -2))) > do > ({ int __status; register __typeof (-2) _val asm ("edx") = (-2); __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&t->setxid_futex), "S" (((void *)0)), "c" ((((0) | 128) ^ (0))), "d" (_val), "i" (__builtin_offsetof (tcbhead_t, sysinfo)) : "memory"); __status; }); > while (t->setxid_futex == -2); > > > t->setxid_futex = 0; > > do > { > ch = t->cancelhandling; > > > if ((ch & (0x01 << 4)) != 0) > { > > > if ((ch & (0x01 << 6)) == 0) > { > t->setxid_futex = 1; > ({ int __status; register __typeof (1) _nr asm ("edx") = (1); ; __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&t->setxid_futex), "c" ((((1) | 128) ^ (0))), "d" (_nr), "i" (0) , "i" (__builtin_offsetof (tcbhead_t, sysinfo))); __status; }); > } > return; > } > } > while ((! __sync_bool_compare_and_swap (&t->cancelhandling, ch, ch | (0x01 << 6))) > ); >} > > >static void >__attribute__ ((regparm (3), stdcall)) >setxid_unmark_thread (struct xid_command *cmdp, struct pthread *t) >{ > int ch; > > do > { > ch = t->cancelhandling; > if ((ch & (0x01 << 6)) == 0) > return; > } > while ((! __sync_bool_compare_and_swap (&t->cancelhandling, ch, ch & ~(0x01 << 6))) > ); > > > t->setxid_futex = 1; > ({ int __status; register __typeof (1) _nr asm ("edx") = (1); ; __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&t->setxid_futex), "c" ((((1) | 128) ^ (0))), "d" (_nr), "i" (0) , "i" (__builtin_offsetof (tcbhead_t, sysinfo))); __status; }); >} > > >static int >__attribute__ ((regparm (3), stdcall)) >setxid_signal_thread (struct xid_command *cmdp, struct pthread *t) >{ > if ((t->cancelhandling & (0x01 << 6)) == 0) > return 0; > > int val; > do { } while (0); > val = ({ register unsigned int resultvar; asm volatile ( "xchgl %%ebx, %%edi\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "xchgl %%edi, %%ebx\n\t" : "=a" (resultvar) : "i" (270) , "D" (({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->pid) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, pid))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, pid))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, pid)), "i" (__builtin_offsetof (struct pthread, pid) + 4)); } __value; })), "c" (t->tid), "d" ((32 + 1)) : "memory", "cc"); (int) resultvar; }) > ; > > > if (!((unsigned int) (val) >= 0xfffff001u)) > { > do { if (sizeof (*&cmdp->cntr) == 1) __asm __volatile ("lock;" "incb %b0" : "=m" (*&cmdp->cntr) : "m" (*&cmdp->cntr), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else if (sizeof (*&cmdp->cntr) == 2) __asm __volatile ("lock;" "incw %w0" : "=m" (*&cmdp->cntr) : "m" (*&cmdp->cntr), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else if (sizeof (*&cmdp->cntr) == 4) __asm __volatile ("lock;" "incl %0" : "=m" (*&cmdp->cntr) : "m" (*&cmdp->cntr), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else { __typeof (&cmdp->cntr) __memp = (&cmdp->cntr); __typeof (*&cmdp->cntr) __oldval = *__memp; __typeof (*&cmdp->cntr) __tmpval; do __tmpval = __oldval; while ((__oldval = ({ __typeof (*__memp) ret = *(__memp); abort (); ret = (__oldval + 1); ret = (__oldval); ret; })) == __tmpval); } } while (0); > return 1; > } > else > return 0; >} > > > > > >void >__attribute__ ((visibility ("hidden"))) >__nptl_setxid_error (struct xid_command *cmdp, int error) >{ > do > { > int olderror = cmdp->error; > if (olderror == error) > break; > if (olderror != -1) > > abort (); > } > while ((! __sync_bool_compare_and_swap (&cmdp->error, -1, error))); >} > >int >__attribute__ ((visibility ("hidden"))) >__nptl_setxid (struct xid_command *cmdp) >{ > int signalled; > int result; > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > __xidcmd = cmdp; > cmdp->cntr = 0; > cmdp->error = -1; > > struct pthread *self = ({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;}); > > > list_t *runp; > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self) > continue; > > setxid_mark_thread (cmdp, t); > } > > > for (runp = (&__stack_user)->next; runp != (&__stack_user); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self) > continue; > > setxid_mark_thread (cmdp, t); > } > > > > > do > { > signalled = 0; > > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self) > continue; > > signalled += setxid_signal_thread (cmdp, t); > } > > for (runp = (&__stack_user)->next; runp != (&__stack_user); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self) > continue; > > signalled += setxid_signal_thread (cmdp, t); > } > > int cur = cmdp->cntr; > while (cur != 0) > { > ({ int __status; register __typeof (cur) _val asm ("edx") = (cur); __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&cmdp->cntr), "S" (((void *)0)), "c" ((((0) | 128) ^ (0))), "d" (_val), "i" (__builtin_offsetof (tcbhead_t, sysinfo)) : "memory"); __status; }); > cur = cmdp->cntr; > } > } > while (signalled != 0); > > > > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self) > continue; > > setxid_unmark_thread (cmdp, t); > } > > for (runp = (&__stack_user)->next; runp != (&__stack_user); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self) > continue; > > setxid_unmark_thread (cmdp, t); > } > > > > do { } while (0); > result = ({ register unsigned int resultvar; asm volatile ( "xchgl %%ebx, %%edi\n\t" "int $0x80\n\t" "xchgl %%edi, %%ebx\n\t" : "=a" (resultvar) : "0" (cmdp->syscall_no) , "D" (cmdp->id[0]), "c" (cmdp->id[1]), "d" (cmdp->id[2]) : "memory", "cc"); (int) resultvar; }) > ; > int error = 0; > if (__builtin_expect ((((unsigned int) (result) >= 0xfffff001u)), 0)) > { > error = (-(result)); > (errno = (error)); > result = -1; > } > __nptl_setxid_error (cmdp, error); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > return result; >} > >static inline void __attribute__((always_inline)) >init_one_static_tls (struct pthread *curp, struct link_map *map) >{ > dtv_t *dtv = (((tcbhead_t *) ((curp)))->dtv); > > void *dest = (char *) curp - map->l_tls_offset; > > > > > > > > dtv[map->l_tls_modid].pointer.val = dest; > dtv[map->l_tls_modid].pointer.is_static = 1; > > > memset (__builtin_mempcpy (dest, map->l_tls_initimage, map->l_tls_initimage_size), > '\0', map->l_tls_blocksize - map->l_tls_initimage_size); >} > >void >__attribute__ ((visibility ("hidden"))) >__pthread_init_static_tls (struct link_map *map) >{ > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > > list_t *runp; > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > init_one_static_tls (((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))), map); > > > for (runp = (&__stack_user)->next; runp != (&__stack_user); runp = runp->next) > init_one_static_tls (((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))), map); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); >} > > >void >__attribute__ ((visibility ("hidden"))) >__wait_lookup_done (void) >{ > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > struct pthread *self = ({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;}); > > > list_t *runp; > for (runp = (&stack_used)->next; runp != (&stack_used); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self || t->header.gscope_flag == 0) > continue; > > int *const gscope_flagp = &t->header.gscope_flag; > > > > > if ((! __sync_bool_compare_and_swap (gscope_flagp, 1, 2)) > > ) > continue; > > do > ({ int __status; register __typeof (2) _val asm ("edx") = (2); __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (gscope_flagp), "S" (((void *)0)), "c" ((((0) | 128) ^ (0))), "d" (_val), "i" (__builtin_offsetof (tcbhead_t, sysinfo)) : "memory"); __status; }); > while (*gscope_flagp == 2); > } > > > for (runp = (&__stack_user)->next; runp != (&__stack_user); runp = runp->next) > { > struct pthread *t = ((struct pthread *) ((char *) (runp) - (unsigned long) (&((struct pthread *) 0)->list))); > if (t == self || t->header.gscope_flag == 0) > continue; > > int *const gscope_flagp = &t->header.gscope_flag; > > > > > if ((! __sync_bool_compare_and_swap (gscope_flagp, 1, 2)) > > ) > continue; > > do > ({ int __status; register __typeof (2) _val asm ("edx") = (2); __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (gscope_flagp), "S" (((void *)0)), "c" ((((0) | 128) ^ (0))), "d" (_val), "i" (__builtin_offsetof (tcbhead_t, sysinfo)) : "memory"); __status; }); > while (*gscope_flagp == 2); > } > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); >} ># 58 "pthread_create.c" 2 > > ># 1 "./createthread.c" 1 ># 56 "./createthread.c" >static int >do_clone (struct pthread *pd, const struct pthread_attr *attr, > int clone_flags, int (*fct) (void *), void *stackaddr, > int stopped) >{ > union user_desc_init _segdescr; tls_fill_user_desc (&_segdescr, ({ int __seg; __asm ("movw %%gs, %w0" : "=q" (__seg)); __seg & 0xffff; }) >> 3, pd); const struct user_desc *tp = &_segdescr.desc; > > if (__builtin_expect ((stopped != 0), 0)) > > > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (pd->lock) : "0" (0), "1" (1), "m" (pd->lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (pd->lock), "=&d" (ignore3) : "1" (1), "m" (pd->lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); ># 77 "./createthread.c" > do { if (sizeof (*&__nptl_nthreads) == 1) __asm __volatile ("lock;" "incb %b0" : "=m" (*&__nptl_nthreads) : "m" (*&__nptl_nthreads), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else if (sizeof (*&__nptl_nthreads) == 2) __asm __volatile ("lock;" "incw %w0" : "=m" (*&__nptl_nthreads) : "m" (*&__nptl_nthreads), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else if (sizeof (*&__nptl_nthreads) == 4) __asm __volatile ("lock;" "incl %0" : "=m" (*&__nptl_nthreads) : "m" (*&__nptl_nthreads), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else { __typeof (&__nptl_nthreads) __memp = (&__nptl_nthreads); __typeof (*&__nptl_nthreads) __oldval = *__memp; __typeof (*&__nptl_nthreads) __tmpval; do __tmpval = __oldval; while ((__oldval = ({ __typeof (*__memp) ret = *(__memp); abort (); ret = (__oldval + 1); ret = (__oldval); ret; })) == __tmpval); } } while (0); > > int rc = __clone (fct, stackaddr, clone_flags, > pd, &pd->tid, tp, &pd->tid); > > if (__builtin_expect ((rc == -1), 0)) > { > do { if (sizeof (*&__nptl_nthreads) == 1) __asm __volatile ("lock;" "decb %b0" : "=m" (*&__nptl_nthreads) : "m" (*&__nptl_nthreads), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else if (sizeof (*&__nptl_nthreads) == 2) __asm __volatile ("lock;" "decw %w0" : "=m" (*&__nptl_nthreads) : "m" (*&__nptl_nthreads), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else if (sizeof (*&__nptl_nthreads) == 4) __asm __volatile ("lock;" "decl %0" : "=m" (*&__nptl_nthreads) : "m" (*&__nptl_nthreads), "i" (__builtin_offsetof (tcbhead_t, multiple_threads))); else { __typeof (&__nptl_nthreads) __memp = (&__nptl_nthreads); __typeof (*&__nptl_nthreads) __oldval = *__memp; __typeof (*&__nptl_nthreads) __tmpval; do __tmpval = __oldval; while ((__oldval = ({ __typeof (*__memp) ret = *(__memp); abort (); ret = (__oldval - 1); ret = (__oldval); ret; })) == __tmpval); } } while (0); > > > > if (__builtin_expect (({ __typeof (*&pd->setxid_futex) result; if (sizeof (*&pd->setxid_futex) == 1) __asm __volatile ("xchgb %b0, %1" : "=q" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else if (sizeof (*&pd->setxid_futex) == 2) __asm __volatile ("xchgw %w0, %1" : "=r" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else if (sizeof (*&pd->setxid_futex) == 4) __asm __volatile ("xchgl %0, %1" : "=r" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else { result = 0; abort (); } result; }) > == -2, 0)) > ({ int __status; register __typeof (1) _nr asm ("edx") = (1); ; __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&pd->setxid_futex), "c" ((((1) | 128) ^ (0))), "d" (_nr), "i" (0) , "i" (__builtin_offsetof (tcbhead_t, sysinfo))); __status; }); > > > __deallocate_stack (pd); > > > return errno == 12 ? 11 : errno; > } > > > if (__builtin_expect ((stopped != 0), 0)) > { > do { } while (0); > int res = 0; > > > if (attr->cpuset != ((void *)0)) > { > res = ({ register unsigned int resultvar; asm volatile ( "xchgl %%ebx, %%edi\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "xchgl %%edi, %%ebx\n\t" : "=a" (resultvar) : "i" (241) , "D" (pd->tid), "c" (attr->cpusetsize), "d" (attr->cpuset) : "memory", "cc"); (int) resultvar; }) > ; > > if (__builtin_expect ((((unsigned int) (res) >= 0xfffff001u)), 0)) > { > > > do { } while (0); > err_out: > (void) ({ register unsigned int resultvar; asm volatile ( "xchgl %%ebx, %%edi\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "xchgl %%edi, %%ebx\n\t" : "=a" (resultvar) : "i" (270) , "D" (({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->pid) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, pid))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, pid))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, pid)), "i" (__builtin_offsetof (struct pthread, pid) + 4)); } __value; })), "c" (pd->tid), "d" (32) : "memory", "cc"); (int) resultvar; }) > > ; > > > > > return (((unsigned int) (res) >= 0xfffff001u) > ? (-(res)) > : 0); > } > } > > > if ((attr->flags & 0x0002) != 0) > { > res = ({ register unsigned int resultvar; asm volatile ( "xchgl %%ebx, %%edi\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "xchgl %%edi, %%ebx\n\t" : "=a" (resultvar) : "i" (156) , "D" (pd->tid), "c" (pd->schedpolicy), "d" (&pd->schedparam) : "memory", "cc"); (int) resultvar; }) > ; > > if (__builtin_expect ((((unsigned int) (res) >= 0xfffff001u)), 0)) > goto err_out; > } > } > > > > > ({ if (sizeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.multiple_threads) == 1) asm volatile ("movb %b0,%%gs:%P1" : : "iq" (1), "i" (__builtin_offsetof (struct pthread, header.multiple_threads))); else if (sizeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.multiple_threads) == 4) asm volatile ("movl %0,%%gs:%P1" : : "ir" (1), "i" (__builtin_offsetof (struct pthread, header.multiple_threads))); else { if (sizeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.multiple_threads) != 8) abort (); asm volatile ("movl %%eax,%%gs:%P1\n\t" "movl %%edx,%%gs:%P2" : : "A" ((uint64_t) ((__typeof__ (*(0 ? (__typeof__ (0 ? (__typeof__ ((__typeof__ (1)) 0) *) 0 : (void *) ((__builtin_classify_type ((__typeof__ (1)) 0) == 5)))) 0 : (__typeof__ (0 ? (__intptr_t *) 0 : (void *) (!((__builtin_classify_type ((__typeof__ (1)) 0) == 5))))) 0))) (1))), "i" (__builtin_offsetof (struct pthread, header.multiple_threads)), "i" (__builtin_offsetof (struct pthread, header.multiple_threads) + 4)); }}); > > return 0; >} > > >static int >create_thread (struct pthread *pd, const struct pthread_attr *attr, > void *stackaddr) >{ > > ((pd->header.tcb != ((void *)0)) ? (void) (0) : __assert_fail ("pd->header.tcb != ((void *)0)", "./createthread.c", 155, __PRETTY_FUNCTION__)); ># 185 "./createthread.c" > int clone_flags = (0x00000100 | 0x00000200 | 0x00000400 | (0x00000800 | 0x00010000) > | 0x00080000 | 0x00100000 > | 0x00200000 | 0x00040000 > | 0); > > if (__builtin_expect ((({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->report_events) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, report_events))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, report_events))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, report_events)), "i" (__builtin_offsetof (struct pthread, report_events) + 4)); } __value; })), 0)) > { > > > const int _idx = (((TD_CREATE) - 1U) >> 5); > const uint32_t _mask = (1U << (((TD_CREATE) - 1) & ((1 << 5) - 1))); > > if ((_mask & (__nptl_threads_events.event_bits[_idx] > | pd->eventbuf.eventmask.event_bits[_idx])) != 0) > { > > pd->stopped_start = 1; > > > > int res = do_clone (pd, attr, clone_flags, start_thread, > stackaddr, 1); > if (res == 0) > { > > > > > pd->eventbuf.eventnum = TD_CREATE; > pd->eventbuf.eventdata = pd; > > > do > pd->nextevent = __nptl_last_event; > while ((! __sync_bool_compare_and_swap (&__nptl_last_event, pd->nextevent, pd)) > > != 0); > > > __nptl_create_event (); > > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (pd->lock), "=&a" (ignore) : "m" (pd->lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (pd->lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (pd->lock), "g" ((int) (0)) : "memory"); } }); > } > > return res; > } > } > > > ((({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.sysinfo) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, header.sysinfo))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, header.sysinfo))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, header.sysinfo)), "i" (__builtin_offsetof (struct pthread, header.sysinfo) + 4)); } __value; }) == ((pd)->header.sysinfo)) ? (void) (0) : __assert_fail ("({ __typeof (({ struct pthread *__self; asm (\"movl %%gs:%c1,%0\" : \"=r\" (__self) : \"i\" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.sysinfo) __value; if (sizeof (__value) == 1) asm volatile (\"movb %%gs:%P2,%b0\" : \"=q\" (__value) : \"0\" (0), \"i\" (__builtin_offsetof (struct pthread, header.sysinfo))); else if (sizeof (__value) == 4) asm volatile (\"movl %%gs:%P1,%0\" : \"=r\" (__value) : \"i\" (__builtin_offsetof (struct pthread, header.sysinfo))); else { if (sizeof (__value) != 8) abort (); asm volatile (\"movl %%gs:%P1,%%eax\\n\\t\" \"movl %%gs:%P2,%%edx\" : \"=A\" (__value) : \"i\" (__builtin_offsetof (struct pthread, header.sysinfo)), \"i\" (__builtin_offsetof (struct pthread, header.sysinfo) + 4)); } __value; }) == ((pd)->header.sysinfo)", "./createthread.c", 235, __PRETTY_FUNCTION__)); > > > > > > _Bool stopped = 0; > if (attr != ((void *)0) && (attr->cpuset != ((void *)0) > || (attr->flags & 0x0002) != 0)) > stopped = 1; > pd->stopped_start = stopped; > pd->parent_cancelhandling = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->cancelhandling) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, cancelhandling))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, cancelhandling))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, cancelhandling)), "i" (__builtin_offsetof (struct pthread, cancelhandling) + 4)); } __value; }); > > > int res = do_clone (pd, attr, clone_flags, start_thread, > stackaddr, stopped); > > if (res == 0 && stopped) > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (pd->lock), "=&a" (ignore) : "m" (pd->lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (pd->lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (pd->lock), "g" ((int) (0)) : "memory"); } }); > > return res; >} ># 61 "pthread_create.c" 2 > > >struct pthread * >__attribute__ ((regparm (3), stdcall)) >__find_in_stack_list (pd) > struct pthread *pd; >{ > list_t *entry; > struct pthread *result = ((void *)0); > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock) : "0" (0), "1" (1), "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (stack_cache_lock), "=&d" (ignore3) : "1" (1), "m" (stack_cache_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > for (entry = (&stack_used)->next; entry != (&stack_used); entry = entry->next) > { > struct pthread *curp; > > curp = ((struct pthread *) ((char *) (entry) - (unsigned long) (&((struct pthread *) 0)->list))); > if (curp == pd) > { > result = curp; > break; > } > } > > if (result == ((void *)0)) > for (entry = (&__stack_user)->next; entry != (&__stack_user); entry = entry->next) > { > struct pthread *curp; > > curp = ((struct pthread *) ((char *) (entry) - (unsigned long) (&((struct pthread *) 0)->list))); > if (curp == pd) > { > result = curp; > break; > } > } > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore) : "m" (stack_cache_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (stack_cache_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (stack_cache_lock), "g" ((int) (0)) : "memory"); } }); > > return result; >} > > > >void >__attribute__ ((visibility ("hidden"))) >__nptl_deallocate_tsd (void) >{ > struct pthread *self = ({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;}); > > > > if (({ __typeof (self->specific_used) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, specific_used))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, specific_used))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, specific_used)), "i" (__builtin_offsetof (struct pthread, specific_used) + 4)); } __value; })) > { > size_t round; > size_t cnt; > > round = 0; > do > { > size_t idx; > > > ({ if (sizeof (self->specific_used) == 1) asm volatile ("movb %b0,%%gs:%P1" : : "iq" (0), "i" (__builtin_offsetof (struct pthread, specific_used))); else if (sizeof (self->specific_used) == 4) asm volatile ("movl %0,%%gs:%P1" : : "ir" (0), "i" (__builtin_offsetof (struct pthread, specific_used))); else { if (sizeof (self->specific_used) != 8) abort (); asm volatile ("movl %%eax,%%gs:%P1\n\t" "movl %%edx,%%gs:%P2" : : "A" ((uint64_t) ((__typeof__ (*(0 ? (__typeof__ (0 ? (__typeof__ ((__typeof__ (0)) 0) *) 0 : (void *) ((__builtin_classify_type ((__typeof__ (0)) 0) == 5)))) 0 : (__typeof__ (0 ? (__intptr_t *) 0 : (void *) (!((__builtin_classify_type ((__typeof__ (0)) 0) == 5))))) 0))) (0))), "i" (__builtin_offsetof (struct pthread, specific_used)), "i" (__builtin_offsetof (struct pthread, specific_used) + 4)); }}); > > for (cnt = idx = 0; cnt < ((1024 + 32 - 1) / 32); ++cnt) > { > struct pthread_key_data *level2; > > level2 = ({ __typeof (self->specific[0]) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2(%3),%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, specific[0])), "r" (cnt)); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1(,%2,4),%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, specific[0])), "r" (cnt)); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1(,%2,8),%%eax\n\t" "movl %%gs:4+%P1(,%2,8),%%edx" : "=&A" (__value) : "i" (__builtin_offsetof (struct pthread, specific[0])), "r" (cnt)); } __value; }); > > if (level2 != ((void *)0)) > { > size_t inner; > > for (inner = 0; inner < 32; > ++inner, ++idx) > { > void *data = level2[inner].data; > > if (data != ((void *)0)) > { > > level2[inner].data = ((void *)0); > > > > > > > > if (level2[inner].seq > == __pthread_keys[idx].seq > > > && __pthread_keys[idx].destr != ((void *)0)) > > __pthread_keys[idx].destr (data); > } > } > } > else > idx += ((1024 + 32 - 1) / 32); > } > > if (({ __typeof (self->specific_used) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, specific_used))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, specific_used))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, specific_used)), "i" (__builtin_offsetof (struct pthread, specific_used) + 4)); } __value; }) == 0) > > goto just_free; > } > > while (__builtin_expect (++round < 4, 0)); > > > memset (&({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->specific_1stblock, '\0', > sizeof (self->specific_1stblock)); > > just_free: > > for (cnt = 1; cnt < ((1024 + 32 - 1) / 32); ++cnt) > { > struct pthread_key_data *level2; > > level2 = ({ __typeof (self->specific[0]) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2(%3),%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, specific[0])), "r" (cnt)); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1(,%2,4),%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, specific[0])), "r" (cnt)); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1(,%2,8),%%eax\n\t" "movl %%gs:4+%P1(,%2,8),%%edx" : "=&A" (__value) : "i" (__builtin_offsetof (struct pthread, specific[0])), "r" (cnt)); } __value; }); > if (level2 != ((void *)0)) > { > > > free (level2); > ({ if (sizeof (self->specific[0]) == 1) asm volatile ("movb %b0,%%gs:%P1(%2)" : : "iq" (((void *)0)), "i" (__builtin_offsetof (struct pthread, specific)), "r" (cnt)); else if (sizeof (self->specific[0]) == 4) asm volatile ("movl %0,%%gs:%P1(,%2,4)" : : "ir" (((void *)0)), "i" (__builtin_offsetof (struct pthread, specific)), "r" (cnt)); else { if (sizeof (self->specific[0]) != 8) abort (); asm volatile ("movl %%eax,%%gs:%P1(,%2,8)\n\t" "movl %%edx,%%gs:4+%P1(,%2,8)" : : "A" ((uint64_t) ((__typeof__ (*(0 ? (__typeof__ (0 ? (__typeof__ ((__typeof__ (((void *)0))) 0) *) 0 : (void *) ((__builtin_classify_type ((__typeof__ (((void *)0))) 0) == 5)))) 0 : (__typeof__ (0 ? (__intptr_t *) 0 : (void *) (!((__builtin_classify_type ((__typeof__ (((void *)0))) 0) == 5))))) 0))) (((void *)0)))), "i" (__builtin_offsetof (struct pthread, specific)), "r" (cnt)); }}); > } > } > > ({ if (sizeof (self->specific_used) == 1) asm volatile ("movb %b0,%%gs:%P1" : : "iq" (0), "i" (__builtin_offsetof (struct pthread, specific_used))); else if (sizeof (self->specific_used) == 4) asm volatile ("movl %0,%%gs:%P1" : : "ir" (0), "i" (__builtin_offsetof (struct pthread, specific_used))); else { if (sizeof (self->specific_used) != 8) abort (); asm volatile ("movl %%eax,%%gs:%P1\n\t" "movl %%edx,%%gs:%P2" : : "A" ((uint64_t) ((__typeof__ (*(0 ? (__typeof__ (0 ? (__typeof__ ((__typeof__ (0)) 0) *) 0 : (void *) ((__builtin_classify_type ((__typeof__ (0)) 0) == 5)))) 0 : (__typeof__ (0 ? (__intptr_t *) 0 : (void *) (!((__builtin_classify_type ((__typeof__ (0)) 0) == 5))))) 0))) (0))), "i" (__builtin_offsetof (struct pthread, specific_used)), "i" (__builtin_offsetof (struct pthread, specific_used) + 4)); }}); > } >} > > > > >void >__attribute__ ((regparm (3), stdcall)) >__free_tcb (struct pthread *pd) >{ > > if (__builtin_expect (({ unsigned char __result; if (sizeof (*&pd->cancelhandling) == 1) __asm __volatile ("lock;" "btsb %3, %1; setc %0" : "=q" (__result), "=m" (*&pd->cancelhandling) : "m" (*&pd->cancelhandling), "ir" (5)); else if (sizeof (*&pd->cancelhandling) == 2) __asm __volatile ("lock;" "btsw %3, %1; setc %0" : "=q" (__result), "=m" (*&pd->cancelhandling) : "m" (*&pd->cancelhandling), "ir" (5)); else if (sizeof (*&pd->cancelhandling) == 4) __asm __volatile ("lock;" "btsl %3, %1; setc %0" : "=q" (__result), "=m" (*&pd->cancelhandling) : "m" (*&pd->cancelhandling), "ir" (5)); else abort (); __result; }) > == 0, 1)) > { > > if (0 && __find_in_stack_list (pd) == ((void *)0)) > > > abort (); > > > if (__builtin_expect ((pd->tpp != ((void *)0)), 0)) > { > struct priority_protection_data *tpp = pd->tpp; > > pd->tpp = ((void *)0); > free (tpp); > } > > > > > __deallocate_stack (pd); > } >} > > >static int >start_thread (void *arg) >{ > struct pthread *pd = (struct pthread *) arg; ># 244 "pthread_create.c" > __resp = &pd->res; > > > __ctype_init (); > > > if (__builtin_expect ((({ __typeof (*&pd->setxid_futex) result; if (sizeof (*&pd->setxid_futex) == 1) __asm __volatile ("xchgb %b0, %1" : "=q" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else if (sizeof (*&pd->setxid_futex) == 2) __asm __volatile ("xchgw %w0, %1" : "=r" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else if (sizeof (*&pd->setxid_futex) == 4) __asm __volatile ("xchgl %0, %1" : "=r" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else { result = 0; abort (); } result; }) == -2), 0)) > ({ int __status; register __typeof (1) _nr asm ("edx") = (1); ; __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&pd->setxid_futex), "c" ((((1) | 128) ^ (0))), "d" (_nr), "i" (0) , "i" (__builtin_offsetof (tcbhead_t, sysinfo))); __status; }); > > > > > > { > do { } while (0); > > > ({ register unsigned int resultvar; asm volatile ( "bpushl .L__X'%k2, %k2\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "bpopl .L__X'%k2, %k2\n\t" : "=a" (resultvar) : "i" (311) , "d" (&pd->robust_head), "c" (sizeof (struct robust_list_head)) : "memory", "cc"); (int) resultvar; }) > ; > } > > > > > > if (__builtin_expect ((pd->parent_cancelhandling & (0x01 << 2)), 0)) > { > do { } while (0); > sigset_t mask; > ({ __builtin_memset (&mask, '\0', sizeof (sigset_t)); 0; }); > __sigaddset (&mask, 32); > (void) ({ register unsigned int resultvar; asm volatile ( "xchgl %%ebx, %%edi\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "xchgl %%edi, %%ebx\n\t" : "=a" (resultvar) : "i" (175) , "D" (1), "c" (&mask), "d" (((void *)0)), "S" (65 / 8) : "memory", "cc"); (int) resultvar; }) > ; > } > > > > struct pthread_unwind_buf unwind_buf; > > > unwind_buf.priv.data.prev = ((void *)0); > unwind_buf.priv.data.cleanup = ((void *)0); > > int not_first_call; > not_first_call = _setjmp ((struct __jmp_buf_tag *) unwind_buf.cancel_jmp_buf); > if (__builtin_expect ((! not_first_call), 1)) > { > > ({ if (sizeof (pd->cleanup_jmp_buf) == 1) asm volatile ("movb %b0,%%gs:%P1" : : "iq" (&unwind_buf), "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf))); else if (sizeof (pd->cleanup_jmp_buf) == 4) asm volatile ("movl %0,%%gs:%P1" : : "ir" (&unwind_buf), "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf))); else { if (sizeof (pd->cleanup_jmp_buf) != 8) abort (); asm volatile ("movl %%eax,%%gs:%P1\n\t" "movl %%edx,%%gs:%P2" : : "A" ((uint64_t) ((__typeof__ (*(0 ? (__typeof__ (0 ? (__typeof__ ((__typeof__ (&unwind_buf)) 0) *) 0 : (void *) ((__builtin_classify_type ((__typeof__ (&unwind_buf)) 0) == 5)))) 0 : (__typeof__ (0 ? (__intptr_t *) 0 : (void *) (!((__builtin_classify_type ((__typeof__ (&unwind_buf)) 0) == 5))))) 0))) (&unwind_buf))), "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf)), "i" (__builtin_offsetof (struct pthread, cleanup_jmp_buf) + 4)); }}); > > if (__builtin_expect ((pd->stopped_start), 0)) > { > int oldtype = __pthread_enable_asynccancel (); > > > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (pd->lock) : "0" (0), "1" (1), "m" (pd->lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (pd->lock), "=&d" (ignore3) : "1" (1), "m" (pd->lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (pd->lock), "=&a" (ignore) : "m" (pd->lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (pd->lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (pd->lock), "g" ((int) (0)) : "memory"); } }); > > __pthread_disable_asynccancel (oldtype); > } > > ; > > > > ({ if (sizeof (pd->result) == 1) asm volatile ("movb %b0,%%gs:%P1" : : "iq" (({ void *__res; int __ignore1, __ignore2; asm volatile ("pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%gs:%P4\n\t" "call *%%gs:%P3\n\t" "addl $16, %%esp" : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) : "i" (__builtin_offsetof (struct pthread, start_routine)), "i" (__builtin_offsetof (struct pthread, arg))); __res; })), "i" (__builtin_offsetof (struct pthread, result))); else if (sizeof (pd->result) == 4) asm volatile ("movl %0,%%gs:%P1" : : "ir" (({ void *__res; int __ignore1, __ignore2; asm volatile ("pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%gs:%P4\n\t" "call *%%gs:%P3\n\t" "addl $16, %%esp" : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) : "i" (__builtin_offsetof (struct pthread, start_routine)), "i" (__builtin_offsetof (struct pthread, arg))); __res; })), "i" (__builtin_offsetof (struct pthread, result))); else { if (sizeof (pd->result) != 8) abort (); asm volatile ("movl %%eax,%%gs:%P1\n\t" "movl %%edx,%%gs:%P2" : : "A" ((uint64_t) ((__typeof__ (*(0 ? (__typeof__ (0 ? (__typeof__ ((__typeof__ (({ void *__res; int __ignore1, __ignore2; asm volatile ("pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%gs:%P4\n\t" "call *%%gs:%P3\n\t" "addl $16, %%esp" : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) : "i" (__builtin_offsetof (struct pthread, start_routine)), "i" (__builtin_offsetof (struct pthread, arg))); __res; }))) 0) *) 0 : (void *) ((__builtin_classify_type ((__typeof__ (({ void *__res; int __ignore1, __ignore2; asm volatile ("pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%gs:%P4\n\t" "call *%%gs:%P3\n\t" "addl $16, %%esp" : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) : "i" (__builtin_offsetof (struct pthread, start_routine)), "i" (__builtin_offsetof (struct pthread, arg))); __res; }))) 0) == 5)))) 0 : (__typeof__ (0 ? (__intptr_t *) 0 : (void *) (!((__builtin_classify_type ((__typeof__ (({ void *__res; int __ignore1, __ignore2; asm volatile ("pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%gs:%P4\n\t" "call *%%gs:%P3\n\t" "addl $16, %%esp" : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) : "i" (__builtin_offsetof (struct pthread, start_routine)), "i" (__builtin_offsetof (struct pthread, arg))); __res; }))) 0) == 5))))) 0))) (({ void *__res; int __ignore1, __ignore2; asm volatile ("pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%eax\n\t" "pushl %%gs:%P4\n\t" "call *%%gs:%P3\n\t" "addl $16, %%esp" : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) : "i" (__builtin_offsetof (struct pthread, start_routine)), "i" (__builtin_offsetof (struct pthread, arg))); __res; })))), "i" (__builtin_offsetof (struct pthread, result)), "i" (__builtin_offsetof (struct pthread, result) + 4)); }}); > > > > } > > > > > > __call_tls_dtors (); > > > __nptl_deallocate_tsd (); > > > __libc_thread_freeres (); > > > > > if (__builtin_expect ((({ unsigned char __result; if (sizeof (*&__nptl_nthreads) == 1) __asm __volatile ("lock;" "decb %b0; sete %1" : "=m" (*&__nptl_nthreads), "=qm" (__result) : "m" (*&__nptl_nthreads)); else if (sizeof (*&__nptl_nthreads) == 2) __asm __volatile ("lock;" "decw %w0; sete %1" : "=m" (*&__nptl_nthreads), "=qm" (__result) : "m" (*&__nptl_nthreads)); else if (sizeof (*&__nptl_nthreads) == 4) __asm __volatile ("lock;" "decl %0; sete %1" : "=m" (*&__nptl_nthreads), "=qm" (__result) : "m" (*&__nptl_nthreads)); else abort (); __result; })), 0)) > > exit (0); > > > if (__builtin_expect ((pd->report_events), 0)) > { > > const int idx = (((TD_DEATH) - 1U) >> 5); > const uint32_t mask = (1U << (((TD_DEATH) - 1) & ((1 << 5) - 1))); > > if ((mask & (__nptl_threads_events.event_bits[idx] > | pd->eventbuf.eventmask.event_bits[idx])) != 0) > { > > > if (pd->nextevent == ((void *)0)) > { > pd->eventbuf.eventnum = TD_DEATH; > pd->eventbuf.eventdata = pd; > > do > pd->nextevent = __nptl_last_event; > while ((! __sync_bool_compare_and_swap (&__nptl_last_event, pd->nextevent, pd)) > ); > } > > > __nptl_death_event (); > } > } > > > > > do { if (sizeof (*&pd->cancelhandling) == 1) __asm __volatile ("lock;" "orb %b2, %0" : "=m" (*&pd->cancelhandling) : "m" (*&pd->cancelhandling), "iq" (1 << (4))); else if (sizeof (*&pd->cancelhandling) == 2) __asm __volatile ("lock;" "orw %w2, %0" : "=m" (*&pd->cancelhandling) : "m" (*&pd->cancelhandling), "ir" (1 << (4))); else if (sizeof (*&pd->cancelhandling) == 4) __asm __volatile ("lock;" "orl %2, %0" : "=m" (*&pd->cancelhandling) : "m" (*&pd->cancelhandling), "ir" (1 << (4))); else abort (); } while (0); ># 402 "pthread_create.c" > size_t pagesize_m1 = __getpagesize () - 1; > > char *sp = __builtin_frame_address (0); > size_t freesize = (sp - (char *) pd->stackblock) & ~pagesize_m1; > > > > ((freesize < pd->stackblock_size) ? (void) (0) : __assert_fail ("freesize < pd->stackblock_size", "pthread_create.c", 409, __PRETTY_FUNCTION__)); > if (freesize > 16384) > __madvise (pd->stackblock, freesize - 16384, 4); > > > if (((pd)->joinid == (pd))) > > __free_tcb (pd); > else if (__builtin_expect ((pd->cancelhandling & (0x01 << 6)), 0)) > { > > > do > ({ int __status; register __typeof (0) _val asm ("edx") = (0); __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&pd->setxid_futex), "S" (((void *)0)), "c" ((((0) | 128) ^ (0))), "d" (_val), "i" (__builtin_offsetof (tcbhead_t, sysinfo)) : "memory"); __status; }); > while (pd->cancelhandling & (0x01 << 6)); > > > pd->setxid_futex = 0; > } ># 437 "pthread_create.c" > __exit_thread (); > > > return 0; >} > > >int >__pthread_create_2_1 (newthread, attr, start_routine, arg) > pthread_t *newthread; > const pthread_attr_t *attr; > void *(*start_routine) (void *); > void *arg; >{ > void *stackaddr = ((void *)0); > > const struct pthread_attr *iattr = (struct pthread_attr *) attr; > struct pthread_attr default_attr; > _Bool free_cpuset = 0; > if (iattr == ((void *)0)) > { > (void) ({ int ignore1, ignore2; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%ecx\n" "2:\tcall __lll_lock_wait_private\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (__default_pthread_attr_lock) : "0" (0), "1" (1), "m" (__default_pthread_attr_lock), "i" (12) : "memory"); else { int ignore3; __asm __volatile ("lock;" "cmpxchgl %1, %2\n\t" "jz 18f\n\t" "1:\tleal %2, %%edx\n" "0:\tmovl %8, %%ecx\n" "2:\tcall __lll_lock_wait\n" "18:" : "=a" (ignore1), "=c" (ignore2), "=m" (__default_pthread_attr_lock), "=&d" (ignore3) : "1" (1), "m" (__default_pthread_attr_lock), "i" (12), "0" (0), "g" ((int) (0)) : "memory"); } }); > default_attr = __default_pthread_attr; > size_t cpusetsize = default_attr.cpusetsize; > if (cpusetsize > 0) > { > cpu_set_t *cpuset; > if (__builtin_expect ((__libc_use_alloca (cpusetsize)), 1)) > cpuset = __builtin_alloca (cpusetsize); > else > { > cpuset = malloc (cpusetsize); > if (cpuset == ((void *)0)) > { > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (__default_pthread_attr_lock), "=&a" (ignore) : "m" (__default_pthread_attr_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (__default_pthread_attr_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (__default_pthread_attr_lock), "g" ((int) (0)) : "memory"); } }); > return 12; > } > free_cpuset = 1; > } > memcpy (cpuset, default_attr.cpuset, cpusetsize); > default_attr.cpuset = cpuset; > } > (void) ({ int ignore; if (__builtin_constant_p (0) && (0) == 0) __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "2:\tcall __lll_unlock_wake_private\n" "18:" : "=m" (__default_pthread_attr_lock), "=&a" (ignore) : "m" (__default_pthread_attr_lock), "i" (12) : "memory"); else { int ignore2; __asm __volatile ("lock;" "subl $1, %0\n\t" "je 18f\n\t" "1:\tleal %0, %%eax\n" "0:\tmovl %5, %%ecx\n" "2:\tcall __lll_unlock_wake\n" "18:" : "=m" (__default_pthread_attr_lock), "=&a" (ignore), "=&c" (ignore2) : "i" (12), "m" (__default_pthread_attr_lock), "g" ((int) (0)) : "memory"); } }); > iattr = &default_attr; > } > > struct pthread *pd = ((void *)0); > int err = allocate_stack (iattr, &pd, &stackaddr); > int retval = 0; > > if (__builtin_expect ((err != 0), 0)) > > > > { > retval = err == 12 ? 11 : err; > goto out; > } ># 503 "pthread_create.c" > pd->header.self = pd; > > > pd->header.tcb = pd; > > > > > > pd->start_routine = start_routine; > pd->arg = arg; > > > struct pthread *self = ({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;}); > pd->flags = ((iattr->flags & ~(0x0020 | 0x0040)) > | (self->flags & (0x0020 | 0x0040))); > > > > > pd->joinid = iattr->flags & 0x0001 ? pd : ((void *)0); > > > pd->eventbuf = self->eventbuf; > > > > > pd->schedpolicy = self->schedpolicy; > pd->schedparam = self->schedparam; > > > > ((pd)->header.stack_guard = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.stack_guard) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, header.stack_guard))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, header.stack_guard))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, header.stack_guard)), "i" (__builtin_offsetof (struct pthread, header.stack_guard) + 4)); } __value; })); > > > > > ((pd)->header.pointer_guard = ({ __typeof (({ struct pthread *__self; asm ("movl %%gs:%c1,%0" : "=r" (__self) : "i" (__builtin_offsetof (struct pthread, header.self))); __self;})->header.pointer_guard) __value; if (sizeof (__value) == 1) asm volatile ("movb %%gs:%P2,%b0" : "=q" (__value) : "0" (0), "i" (__builtin_offsetof (struct pthread, header.pointer_guard))); else if (sizeof (__value) == 4) asm volatile ("movl %%gs:%P1,%0" : "=r" (__value) : "i" (__builtin_offsetof (struct pthread, header.pointer_guard))); else { if (sizeof (__value) != 8) abort (); asm volatile ("movl %%gs:%P1,%%eax\n\t" "movl %%gs:%P2,%%edx" : "=A" (__value) : "i" (__builtin_offsetof (struct pthread, header.pointer_guard)), "i" (__builtin_offsetof (struct pthread, header.pointer_guard) + 4)); } __value; })); > > > > if (__builtin_expect ((iattr->flags & 0x0002) != 0, 0) > && (iattr->flags & (0x0020 | 0x0040)) != 0) > { > do { } while (0); > > > if (iattr->flags & 0x0040) > pd->schedpolicy = iattr->schedpolicy; > else if ((pd->flags & 0x0040) == 0) > { > pd->schedpolicy = ({ register unsigned int resultvar; asm volatile ( "bpushl .L__X'%k2, %k2\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "bpopl .L__X'%k2, %k2\n\t" : "=a" (resultvar) : "i" (157) , "cd" (0) : "memory", "cc"); (int) resultvar; }); > pd->flags |= 0x0040; > } > > if (iattr->flags & 0x0020) > memcpy (&pd->schedparam, &iattr->schedparam, > sizeof (struct sched_param)); > else if ((pd->flags & 0x0020) == 0) > { > ({ register unsigned int resultvar; asm volatile ( "bpushl .L__X'%k2, %k2\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "bpopl .L__X'%k2, %k2\n\t" : "=a" (resultvar) : "i" (155) , "d" (0), "c" (&pd->schedparam) : "memory", "cc"); (int) resultvar; }); > pd->flags |= 0x0020; > } > > > int minprio = ({ register unsigned int resultvar; asm volatile ( "bpushl .L__X'%k2, %k2\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "bpopl .L__X'%k2, %k2\n\t" : "=a" (resultvar) : "i" (160) , "cd" (iattr->schedpolicy) : "memory", "cc"); (int) resultvar; }) > ; > int maxprio = ({ register unsigned int resultvar; asm volatile ( "bpushl .L__X'%k2, %k2\n\t" "movl %1, %%eax\n\t" "int $0x80\n\t" "bpopl .L__X'%k2, %k2\n\t" : "=a" (resultvar) : "i" (159) , "cd" (iattr->schedpolicy) : "memory", "cc"); (int) resultvar; }) > ; > if (pd->schedparam.__sched_priority < minprio > || pd->schedparam.__sched_priority > maxprio) > { > > > if (__builtin_expect (({ __typeof (*&pd->setxid_futex) result; if (sizeof (*&pd->setxid_futex) == 1) __asm __volatile ("xchgb %b0, %1" : "=q" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else if (sizeof (*&pd->setxid_futex) == 2) __asm __volatile ("xchgw %w0, %1" : "=r" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else if (sizeof (*&pd->setxid_futex) == 4) __asm __volatile ("xchgl %0, %1" : "=r" (result), "=m" (*&pd->setxid_futex) : "0" (0), "m" (*&pd->setxid_futex)); else { result = 0; abort (); } result; }) > == -2, 0)) > ({ int __status; register __typeof (1) _nr asm ("edx") = (1); ; __asm __volatile ("xchgl %2, %%ebx\n" "int $0x80\n\t" "xchgl %2, %%ebx\n" : "=a" (__status) : "0" (240), "D" (&pd->setxid_futex), "c" ((((1) | 128) ^ (0))), "d" (_nr), "i" (0) , "i" (__builtin_offsetof (tcbhead_t, sysinfo))); __status; }); > > __deallocate_stack (pd); > > retval = 22; > goto out; > } > } > > > *newthread = (pthread_t) pd; > > ; > > > retval = create_thread (pd, iattr, stackaddr); > > out: > if (__builtin_expect ((free_cpuset), 0)) > free (default_attr.cpuset); > > return retval; >} >__asm__ (".symver " "__pthread_create_2_1" "," "pthread_create" "@@" "GLIBC_2.1"); > > > >int >__pthread_create_2_0 (newthread, attr, start_routine, arg) > pthread_t *newthread; > const pthread_attr_t *attr; > void *(*start_routine) (void *); > void *arg; >{ > > > > struct pthread_attr new_attr; > > if (attr != ((void *)0)) > { > struct pthread_attr *iattr = (struct pthread_attr *) attr; > size_t ps = __getpagesize (); > > > new_attr.schedparam = iattr->schedparam; > new_attr.schedpolicy = iattr->schedpolicy; > new_attr.flags = iattr->flags; > > > > new_attr.guardsize = ps; > new_attr.stackaddr = ((void *)0); > new_attr.stacksize = 0; > new_attr.cpuset = ((void *)0); > > > attr = (pthread_attr_t *) &new_attr; > } > > return __pthread_create_2_1 (newthread, attr, start_routine, arg); >} >__asm__ (".symver " "__pthread_create_2_0" "," "pthread_create" "@" "GLIBC_2.0") > ; > > > > ># 1 "../nptl_db/db_info.c" 1 ># 22 "../nptl_db/db_info.c" ># 1 "../nptl_db/thread_dbP.h" 1 ># 27 "../nptl_db/thread_dbP.h" ># 1 "../include/assert.h" 1 ># 1 "../assert/assert.h" 1 ># 64 "../assert/assert.h" > > > >extern void __assert_fail (const char *__assertion, const char *__file, > unsigned int __line, const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > >extern void __assert_perror_fail (int __errnum, const char *__file, > unsigned int __line, const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > > >extern void __assert (const char *__assertion, const char *__file, int __line) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > > ># 2 "../include/assert.h" 2 > > > > > >extern void __assert_fail (const char *__assertion, const char *__file, > unsigned int __line, const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > >extern void __assert_perror_fail (int __errnum, const char *__file, > unsigned int __line, > const char *__function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); > > >extern void __assert_fail_base (const char *fmt, const char *assertion, > const char *file, unsigned int line, > const char *function) > __attribute__ ((__nothrow__ )) __attribute__ ((__noreturn__)); ># 28 "../nptl_db/thread_dbP.h" 2 ># 1 "../nptl_db/proc_service.h" 1 ># 23 "../nptl_db/proc_service.h" >typedef enum >{ > PS_OK, > PS_ERR, > PS_BADPID, > PS_BADLID, > PS_BADADDR, > PS_NOSYM, > PS_NOFREGS >} ps_err_e; > > > > >struct ps_prochandle; > > > >extern ps_err_e ps_pdread (struct ps_prochandle *, > psaddr_t, void *, size_t); >extern ps_err_e ps_pdwrite (struct ps_prochandle *, > psaddr_t, const void *, size_t); >extern ps_err_e ps_ptread (struct ps_prochandle *, > psaddr_t, void *, size_t); >extern ps_err_e ps_ptwrite (struct ps_prochandle *, > psaddr_t, const void *, size_t); > > > >extern ps_err_e ps_lgetregs (struct ps_prochandle *, > lwpid_t, prgregset_t); >extern ps_err_e ps_lsetregs (struct ps_prochandle *, > lwpid_t, const prgregset_t); >extern ps_err_e ps_lgetfpregs (struct ps_prochandle *, > lwpid_t, prfpregset_t *); >extern ps_err_e ps_lsetfpregs (struct ps_prochandle *, > lwpid_t, const prfpregset_t *); > > >extern pid_t ps_getpid (struct ps_prochandle *); > > > > >extern ps_err_e ps_get_thread_area (const struct ps_prochandle *, > lwpid_t, int, psaddr_t *); > > > > > >extern ps_err_e ps_pglobal_lookup (struct ps_prochandle *, > const char *object_name, > const char *sym_name, > psaddr_t *sym_addr); > > > >extern ps_err_e ps_pstop (const struct ps_prochandle *); >extern ps_err_e ps_pcontinue (const struct ps_prochandle *); > > >extern ps_err_e ps_lstop (const struct ps_prochandle *, lwpid_t); >extern ps_err_e ps_lcontinue (const struct ps_prochandle *, lwpid_t); ># 29 "../nptl_db/thread_dbP.h" 2 ># 1 "../nptl_db/thread_db.h" 1 ># 30 "../nptl_db/thread_dbP.h" 2 ># 1 "../nptl_db/../nptl/pthreadP.h" 1 ># 31 "../nptl_db/thread_dbP.h" 2 > > > >enum > { > > > > > ># 1 "../nptl_db/structs.def" 1 ># 25 "../nptl_db/structs.def" >SYM_SIZEOF_pthread, >SYM_pthread_FIELD_list, >SYM_pthread_FIELD_report_events, >SYM_pthread_FIELD_tid, >SYM_pthread_FIELD_pid, >SYM_pthread_FIELD_start_routine, >SYM_pthread_FIELD_cancelhandling, >SYM_pthread_FIELD_schedpolicy, >SYM_pthread_FIELD_schedparam_sched_priority, >SYM_pthread_FIELD_specific, >SYM_pthread_FIELD_eventbuf, >SYM_pthread_FIELD_eventbuf_eventmask, >SYM_pthread_FIELD_eventbuf_eventmask_event_bits, >SYM_pthread_FIELD_nextevent, > >SYM_SIZEOF_list_t, >SYM_list_t_FIELD_next, >SYM_list_t_FIELD_prev, > >SYM_SIZEOF_td_thr_events_t, >SYM_td_thr_events_t_FIELD_event_bits, > >SYM_SIZEOF_td_eventbuf_t, >SYM_td_eventbuf_t_FIELD_eventnum, >SYM_td_eventbuf_t_FIELD_eventdata, > >SYM_stack_used, >SYM___stack_user, >SYM_nptl_version, >SYM___nptl_create_event, >SYM___nptl_death_event, >SYM___nptl_threads_events, >SYM___nptl_nthreads, SYM_DESC___nptl_nthreads, >SYM___nptl_last_event, SYM_DESC___nptl_last_event, >SYM___nptl_initial_report_events, SYM_DESC___nptl_initial_report_events, > >SYM___pthread_keys, SYM_DESC___pthread_keys, >SYM_SIZEOF_pthread_key_struct, >SYM_pthread_key_struct_FIELD_seq, >SYM_pthread_key_struct_FIELD_destr, > >SYM_SIZEOF_pthread_key_data, >SYM_pthread_key_data_FIELD_seq, >SYM_pthread_key_data_FIELD_data, >SYM_SIZEOF_pthread_key_data_level2, >SYM_pthread_key_data_level2_FIELD_data, > >SYM_link_map_FIELD_l_tls_modid, > >SYM_dtv_FIELD_dtv, > >SYM_dtv_t_FIELD_pointer_val, > >SYM_pthread_FIELD_dtvp, ># 42 "../nptl_db/thread_dbP.h" 2 > > > > > > > SYM_TH_UNIQUE_CONST_THREAD_AREA, > SYM_TH_UNIQUE_REGISTER64, > SYM_TH_UNIQUE_REGISTER32, > SYM_TH_UNIQUE_REGISTER64_THREAD_AREA, > SYM_TH_UNIQUE_REGISTER32_THREAD_AREA, > > SYM_NUM_MESSAGES > }; > > > > > >extern int __td_debug __attribute__ ((visibility ("hidden"))); ># 73 "../nptl_db/thread_dbP.h" >typedef uint32_t db_desc_t[3]; > > > >struct td_thragent >{ > > list_t list; > > > > struct ps_prochandle *ph; ># 98 "../nptl_db/thread_dbP.h" ># 1 "../nptl_db/structs.def" 1 ># 25 "../nptl_db/structs.def" >uint32_t ta_sizeof_pthread; >db_desc_t ta_field_pthread_list; >db_desc_t ta_field_pthread_report_events; >db_desc_t ta_field_pthread_tid; >db_desc_t ta_field_pthread_pid; >db_desc_t ta_field_pthread_start_routine; >db_desc_t ta_field_pthread_cancelhandling; >db_desc_t ta_field_pthread_schedpolicy; >db_desc_t ta_field_pthread_schedparam_sched_priority; >db_desc_t ta_field_pthread_specific; >db_desc_t ta_field_pthread_eventbuf; >db_desc_t ta_field_pthread_eventbuf_eventmask; >db_desc_t ta_field_pthread_eventbuf_eventmask_event_bits; >db_desc_t ta_field_pthread_nextevent; > >uint32_t ta_sizeof_list_t; >db_desc_t ta_field_list_t_next; >db_desc_t ta_field_list_t_prev; > >uint32_t ta_sizeof_td_thr_events_t; >db_desc_t ta_field_td_thr_events_t_event_bits; > >uint32_t ta_sizeof_td_eventbuf_t; >db_desc_t ta_field_td_eventbuf_t_eventnum; >db_desc_t ta_field_td_eventbuf_t_eventdata; > >psaddr_t ta_addr_stack_used; >psaddr_t ta_addr___stack_user; >psaddr_t ta_addr_nptl_version; >psaddr_t ta_addr___nptl_create_event; >psaddr_t ta_addr___nptl_death_event; >psaddr_t ta_addr___nptl_threads_events; >psaddr_t ta_addr___nptl_nthreads; db_desc_t ta_var___nptl_nthreads; >psaddr_t ta_addr___nptl_last_event; db_desc_t ta_var___nptl_last_event; >psaddr_t ta_addr___nptl_initial_report_events; db_desc_t ta_var___nptl_initial_report_events; > >psaddr_t ta_addr___pthread_keys; db_desc_t ta_var___pthread_keys; >uint32_t ta_sizeof_pthread_key_struct; >db_desc_t ta_field_pthread_key_struct_seq; >db_desc_t ta_field_pthread_key_struct_destr; > >uint32_t ta_sizeof_pthread_key_data; >db_desc_t ta_field_pthread_key_data_seq; >db_desc_t ta_field_pthread_key_data_data; >uint32_t ta_sizeof_pthread_key_data_level2; >db_desc_t ta_field_pthread_key_data_level2_data; > >db_desc_t ta_field_link_map_l_tls_modid; > >db_desc_t ta_field_dtv_dtv; > >db_desc_t ta_field_dtv_t_pointer_val; > >db_desc_t ta_field_pthread_dtvp; ># 99 "../nptl_db/thread_dbP.h" 2 > > > > > > > > enum > { > ta_howto_unknown, > ta_howto_reg, > ta_howto_reg_thread_area, > ta_howto_const_thread_area > } ta_howto; > union > { > uint32_t const_thread_area; > > > db_desc_t reg; > db_desc_t reg_thread_area; > } ta_howto_data; >}; > > > >extern list_t __td_agent_list __attribute__ ((visibility ("hidden"))); > > > >static inline _Bool >ta_ok (const td_thragent_t *ta) >{ > list_t *runp; > > for (runp = (&__td_agent_list)->next; runp != (&__td_agent_list); runp = runp->next) > if (((td_thragent_t *) ((char *) (runp) - (unsigned long) (&((td_thragent_t *) 0)->list))) == ta) > return 1; > > return 0; >} > > > >extern ps_err_e td_lookup (struct ps_prochandle *ps, > int idx, psaddr_t *sym_addr) __attribute__ ((visibility ("hidden"))); ># 167 "../nptl_db/thread_dbP.h" >extern td_err_e _td_locate_field (td_thragent_t *ta, > db_desc_t desc, int descriptor_name, > psaddr_t idx, > psaddr_t *address) __attribute__ ((visibility ("hidden"))); ># 190 "../nptl_db/thread_dbP.h" >extern td_err_e _td_fetch_value (td_thragent_t *ta, > db_desc_t field, int descriptor_name, > psaddr_t idx, psaddr_t address, > psaddr_t *result) __attribute__ ((visibility ("hidden"))); >extern td_err_e _td_fetch_value_local (td_thragent_t *ta, > db_desc_t field, > int descriptor_name, > psaddr_t idx, void *address, > psaddr_t *result) __attribute__ ((visibility ("hidden"))); ># 222 "../nptl_db/thread_dbP.h" >extern td_err_e _td_store_value (td_thragent_t *ta, > db_desc_t field, int descriptor_name, > psaddr_t idx, psaddr_t address, > psaddr_t value) __attribute__ ((visibility ("hidden"))); >extern td_err_e _td_store_value_local (td_thragent_t *ta, > db_desc_t field, int descriptor_name, > psaddr_t idx, void *address, > psaddr_t value) __attribute__ ((visibility ("hidden"))); ># 251 "../nptl_db/thread_dbP.h" >extern td_err_e _td_check_sizeof (td_thragent_t *ta, uint32_t *sizep, > int sizep_name) __attribute__ ((visibility ("hidden"))); > >extern td_err_e __td_ta_lookup_th_unique (const td_thragent_t *ta, > lwpid_t lwpid, td_thrhandle_t *th); ># 23 "../nptl_db/db_info.c" 2 > > >typedef struct pthread pthread; >typedef struct pthread_key_struct pthread_key_struct; >typedef struct pthread_key_data pthread_key_data; >typedef struct >{ > struct pthread_key_data data[32]; >} >pthread_key_data_level2; > >typedef struct >{ > union dtv dtv[(4294967295U) / 2 / sizeof (union dtv)]; >} dtv; > >typedef struct link_map link_map; > > >extern _Bool __nptl_initial_report_events; ># 80 "../nptl_db/db_info.c" ># 1 "../nptl_db/structs.def" 1 ># 25 "../nptl_db/structs.def" >const uint32_t _thread_db_sizeof_pthread = sizeof (pthread); >const uint32_t _thread_db_pthread_list[3] = { (8 * sizeof (((pthread *) 0)->list)), (1), (__builtin_offsetof (pthread, list)) }; >const uint32_t _thread_db_pthread_report_events[3] = { (8 * sizeof (((pthread *) 0)->report_events)), (1), (__builtin_offsetof (pthread, report_events)) }; >const uint32_t _thread_db_pthread_tid[3] = { (8 * sizeof (((pthread *) 0)->tid)), (1), (__builtin_offsetof (pthread, tid)) }; >const uint32_t _thread_db_pthread_pid[3] = { (8 * sizeof (((pthread *) 0)->pid)), (1), (__builtin_offsetof (pthread, pid)) }; >const uint32_t _thread_db_pthread_start_routine[3] = { (8 * sizeof (((pthread *) 0)->start_routine)), (1), (__builtin_offsetof (pthread, start_routine)) }; >const uint32_t _thread_db_pthread_cancelhandling[3] = { (8 * sizeof (((pthread *) 0)->cancelhandling)), (1), (__builtin_offsetof (pthread, cancelhandling)) }; >const uint32_t _thread_db_pthread_schedpolicy[3] = { (8 * sizeof (((pthread *) 0)->schedpolicy)), (1), (__builtin_offsetof (pthread, schedpolicy)) }; >const uint32_t _thread_db_pthread_schedparam_sched_priority[3] = { (8 * sizeof (((pthread *) 0)->schedparam.__sched_priority)), (1), (__builtin_offsetof (pthread, schedparam.__sched_priority)) }; >const uint32_t _thread_db_pthread_specific[3] = { (8 * sizeof (((pthread *) 0)->specific)), (1), (__builtin_offsetof (pthread, specific)) }; >const uint32_t _thread_db_pthread_eventbuf[3] = { (8 * sizeof (((pthread *) 0)->eventbuf)), (1), (__builtin_offsetof (pthread, eventbuf)) }; >const uint32_t _thread_db_pthread_eventbuf_eventmask[3] = { (8 * sizeof (((pthread *) 0)->eventbuf.eventmask)), (1), (__builtin_offsetof (pthread, eventbuf.eventmask)) }; >const uint32_t _thread_db_pthread_eventbuf_eventmask_event_bits[3] = { (8 * sizeof (((pthread *) 0)->eventbuf.eventmask.event_bits)[0]), (sizeof (((pthread *) 0)->eventbuf.eventmask.event_bits) / sizeof (((pthread *) 0)->eventbuf.eventmask.event_bits)[0]), (__builtin_offsetof (pthread, eventbuf.eventmask.event_bits)) }; >const uint32_t _thread_db_pthread_nextevent[3] = { (8 * sizeof (((pthread *) 0)->nextevent)), (1), (__builtin_offsetof (pthread, nextevent)) }; > >const uint32_t _thread_db_sizeof_list_t = sizeof (list_t); >const uint32_t _thread_db_list_t_next[3] = { (8 * sizeof (((list_t *) 0)->next)), (1), (__builtin_offsetof (list_t, next)) }; >const uint32_t _thread_db_list_t_prev[3] = { (8 * sizeof (((list_t *) 0)->prev)), (1), (__builtin_offsetof (list_t, prev)) }; > >const uint32_t _thread_db_sizeof_td_thr_events_t = sizeof (td_thr_events_t); >const uint32_t _thread_db_td_thr_events_t_event_bits[3] = { (8 * sizeof (((td_thr_events_t *) 0)->event_bits)[0]), (sizeof (((td_thr_events_t *) 0)->event_bits) / sizeof (((td_thr_events_t *) 0)->event_bits)[0]), (__builtin_offsetof (td_thr_events_t, event_bits)) }; > >const uint32_t _thread_db_sizeof_td_eventbuf_t = sizeof (td_eventbuf_t); >const uint32_t _thread_db_td_eventbuf_t_eventnum[3] = { (8 * sizeof (((td_eventbuf_t *) 0)->eventnum)), (1), (__builtin_offsetof (td_eventbuf_t, eventnum)) }; >const uint32_t _thread_db_td_eventbuf_t_eventdata[3] = { (8 * sizeof (((td_eventbuf_t *) 0)->eventdata)), (1), (__builtin_offsetof (td_eventbuf_t, eventdata)) }; > > > > > > > >const uint32_t _thread_db___nptl_nthreads[3] = { (8 * sizeof (__nptl_nthreads)), (1), (0) }; >const uint32_t _thread_db___nptl_last_event[3] = { (8 * sizeof (__nptl_last_event)), (1), (0) }; >const uint32_t _thread_db___nptl_initial_report_events[3] = { (8 * sizeof (__nptl_initial_report_events)), (1), (0) }; > >const uint32_t _thread_db___pthread_keys[3] = { (8 * sizeof (__pthread_keys)[0]), (sizeof (__pthread_keys) / sizeof (__pthread_keys)[0]), (0) }; >const uint32_t _thread_db_sizeof_pthread_key_struct = sizeof (pthread_key_struct); >const uint32_t _thread_db_pthread_key_struct_seq[3] = { (8 * sizeof (((pthread_key_struct *) 0)->seq)), (1), (__builtin_offsetof (pthread_key_struct, seq)) }; >const uint32_t _thread_db_pthread_key_struct_destr[3] = { (8 * sizeof (((pthread_key_struct *) 0)->destr)), (1), (__builtin_offsetof (pthread_key_struct, destr)) }; > >const uint32_t _thread_db_sizeof_pthread_key_data = sizeof (pthread_key_data); >const uint32_t _thread_db_pthread_key_data_seq[3] = { (8 * sizeof (((pthread_key_data *) 0)->seq)), (1), (__builtin_offsetof (pthread_key_data, seq)) }; >const uint32_t _thread_db_pthread_key_data_data[3] = { (8 * sizeof (((pthread_key_data *) 0)->data)), (1), (__builtin_offsetof (pthread_key_data, data)) }; >const uint32_t _thread_db_sizeof_pthread_key_data_level2 = sizeof (pthread_key_data_level2); >const uint32_t _thread_db_pthread_key_data_level2_data[3] = { (8 * sizeof (((pthread_key_data_level2 *) 0)->data)[0]), (sizeof (((pthread_key_data_level2 *) 0)->data) / sizeof (((pthread_key_data_level2 *) 0)->data)[0]), (__builtin_offsetof (pthread_key_data_level2, data)) }; > >const uint32_t _thread_db_link_map_l_tls_modid[3] = { (8 * sizeof (((link_map *) 0)->l_tls_modid)), (1), (__builtin_offsetof (link_map, l_tls_modid)) }; > >const uint32_t _thread_db_dtv_dtv[3] = { (8 * sizeof (((dtv *) 0)->dtv)[0]), (sizeof (((dtv *) 0)->dtv) / sizeof (((dtv *) 0)->dtv)[0]), (__builtin_offsetof (dtv, dtv)) }; > >const uint32_t _thread_db_dtv_t_pointer_val[3] = { (8 * sizeof (((dtv_t *) 0)->pointer.val)), (1), (__builtin_offsetof (dtv_t, pointer.val)) }; > >const uint32_t _thread_db_pthread_dtvp[3] = { (8 * sizeof (((pthread *) 0)->header.dtv)), (1), (__builtin_offsetof (pthread, header.dtv)) }; ># 81 "../nptl_db/db_info.c" 2 ># 104 "../nptl_db/db_info.c" >const uint32_t _thread_db_register32_thread_area[3] = { (32), ((3)), ((__builtin_offsetof (struct user_regs_struct, xgs))) }; const uint32_t _thread_db_register64_thread_area[3] = { (64), ((3)), ((26 * 8)) }; ># 649 "pthread_create.c" 2 > > > > > > > > > > > > > >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 61801
: 33118 |
33122
|
33123