Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 909284 Details for
Bug 1093467
gcc 4.9.0 crashes when building mysql on aarch64
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
Preprocessed source
aarch64-preproc.txt (text/plain), 388.53 KB, created by
Terje Røsten
on 2014-06-16 22:03:43 UTC
(
hide
)
Description:
Preprocessed source
Filename:
MIME Type:
Creator:
Terje Røsten
Created:
2014-06-16 22:03:43 UTC
Size:
388.53 KB
patch
obsolete
>// /usr/libexec/gcc/aarch64-redhat-linux/4.9.0/cc1plus -quiet -I ../../../build/include -I ../../.. -I ../../../include -I ../../../sql -I ../../../regex -I ../../../extra/yassl/include -D_GNU_SOURCE -D HAVE_CONFIG_H -D MYSQL_SERVER -D DBUG_OFF -D MY_PTHREAD_FASTMUTEX=1 ../../../storage/perfschema/pfs_account.cc -quiet -dumpbase pfs_account.cc -mlittle-endian -mabi=lp64 -auxbase-strip CMakeFiles/perfschema.dir/pfs_account.cc.o -g -O3 -Wall -Wno-unused-parameter -fno-delete-null-pointer-checks -fPIC -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -o - -frandom-seed=0 ># 1 "../../../storage/perfschema/pfs_account.cc" ># 1 "/builddir/build/BUILD/mysql-5.6.19/build/storage/perfschema//" ># 1 "<built-in>" ># 1 "<command-line>" ># 1 "/usr/include/stdc-predef.h" 1 3 4 ># 1 "<command-line>" 2 ># 1 "../../../storage/perfschema/pfs_account.cc" ># 21 "../../../storage/perfschema/pfs_account.cc" ># 1 "../../../include/my_global.h" 1 ># 68 "../../../include/my_global.h" ># 1 "../../../build/include/my_config.h" 1 ># 69 "../../../include/my_global.h" 2 ># 266 "../../../include/my_global.h" ># 1 "/usr/include/pthread.h" 1 3 4 ># 21 "/usr/include/pthread.h" 3 4 ># 1 "/usr/include/features.h" 1 3 4 ># 365 "/usr/include/features.h" 3 4 ># 1 "/usr/include/sys/cdefs.h" 1 3 4 ># 385 "/usr/include/sys/cdefs.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 386 "/usr/include/sys/cdefs.h" 2 3 4 ># 366 "/usr/include/features.h" 2 3 4 ># 389 "/usr/include/features.h" 3 4 ># 1 "/usr/include/gnu/stubs.h" 1 3 4 > > > > ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 6 "/usr/include/gnu/stubs.h" 2 3 4 > > ># 1 "/usr/include/gnu/stubs-lp64.h" 1 3 4 ># 9 "/usr/include/gnu/stubs.h" 2 3 4 ># 390 "/usr/include/features.h" 2 3 4 ># 22 "/usr/include/pthread.h" 2 3 4 ># 1 "/usr/include/endian.h" 1 3 4 ># 36 "/usr/include/endian.h" 3 4 ># 1 "/usr/include/bits/endian.h" 1 3 4 ># 37 "/usr/include/endian.h" 2 3 4 ># 60 "/usr/include/endian.h" 3 4 ># 1 "/usr/include/bits/byteswap.h" 1 3 4 ># 27 "/usr/include/bits/byteswap.h" 3 4 ># 1 "/usr/include/bits/types.h" 1 3 4 ># 27 "/usr/include/bits/types.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 28 "/usr/include/bits/types.h" 2 3 4 > > >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; > >typedef signed long int __int64_t; >typedef unsigned long int __uint64_t; > > > > > > > >typedef long int __quad_t; >typedef unsigned long int __u_quad_t; ># 121 "/usr/include/bits/types.h" 3 4 ># 1 "/usr/include/bits/typesizes.h" 1 3 4 ># 122 "/usr/include/bits/types.h" 2 3 4 > > >typedef unsigned long int __dev_t; >typedef unsigned int __uid_t; >typedef unsigned int __gid_t; >typedef unsigned long int __ino_t; >typedef unsigned long int __ino64_t; >typedef unsigned int __mode_t; >typedef unsigned int __nlink_t; >typedef long int __off_t; >typedef long int __off64_t; >typedef int __pid_t; >typedef struct { int __val[2]; } __fsid_t; >typedef long int __clock_t; >typedef unsigned long int __rlim_t; >typedef unsigned long int __rlim64_t; >typedef unsigned int __id_t; >typedef long int __time_t; >typedef unsigned int __useconds_t; >typedef long int __suseconds_t; > >typedef int __daddr_t; >typedef int __key_t; > > >typedef int __clockid_t; > > >typedef void * __timer_t; > > >typedef int __blksize_t; > > > > >typedef long int __blkcnt_t; >typedef long int __blkcnt64_t; > > >typedef unsigned long int __fsblkcnt_t; >typedef unsigned long int __fsblkcnt64_t; > > >typedef unsigned long int __fsfilcnt_t; >typedef unsigned long int __fsfilcnt64_t; > > >typedef long int __fsword_t; > >typedef long int __ssize_t; > > >typedef long int __syscall_slong_t; > >typedef unsigned long int __syscall_ulong_t; > > > >typedef __off64_t __loff_t; >typedef __quad_t *__qaddr_t; >typedef char *__caddr_t; > > >typedef long int __intptr_t; > > >typedef unsigned int __socklen_t; ># 28 "/usr/include/bits/byteswap.h" 2 3 4 > > > > > > ># 1 "/usr/include/bits/byteswap-16.h" 1 3 4 ># 35 "/usr/include/bits/byteswap.h" 2 3 4 ># 43 "/usr/include/bits/byteswap.h" 3 4 >static __inline unsigned int >__bswap_32 (unsigned int __bsx) >{ > return __builtin_bswap32 (__bsx); >} ># 74 "/usr/include/bits/byteswap.h" 3 4 >static __inline __uint64_t >__bswap_64 (__uint64_t __bsx) >{ > return __builtin_bswap64 (__bsx); >} ># 61 "/usr/include/endian.h" 2 3 4 ># 23 "/usr/include/pthread.h" 2 3 4 ># 1 "/usr/include/sched.h" 1 3 4 ># 28 "/usr/include/sched.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 212 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 3 4 >typedef long unsigned int size_t; ># 29 "/usr/include/sched.h" 2 3 4 > > > > > ># 1 "/usr/include/time.h" 1 3 4 ># 73 "/usr/include/time.h" 3 4 > > >typedef __time_t time_t; > > > ># 120 "/usr/include/time.h" 3 4 >struct timespec > { > __time_t tv_sec; > __syscall_slong_t tv_nsec; > }; ># 35 "/usr/include/sched.h" 2 3 4 > > >typedef __pid_t pid_t; > > > > > ># 1 "/usr/include/bits/sched.h" 1 3 4 ># 72 "/usr/include/bits/sched.h" 3 4 >struct sched_param > { > int __sched_priority; > }; > >extern "C" { > > > >extern int clone (int (*__fn) (void *__arg), void *__child_stack, > int __flags, void *__arg, ...) throw (); > > >extern int unshare (int __flags) throw (); > > >extern int sched_getcpu (void) throw (); > > >extern int setns (int __fd, int __nstype) throw (); > > > >} > > > > > > > >struct __sched_param > { > int __sched_priority; > }; ># 118 "/usr/include/bits/sched.h" 3 4 >typedef unsigned long int __cpu_mask; > > > > > > >typedef struct >{ > __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))]; >} cpu_set_t; ># 201 "/usr/include/bits/sched.h" 3 4 >extern "C" { > >extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp) > throw (); >extern cpu_set_t *__sched_cpualloc (size_t __count) throw () ; >extern void __sched_cpufree (cpu_set_t *__set) throw (); > >} ># 44 "/usr/include/sched.h" 2 3 4 > > > > >extern "C" { > > >extern int sched_setparam (__pid_t __pid, const struct sched_param *__param) > throw (); > > >extern int sched_getparam (__pid_t __pid, struct sched_param *__param) throw (); > > >extern int sched_setscheduler (__pid_t __pid, int __policy, > const struct sched_param *__param) throw (); > > >extern int sched_getscheduler (__pid_t __pid) throw (); > > >extern int sched_yield (void) throw (); > > >extern int sched_get_priority_max (int __algorithm) throw (); > > >extern int sched_get_priority_min (int __algorithm) throw (); > > >extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) throw (); ># 118 "/usr/include/sched.h" 3 4 >extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize, > const cpu_set_t *__cpuset) throw (); > > >extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize, > cpu_set_t *__cpuset) throw (); > > >} ># 24 "/usr/include/pthread.h" 2 3 4 ># 1 "/usr/include/time.h" 1 3 4 ># 29 "/usr/include/time.h" 3 4 >extern "C" { > > > > > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 38 "/usr/include/time.h" 2 3 4 > > > ># 1 "/usr/include/bits/time.h" 1 3 4 ># 30 "/usr/include/bits/time.h" 3 4 >struct timeval > { > __time_t tv_sec; > __suseconds_t tv_usec; > }; ># 86 "/usr/include/bits/time.h" 3 4 ># 1 "/usr/include/bits/timex.h" 1 3 4 ># 25 "/usr/include/bits/timex.h" 3 4 >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 "/usr/include/bits/time.h" 2 3 4 > >extern "C" { > > >extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) throw (); > >} ># 42 "/usr/include/time.h" 2 3 4 ># 57 "/usr/include/time.h" 3 4 > > >typedef __clock_t clock_t; > > > ># 91 "/usr/include/time.h" 3 4 >typedef __clockid_t clockid_t; ># 103 "/usr/include/time.h" 3 4 >typedef __timer_t timer_t; ># 131 "/usr/include/time.h" 3 4 > > >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 "/usr/include/time.h" 3 4 > > > >extern clock_t clock (void) throw (); > > >extern time_t time (time_t *__timer) throw (); > > >extern double difftime (time_t __time1, time_t __time0) > throw () __attribute__ ((__const__)); > > >extern time_t mktime (struct tm *__tp) throw (); > > > > > >extern size_t strftime (char *__restrict __s, size_t __maxsize, > const char *__restrict __format, > const struct tm *__restrict __tp) throw (); > > > > > >extern char *strptime (const char *__restrict __s, > const char *__restrict __fmt, struct tm *__tp) > throw (); > > > > > ># 1 "/usr/include/xlocale.h" 1 3 4 ># 27 "/usr/include/xlocale.h" 3 4 >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; ># 222 "/usr/include/time.h" 2 3 4 > >extern size_t strftime_l (char *__restrict __s, size_t __maxsize, > const char *__restrict __format, > const struct tm *__restrict __tp, > __locale_t __loc) throw (); > > > >extern char *strptime_l (const char *__restrict __s, > const char *__restrict __fmt, struct tm *__tp, > __locale_t __loc) throw (); > > > > > > >extern struct tm *gmtime (const time_t *__timer) throw (); > > > >extern struct tm *localtime (const time_t *__timer) throw (); > > > > > >extern struct tm *gmtime_r (const time_t *__restrict __timer, > struct tm *__restrict __tp) throw (); > > > >extern struct tm *localtime_r (const time_t *__restrict __timer, > struct tm *__restrict __tp) throw (); > > > > > >extern char *asctime (const struct tm *__tp) throw (); > > >extern char *ctime (const time_t *__timer) throw (); > > > > > > > >extern char *asctime_r (const struct tm *__restrict __tp, > char *__restrict __buf) throw (); > > >extern char *ctime_r (const time_t *__restrict __timer, > char *__restrict __buf) throw (); > > > > >extern char *__tzname[2]; >extern int __daylight; >extern long int __timezone; > > > > >extern char *tzname[2]; > > > >extern void tzset (void) throw (); > > > >extern int daylight; >extern long int timezone; > > > > > >extern int stime (const time_t *__when) throw (); ># 319 "/usr/include/time.h" 3 4 >extern time_t timegm (struct tm *__tp) throw (); > > >extern time_t timelocal (struct tm *__tp) throw (); > > >extern int dysize (int __year) throw () __attribute__ ((__const__)); ># 334 "/usr/include/time.h" 3 4 >extern int nanosleep (const struct timespec *__requested_time, > struct timespec *__remaining); > > > >extern int clock_getres (clockid_t __clock_id, struct timespec *__res) throw (); > > >extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) throw (); > > >extern int clock_settime (clockid_t __clock_id, const struct timespec *__tp) > throw (); > > > > > > >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) throw (); > > > > >extern int timer_create (clockid_t __clock_id, > struct sigevent *__restrict __evp, > timer_t *__restrict __timerid) throw (); > > >extern int timer_delete (timer_t __timerid) throw (); > > >extern int timer_settime (timer_t __timerid, int __flags, > const struct itimerspec *__restrict __value, > struct itimerspec *__restrict __ovalue) throw (); > > >extern int timer_gettime (timer_t __timerid, struct itimerspec *__value) > throw (); > > >extern int timer_getoverrun (timer_t __timerid) throw (); > > > > > >extern int timespec_get (struct timespec *__ts, int __base) > throw () __attribute__ ((__nonnull__ (1))); ># 403 "/usr/include/time.h" 3 4 >extern int getdate_err; ># 412 "/usr/include/time.h" 3 4 >extern struct tm *getdate (const char *__string); ># 426 "/usr/include/time.h" 3 4 >extern int getdate_r (const char *__restrict __string, > struct tm *__restrict __resbufp); > > >} ># 25 "/usr/include/pthread.h" 2 3 4 > ># 1 "/usr/include/bits/pthreadtypes.h" 1 3 4 ># 38 "/usr/include/bits/pthreadtypes.h" 3 4 >typedef unsigned long int pthread_t; > > >union pthread_attr_t >{ > char __size[64]; > long int __align; >}; > >typedef union pthread_attr_t pthread_attr_t; > > > >typedef struct __pthread_internal_list >{ > struct __pthread_internal_list *__prev; > struct __pthread_internal_list *__next; >} __pthread_list_t; > > > > >typedef union >{ > struct __pthread_mutex_s > { > int __lock; > unsigned int __count; > int __owner; > unsigned int __nusers; > int __kind; > int __spins; > __pthread_list_t __list; > > } __data; > char __size[48]; > long int __align; >} pthread_mutex_t; > > > > >typedef union >{ > char __size[8]; > long 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]; > long int __align; >} pthread_cond_t; > >typedef union >{ > char __size[8]; > int __align; >} pthread_condattr_t; > > > >typedef unsigned int pthread_key_t; > > > >typedef int pthread_once_t; > > > > > >typedef union >{ > 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; > int __writer; > int __shared; > unsigned long int __pad1; > unsigned long int __pad2; > unsigned int __flags; > } __data; > char __size[56]; > 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[32]; > long int __align; >} pthread_barrier_t; > >typedef union >{ > char __size[8]; > int __align; >} pthread_barrierattr_t; ># 27 "/usr/include/pthread.h" 2 3 4 ># 1 "/usr/include/bits/setjmp.h" 1 3 4 ># 30 "/usr/include/bits/setjmp.h" 3 4 >__extension__ typedef unsigned long long __jmp_buf [22]; ># 28 "/usr/include/pthread.h" 2 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 29 "/usr/include/pthread.h" 2 3 4 > > > >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 "/usr/include/pthread.h" 3 4 >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 "/usr/include/pthread.h" 3 4 >enum >{ > PTHREAD_INHERIT_SCHED, > > PTHREAD_EXPLICIT_SCHED > >}; > > > >enum >{ > PTHREAD_SCOPE_SYSTEM, > > PTHREAD_SCOPE_PROCESS > >}; > > > >enum >{ > PTHREAD_PROCESS_PRIVATE, > > PTHREAD_PROCESS_SHARED > >}; ># 192 "/usr/include/pthread.h" 3 4 >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 "/usr/include/pthread.h" 3 4 >extern "C" { > > > > >extern int pthread_create (pthread_t *__restrict __newthread, > const pthread_attr_t *__restrict __attr, > void *(*__start_routine) (void *), > void *__restrict __arg) throw () __attribute__ ((__nonnull__ (1, 3))); > > > > > >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) throw (); > > > > > > > >extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return, > const struct timespec *__abstime); > > > > > > >extern int pthread_detach (pthread_t __th) throw (); > > > >extern pthread_t pthread_self (void) throw () __attribute__ ((__const__)); > > >extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) > throw () __attribute__ ((__const__)); > > > > > > > >extern int pthread_attr_init (pthread_attr_t *__attr) throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_attr_destroy (pthread_attr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_attr_getdetachstate (const pthread_attr_t *__attr, > int *__detachstate) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_setdetachstate (pthread_attr_t *__attr, > int __detachstate) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_attr_getguardsize (const pthread_attr_t *__attr, > size_t *__guardsize) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_setguardsize (pthread_attr_t *__attr, > size_t __guardsize) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_attr_getschedparam (const pthread_attr_t *__restrict __attr, > struct sched_param *__restrict __param) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr, > const struct sched_param *__restrict > __param) throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_getschedpolicy (const pthread_attr_t *__restrict > __attr, int *__restrict __policy) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_attr_getinheritsched (const pthread_attr_t *__restrict > __attr, int *__restrict __inherit) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_setinheritsched (pthread_attr_t *__attr, > int __inherit) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_attr_getscope (const pthread_attr_t *__restrict __attr, > int *__restrict __scope) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_attr_getstackaddr (const pthread_attr_t *__restrict > __attr, void **__restrict __stackaddr) > throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__deprecated__)); > > > > > >extern int pthread_attr_setstackaddr (pthread_attr_t *__attr, > void *__stackaddr) > throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)); > > >extern int pthread_attr_getstacksize (const pthread_attr_t *__restrict > __attr, size_t *__restrict __stacksize) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern int pthread_attr_setstacksize (pthread_attr_t *__attr, > size_t __stacksize) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_attr_getstack (const pthread_attr_t *__restrict __attr, > void **__restrict __stackaddr, > size_t *__restrict __stacksize) > throw () __attribute__ ((__nonnull__ (1, 2, 3))); > > > > >extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, > size_t __stacksize) throw () __attribute__ ((__nonnull__ (1))); > > > > > >extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr, > size_t __cpusetsize, > const cpu_set_t *__cpuset) > throw () __attribute__ ((__nonnull__ (1, 3))); > > > >extern int pthread_attr_getaffinity_np (const pthread_attr_t *__attr, > size_t __cpusetsize, > cpu_set_t *__cpuset) > throw () __attribute__ ((__nonnull__ (1, 3))); > > >extern int pthread_getattr_default_np (pthread_attr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_setattr_default_np (const pthread_attr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > > > >extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) > throw () __attribute__ ((__nonnull__ (2))); > > > > > > > >extern int pthread_setschedparam (pthread_t __target_thread, int __policy, > const struct sched_param *__param) > throw () __attribute__ ((__nonnull__ (3))); > > >extern int pthread_getschedparam (pthread_t __target_thread, > int *__restrict __policy, > struct sched_param *__restrict __param) > throw () __attribute__ ((__nonnull__ (2, 3))); > > >extern int pthread_setschedprio (pthread_t __target_thread, int __prio) > throw (); > > > > >extern int pthread_getname_np (pthread_t __target_thread, char *__buf, > size_t __buflen) > throw () __attribute__ ((__nonnull__ (2))); > > >extern int pthread_setname_np (pthread_t __target_thread, const char *__name) > throw () __attribute__ ((__nonnull__ (2))); > > > > > >extern int pthread_getconcurrency (void) throw (); > > >extern int pthread_setconcurrency (int __level) throw (); > > > > > > > >extern int pthread_yield (void) throw (); > > > > >extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize, > const cpu_set_t *__cpuset) > throw () __attribute__ ((__nonnull__ (3))); > > >extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize, > cpu_set_t *__cpuset) > throw () __attribute__ ((__nonnull__ (3))); ># 496 "/usr/include/pthread.h" 3 4 >extern int pthread_once (pthread_once_t *__once_control, > void (*__init_routine) (void)) __attribute__ ((__nonnull__ (1, 2))); ># 508 "/usr/include/pthread.h" 3 4 >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 "/usr/include/pthread.h" 3 4 >struct __pthread_cleanup_frame >{ > void (*__cancel_routine) (void *); > void *__cancel_arg; > int __do_it; > int __cancel_type; >}; > > > > >class __pthread_cleanup_class >{ > void (*__cancel_routine) (void *); > void *__cancel_arg; > int __do_it; > int __cancel_type; > > public: > __pthread_cleanup_class (void (*__fct) (void *), void *__arg) > : __cancel_routine (__fct), __cancel_arg (__arg), __do_it (1) { } > ~__pthread_cleanup_class () { if (__do_it) __cancel_routine (__cancel_arg); } > void __setdoit (int __newval) { __do_it = __newval; } > void __defer () { pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED, > &__cancel_type); } > void __restore () const { pthread_setcanceltype (__cancel_type, 0); } >}; ># 744 "/usr/include/pthread.h" 3 4 >struct __jmp_buf_tag; >extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) throw (); > > > > > >extern int pthread_mutex_init (pthread_mutex_t *__mutex, > const pthread_mutexattr_t *__mutexattr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_mutex_destroy (pthread_mutex_t *__mutex) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_mutex_trylock (pthread_mutex_t *__mutex) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_mutex_lock (pthread_mutex_t *__mutex) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex, > const struct timespec *__restrict > __abstime) throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_mutex_getprioceiling (const pthread_mutex_t * > __restrict __mutex, > int *__restrict __prioceiling) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex, > int __prioceiling, > int *__restrict __old_ceiling) > throw () __attribute__ ((__nonnull__ (1, 3))); > > > > >extern int pthread_mutex_consistent (pthread_mutex_t *__mutex) > throw () __attribute__ ((__nonnull__ (1))); > >extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex) > throw () __attribute__ ((__nonnull__ (1))); ># 808 "/usr/include/pthread.h" 3 4 >extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_mutexattr_getpshared (const pthread_mutexattr_t * > __restrict __attr, > int *__restrict __pshared) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr, > int __pshared) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_mutexattr_gettype (const pthread_mutexattr_t *__restrict > __attr, int *__restrict __kind) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_mutexattr_getprotocol (const pthread_mutexattr_t * > __restrict __attr, > int *__restrict __protocol) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr, > int __protocol) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_mutexattr_getprioceiling (const pthread_mutexattr_t * > __restrict __attr, > int *__restrict __prioceiling) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr, > int __prioceiling) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_mutexattr_getrobust (const pthread_mutexattr_t *__attr, > int *__robustness) > throw () __attribute__ ((__nonnull__ (1, 2))); > >extern int pthread_mutexattr_getrobust_np (const pthread_mutexattr_t *__attr, > int *__robustness) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr, > int __robustness) > throw () __attribute__ ((__nonnull__ (1))); > >extern int pthread_mutexattr_setrobust_np (pthread_mutexattr_t *__attr, > int __robustness) > throw () __attribute__ ((__nonnull__ (1))); ># 890 "/usr/include/pthread.h" 3 4 >extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock, > const pthread_rwlockattr_t *__restrict > __attr) throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock, > const struct timespec *__restrict > __abstime) throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock, > const struct timespec *__restrict > __abstime) throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock) > throw () __attribute__ ((__nonnull__ (1))); > > > > > >extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlockattr_getpshared (const pthread_rwlockattr_t * > __restrict __attr, > int *__restrict __pshared) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, > int __pshared) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_rwlockattr_getkind_np (const pthread_rwlockattr_t * > __restrict __attr, > int *__restrict __pref) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr, > int __pref) throw () __attribute__ ((__nonnull__ (1))); > > > > > > > >extern int pthread_cond_init (pthread_cond_t *__restrict __cond, > const pthread_condattr_t *__restrict __cond_attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_cond_destroy (pthread_cond_t *__cond) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_cond_signal (pthread_cond_t *__cond) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_cond_broadcast (pthread_cond_t *__cond) > throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern int pthread_cond_wait (pthread_cond_t *__restrict __cond, > pthread_mutex_t *__restrict __mutex) > __attribute__ ((__nonnull__ (1, 2))); ># 1002 "/usr/include/pthread.h" 3 4 >extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond, > pthread_mutex_t *__restrict __mutex, > const struct timespec *__restrict __abstime) > __attribute__ ((__nonnull__ (1, 2, 3))); > > > > >extern int pthread_condattr_init (pthread_condattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_condattr_destroy (pthread_condattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_condattr_getpshared (const pthread_condattr_t * > __restrict __attr, > int *__restrict __pshared) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_condattr_setpshared (pthread_condattr_t *__attr, > int __pshared) throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_condattr_getclock (const pthread_condattr_t * > __restrict __attr, > __clockid_t *__restrict __clock_id) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_condattr_setclock (pthread_condattr_t *__attr, > __clockid_t __clock_id) > throw () __attribute__ ((__nonnull__ (1))); ># 1046 "/usr/include/pthread.h" 3 4 >extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_spin_destroy (pthread_spinlock_t *__lock) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_spin_lock (pthread_spinlock_t *__lock) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_spin_trylock (pthread_spinlock_t *__lock) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_spin_unlock (pthread_spinlock_t *__lock) > throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier, > const pthread_barrierattr_t *__restrict > __attr, unsigned int __count) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_barrier_destroy (pthread_barrier_t *__barrier) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_barrier_wait (pthread_barrier_t *__barrier) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_barrierattr_getpshared (const pthread_barrierattr_t * > __restrict __attr, > int *__restrict __pshared) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, > int __pshared) > throw () __attribute__ ((__nonnull__ (1))); ># 1113 "/usr/include/pthread.h" 3 4 >extern int pthread_key_create (pthread_key_t *__key, > void (*__destr_function) (void *)) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int pthread_key_delete (pthread_key_t __key) throw (); > > >extern void *pthread_getspecific (pthread_key_t __key) throw (); > > >extern int pthread_setspecific (pthread_key_t __key, > const void *__pointer) throw () ; > > > > >extern int pthread_getcpuclockid (pthread_t __thread_id, > __clockid_t *__clock_id) > throw () __attribute__ ((__nonnull__ (2))); ># 1147 "/usr/include/pthread.h" 3 4 >extern int pthread_atfork (void (*__prepare) (void), > void (*__parent) (void), > void (*__child) (void)) throw (); > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__leaf__)) pthread_equal (pthread_t __thread1, pthread_t __thread2) throw () >{ > return __thread1 == __thread2; >} > > >} ># 267 "../../../include/my_global.h" 2 ># 309 "../../../include/my_global.h" ># 1 "/usr/include/stdio.h" 1 3 4 ># 29 "/usr/include/stdio.h" 3 4 >extern "C" { > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 34 "/usr/include/stdio.h" 2 3 4 ># 44 "/usr/include/stdio.h" 3 4 >struct _IO_FILE; > > > >typedef struct _IO_FILE FILE; > > > > > ># 64 "/usr/include/stdio.h" 3 4 >typedef struct _IO_FILE __FILE; ># 74 "/usr/include/stdio.h" 3 4 ># 1 "/usr/include/libio.h" 1 3 4 ># 31 "/usr/include/libio.h" 3 4 ># 1 "/usr/include/_G_config.h" 1 3 4 ># 15 "/usr/include/_G_config.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 16 "/usr/include/_G_config.h" 2 3 4 > > > > ># 1 "/usr/include/wchar.h" 1 3 4 ># 82 "/usr/include/wchar.h" 3 4 >typedef struct >{ > int __count; > union > { > > unsigned int __wch; > > > > char __wchb[4]; > } __value; >} __mbstate_t; ># 21 "/usr/include/_G_config.h" 2 3 4 >typedef struct >{ > __off_t __pos; > __mbstate_t __state; >} _G_fpos_t; >typedef struct >{ > __off64_t __pos; > __mbstate_t __state; >} _G_fpos64_t; ># 32 "/usr/include/libio.h" 2 3 4 ># 49 "/usr/include/libio.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stdarg.h" 1 3 4 ># 40 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stdarg.h" 3 4 >typedef __builtin_va_list __gnuc_va_list; ># 50 "/usr/include/libio.h" 2 3 4 ># 144 "/usr/include/libio.h" 3 4 >struct _IO_jump_t; struct _IO_FILE; ># 154 "/usr/include/libio.h" 3 4 >typedef void _IO_lock_t; > > > > > >struct _IO_marker { > struct _IO_marker *_next; > struct _IO_FILE *_sbuf; > > > > int _pos; ># 177 "/usr/include/libio.h" 3 4 >}; > > >enum __codecvt_result >{ > __codecvt_ok, > __codecvt_partial, > __codecvt_error, > __codecvt_noconv >}; ># 245 "/usr/include/libio.h" 3 4 >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 "/usr/include/libio.h" 3 4 > __off64_t _offset; ># 302 "/usr/include/libio.h" 3 4 > void *__pad1; > void *__pad2; > void *__pad3; > void *__pad4; > size_t __pad5; > > int _mode; > > char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)]; > >}; > > > > > >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_; ># 338 "/usr/include/libio.h" 3 4 >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 "C" { > > >extern int __underflow (_IO_FILE *); >extern int __uflow (_IO_FILE *); >extern int __overflow (_IO_FILE *, int); ># 434 "/usr/include/libio.h" 3 4 >extern int _IO_getc (_IO_FILE *__fp); >extern int _IO_putc (int __c, _IO_FILE *__fp); >extern int _IO_feof (_IO_FILE *__fp) throw (); >extern int _IO_ferror (_IO_FILE *__fp) throw (); > >extern int _IO_peekc_locked (_IO_FILE *__fp); > > > > > >extern void _IO_flockfile (_IO_FILE *) throw (); >extern void _IO_funlockfile (_IO_FILE *) throw (); >extern int _IO_ftrylockfile (_IO_FILE *) throw (); ># 464 "/usr/include/libio.h" 3 4 >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 *) throw (); ># 526 "/usr/include/libio.h" 3 4 >} ># 75 "/usr/include/stdio.h" 2 3 4 > > > > >typedef __gnuc_va_list va_list; ># 92 "/usr/include/stdio.h" 3 4 >typedef __off64_t off_t; > > > > >typedef __off64_t off64_t; > > > > >typedef __ssize_t ssize_t; > > > > > > > > > >typedef _G_fpos64_t fpos_t; > > > >typedef _G_fpos64_t fpos64_t; ># 164 "/usr/include/stdio.h" 3 4 ># 1 "/usr/include/bits/stdio_lim.h" 1 3 4 ># 165 "/usr/include/stdio.h" 2 3 4 > > > >extern struct _IO_FILE *stdin; >extern struct _IO_FILE *stdout; >extern struct _IO_FILE *stderr; > > > > > > > >extern int remove (const char *__filename) throw (); > >extern int rename (const char *__old, const char *__new) throw (); > > > > >extern int renameat (int __oldfd, const char *__old, int __newfd, > const char *__new) throw (); > > > ># 198 "/usr/include/stdio.h" 3 4 >extern FILE *tmpfile (void) __asm__ ("" "tmpfile64") ; > > > > > > >extern FILE *tmpfile64 (void) ; > > > >extern char *tmpnam (char *__s) throw () ; > > > > > >extern char *tmpnam_r (char *__s) throw () ; ># 227 "/usr/include/stdio.h" 3 4 >extern char *tempnam (const char *__dir, const char *__pfx) > throw () __attribute__ ((__malloc__)) ; > > > > > > > > >extern int fclose (FILE *__stream); > > > > >extern int fflush (FILE *__stream); > ># 252 "/usr/include/stdio.h" 3 4 >extern int fflush_unlocked (FILE *__stream); ># 262 "/usr/include/stdio.h" 3 4 >extern int fcloseall (void); > > > > ># 283 "/usr/include/stdio.h" 3 4 >extern FILE *fopen (const char *__restrict __filename, const char *__restrict __modes) __asm__ ("" "fopen64") > > ; >extern FILE *freopen (const char *__restrict __filename, const char *__restrict __modes, FILE *__restrict __stream) __asm__ ("" "freopen64") > > > ; > > > > > > > >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) throw () ; > > > > > >extern FILE *fopencookie (void *__restrict __magic_cookie, > const char *__restrict __modes, > _IO_cookie_io_functions_t __io_funcs) throw () ; > > > > >extern FILE *fmemopen (void *__s, size_t __len, const char *__modes) > throw () ; > > > > >extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) throw () ; > > > > > > >extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) throw (); > > > >extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, > int __modes, size_t __n) throw (); > > > > > >extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, > size_t __size) throw (); > > >extern void setlinebuf (FILE *__stream) throw (); > > > > > > > > >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, ...) throw (); > > > > > >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) throw (); > > > > > >extern int snprintf (char *__restrict __s, size_t __maxlen, > const char *__restrict __format, ...) > throw () __attribute__ ((__format__ (__printf__, 3, 4))); > >extern int vsnprintf (char *__restrict __s, size_t __maxlen, > const char *__restrict __format, __gnuc_va_list __arg) > throw () __attribute__ ((__format__ (__printf__, 3, 0))); > > > > > > >extern int vasprintf (char **__restrict __ptr, const char *__restrict __f, > __gnuc_va_list __arg) > throw () __attribute__ ((__format__ (__printf__, 2, 0))) ; >extern int __asprintf (char **__restrict __ptr, > const char *__restrict __fmt, ...) > throw () __attribute__ ((__format__ (__printf__, 2, 3))) ; >extern int asprintf (char **__restrict __ptr, > const char *__restrict __fmt, ...) > throw () __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, ...) throw (); ># 463 "/usr/include/stdio.h" 3 4 > > > > > > > > >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) > throw () __attribute__ ((__format__ (__scanf__, 2, 0))); ># 522 "/usr/include/stdio.h" 3 4 > > > > > > > > > >extern int fgetc (FILE *__stream); >extern int getc (FILE *__stream); > > > > > >extern int getchar (void); > ># 550 "/usr/include/stdio.h" 3 4 >extern int getc_unlocked (FILE *__stream); >extern int getchar_unlocked (void); ># 561 "/usr/include/stdio.h" 3 4 >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 "/usr/include/stdio.h" 3 4 >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) > ; ># 638 "/usr/include/stdio.h" 3 4 >extern char *gets (char *__s) __attribute__ ((__deprecated__)); > > ># 649 "/usr/include/stdio.h" 3 4 >extern char *fgets_unlocked (char *__restrict __s, int __n, > FILE *__restrict __stream) ; ># 665 "/usr/include/stdio.h" 3 4 >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 "/usr/include/stdio.h" 3 4 >extern int fputs_unlocked (const char *__restrict __s, > FILE *__restrict __stream); ># 737 "/usr/include/stdio.h" 3 4 >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); > ># 781 "/usr/include/stdio.h" 3 4 >extern int fseeko (FILE *__stream, __off64_t __off, int __whence) __asm__ ("" "fseeko64") > > ; >extern __off64_t ftello (FILE *__stream) __asm__ ("" "ftello64"); > > > > > > > > ># 806 "/usr/include/stdio.h" 3 4 >extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos) __asm__ ("" "fgetpos64") > ; >extern int fsetpos (FILE *__stream, const fpos_t *__pos) __asm__ ("" "fsetpos64") > ; > > > > > > > > >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) throw (); > >extern int feof (FILE *__stream) throw () ; > >extern int ferror (FILE *__stream) throw () ; > > > > >extern void clearerr_unlocked (FILE *__stream) throw (); >extern int feof_unlocked (FILE *__stream) throw () ; >extern int ferror_unlocked (FILE *__stream) throw () ; > > > > > > > > >extern void perror (const char *__s); > > > > > > ># 1 "/usr/include/bits/sys_errlist.h" 1 3 4 ># 26 "/usr/include/bits/sys_errlist.h" 3 4 >extern int sys_nerr; >extern const char *const sys_errlist[]; > > >extern int _sys_nerr; >extern const char *const _sys_errlist[]; ># 854 "/usr/include/stdio.h" 2 3 4 > > > > >extern int fileno (FILE *__stream) throw () ; > > > > >extern int fileno_unlocked (FILE *__stream) throw () ; ># 872 "/usr/include/stdio.h" 3 4 >extern FILE *popen (const char *__command, const char *__modes) ; > > > > > >extern int pclose (FILE *__stream); > > > > > >extern char *ctermid (char *__s) throw (); > > > > > >extern char *cuserid (char *__s); > > > > >struct obstack; > > >extern int obstack_printf (struct obstack *__restrict __obstack, > const char *__restrict __format, ...) > throw () __attribute__ ((__format__ (__printf__, 2, 3))); >extern int obstack_vprintf (struct obstack *__restrict __obstack, > const char *__restrict __format, > __gnuc_va_list __args) > throw () __attribute__ ((__format__ (__printf__, 2, 0))); > > > > > > > >extern void flockfile (FILE *__stream) throw (); > > > >extern int ftrylockfile (FILE *__stream) throw () ; > > >extern void funlockfile (FILE *__stream) throw (); ># 933 "/usr/include/stdio.h" 3 4 ># 1 "/usr/include/bits/stdio.h" 1 3 4 ># 35 "/usr/include/bits/stdio.h" 3 4 >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__ ((__leaf__)) feof_unlocked (FILE *__stream) throw () >{ > return (((__stream)->_flags & 0x10) != 0); >} > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__leaf__)) ferror_unlocked (FILE *__stream) throw () >{ > return (((__stream)->_flags & 0x20) != 0); >} ># 934 "/usr/include/stdio.h" 2 3 4 ># 942 "/usr/include/stdio.h" 3 4 >} ># 310 "../../../include/my_global.h" 2 > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stdarg.h" 1 3 4 ># 312 "../../../include/my_global.h" 2 > ># 1 "/usr/include/stdlib.h" 1 3 4 ># 32 "/usr/include/stdlib.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 33 "/usr/include/stdlib.h" 2 3 4 > >extern "C" { > > > > > > ># 1 "/usr/include/bits/waitflags.h" 1 3 4 ># 42 "/usr/include/stdlib.h" 2 3 4 ># 1 "/usr/include/bits/waitstatus.h" 1 3 4 ># 66 "/usr/include/bits/waitstatus.h" 3 4 >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 "/usr/include/stdlib.h" 2 3 4 ># 95 "/usr/include/stdlib.h" 3 4 > > >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 "/usr/include/stdlib.h" 3 4 >extern size_t __ctype_get_mb_cur_max (void) throw () ; > > > > >extern double atof (const char *__nptr) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ; > >extern int atoi (const char *__nptr) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ; > >extern long int atol (const char *__nptr) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ; > > > > > >__extension__ extern long long int atoll (const char *__nptr) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ; > > > > > >extern double strtod (const char *__restrict __nptr, > char **__restrict __endptr) > throw () __attribute__ ((__nonnull__ (1))); > > > > > >extern float strtof (const char *__restrict __nptr, > char **__restrict __endptr) throw () __attribute__ ((__nonnull__ (1))); > >extern long double strtold (const char *__restrict __nptr, > char **__restrict __endptr) > throw () __attribute__ ((__nonnull__ (1))); > > > > > >extern long int strtol (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > throw () __attribute__ ((__nonnull__ (1))); > >extern unsigned long int strtoul (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > throw () __attribute__ ((__nonnull__ (1))); > > > > >__extension__ >extern long long int strtoq (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > throw () __attribute__ ((__nonnull__ (1))); > >__extension__ >extern unsigned long long int strtouq (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > throw () __attribute__ ((__nonnull__ (1))); > > > > > >__extension__ >extern long long int strtoll (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > throw () __attribute__ ((__nonnull__ (1))); > >__extension__ >extern unsigned long long int strtoull (const char *__restrict __nptr, > char **__restrict __endptr, int __base) > throw () __attribute__ ((__nonnull__ (1))); > ># 239 "/usr/include/stdlib.h" 3 4 >extern long int strtol_l (const char *__restrict __nptr, > char **__restrict __endptr, int __base, > __locale_t __loc) throw () __attribute__ ((__nonnull__ (1, 4))); > >extern unsigned long int strtoul_l (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, __locale_t __loc) > throw () __attribute__ ((__nonnull__ (1, 4))); > >__extension__ >extern long long int strtoll_l (const char *__restrict __nptr, > char **__restrict __endptr, int __base, > __locale_t __loc) > throw () __attribute__ ((__nonnull__ (1, 4))); > >__extension__ >extern unsigned long long int strtoull_l (const char *__restrict __nptr, > char **__restrict __endptr, > int __base, __locale_t __loc) > throw () __attribute__ ((__nonnull__ (1, 4))); > >extern double strtod_l (const char *__restrict __nptr, > char **__restrict __endptr, __locale_t __loc) > throw () __attribute__ ((__nonnull__ (1, 3))); > >extern float strtof_l (const char *__restrict __nptr, > char **__restrict __endptr, __locale_t __loc) > throw () __attribute__ ((__nonnull__ (1, 3))); > >extern long double strtold_l (const char *__restrict __nptr, > char **__restrict __endptr, > __locale_t __loc) > throw () __attribute__ ((__nonnull__ (1, 3))); > > > > > >extern __inline __attribute__ ((__gnu_inline__)) int >__attribute__ ((__leaf__)) atoi (const char *__nptr) throw () >{ > return (int) strtol (__nptr, (char **) __null, 10); >} >extern __inline __attribute__ ((__gnu_inline__)) long int >__attribute__ ((__leaf__)) atol (const char *__nptr) throw () >{ > return strtol (__nptr, (char **) __null, 10); >} > > > > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) long long int >__attribute__ ((__leaf__)) atoll (const char *__nptr) throw () >{ > return strtoll (__nptr, (char **) __null, 10); >} > ># 305 "/usr/include/stdlib.h" 3 4 >extern char *l64a (long int __n) throw () ; > > >extern long int a64l (const char *__s) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ; > > > > ># 1 "/usr/include/sys/types.h" 1 3 4 ># 27 "/usr/include/sys/types.h" 3 4 >extern "C" { > > > > > >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 __ino64_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; ># 104 "/usr/include/sys/types.h" 3 4 >typedef __id_t id_t; ># 115 "/usr/include/sys/types.h" 3 4 >typedef __daddr_t daddr_t; >typedef __caddr_t caddr_t; > > > > > >typedef __key_t key_t; ># 136 "/usr/include/sys/types.h" 3 4 >typedef __useconds_t useconds_t; > > > >typedef __suseconds_t suseconds_t; > > > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 147 "/usr/include/sys/types.h" 2 3 4 > > > >typedef unsigned long int ulong; >typedef unsigned short int ushort; >typedef unsigned int uint; ># 194 "/usr/include/sys/types.h" 3 4 >typedef int int8_t __attribute__ ((__mode__ (__QI__))); >typedef int int16_t __attribute__ ((__mode__ (__HI__))); >typedef int int32_t __attribute__ ((__mode__ (__SI__))); >typedef int int64_t __attribute__ ((__mode__ (__DI__))); > > >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__))); ># 219 "/usr/include/sys/types.h" 3 4 ># 1 "/usr/include/sys/select.h" 1 3 4 ># 30 "/usr/include/sys/select.h" 3 4 ># 1 "/usr/include/bits/select.h" 1 3 4 ># 31 "/usr/include/sys/select.h" 2 3 4 > > ># 1 "/usr/include/bits/sigset.h" 1 3 4 ># 22 "/usr/include/bits/sigset.h" 3 4 >typedef int __sig_atomic_t; > > > > >typedef struct > { > unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))]; > } __sigset_t; ># 34 "/usr/include/sys/select.h" 2 3 4 > > > >typedef __sigset_t sigset_t; > > > > > > > ># 1 "/usr/include/bits/time.h" 1 3 4 ># 46 "/usr/include/sys/select.h" 2 3 4 ># 54 "/usr/include/sys/select.h" 3 4 >typedef long int __fd_mask; ># 64 "/usr/include/sys/select.h" 3 4 >typedef struct > { > > > > __fd_mask fds_bits[1024 / (8 * (int) sizeof (__fd_mask))]; > > > > > > } fd_set; > > > > > > >typedef __fd_mask fd_mask; ># 96 "/usr/include/sys/select.h" 3 4 >extern "C" { ># 106 "/usr/include/sys/select.h" 3 4 >extern int select (int __nfds, fd_set *__restrict __readfds, > fd_set *__restrict __writefds, > fd_set *__restrict __exceptfds, > struct timeval *__restrict __timeout); ># 118 "/usr/include/sys/select.h" 3 4 >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 "/usr/include/sys/select.h" 3 4 >} ># 220 "/usr/include/sys/types.h" 2 3 4 > > ># 1 "/usr/include/sys/sysmacros.h" 1 3 4 ># 24 "/usr/include/sys/sysmacros.h" 3 4 >extern "C" { > >__extension__ >extern unsigned int gnu_dev_major (unsigned long long int __dev) > throw () __attribute__ ((__const__)); >__extension__ >extern unsigned int gnu_dev_minor (unsigned long long int __dev) > throw () __attribute__ ((__const__)); >__extension__ >extern unsigned long long int gnu_dev_makedev (unsigned int __major, > unsigned int __minor) > throw () __attribute__ ((__const__)); > > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) __attribute__ ((__const__)) unsigned int >__attribute__ ((__leaf__)) gnu_dev_major (unsigned long long int __dev) throw () >{ > return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff); >} > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) __attribute__ ((__const__)) unsigned int >__attribute__ ((__leaf__)) gnu_dev_minor (unsigned long long int __dev) throw () >{ > return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff); >} > >__extension__ extern __inline __attribute__ ((__gnu_inline__)) __attribute__ ((__const__)) unsigned long long int >__attribute__ ((__leaf__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor) throw () >{ > return ((__minor & 0xff) | ((__major & 0xfff) << 8) > | (((unsigned long long int) (__minor & ~0xff)) << 12) > | (((unsigned long long int) (__major & ~0xfff)) << 32)); >} > >} ># 223 "/usr/include/sys/types.h" 2 3 4 > > > > > >typedef __blksize_t blksize_t; ># 248 "/usr/include/sys/types.h" 3 4 >typedef __blkcnt64_t blkcnt_t; > > > >typedef __fsblkcnt64_t fsblkcnt_t; > > > >typedef __fsfilcnt64_t fsfilcnt_t; > > > > > >typedef __blkcnt64_t blkcnt64_t; >typedef __fsblkcnt64_t fsblkcnt64_t; >typedef __fsfilcnt64_t fsfilcnt64_t; ># 273 "/usr/include/sys/types.h" 3 4 >} ># 315 "/usr/include/stdlib.h" 2 3 4 > > > > > > >extern long int random (void) throw (); > > >extern void srandom (unsigned int __seed) throw (); > > > > > >extern char *initstate (unsigned int __seed, char *__statebuf, > size_t __statelen) throw () __attribute__ ((__nonnull__ (2))); > > > >extern char *setstate (char *__statebuf) throw () __attribute__ ((__nonnull__ (1))); > > > > > > > >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) throw () __attribute__ ((__nonnull__ (1, 2))); > >extern int srandom_r (unsigned int __seed, struct random_data *__buf) > throw () __attribute__ ((__nonnull__ (2))); > >extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, > size_t __statelen, > struct random_data *__restrict __buf) > throw () __attribute__ ((__nonnull__ (2, 4))); > >extern int setstate_r (char *__restrict __statebuf, > struct random_data *__restrict __buf) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > > > >extern int rand (void) throw (); > >extern void srand (unsigned int __seed) throw (); > > > > >extern int rand_r (unsigned int *__seed) throw (); > > > > > > > >extern double drand48 (void) throw (); >extern double erand48 (unsigned short int __xsubi[3]) throw () __attribute__ ((__nonnull__ (1))); > > >extern long int lrand48 (void) throw (); >extern long int nrand48 (unsigned short int __xsubi[3]) > throw () __attribute__ ((__nonnull__ (1))); > > >extern long int mrand48 (void) throw (); >extern long int jrand48 (unsigned short int __xsubi[3]) > throw () __attribute__ ((__nonnull__ (1))); > > >extern void srand48 (long int __seedval) throw (); >extern unsigned short int *seed48 (unsigned short int __seed16v[3]) > throw () __attribute__ ((__nonnull__ (1))); >extern void lcong48 (unsigned short int __param[7]) throw () __attribute__ ((__nonnull__ (1))); > > > > > >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) throw () __attribute__ ((__nonnull__ (1, 2))); >extern int erand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int lrand48_r (struct drand48_data *__restrict __buffer, > long int *__restrict __result) > throw () __attribute__ ((__nonnull__ (1, 2))); >extern int nrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > long int *__restrict __result) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int mrand48_r (struct drand48_data *__restrict __buffer, > long int *__restrict __result) > throw () __attribute__ ((__nonnull__ (1, 2))); >extern int jrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > long int *__restrict __result) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int srand48_r (long int __seedval, struct drand48_data *__buffer) > throw () __attribute__ ((__nonnull__ (2))); > >extern int seed48_r (unsigned short int __seed16v[3], > struct drand48_data *__buffer) throw () __attribute__ ((__nonnull__ (1, 2))); > >extern int lcong48_r (unsigned short int __param[7], > struct drand48_data *__buffer) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > > > > > > >extern void *malloc (size_t __size) throw () __attribute__ ((__malloc__)) ; > >extern void *calloc (size_t __nmemb, size_t __size) > throw () __attribute__ ((__malloc__)) ; > > > > > > > > > > >extern void *realloc (void *__ptr, size_t __size) > throw () __attribute__ ((__warn_unused_result__)); > >extern void free (void *__ptr) throw (); > > > > >extern void cfree (void *__ptr) throw (); > > > ># 1 "/usr/include/alloca.h" 1 3 4 ># 24 "/usr/include/alloca.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 25 "/usr/include/alloca.h" 2 3 4 > >extern "C" { > > > > > >extern void *alloca (size_t __size) throw (); > > > > > >} ># 493 "/usr/include/stdlib.h" 2 3 4 > > > > > >extern void *valloc (size_t __size) throw () __attribute__ ((__malloc__)) ; > > > > >extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size) > throw () __attribute__ ((__nonnull__ (1))) ; > > > > >extern void *aligned_alloc (size_t __alignment, size_t __size) > throw () __attribute__ ((__malloc__)) __attribute__ ((__alloc_size__ (2))) ; > > > > >extern void abort (void) throw () __attribute__ ((__noreturn__)); > > > >extern int atexit (void (*__func) (void)) throw () __attribute__ ((__nonnull__ (1))); > > > > >extern "C++" int at_quick_exit (void (*__func) (void)) > throw () __asm ("at_quick_exit") __attribute__ ((__nonnull__ (1))); > > > > > > > > > >extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) > throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern void exit (int __status) throw () __attribute__ ((__noreturn__)); > > > > > >extern void quick_exit (int __status) throw () __attribute__ ((__noreturn__)); > > > > > > > >extern void _Exit (int __status) throw () __attribute__ ((__noreturn__)); > > > > > > >extern char *getenv (const char *__name) throw () __attribute__ ((__nonnull__ (1))) ; > > > > > >extern char *secure_getenv (const char *__name) > throw () __attribute__ ((__nonnull__ (1))) ; > > > > > > >extern int putenv (char *__string) throw () __attribute__ ((__nonnull__ (1))); > > > > > >extern int setenv (const char *__name, const char *__value, int __replace) > throw () __attribute__ ((__nonnull__ (2))); > > >extern int unsetenv (const char *__name) throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern int clearenv (void) throw (); ># 606 "/usr/include/stdlib.h" 3 4 >extern char *mktemp (char *__template) throw () __attribute__ ((__nonnull__ (1))); ># 622 "/usr/include/stdlib.h" 3 4 >extern int mkstemp (char *__template) __asm__ ("" "mkstemp64") > __attribute__ ((__nonnull__ (1))) ; > > > > > >extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))) ; ># 644 "/usr/include/stdlib.h" 3 4 >extern int mkstemps (char *__template, int __suffixlen) __asm__ ("" "mkstemps64") > __attribute__ ((__nonnull__ (1))) ; > > > > > >extern int mkstemps64 (char *__template, int __suffixlen) > __attribute__ ((__nonnull__ (1))) ; ># 662 "/usr/include/stdlib.h" 3 4 >extern char *mkdtemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) ; ># 676 "/usr/include/stdlib.h" 3 4 >extern int mkostemp (char *__template, int __flags) __asm__ ("" "mkostemp64") > __attribute__ ((__nonnull__ (1))) ; > > > > > >extern int mkostemp64 (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) ; ># 697 "/usr/include/stdlib.h" 3 4 >extern int mkostemps (char *__template, int __suffixlen, int __flags) __asm__ ("" "mkostemps64") > > __attribute__ ((__nonnull__ (1))) ; > > > > > >extern int mkostemps64 (char *__template, int __suffixlen, int __flags) > __attribute__ ((__nonnull__ (1))) ; > > > > > > > > > >extern int system (const char *__command) ; > > > > > > >extern char *canonicalize_file_name (const char *__name) > throw () __attribute__ ((__nonnull__ (1))) ; ># 733 "/usr/include/stdlib.h" 3 4 >extern char *realpath (const char *__restrict __name, > char *__restrict __resolved) throw () ; > > > > > > >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) > __attribute__ ((__nonnull__ (1, 2, 5))) ; > > ># 1 "/usr/include/bits/stdlib-bsearch.h" 1 3 4 ># 19 "/usr/include/bits/stdlib-bsearch.h" 3 4 >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 __null; >} ># 760 "/usr/include/stdlib.h" 2 3 4 > > > > >extern void qsort (void *__base, size_t __nmemb, size_t __size, > __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4))); > >extern void qsort_r (void *__base, size_t __nmemb, size_t __size, > __compar_d_fn_t __compar, void *__arg) > __attribute__ ((__nonnull__ (1, 4))); > > > > >extern int abs (int __x) throw () __attribute__ ((__const__)) ; >extern long int labs (long int __x) throw () __attribute__ ((__const__)) ; > > > >__extension__ extern long long int llabs (long long int __x) > throw () __attribute__ ((__const__)) ; > > > > > > > >extern div_t div (int __numer, int __denom) > throw () __attribute__ ((__const__)) ; >extern ldiv_t ldiv (long int __numer, long int __denom) > throw () __attribute__ ((__const__)) ; > > > > >__extension__ extern lldiv_t lldiv (long long int __numer, > long long int __denom) > throw () __attribute__ ((__const__)) ; > ># 811 "/usr/include/stdlib.h" 3 4 >extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) ; > > > > >extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) ; > > > > >extern char *gcvt (double __value, int __ndigit, char *__buf) > throw () __attribute__ ((__nonnull__ (3))) ; > > > > >extern char *qecvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign) > throw () __attribute__ ((__nonnull__ (3, 4))) ; >extern char *qfcvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign) > throw () __attribute__ ((__nonnull__ (3, 4))) ; >extern char *qgcvt (long double __value, int __ndigit, char *__buf) > throw () __attribute__ ((__nonnull__ (3))) ; > > > > >extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5))); >extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5))); > >extern int qecvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len) > throw () __attribute__ ((__nonnull__ (3, 4, 5))); >extern int qfcvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len) > throw () __attribute__ ((__nonnull__ (3, 4, 5))); > > > > > > >extern int mblen (const char *__s, size_t __n) throw (); > > >extern int mbtowc (wchar_t *__restrict __pwc, > const char *__restrict __s, size_t __n) throw (); > > >extern int wctomb (char *__s, wchar_t __wchar) throw (); > > > >extern size_t mbstowcs (wchar_t *__restrict __pwcs, > const char *__restrict __s, size_t __n) throw (); > >extern size_t wcstombs (char *__restrict __s, > const wchar_t *__restrict __pwcs, size_t __n) > throw (); > > > > > > > > >extern int rpmatch (const char *__response) throw () __attribute__ ((__nonnull__ (1))) ; ># 898 "/usr/include/stdlib.h" 3 4 >extern int getsubopt (char **__restrict __optionp, > char *const *__restrict __tokens, > char **__restrict __valuep) > throw () __attribute__ ((__nonnull__ (1, 2, 3))) ; > > > > > >extern void setkey (const char *__key) throw () __attribute__ ((__nonnull__ (1))); > > > > > > > >extern int posix_openpt (int __oflag) ; > > > > > > > >extern int grantpt (int __fd) throw (); > > > >extern int unlockpt (int __fd) throw (); > > > > >extern char *ptsname (int __fd) throw () ; > > > > > > >extern int ptsname_r (int __fd, char *__buf, size_t __buflen) > throw () __attribute__ ((__nonnull__ (2))); > > >extern int getpt (void); > > > > > > >extern int getloadavg (double __loadavg[], int __nelem) > throw () __attribute__ ((__nonnull__ (1))); > > ># 1 "/usr/include/bits/stdlib-float.h" 1 3 4 ># 24 "/usr/include/bits/stdlib-float.h" 3 4 > >extern __inline __attribute__ ((__gnu_inline__)) double >__attribute__ ((__leaf__)) atof (const char *__nptr) throw () >{ > return strtod (__nptr, (char **) __null); >} > ># 955 "/usr/include/stdlib.h" 2 3 4 ># 967 "/usr/include/stdlib.h" 3 4 >} ># 314 "../../../include/my_global.h" 2 > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 147 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 3 4 >typedef long int ptrdiff_t; ># 317 "../../../include/my_global.h" 2 > > ># 1 "/usr/include/math.h" 1 3 4 ># 28 "/usr/include/math.h" 3 4 >extern "C" { > > > ># 1 "/usr/include/bits/huge_val.h" 1 3 4 ># 33 "/usr/include/math.h" 2 3 4 > ># 1 "/usr/include/bits/huge_valf.h" 1 3 4 ># 35 "/usr/include/math.h" 2 3 4 ># 1 "/usr/include/bits/huge_vall.h" 1 3 4 ># 36 "/usr/include/math.h" 2 3 4 > > ># 1 "/usr/include/bits/inf.h" 1 3 4 ># 39 "/usr/include/math.h" 2 3 4 > > ># 1 "/usr/include/bits/nan.h" 1 3 4 ># 42 "/usr/include/math.h" 2 3 4 > > > ># 1 "/usr/include/bits/mathdef.h" 1 3 4 ># 27 "/usr/include/bits/mathdef.h" 3 4 >typedef float float_t; > >typedef double double_t; ># 46 "/usr/include/math.h" 2 3 4 ># 69 "/usr/include/math.h" 3 4 ># 1 "/usr/include/bits/mathcalls.h" 1 3 4 ># 52 "/usr/include/bits/mathcalls.h" 3 4 > > >extern double acos (double __x) throw (); extern double __acos (double __x) throw (); > >extern double asin (double __x) throw (); extern double __asin (double __x) throw (); > >extern double atan (double __x) throw (); extern double __atan (double __x) throw (); > >extern double atan2 (double __y, double __x) throw (); extern double __atan2 (double __y, double __x) throw (); > > >extern double cos (double __x) throw (); extern double __cos (double __x) throw (); > >extern double sin (double __x) throw (); extern double __sin (double __x) throw (); > >extern double tan (double __x) throw (); extern double __tan (double __x) throw (); > > > > >extern double cosh (double __x) throw (); extern double __cosh (double __x) throw (); > >extern double sinh (double __x) throw (); extern double __sinh (double __x) throw (); > >extern double tanh (double __x) throw (); extern double __tanh (double __x) throw (); > > > > >extern void sincos (double __x, double *__sinx, double *__cosx) throw (); extern void __sincos (double __x, double *__sinx, double *__cosx) throw () > ; > > > > > >extern double acosh (double __x) throw (); extern double __acosh (double __x) throw (); > >extern double asinh (double __x) throw (); extern double __asinh (double __x) throw (); > >extern double atanh (double __x) throw (); extern double __atanh (double __x) throw (); > > > > > > > >extern double exp (double __x) throw (); extern double __exp (double __x) throw (); > > >extern double frexp (double __x, int *__exponent) throw (); extern double __frexp (double __x, int *__exponent) throw (); > > >extern double ldexp (double __x, int __exponent) throw (); extern double __ldexp (double __x, int __exponent) throw (); > > >extern double log (double __x) throw (); extern double __log (double __x) throw (); > > >extern double log10 (double __x) throw (); extern double __log10 (double __x) throw (); > > >extern double modf (double __x, double *__iptr) throw (); extern double __modf (double __x, double *__iptr) throw () __attribute__ ((__nonnull__ (2))); > > > > >extern double exp10 (double __x) throw (); extern double __exp10 (double __x) throw (); > >extern double pow10 (double __x) throw (); extern double __pow10 (double __x) throw (); > > > > > >extern double expm1 (double __x) throw (); extern double __expm1 (double __x) throw (); > > >extern double log1p (double __x) throw (); extern double __log1p (double __x) throw (); > > >extern double logb (double __x) throw (); extern double __logb (double __x) throw (); > > > > > > >extern double exp2 (double __x) throw (); extern double __exp2 (double __x) throw (); > > >extern double log2 (double __x) throw (); extern double __log2 (double __x) throw (); > > > > > > > > >extern double pow (double __x, double __y) throw (); extern double __pow (double __x, double __y) throw (); > > >extern double sqrt (double __x) throw (); extern double __sqrt (double __x) throw (); > > > > > >extern double hypot (double __x, double __y) throw (); extern double __hypot (double __x, double __y) throw (); > > > > > > >extern double cbrt (double __x) throw (); extern double __cbrt (double __x) throw (); > > > > > > > > >extern double ceil (double __x) throw () __attribute__ ((__const__)); extern double __ceil (double __x) throw () __attribute__ ((__const__)); > > >extern double fabs (double __x) throw () __attribute__ ((__const__)); extern double __fabs (double __x) throw () __attribute__ ((__const__)); > > >extern double floor (double __x) throw () __attribute__ ((__const__)); extern double __floor (double __x) throw () __attribute__ ((__const__)); > > >extern double fmod (double __x, double __y) throw (); extern double __fmod (double __x, double __y) throw (); > > > > >extern int __isinf (double __value) throw () __attribute__ ((__const__)); > > >extern int __finite (double __value) throw () __attribute__ ((__const__)); > > > > > >extern int isinf (double __value) throw () __attribute__ ((__const__)); > > >extern int finite (double __value) throw () __attribute__ ((__const__)); > > >extern double drem (double __x, double __y) throw (); extern double __drem (double __x, double __y) throw (); > > > >extern double significand (double __x) throw (); extern double __significand (double __x) throw (); > > > > > >extern double copysign (double __x, double __y) throw () __attribute__ ((__const__)); extern double __copysign (double __x, double __y) throw () __attribute__ ((__const__)); > > > > > > >extern double nan (const char *__tagb) throw () __attribute__ ((__const__)); extern double __nan (const char *__tagb) throw () __attribute__ ((__const__)); > > > > > >extern int __isnan (double __value) throw () __attribute__ ((__const__)); > > > >extern int isnan (double __value) throw () __attribute__ ((__const__)); > > >extern double j0 (double) throw (); extern double __j0 (double) throw (); >extern double j1 (double) throw (); extern double __j1 (double) throw (); >extern double jn (int, double) throw (); extern double __jn (int, double) throw (); >extern double y0 (double) throw (); extern double __y0 (double) throw (); >extern double y1 (double) throw (); extern double __y1 (double) throw (); >extern double yn (int, double) throw (); extern double __yn (int, double) throw (); > > > > > > >extern double erf (double) throw (); extern double __erf (double) throw (); >extern double erfc (double) throw (); extern double __erfc (double) throw (); >extern double lgamma (double) throw (); extern double __lgamma (double) throw (); > > > > > > >extern double tgamma (double) throw (); extern double __tgamma (double) throw (); > > > > > >extern double gamma (double) throw (); extern double __gamma (double) throw (); > > > > > > >extern double lgamma_r (double, int *__signgamp) throw (); extern double __lgamma_r (double, int *__signgamp) throw (); > > > > > > > >extern double rint (double __x) throw (); extern double __rint (double __x) throw (); > > >extern double nextafter (double __x, double __y) throw () __attribute__ ((__const__)); extern double __nextafter (double __x, double __y) throw () __attribute__ ((__const__)); > >extern double nexttoward (double __x, long double __y) throw () __attribute__ ((__const__)); extern double __nexttoward (double __x, long double __y) throw () __attribute__ ((__const__)); > > > >extern double remainder (double __x, double __y) throw (); extern double __remainder (double __x, double __y) throw (); > > > >extern double scalbn (double __x, int __n) throw (); extern double __scalbn (double __x, int __n) throw (); > > > >extern int ilogb (double __x) throw (); extern int __ilogb (double __x) throw (); > > > > >extern double scalbln (double __x, long int __n) throw (); extern double __scalbln (double __x, long int __n) throw (); > > > >extern double nearbyint (double __x) throw (); extern double __nearbyint (double __x) throw (); > > > >extern double round (double __x) throw () __attribute__ ((__const__)); extern double __round (double __x) throw () __attribute__ ((__const__)); > > > >extern double trunc (double __x) throw () __attribute__ ((__const__)); extern double __trunc (double __x) throw () __attribute__ ((__const__)); > > > > >extern double remquo (double __x, double __y, int *__quo) throw (); extern double __remquo (double __x, double __y, int *__quo) throw (); > > > > > > >extern long int lrint (double __x) throw (); extern long int __lrint (double __x) throw (); >__extension__ >extern long long int llrint (double __x) throw (); extern long long int __llrint (double __x) throw (); > > > >extern long int lround (double __x) throw (); extern long int __lround (double __x) throw (); >__extension__ >extern long long int llround (double __x) throw (); extern long long int __llround (double __x) throw (); > > > >extern double fdim (double __x, double __y) throw (); extern double __fdim (double __x, double __y) throw (); > > >extern double fmax (double __x, double __y) throw () __attribute__ ((__const__)); extern double __fmax (double __x, double __y) throw () __attribute__ ((__const__)); > > >extern double fmin (double __x, double __y) throw () __attribute__ ((__const__)); extern double __fmin (double __x, double __y) throw () __attribute__ ((__const__)); > > > >extern int __fpclassify (double __value) throw () > __attribute__ ((__const__)); > > >extern int __signbit (double __value) throw () > __attribute__ ((__const__)); > > > >extern double fma (double __x, double __y, double __z) throw (); extern double __fma (double __x, double __y, double __z) throw (); > > > > > > > > >extern int __issignaling (double __value) throw () > __attribute__ ((__const__)); > > > > >extern double scalb (double __x, double __n) throw (); extern double __scalb (double __x, double __n) throw (); ># 70 "/usr/include/math.h" 2 3 4 ># 88 "/usr/include/math.h" 3 4 ># 1 "/usr/include/bits/mathcalls.h" 1 3 4 ># 52 "/usr/include/bits/mathcalls.h" 3 4 > > >extern float acosf (float __x) throw (); extern float __acosf (float __x) throw (); > >extern float asinf (float __x) throw (); extern float __asinf (float __x) throw (); > >extern float atanf (float __x) throw (); extern float __atanf (float __x) throw (); > >extern float atan2f (float __y, float __x) throw (); extern float __atan2f (float __y, float __x) throw (); > > >extern float cosf (float __x) throw (); extern float __cosf (float __x) throw (); > >extern float sinf (float __x) throw (); extern float __sinf (float __x) throw (); > >extern float tanf (float __x) throw (); extern float __tanf (float __x) throw (); > > > > >extern float coshf (float __x) throw (); extern float __coshf (float __x) throw (); > >extern float sinhf (float __x) throw (); extern float __sinhf (float __x) throw (); > >extern float tanhf (float __x) throw (); extern float __tanhf (float __x) throw (); > > > > >extern void sincosf (float __x, float *__sinx, float *__cosx) throw (); extern void __sincosf (float __x, float *__sinx, float *__cosx) throw () > ; > > > > > >extern float acoshf (float __x) throw (); extern float __acoshf (float __x) throw (); > >extern float asinhf (float __x) throw (); extern float __asinhf (float __x) throw (); > >extern float atanhf (float __x) throw (); extern float __atanhf (float __x) throw (); > > > > > > > >extern float expf (float __x) throw (); extern float __expf (float __x) throw (); > > >extern float frexpf (float __x, int *__exponent) throw (); extern float __frexpf (float __x, int *__exponent) throw (); > > >extern float ldexpf (float __x, int __exponent) throw (); extern float __ldexpf (float __x, int __exponent) throw (); > > >extern float logf (float __x) throw (); extern float __logf (float __x) throw (); > > >extern float log10f (float __x) throw (); extern float __log10f (float __x) throw (); > > >extern float modff (float __x, float *__iptr) throw (); extern float __modff (float __x, float *__iptr) throw () __attribute__ ((__nonnull__ (2))); > > > > >extern float exp10f (float __x) throw (); extern float __exp10f (float __x) throw (); > >extern float pow10f (float __x) throw (); extern float __pow10f (float __x) throw (); > > > > > >extern float expm1f (float __x) throw (); extern float __expm1f (float __x) throw (); > > >extern float log1pf (float __x) throw (); extern float __log1pf (float __x) throw (); > > >extern float logbf (float __x) throw (); extern float __logbf (float __x) throw (); > > > > > > >extern float exp2f (float __x) throw (); extern float __exp2f (float __x) throw (); > > >extern float log2f (float __x) throw (); extern float __log2f (float __x) throw (); > > > > > > > > >extern float powf (float __x, float __y) throw (); extern float __powf (float __x, float __y) throw (); > > >extern float sqrtf (float __x) throw (); extern float __sqrtf (float __x) throw (); > > > > > >extern float hypotf (float __x, float __y) throw (); extern float __hypotf (float __x, float __y) throw (); > > > > > > >extern float cbrtf (float __x) throw (); extern float __cbrtf (float __x) throw (); > > > > > > > > >extern float ceilf (float __x) throw () __attribute__ ((__const__)); extern float __ceilf (float __x) throw () __attribute__ ((__const__)); > > >extern float fabsf (float __x) throw () __attribute__ ((__const__)); extern float __fabsf (float __x) throw () __attribute__ ((__const__)); > > >extern float floorf (float __x) throw () __attribute__ ((__const__)); extern float __floorf (float __x) throw () __attribute__ ((__const__)); > > >extern float fmodf (float __x, float __y) throw (); extern float __fmodf (float __x, float __y) throw (); > > > > >extern int __isinff (float __value) throw () __attribute__ ((__const__)); > > >extern int __finitef (float __value) throw () __attribute__ ((__const__)); > > > > > >extern int isinff (float __value) throw () __attribute__ ((__const__)); > > >extern int finitef (float __value) throw () __attribute__ ((__const__)); > > >extern float dremf (float __x, float __y) throw (); extern float __dremf (float __x, float __y) throw (); > > > >extern float significandf (float __x) throw (); extern float __significandf (float __x) throw (); > > > > > >extern float copysignf (float __x, float __y) throw () __attribute__ ((__const__)); extern float __copysignf (float __x, float __y) throw () __attribute__ ((__const__)); > > > > > > >extern float nanf (const char *__tagb) throw () __attribute__ ((__const__)); extern float __nanf (const char *__tagb) throw () __attribute__ ((__const__)); > > > > > >extern int __isnanf (float __value) throw () __attribute__ ((__const__)); > > > >extern int isnanf (float __value) throw () __attribute__ ((__const__)); > > >extern float j0f (float) throw (); extern float __j0f (float) throw (); >extern float j1f (float) throw (); extern float __j1f (float) throw (); >extern float jnf (int, float) throw (); extern float __jnf (int, float) throw (); >extern float y0f (float) throw (); extern float __y0f (float) throw (); >extern float y1f (float) throw (); extern float __y1f (float) throw (); >extern float ynf (int, float) throw (); extern float __ynf (int, float) throw (); > > > > > > >extern float erff (float) throw (); extern float __erff (float) throw (); >extern float erfcf (float) throw (); extern float __erfcf (float) throw (); >extern float lgammaf (float) throw (); extern float __lgammaf (float) throw (); > > > > > > >extern float tgammaf (float) throw (); extern float __tgammaf (float) throw (); > > > > > >extern float gammaf (float) throw (); extern float __gammaf (float) throw (); > > > > > > >extern float lgammaf_r (float, int *__signgamp) throw (); extern float __lgammaf_r (float, int *__signgamp) throw (); > > > > > > > >extern float rintf (float __x) throw (); extern float __rintf (float __x) throw (); > > >extern float nextafterf (float __x, float __y) throw () __attribute__ ((__const__)); extern float __nextafterf (float __x, float __y) throw () __attribute__ ((__const__)); > >extern float nexttowardf (float __x, long double __y) throw () __attribute__ ((__const__)); extern float __nexttowardf (float __x, long double __y) throw () __attribute__ ((__const__)); > > > >extern float remainderf (float __x, float __y) throw (); extern float __remainderf (float __x, float __y) throw (); > > > >extern float scalbnf (float __x, int __n) throw (); extern float __scalbnf (float __x, int __n) throw (); > > > >extern int ilogbf (float __x) throw (); extern int __ilogbf (float __x) throw (); > > > > >extern float scalblnf (float __x, long int __n) throw (); extern float __scalblnf (float __x, long int __n) throw (); > > > >extern float nearbyintf (float __x) throw (); extern float __nearbyintf (float __x) throw (); > > > >extern float roundf (float __x) throw () __attribute__ ((__const__)); extern float __roundf (float __x) throw () __attribute__ ((__const__)); > > > >extern float truncf (float __x) throw () __attribute__ ((__const__)); extern float __truncf (float __x) throw () __attribute__ ((__const__)); > > > > >extern float remquof (float __x, float __y, int *__quo) throw (); extern float __remquof (float __x, float __y, int *__quo) throw (); > > > > > > >extern long int lrintf (float __x) throw (); extern long int __lrintf (float __x) throw (); >__extension__ >extern long long int llrintf (float __x) throw (); extern long long int __llrintf (float __x) throw (); > > > >extern long int lroundf (float __x) throw (); extern long int __lroundf (float __x) throw (); >__extension__ >extern long long int llroundf (float __x) throw (); extern long long int __llroundf (float __x) throw (); > > > >extern float fdimf (float __x, float __y) throw (); extern float __fdimf (float __x, float __y) throw (); > > >extern float fmaxf (float __x, float __y) throw () __attribute__ ((__const__)); extern float __fmaxf (float __x, float __y) throw () __attribute__ ((__const__)); > > >extern float fminf (float __x, float __y) throw () __attribute__ ((__const__)); extern float __fminf (float __x, float __y) throw () __attribute__ ((__const__)); > > > >extern int __fpclassifyf (float __value) throw () > __attribute__ ((__const__)); > > >extern int __signbitf (float __value) throw () > __attribute__ ((__const__)); > > > >extern float fmaf (float __x, float __y, float __z) throw (); extern float __fmaf (float __x, float __y, float __z) throw (); > > > > > > > > >extern int __issignalingf (float __value) throw () > __attribute__ ((__const__)); > > > > >extern float scalbf (float __x, float __n) throw (); extern float __scalbf (float __x, float __n) throw (); ># 89 "/usr/include/math.h" 2 3 4 ># 132 "/usr/include/math.h" 3 4 ># 1 "/usr/include/bits/mathcalls.h" 1 3 4 ># 52 "/usr/include/bits/mathcalls.h" 3 4 > > >extern long double acosl (long double __x) throw (); extern long double __acosl (long double __x) throw (); > >extern long double asinl (long double __x) throw (); extern long double __asinl (long double __x) throw (); > >extern long double atanl (long double __x) throw (); extern long double __atanl (long double __x) throw (); > >extern long double atan2l (long double __y, long double __x) throw (); extern long double __atan2l (long double __y, long double __x) throw (); > > >extern long double cosl (long double __x) throw (); extern long double __cosl (long double __x) throw (); > >extern long double sinl (long double __x) throw (); extern long double __sinl (long double __x) throw (); > >extern long double tanl (long double __x) throw (); extern long double __tanl (long double __x) throw (); > > > > >extern long double coshl (long double __x) throw (); extern long double __coshl (long double __x) throw (); > >extern long double sinhl (long double __x) throw (); extern long double __sinhl (long double __x) throw (); > >extern long double tanhl (long double __x) throw (); extern long double __tanhl (long double __x) throw (); > > > > >extern void sincosl (long double __x, long double *__sinx, long double *__cosx) throw (); extern void __sincosl (long double __x, long double *__sinx, long double *__cosx) throw () > ; > > > > > >extern long double acoshl (long double __x) throw (); extern long double __acoshl (long double __x) throw (); > >extern long double asinhl (long double __x) throw (); extern long double __asinhl (long double __x) throw (); > >extern long double atanhl (long double __x) throw (); extern long double __atanhl (long double __x) throw (); > > > > > > > >extern long double expl (long double __x) throw (); extern long double __expl (long double __x) throw (); > > >extern long double frexpl (long double __x, int *__exponent) throw (); extern long double __frexpl (long double __x, int *__exponent) throw (); > > >extern long double ldexpl (long double __x, int __exponent) throw (); extern long double __ldexpl (long double __x, int __exponent) throw (); > > >extern long double logl (long double __x) throw (); extern long double __logl (long double __x) throw (); > > >extern long double log10l (long double __x) throw (); extern long double __log10l (long double __x) throw (); > > >extern long double modfl (long double __x, long double *__iptr) throw (); extern long double __modfl (long double __x, long double *__iptr) throw () __attribute__ ((__nonnull__ (2))); > > > > >extern long double exp10l (long double __x) throw (); extern long double __exp10l (long double __x) throw (); > >extern long double pow10l (long double __x) throw (); extern long double __pow10l (long double __x) throw (); > > > > > >extern long double expm1l (long double __x) throw (); extern long double __expm1l (long double __x) throw (); > > >extern long double log1pl (long double __x) throw (); extern long double __log1pl (long double __x) throw (); > > >extern long double logbl (long double __x) throw (); extern long double __logbl (long double __x) throw (); > > > > > > >extern long double exp2l (long double __x) throw (); extern long double __exp2l (long double __x) throw (); > > >extern long double log2l (long double __x) throw (); extern long double __log2l (long double __x) throw (); > > > > > > > > >extern long double powl (long double __x, long double __y) throw (); extern long double __powl (long double __x, long double __y) throw (); > > >extern long double sqrtl (long double __x) throw (); extern long double __sqrtl (long double __x) throw (); > > > > > >extern long double hypotl (long double __x, long double __y) throw (); extern long double __hypotl (long double __x, long double __y) throw (); > > > > > > >extern long double cbrtl (long double __x) throw (); extern long double __cbrtl (long double __x) throw (); > > > > > > > > >extern long double ceill (long double __x) throw () __attribute__ ((__const__)); extern long double __ceill (long double __x) throw () __attribute__ ((__const__)); > > >extern long double fabsl (long double __x) throw () __attribute__ ((__const__)); extern long double __fabsl (long double __x) throw () __attribute__ ((__const__)); > > >extern long double floorl (long double __x) throw () __attribute__ ((__const__)); extern long double __floorl (long double __x) throw () __attribute__ ((__const__)); > > >extern long double fmodl (long double __x, long double __y) throw (); extern long double __fmodl (long double __x, long double __y) throw (); > > > > >extern int __isinfl (long double __value) throw () __attribute__ ((__const__)); > > >extern int __finitel (long double __value) throw () __attribute__ ((__const__)); > > > > > >extern int isinfl (long double __value) throw () __attribute__ ((__const__)); > > >extern int finitel (long double __value) throw () __attribute__ ((__const__)); > > >extern long double dreml (long double __x, long double __y) throw (); extern long double __dreml (long double __x, long double __y) throw (); > > > >extern long double significandl (long double __x) throw (); extern long double __significandl (long double __x) throw (); > > > > > >extern long double copysignl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __copysignl (long double __x, long double __y) throw () __attribute__ ((__const__)); > > > > > > >extern long double nanl (const char *__tagb) throw () __attribute__ ((__const__)); extern long double __nanl (const char *__tagb) throw () __attribute__ ((__const__)); > > > > > >extern int __isnanl (long double __value) throw () __attribute__ ((__const__)); > > > >extern int isnanl (long double __value) throw () __attribute__ ((__const__)); > > >extern long double j0l (long double) throw (); extern long double __j0l (long double) throw (); >extern long double j1l (long double) throw (); extern long double __j1l (long double) throw (); >extern long double jnl (int, long double) throw (); extern long double __jnl (int, long double) throw (); >extern long double y0l (long double) throw (); extern long double __y0l (long double) throw (); >extern long double y1l (long double) throw (); extern long double __y1l (long double) throw (); >extern long double ynl (int, long double) throw (); extern long double __ynl (int, long double) throw (); > > > > > > >extern long double erfl (long double) throw (); extern long double __erfl (long double) throw (); >extern long double erfcl (long double) throw (); extern long double __erfcl (long double) throw (); >extern long double lgammal (long double) throw (); extern long double __lgammal (long double) throw (); > > > > > > >extern long double tgammal (long double) throw (); extern long double __tgammal (long double) throw (); > > > > > >extern long double gammal (long double) throw (); extern long double __gammal (long double) throw (); > > > > > > >extern long double lgammal_r (long double, int *__signgamp) throw (); extern long double __lgammal_r (long double, int *__signgamp) throw (); > > > > > > > >extern long double rintl (long double __x) throw (); extern long double __rintl (long double __x) throw (); > > >extern long double nextafterl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __nextafterl (long double __x, long double __y) throw () __attribute__ ((__const__)); > >extern long double nexttowardl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __nexttowardl (long double __x, long double __y) throw () __attribute__ ((__const__)); > > > >extern long double remainderl (long double __x, long double __y) throw (); extern long double __remainderl (long double __x, long double __y) throw (); > > > >extern long double scalbnl (long double __x, int __n) throw (); extern long double __scalbnl (long double __x, int __n) throw (); > > > >extern int ilogbl (long double __x) throw (); extern int __ilogbl (long double __x) throw (); > > > > >extern long double scalblnl (long double __x, long int __n) throw (); extern long double __scalblnl (long double __x, long int __n) throw (); > > > >extern long double nearbyintl (long double __x) throw (); extern long double __nearbyintl (long double __x) throw (); > > > >extern long double roundl (long double __x) throw () __attribute__ ((__const__)); extern long double __roundl (long double __x) throw () __attribute__ ((__const__)); > > > >extern long double truncl (long double __x) throw () __attribute__ ((__const__)); extern long double __truncl (long double __x) throw () __attribute__ ((__const__)); > > > > >extern long double remquol (long double __x, long double __y, int *__quo) throw (); extern long double __remquol (long double __x, long double __y, int *__quo) throw (); > > > > > > >extern long int lrintl (long double __x) throw (); extern long int __lrintl (long double __x) throw (); >__extension__ >extern long long int llrintl (long double __x) throw (); extern long long int __llrintl (long double __x) throw (); > > > >extern long int lroundl (long double __x) throw (); extern long int __lroundl (long double __x) throw (); >__extension__ >extern long long int llroundl (long double __x) throw (); extern long long int __llroundl (long double __x) throw (); > > > >extern long double fdiml (long double __x, long double __y) throw (); extern long double __fdiml (long double __x, long double __y) throw (); > > >extern long double fmaxl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __fmaxl (long double __x, long double __y) throw () __attribute__ ((__const__)); > > >extern long double fminl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __fminl (long double __x, long double __y) throw () __attribute__ ((__const__)); > > > >extern int __fpclassifyl (long double __value) throw () > __attribute__ ((__const__)); > > >extern int __signbitl (long double __value) throw () > __attribute__ ((__const__)); > > > >extern long double fmal (long double __x, long double __y, long double __z) throw (); extern long double __fmal (long double __x, long double __y, long double __z) throw (); > > > > > > > > >extern int __issignalingl (long double __value) throw () > __attribute__ ((__const__)); > > > > >extern long double scalbl (long double __x, long double __n) throw (); extern long double __scalbl (long double __x, long double __n) throw (); ># 133 "/usr/include/math.h" 2 3 4 ># 148 "/usr/include/math.h" 3 4 >extern int signgam; ># 189 "/usr/include/math.h" 3 4 >enum > { > FP_NAN = > > 0, > FP_INFINITE = > > 1, > FP_ZERO = > > 2, > FP_SUBNORMAL = > > 3, > FP_NORMAL = > > 4 > }; ># 301 "/usr/include/math.h" 3 4 >typedef enum >{ > _IEEE_ = -1, > _SVID_, > _XOPEN_, > _POSIX_, > _ISOC_ >} _LIB_VERSION_TYPE; > > > > >extern _LIB_VERSION_TYPE _LIB_VERSION; ># 324 "/usr/include/math.h" 3 4 >struct __exception > > > > { > int type; > char *name; > double arg1; > double arg2; > double retval; > }; > > >extern int matherr (struct __exception *__exc) throw (); ># 426 "/usr/include/math.h" 3 4 ># 1 "/usr/include/bits/mathinline.h" 1 3 4 ># 427 "/usr/include/math.h" 2 3 4 ># 488 "/usr/include/math.h" 3 4 >} ># 320 "../../../include/my_global.h" 2 > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/limits.h" 1 3 4 ># 34 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/limits.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/syslimits.h" 1 3 4 > > > > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/limits.h" 1 3 4 ># 168 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/limits.h" 3 4 ># 1 "/usr/include/limits.h" 1 3 4 ># 143 "/usr/include/limits.h" 3 4 ># 1 "/usr/include/bits/posix1_lim.h" 1 3 4 ># 160 "/usr/include/bits/posix1_lim.h" 3 4 ># 1 "/usr/include/bits/local_lim.h" 1 3 4 ># 39 "/usr/include/bits/local_lim.h" 3 4 ># 1 "/usr/include/linux/limits.h" 1 3 4 ># 40 "/usr/include/bits/local_lim.h" 2 3 4 ># 161 "/usr/include/bits/posix1_lim.h" 2 3 4 ># 144 "/usr/include/limits.h" 2 3 4 > > > ># 1 "/usr/include/bits/posix2_lim.h" 1 3 4 ># 148 "/usr/include/limits.h" 2 3 4 > > > ># 1 "/usr/include/bits/xopen_lim.h" 1 3 4 ># 33 "/usr/include/bits/xopen_lim.h" 3 4 ># 1 "/usr/include/bits/stdio_lim.h" 1 3 4 ># 34 "/usr/include/bits/xopen_lim.h" 2 3 4 ># 152 "/usr/include/limits.h" 2 3 4 ># 169 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/limits.h" 2 3 4 ># 8 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/syslimits.h" 2 3 4 ># 35 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/limits.h" 2 3 4 ># 322 "../../../include/my_global.h" 2 > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/float.h" 1 3 4 ># 325 "../../../include/my_global.h" 2 > > ># 1 "/usr/include/c++/4.9.0/fenv.h" 1 3 ># 32 "/usr/include/c++/4.9.0/fenv.h" 3 > ># 33 "/usr/include/c++/4.9.0/fenv.h" 3 > ># 1 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/c++config.h" 1 3 ># 186 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/c++config.h" 3 >namespace std >{ > typedef long unsigned int size_t; > typedef long int ptrdiff_t; > > > > >} ># 430 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/c++config.h" 3 ># 1 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/os_defines.h" 1 3 ># 431 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/c++config.h" 2 3 > > ># 1 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/cpu_defines.h" 1 3 ># 434 "/usr/include/c++/4.9.0/aarch64-redhat-linux/bits/c++config.h" 2 3 ># 35 "/usr/include/c++/4.9.0/fenv.h" 2 3 > ># 1 "/usr/include/fenv.h" 1 3 4 ># 57 "/usr/include/fenv.h" 3 4 ># 1 "/usr/include/bits/fenv.h" 1 3 4 ># 24 "/usr/include/bits/fenv.h" 3 4 >enum > { > FE_INVALID = > > 1, > FE_DIVBYZERO = > > 2, > FE_OVERFLOW = > > 4, > FE_UNDERFLOW = > > 8, > FE_INEXACT = > > 16, > }; ># 58 "/usr/include/bits/fenv.h" 3 4 >typedef unsigned int fexcept_t; > > >typedef struct > { > unsigned int __fpcr; > unsigned int __fpsr; > } >fenv_t; ># 58 "/usr/include/fenv.h" 2 3 4 > >extern "C" { > > > > >extern int feclearexcept (int __excepts) throw (); > > > >extern int fegetexceptflag (fexcept_t *__flagp, int __excepts) throw (); > > >extern int feraiseexcept (int __excepts) throw (); > > > >extern int fesetexceptflag (const fexcept_t *__flagp, int __excepts) throw (); > > > >extern int fetestexcept (int __excepts) throw (); > > > > > >extern int fegetround (void) throw (); > > >extern int fesetround (int __rounding_direction) throw (); > > > > > > >extern int fegetenv (fenv_t *__envp) throw (); > > > > >extern int feholdexcept (fenv_t *__envp) throw (); > > > >extern int fesetenv (const fenv_t *__envp) throw (); > > > > >extern int feupdateenv (const fenv_t *__envp) throw (); > > > > ># 1 "/usr/include/bits/fenvinline.h" 1 3 4 ># 115 "/usr/include/fenv.h" 2 3 4 > > > > > > > >extern int feenableexcept (int __excepts) throw (); > > > > >extern int fedisableexcept (int __excepts) throw (); > > >extern int fegetexcept (void) throw (); > > >} ># 37 "/usr/include/c++/4.9.0/fenv.h" 2 3 ># 328 "../../../include/my_global.h" 2 > > > > > > ># 1 "/usr/include/fcntl.h" 1 3 4 ># 28 "/usr/include/fcntl.h" 3 4 >extern "C" { > > > > > > ># 1 "/usr/include/bits/fcntl.h" 1 3 4 ># 34 "/usr/include/bits/fcntl.h" 3 4 >struct flock > { > short int l_type; > short int l_whence; > __off_t l_start; > __off_t l_len; > __pid_t l_pid; > }; > > >struct flock64 > { > short int l_type; > short int l_whence; > __off64_t l_start; > __off64_t l_len; > __pid_t l_pid; > }; > > > ># 1 "/usr/include/bits/fcntl-linux.h" 1 3 4 ># 38 "/usr/include/bits/fcntl-linux.h" 3 4 ># 1 "/usr/include/bits/uio.h" 1 3 4 ># 43 "/usr/include/bits/uio.h" 3 4 >struct iovec > { > void *iov_base; > size_t iov_len; > }; ># 39 "/usr/include/bits/fcntl-linux.h" 2 3 4 ># 241 "/usr/include/bits/fcntl-linux.h" 3 4 >enum __pid_type > { > F_OWNER_TID = 0, > F_OWNER_PID, > F_OWNER_PGRP, > F_OWNER_GID = F_OWNER_PGRP > }; > > >struct f_owner_ex > { > enum __pid_type type; > __pid_t pid; > }; ># 311 "/usr/include/bits/fcntl-linux.h" 3 4 >struct file_handle >{ > unsigned int handle_bytes; > int handle_type; > > unsigned char f_handle[0]; >}; > > > > > >extern "C" { > > > > >extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count) > throw (); > > > > > > >extern int sync_file_range (int __fd, __off64_t __offset, __off64_t __count, > unsigned int __flags); > > > > > > >extern ssize_t vmsplice (int __fdout, const struct iovec *__iov, > size_t __count, unsigned int __flags); > > > > > >extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout, > __off64_t *__offout, size_t __len, > unsigned int __flags); > > > > > >extern ssize_t tee (int __fdin, int __fdout, size_t __len, > unsigned int __flags); ># 370 "/usr/include/bits/fcntl-linux.h" 3 4 >extern int fallocate (int __fd, int __mode, __off64_t __offset, __off64_t __len) __asm__ ("" "fallocate64") > > ; > > > > > >extern int fallocate64 (int __fd, int __mode, __off64_t __offset, > __off64_t __len); > > > > >extern int name_to_handle_at (int __dfd, const char *__name, > struct file_handle *__handle, int *__mnt_id, > int __flags) throw (); > > > > > >extern int open_by_handle_at (int __mountdirfd, struct file_handle *__handle, > int __flags); > > > >} ># 55 "/usr/include/bits/fcntl.h" 2 3 4 ># 36 "/usr/include/fcntl.h" 2 3 4 ># 68 "/usr/include/fcntl.h" 3 4 ># 1 "/usr/include/bits/stat.h" 1 3 4 ># 27 "/usr/include/bits/stat.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 28 "/usr/include/bits/stat.h" 2 3 4 ># 55 "/usr/include/bits/stat.h" 3 4 >struct stat > { > __dev_t st_dev; > __ino64_t st_ino; > __mode_t st_mode; > __nlink_t st_nlink; > __uid_t st_uid; > __gid_t st_gid; > __dev_t st_rdev; > __dev_t __pad1; > __off64_t st_size; > __blksize_t st_blksize; > int __pad2; > __blkcnt64_t st_blocks; > > > > > > > > struct timespec st_atim; > struct timespec st_mtim; > struct timespec st_ctim; ># 90 "/usr/include/bits/stat.h" 3 4 > int __glibc_reserved[2]; > }; > > > > >struct stat64 > { > __dev_t st_dev; > __ino64_t st_ino; > __mode_t st_mode; > __nlink_t st_nlink; > __uid_t st_uid; > __gid_t st_gid; > __dev_t st_rdev; > __dev_t __pad1; > __off64_t st_size; > __blksize_t st_blksize; > int __pad2; > __blkcnt64_t st_blocks; > > > > > > > > struct timespec st_atim; > struct timespec st_mtim; > struct timespec st_ctim; ># 128 "/usr/include/bits/stat.h" 3 4 > int __glibc_reserved[2]; > }; ># 69 "/usr/include/fcntl.h" 2 3 4 ># 160 "/usr/include/fcntl.h" 3 4 >extern int fcntl (int __fd, int __cmd, ...); ># 172 "/usr/include/fcntl.h" 3 4 >extern int open (const char *__file, int __oflag, ...) __asm__ ("" "open64") > __attribute__ ((__nonnull__ (1))); > > > > > >extern int open64 (const char *__file, int __oflag, ...) __attribute__ ((__nonnull__ (1))); ># 197 "/usr/include/fcntl.h" 3 4 >extern int openat (int __fd, const char *__file, int __oflag, ...) __asm__ ("" "openat64") > __attribute__ ((__nonnull__ (2))); > > > > > >extern int openat64 (int __fd, const char *__file, int __oflag, ...) > __attribute__ ((__nonnull__ (2))); ># 218 "/usr/include/fcntl.h" 3 4 >extern int creat (const char *__file, mode_t __mode) __asm__ ("" "creat64") > __attribute__ ((__nonnull__ (1))); > > > > > >extern int creat64 (const char *__file, mode_t __mode) __attribute__ ((__nonnull__ (1))); ># 247 "/usr/include/fcntl.h" 3 4 >extern int lockf (int __fd, int __cmd, __off64_t __len) __asm__ ("" "lockf64"); > > > > > >extern int lockf64 (int __fd, int __cmd, off64_t __len); ># 265 "/usr/include/fcntl.h" 3 4 >extern int posix_fadvise (int __fd, __off64_t __offset, __off64_t __len, int __advise) throw () __asm__ ("" "posix_fadvise64") > > ; > > > > > >extern int posix_fadvise64 (int __fd, off64_t __offset, off64_t __len, > int __advise) throw (); ># 286 "/usr/include/fcntl.h" 3 4 >extern int posix_fallocate (int __fd, __off64_t __offset, __off64_t __len) __asm__ ("" "posix_fallocate64") > > ; > > > > > >extern int posix_fallocate64 (int __fd, off64_t __offset, off64_t __len); ># 305 "/usr/include/fcntl.h" 3 4 >} ># 335 "../../../include/my_global.h" 2 > > ># 1 "/usr/include/sys/timeb.h" 1 3 4 ># 27 "/usr/include/sys/timeb.h" 3 4 >extern "C" { > > > >struct timeb > { > time_t time; > unsigned short int millitm; > short int timezone; > short int dstflag; > }; > > > >extern int ftime (struct timeb *__timebuf); > >} ># 338 "../../../include/my_global.h" 2 > > ># 1 "/usr/include/sys/time.h" 1 3 4 ># 27 "/usr/include/sys/time.h" 3 4 ># 1 "/usr/include/bits/time.h" 1 3 4 ># 28 "/usr/include/sys/time.h" 2 3 4 ># 37 "/usr/include/sys/time.h" 3 4 >extern "C" { ># 55 "/usr/include/sys/time.h" 3 4 >struct timezone > { > int tz_minuteswest; > int tz_dsttime; > }; > >typedef struct timezone *__restrict __timezone_ptr_t; ># 71 "/usr/include/sys/time.h" 3 4 >extern int gettimeofday (struct timeval *__restrict __tv, > __timezone_ptr_t __tz) throw () __attribute__ ((__nonnull__ (1))); > > > > >extern int settimeofday (const struct timeval *__tv, > const struct timezone *__tz) > throw (); > > > > > >extern int adjtime (const struct timeval *__delta, > struct timeval *__olddelta) throw (); > > > > >enum __itimer_which > { > > ITIMER_REAL = 0, > > > ITIMER_VIRTUAL = 1, > > > > ITIMER_PROF = 2 > > }; > > > >struct itimerval > { > > struct timeval it_interval; > > struct timeval it_value; > }; > > > > > > >typedef int __itimer_which_t; > > > > >extern int getitimer (__itimer_which_t __which, > struct itimerval *__value) throw (); > > > > >extern int setitimer (__itimer_which_t __which, > const struct itimerval *__restrict __new, > struct itimerval *__restrict __old) throw (); > > > > >extern int utimes (const char *__file, const struct timeval __tvp[2]) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int lutimes (const char *__file, const struct timeval __tvp[2]) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int futimes (int __fd, const struct timeval __tvp[2]) throw (); > > > > > > >extern int futimesat (int __fd, const char *__file, > const struct timeval __tvp[2]) throw (); ># 189 "/usr/include/sys/time.h" 3 4 >} ># 341 "../../../include/my_global.h" 2 ># 350 "../../../include/my_global.h" ># 1 "/usr/include/unistd.h" 1 3 4 ># 27 "/usr/include/unistd.h" 3 4 >extern "C" { ># 202 "/usr/include/unistd.h" 3 4 ># 1 "/usr/include/bits/posix_opt.h" 1 3 4 ># 203 "/usr/include/unistd.h" 2 3 4 > > > ># 1 "/usr/include/bits/environments.h" 1 3 4 ># 22 "/usr/include/bits/environments.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 23 "/usr/include/bits/environments.h" 2 3 4 ># 207 "/usr/include/unistd.h" 2 3 4 ># 226 "/usr/include/unistd.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 227 "/usr/include/unistd.h" 2 3 4 ># 267 "/usr/include/unistd.h" 3 4 >typedef __intptr_t intptr_t; > > > > > > >typedef __socklen_t socklen_t; ># 287 "/usr/include/unistd.h" 3 4 >extern int access (const char *__name, int __type) throw () __attribute__ ((__nonnull__ (1))); > > > > >extern int euidaccess (const char *__name, int __type) > throw () __attribute__ ((__nonnull__ (1))); > > >extern int eaccess (const char *__name, int __type) > throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern int faccessat (int __fd, const char *__file, int __type, int __flag) > throw () __attribute__ ((__nonnull__ (2))) ; ># 337 "/usr/include/unistd.h" 3 4 >extern __off64_t lseek (int __fd, __off64_t __offset, int __whence) throw () __asm__ ("" "lseek64") > > ; > > > > > >extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) > throw (); > > > > > > >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) ; ># 388 "/usr/include/unistd.h" 3 4 >extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pread64") > > ; >extern ssize_t pwrite (int __fd, const void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pwrite64") > > ; ># 404 "/usr/include/unistd.h" 3 4 >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]) throw () ; > > > > >extern int pipe2 (int __pipedes[2], int __flags) throw () ; ># 432 "/usr/include/unistd.h" 3 4 >extern unsigned int alarm (unsigned int __seconds) throw (); ># 444 "/usr/include/unistd.h" 3 4 >extern unsigned int sleep (unsigned int __seconds); > > > > > > > >extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval) > throw (); > > > > > > >extern int usleep (__useconds_t __useconds); ># 469 "/usr/include/unistd.h" 3 4 >extern int pause (void); > > > >extern int chown (const char *__file, __uid_t __owner, __gid_t __group) > throw () __attribute__ ((__nonnull__ (1))) ; > > > >extern int fchown (int __fd, __uid_t __owner, __gid_t __group) throw () ; > > > > >extern int lchown (const char *__file, __uid_t __owner, __gid_t __group) > throw () __attribute__ ((__nonnull__ (1))) ; > > > > > > >extern int fchownat (int __fd, const char *__file, __uid_t __owner, > __gid_t __group, int __flag) > throw () __attribute__ ((__nonnull__ (2))) ; > > > >extern int chdir (const char *__path) throw () __attribute__ ((__nonnull__ (1))) ; > > > >extern int fchdir (int __fd) throw () ; ># 511 "/usr/include/unistd.h" 3 4 >extern char *getcwd (char *__buf, size_t __size) throw () ; > > > > > >extern char *get_current_dir_name (void) throw (); > > > > > > > >extern char *getwd (char *__buf) > throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) ; > > > > >extern int dup (int __fd) throw () ; > > >extern int dup2 (int __fd, int __fd2) throw (); > > > > >extern int dup3 (int __fd, int __fd2, int __flags) throw (); > > > >extern char **__environ; > >extern char **environ; > > > > > >extern int execve (const char *__path, char *const __argv[], > char *const __envp[]) throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern int fexecve (int __fd, char *const __argv[], char *const __envp[]) > throw () __attribute__ ((__nonnull__ (2))); > > > > >extern int execv (const char *__path, char *const __argv[]) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int execle (const char *__path, const char *__arg, ...) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int execl (const char *__path, const char *__arg, ...) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern int execvp (const char *__file, char *const __argv[]) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern int execlp (const char *__file, const char *__arg, ...) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern int execvpe (const char *__file, char *const __argv[], > char *const __envp[]) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > > >extern int nice (int __inc) throw () ; > > > > >extern void _exit (int __status) __attribute__ ((__noreturn__)); > > > > > ># 1 "/usr/include/bits/confname.h" 1 3 4 ># 24 "/usr/include/bits/confname.h" 3 4 >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 "/usr/include/unistd.h" 2 3 4 > > >extern long int pathconf (const char *__path, int __name) > throw () __attribute__ ((__nonnull__ (1))); > > >extern long int fpathconf (int __fd, int __name) throw (); > > >extern long int sysconf (int __name) throw (); > > > >extern size_t confstr (int __name, char *__buf, size_t __len) throw (); > > > > >extern __pid_t getpid (void) throw (); > > >extern __pid_t getppid (void) throw (); > > >extern __pid_t getpgrp (void) throw (); > > >extern __pid_t __getpgid (__pid_t __pid) throw (); > >extern __pid_t getpgid (__pid_t __pid) throw (); > > > > > > >extern int setpgid (__pid_t __pid, __pid_t __pgid) throw (); ># 660 "/usr/include/unistd.h" 3 4 >extern int setpgrp (void) throw (); > > > > > > >extern __pid_t setsid (void) throw (); > > > >extern __pid_t getsid (__pid_t __pid) throw (); > > > >extern __uid_t getuid (void) throw (); > > >extern __uid_t geteuid (void) throw (); > > >extern __gid_t getgid (void) throw (); > > >extern __gid_t getegid (void) throw (); > > > > >extern int getgroups (int __size, __gid_t __list[]) throw () ; > > > >extern int group_member (__gid_t __gid) throw (); > > > > > > >extern int setuid (__uid_t __uid) throw () ; > > > > >extern int setreuid (__uid_t __ruid, __uid_t __euid) throw () ; > > > > >extern int seteuid (__uid_t __uid) throw () ; > > > > > > >extern int setgid (__gid_t __gid) throw () ; > > > > >extern int setregid (__gid_t __rgid, __gid_t __egid) throw () ; > > > > >extern int setegid (__gid_t __gid) throw () ; > > > > > >extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid) > throw (); > > > >extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid) > throw (); > > > >extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid) > throw () ; > > > >extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid) > throw () ; > > > > > > >extern __pid_t fork (void) throw (); > > > > > > > >extern __pid_t vfork (void) throw (); > > > > > >extern char *ttyname (int __fd) throw (); > > > >extern int ttyname_r (int __fd, char *__buf, size_t __buflen) > throw () __attribute__ ((__nonnull__ (2))) ; > > > >extern int isatty (int __fd) throw (); > > > > > >extern int ttyslot (void) throw (); > > > > >extern int link (const char *__from, const char *__to) > throw () __attribute__ ((__nonnull__ (1, 2))) ; > > > > >extern int linkat (int __fromfd, const char *__from, int __tofd, > const char *__to, int __flags) > throw () __attribute__ ((__nonnull__ (2, 4))) ; > > > > >extern int symlink (const char *__from, const char *__to) > throw () __attribute__ ((__nonnull__ (1, 2))) ; > > > > >extern ssize_t readlink (const char *__restrict __path, > char *__restrict __buf, size_t __len) > throw () __attribute__ ((__nonnull__ (1, 2))) ; > > > > >extern int symlinkat (const char *__from, int __tofd, > const char *__to) throw () __attribute__ ((__nonnull__ (1, 3))) ; > > >extern ssize_t readlinkat (int __fd, const char *__restrict __path, > char *__restrict __buf, size_t __len) > throw () __attribute__ ((__nonnull__ (2, 3))) ; > > > >extern int unlink (const char *__name) throw () __attribute__ ((__nonnull__ (1))); > > > >extern int unlinkat (int __fd, const char *__name, int __flag) > throw () __attribute__ ((__nonnull__ (2))); > > > >extern int rmdir (const char *__path) throw () __attribute__ ((__nonnull__ (1))); > > > >extern __pid_t tcgetpgrp (int __fd) throw (); > > >extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) throw (); > > > > > > >extern char *getlogin (void); > > > > > > > >extern int getlogin_r (char *__name, size_t __name_len) __attribute__ ((__nonnull__ (1))); > > > > >extern int setlogin (const char *__name) throw () __attribute__ ((__nonnull__ (1))); ># 871 "/usr/include/unistd.h" 3 4 ># 1 "/usr/include/getopt.h" 1 3 4 ># 48 "/usr/include/getopt.h" 3 4 >extern "C" { ># 57 "/usr/include/getopt.h" 3 4 >extern char *optarg; ># 71 "/usr/include/getopt.h" 3 4 >extern int optind; > > > > >extern int opterr; > > > >extern int optopt; ># 150 "/usr/include/getopt.h" 3 4 >extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) > throw (); ># 185 "/usr/include/getopt.h" 3 4 >} ># 872 "/usr/include/unistd.h" 2 3 4 > > > > > > > >extern int gethostname (char *__name, size_t __len) throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern int sethostname (const char *__name, size_t __len) > throw () __attribute__ ((__nonnull__ (1))) ; > > > >extern int sethostid (long int __id) throw () ; > > > > > >extern int getdomainname (char *__name, size_t __len) > throw () __attribute__ ((__nonnull__ (1))) ; >extern int setdomainname (const char *__name, size_t __len) > throw () __attribute__ ((__nonnull__ (1))) ; > > > > > >extern int vhangup (void) throw (); > > >extern int revoke (const char *__file) throw () __attribute__ ((__nonnull__ (1))) ; > > > > > > > >extern int profil (unsigned short int *__sample_buffer, size_t __size, > size_t __offset, unsigned int __scale) > throw () __attribute__ ((__nonnull__ (1))); > > > > > >extern int acct (const char *__name) throw (); > > > >extern char *getusershell (void) throw (); >extern void endusershell (void) throw (); >extern void setusershell (void) throw (); > > > > > >extern int daemon (int __nochdir, int __noclose) throw () ; > > > > > > >extern int chroot (const char *__path) throw () __attribute__ ((__nonnull__ (1))) ; > > > >extern char *getpass (const char *__prompt) __attribute__ ((__nonnull__ (1))); > > > > > > > >extern int fsync (int __fd); > > > > > >extern int syncfs (int __fd) throw (); > > > > > > >extern long int gethostid (void); > > >extern void sync (void) throw (); > > > > > >extern int getpagesize (void) throw () __attribute__ ((__const__)); > > > > >extern int getdtablesize (void) throw (); ># 997 "/usr/include/unistd.h" 3 4 >extern int truncate (const char *__file, __off64_t __length) throw () __asm__ ("" "truncate64") > > __attribute__ ((__nonnull__ (1))) ; > > > > > >extern int truncate64 (const char *__file, __off64_t __length) > throw () __attribute__ ((__nonnull__ (1))) ; ># 1019 "/usr/include/unistd.h" 3 4 >extern int ftruncate (int __fd, __off64_t __length) throw () __asm__ ("" "ftruncate64") > ; > > > > > >extern int ftruncate64 (int __fd, __off64_t __length) throw () ; ># 1037 "/usr/include/unistd.h" 3 4 >extern int brk (void *__addr) throw () ; > > > > > >extern void *sbrk (intptr_t __delta) throw (); ># 1058 "/usr/include/unistd.h" 3 4 >extern long int syscall (long int __sysno, ...) throw (); ># 1112 "/usr/include/unistd.h" 3 4 >extern int fdatasync (int __fildes); > > > > > > > >extern char *crypt (const char *__key, const char *__salt) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern void encrypt (char *__glibc_block, int __edflag) > throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern void swab (const void *__restrict __from, void *__restrict __to, > ssize_t __n) throw () __attribute__ ((__nonnull__ (1, 2))); ># 1151 "/usr/include/unistd.h" 3 4 >} ># 351 "../../../include/my_global.h" 2 ># 360 "../../../include/my_global.h" ># 1 "/usr/include/errno.h" 1 3 4 ># 31 "/usr/include/errno.h" 3 4 >extern "C" { > > > ># 1 "/usr/include/bits/errno.h" 1 3 4 ># 24 "/usr/include/bits/errno.h" 3 4 ># 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 "/usr/include/bits/errno.h" 2 3 4 ># 50 "/usr/include/bits/errno.h" 3 4 >extern int *__errno_location (void) throw () __attribute__ ((__const__)); ># 36 "/usr/include/errno.h" 2 3 4 ># 54 "/usr/include/errno.h" 3 4 >extern char *program_invocation_name, *program_invocation_short_name; > > > >} ># 68 "/usr/include/errno.h" 3 4 >typedef int error_t; ># 361 "../../../include/my_global.h" 2 > > ># 1 "/usr/include/crypt.h" 1 3 4 ># 29 "/usr/include/crypt.h" 3 4 >extern "C" { > > >extern char *crypt (const char *__key, const char *__salt) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern void setkey (const char *__key) throw () __attribute__ ((__nonnull__ (1))); > > > >extern void encrypt (char *__glibc_block, int __edflag) > throw () __attribute__ ((__nonnull__ (1))); > > > > >struct crypt_data > { > char keysched[16 * 8]; > char sb0[32768]; > char sb1[32768]; > char sb2[32768]; > char sb3[32768]; > > char crypt_3_buf[14]; > char current_salt[2]; > long int current_saltbits; > int direction, initialized; > }; > >extern char *crypt_r (const char *__key, const char *__salt, > struct crypt_data * __restrict __data) > throw () __attribute__ ((__nonnull__ (1, 2, 3))); > >extern void setkey_r (const char *__key, > struct crypt_data * __restrict __data) > throw () __attribute__ ((__nonnull__ (1, 2))); > >extern void encrypt_r (char *__glibc_block, int __edflag, > struct crypt_data * __restrict __data) > throw () __attribute__ ((__nonnull__ (1, 3))); > > >} ># 364 "../../../include/my_global.h" 2 > > > > > > > ># 1 "/usr/include/assert.h" 1 3 4 ># 64 "/usr/include/assert.h" 3 4 >extern "C" { > > >extern void __assert_fail (const char *__assertion, const char *__file, > unsigned int __line, const char *__function) > throw () __attribute__ ((__noreturn__)); > > >extern void __assert_perror_fail (int __errnum, const char *__file, > unsigned int __line, const char *__function) > throw () __attribute__ ((__noreturn__)); > > > > >extern void __assert (const char *__assertion, const char *__file, int __line) > throw () __attribute__ ((__noreturn__)); > > >} ># 372 "../../../include/my_global.h" 2 ># 476 "../../../include/my_global.h" ># 1 "../../../include/my_compiler.h" 1 ># 27 "../../../include/my_compiler.h" ># 1 "../../../include/my_global.h" 1 ># 28 "../../../include/my_compiler.h" 2 ># 109 "../../../include/my_compiler.h" >template<size_t alignment> struct my_alignment_imp; >template<> struct __attribute__((__aligned__((1)))) my_alignment_imp<1> {}; >template<> struct __attribute__((__aligned__((2)))) my_alignment_imp<2> {}; >template<> struct __attribute__((__aligned__((4)))) my_alignment_imp<4> {}; >template<> struct __attribute__((__aligned__((8)))) my_alignment_imp<8> {}; >template<> struct __attribute__((__aligned__((16)))) my_alignment_imp<16> {}; ># 131 "../../../include/my_compiler.h" >template <size_t size, size_t alignment> >struct my_aligned_storage >{ > union > { > char data[size]; > my_alignment_imp<alignment> align; > }; >}; ># 151 "../../../include/my_compiler.h" ># 1 "../../../include/my_attribute.h" 1 ># 152 "../../../include/my_compiler.h" 2 ># 477 "../../../include/my_global.h" 2 ># 493 "../../../include/my_global.h" >typedef int File; > > > >typedef int my_socket; > > > > >extern "C" { >typedef void (*sig_return)(); >} > >typedef char pchar; >typedef char puchar; >typedef char pbool; >typedef short pshort; >typedef float pfloat; > > > > > > > >extern "C" { >typedef int (*qsort_cmp)(const void *,const void *); >typedef int (*qsort_cmp2)(const void*, const void *,const void *); >} > > ># 1 "/usr/include/sys/socket.h" 1 3 4 ># 24 "/usr/include/sys/socket.h" 3 4 >extern "C" { > ># 1 "/usr/include/sys/uio.h" 1 3 4 ># 25 "/usr/include/sys/uio.h" 3 4 >extern "C" { > > ># 1 "/usr/include/bits/uio.h" 1 3 4 ># 56 "/usr/include/bits/uio.h" 3 4 >extern "C" { > > >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) > throw (); > > >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) > throw (); > >} ># 29 "/usr/include/sys/uio.h" 2 3 4 ># 39 "/usr/include/sys/uio.h" 3 4 >extern ssize_t readv (int __fd, const struct iovec *__iovec, int __count) > ; ># 50 "/usr/include/sys/uio.h" 3 4 >extern ssize_t writev (int __fd, const struct iovec *__iovec, int __count) > ; ># 81 "/usr/include/sys/uio.h" 3 4 >extern ssize_t preadv (int __fd, const struct iovec *__iovec, int __count, __off64_t __offset) __asm__ ("" "preadv64") > > ; >extern ssize_t pwritev (int __fd, const struct iovec *__iovec, int __count, __off64_t __offset) __asm__ ("" "pwritev64") > > ; ># 103 "/usr/include/sys/uio.h" 3 4 >extern ssize_t preadv64 (int __fd, const struct iovec *__iovec, int __count, > __off64_t __offset) ; ># 115 "/usr/include/sys/uio.h" 3 4 >extern ssize_t pwritev64 (int __fd, const struct iovec *__iovec, int __count, > __off64_t __offset) ; > > > >} ># 27 "/usr/include/sys/socket.h" 2 3 4 > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 29 "/usr/include/sys/socket.h" 2 3 4 > > ># 1 "/usr/include/bits/sigset.h" 1 3 4 ># 32 "/usr/include/sys/socket.h" 2 3 4 > > > > > > ># 1 "/usr/include/bits/socket.h" 1 3 4 ># 27 "/usr/include/bits/socket.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 28 "/usr/include/bits/socket.h" 2 3 4 ># 38 "/usr/include/bits/socket.h" 3 4 ># 1 "/usr/include/bits/socket_type.h" 1 3 4 ># 24 "/usr/include/bits/socket_type.h" 3 4 >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 "/usr/include/bits/socket.h" 2 3 4 ># 146 "/usr/include/bits/socket.h" 3 4 ># 1 "/usr/include/bits/sockaddr.h" 1 3 4 ># 28 "/usr/include/bits/sockaddr.h" 3 4 >typedef unsigned short int sa_family_t; ># 147 "/usr/include/bits/socket.h" 2 3 4 > > >struct sockaddr > { > sa_family_t sa_family; > char sa_data[14]; > }; ># 162 "/usr/include/bits/socket.h" 3 4 >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 "/usr/include/bits/socket.h" 3 4 >extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, > struct cmsghdr *__cmsg) throw (); > > > > >extern __inline __attribute__ ((__gnu_inline__)) struct cmsghdr * >__attribute__ ((__leaf__)) __cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) throw () >{ > 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 "/usr/include/bits/socket.h" 3 4 ># 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 "/usr/include/bits/socket.h" 2 3 4 ># 379 "/usr/include/bits/socket.h" 3 4 >struct linger > { > int l_onoff; > int l_linger; > }; ># 39 "/usr/include/sys/socket.h" 2 3 4 > > > > >struct osockaddr > { > unsigned short int sa_family; > unsigned char sa_data[14]; > }; > > > > >enum >{ > SHUT_RD = 0, > > SHUT_WR, > > SHUT_RDWR > >}; ># 101 "/usr/include/sys/socket.h" 3 4 >struct mmsghdr > { > struct msghdr msg_hdr; > unsigned int msg_len; > > }; > > > > > > >extern int socket (int __domain, int __type, int __protocol) throw (); > > > > > >extern int socketpair (int __domain, int __type, int __protocol, > int __fds[2]) throw (); > > >extern int bind (int __fd, const struct sockaddr * __addr, socklen_t __len) > throw (); > > >extern int getsockname (int __fd, struct sockaddr *__restrict __addr, > socklen_t *__restrict __len) throw (); ># 137 "/usr/include/sys/socket.h" 3 4 >extern int connect (int __fd, const struct sockaddr * __addr, socklen_t __len); > > > >extern int getpeername (int __fd, struct sockaddr *__restrict __addr, > socklen_t *__restrict __len) throw (); > > > > > > >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 struct sockaddr * __addr, > socklen_t __addr_len); ># 174 "/usr/include/sys/socket.h" 3 4 >extern ssize_t recvfrom (int __fd, void *__restrict __buf, size_t __n, > int __flags, struct sockaddr *__restrict __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) throw (); > > > > >extern int setsockopt (int __fd, int __level, int __optname, > const void *__optval, socklen_t __optlen) throw (); > > > > > >extern int listen (int __fd, int __n) throw (); ># 243 "/usr/include/sys/socket.h" 3 4 >extern int accept (int __fd, struct sockaddr *__restrict __addr, > socklen_t *__restrict __addr_len); > > > > > > >extern int accept4 (int __fd, struct sockaddr *__restrict __addr, > socklen_t *__restrict __addr_len, int __flags); ># 261 "/usr/include/sys/socket.h" 3 4 >extern int shutdown (int __fd, int __how) throw (); > > > > >extern int sockatmark (int __fd) throw (); > > > > > > > >extern int isfdtype (int __fd, int __fdtype) throw (); ># 283 "/usr/include/sys/socket.h" 3 4 >} ># 525 "../../../include/my_global.h" 2 > >typedef socklen_t size_socket; ># 778 "../../../include/my_global.h" >extern "C" { >extern double my_double_isnan(double x); >} ># 817 "../../../include/my_global.h" >typedef long long my_ptrdiff_t; ># 856 "../../../include/my_global.h" >typedef unsigned char uchar; > > > >typedef signed char int8; > > >typedef unsigned char uint8; > > >typedef short int16; > > >typedef unsigned short uint16; > > > >typedef int int32; > > >typedef unsigned int uint32; ># 899 "../../../include/my_global.h" >typedef unsigned long long int ulonglong; >typedef long long int longlong; > > > > > > >typedef longlong int64; > > >typedef ulonglong uint64; > > > > > > > >typedef unsigned long long my_ulonglong; > > > > > >typedef long intptr; ># 937 "../../../include/my_global.h" >typedef off_t os_off_t; > >typedef ulonglong my_off_t; ># 949 "../../../include/my_global.h" >typedef ulonglong table_map; >typedef ulonglong nesting_map; ># 975 "../../../include/my_global.h" >typedef int myf; >typedef char my_bool; ># 1026 "../../../include/my_global.h" ># 1 "../../../include/my_byteorder.h" 1 ># 40 "../../../include/my_byteorder.h" ># 1 "../../../include/byte_order_generic.h" 1 ># 41 "../../../include/my_byteorder.h" 2 ># 51 "../../../include/my_byteorder.h" ># 1 "../../../include/little_endian.h" 1 ># 52 "../../../include/my_byteorder.h" 2 ># 1027 "../../../include/my_global.h" 2 ># 1049 "../../../include/my_global.h" ># 1 "/usr/include/dlfcn.h" 1 3 4 ># 24 "/usr/include/dlfcn.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 25 "/usr/include/dlfcn.h" 2 3 4 > > ># 1 "/usr/include/bits/dlfcn.h" 1 3 4 ># 57 "/usr/include/bits/dlfcn.h" 3 4 >extern "C" { > > >extern void _dl_mcount_wrapper_check (void *__selfpc) throw (); > >} ># 28 "/usr/include/dlfcn.h" 2 3 4 ># 44 "/usr/include/dlfcn.h" 3 4 >typedef long int Lmid_t; > > > > > > > >extern "C" { > > > >extern void *dlopen (const char *__file, int __mode) throw (); > > > >extern int dlclose (void *__handle) throw () __attribute__ ((__nonnull__ (1))); > > > >extern void *dlsym (void *__restrict __handle, > const char *__restrict __name) throw () __attribute__ ((__nonnull__ (2))); > > > >extern void *dlmopen (Lmid_t __nsid, const char *__file, int __mode) throw (); > > > >extern void *dlvsym (void *__restrict __handle, > const char *__restrict __name, > const char *__restrict __version) > throw () __attribute__ ((__nonnull__ (2, 3))); > > > > > >extern char *dlerror (void) throw (); > > > > > >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) > throw () __attribute__ ((__nonnull__ (2))); > > >extern int dladdr1 (const void *__address, Dl_info *__info, > void **__extra_info, int __flags) throw () __attribute__ ((__nonnull__ (2))); > > > > >enum > { > > RTLD_DL_SYMENT = 1, > > > RTLD_DL_LINKMAP = 2 > }; > > > > > > > >extern int dlinfo (void *__restrict __handle, > int __request, void *__restrict __arg) > throw () __attribute__ ((__nonnull__ (1, 3))); > > >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; > > > >} ># 1050 "../../../include/my_global.h" 2 ># 1086 "../../../include/my_global.h" ># 1 "/usr/include/c++/4.9.0/new" 1 3 ># 37 "/usr/include/c++/4.9.0/new" 3 > ># 38 "/usr/include/c++/4.9.0/new" 3 > > ># 1 "/usr/include/c++/4.9.0/exception" 1 3 ># 33 "/usr/include/c++/4.9.0/exception" 3 > ># 34 "/usr/include/c++/4.9.0/exception" 3 > >#pragma GCC visibility push(default) > > ># 1 "/usr/include/c++/4.9.0/bits/atomic_lockfree_defines.h" 1 3 ># 33 "/usr/include/c++/4.9.0/bits/atomic_lockfree_defines.h" 3 > ># 34 "/usr/include/c++/4.9.0/bits/atomic_lockfree_defines.h" 3 ># 39 "/usr/include/c++/4.9.0/exception" 2 3 > >extern "C++" { > >namespace std >{ ># 60 "/usr/include/c++/4.9.0/exception" 3 > class exception > { > public: > exception() throw() { } > virtual ~exception() throw(); > > > > virtual const char* what() const throw(); > }; > > > > class bad_exception : public exception > { > public: > bad_exception() throw() { } > > > > virtual ~bad_exception() throw(); > > > virtual const char* what() const throw(); > }; > > > typedef void (*terminate_handler) (); > > > typedef void (*unexpected_handler) (); > > > terminate_handler set_terminate(terminate_handler) throw(); ># 102 "/usr/include/c++/4.9.0/exception" 3 > void terminate() throw() __attribute__ ((__noreturn__)); > > > unexpected_handler set_unexpected(unexpected_handler) throw(); ># 114 "/usr/include/c++/4.9.0/exception" 3 > void unexpected() __attribute__ ((__noreturn__)); ># 127 "/usr/include/c++/4.9.0/exception" 3 > bool uncaught_exception() throw() __attribute__ ((__pure__)); > > >} > >namespace __gnu_cxx >{ > ># 152 "/usr/include/c++/4.9.0/exception" 3 > void __verbose_terminate_handler(); > > >} > >} > >#pragma GCC visibility pop ># 41 "/usr/include/c++/4.9.0/new" 2 3 > >#pragma GCC visibility push(default) > >extern "C++" { > >namespace std >{ > > > > > > > class bad_alloc : public exception > { > public: > bad_alloc() throw() { } > > > > virtual ~bad_alloc() throw(); > > > virtual const char* what() const throw(); > }; ># 85 "/usr/include/c++/4.9.0/new" 3 > class bad_array_length : public bad_alloc > { > public: > bad_array_length() throw() { }; > > > > virtual ~bad_array_length() throw(); > > > virtual const char* what() const throw(); > }; > > > struct nothrow_t { }; > > extern const nothrow_t nothrow; > > > > typedef void (*new_handler)(); > > > > new_handler set_new_handler(new_handler) throw(); > > > > > >} ># 128 "/usr/include/c++/4.9.0/new" 3 >void* operator new(std::size_t) throw(std::bad_alloc) > __attribute__((__externally_visible__)); >void* operator new[](std::size_t) throw(std::bad_alloc) > __attribute__((__externally_visible__)); >void operator delete(void*) throw() > __attribute__((__externally_visible__)); >void operator delete[](void*) throw() > __attribute__((__externally_visible__)); >void* operator new(std::size_t, const std::nothrow_t&) throw() > __attribute__((__externally_visible__)); >void* operator new[](std::size_t, const std::nothrow_t&) throw() > __attribute__((__externally_visible__)); >void operator delete(void*, const std::nothrow_t&) throw() > __attribute__((__externally_visible__)); >void operator delete[](void*, const std::nothrow_t&) throw() > __attribute__((__externally_visible__)); > > >inline void* operator new(std::size_t, void* __p) throw() >{ return __p; } >inline void* operator new[](std::size_t, void* __p) throw() >{ return __p; } > > >inline void operator delete (void*, void*) throw() { } >inline void operator delete[](void*, void*) throw() { } > >} > >#pragma GCC visibility pop ># 1087 "../../../include/my_global.h" 2 ># 1187 "../../../include/my_global.h" ># 1 "../../../include/my_dbug.h" 1 ># 26 "../../../include/my_dbug.h" ># 1 "/usr/include/signal.h" 1 3 4 ># 30 "/usr/include/signal.h" 3 4 >extern "C" { > ># 1 "/usr/include/bits/sigset.h" 1 3 4 ># 102 "/usr/include/bits/sigset.h" 3 4 >extern int __sigismember (const __sigset_t *, int); >extern int __sigaddset (__sigset_t *, int); >extern int __sigdelset (__sigset_t *, int); ># 116 "/usr/include/bits/sigset.h" 3 4 >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 "/usr/include/signal.h" 2 3 4 > > > > > > > >typedef __sig_atomic_t sig_atomic_t; > ># 57 "/usr/include/signal.h" 3 4 ># 1 "/usr/include/bits/signum.h" 1 3 4 ># 58 "/usr/include/signal.h" 2 3 4 ># 80 "/usr/include/signal.h" 3 4 ># 1 "/usr/include/bits/siginfo.h" 1 3 4 ># 24 "/usr/include/bits/siginfo.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 25 "/usr/include/bits/siginfo.h" 2 3 4 > > > > > > > >typedef union sigval > { > int sival_int; > void *sival_ptr; > } sigval_t; ># 50 "/usr/include/bits/siginfo.h" 3 4 >typedef struct > { > int si_signo; > int si_errno; > > int si_code; > > union > { > int _pad[((128 / sizeof (int)) - 4)]; > > > 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; > __clock_t si_utime; > __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; ># 141 "/usr/include/bits/siginfo.h" 3 4 >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 > >}; ># 297 "/usr/include/bits/siginfo.h" 3 4 >typedef union pthread_attr_t pthread_attr_t; > > > >typedef struct sigevent > { > sigval_t sigev_value; > int sigev_signo; > int sigev_notify; > > union > { > int _pad[((64 / sizeof (int)) - 4)]; > > > > __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 "/usr/include/signal.h" 2 3 4 > > > > >typedef void (*__sighandler_t) (int); > > > > >extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler) > throw (); > >extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler) > throw (); > > > > > > > >extern __sighandler_t signal (int __sig, __sighandler_t __handler) > throw (); ># 114 "/usr/include/signal.h" 3 4 > > > > > >extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler) > throw (); > > > > > > >extern int kill (__pid_t __pid, int __sig) throw (); > > > > > > >extern int killpg (__pid_t __pgrp, int __sig) throw (); > > > > >extern int raise (int __sig) throw (); > > > > >extern __sighandler_t ssignal (int __sig, __sighandler_t __handler) > throw (); >extern int gsignal (int __sig) throw (); > > > > >extern void psignal (int __sig, const char *__s); > > > > >extern void psiginfo (const siginfo_t *__pinfo, const char *__s); ># 167 "/usr/include/signal.h" 3 4 >extern int __sigpause (int __sig_or_mask, int __is_sig); > > > >extern int sigpause (int __sig) __asm__ ("__xpg_sigpause"); ># 189 "/usr/include/signal.h" 3 4 >extern int sigblock (int __mask) throw () __attribute__ ((__deprecated__)); > > >extern int sigsetmask (int __mask) throw () __attribute__ ((__deprecated__)); > > >extern int siggetmask (void) throw () __attribute__ ((__deprecated__)); ># 204 "/usr/include/signal.h" 3 4 >typedef __sighandler_t sighandler_t; > > > > >typedef __sighandler_t sig_t; > > > > > >extern int sigemptyset (sigset_t *__set) throw () __attribute__ ((__nonnull__ (1))); > > >extern int sigfillset (sigset_t *__set) throw () __attribute__ ((__nonnull__ (1))); > > >extern int sigaddset (sigset_t *__set, int __signo) throw () __attribute__ ((__nonnull__ (1))); > > >extern int sigdelset (sigset_t *__set, int __signo) throw () __attribute__ ((__nonnull__ (1))); > > >extern int sigismember (const sigset_t *__set, int __signo) > throw () __attribute__ ((__nonnull__ (1))); > > > >extern int sigisemptyset (const sigset_t *__set) throw () __attribute__ ((__nonnull__ (1))); > > >extern int sigandset (sigset_t *__set, const sigset_t *__left, > const sigset_t *__right) throw () __attribute__ ((__nonnull__ (1, 2, 3))); > > >extern int sigorset (sigset_t *__set, const sigset_t *__left, > const sigset_t *__right) throw () __attribute__ ((__nonnull__ (1, 2, 3))); > > > > ># 1 "/usr/include/bits/sigaction.h" 1 3 4 ># 24 "/usr/include/bits/sigaction.h" 3 4 >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 "/usr/include/signal.h" 2 3 4 > > >extern int sigprocmask (int __how, const sigset_t *__restrict __set, > sigset_t *__restrict __oset) throw (); > > > > > > >extern int sigsuspend (const sigset_t *__set) __attribute__ ((__nonnull__ (1))); > > >extern int sigaction (int __sig, const struct sigaction *__restrict __act, > struct sigaction *__restrict __oact) throw (); > > >extern int sigpending (sigset_t *__set) throw () __attribute__ ((__nonnull__ (1))); > > > > > > >extern int sigwait (const sigset_t *__restrict __set, int *__restrict __sig) > __attribute__ ((__nonnull__ (1, 2))); > > > > > > >extern int sigwaitinfo (const sigset_t *__restrict __set, > siginfo_t *__restrict __info) __attribute__ ((__nonnull__ (1))); > > > > > > >extern int sigtimedwait (const sigset_t *__restrict __set, > siginfo_t *__restrict __info, > const struct timespec *__restrict __timeout) > __attribute__ ((__nonnull__ (1))); > > > >extern int sigqueue (__pid_t __pid, int __sig, const union sigval __val) > throw (); ># 303 "/usr/include/signal.h" 3 4 >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 "/usr/include/signal.h" 3 4 >extern int sigvec (int __sig, const struct sigvec *__vec, > struct sigvec *__ovec) throw (); > > > ># 1 "/usr/include/bits/sigcontext.h" 1 3 4 ># 27 "/usr/include/bits/sigcontext.h" 3 4 ># 1 "/usr/include/asm/sigcontext.h" 1 3 4 ># 19 "/usr/include/asm/sigcontext.h" 3 4 ># 1 "/usr/include/linux/types.h" 1 3 4 > > > ># 1 "/usr/include/asm/types.h" 1 3 4 ># 1 "/usr/include/asm-generic/types.h" 1 3 4 > > > > > ># 1 "/usr/include/asm-generic/int-ll64.h" 1 3 4 ># 11 "/usr/include/asm-generic/int-ll64.h" 3 4 ># 1 "/usr/include/asm/bitsperlong.h" 1 3 4 ># 21 "/usr/include/asm/bitsperlong.h" 3 4 ># 1 "/usr/include/asm-generic/bitsperlong.h" 1 3 4 ># 22 "/usr/include/asm/bitsperlong.h" 2 3 4 ># 12 "/usr/include/asm-generic/int-ll64.h" 2 3 4 > > > > > > > >typedef __signed__ char __s8; >typedef unsigned char __u8; > >typedef __signed__ short __s16; >typedef unsigned short __u16; > >typedef __signed__ int __s32; >typedef unsigned int __u32; > > >__extension__ typedef __signed__ long long __s64; >__extension__ typedef unsigned long long __u64; ># 7 "/usr/include/asm-generic/types.h" 2 3 4 ># 1 "/usr/include/asm/types.h" 2 3 4 ># 5 "/usr/include/linux/types.h" 2 3 4 > > > ># 1 "/usr/include/linux/posix_types.h" 1 3 4 > > > ># 1 "/usr/include/linux/stddef.h" 1 3 4 ># 5 "/usr/include/linux/posix_types.h" 2 3 4 ># 24 "/usr/include/linux/posix_types.h" 3 4 >typedef struct { > unsigned long fds_bits[1024 / (8 * sizeof(long))]; >} __kernel_fd_set; > > >typedef void (*__kernel_sighandler_t)(int); > > >typedef int __kernel_key_t; >typedef int __kernel_mqd_t; > ># 1 "/usr/include/asm/posix_types.h" 1 3 4 ># 1 "/usr/include/asm-generic/posix_types.h" 1 3 4 ># 14 "/usr/include/asm-generic/posix_types.h" 3 4 >typedef long __kernel_long_t; >typedef unsigned long __kernel_ulong_t; > > > >typedef __kernel_ulong_t __kernel_ino_t; > > > >typedef unsigned int __kernel_mode_t; > > > >typedef int __kernel_pid_t; > > > >typedef int __kernel_ipc_pid_t; > > > >typedef unsigned int __kernel_uid_t; >typedef unsigned int __kernel_gid_t; > > > >typedef __kernel_long_t __kernel_suseconds_t; > > > >typedef int __kernel_daddr_t; > > > >typedef unsigned int __kernel_uid32_t; >typedef unsigned int __kernel_gid32_t; > > > >typedef __kernel_uid_t __kernel_old_uid_t; >typedef __kernel_gid_t __kernel_old_gid_t; > > > >typedef unsigned int __kernel_old_dev_t; ># 71 "/usr/include/asm-generic/posix_types.h" 3 4 >typedef __kernel_ulong_t __kernel_size_t; >typedef __kernel_long_t __kernel_ssize_t; >typedef __kernel_long_t __kernel_ptrdiff_t; > > > > >typedef struct { > int val[2]; >} __kernel_fsid_t; > > > > > >typedef __kernel_long_t __kernel_off_t; >typedef long long __kernel_loff_t; >typedef __kernel_long_t __kernel_time_t; >typedef __kernel_long_t __kernel_clock_t; >typedef int __kernel_timer_t; >typedef int __kernel_clockid_t; >typedef char * __kernel_caddr_t; >typedef unsigned short __kernel_uid16_t; >typedef unsigned short __kernel_gid16_t; ># 1 "/usr/include/asm/posix_types.h" 2 3 4 ># 36 "/usr/include/linux/posix_types.h" 2 3 4 ># 9 "/usr/include/linux/types.h" 2 3 4 ># 27 "/usr/include/linux/types.h" 3 4 >typedef __u16 __le16; >typedef __u16 __be16; >typedef __u32 __le32; >typedef __u32 __be32; >typedef __u64 __le64; >typedef __u64 __be64; > >typedef __u16 __sum16; >typedef __u32 __wsum; ># 20 "/usr/include/asm/sigcontext.h" 2 3 4 > > > > > >struct sigcontext { > __u64 fault_address; > > __u64 regs[31]; > __u64 sp; > __u64 pc; > __u64 pstate; > > __u8 __reserved[4096] __attribute__((__aligned__(16))); >}; > > > > > > > >struct _aarch64_ctx { > __u32 magic; > __u32 size; >}; > > > >struct fpsimd_context { > struct _aarch64_ctx head; > __u32 fpsr; > __u32 fpcr; > __uint128_t vregs[32]; >}; ># 28 "/usr/include/bits/sigcontext.h" 2 3 4 > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 32 "/usr/include/bits/sigcontext.h" 2 3 4 ># 333 "/usr/include/signal.h" 2 3 4 > > >extern int sigreturn (struct sigcontext *__scp) throw (); > > > > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 343 "/usr/include/signal.h" 2 3 4 > > > > >extern int siginterrupt (int __sig, int __interrupt) throw (); > ># 1 "/usr/include/bits/sigstack.h" 1 3 4 ># 25 "/usr/include/bits/sigstack.h" 3 4 >struct sigstack > { > void *ss_sp; > int ss_onstack; > }; > > > >enum >{ > SS_ONSTACK = 1, > > SS_DISABLE > >}; ># 49 "/usr/include/bits/sigstack.h" 3 4 >typedef struct sigaltstack > { > void *ss_sp; > int ss_flags; > size_t ss_size; > } stack_t; ># 350 "/usr/include/signal.h" 2 3 4 > > ># 1 "/usr/include/sys/ucontext.h" 1 3 4 ># 25 "/usr/include/sys/ucontext.h" 3 4 ># 1 "/usr/include/signal.h" 1 3 4 ># 26 "/usr/include/sys/ucontext.h" 2 3 4 ># 1 "/usr/include/sys/procfs.h" 1 3 4 ># 34 "/usr/include/sys/procfs.h" 3 4 ># 1 "/usr/include/sys/user.h" 1 3 4 ># 22 "/usr/include/sys/user.h" 3 4 >struct user_regs_struct >{ > unsigned long long regs[31]; > unsigned long long sp; > unsigned long long pc; > unsigned long long pstate; >}; > >struct user_fpsimd_struct >{ > __uint128_t vregs[32]; > unsigned int fpsr; > unsigned int fpcr; >}; ># 35 "/usr/include/sys/procfs.h" 2 3 4 > >extern "C" { > > >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_fpsimd_struct elf_fpregset_t; > > >struct elf_siginfo > { > int si_signo; > int si_code; > int si_errno; > }; ># 66 "/usr/include/sys/procfs.h" 3 4 >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; > >} ># 27 "/usr/include/sys/ucontext.h" 2 3 4 > > > ># 1 "/usr/include/bits/sigcontext.h" 1 3 4 ># 31 "/usr/include/sys/ucontext.h" 2 3 4 > >typedef int greg_t; > > >typedef elf_gregset_t gregset_t; > > >typedef elf_fpregset_t fpregset_t; > > > > > >typedef struct sigcontext mcontext_t; > > >typedef struct ucontext > { > unsigned long uc_flags; > struct ucontext *uc_link; > stack_t uc_stack; > __sigset_t uc_sigmask; > mcontext_t uc_mcontext; > } ucontext_t; ># 353 "/usr/include/signal.h" 2 3 4 > > > > > >extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) > throw () __attribute__ ((__deprecated__)); > > > >extern int sigaltstack (const struct sigaltstack *__restrict __ss, > struct sigaltstack *__restrict __oss) throw (); > > > > > > > >extern int sighold (int __sig) throw (); > > >extern int sigrelse (int __sig) throw (); > > >extern int sigignore (int __sig) throw (); > > >extern __sighandler_t sigset (int __sig, __sighandler_t __disp) throw (); > > > > > > ># 1 "/usr/include/bits/sigthread.h" 1 3 4 ># 30 "/usr/include/bits/sigthread.h" 3 4 >extern int pthread_sigmask (int __how, > const __sigset_t *__restrict __newmask, > __sigset_t *__restrict __oldmask)throw (); > > >extern int pthread_kill (pthread_t __threadid, int __signo) throw (); > > > >extern int pthread_sigqueue (pthread_t __threadid, int __signo, > const union sigval __value) throw (); ># 389 "/usr/include/signal.h" 2 3 4 > > > > > > >extern int __libc_current_sigrtmin (void) throw (); > >extern int __libc_current_sigrtmax (void) throw (); > > > >} ># 27 "../../../include/my_dbug.h" 2 > > > >extern "C" { ># 203 "../../../include/my_dbug.h" >} ># 1188 "../../../include/my_global.h" 2 ># 1202 "../../../include/my_global.h" >enum loglevel { > ERROR_LEVEL= 0, > WARNING_LEVEL= 1, > INFORMATION_LEVEL= 2 >}; ># 22 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../include/my_sys.h" 1 ># 19 "../../../include/my_sys.h" ># 1 "../../../include/my_global.h" 1 ># 20 "../../../include/my_sys.h" 2 > >extern "C" { ># 44 "../../../include/my_sys.h" ># 1 "../../../include/my_pthread.h" 1 ># 29 "../../../include/my_pthread.h" >extern "C" { ># 216 "../../../include/my_pthread.h" >typedef void *(* pthread_handler)(void *); ># 476 "../../../include/my_pthread.h" >typedef struct st_safe_mutex_t >{ > pthread_mutex_t global,mutex; > const char *file; > uint line,count; > pthread_t thread; > > > >} safe_mutex_t; ># 503 "../../../include/my_pthread.h" >int safe_mutex_init(safe_mutex_t *mp, const pthread_mutexattr_t *attr, > const char *file, uint line); >int safe_mutex_lock(safe_mutex_t *mp, my_bool try_lock, const char *file, uint line); >int safe_mutex_unlock(safe_mutex_t *mp,const char *file, uint line); >int safe_mutex_destroy(safe_mutex_t *mp,const char *file, uint line); >int safe_cond_wait(pthread_cond_t *cond, safe_mutex_t *mp,const char *file, > uint line); >int safe_cond_timedwait(pthread_cond_t *cond, safe_mutex_t *mp, > const struct timespec *abstime, > const char *file, uint line); >void safe_mutex_global_init(void); >void safe_mutex_end(FILE *file); ># 547 "../../../include/my_pthread.h" >typedef struct st_my_pthread_fastmutex_t >{ > pthread_mutex_t mutex; > uint spins; > uint rng_state; >} my_pthread_fastmutex_t; >void fastmutex_global_init(void); > >int my_pthread_fastmutex_init(my_pthread_fastmutex_t *mp, > const pthread_mutexattr_t *attr); >int my_pthread_fastmutex_lock(my_pthread_fastmutex_t *mp); ># 640 "../../../include/my_pthread.h" >typedef struct st_rw_pr_lock_t { > > > > > pthread_mutex_t lock; > > > > > pthread_cond_t no_active_readers; > > uint active_readers; > > uint writers_waiting_readers; > > my_bool active_writer; > > > > >} rw_pr_lock_t; > >extern int rw_pr_init(rw_pr_lock_t *); >extern int rw_pr_rdlock(rw_pr_lock_t *); >extern int rw_pr_wrlock(rw_pr_lock_t *); >extern int rw_pr_unlock(rw_pr_lock_t *); >extern int rw_pr_destroy(rw_pr_lock_t *); ># 773 "../../../include/my_pthread.h" >extern pthread_mutexattr_t my_fast_mutexattr; > > > > > >extern pthread_mutexattr_t my_errorcheck_mutexattr; ># 790 "../../../include/my_pthread.h" >typedef ulong my_thread_id; > >extern my_bool my_thread_global_init(void); >extern void my_thread_global_reinit(void); >extern void my_thread_global_end(void); >extern my_bool my_thread_init(void); >extern void my_thread_end(void); >extern const char *my_thread_name(void); >extern my_thread_id my_thread_dbug_id(void); >extern int pthread_dummy(int); ># 825 "../../../include/my_pthread.h" ># 1 "../../../include/mysql/psi/mysql_thread.h" 1 ># 57 "../../../include/mysql/psi/mysql_thread.h" ># 1 "../../../include/mysql/psi/psi.h" 1 ># 43 "../../../include/mysql/psi/psi.h" >extern "C" { > >struct TABLE_SHARE; ># 57 "../../../include/mysql/psi/psi.h" >struct OPAQUE_LEX_YYSTYPE; ># 72 "../../../include/mysql/psi/psi.h" >struct PSI_mutex; >typedef struct PSI_mutex PSI_mutex; > > > > > >struct PSI_rwlock; >typedef struct PSI_rwlock PSI_rwlock; > > > > > >struct PSI_cond; >typedef struct PSI_cond PSI_cond; > > > > > >struct PSI_table_share; >typedef struct PSI_table_share PSI_table_share; > > > > > >struct PSI_table; >typedef struct PSI_table PSI_table; > > > > > >struct PSI_thread; >typedef struct PSI_thread PSI_thread; > > > > > >struct PSI_file; >typedef struct PSI_file PSI_file; > > > > > >struct PSI_socket; >typedef struct PSI_socket PSI_socket; > > > > > >struct PSI_table_locker; >typedef struct PSI_table_locker PSI_table_locker; > > > > > >struct PSI_statement_locker; >typedef struct PSI_statement_locker PSI_statement_locker; > > > > > >struct PSI_idle_locker; >typedef struct PSI_idle_locker PSI_idle_locker; > > > > > >struct PSI_digest_locker; >typedef struct PSI_digest_locker PSI_digest_locker; > > >struct PSI_bootstrap >{ ># 168 "../../../include/mysql/psi/psi.h" > void* (*get_interface)(int version); >}; >typedef struct PSI_bootstrap PSI_bootstrap; ># 328 "../../../include/mysql/psi/psi.h" >struct PSI_mutex_locker; >typedef struct PSI_mutex_locker PSI_mutex_locker; > > > > > >struct PSI_rwlock_locker; >typedef struct PSI_rwlock_locker PSI_rwlock_locker; > > > > > >struct PSI_cond_locker; >typedef struct PSI_cond_locker PSI_cond_locker; > > > > > >struct PSI_file_locker; >typedef struct PSI_file_locker PSI_file_locker; > > > > > >struct PSI_socket_locker; >typedef struct PSI_socket_locker PSI_socket_locker; > > >enum PSI_mutex_operation >{ > > PSI_MUTEX_LOCK= 0, > > PSI_MUTEX_TRYLOCK= 1 >}; >typedef enum PSI_mutex_operation PSI_mutex_operation; > > >enum PSI_rwlock_operation >{ > > PSI_RWLOCK_READLOCK= 0, > > PSI_RWLOCK_WRITELOCK= 1, > > PSI_RWLOCK_TRYREADLOCK= 2, > > PSI_RWLOCK_TRYWRITELOCK= 3 >}; >typedef enum PSI_rwlock_operation PSI_rwlock_operation; > > >enum PSI_cond_operation >{ > > PSI_COND_WAIT= 0, > > PSI_COND_TIMEDWAIT= 1 >}; >typedef enum PSI_cond_operation PSI_cond_operation; > > >enum PSI_file_operation >{ > > PSI_FILE_CREATE= 0, > > PSI_FILE_CREATE_TMP= 1, > > PSI_FILE_OPEN= 2, > > PSI_FILE_STREAM_OPEN= 3, > > PSI_FILE_CLOSE= 4, > > PSI_FILE_STREAM_CLOSE= 5, > > > > > PSI_FILE_READ= 6, > > > > > PSI_FILE_WRITE= 7, > > PSI_FILE_SEEK= 8, > > PSI_FILE_TELL= 9, > > PSI_FILE_FLUSH= 10, > > PSI_FILE_STAT= 11, > > PSI_FILE_FSTAT= 12, > > PSI_FILE_CHSIZE= 13, > > PSI_FILE_DELETE= 14, > > PSI_FILE_RENAME= 15, > > PSI_FILE_SYNC= 16 >}; >typedef enum PSI_file_operation PSI_file_operation; > > >enum PSI_table_io_operation >{ > > PSI_TABLE_FETCH_ROW= 0, > > PSI_TABLE_WRITE_ROW= 1, > > PSI_TABLE_UPDATE_ROW= 2, > > PSI_TABLE_DELETE_ROW= 3 >}; >typedef enum PSI_table_io_operation PSI_table_io_operation; > > >enum PSI_table_lock_operation >{ > > PSI_TABLE_LOCK= 0, > > PSI_TABLE_EXTERNAL_LOCK= 1 >}; >typedef enum PSI_table_lock_operation PSI_table_lock_operation; > > >enum PSI_socket_state >{ > > PSI_SOCKET_STATE_IDLE= 1, > > PSI_SOCKET_STATE_ACTIVE= 2 >}; >typedef enum PSI_socket_state PSI_socket_state; > > >enum PSI_socket_operation >{ > > PSI_SOCKET_CREATE= 0, > > PSI_SOCKET_CONNECT= 1, > > PSI_SOCKET_BIND= 2, > > PSI_SOCKET_CLOSE= 3, > > PSI_SOCKET_SEND= 4, > > PSI_SOCKET_RECV= 5, > > PSI_SOCKET_SENDTO= 6, > > PSI_SOCKET_RECVFROM= 7, > > PSI_SOCKET_SENDMSG= 8, > > PSI_SOCKET_RECVMSG= 9, > > PSI_SOCKET_SEEK= 10, > > PSI_SOCKET_OPT= 11, > > PSI_SOCKET_STAT= 12, > > PSI_SOCKET_SHUTDOWN= 13, > > PSI_SOCKET_SELECT= 14 >}; >typedef enum PSI_socket_operation PSI_socket_operation; > > > > > > >typedef unsigned int PSI_mutex_key; > > > > > > > >typedef unsigned int PSI_rwlock_key; > > > > > > > >typedef unsigned int PSI_cond_key; > > > > > > > >typedef unsigned int PSI_thread_key; > > > > > > >typedef unsigned int PSI_file_key; > > > > > > >typedef unsigned int PSI_stage_key; > > > > > > >typedef unsigned int PSI_statement_key; > > > > > > >typedef unsigned int PSI_socket_key; ># 619 "../../../include/mysql/psi/psi.h" >struct PSI_mutex_info_v1 >{ > > > > PSI_mutex_key *m_key; > > > > const char *m_name; > > > > > int m_flags; >}; > > > > > > >struct PSI_rwlock_info_v1 >{ > > > > PSI_rwlock_key *m_key; > > > > const char *m_name; > > > > > int m_flags; >}; > > > > > > >struct PSI_cond_info_v1 >{ > > > > PSI_cond_key *m_key; > > > > const char *m_name; > > > > > int m_flags; >}; > > > > > > >struct PSI_thread_info_v1 >{ > > > > PSI_thread_key *m_key; > > > > const char *m_name; > > > > > int m_flags; >}; > > > > > > >struct PSI_file_info_v1 >{ > > > > PSI_file_key *m_key; > > > > const char *m_name; > > > > > int m_flags; >}; > > > > > > >struct PSI_stage_info_v1 >{ > > PSI_stage_key m_key; > > const char *m_name; > > int m_flags; >}; > > > > > > >struct PSI_statement_info_v1 >{ > > PSI_statement_key m_key; > > const char *m_name; > > int m_flags; >}; > > > > > > >struct PSI_socket_info_v1 >{ > > > > PSI_socket_key *m_key; > > > > const char *m_name; > > > > > int m_flags; >}; ># 785 "../../../include/mysql/psi/psi.h" >struct PSI_idle_locker_state_v1 >{ > > uint m_flags; > > struct PSI_thread *m_thread; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_wait; >}; ># 808 "../../../include/mysql/psi/psi.h" >struct PSI_mutex_locker_state_v1 >{ > > uint m_flags; > > enum PSI_mutex_operation m_operation; > > struct PSI_mutex *m_mutex; > > struct PSI_thread *m_thread; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_wait; >}; ># 836 "../../../include/mysql/psi/psi.h" >struct PSI_rwlock_locker_state_v1 >{ > > uint m_flags; > > enum PSI_rwlock_operation m_operation; > > struct PSI_rwlock *m_rwlock; > > struct PSI_thread *m_thread; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_wait; >}; ># 863 "../../../include/mysql/psi/psi.h" >struct PSI_cond_locker_state_v1 >{ > > uint m_flags; > > enum PSI_cond_operation m_operation; > > struct PSI_cond *m_cond; > > struct PSI_mutex *m_mutex; > > struct PSI_thread *m_thread; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_wait; >}; ># 894 "../../../include/mysql/psi/psi.h" >struct PSI_file_locker_state_v1 >{ > > uint m_flags; > > enum PSI_file_operation m_operation; > > struct PSI_file *m_file; > > const char *m_name; > > void *m_class; > > struct PSI_thread *m_thread; > > size_t m_number_of_bytes; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_wait; >}; ># 929 "../../../include/mysql/psi/psi.h" >struct PSI_table_locker_state_v1 >{ > > uint m_flags; > > enum PSI_table_io_operation m_io_operation; > > struct PSI_table *m_table; > > struct PSI_table_share *m_table_share; > > struct PSI_thread *m_thread; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_wait; > > > > > > uint m_index; >}; > > > > > > > >struct PSI_digest_storage >{ > my_bool m_full; > int m_byte_count; > > uint m_charset_number; > unsigned char m_token_array[1024]; >}; >typedef struct PSI_digest_storage PSI_digest_storage; > >struct PSI_digest_locker_state >{ > int m_last_id_index; > PSI_digest_storage m_digest_storage; >}; >typedef struct PSI_digest_locker_state PSI_digest_locker_state; ># 991 "../../../include/mysql/psi/psi.h" >struct PSI_statement_locker_state_v1 >{ > > my_bool m_discarded; > > uchar m_no_index_used; > > uchar m_no_good_index_used; > > uint m_flags; > > void *m_class; > > struct PSI_thread *m_thread; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > void *m_statement; > > ulonglong m_lock_time; > > ulonglong m_rows_sent; > > ulonglong m_rows_examined; > > ulong m_created_tmp_disk_tables; > > ulong m_created_tmp_tables; > > ulong m_select_full_join; > > ulong m_select_full_range_join; > > ulong m_select_range; > > ulong m_select_range_check; > > ulong m_select_scan; > > ulong m_sort_merge_passes; > > ulong m_sort_range; > > ulong m_sort_rows; > > ulong m_sort_scan; > > PSI_digest_locker_state m_digest_state; > > char m_schema_name[(64 * 3)]; > > uint m_schema_name_length; >}; ># 1056 "../../../include/mysql/psi/psi.h" >struct PSI_socket_locker_state_v1 >{ > > uint m_flags; > > struct PSI_socket *m_socket; > > struct PSI_thread *m_thread; > > size_t m_number_of_bytes; > > ulonglong m_timer_start; > > ulonglong (*m_timer)(void); > > enum PSI_socket_operation m_operation; > > const char* m_src_file; > > int m_src_line; > > void *m_wait; >}; ># 1088 "../../../include/mysql/psi/psi.h" >typedef void (*register_mutex_v1_t) > (const char *category, struct PSI_mutex_info_v1 *info, int count); > > > > > > > >typedef void (*register_rwlock_v1_t) > (const char *category, struct PSI_rwlock_info_v1 *info, int count); > > > > > > > >typedef void (*register_cond_v1_t) > (const char *category, struct PSI_cond_info_v1 *info, int count); > > > > > > > >typedef void (*register_thread_v1_t) > (const char *category, struct PSI_thread_info_v1 *info, int count); > > > > > > > >typedef void (*register_file_v1_t) > (const char *category, struct PSI_file_info_v1 *info, int count); > > > > > > > >typedef void (*register_stage_v1_t) > (const char *category, struct PSI_stage_info_v1 **info, int count); > > > > > > > >typedef void (*register_statement_v1_t) > (const char *category, struct PSI_statement_info_v1 *info, int count); > > > > > > > >typedef void (*register_socket_v1_t) > (const char *category, struct PSI_socket_info_v1 *info, int count); > > > > > > > >typedef struct PSI_mutex* (*init_mutex_v1_t) > (PSI_mutex_key key, const void *identity); > > > > > >typedef void (*destroy_mutex_v1_t)(struct PSI_mutex *mutex); > > > > > > > >typedef struct PSI_rwlock* (*init_rwlock_v1_t) > (PSI_rwlock_key key, const void *identity); > > > > > >typedef void (*destroy_rwlock_v1_t)(struct PSI_rwlock *rwlock); > > > > > > > >typedef struct PSI_cond* (*init_cond_v1_t) > (PSI_cond_key key, const void *identity); > > > > > >typedef void (*destroy_cond_v1_t)(struct PSI_cond *cond); ># 1207 "../../../include/mysql/psi/psi.h" >typedef struct PSI_socket* (*init_socket_v1_t) > (PSI_socket_key key, const my_socket *fd, > const struct sockaddr *addr, socklen_t addr_len); > > > > > >typedef void (*destroy_socket_v1_t)(struct PSI_socket *socket); > > > > > > > >typedef struct PSI_table_share* (*get_table_share_v1_t) > (my_bool temporary, struct TABLE_SHARE *share); > > > > > >typedef void (*release_table_share_v1_t)(struct PSI_table_share *share); ># 1240 "../../../include/mysql/psi/psi.h" >typedef void (*drop_table_share_v1_t) > (my_bool temporary, const char *schema_name, int schema_name_length, > const char *table_name, int table_name_length); > > > > > > > >typedef struct PSI_table* (*open_table_v1_t) > (struct PSI_table_share *share, const void *identity); > > > > > > >typedef void (*unbind_table_v1_t) > (struct PSI_table *table); > > > > > > > >typedef PSI_table* (*rebind_table_v1_t) > (PSI_table_share *share, const void *identity, PSI_table *table); > > > > > > >typedef void (*close_table_v1_t)(struct PSI_table *table); ># 1285 "../../../include/mysql/psi/psi.h" >typedef void (*create_file_v1_t)(PSI_file_key key, const char *name, > File file); ># 1297 "../../../include/mysql/psi/psi.h" >typedef int (*spawn_thread_v1_t)(PSI_thread_key key, > pthread_t *thread, > const pthread_attr_t *attr, > void *(*start_routine)(void*), void *arg); > > > > > > > >typedef struct PSI_thread* (*new_thread_v1_t) > (PSI_thread_key key, const void *identity, ulonglong thread_id); > > > > > > >typedef void (*set_thread_id_v1_t)(struct PSI_thread *thread, > ulonglong id); ># 1326 "../../../include/mysql/psi/psi.h" >typedef struct PSI_thread* (*get_thread_v1_t)(void); > > > > > > >typedef void (*set_thread_user_v1_t)(const char *user, int user_len); ># 1342 "../../../include/mysql/psi/psi.h" >typedef void (*set_thread_user_host_v1_t)(const char *user, int user_len, > const char *host, int host_len); > > > > > > >typedef void (*set_thread_db_v1_t)(const char* db, int db_len); > > > > > >typedef void (*set_thread_command_v1_t)(int command); > > > > > >typedef void (*set_thread_start_time_v1_t)(time_t start_time); > > > > > >typedef void (*set_thread_state_v1_t)(const char* state); > > > > > > >typedef void (*set_thread_info_v1_t)(const char* info, uint info_len); ># 1386 "../../../include/mysql/psi/psi.h" >typedef void (*set_thread_v1_t)(struct PSI_thread *thread); > > >typedef void (*delete_current_thread_v1_t)(void); > > >typedef void (*delete_thread_v1_t)(struct PSI_thread *thread); ># 1403 "../../../include/mysql/psi/psi.h" >typedef struct PSI_file_locker* (*get_thread_file_name_locker_v1_t) > (struct PSI_file_locker_state_v1 *state, > PSI_file_key key, enum PSI_file_operation op, const char *name, > const void *identity); ># 1415 "../../../include/mysql/psi/psi.h" >typedef struct PSI_file_locker* (*get_thread_file_stream_locker_v1_t) > (struct PSI_file_locker_state_v1 *state, > struct PSI_file *file, enum PSI_file_operation op); ># 1426 "../../../include/mysql/psi/psi.h" >typedef struct PSI_file_locker* (*get_thread_file_descriptor_locker_v1_t) > (struct PSI_file_locker_state_v1 *state, > File file, enum PSI_file_operation op); > > > > > >typedef void (*unlock_mutex_v1_t) > (struct PSI_mutex *mutex); > > > > > >typedef void (*unlock_rwlock_v1_t) > (struct PSI_rwlock *rwlock); > > > > > >typedef void (*signal_cond_v1_t) > (struct PSI_cond *cond); > > > > > >typedef void (*broadcast_cond_v1_t) > (struct PSI_cond *cond); > >typedef struct PSI_idle_locker* (*start_idle_wait_v1_t) > (struct PSI_idle_locker_state_v1 *state, const char *src_file, uint src_line); > >typedef void (*end_idle_wait_v1_t) > (struct PSI_idle_locker *locker); ># 1473 "../../../include/mysql/psi/psi.h" >typedef struct PSI_mutex_locker* (*start_mutex_wait_v1_t) > (struct PSI_mutex_locker_state_v1 *state, > struct PSI_mutex *mutex, > enum PSI_mutex_operation op, > const char *src_file, uint src_line); > > > > > > >typedef void (*end_mutex_wait_v1_t) > (struct PSI_mutex_locker *locker, int rc); > > > > > > >typedef struct PSI_rwlock_locker* (*start_rwlock_rdwait_v1_t) > (struct PSI_rwlock_locker_state_v1 *state, > struct PSI_rwlock *rwlock, > enum PSI_rwlock_operation op, > const char *src_file, uint src_line); > > > > > > >typedef void (*end_rwlock_rdwait_v1_t) > (struct PSI_rwlock_locker *locker, int rc); > > > > > > >typedef struct PSI_rwlock_locker* (*start_rwlock_wrwait_v1_t) > (struct PSI_rwlock_locker_state_v1 *state, > struct PSI_rwlock *rwlock, > enum PSI_rwlock_operation op, > const char *src_file, uint src_line); > > > > > > >typedef void (*end_rwlock_wrwait_v1_t) > (struct PSI_rwlock_locker *locker, int rc); > > > > > > >typedef struct PSI_cond_locker* (*start_cond_wait_v1_t) > (struct PSI_cond_locker_state_v1 *state, > struct PSI_cond *cond, > struct PSI_mutex *mutex, > enum PSI_cond_operation op, > const char *src_file, uint src_line); > > > > > > >typedef void (*end_cond_wait_v1_t) > (struct PSI_cond_locker *locker, int rc); > > > > > > > >typedef struct PSI_table_locker* (*start_table_io_wait_v1_t) > (struct PSI_table_locker_state_v1 *state, > struct PSI_table *table, > enum PSI_table_io_operation op, > uint index, > const char *src_file, uint src_line); > > > > > >typedef void (*end_table_io_wait_v1_t)(struct PSI_table_locker *locker); > > > > > > > >typedef struct PSI_table_locker* (*start_table_lock_wait_v1_t) > (struct PSI_table_locker_state_v1 *state, > struct PSI_table *table, > enum PSI_table_lock_operation op, > ulong flags, > const char *src_file, uint src_line); > > > > > >typedef void (*end_table_lock_wait_v1_t)(struct PSI_table_locker *locker); ># 1590 "../../../include/mysql/psi/psi.h" >typedef void (*start_file_open_wait_v1_t) > (struct PSI_file_locker *locker, const char *src_file, uint src_line); > > > > > > > >typedef struct PSI_file* (*end_file_open_wait_v1_t) > (struct PSI_file_locker *locker, void *result); > > > > > > >typedef void (*end_file_open_wait_and_bind_to_descriptor_v1_t) > (struct PSI_file_locker *locker, File file); ># 1618 "../../../include/mysql/psi/psi.h" >typedef void (*start_file_wait_v1_t) > (struct PSI_file_locker *locker, size_t count, > const char *src_file, uint src_line); ># 1634 "../../../include/mysql/psi/psi.h" >typedef void (*end_file_wait_v1_t) > (struct PSI_file_locker *locker, size_t count); ># 1644 "../../../include/mysql/psi/psi.h" >typedef void (*start_file_close_wait_v1_t) > (struct PSI_file_locker *locker, const char *src_file, uint src_line); > > > > > > > >typedef void (*end_file_close_wait_v1_t) > (struct PSI_file_locker *locker, int rc); > > > > > > > >typedef void (*start_stage_v1_t) > (PSI_stage_key key, const char *src_file, int src_line); > > >typedef void (*end_stage_v1_t) (void); ># 1675 "../../../include/mysql/psi/psi.h" >typedef struct PSI_statement_locker* (*get_thread_statement_locker_v1_t) > (struct PSI_statement_locker_state_v1 *state, > PSI_statement_key key, const void *charset); ># 1686 "../../../include/mysql/psi/psi.h" >typedef struct PSI_statement_locker* (*refine_statement_v1_t) > (struct PSI_statement_locker *locker, > PSI_statement_key key); ># 1698 "../../../include/mysql/psi/psi.h" >typedef void (*start_statement_v1_t) > (struct PSI_statement_locker *locker, > const char *db, uint db_length, > const char *src_file, uint src_line); > > > > > > > >typedef void (*set_statement_text_v1_t) > (struct PSI_statement_locker *locker, > const char *text, uint text_len); > > > > > > >typedef void (*set_statement_lock_time_t) > (struct PSI_statement_locker *locker, ulonglong lock_time); > > > > > > >typedef void (*set_statement_rows_sent_t) > (struct PSI_statement_locker *locker, ulonglong count); > > > > > > >typedef void (*set_statement_rows_examined_t) > (struct PSI_statement_locker *locker, ulonglong count); > > > > > > >typedef void (*inc_statement_created_tmp_disk_tables_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_created_tmp_tables_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_select_full_join_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_select_full_range_join_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_select_range_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_select_range_check_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_select_scan_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_sort_merge_passes_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_sort_range_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_sort_rows_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*inc_statement_sort_scan_t) > (struct PSI_statement_locker *locker, ulong count); > > > > > > >typedef void (*set_statement_no_index_used_t) > (struct PSI_statement_locker *locker); > > > > > > >typedef void (*set_statement_no_good_index_used_t) > (struct PSI_statement_locker *locker); > > > > > > > >typedef void (*end_statement_v1_t) > (struct PSI_statement_locker *locker, void *stmt_da); ># 1858 "../../../include/mysql/psi/psi.h" >typedef struct PSI_socket_locker* (*start_socket_wait_v1_t) > (struct PSI_socket_locker_state_v1 *state, > struct PSI_socket *socket, > enum PSI_socket_operation op, > size_t count, > const char *src_file, uint src_line); ># 1875 "../../../include/mysql/psi/psi.h" >typedef void (*end_socket_wait_v1_t) > (struct PSI_socket_locker *locker, size_t count); > > > > > > >typedef void (*set_socket_state_v1_t)(struct PSI_socket *socket, > enum PSI_socket_state state); ># 1894 "../../../include/mysql/psi/psi.h" >typedef void (*set_socket_info_v1_t)(struct PSI_socket *socket, > const my_socket *fd, > const struct sockaddr *addr, > socklen_t addr_len); > > > > > >typedef void (*set_socket_thread_owner_v1_t)(struct PSI_socket *socket); > >typedef struct PSI_digest_locker * (*digest_start_v1_t) > (struct PSI_statement_locker *locker); > >typedef struct PSI_digest_locker* (*digest_add_token_v1_t) > (struct PSI_digest_locker *locker, uint token, struct OPAQUE_LEX_YYSTYPE *yylval); ># 1921 "../../../include/mysql/psi/psi.h" >typedef int (*set_thread_connect_attrs_v1_t)(const char *buffer, uint length, > const void *from_cs); > > > > > >struct PSI_v1 >{ > > register_mutex_v1_t register_mutex; > > register_rwlock_v1_t register_rwlock; > > register_cond_v1_t register_cond; > > register_thread_v1_t register_thread; > > register_file_v1_t register_file; > > register_stage_v1_t register_stage; > > register_statement_v1_t register_statement; > > register_socket_v1_t register_socket; > > init_mutex_v1_t init_mutex; > > destroy_mutex_v1_t destroy_mutex; > > init_rwlock_v1_t init_rwlock; > > destroy_rwlock_v1_t destroy_rwlock; > > init_cond_v1_t init_cond; > > destroy_cond_v1_t destroy_cond; > > init_socket_v1_t init_socket; > > destroy_socket_v1_t destroy_socket; > > get_table_share_v1_t get_table_share; > > release_table_share_v1_t release_table_share; > > drop_table_share_v1_t drop_table_share; > > open_table_v1_t open_table; > > unbind_table_v1_t unbind_table; > > rebind_table_v1_t rebind_table; > > close_table_v1_t close_table; > > create_file_v1_t create_file; > > spawn_thread_v1_t spawn_thread; > > new_thread_v1_t new_thread; > > set_thread_id_v1_t set_thread_id; > > get_thread_v1_t get_thread; > > set_thread_user_v1_t set_thread_user; > > set_thread_user_host_v1_t set_thread_user_host; > > set_thread_db_v1_t set_thread_db; > > set_thread_command_v1_t set_thread_command; > > set_thread_start_time_v1_t set_thread_start_time; > > set_thread_state_v1_t set_thread_state; > > set_thread_info_v1_t set_thread_info; > > set_thread_v1_t set_thread; > > delete_current_thread_v1_t delete_current_thread; > > delete_thread_v1_t delete_thread; > > get_thread_file_name_locker_v1_t get_thread_file_name_locker; > > get_thread_file_stream_locker_v1_t get_thread_file_stream_locker; > > get_thread_file_descriptor_locker_v1_t get_thread_file_descriptor_locker; > > unlock_mutex_v1_t unlock_mutex; > > unlock_rwlock_v1_t unlock_rwlock; > > signal_cond_v1_t signal_cond; > > broadcast_cond_v1_t broadcast_cond; > > start_idle_wait_v1_t start_idle_wait; > > end_idle_wait_v1_t end_idle_wait; > > start_mutex_wait_v1_t start_mutex_wait; > > end_mutex_wait_v1_t end_mutex_wait; > > start_rwlock_rdwait_v1_t start_rwlock_rdwait; > > end_rwlock_rdwait_v1_t end_rwlock_rdwait; > > start_rwlock_wrwait_v1_t start_rwlock_wrwait; > > end_rwlock_wrwait_v1_t end_rwlock_wrwait; > > start_cond_wait_v1_t start_cond_wait; > > end_cond_wait_v1_t end_cond_wait; > > start_table_io_wait_v1_t start_table_io_wait; > > end_table_io_wait_v1_t end_table_io_wait; > > start_table_lock_wait_v1_t start_table_lock_wait; > > end_table_lock_wait_v1_t end_table_lock_wait; > > start_file_open_wait_v1_t start_file_open_wait; > > end_file_open_wait_v1_t end_file_open_wait; > > end_file_open_wait_and_bind_to_descriptor_v1_t > end_file_open_wait_and_bind_to_descriptor; > > start_file_wait_v1_t start_file_wait; > > end_file_wait_v1_t end_file_wait; > > start_file_close_wait_v1_t start_file_close_wait; > > end_file_close_wait_v1_t end_file_close_wait; > > start_stage_v1_t start_stage; > > end_stage_v1_t end_stage; > > get_thread_statement_locker_v1_t get_thread_statement_locker; > > refine_statement_v1_t refine_statement; > > start_statement_v1_t start_statement; > > set_statement_text_v1_t set_statement_text; > > set_statement_lock_time_t set_statement_lock_time; > > set_statement_rows_sent_t set_statement_rows_sent; > > set_statement_rows_examined_t set_statement_rows_examined; > > inc_statement_created_tmp_disk_tables_t inc_statement_created_tmp_disk_tables; > > inc_statement_created_tmp_tables_t inc_statement_created_tmp_tables; > > inc_statement_select_full_join_t inc_statement_select_full_join; > > inc_statement_select_full_range_join_t inc_statement_select_full_range_join; > > inc_statement_select_range_t inc_statement_select_range; > > inc_statement_select_range_check_t inc_statement_select_range_check; > > inc_statement_select_scan_t inc_statement_select_scan; > > inc_statement_sort_merge_passes_t inc_statement_sort_merge_passes; > > inc_statement_sort_range_t inc_statement_sort_range; > > inc_statement_sort_rows_t inc_statement_sort_rows; > > inc_statement_sort_scan_t inc_statement_sort_scan; > > set_statement_no_index_used_t set_statement_no_index_used; > > set_statement_no_good_index_used_t set_statement_no_good_index_used; > > end_statement_v1_t end_statement; > > start_socket_wait_v1_t start_socket_wait; > > end_socket_wait_v1_t end_socket_wait; > > set_socket_state_v1_t set_socket_state; > > set_socket_info_v1_t set_socket_info; > > set_socket_thread_owner_v1_t set_socket_thread_owner; > > digest_start_v1_t digest_start; > > digest_add_token_v1_t digest_add_token; > > set_thread_connect_attrs_v1_t set_thread_connect_attrs; >}; ># 2297 "../../../include/mysql/psi/psi.h" >typedef struct PSI_v1 PSI; >typedef struct PSI_mutex_info_v1 PSI_mutex_info; >typedef struct PSI_rwlock_info_v1 PSI_rwlock_info; >typedef struct PSI_cond_info_v1 PSI_cond_info; >typedef struct PSI_thread_info_v1 PSI_thread_info; >typedef struct PSI_file_info_v1 PSI_file_info; >typedef struct PSI_stage_info_v1 PSI_stage_info; >typedef struct PSI_statement_info_v1 PSI_statement_info; >typedef struct PSI_socket_info_v1 PSI_socket_info; >typedef struct PSI_idle_locker_state_v1 PSI_idle_locker_state; >typedef struct PSI_mutex_locker_state_v1 PSI_mutex_locker_state; >typedef struct PSI_rwlock_locker_state_v1 PSI_rwlock_locker_state; >typedef struct PSI_cond_locker_state_v1 PSI_cond_locker_state; >typedef struct PSI_file_locker_state_v1 PSI_file_locker_state; >typedef struct PSI_table_locker_state_v1 PSI_table_locker_state; >typedef struct PSI_statement_locker_state_v1 PSI_statement_locker_state; >typedef struct PSI_socket_locker_state_v1 PSI_socket_locker_state; ># 2376 "../../../include/mysql/psi/psi.h" >extern PSI *PSI_server; ># 2429 "../../../include/mysql/psi/psi.h" >} ># 58 "../../../include/mysql/psi/mysql_thread.h" 2 ># 69 "../../../include/mysql/psi/mysql_thread.h" >struct st_mysql_mutex >{ > > > > > my_pthread_fastmutex_t m_mutex; ># 84 "../../../include/mysql/psi/mysql_thread.h" > struct PSI_mutex *m_psi; >}; ># 97 "../../../include/mysql/psi/mysql_thread.h" >typedef struct st_mysql_mutex mysql_mutex_t; > > > > > >struct st_mysql_rwlock >{ > > pthread_rwlock_t m_rwlock; > > > > > > struct PSI_rwlock *m_psi; >}; > > > > > >struct st_mysql_prlock >{ > > rw_pr_lock_t m_prlock; > > > > > > struct PSI_rwlock *m_psi; >}; ># 142 "../../../include/mysql/psi/mysql_thread.h" >typedef struct st_mysql_rwlock mysql_rwlock_t; ># 154 "../../../include/mysql/psi/mysql_thread.h" >typedef struct st_mysql_prlock mysql_prlock_t; > > > > > >struct st_mysql_cond >{ > > pthread_cond_t m_cond; > > > > > > struct PSI_cond *m_psi; >}; ># 182 "../../../include/mysql/psi/mysql_thread.h" >typedef struct st_mysql_cond mysql_cond_t; ># 584 "../../../include/mysql/psi/mysql_thread.h" >static inline void inline_mysql_mutex_register( > > const char *category, > PSI_mutex_info *info, > int count > > > > > >) >{ > > PSI_server->register_mutex(category, info, count); > >} > >static inline int inline_mysql_mutex_init( > > PSI_mutex_key key, > > mysql_mutex_t *that, > const pthread_mutexattr_t *attr > > > > ) >{ > > that->m_psi= PSI_server->init_mutex(key, &that->m_mutex); > > > > > > > return my_pthread_fastmutex_init(&that->m_mutex, attr); > > > >} > >static inline int inline_mysql_mutex_destroy( > mysql_mutex_t *that > > > > ) >{ > > if (that->m_psi != __null) > { > PSI_server->destroy_mutex(that->m_psi); > that->m_psi= __null; > } > > > > > return pthread_mutex_destroy(&that->m_mutex.mutex); > > > >} > >static inline int inline_mysql_mutex_lock( > mysql_mutex_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_mutex_locker *locker; > PSI_mutex_locker_state state; > locker= PSI_server->start_mutex_wait(&state, that->m_psi, > PSI_MUTEX_LOCK, src_file, src_line); > > > > > > result= my_pthread_fastmutex_lock(&that->m_mutex); > > > > > > if (locker != __null) > PSI_server->end_mutex_wait(locker, result); > > return result; > } > > > > > > > result= my_pthread_fastmutex_lock(&that->m_mutex); > > > > > return result; >} > >static inline int inline_mysql_mutex_trylock( > mysql_mutex_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_mutex_locker *locker; > PSI_mutex_locker_state state; > locker= PSI_server->start_mutex_wait(&state, that->m_psi, > PSI_MUTEX_TRYLOCK, src_file, src_line); > > > > > > result= pthread_mutex_trylock(&that->m_mutex.mutex); > > > > > > if (locker != __null) > PSI_server->end_mutex_wait(locker, result); > > return result; > } > > > > > > > result= pthread_mutex_trylock(&that->m_mutex.mutex); > > > > > return result; >} > >static inline int inline_mysql_mutex_unlock( > mysql_mutex_t *that > > > > ) >{ > int result; > > > if (that->m_psi != __null) > PSI_server->unlock_mutex(that->m_psi); > > > > > > result= pthread_mutex_unlock(&that->m_mutex.mutex); > > > > > return result; >} > >static inline void inline_mysql_rwlock_register( > > const char *category, > PSI_rwlock_info *info, > int count > > > > > >) >{ > > PSI_server->register_rwlock(category, info, count); > >} > >static inline int inline_mysql_rwlock_init( > > PSI_rwlock_key key, > > mysql_rwlock_t *that) >{ > > that->m_psi= PSI_server->init_rwlock(key, &that->m_rwlock); > > > > > > > return pthread_rwlock_init((&that->m_rwlock),(__null)); >} > > >static inline int inline_mysql_prlock_init( > > PSI_rwlock_key key, > > mysql_prlock_t *that) >{ > > that->m_psi= PSI_server->init_rwlock(key, &that->m_prlock); > > > > return rw_pr_init(&that->m_prlock); >} > > >static inline int inline_mysql_rwlock_destroy( > mysql_rwlock_t *that) >{ > > if (that->m_psi != __null) > { > PSI_server->destroy_rwlock(that->m_psi); > that->m_psi= __null; > } > > return pthread_rwlock_destroy(&that->m_rwlock); >} > > >static inline int inline_mysql_prlock_destroy( > mysql_prlock_t *that) >{ > > if (that->m_psi != __null) > { > PSI_server->destroy_rwlock(that->m_psi); > that->m_psi= __null; > } > > return rw_pr_destroy(&that->m_prlock); >} > > >static inline int inline_mysql_rwlock_rdlock( > mysql_rwlock_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_rwlock_locker *locker; > PSI_rwlock_locker_state state; > locker= PSI_server->start_rwlock_rdwait(&state, that->m_psi, > PSI_RWLOCK_READLOCK, src_file, src_line); > > > result= pthread_rwlock_rdlock(&that->m_rwlock); > > > if (locker != __null) > PSI_server->end_rwlock_rdwait(locker, result); > > return result; > } > > > > result= pthread_rwlock_rdlock(&that->m_rwlock); > > return result; >} > > >static inline int inline_mysql_prlock_rdlock( > mysql_prlock_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_rwlock_locker *locker; > PSI_rwlock_locker_state state; > locker= PSI_server->start_rwlock_rdwait(&state, that->m_psi, > PSI_RWLOCK_READLOCK, src_file, src_line); > > > result= rw_pr_rdlock(&that->m_prlock); > > > if (locker != __null) > PSI_server->end_rwlock_rdwait(locker, result); > > return result; > } > > > > result= rw_pr_rdlock(&that->m_prlock); > > return result; >} > > >static inline int inline_mysql_rwlock_wrlock( > mysql_rwlock_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_rwlock_locker *locker; > PSI_rwlock_locker_state state; > locker= PSI_server->start_rwlock_wrwait(&state, that->m_psi, > PSI_RWLOCK_WRITELOCK, src_file, src_line); > > > result= pthread_rwlock_wrlock(&that->m_rwlock); > > > if (locker != __null) > PSI_server->end_rwlock_wrwait(locker, result); > > return result; > } > > > > result= pthread_rwlock_wrlock(&that->m_rwlock); > > return result; >} > > >static inline int inline_mysql_prlock_wrlock( > mysql_prlock_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_rwlock_locker *locker; > PSI_rwlock_locker_state state; > locker= PSI_server->start_rwlock_wrwait(&state, that->m_psi, > PSI_RWLOCK_WRITELOCK, src_file, src_line); > > > result= rw_pr_wrlock(&that->m_prlock); > > > if (locker != __null) > PSI_server->end_rwlock_wrwait(locker, result); > > return result; > } > > > > result= rw_pr_wrlock(&that->m_prlock); > > return result; >} > > >static inline int inline_mysql_rwlock_tryrdlock( > mysql_rwlock_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_rwlock_locker *locker; > PSI_rwlock_locker_state state; > locker= PSI_server->start_rwlock_rdwait(&state, that->m_psi, > PSI_RWLOCK_TRYREADLOCK, src_file, src_line); > > > result= pthread_rwlock_tryrdlock((&that->m_rwlock)); > > > if (locker != __null) > PSI_server->end_rwlock_rdwait(locker, result); > > return result; > } > > > > result= pthread_rwlock_tryrdlock((&that->m_rwlock)); > > return result; >} > >static inline int inline_mysql_rwlock_trywrlock( > mysql_rwlock_t *that > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_rwlock_locker *locker; > PSI_rwlock_locker_state state; > locker= PSI_server->start_rwlock_wrwait(&state, that->m_psi, > PSI_RWLOCK_TRYWRITELOCK, src_file, src_line); > > > result= pthread_rwlock_trywrlock((&that->m_rwlock)); > > > if (locker != __null) > PSI_server->end_rwlock_wrwait(locker, result); > > return result; > } > > > > result= pthread_rwlock_trywrlock((&that->m_rwlock)); > > return result; >} > >static inline int inline_mysql_rwlock_unlock( > mysql_rwlock_t *that) >{ > int result; > > if (that->m_psi != __null) > PSI_server->unlock_rwlock(that->m_psi); > > result= pthread_rwlock_unlock(&that->m_rwlock); > return result; >} > > >static inline int inline_mysql_prlock_unlock( > mysql_prlock_t *that) >{ > int result; > > if (that->m_psi != __null) > PSI_server->unlock_rwlock(that->m_psi); > > result= rw_pr_unlock(&that->m_prlock); > return result; >} > > >static inline void inline_mysql_cond_register( > > const char *category, > PSI_cond_info *info, > int count > > > > > >) >{ > > PSI_server->register_cond(category, info, count); > >} > >static inline int inline_mysql_cond_init( > > PSI_cond_key key, > > mysql_cond_t *that, > const pthread_condattr_t *attr) >{ > > that->m_psi= PSI_server->init_cond(key, &that->m_cond); > > > > return pthread_cond_init(&that->m_cond, attr); >} > >static inline int inline_mysql_cond_destroy( > mysql_cond_t *that) >{ > > if (that->m_psi != __null) > { > PSI_server->destroy_cond(that->m_psi); > that->m_psi= __null; > } > > return pthread_cond_destroy(&that->m_cond); >} > >static inline int inline_mysql_cond_wait( > mysql_cond_t *that, > mysql_mutex_t *mutex > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_cond_locker *locker; > PSI_cond_locker_state state; > locker= PSI_server->start_cond_wait(&state, that->m_psi, mutex->m_psi, > PSI_COND_WAIT, src_file, src_line); > > > result= pthread_cond_wait((&that->m_cond), &(&mutex->m_mutex)->mutex); > > > if (locker != __null) > PSI_server->end_cond_wait(locker, result); > > return result; > } > > > > result= pthread_cond_wait((&that->m_cond), &(&mutex->m_mutex)->mutex); > > return result; >} > >static inline int inline_mysql_cond_timedwait( > mysql_cond_t *that, > mysql_mutex_t *mutex, > const struct timespec *abstime > > , const char *src_file, uint src_line > > ) >{ > int result; > > > if (that->m_psi != __null) > { > > PSI_cond_locker *locker; > PSI_cond_locker_state state; > locker= PSI_server->start_cond_wait(&state, that->m_psi, mutex->m_psi, > PSI_COND_TIMEDWAIT, src_file, src_line); > > > result= pthread_cond_timedwait((&that->m_cond), &(&mutex->m_mutex)->mutex, (abstime)); > > > if (locker != __null) > PSI_server->end_cond_wait(locker, result); > > return result; > } > > > > result= pthread_cond_timedwait((&that->m_cond), &(&mutex->m_mutex)->mutex, (abstime)); > > return result; >} > >static inline int inline_mysql_cond_signal( > mysql_cond_t *that) >{ > int result; > > if (that->m_psi != __null) > PSI_server->signal_cond(that->m_psi); > > result= pthread_cond_signal(&that->m_cond); > return result; >} > >static inline int inline_mysql_cond_broadcast( > mysql_cond_t *that) >{ > int result; > > if (that->m_psi != __null) > PSI_server->broadcast_cond(that->m_psi); > > result= pthread_cond_broadcast(&that->m_cond); > return result; >} > >static inline void inline_mysql_thread_register( > > const char *category, > PSI_thread_info *info, > int count > > > > > >) >{ > > PSI_server->register_thread(category, info, count); > >} > > >static inline int inline_mysql_thread_create( > PSI_thread_key key, > pthread_t *thread, const pthread_attr_t *attr, > void *(*start_routine)(void*), void *arg) >{ > int result; > result= PSI_server->spawn_thread(key, thread, attr, start_routine, arg); > return result; >} > >static inline void inline_mysql_thread_set_psi_id(ulong id) >{ > struct PSI_thread *psi= PSI_server->get_thread(); > PSI_server->set_thread_id(psi, id); >} ># 826 "../../../include/my_pthread.h" 2 > > > >struct st_my_thread_var >{ > int thr_errno; > mysql_cond_t suspend; > mysql_mutex_t mutex; > mysql_mutex_t * volatile current_mutex; > mysql_cond_t * volatile current_cond; > pthread_t pthread_self; > my_thread_id id; > int cmp_length; > int volatile abort; > my_bool init; > struct st_my_thread_var *next,**prev; > void *opt_info; > void *stack_ends_here; > > > > >}; > >extern struct st_my_thread_var *_my_thread_var(void) __attribute__ ((const)); >extern int set_mysys_var(struct st_my_thread_var *mysys_var); >extern void **my_thread_var_dbug(); >extern uint my_thread_end_wait_time; ># 867 "../../../include/my_pthread.h" >extern uint thd_lib_detected; ># 934 "../../../include/my_pthread.h" >} ># 45 "../../../include/my_sys.h" 2 > ># 1 "../../../include/m_ctype.h" 1 ># 27 "../../../include/m_ctype.h" >extern "C" { ># 59 "../../../include/m_ctype.h" >typedef struct unicase_info_char_st >{ > uint32 toupper; > uint32 tolower; > uint32 sort; >} MY_UNICASE_CHARACTER; > > >typedef struct unicase_info_st >{ > ulong maxchar; > MY_UNICASE_CHARACTER **page; >} MY_UNICASE_INFO; > > >extern MY_UNICASE_INFO my_unicase_default; >extern MY_UNICASE_INFO my_unicase_turkish; >extern MY_UNICASE_INFO my_unicase_mysql500; >extern MY_UNICASE_INFO my_unicase_unicode520; > > > > > >typedef struct my_contraction_t >{ > ulong ch[6]; > uint16 weight[8]; > my_bool with_context; >} MY_CONTRACTION; > > > >typedef struct my_contraction_list_t >{ > size_t nitems; > MY_CONTRACTION *item; > char *flags; >} MY_CONTRACTIONS; > > >my_bool my_uca_can_be_contraction_head(const MY_CONTRACTIONS *c, ulong wc); >my_bool my_uca_can_be_contraction_tail(const MY_CONTRACTIONS *c, ulong wc); >uint16 *my_uca_contraction2_weight(const MY_CONTRACTIONS *c, > ulong wc1, ulong wc2); > > > >typedef struct my_uca_level_info_st >{ > ulong maxchar; > uchar *lengths; > uint16 **weights; > MY_CONTRACTIONS contractions; >} MY_UCA_WEIGHT_LEVEL; > > >typedef struct uca_info_st >{ > MY_UCA_WEIGHT_LEVEL level[1]; > > > ulong first_non_ignorable; > ulong last_non_ignorable; > ulong first_primary_ignorable; > ulong last_primary_ignorable; > ulong first_secondary_ignorable; > ulong last_secondary_ignorable; > ulong first_tertiary_ignorable; > ulong last_tertiary_ignorable; > ulong first_trailing; > ulong last_trailing; > ulong first_variable; > ulong last_variable; > >} MY_UCA_INFO; > > > >extern MY_UCA_INFO my_uca_v400; > > >typedef struct uni_ctype_st >{ > uchar pctype; > uchar *ctype; >} MY_UNI_CTYPE; > >extern MY_UNI_CTYPE my_uni_ctype[256]; ># 222 "../../../include/m_ctype.h" >typedef struct my_uni_idx_st >{ > uint16 from; > uint16 to; > uchar *tab; >} MY_UNI_IDX; > >typedef struct >{ > uint beg; > uint end; > uint mb_len; >} my_match_t; > >enum my_lex_states >{ > MY_LEX_START, MY_LEX_CHAR, MY_LEX_IDENT, > MY_LEX_IDENT_SEP, MY_LEX_IDENT_START, > MY_LEX_REAL, MY_LEX_HEX_NUMBER, MY_LEX_BIN_NUMBER, > MY_LEX_CMP_OP, MY_LEX_LONG_CMP_OP, MY_LEX_STRING, MY_LEX_COMMENT, MY_LEX_END, > MY_LEX_OPERATOR_OR_IDENT, MY_LEX_NUMBER_IDENT, MY_LEX_INT_OR_REAL, > MY_LEX_REAL_OR_POINT, MY_LEX_BOOL, MY_LEX_EOL, MY_LEX_ESCAPE, > MY_LEX_LONG_COMMENT, MY_LEX_END_LONG_COMMENT, MY_LEX_SEMICOLON, > MY_LEX_SET_VAR, MY_LEX_USER_END, MY_LEX_HOSTNAME, MY_LEX_SKIP, > MY_LEX_USER_VARIABLE_DELIMITER, MY_LEX_SYSTEM_VAR, > MY_LEX_IDENT_OR_KEYWORD, > MY_LEX_IDENT_OR_HEX, MY_LEX_IDENT_OR_BIN, MY_LEX_IDENT_OR_NCHAR, > MY_LEX_STRING_OR_DELIMITER >}; > >struct charset_info_st; > >typedef struct my_charset_loader_st >{ > char error[128]; > void *(*once_alloc)(size_t); > void *(*malloc)(size_t); > void *(*realloc)(void *, size_t); > void (*free)(void *); > void (*reporter)(enum loglevel, const char *format, ...); > int (*add_collation)(struct charset_info_st *cs); >} MY_CHARSET_LOADER; > > >extern int (*my_string_stack_guard)(int); > > >typedef struct my_collation_handler_st >{ > my_bool (*init)(struct charset_info_st *, MY_CHARSET_LOADER *); > > int (*strnncoll)(const struct charset_info_st *, > const uchar *, size_t, const uchar *, size_t, my_bool); > int (*strnncollsp)(const struct charset_info_st *, > const uchar *, size_t, const uchar *, size_t, > my_bool diff_if_only_endspace_difference); > size_t (*strnxfrm)(const struct charset_info_st *, > uchar *dst, size_t dstlen, uint nweights, > const uchar *src, size_t srclen, uint flags); > size_t (*strnxfrmlen)(const struct charset_info_st *, size_t); > my_bool (*like_range)(const struct charset_info_st *, > const char *s, size_t s_length, > pchar w_prefix, pchar w_one, pchar w_many, > size_t res_length, > char *min_str, char *max_str, > size_t *min_len, size_t *max_len); > int (*wildcmp)(const struct charset_info_st *, > const char *str,const char *str_end, > const char *wildstr,const char *wildend, > int escape,int w_one, int w_many); > > int (*strcasecmp)(const struct charset_info_st *, const char *, > const char *); > > uint (*instr)(const struct charset_info_st *, > const char *b, size_t b_length, > const char *s, size_t s_length, > my_match_t *match, uint nmatch); > > > void (*hash_sort)(const struct charset_info_st *cs, const uchar *key, > size_t len, ulong *nr1, ulong *nr2); > my_bool (*propagate)(const struct charset_info_st *cs, const uchar *str, > size_t len); >} MY_COLLATION_HANDLER; > >extern MY_COLLATION_HANDLER my_collation_mb_bin_handler; >extern MY_COLLATION_HANDLER my_collation_8bit_bin_handler; >extern MY_COLLATION_HANDLER my_collation_8bit_simple_ci_handler; >extern MY_COLLATION_HANDLER my_collation_ucs2_uca_handler; > > >typedef int (*my_charset_conv_mb_wc)(const struct charset_info_st *, > ulong *, const uchar *, const uchar *); >typedef int (*my_charset_conv_wc_mb)(const struct charset_info_st *, ulong, > uchar *, uchar *); >typedef size_t (*my_charset_conv_case)(const struct charset_info_st *, > char *, size_t, char *, size_t); > > > >typedef struct my_charset_handler_st >{ > my_bool (*init)(struct charset_info_st *, MY_CHARSET_LOADER *loader); > > uint (*ismbchar)(const struct charset_info_st *, const char *, > const char *); > uint (*mbcharlen)(const struct charset_info_st *, uint c); > size_t (*numchars)(const struct charset_info_st *, const char *b, > const char *e); > size_t (*charpos)(const struct charset_info_st *, const char *b, > const char *e, size_t pos); > size_t (*well_formed_len)(const struct charset_info_st *, > const char *b,const char *e, > size_t nchars, int *error); > size_t (*lengthsp)(const struct charset_info_st *, const char *ptr, > size_t length); > size_t (*numcells)(const struct charset_info_st *, const char *b, > const char *e); > > > my_charset_conv_mb_wc mb_wc; > my_charset_conv_wc_mb wc_mb; > > > int (*ctype)(const struct charset_info_st *cs, int *ctype, > const uchar *s, const uchar *e); > > > size_t (*caseup_str)(const struct charset_info_st *, char *); > size_t (*casedn_str)(const struct charset_info_st *, char *); > > my_charset_conv_case caseup; > my_charset_conv_case casedn; > > > size_t (*snprintf)(const struct charset_info_st *, char *to, size_t n, > const char *fmt, > ...) __attribute__((format(printf, 4, 5))); > size_t (*long10_to_str)(const struct charset_info_st *, char *to, size_t n, > int radix, long int val); > size_t (*longlong10_to_str)(const struct charset_info_st *, char *to, > size_t n, int radix, longlong val); > > void (*fill)(const struct charset_info_st *, char *to, size_t len, > int fill); > > > long (*strntol)(const struct charset_info_st *, const char *s, > size_t l, int base, char **e, int *err); > ulong (*strntoul)(const struct charset_info_st *, const char *s, > size_t l, int base, char **e, int *err); > longlong (*strntoll)(const struct charset_info_st *, const char *s, > size_t l, int base, char **e, int *err); > ulonglong (*strntoull)(const struct charset_info_st *, const char *s, > size_t l, int base, char **e, int *err); > double (*strntod)(const struct charset_info_st *, char *s, > size_t l, char **e, int *err); > longlong (*strtoll10)(const struct charset_info_st *cs, > const char *nptr, char **endptr, int *error); > ulonglong (*strntoull10rnd)(const struct charset_info_st *cs, > const char *str, size_t length, > int unsigned_fl, > char **endptr, int *error); > size_t (*scan)(const struct charset_info_st *, const char *b, > const char *e, int sq); >} MY_CHARSET_HANDLER; > >extern MY_CHARSET_HANDLER my_charset_8bit_handler; >extern MY_CHARSET_HANDLER my_charset_ucs2_handler; ># 401 "../../../include/m_ctype.h" >typedef struct charset_info_st >{ > uint number; > uint primary_number; > uint binary_number; > uint state; > const char *csname; > const char *name; > const char *comment; > const char *tailoring; > uchar *ctype; > uchar *to_lower; > uchar *to_upper; > uchar *sort_order; > MY_UCA_INFO *uca; > uint16 *tab_to_uni; > MY_UNI_IDX *tab_from_uni; > MY_UNICASE_INFO *caseinfo; > uchar *state_map; > uchar *ident_map; > uint strxfrm_multiply; > uchar caseup_multiply; > uchar casedn_multiply; > uint mbminlen; > uint mbmaxlen; > ulong min_sort_char; > ulong max_sort_char; > uchar pad_char; > my_bool escape_with_backslash_is_dangerous; > uchar levels_for_compare; > uchar levels_for_order; > > MY_CHARSET_HANDLER *cset; > MY_COLLATION_HANDLER *coll; > >} CHARSET_INFO; > > > >extern CHARSET_INFO my_charset_bin; >extern CHARSET_INFO my_charset_latin1; >extern CHARSET_INFO my_charset_filename; > >extern CHARSET_INFO my_charset_big5_chinese_ci; >extern CHARSET_INFO my_charset_big5_bin; >extern CHARSET_INFO my_charset_cp932_japanese_ci; >extern CHARSET_INFO my_charset_cp932_bin; >extern CHARSET_INFO my_charset_cp1250_czech_ci; >extern CHARSET_INFO my_charset_eucjpms_japanese_ci; >extern CHARSET_INFO my_charset_eucjpms_bin; >extern CHARSET_INFO my_charset_euckr_korean_ci; >extern CHARSET_INFO my_charset_euckr_bin; >extern CHARSET_INFO my_charset_gb2312_chinese_ci; >extern CHARSET_INFO my_charset_gb2312_bin; >extern CHARSET_INFO my_charset_gbk_chinese_ci; >extern CHARSET_INFO my_charset_gbk_bin; >extern CHARSET_INFO my_charset_latin1_german2_ci; >extern CHARSET_INFO my_charset_latin1_bin; >extern CHARSET_INFO my_charset_latin2_czech_ci; >extern CHARSET_INFO my_charset_sjis_japanese_ci; >extern CHARSET_INFO my_charset_sjis_bin; >extern CHARSET_INFO my_charset_tis620_thai_ci; >extern CHARSET_INFO my_charset_tis620_bin; >extern CHARSET_INFO my_charset_ucs2_general_ci; >extern CHARSET_INFO my_charset_ucs2_bin; >extern CHARSET_INFO my_charset_ucs2_unicode_ci; >extern CHARSET_INFO my_charset_ucs2_general_mysql500_ci; >extern CHARSET_INFO my_charset_ujis_japanese_ci; >extern CHARSET_INFO my_charset_ujis_bin; >extern CHARSET_INFO my_charset_utf16_bin; >extern CHARSET_INFO my_charset_utf16_general_ci; >extern CHARSET_INFO my_charset_utf16_unicode_ci; >extern CHARSET_INFO my_charset_utf16le_bin; >extern CHARSET_INFO my_charset_utf16le_general_ci; >extern CHARSET_INFO my_charset_utf32_bin; >extern CHARSET_INFO my_charset_utf32_general_ci; >extern CHARSET_INFO my_charset_utf32_unicode_ci; > >extern CHARSET_INFO my_charset_utf8_general_ci; >extern CHARSET_INFO my_charset_utf8_tolower_ci; >extern CHARSET_INFO my_charset_utf8_unicode_ci; >extern CHARSET_INFO my_charset_utf8_bin; >extern CHARSET_INFO my_charset_utf8_general_mysql500_ci; >extern CHARSET_INFO my_charset_utf8mb4_bin; >extern CHARSET_INFO my_charset_utf8mb4_general_ci; >extern CHARSET_INFO my_charset_utf8mb4_unicode_ci; > > > > > >extern size_t my_strnxfrm_simple(const CHARSET_INFO *, > uchar *dst, size_t dstlen, uint nweights, > const uchar *src, size_t srclen, uint flags); >size_t my_strnxfrmlen_simple(const CHARSET_INFO *, size_t); >extern int my_strnncoll_simple(const CHARSET_INFO *, const uchar *, size_t, > const uchar *, size_t, my_bool); > >extern int my_strnncollsp_simple(const CHARSET_INFO *, const uchar *, size_t, > const uchar *, size_t, > my_bool diff_if_only_endspace_difference); > >extern void my_hash_sort_simple(const CHARSET_INFO *cs, > const uchar *key, size_t len, > ulong *nr1, ulong *nr2); > >extern size_t my_lengthsp_8bit(const CHARSET_INFO *cs, const char *ptr, > size_t length); > >extern uint my_instr_simple(const struct charset_info_st *, > const char *b, size_t b_length, > const char *s, size_t s_length, > my_match_t *match, uint nmatch); > > > >extern size_t my_caseup_str_8bit(const CHARSET_INFO *, char *); >extern size_t my_casedn_str_8bit(const CHARSET_INFO *, char *); >extern size_t my_caseup_8bit(const CHARSET_INFO *, char *src, size_t srclen, > char *dst, size_t dstlen); >extern size_t my_casedn_8bit(const CHARSET_INFO *, char *src, size_t srclen, > char *dst, size_t dstlen); > >extern int my_strcasecmp_8bit(const CHARSET_INFO * cs, const char *, > const char *); > >int my_mb_wc_8bit(const CHARSET_INFO *cs,ulong *wc, const uchar *s, > const uchar *e); >int my_wc_mb_8bit(const CHARSET_INFO *cs,ulong wc, uchar *s, uchar *e); > >int my_mb_ctype_8bit(const CHARSET_INFO *,int *, const uchar *,const uchar *); >int my_mb_ctype_mb(const CHARSET_INFO *,int *, const uchar *,const uchar *); > >size_t my_scan_8bit(const CHARSET_INFO *cs, const char *b, const char *e, > int sq); > >size_t my_snprintf_8bit(const struct charset_info_st *, char *to, size_t n, > const char *fmt, ...) > __attribute__((format(printf, 4, 5))); > >long my_strntol_8bit(const CHARSET_INFO *, const char *s, size_t l, > int base, char **e, int *err); >ulong my_strntoul_8bit(const CHARSET_INFO *, const char *s, size_t l, > int base, char **e, int *err); >longlong my_strntoll_8bit(const CHARSET_INFO *, const char *s, size_t l, > int base, char **e, int *err); >ulonglong my_strntoull_8bit(const CHARSET_INFO *, const char *s, size_t l, > int base, char **e, int *err); >double my_strntod_8bit(const CHARSET_INFO *, char *s, size_t l, char **e, > int *err); >size_t my_long10_to_str_8bit(const CHARSET_INFO *, char *to, size_t l, > int radix, long int val); >size_t my_longlong10_to_str_8bit(const CHARSET_INFO *, char *to, size_t l, > int radix, longlong val); > >longlong my_strtoll10_8bit(const CHARSET_INFO *cs, > const char *nptr, char **endptr, int *error); >longlong my_strtoll10_ucs2(const CHARSET_INFO *cs, > const char *nptr, char **endptr, int *error); > >ulonglong my_strntoull10rnd_8bit(const CHARSET_INFO *cs, > const char *str, size_t length, int > unsigned_fl, char **endptr, int *error); >ulonglong my_strntoull10rnd_ucs2(const CHARSET_INFO *cs, > const char *str, size_t length, > int unsigned_fl, char **endptr, int *error); > >void my_fill_8bit(const CHARSET_INFO *cs, char* to, size_t l, int fill); > > >my_bool my_like_range_simple(const CHARSET_INFO *cs, > const char *ptr, size_t ptr_length, > pbool escape, pbool w_one, pbool w_many, > size_t res_length, > char *min_str, char *max_str, > size_t *min_length, size_t *max_length); > > >my_bool my_like_range_mb(const CHARSET_INFO *cs, > const char *ptr, size_t ptr_length, > pbool escape, pbool w_one, pbool w_many, > size_t res_length, > char *min_str, char *max_str, > size_t *min_length, size_t *max_length); > > >my_bool my_like_range_generic(const CHARSET_INFO *cs, > const char *ptr, size_t ptr_length, > pbool escape, pbool w_one, pbool w_many, > size_t res_length, > char *min_str, char *max_str, > size_t *min_length, size_t *max_length); > >int my_wildcmp_8bit(const CHARSET_INFO *, > const char *str,const char *str_end, > const char *wildstr,const char *wildend, > int escape, int w_one, int w_many); > >int my_wildcmp_bin(const CHARSET_INFO *, > const char *str,const char *str_end, > const char *wildstr,const char *wildend, > int escape, int w_one, int w_many); > >size_t my_numchars_8bit(const CHARSET_INFO *, const char *b, const char *e); >size_t my_numcells_8bit(const CHARSET_INFO *, const char *b, const char *e); >size_t my_charpos_8bit(const CHARSET_INFO *, const char *b, const char *e, > size_t pos); >size_t my_well_formed_len_8bit(const CHARSET_INFO *, const char *b, > const char *e, size_t pos, int *error); >uint my_mbcharlen_8bit(const CHARSET_INFO *, uint c); > > > >extern size_t my_caseup_str_mb(const CHARSET_INFO *, char *); >extern size_t my_casedn_str_mb(const CHARSET_INFO *, char *); >extern size_t my_caseup_mb(const CHARSET_INFO *, char *src, size_t srclen, > char *dst, size_t dstlen); >extern size_t my_casedn_mb(const CHARSET_INFO *, char *src, size_t srclen, > char *dst, size_t dstlen); >extern size_t my_caseup_mb_varlen(const CHARSET_INFO *, char *src, > size_t srclen, char *dst, size_t dstlen); >extern size_t my_casedn_mb_varlen(const CHARSET_INFO *, char *src, > size_t srclen, char *dst, size_t dstlen); >extern size_t my_caseup_ujis(const CHARSET_INFO *, char *src, size_t srclen, > char *dst, size_t dstlen); >extern size_t my_casedn_ujis(const CHARSET_INFO *, char *src, size_t srclen, > char *dst, size_t dstlen); >extern int my_strcasecmp_mb(const CHARSET_INFO * cs,const char *, > const char *); > >int my_wildcmp_mb(const CHARSET_INFO *, > const char *str,const char *str_end, > const char *wildstr,const char *wildend, > int escape, int w_one, int w_many); >size_t my_numchars_mb(const CHARSET_INFO *, const char *b, const char *e); >size_t my_numcells_mb(const CHARSET_INFO *, const char *b, const char *e); >size_t my_charpos_mb(const CHARSET_INFO *, const char *b, const char *e, > size_t pos); >size_t my_well_formed_len_mb(const CHARSET_INFO *, const char *b, > const char *e, size_t pos, int *error); >uint my_instr_mb(const struct charset_info_st *, > const char *b, size_t b_length, > const char *s, size_t s_length, > my_match_t *match, uint nmatch); > >int my_strnncoll_mb_bin(const CHARSET_INFO * cs, > const uchar *s, size_t slen, > const uchar *t, size_t tlen, > my_bool t_is_prefix); > >int my_strnncollsp_mb_bin(const CHARSET_INFO *cs, > const uchar *a, size_t a_length, > const uchar *b, size_t b_length, > my_bool diff_if_only_endspace_difference); > >int my_wildcmp_mb_bin(const CHARSET_INFO *cs, > const char *str,const char *str_end, > const char *wildstr,const char *wildend, > int escape, int w_one, int w_many); > >int my_strcasecmp_mb_bin(const CHARSET_INFO * cs __attribute__((unused)), > const char *s, const char *t); > >void my_hash_sort_mb_bin(const CHARSET_INFO *cs __attribute__((unused)), > const uchar *key, size_t len,ulong *nr1, ulong *nr2); > >size_t my_strnxfrm_mb(const CHARSET_INFO *, > uchar *dst, size_t dstlen, uint nweights, > const uchar *src, size_t srclen, uint flags); > >size_t my_strnxfrm_unicode(const CHARSET_INFO *, > uchar *dst, size_t dstlen, uint nweights, > const uchar *src, size_t srclen, uint flags); > >size_t my_strnxfrm_unicode_full_bin(const CHARSET_INFO *, > uchar *dst, size_t dstlen, uint nweights, > const uchar *src, size_t srclen, uint flags); >size_t my_strnxfrmlen_unicode_full_bin(const CHARSET_INFO *, size_t); > >int my_wildcmp_unicode(const CHARSET_INFO *cs, > const char *str, const char *str_end, > const char *wildstr, const char *wildend, > int escape, int w_one, int w_many, > MY_UNICASE_INFO *weights); > >extern my_bool my_parse_charset_xml(MY_CHARSET_LOADER *loader, > const char *buf, size_t buflen); >extern char *my_strchr(const CHARSET_INFO *cs, const char *str, > const char *end, pchar c); >extern size_t my_strcspn(const CHARSET_INFO *cs, const char *str, > const char *end, const char *accept); > >my_bool my_propagate_simple(const CHARSET_INFO *cs, const uchar *str, > size_t len); >my_bool my_propagate_complex(const CHARSET_INFO *cs, const uchar *str, > size_t len); > > >uint my_string_repertoire(const CHARSET_INFO *cs, const char *str, ulong len); >my_bool my_charset_is_ascii_based(const CHARSET_INFO *cs); >my_bool my_charset_is_8bit_pure_ascii(const CHARSET_INFO *cs); >uint my_charset_repertoire(const CHARSET_INFO *cs); > > >uint my_strxfrm_flag_normalize(uint flags, uint nlevels); >void my_strxfrm_desc_and_reverse(uchar *str, uchar *strend, > uint flags, uint level); >size_t my_strxfrm_pad_desc_and_reverse(const CHARSET_INFO *cs, > uchar *str, uchar *frmend, uchar *strend, > uint nweights, uint flags, uint level); > >my_bool my_charset_is_ascii_compatible(const CHARSET_INFO *cs); > >const MY_CONTRACTIONS *my_charset_get_contractions(const CHARSET_INFO *cs, > int level); > >extern size_t my_vsnprintf_ex(const CHARSET_INFO *cs, char *to, size_t n, > const char* fmt, va_list ap); > >uint32 my_convert(char *to, uint32 to_length, const CHARSET_INFO *to_cs, > const char *from, uint32 from_length, > const CHARSET_INFO *from_cs, uint *errors); ># 793 "../../../include/m_ctype.h" >} ># 47 "../../../include/my_sys.h" 2 > ># 1 "../../../include/typelib.h" 1 ># 20 "../../../include/typelib.h" ># 1 "../../../include/my_alloc.h" 1 ># 27 "../../../include/my_alloc.h" >extern "C" { > > >typedef struct st_used_mem >{ > struct st_used_mem *next; > unsigned int left; > unsigned int size; >} USED_MEM; > > >typedef struct st_mem_root >{ > USED_MEM *free; > USED_MEM *used; > USED_MEM *pre_alloc; > > size_t min_malloc; > size_t block_size; > unsigned int block_num; > > > > > unsigned int first_block_usage; > > void (*error_handler)(void); >} MEM_ROOT; > > >} ># 21 "../../../include/typelib.h" 2 > >typedef struct st_typelib { > unsigned int count; > const char *name; > const char **type_names; > unsigned int *type_lengths; >} TYPELIB; > >extern my_ulonglong find_typeset(char *x, TYPELIB *typelib,int *error_position); >extern int find_type_or_exit(const char *x, TYPELIB *typelib, > const char *option); ># 42 "../../../include/typelib.h" >extern int find_type(const char *x, const TYPELIB *typelib, unsigned int flags); >extern void make_type(char *to,unsigned int nr,TYPELIB *typelib); >extern const char *get_type(TYPELIB *typelib,unsigned int nr); >extern TYPELIB *copy_typelib(MEM_ROOT *root, TYPELIB *from); > >extern TYPELIB sql_protocol_typelib; > >my_ulonglong find_set_from_flags(const TYPELIB *lib, unsigned int default_name, > my_ulonglong cur_set, my_ulonglong default_set, > const char *str, unsigned int length, > char **err_pos, unsigned int *err_len); ># 49 "../../../include/my_sys.h" 2 ># 154 "../../../include/my_sys.h" >extern void *my_malloc(size_t Size,myf MyFlags); >extern void *my_multi_malloc(myf MyFlags, ...); >extern void *my_realloc(void *oldpoint, size_t Size, myf MyFlags); >extern void my_free(void *ptr); >extern void *my_memdup(const void *from,size_t length,myf MyFlags); >extern char *my_strdup(const char *from,myf MyFlags); >extern char *my_strndup(const char *from, size_t length, > myf MyFlags); ># 210 "../../../include/my_sys.h" >extern uint my_get_large_page_size(void); >extern uchar * my_large_malloc(size_t size, myf my_flags); >extern void my_large_free(uchar *ptr); ># 237 "../../../include/my_sys.h" ># 1 "/usr/include/errno.h" 1 3 4 ># 238 "../../../include/my_sys.h" 2 > >extern char *home_dir; >extern const char *my_progname; >extern char curr_dir[]; >extern void (*error_handler_hook)(uint my_err, const char *str,myf MyFlags); >extern void (*fatal_error_handler_hook)(uint my_err, const char *str, > myf MyFlags); >extern void(*sql_print_warning_hook)(const char *format,...); >extern uint my_file_limit; >extern ulong my_thread_stack_size; > >extern void (*proc_info_hook)(void *, const PSI_stage_info *, PSI_stage_info *, > const char *, const char *, const unsigned int); > > >extern my_bool my_use_large_pages; >extern uint my_large_page_size; > > > > >extern CHARSET_INFO *default_charset_info; >extern CHARSET_INFO *all_charsets[2048]; >extern CHARSET_INFO compiled_charsets[]; > > >extern ulong my_file_opened,my_stream_opened, my_tmp_file_created; >extern ulong my_file_total_opened; >extern my_bool my_init_done; > > >extern void (*my_sigtstp_cleanup)(void), > > (*my_sigtstp_restart)(void), > (*my_abort_hook)(int); > >extern int my_umask; >extern int my_umask_dir, > my_recived_signals, > my_safe_to_handle_signal, > my_dont_interrupt; >extern my_bool my_use_symdir; > >extern ulong my_default_record_cache_size; >extern my_bool my_disable_locking, my_disable_async_io, > my_disable_flush_key_blocks, my_disable_symlinks; >extern char wild_many,wild_one,wild_prefix; >extern const char *charsets_dir; > >extern my_bool timed_mutexes; > >enum cache_type >{ > TYPE_NOT_SET= 0, READ_CACHE, WRITE_CACHE, > SEQ_READ_APPEND , > READ_FIFO, READ_NET,WRITE_NET}; > >enum flush_type >{ > FLUSH_KEEP, > FLUSH_RELEASE, > FLUSH_IGNORE_CHANGED, > > > > > FLUSH_FORCE_WRITE >}; > >typedef struct st_record_cache >{ > File file; > int rc_seek,error,inited; > uint rc_length,read_length,reclength; > my_off_t rc_record_pos,end_of_file; > uchar *rc_buff,*rc_buff2,*rc_pos,*rc_end,*rc_request_pos; > > > > > enum cache_type type; >} RECORD_CACHE; > >enum file_type >{ > UNOPEN = 0, FILE_BY_OPEN, FILE_BY_CREATE, STREAM_BY_FOPEN, STREAM_BY_FDOPEN, > FILE_BY_MKSTEMP, FILE_BY_DUP >}; > >struct st_my_file_info >{ > char *name; > > > > > enum file_type type; > > > >}; > >extern struct st_my_file_info *my_file_info; > >typedef struct st_dynamic_array >{ > uchar *buffer; > uint elements,max_element; > uint alloc_increment; > uint size_of_element; >} DYNAMIC_ARRAY; > >typedef struct st_my_tmpdir >{ > DYNAMIC_ARRAY full_list; > char **list; > uint cur, max; > mysql_mutex_t mutex; >} MY_TMPDIR; > >typedef struct st_dynamic_string >{ > char *str; > size_t length,max_length,alloc_increment; >} DYNAMIC_STRING; > >struct st_io_cache; >typedef int (*IO_CACHE_CALLBACK)(struct st_io_cache*); > >typedef struct st_io_cache_share >{ > mysql_mutex_t mutex; > mysql_cond_t cond; > mysql_cond_t cond_writer; > > my_off_t pos_in_file; > > struct st_io_cache *source_cache; > uchar *buffer; > uchar *read_end; > int running_threads; > int total_threads; > int error; > > > > >} IO_CACHE_SHARE; > >typedef struct st_io_cache >{ > > my_off_t pos_in_file; > > > > > > my_off_t end_of_file; > > uchar *read_pos; > > uchar *read_end; > uchar *buffer; > > uchar *request_pos; > > > uchar *write_buffer; > > > > > > > uchar *append_read_pos; > > uchar *write_pos; > > uchar *write_end; > > > > > > > > uchar **current_pos, **current_end; > > > > > > mysql_mutex_t append_buffer_lock; > > > > > > > > IO_CACHE_SHARE *share; ># 449 "../../../include/my_sys.h" > int (*read_function)(struct st_io_cache *,uchar *,size_t); > > > > > int (*write_function)(struct st_io_cache *,const uchar *,size_t); > > > > > > enum cache_type type; > > > > > > > > IO_CACHE_CALLBACK pre_read; > IO_CACHE_CALLBACK post_read; > IO_CACHE_CALLBACK pre_close; > > > > > > ulong disk_writes; > void* arg; > char *file_name; > char *dir,*prefix; > File file; > > > > > > > > int seek_not_done,error; > > size_t buffer_length; > > size_t read_length; > myf myflags; > > > > > > > my_bool alloced_buffer; ># 510 "../../../include/my_sys.h" >} IO_CACHE; > >typedef int (*qsort2_cmp)(const void *, const void *, const void *); > >typedef void (*my_error_reporter)(enum loglevel level, const char *format, ...) > __attribute__((format(printf, 2, 3))); > >extern my_error_reporter my_charset_error_reporter; ># 561 "../../../include/my_sys.h" >int my_b_copy_to_file(IO_CACHE *cache, FILE *file); >my_off_t my_b_append_tell(IO_CACHE* info); >my_off_t my_b_safe_tell(IO_CACHE* info); > > > > >typedef uint32 ha_checksum; > ># 1 "../../../include/my_alloc.h" 1 ># 571 "../../../include/my_sys.h" 2 > > > > >extern int my_copy(const char *from,const char *to,myf MyFlags); >extern int my_delete(const char *name,myf MyFlags); >extern int my_getwd(char * buf,size_t size,myf MyFlags); >extern int my_setwd(const char *dir,myf MyFlags); >extern int my_lock(File fd,int op,my_off_t start, my_off_t length,myf MyFlags); >extern void *my_once_alloc(size_t Size,myf MyFlags); >extern void my_once_free(void); >extern char *my_once_strdup(const char *src,myf myflags); >extern void *my_once_memdup(const void *src, size_t len, myf myflags); >extern File my_open(const char *FileName,int Flags,myf MyFlags); >extern File my_register_filename(File fd, const char *FileName, > enum file_type type_of_file, > uint error_message_number, myf MyFlags); >extern File my_create(const char *FileName,int CreateFlags, > int AccessFlags, myf MyFlags); >extern int my_close(File Filedes,myf MyFlags); >extern int my_mkdir(const char *dir, int Flags, myf MyFlags); >extern int my_readlink(char *to, const char *filename, myf MyFlags); >extern int my_is_symlink(const char *filename); >extern int my_realpath(char *to, const char *filename, myf MyFlags); >extern File my_create_with_symlink(const char *linkname, const char *filename, > int createflags, int access_flags, > myf MyFlags); >extern int my_delete_with_symlink(const char *name, myf MyFlags); >extern int my_rename_with_symlink(const char *from,const char *to,myf MyFlags); >extern int my_symlink(const char *content, const char *linkname, myf MyFlags); >extern size_t my_read(File Filedes,uchar *Buffer,size_t Count,myf MyFlags); >extern size_t my_pread(File Filedes,uchar *Buffer,size_t Count,my_off_t offset, > myf MyFlags); >extern int my_rename(const char *from,const char *to,myf MyFlags); >extern my_off_t my_seek(File fd,my_off_t pos,int whence,myf MyFlags); >extern my_off_t my_tell(File fd,myf MyFlags); >extern size_t my_write(File Filedes,const uchar *Buffer,size_t Count, > myf MyFlags); >extern size_t my_pwrite(File Filedes,const uchar *Buffer,size_t Count, > my_off_t offset,myf MyFlags); >extern size_t my_fread(FILE *stream,uchar *Buffer,size_t Count,myf MyFlags); >extern size_t my_fwrite(FILE *stream,const uchar *Buffer,size_t Count, > myf MyFlags); >extern my_off_t my_fseek(FILE *stream,my_off_t pos,int whence,myf MyFlags); >extern my_off_t my_ftell(FILE *stream,myf MyFlags); > > >extern void *my_memmem(const void *haystack, size_t haystacklen, > const void *needle, size_t needlelen); ># 628 "../../../include/my_sys.h" >extern int check_if_legal_filename(const char *path); >extern int check_if_legal_tablename(const char *path); ># 651 "../../../include/my_sys.h" >extern void init_glob_errs(void); >extern const char** get_global_errmsgs(); >extern void wait_for_free_space(const char *filename, int errors); >extern FILE *my_fopen(const char *FileName,int Flags,myf MyFlags); >extern FILE *my_fdopen(File Filedes,const char *name, int Flags,myf MyFlags); >extern FILE *my_freopen(const char *path, const char *mode, FILE *stream); >extern int my_fclose(FILE *fd,myf MyFlags); >extern File my_fileno(FILE *fd); >extern int my_chsize(File fd,my_off_t newlength, int filler, myf MyFlags); >extern void thr_set_sync_wait_callback(void (*before_sync)(void), > void (*after_sync)(void)); >extern int my_sync(File fd, myf my_flags); >extern int my_sync_dir(const char *dir_name, myf my_flags); >extern int my_sync_dir_by_file(const char *file_name, myf my_flags); >extern char *my_strerror(char *buf, size_t len, int errnum); >extern const char *my_get_err_msg(int nr); >extern void my_error(int nr,myf MyFlags, ...); >extern void my_printf_error(uint my_err, const char *format, > myf MyFlags, ...) > __attribute__((format(printf, 2, 4))); >extern void my_printv_error(uint error, const char *format, myf MyFlags, > va_list ap); >extern int my_error_register(const char** (*get_errmsgs) (), > int first, int last); >extern void my_printf_warning (const char * format, ...); >extern const char **my_error_unregister(int first, int last); >extern void my_message(uint my_err, const char *str,myf MyFlags); >extern void my_message_stderr(uint my_err, const char *str, myf MyFlags); >extern my_bool my_init(void); >extern void my_end(int infoflag); >extern int my_redel(const char *from, const char *to, int MyFlags); >extern int my_copystat(const char *from, const char *to, int MyFlags); >extern char * my_filename(File fd); > > > > > > > >extern my_bool init_tmpdir(MY_TMPDIR *tmpdir, const char *pathlist); >extern char *my_tmpdir(MY_TMPDIR *tmpdir); >extern void free_tmpdir(MY_TMPDIR *tmpdir); > >extern void my_remember_signal(int signal_number,void (*func)(int)); >extern size_t dirname_part(char * to,const char *name, size_t *to_res_length); >extern size_t dirname_length(const char *name); > >extern int test_if_hard_path(const char *dir_name); >extern my_bool has_path(const char *name); >extern char *convert_dirname(char *to, const char *from, const char *from_end); >extern void to_unix_path(char * name); >extern char * fn_ext(const char *name); >extern char * fn_same(char * toname,const char *name,int flag); >extern char * fn_format(char * to,const char *name,const char *dir, > const char *form, uint flag); >extern size_t strlength(const char *str); >extern void pack_dirname(char * to,const char *from); >extern size_t normalize_dirname(char * to, const char *from); >extern size_t unpack_dirname(char * to,const char *from, my_bool *is_symdir); >extern size_t cleanup_dirname(char * to,const char *from); >extern size_t system_filename(char * to,const char *from); >extern size_t unpack_filename(char * to,const char *from); >extern char * intern_filename(char * to,const char *from); >extern char * directory_file_name(char * dst, const char *src); >extern int pack_filename(char * to, const char *name, size_t max_length); >extern char * my_path(char * to,const char *progname, > const char *own_pathname_part); >extern char * my_load_path(char * to, const char *path, > const char *own_path_prefix); >extern int wild_compare(const char *str,const char *wildstr, > pbool str_is_pattern); >extern my_bool array_append_string_unique(const char *str, > const char **array, size_t size); >extern void get_date(char * to,int timeflag,time_t use_time); >extern void soundex(CHARSET_INFO *, char * out_pntr, char * in_pntr, > pbool remove_garbage); >extern int init_record_cache(RECORD_CACHE *info,size_t cachesize,File file, > size_t reclength,enum cache_type type, > pbool use_async_io); >extern int read_cache_record(RECORD_CACHE *info,uchar *to); >extern int end_record_cache(RECORD_CACHE *info); >extern int write_cache_record(RECORD_CACHE *info,my_off_t filepos, > const uchar *record,size_t length); >extern int flush_write_cache(RECORD_CACHE *info); >extern void handle_recived_signals(void); > >extern void my_set_alarm_variable(int signo); >extern my_bool radixsort_is_appliccable(uint n_items, size_t size_of_element); >extern void my_string_ptr_sort(uchar *base,uint items,size_t size); >extern void radixsort_for_str_ptr(uchar* base[], uint number_of_elements, > size_t size_of_element,uchar *buffer[]); >extern void my_qsort(void *base_ptr, size_t total_elems, size_t size, > qsort_cmp cmp); >extern void my_qsort2(void *base_ptr, size_t total_elems, size_t size, > qsort2_cmp cmp, const void *cmp_argument); >extern qsort2_cmp get_ptr_compare(size_t); >void my_store_ptr(uchar *buff, size_t pack_length, my_off_t pos); >my_off_t my_get_ptr(uchar *ptr, size_t pack_length); >extern int init_io_cache(IO_CACHE *info,File file,size_t cachesize, > enum cache_type type,my_off_t seek_offset, > pbool use_async_io, myf cache_myflags); >extern my_bool reinit_io_cache(IO_CACHE *info,enum cache_type type, > my_off_t seek_offset,pbool use_async_io, > pbool clear_cache); >extern void setup_io_cache(IO_CACHE* info); >extern int _my_b_read(IO_CACHE *info,uchar *Buffer,size_t Count); >extern int _my_b_read_r(IO_CACHE *info,uchar *Buffer,size_t Count); >extern void init_io_cache_share(IO_CACHE *read_cache, IO_CACHE_SHARE *cshare, > IO_CACHE *write_cache, uint num_threads); >extern void remove_io_thread(IO_CACHE *info); >extern int _my_b_seq_read(IO_CACHE *info,uchar *Buffer,size_t Count); >extern int _my_b_net_read(IO_CACHE *info,uchar *Buffer,size_t Count); >extern int _my_b_get(IO_CACHE *info); >extern int _my_b_async_read(IO_CACHE *info,uchar *Buffer,size_t Count); >extern int _my_b_write(IO_CACHE *info,const uchar *Buffer,size_t Count); >extern int my_b_append(IO_CACHE *info,const uchar *Buffer,size_t Count); >extern int my_b_safe_write(IO_CACHE *info,const uchar *Buffer,size_t Count); > >extern int my_block_write(IO_CACHE *info, const uchar *Buffer, > size_t Count, my_off_t pos); >extern int my_b_flush_io_cache(IO_CACHE *info, int need_append_buffer_lock); > > > >extern int end_io_cache(IO_CACHE *info); >extern size_t my_b_fill(IO_CACHE *info); >extern void my_b_seek(IO_CACHE *info,my_off_t pos); >extern size_t my_b_gets(IO_CACHE *info, char *to, size_t max_length); >extern my_off_t my_b_filelength(IO_CACHE *info); >extern size_t my_b_printf(IO_CACHE *info, const char* fmt, ...) > __attribute__((format(printf, 2, 3))); >extern size_t my_b_vprintf(IO_CACHE *info, const char* fmt, va_list ap); >extern my_bool open_cached_file(IO_CACHE *cache,const char *dir, > const char *prefix, size_t cache_size, > myf cache_myflags); >extern my_bool real_open_cached_file(IO_CACHE *cache); >extern void close_cached_file(IO_CACHE *cache); >File create_temp_file(char *to, const char *dir, const char *pfx, > int mode, myf MyFlags); > > > > >extern my_bool init_dynamic_array2(DYNAMIC_ARRAY *array, uint element_size, > void *init_buffer, uint init_alloc, > uint alloc_increment); > >extern my_bool init_dynamic_array(DYNAMIC_ARRAY *array, uint element_size, > uint init_alloc, uint alloc_increment); >extern my_bool insert_dynamic(DYNAMIC_ARRAY *array, const void *element); >extern void *alloc_dynamic(DYNAMIC_ARRAY *array); >extern void *pop_dynamic(DYNAMIC_ARRAY*); >extern my_bool set_dynamic(DYNAMIC_ARRAY *array, const void *element, > uint array_index); >extern my_bool allocate_dynamic(DYNAMIC_ARRAY *array, uint max_elements); >extern void get_dynamic(DYNAMIC_ARRAY *array, void *element, > uint array_index); >extern void delete_dynamic(DYNAMIC_ARRAY *array); >extern void delete_dynamic_element(DYNAMIC_ARRAY *array, uint array_index); >extern void freeze_size(DYNAMIC_ARRAY *array); > > > > > > >extern my_bool init_dynamic_string(DYNAMIC_STRING *str, const char *init_str, > size_t init_alloc,size_t alloc_increment); >extern my_bool dynstr_append(DYNAMIC_STRING *str, const char *append); >my_bool dynstr_append_mem(DYNAMIC_STRING *str, const char *append, > size_t length); >extern my_bool dynstr_append_os_quoted(DYNAMIC_STRING *str, const char *append, > ...); >extern my_bool dynstr_set(DYNAMIC_STRING *str, const char *init_str); >extern my_bool dynstr_realloc(DYNAMIC_STRING *str, size_t additional_size); >extern my_bool dynstr_trunc(DYNAMIC_STRING *str, size_t n); >extern void dynstr_free(DYNAMIC_STRING *str); ># 839 "../../../include/my_sys.h" >extern void init_alloc_root(MEM_ROOT *mem_root, size_t block_size, > size_t pre_alloc_size); >extern void *alloc_root(MEM_ROOT *mem_root, size_t Size); >extern void *multi_alloc_root(MEM_ROOT *mem_root, ...); >extern void free_root(MEM_ROOT *root, myf MyFLAGS); >extern void set_prealloc_root(MEM_ROOT *root, char *ptr); >extern void reset_root_defaults(MEM_ROOT *mem_root, size_t block_size, > size_t prealloc_size); >extern char *strdup_root(MEM_ROOT *root,const char *str); >static inline char *safe_strdup_root(MEM_ROOT *root, const char *str) >{ > return str ? strdup_root(root, str) : 0; >} >extern char *strmake_root(MEM_ROOT *root,const char *str,size_t len); >extern void *memdup_root(MEM_ROOT *root,const void *str, size_t len); >extern my_bool my_compress(uchar *, size_t *, size_t *); >extern my_bool my_uncompress(uchar *, size_t , size_t *); >extern uchar *my_compress_alloc(const uchar *packet, size_t *len, > size_t *complen); >extern int packfrm(uchar *, size_t, uchar **, size_t *); >extern int unpackfrm(uchar **, size_t *, const uchar *); > >extern ha_checksum my_checksum(ha_checksum crc, const uchar *mem, > size_t count); >extern void my_sleep(ulong m_seconds); >extern ulong crc32(ulong crc, const uchar *buf, uint len); >extern uint my_set_max_open_files(uint files); >void my_free_open_file_info(void); > >extern time_t my_time(myf flags); >extern ulonglong my_getsystime(void); >extern ulonglong my_micro_time(); >extern ulonglong my_micro_time_and_time(time_t *time_arg); >time_t my_time_possible_from_micro(ulonglong microtime); >extern my_bool my_gethwaddr(uchar *to); >extern int my_getncpus(); > > ># 1 "/usr/include/sys/mman.h" 1 3 4 ># 25 "/usr/include/sys/mman.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 26 "/usr/include/sys/mman.h" 2 3 4 ># 41 "/usr/include/sys/mman.h" 3 4 ># 1 "/usr/include/bits/mman.h" 1 3 4 ># 44 "/usr/include/bits/mman.h" 3 4 ># 1 "/usr/include/bits/mman-linux.h" 1 3 4 ># 44 "/usr/include/bits/mman.h" 2 3 4 ># 42 "/usr/include/sys/mman.h" 2 3 4 > > > > >extern "C" { ># 61 "/usr/include/sys/mman.h" 3 4 >extern void * mmap (void *__addr, size_t __len, int __prot, int __flags, int __fd, __off64_t __offset) throw () __asm__ ("" "mmap64") > > > ; > > > > > >extern void *mmap64 (void *__addr, size_t __len, int __prot, > int __flags, int __fd, __off64_t __offset) throw (); > > > > >extern int munmap (void *__addr, size_t __len) throw (); > > > > >extern int mprotect (void *__addr, size_t __len, int __prot) throw (); > > > > > > > >extern int msync (void *__addr, size_t __len, int __flags); > > > > >extern int madvise (void *__addr, size_t __len, int __advice) throw (); > > > >extern int posix_madvise (void *__addr, size_t __len, int __advice) throw (); > > > > >extern int mlock (const void *__addr, size_t __len) throw (); > > >extern int munlock (const void *__addr, size_t __len) throw (); > > > > >extern int mlockall (int __flags) throw (); > > > >extern int munlockall (void) throw (); > > > > > > > >extern int mincore (void *__start, size_t __len, unsigned char *__vec) > throw (); ># 133 "/usr/include/sys/mman.h" 3 4 >extern void *mremap (void *__addr, size_t __old_len, size_t __new_len, > int __flags, ...) throw (); > > > >extern int remap_file_pages (void *__start, size_t __size, int __prot, > size_t __pgoff, int __flags) throw (); > > > > >extern int shm_open (const char *__name, int __oflag, mode_t __mode); > > >extern int shm_unlink (const char *__name); > >} ># 878 "../../../include/my_sys.h" 2 ># 916 "../../../include/my_sys.h" >int my_msync(int, void *, size_t, int); > > >extern void my_charset_loader_init_mysys(MY_CHARSET_LOADER *loader); >extern uint get_charset_number(const char *cs_name, uint cs_flags); >extern uint get_collation_number(const char *name); >extern const char *get_charset_name(uint cs_number); > >extern CHARSET_INFO *get_charset(uint cs_number, myf flags); >extern CHARSET_INFO *get_charset_by_name(const char *cs_name, myf flags); >extern CHARSET_INFO *my_collation_get_by_name(MY_CHARSET_LOADER *loader, > const char *name, myf flags); >extern CHARSET_INFO *get_charset_by_csname(const char *cs_name, > uint cs_flags, myf my_flags); >extern CHARSET_INFO *my_charset_get_by_name(MY_CHARSET_LOADER *loader, > const char *name, > uint cs_flags, myf my_flags); >extern my_bool resolve_charset(const char *cs_name, > const CHARSET_INFO *default_cs, > const CHARSET_INFO **cs); >extern my_bool resolve_collation(const char *cl_name, > const CHARSET_INFO *default_cl, > const CHARSET_INFO **cl); >extern void free_charsets(void); >extern char *get_charsets_dir(char *buf); >extern my_bool my_charset_same(const CHARSET_INFO *cs1, > const CHARSET_INFO *cs2); >extern my_bool init_compiled_charsets(myf flags); >extern void add_compiled_collation(CHARSET_INFO *cs); >extern size_t escape_string_for_mysql(const CHARSET_INFO *charset_info, > char *to, size_t to_length, > const char *from, size_t length); > > > > > >extern size_t escape_quotes_for_mysql(CHARSET_INFO *charset_info, > char *to, size_t to_length, > const char *from, size_t length); > >extern void thd_increment_bytes_sent(ulong length); >extern void thd_increment_bytes_received(ulong length); ># 983 "../../../include/my_sys.h" >extern struct PSI_bootstrap *PSI_hook; >extern void set_psi_server(PSI *psi); >void my_init_mysys_psi_keys(void); > > >struct st_mysql_file; >extern struct st_mysql_file *mysql_stdin; > >enum durability_properties >{ > > > HA_REGULAR_DURABILITY= 0, > > > > > HA_IGNORE_DURABILITY= 1 >}; > >} ># 23 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../storage/perfschema/pfs.h" 1 ># 34 "../../../storage/perfschema/pfs.h" >extern struct PSI_bootstrap PFS_bootstrap; > >extern pthread_key_t THR_PFS; > >extern bool THR_PFS_initialized; ># 24 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../storage/perfschema/pfs_stat.h" 1 ># 19 "../../../storage/perfschema/pfs_stat.h" ># 1 "../../../sql/sql_const.h" 1 ># 20 "../../../storage/perfschema/pfs_stat.h" 2 > ># 1 "/usr/include/string.h" 1 3 4 ># 27 "/usr/include/string.h" 3 4 >extern "C" { > > > > ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stddef.h" 1 3 4 ># 33 "/usr/include/string.h" 2 3 4 ># 44 "/usr/include/string.h" 3 4 > > >extern void *memcpy (void *__restrict __dest, const void *__restrict __src, > size_t __n) throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern void *memmove (void *__dest, const void *__src, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > > > >extern void *memccpy (void *__restrict __dest, const void *__restrict __src, > int __c, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > > >extern void *memset (void *__s, int __c, size_t __n) throw () __attribute__ ((__nonnull__ (1))); > > >extern int memcmp (const void *__s1, const void *__s2, size_t __n) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > > >extern "C++" >{ >extern void *memchr (void *__s, int __c, size_t __n) > throw () __asm ("memchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern const void *memchr (const void *__s, int __c, size_t __n) > throw () __asm ("memchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) void * >memchr (void *__s, int __c, size_t __n) throw () >{ > return __builtin_memchr (__s, __c, __n); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const void * >memchr (const void *__s, int __c, size_t __n) throw () >{ > return __builtin_memchr (__s, __c, __n); >} > >} > > > > > > > > > > >extern "C++" void *rawmemchr (void *__s, int __c) > throw () __asm ("rawmemchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern "C++" const void *rawmemchr (const void *__s, int __c) > throw () __asm ("rawmemchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > > > > > > >extern "C++" void *memrchr (void *__s, int __c, size_t __n) > throw () __asm ("memrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern "C++" const void *memrchr (const void *__s, int __c, size_t __n) > throw () __asm ("memrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > > > > > > > > >extern char *strcpy (char *__restrict __dest, const char *__restrict __src) > throw () __attribute__ ((__nonnull__ (1, 2))); > >extern char *strncpy (char *__restrict __dest, > const char *__restrict __src, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern char *strcat (char *__restrict __dest, const char *__restrict __src) > throw () __attribute__ ((__nonnull__ (1, 2))); > >extern char *strncat (char *__restrict __dest, const char *__restrict __src, > size_t __n) throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern int strcmp (const char *__s1, const char *__s2) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > >extern int strncmp (const char *__s1, const char *__s2, size_t __n) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern int strcoll (const char *__s1, const char *__s2) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > >extern size_t strxfrm (char *__restrict __dest, > const char *__restrict __src, size_t __n) > throw () __attribute__ ((__nonnull__ (2))); > ># 166 "/usr/include/string.h" 3 4 >extern int strcoll_l (const char *__s1, const char *__s2, __locale_t __l) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3))); > >extern size_t strxfrm_l (char *__dest, const char *__src, size_t __n, > __locale_t __l) throw () __attribute__ ((__nonnull__ (2, 4))); > > > > >extern char *strdup (const char *__s) > throw () __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1))); > > > > > > >extern char *strndup (const char *__string, size_t __n) > throw () __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1))); ># 210 "/usr/include/string.h" 3 4 > > > >extern "C++" >{ >extern char *strchr (char *__s, int __c) > throw () __asm ("strchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern const char *strchr (const char *__s, int __c) > throw () __asm ("strchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) char * >strchr (char *__s, int __c) throw () >{ > return __builtin_strchr (__s, __c); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const char * >strchr (const char *__s, int __c) throw () >{ > return __builtin_strchr (__s, __c); >} > >} > > > > > > >extern "C++" >{ >extern char *strrchr (char *__s, int __c) > throw () __asm ("strrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern const char *strrchr (const char *__s, int __c) > throw () __asm ("strrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) char * >strrchr (char *__s, int __c) throw () >{ > return __builtin_strrchr (__s, __c); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const char * >strrchr (const char *__s, int __c) throw () >{ > return __builtin_strrchr (__s, __c); >} > >} > > > > > > > > > > >extern "C++" char *strchrnul (char *__s, int __c) > throw () __asm ("strchrnul") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern "C++" const char *strchrnul (const char *__s, int __c) > throw () __asm ("strchrnul") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > > > > > > > > >extern size_t strcspn (const char *__s, const char *__reject) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern size_t strspn (const char *__s, const char *__accept) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern "C++" >{ >extern char *strpbrk (char *__s, const char *__accept) > throw () __asm ("strpbrk") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); >extern const char *strpbrk (const char *__s, const char *__accept) > throw () __asm ("strpbrk") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) char * >strpbrk (char *__s, const char *__accept) throw () >{ > return __builtin_strpbrk (__s, __accept); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const char * >strpbrk (const char *__s, const char *__accept) throw () >{ > return __builtin_strpbrk (__s, __accept); >} > >} > > > > > > >extern "C++" >{ >extern char *strstr (char *__haystack, const char *__needle) > throw () __asm ("strstr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); >extern const char *strstr (const char *__haystack, const char *__needle) > throw () __asm ("strstr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) char * >strstr (char *__haystack, const char *__needle) throw () >{ > return __builtin_strstr (__haystack, __needle); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const char * >strstr (const char *__haystack, const char *__needle) throw () >{ > return __builtin_strstr (__haystack, __needle); >} > >} > > > > > > > >extern char *strtok (char *__restrict __s, const char *__restrict __delim) > throw () __attribute__ ((__nonnull__ (2))); > > > > >extern char *__strtok_r (char *__restrict __s, > const char *__restrict __delim, > char **__restrict __save_ptr) > throw () __attribute__ ((__nonnull__ (2, 3))); > >extern char *strtok_r (char *__restrict __s, const char *__restrict __delim, > char **__restrict __save_ptr) > throw () __attribute__ ((__nonnull__ (2, 3))); > > > > > >extern "C++" char *strcasestr (char *__haystack, const char *__needle) > throw () __asm ("strcasestr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); >extern "C++" const char *strcasestr (const char *__haystack, > const char *__needle) > throw () __asm ("strcasestr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); ># 381 "/usr/include/string.h" 3 4 >extern void *memmem (const void *__haystack, size_t __haystacklen, > const void *__needle, size_t __needlelen) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 3))); > > > >extern void *__mempcpy (void *__restrict __dest, > const void *__restrict __src, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); >extern void *mempcpy (void *__restrict __dest, > const void *__restrict __src, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > > >extern size_t strlen (const char *__s) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > > > > >extern size_t strnlen (const char *__string, size_t __maxlen) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > > > > >extern char *strerror (int __errnum) throw (); > ># 437 "/usr/include/string.h" 3 4 >extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) > throw () __attribute__ ((__nonnull__ (2))) ; > > > > > >extern char *strerror_l (int __errnum, __locale_t __l) throw (); > > > > > >extern void __bzero (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1))); > > > >extern void bcopy (const void *__src, void *__dest, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); > > >extern void bzero (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1))); > > >extern int bcmp (const void *__s1, const void *__s2, size_t __n) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > > >extern "C++" >{ >extern char *index (char *__s, int __c) > throw () __asm ("index") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern const char *index (const char *__s, int __c) > throw () __asm ("index") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) char * >index (char *__s, int __c) throw () >{ > return __builtin_index (__s, __c); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const char * >index (const char *__s, int __c) throw () >{ > return __builtin_index (__s, __c); >} > >} > > > > > > > >extern "C++" >{ >extern char *rindex (char *__s, int __c) > throw () __asm ("rindex") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); >extern const char *rindex (const char *__s, int __c) > throw () __asm ("rindex") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); > > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) char * >rindex (char *__s, int __c) throw () >{ > return __builtin_rindex (__s, __c); >} > >extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__)) const char * >rindex (const char *__s, int __c) throw () >{ > return __builtin_rindex (__s, __c); >} > >} > > > > > > > >extern int ffs (int __i) throw () __attribute__ ((__const__)); > > > > >extern int ffsl (long int __l) throw () __attribute__ ((__const__)); >__extension__ extern int ffsll (long long int __ll) > throw () __attribute__ ((__const__)); > > > >extern int strcasecmp (const char *__s1, const char *__s2) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern int strncasecmp (const char *__s1, const char *__s2, size_t __n) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > > > > >extern int strcasecmp_l (const char *__s1, const char *__s2, > __locale_t __loc) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3))); > >extern int strncasecmp_l (const char *__s1, const char *__s2, > size_t __n, __locale_t __loc) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 4))); > > > > > >extern char *strsep (char **__restrict __stringp, > const char *__restrict __delim) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern char *strsignal (int __sig) throw (); > > >extern char *__stpcpy (char *__restrict __dest, const char *__restrict __src) > throw () __attribute__ ((__nonnull__ (1, 2))); >extern char *stpcpy (char *__restrict __dest, const char *__restrict __src) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > >extern char *__stpncpy (char *__restrict __dest, > const char *__restrict __src, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); >extern char *stpncpy (char *__restrict __dest, > const char *__restrict __src, size_t __n) > throw () __attribute__ ((__nonnull__ (1, 2))); > > > > >extern int strverscmp (const char *__s1, const char *__s2) > throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); > > >extern char *strfry (char *__string) throw () __attribute__ ((__nonnull__ (1))); > > >extern void *memfrob (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1))); > > > > > > > >extern "C++" char *basename (char *__filename) > throw () __asm ("basename") __attribute__ ((__nonnull__ (1))); >extern "C++" const char *basename (const char *__filename) > throw () __asm ("basename") __attribute__ ((__nonnull__ (1))); ># 643 "/usr/include/string.h" 3 4 >} ># 22 "../../../storage/perfschema/pfs_stat.h" 2 ># 34 "../../../storage/perfschema/pfs_stat.h" >struct PFS_single_stat >{ > > ulonglong m_count; > > ulonglong m_sum; > > ulonglong m_min; > > ulonglong m_max; > > PFS_single_stat() > { > m_count= 0; > m_sum= 0; > m_min= (9223372036854775807LL * 2ULL + 1); > m_max= 0; > } > > inline void reset(void) > { > m_count= 0; > m_sum= 0; > m_min= (9223372036854775807LL * 2ULL + 1); > m_max= 0; > } > > inline bool has_timed_stats() const > { > return (m_min <= m_max); > } > > inline void aggregate(const PFS_single_stat *stat) > { > m_count+= stat->m_count; > m_sum+= stat->m_sum; > if (__builtin_expect((m_min > stat->m_min),0)) > m_min= stat->m_min; > if (__builtin_expect((m_max < stat->m_max),0)) > m_max= stat->m_max; > } > > inline void aggregate_counted() > { > m_count++; > } > > inline void aggregate_counted(ulonglong count) > { > m_count+= count; > } > > inline void aggregate_value(ulonglong value) > { > m_count++; > m_sum+= value; > if (__builtin_expect((m_min > value),0)) > m_min= value; > if (__builtin_expect((m_max < value),0)) > m_max= value; > } >}; > > >struct PFS_byte_stat : public PFS_single_stat >{ > > ulonglong m_bytes; > > > inline void aggregate(const PFS_byte_stat *stat) > { > PFS_single_stat::aggregate(stat); > m_bytes+= stat->m_bytes; > } > > > inline void aggregate(ulonglong wait, ulonglong bytes) > { > aggregate_value(wait); > m_bytes+= bytes; > } > > > inline void aggregate_waits(const PFS_byte_stat *stat) > { > PFS_single_stat::aggregate(stat); > } > > > inline void aggregate_counted() > { > PFS_single_stat::aggregate_counted(); > } > > > inline void aggregate_counted(ulonglong bytes) > { > PFS_single_stat::aggregate_counted(); > m_bytes+= bytes; > } > > PFS_byte_stat() > { > reset(); > } > > inline void reset(void) > { > PFS_single_stat::reset(); > m_bytes= 0; > } >}; > > >struct PFS_mutex_stat >{ > > PFS_single_stat m_wait_stat; > > > > > PFS_single_stat m_lock_stat; > > inline void aggregate(const PFS_mutex_stat *stat) > { > m_wait_stat.aggregate(&stat->m_wait_stat); > m_lock_stat.aggregate(&stat->m_lock_stat); > } > > inline void reset(void) > { > m_wait_stat.reset(); > m_lock_stat.reset(); > } >}; > > >struct PFS_rwlock_stat >{ > > PFS_single_stat m_wait_stat; > > > > > PFS_single_stat m_read_lock_stat; > > > > > PFS_single_stat m_write_lock_stat; > > inline void aggregate(const PFS_rwlock_stat *stat) > { > m_wait_stat.aggregate(&stat->m_wait_stat); > m_read_lock_stat.aggregate(&stat->m_read_lock_stat); > m_write_lock_stat.aggregate(&stat->m_write_lock_stat); > } > > inline void reset(void) > { > m_wait_stat.reset(); > m_read_lock_stat.reset(); > m_write_lock_stat.reset(); > } >}; > > >struct PFS_cond_stat >{ > > PFS_single_stat m_wait_stat; > > > > > ulonglong m_signal_count; > > > > > ulonglong m_broadcast_count; > > inline void aggregate(const PFS_cond_stat *stat) > { > m_wait_stat.aggregate(&stat->m_wait_stat); > m_signal_count+= stat->m_signal_count; > m_broadcast_count+= stat->m_broadcast_count; > } > > inline void reset(void) > { > m_wait_stat.reset(); > m_signal_count= 0; > m_broadcast_count= 0; > } >}; > > >struct PFS_file_io_stat >{ > > PFS_byte_stat m_read; > > PFS_byte_stat m_write; > > PFS_byte_stat m_misc; > > inline void reset(void) > { > m_read.reset(); > m_write.reset(); > m_misc.reset(); > } > > inline void aggregate(const PFS_file_io_stat *stat) > { > m_read.aggregate(&stat->m_read); > m_write.aggregate(&stat->m_write); > m_misc.aggregate(&stat->m_misc); > } > > > inline void sum(PFS_byte_stat *stat) > { > stat->aggregate(&m_read); > stat->aggregate(&m_write); > stat->aggregate(&m_misc); > } > > > inline void sum_waits(PFS_single_stat *stat) > { > stat->aggregate(&m_read); > stat->aggregate(&m_write); > stat->aggregate(&m_misc); > } >}; > > >struct PFS_file_stat >{ > > ulong m_open_count; > > PFS_file_io_stat m_io_stat; > > inline void aggregate(const PFS_file_stat *stat) > { > m_io_stat.aggregate(&stat->m_io_stat); > } > > > inline void reset(void) > { > m_io_stat.reset(); > } >}; > > >struct PFS_stage_stat >{ > PFS_single_stat m_timer1_stat; > > inline void reset(void) > { m_timer1_stat.reset(); } > > inline void aggregate_counted() > { m_timer1_stat.aggregate_counted(); } > > inline void aggregate_value(ulonglong value) > { m_timer1_stat.aggregate_value(value); } > > inline void aggregate(PFS_stage_stat *stat) > { m_timer1_stat.aggregate(& stat->m_timer1_stat); } >}; > > >struct PFS_statement_stat >{ > PFS_single_stat m_timer1_stat; > ulonglong m_error_count; > ulonglong m_warning_count; > ulonglong m_rows_affected; > ulonglong m_lock_time; > ulonglong m_rows_sent; > ulonglong m_rows_examined; > ulonglong m_created_tmp_disk_tables; > ulonglong m_created_tmp_tables; > ulonglong m_select_full_join; > ulonglong m_select_full_range_join; > ulonglong m_select_range; > ulonglong m_select_range_check; > ulonglong m_select_scan; > ulonglong m_sort_merge_passes; > ulonglong m_sort_range; > ulonglong m_sort_rows; > ulonglong m_sort_scan; > ulonglong m_no_index_used; > ulonglong m_no_good_index_used; > > PFS_statement_stat() > { > m_error_count= 0; > m_warning_count= 0; > m_rows_affected= 0; > m_lock_time= 0; > m_rows_sent= 0; > m_rows_examined= 0; > m_created_tmp_disk_tables= 0; > m_created_tmp_tables= 0; > m_select_full_join= 0; > m_select_full_range_join= 0; > m_select_range= 0; > m_select_range_check= 0; > m_select_scan= 0; > m_sort_merge_passes= 0; > m_sort_range= 0; > m_sort_rows= 0; > m_sort_scan= 0; > m_no_index_used= 0; > m_no_good_index_used= 0; > } > > inline void reset(void) > { > m_timer1_stat.reset(); > m_error_count= 0; > m_warning_count= 0; > m_rows_affected= 0; > m_lock_time= 0; > m_rows_sent= 0; > m_rows_examined= 0; > m_created_tmp_disk_tables= 0; > m_created_tmp_tables= 0; > m_select_full_join= 0; > m_select_full_range_join= 0; > m_select_range= 0; > m_select_range_check= 0; > m_select_scan= 0; > m_sort_merge_passes= 0; > m_sort_range= 0; > m_sort_rows= 0; > m_sort_scan= 0; > m_no_index_used= 0; > m_no_good_index_used= 0; > } > > inline void aggregate_counted() > { m_timer1_stat.aggregate_counted(); } > > inline void aggregate_value(ulonglong value) > { m_timer1_stat.aggregate_value(value); } > > inline void aggregate(PFS_statement_stat *stat) > { > m_timer1_stat.aggregate(& stat->m_timer1_stat); > > m_error_count+= stat->m_error_count; > m_warning_count+= stat->m_warning_count; > m_rows_affected+= stat->m_rows_affected; > m_lock_time+= stat->m_lock_time; > m_rows_sent+= stat->m_rows_sent; > m_rows_examined+= stat->m_rows_examined; > m_created_tmp_disk_tables+= stat->m_created_tmp_disk_tables; > m_created_tmp_tables+= stat->m_created_tmp_tables; > m_select_full_join+= stat->m_select_full_join; > m_select_full_range_join+= stat->m_select_full_range_join; > m_select_range+= stat->m_select_range; > m_select_range_check+= stat->m_select_range_check; > m_select_scan+= stat->m_select_scan; > m_sort_merge_passes+= stat->m_sort_merge_passes; > m_sort_range+= stat->m_sort_range; > m_sort_rows+= stat->m_sort_rows; > m_sort_scan+= stat->m_sort_scan; > m_no_index_used+= stat->m_no_index_used; > m_no_good_index_used+= stat->m_no_good_index_used; > } >}; > > >struct PFS_table_io_stat >{ > bool m_has_data; > > PFS_single_stat m_fetch; > > PFS_single_stat m_insert; > > PFS_single_stat m_update; > > PFS_single_stat m_delete; > > PFS_table_io_stat() > { > m_has_data= false; > } > > inline void reset(void) > { > m_has_data= false; > m_fetch.reset(); > m_insert.reset(); > m_update.reset(); > m_delete.reset(); > } > > inline void aggregate(const PFS_table_io_stat *stat) > { > if (stat->m_has_data) > { > m_has_data= true; > m_fetch.aggregate(&stat->m_fetch); > m_insert.aggregate(&stat->m_insert); > m_update.aggregate(&stat->m_update); > m_delete.aggregate(&stat->m_delete); > } > } > > inline void sum(PFS_single_stat *result) > { > if (m_has_data) > { > result->aggregate(& m_fetch); > result->aggregate(& m_insert); > result->aggregate(& m_update); > result->aggregate(& m_delete); > } > } >}; > >enum PFS_TL_LOCK_TYPE >{ > > PFS_TL_READ= 0, > PFS_TL_READ_WITH_SHARED_LOCKS= 1, > PFS_TL_READ_HIGH_PRIORITY= 2, > PFS_TL_READ_NO_INSERT= 3, > PFS_TL_WRITE_ALLOW_WRITE= 4, > PFS_TL_WRITE_CONCURRENT_INSERT= 5, > PFS_TL_WRITE_DELAYED= 6, > PFS_TL_WRITE_LOW_PRIORITY= 7, > PFS_TL_WRITE= 8, > > > PFS_TL_READ_EXTERNAL= 9, > PFS_TL_WRITE_EXTERNAL= 10 >}; > > > > >struct PFS_table_lock_stat >{ > PFS_single_stat m_stat[11]; > > inline void reset(void) > { > PFS_single_stat *pfs= & m_stat[0]; > PFS_single_stat *pfs_last= & m_stat[11]; > for ( ; pfs < pfs_last ; pfs++) > pfs->reset(); > } > > inline void aggregate(const PFS_table_lock_stat *stat) > { > PFS_single_stat *pfs= & m_stat[0]; > PFS_single_stat *pfs_last= & m_stat[11]; > const PFS_single_stat *pfs_from= & stat->m_stat[0]; > for ( ; pfs < pfs_last ; pfs++, pfs_from++) > pfs->aggregate(pfs_from); > } > > inline void sum(PFS_single_stat *result) > { > PFS_single_stat *pfs= & m_stat[0]; > PFS_single_stat *pfs_last= & m_stat[11]; > for ( ; pfs < pfs_last ; pfs++) > result->aggregate(pfs); > } >}; > > >struct PFS_table_stat >{ > > > > > > PFS_table_io_stat m_index_stat[64U + 1]; > > > > > PFS_table_lock_stat m_lock_stat; > > > inline void reset_io(void) > { > PFS_table_io_stat *stat= & m_index_stat[0]; > PFS_table_io_stat *stat_last= & m_index_stat[64U + 1]; > for ( ; stat < stat_last ; stat++) > stat->reset(); > } > > > inline void reset_lock(void) > { > m_lock_stat.reset(); > } > > > inline void reset(void) > { > reset_io(); > reset_lock(); > } > > inline void fast_reset_io(void) > { > memcpy(& m_index_stat, & g_reset_template.m_index_stat, sizeof(m_index_stat)); > } > > inline void fast_reset_lock(void) > { > memcpy(& m_lock_stat, & g_reset_template.m_lock_stat, sizeof(m_lock_stat)); > } > > inline void fast_reset(void) > { > memcpy(this, & g_reset_template, sizeof(*this)); > } > > inline void aggregate_io(const PFS_table_stat *stat, uint key_count) > { > PFS_table_io_stat *to_stat; > PFS_table_io_stat *to_stat_last; > const PFS_table_io_stat *from_stat; > > do { } while(0); > > > to_stat= & m_index_stat[0]; > to_stat_last= to_stat + key_count; > from_stat= & stat->m_index_stat[0]; > for ( ; to_stat < to_stat_last ; from_stat++, to_stat++) > to_stat->aggregate(from_stat); > > > to_stat= & m_index_stat[64U]; > from_stat= & stat->m_index_stat[64U]; > to_stat->aggregate(from_stat); > } > > inline void aggregate_lock(const PFS_table_stat *stat) > { > m_lock_stat.aggregate(& stat->m_lock_stat); > } > > inline void aggregate(const PFS_table_stat *stat, uint key_count) > { > aggregate_io(stat, key_count); > aggregate_lock(stat); > } > > inline void sum_io(PFS_single_stat *result, uint key_count) > { > PFS_table_io_stat *stat; > PFS_table_io_stat *stat_last; > > do { } while(0); > > > stat= & m_index_stat[0]; > stat_last= stat + key_count; > for ( ; stat < stat_last ; stat++) > stat->sum(result); > > > m_index_stat[64U].sum(result); > } > > inline void sum_lock(PFS_single_stat *result) > { > m_lock_stat.sum(result); > } > > inline void sum(PFS_single_stat *result, uint key_count) > { > sum_io(result, key_count); > sum_lock(result); > } > > static struct PFS_table_stat g_reset_template; >}; > > >struct PFS_socket_io_stat >{ > > PFS_byte_stat m_read; > > PFS_byte_stat m_write; > > PFS_byte_stat m_misc; > > inline void reset(void) > { > m_read.reset(); > m_write.reset(); > m_misc.reset(); > } > > inline void aggregate(const PFS_socket_io_stat *stat) > { > m_read.aggregate(&stat->m_read); > m_write.aggregate(&stat->m_write); > m_misc.aggregate(&stat->m_misc); > } > > > inline void sum(PFS_byte_stat *stat) > { > stat->aggregate(&m_read); > stat->aggregate(&m_write); > stat->aggregate(&m_misc); > } > > > inline void sum_waits(PFS_single_stat *stat) > { > stat->aggregate(&m_read); > stat->aggregate(&m_write); > stat->aggregate(&m_misc); > } >}; > > >struct PFS_socket_stat >{ > > PFS_socket_io_stat m_io_stat; > > > inline void reset(void) > { > m_io_stat.reset(); > } >}; > >struct PFS_connection_stat >{ > PFS_connection_stat() > : m_current_connections(0), > m_total_connections(0) > {} > > ulonglong m_current_connections; > ulonglong m_total_connections; > > inline void aggregate_active(ulonglong active) > { > m_current_connections+= active; > m_total_connections+= active; > } > > inline void aggregate_disconnected(ulonglong disconnected) > { > m_total_connections+= disconnected; > } >}; ># 25 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../storage/perfschema/pfs_instr.h" 1 ># 24 "../../../storage/perfschema/pfs_instr.h" >struct PFS_mutex_class; >struct PFS_rwlock_class; >struct PFS_cond_class; >struct PFS_file_class; >struct PFS_table_share; >struct PFS_thread_class; >struct PFS_socket_class; > > > > ># 1 "/usr/include/arpa/inet.h" 1 3 4 ># 22 "/usr/include/arpa/inet.h" 3 4 ># 1 "/usr/include/netinet/in.h" 1 3 4 ># 22 "/usr/include/netinet/in.h" 3 4 ># 1 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stdint.h" 1 3 4 ># 9 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stdint.h" 3 4 ># 1 "/usr/include/stdint.h" 1 3 4 ># 26 "/usr/include/stdint.h" 3 4 ># 1 "/usr/include/bits/wchar.h" 1 3 4 ># 27 "/usr/include/stdint.h" 2 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 28 "/usr/include/stdint.h" 2 3 4 ># 48 "/usr/include/stdint.h" 3 4 >typedef unsigned char uint8_t; >typedef unsigned short int uint16_t; > >typedef unsigned int uint32_t; > > > >typedef unsigned long int uint64_t; ># 65 "/usr/include/stdint.h" 3 4 >typedef signed char int_least8_t; >typedef short int int_least16_t; >typedef int int_least32_t; > >typedef long int int_least64_t; > > > > > > >typedef unsigned char uint_least8_t; >typedef unsigned short int uint_least16_t; >typedef unsigned int uint_least32_t; > >typedef unsigned long int uint_least64_t; ># 90 "/usr/include/stdint.h" 3 4 >typedef signed char int_fast8_t; > >typedef long int int_fast16_t; >typedef long int int_fast32_t; >typedef long int int_fast64_t; ># 103 "/usr/include/stdint.h" 3 4 >typedef unsigned char uint_fast8_t; > >typedef unsigned long int uint_fast16_t; >typedef unsigned long int uint_fast32_t; >typedef unsigned long int uint_fast64_t; ># 122 "/usr/include/stdint.h" 3 4 >typedef unsigned long int uintptr_t; ># 134 "/usr/include/stdint.h" 3 4 >typedef long int intmax_t; >typedef unsigned long int uintmax_t; ># 10 "/usr/lib/gcc/aarch64-redhat-linux/4.9.0/include/stdint.h" 2 3 4 ># 23 "/usr/include/netinet/in.h" 2 3 4 > > > > >extern "C" { > > >typedef uint32_t in_addr_t; >struct in_addr > { > in_addr_t s_addr; > }; > > ># 1 "/usr/include/bits/in.h" 1 3 4 ># 136 "/usr/include/bits/in.h" 3 4 >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 "/usr/include/netinet/in.h" 2 3 4 > > >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 "/usr/include/netinet/in.h" 3 4 >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 "/usr/include/netinet/in.h" 3 4 >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 "/usr/include/netinet/in.h" 3 4 >extern uint32_t ntohl (uint32_t __netlong) throw () __attribute__ ((__const__)); >extern uint16_t ntohs (uint16_t __netshort) > throw () __attribute__ ((__const__)); >extern uint32_t htonl (uint32_t __hostlong) > throw () __attribute__ ((__const__)); >extern uint16_t htons (uint16_t __hostshort) > throw () __attribute__ ((__const__)); > > > > ># 1 "/usr/include/bits/byteswap.h" 1 3 4 ># 386 "/usr/include/netinet/in.h" 2 3 4 ># 501 "/usr/include/netinet/in.h" 3 4 >extern int bindresvport (int __sockfd, struct sockaddr_in *__sock_in) throw (); > > >extern int bindresvport6 (int __sockfd, struct sockaddr_in6 *__sock_in) > throw (); ># 531 "/usr/include/netinet/in.h" 3 4 >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) > throw () __attribute__ ((__deprecated__)); >extern int inet6_option_init (void *__bp, struct cmsghdr **__cmsgp, > int __type) throw () __attribute__ ((__deprecated__)); >extern int inet6_option_append (struct cmsghdr *__cmsg, > const uint8_t *__typep, int __multx, > int __plusy) throw () __attribute__ ((__deprecated__)); >extern uint8_t *inet6_option_alloc (struct cmsghdr *__cmsg, int __datalen, > int __multx, int __plusy) > throw () __attribute__ ((__deprecated__)); >extern int inet6_option_next (const struct cmsghdr *__cmsg, > uint8_t **__tptrp) > throw () __attribute__ ((__deprecated__)); >extern int inet6_option_find (const struct cmsghdr *__cmsg, > uint8_t **__tptrp, int __type) > throw () __attribute__ ((__deprecated__)); > > > >extern int inet6_opt_init (void *__extbuf, socklen_t __extlen) throw (); >extern int inet6_opt_append (void *__extbuf, socklen_t __extlen, int __offset, > uint8_t __type, socklen_t __len, uint8_t __align, > void **__databufp) throw (); >extern int inet6_opt_finish (void *__extbuf, socklen_t __extlen, int __offset) > throw (); >extern int inet6_opt_set_val (void *__databuf, int __offset, void *__val, > socklen_t __vallen) throw (); >extern int inet6_opt_next (void *__extbuf, socklen_t __extlen, int __offset, > uint8_t *__typep, socklen_t *__lenp, > void **__databufp) throw (); >extern int inet6_opt_find (void *__extbuf, socklen_t __extlen, int __offset, > uint8_t __type, socklen_t *__lenp, > void **__databufp) throw (); >extern int inet6_opt_get_val (void *__databuf, int __offset, void *__val, > socklen_t __vallen) throw (); > > > >extern socklen_t inet6_rth_space (int __type, int __segments) throw (); >extern void *inet6_rth_init (void *__bp, socklen_t __bp_len, int __type, > int __segments) throw (); >extern int inet6_rth_add (void *__bp, const struct in6_addr *__addr) throw (); >extern int inet6_rth_reverse (const void *__in, void *__out) throw (); >extern int inet6_rth_segments (const void *__bp) throw (); >extern struct in6_addr *inet6_rth_getaddr (const void *__bp, int __index) > throw (); > > > > > >extern int getipv4sourcefilter (int __s, struct in_addr __interface_addr, > struct in_addr __group, uint32_t *__fmode, > uint32_t *__numsrc, struct in_addr *__slist) > throw (); > > >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) > throw (); > > > >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) throw (); > > >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) throw (); > > >} ># 23 "/usr/include/arpa/inet.h" 2 3 4 > > > > > > > >extern "C" { > > > >extern in_addr_t inet_addr (const char *__cp) throw (); > > >extern in_addr_t inet_lnaof (struct in_addr __in) throw (); > > > >extern struct in_addr inet_makeaddr (in_addr_t __net, in_addr_t __host) > throw (); > > >extern in_addr_t inet_netof (struct in_addr __in) throw (); > > > >extern in_addr_t inet_network (const char *__cp) throw (); > > > >extern char *inet_ntoa (struct in_addr __in) throw (); > > > > >extern int inet_pton (int __af, const char *__restrict __cp, > void *__restrict __buf) throw (); > > > > >extern const char *inet_ntop (int __af, const void *__restrict __cp, > char *__restrict __buf, socklen_t __len) > throw (); > > > > > > >extern int inet_aton (const char *__cp, struct in_addr *__inp) throw (); > > > >extern char *inet_neta (in_addr_t __net, char *__buf, size_t __len) throw (); > > > > >extern char *inet_net_ntop (int __af, const void *__cp, int __bits, > char *__buf, size_t __len) throw (); > > > > >extern int inet_net_pton (int __af, const char *__cp, > void *__buf, size_t __len) throw (); > > > > >extern unsigned int inet_nsap_addr (const char *__cp, > unsigned char *__buf, int __len) throw (); > > > >extern char *inet_nsap_ntoa (int __len, const unsigned char *__cp, > char *__buf) throw (); > > >} ># 36 "../../../storage/perfschema/pfs_instr.h" 2 > > > ># 1 "../../../storage/perfschema/pfs_lock.h" 1 ># 24 "../../../storage/perfschema/pfs_lock.h" ># 1 "../../../storage/perfschema/pfs_atomic.h" 1 ># 24 "../../../storage/perfschema/pfs_atomic.h" ># 1 "../../../include/my_atomic.h" 1 ># 70 "../../../include/my_atomic.h" ># 1 "../../../include/atomic/nolock.h" 1 ># 36 "../../../include/atomic/nolock.h" ># 1 "../../../include/atomic/gcc_builtins.h" 1 ># 37 "../../../include/atomic/nolock.h" 2 ># 47 "../../../include/atomic/nolock.h" >typedef char my_atomic_rwlock_t __attribute__ ((unused)); ># 71 "../../../include/my_atomic.h" 2 ># 202 "../../../include/my_atomic.h" >static inline int my_atomic_cas32(int32 volatile *a, int32 *cmp, int32 set) { int8 ret; int32 sav; int32 cmp_val= *cmp; sav= __sync_val_compare_and_swap(a, cmp_val, set); if (!(ret= (sav == cmp_val))) *cmp= sav; return ret; } >static inline int my_atomic_cas64(int64 volatile *a, int64 *cmp, int64 set) { int8 ret; int64 sav; int64 cmp_val= *cmp; sav= __sync_val_compare_and_swap(a, cmp_val, set); if (!(ret= (sav == cmp_val))) *cmp= sav; return ret; } >static inline int my_atomic_casptr(void * volatile *a, void * *cmp, void * set) { int8 ret; void * sav; void * cmp_val= *cmp; sav= __sync_val_compare_and_swap(a, cmp_val, set); if (!(ret= (sav == cmp_val))) *cmp= sav; return ret; } > > > > > >static inline int32 my_atomic_add32( int32 volatile *a, int32 v) { v= __sync_fetch_and_add(a, v);; return v; } >static inline int64 my_atomic_add64( int64 volatile *a, int64 v) { v= __sync_fetch_and_add(a, v);; return v; } > > > > > >static inline int32 my_atomic_load32(int32 volatile *a) { int32 ret; ret= __sync_fetch_and_or(a, 0);; return ret; } >static inline int64 my_atomic_load64(int64 volatile *a) { int64 ret; ret= __sync_fetch_and_or(a, 0);; return ret; } >static inline void * my_atomic_loadptr(void * volatile *a) { void * ret; ret= __sync_fetch_and_or(a, 0);; return ret; } > > > > > >static inline int32 my_atomic_fas32( int32 volatile *a, int32 v) { v= __sync_lock_test_and_set(a, v);; return v; } >static inline int64 my_atomic_fas64( int64 volatile *a, int64 v) { v= __sync_lock_test_and_set(a, v);; return v; } >static inline void * my_atomic_fasptr( void * volatile *a, void * v) { v= __sync_lock_test_and_set(a, v);; return v; } > > > > > >static inline void my_atomic_store32( int32 volatile *a, int32 v) { (void) __sync_lock_test_and_set(a, v);; } >static inline void my_atomic_store64( int64 volatile *a, int64 v) { (void) __sync_lock_test_and_set(a, v);; } >static inline void my_atomic_storeptr( void * volatile *a, void * v) { (void) __sync_lock_test_and_set(a, v);; } ># 283 "../../../include/my_atomic.h" >extern "C" { >extern int my_atomic_initialize(); >} ># 25 "../../../storage/perfschema/pfs_atomic.h" 2 > > >class PFS_atomic >{ >public: > > static void init(); > > static void cleanup(); > > > static inline int32 load_32(volatile int32 *ptr) > { > int32 result; > rdlock(ptr); > result= my_atomic_load32(ptr); > rdunlock(ptr); > return result; > } > > > static inline int64 load_64(volatile int64 *ptr) > { > int64 result; > rdlock(ptr); > result= my_atomic_load64(ptr); > rdunlock(ptr); > return result; > } > > > static inline uint32 load_u32(volatile uint32 *ptr) > { > uint32 result; > rdlock(ptr); > result= (uint32) my_atomic_load32((int32*) ptr); > rdunlock(ptr); > return result; > } > > > static inline uint64 load_u64(volatile uint64 *ptr) > { > uint64 result; > rdlock(ptr); > result= (uint64) my_atomic_load64((int64*) ptr); > rdunlock(ptr); > return result; > } > > > static inline void store_32(volatile int32 *ptr, int32 value) > { > wrlock(ptr); > my_atomic_store32(ptr, value); > wrunlock(ptr); > } > > > static inline void store_64(volatile int64 *ptr, int64 value) > { > wrlock(ptr); > my_atomic_store64(ptr, value); > wrunlock(ptr); > } > > > static inline void store_u32(volatile uint32 *ptr, uint32 value) > { > wrlock(ptr); > my_atomic_store32((int32*) ptr, (int32) value); > wrunlock(ptr); > } > > > static inline void store_u64(volatile uint64 *ptr, uint64 value) > { > wrlock(ptr); > my_atomic_store64((int64*) ptr, (int64) value); > wrunlock(ptr); > } > > > static inline int32 add_32(volatile int32 *ptr, int32 value) > { > int32 result; > wrlock(ptr); > result= my_atomic_add32(ptr, value); > wrunlock(ptr); > return result; > } > > > static inline int64 add_64(volatile int64 *ptr, int64 value) > { > int64 result; > wrlock(ptr); > result= my_atomic_add64(ptr, value); > wrunlock(ptr); > return result; > } > > > static inline uint32 add_u32(volatile uint32 *ptr, uint32 value) > { > uint32 result; > wrlock(ptr); > result= (uint32) my_atomic_add32((int32*) ptr, (int32) value); > wrunlock(ptr); > return result; > } > > > static inline uint64 add_u64(volatile uint64 *ptr, uint64 value) > { > uint64 result; > wrlock(ptr); > result= (uint64) my_atomic_add64((int64*) ptr, (int64) value); > wrunlock(ptr); > return result; > } > > > static inline bool cas_32(volatile int32 *ptr, int32 *old_value, > int32 new_value) > { > bool result; > wrlock(ptr); > result= my_atomic_cas32(ptr, old_value, new_value); > wrunlock(ptr); > return result; > } > > > static inline bool cas_64(volatile int64 *ptr, int64 *old_value, > int64 new_value) > { > bool result; > wrlock(ptr); > result= my_atomic_cas64(ptr, old_value, new_value); > wrunlock(ptr); > return result; > } > > > static inline bool cas_u32(volatile uint32 *ptr, uint32 *old_value, > uint32 new_value) > { > bool result; > wrlock(ptr); > result= my_atomic_cas32((int32*) ptr, (int32*) old_value, > (uint32) new_value); > wrunlock(ptr); > return result; > } > > > static inline bool cas_u64(volatile uint64 *ptr, uint64 *old_value, > uint64 new_value) > { > bool result; > wrlock(ptr); > result= my_atomic_cas64((int64*) ptr, (int64*) old_value, > (uint64) new_value); > wrunlock(ptr); > return result; > } > >private: > static my_atomic_rwlock_t m_rwlock_array[256]; > > > > > > static inline my_atomic_rwlock_t *get_rwlock(volatile void *ptr) > { > > > > > uint index= (((intptr) ptr) >> 3) & 0xFF; > my_atomic_rwlock_t *result= &m_rwlock_array[index]; > return result; > } > > > > > > static inline void rdlock(volatile void *ptr) > { > ; > } > > > > > > static inline void wrlock(volatile void *ptr) > { > ; > } > > > > > > static inline void rdunlock(volatile void *ptr) > { > ; > } > > > > > > static inline void wrunlock(volatile void *ptr) > { > ; > } >}; ># 25 "../../../storage/perfschema/pfs_lock.h" 2 ># 64 "../../../storage/perfschema/pfs_lock.h" >struct pfs_lock >{ ># 82 "../../../storage/perfschema/pfs_lock.h" > volatile uint32 m_version_state; > > > bool is_free(void) > { > uint32 copy= m_version_state; > return ((copy & 0x00000003) == 0x00); > } > > > bool is_populated(void) > { > uint32 copy= m_version_state; > return ((copy & 0x00000003) == 0x02); > } > > > > > > > > bool free_to_dirty(void) > { > uint32 copy= m_version_state; > uint32 old_val= (copy & 0xFFFFFFFC) + 0x00; > uint32 new_val= (copy & 0xFFFFFFFC) + 0x01; > > return (PFS_atomic::cas_u32(&m_version_state, &old_val, new_val)); > } > > > > > > > void allocated_to_dirty(void) > { > uint32 copy= PFS_atomic::load_u32(&m_version_state); > > do { } while(0); > > uint32 new_val= (copy & 0xFFFFFFFC) + 0x01; > > PFS_atomic::store_u32(&m_version_state, new_val); > } > > > > > > > void dirty_to_allocated(void) > { > uint32 copy= PFS_atomic::load_u32(&m_version_state); > > do { } while(0); > > uint32 new_val= (copy & 0xFFFFFFFC) + 4 + 0x02; > PFS_atomic::store_u32(&m_version_state, new_val); > } > > > > > > > void set_allocated(void) > { > > uint32 copy= PFS_atomic::load_u32(&m_version_state); > > uint32 new_val= (copy & 0xFFFFFFFC) + 4 + 0x02; > PFS_atomic::store_u32(&m_version_state, new_val); > } > > > > > > void dirty_to_free(void) > { > uint32 copy= PFS_atomic::load_u32(&m_version_state); > > do { } while(0); > > uint32 new_val= (copy & 0xFFFFFFFC) + 0x00; > PFS_atomic::store_u32(&m_version_state, new_val); > } > > > > > > void allocated_to_free(void) > { ># 196 "../../../storage/perfschema/pfs_lock.h" > uint32 copy= PFS_atomic::load_u32(&m_version_state); > > do { } while(0); > > uint32 new_val= (copy & 0xFFFFFFFC) + 0x00; > PFS_atomic::store_u32(&m_version_state, new_val); > } > > > > > > void begin_optimistic_lock(struct pfs_lock *copy) > { > copy->m_version_state= PFS_atomic::load_u32(&m_version_state); > } > > > > > > > bool end_optimistic_lock(struct pfs_lock *copy) > { > > if ((copy->m_version_state & 0x00000003) != 0x02) > return false; > > > if (copy->m_version_state != PFS_atomic::load_u32(&m_version_state)) > return false; > > return true; > } > > uint32 get_version() > { > return (PFS_atomic::load_u32(&m_version_state) & 0xFFFFFFFC); > } >}; ># 40 "../../../storage/perfschema/pfs_instr.h" 2 > ># 1 "../../../storage/perfschema/pfs_instr_class.h" 1 ># 20 "../../../storage/perfschema/pfs_instr_class.h" ># 1 "../../../include/mysql_com.h" 1 ># 66 "../../../include/mysql_com.h" >enum enum_server_command >{ > COM_SLEEP, COM_QUIT, COM_INIT_DB, COM_QUERY, COM_FIELD_LIST, > COM_CREATE_DB, COM_DROP_DB, COM_REFRESH, COM_SHUTDOWN, COM_STATISTICS, > COM_PROCESS_INFO, COM_CONNECT, COM_PROCESS_KILL, COM_DEBUG, COM_PING, > COM_TIME, COM_DELAYED_INSERT, COM_CHANGE_USER, COM_BINLOG_DUMP, > COM_TABLE_DUMP, COM_CONNECT_OUT, COM_REGISTER_SLAVE, > COM_STMT_PREPARE, COM_STMT_EXECUTE, COM_STMT_SEND_LONG_DATA, COM_STMT_CLOSE, > COM_STMT_RESET, COM_SET_OPTION, COM_STMT_FETCH, COM_DAEMON, > COM_BINLOG_DUMP_GTID, > > > > COM_END >}; ># 305 "../../../include/mysql_com.h" >struct st_vio; >typedef struct st_vio Vio; ># 316 "../../../include/mysql_com.h" >typedef struct st_net { > > Vio *vio; > unsigned char *buff,*buff_end,*write_pos,*read_pos; > my_socket fd; > > > > > > unsigned long remain_in_buf,length, buf_length, where_b; > unsigned long max_packet,max_packet_size; > unsigned int pkt_nr,compress_pkt_nr; > unsigned int write_timeout, read_timeout, retry_count; > int fcntl; > unsigned int *return_status; > unsigned char reading_or_writing; > char save_char; > my_bool unused1; > my_bool unused2; > my_bool compress; > my_bool unused3; ># 346 "../../../include/mysql_com.h" > unsigned char *unused; > unsigned int last_errno; > unsigned char error; > my_bool unused4; > my_bool unused5; > > char last_error[512]; > > char sqlstate[5 +1]; ># 363 "../../../include/mysql_com.h" > void *extension; >} NET; > > > > >enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY, > MYSQL_TYPE_SHORT, MYSQL_TYPE_LONG, > MYSQL_TYPE_FLOAT, MYSQL_TYPE_DOUBLE, > MYSQL_TYPE_NULL, MYSQL_TYPE_TIMESTAMP, > MYSQL_TYPE_LONGLONG,MYSQL_TYPE_INT24, > MYSQL_TYPE_DATE, MYSQL_TYPE_TIME, > MYSQL_TYPE_DATETIME, MYSQL_TYPE_YEAR, > MYSQL_TYPE_NEWDATE, MYSQL_TYPE_VARCHAR, > MYSQL_TYPE_BIT, > MYSQL_TYPE_TIMESTAMP2, > MYSQL_TYPE_DATETIME2, > MYSQL_TYPE_TIME2, > MYSQL_TYPE_NEWDECIMAL=246, > MYSQL_TYPE_ENUM=247, > MYSQL_TYPE_SET=248, > MYSQL_TYPE_TINY_BLOB=249, > MYSQL_TYPE_MEDIUM_BLOB=250, > MYSQL_TYPE_LONG_BLOB=251, > MYSQL_TYPE_BLOB=252, > MYSQL_TYPE_VAR_STRING=253, > MYSQL_TYPE_STRING=254, > MYSQL_TYPE_GEOMETRY=255 > >}; ># 434 "../../../include/mysql_com.h" >enum mysql_enum_shutdown_level { > > > > > > SHUTDOWN_DEFAULT = 0, > > SHUTDOWN_WAIT_CONNECTIONS= (unsigned char)(1 << 0), > > SHUTDOWN_WAIT_TRANSACTIONS= (unsigned char)(1 << 1), > > SHUTDOWN_WAIT_UPDATES= (unsigned char)(1 << 3), > > SHUTDOWN_WAIT_ALL_BUFFERS= ((unsigned char)(1 << 3) << 1), > > SHUTDOWN_WAIT_CRITICAL_BUFFERS= ((unsigned char)(1 << 3) << 1) + 1, > > > > > KILL_CONNECTION= 255 >}; > > >enum enum_cursor_type >{ > CURSOR_TYPE_NO_CURSOR= 0, > CURSOR_TYPE_READ_ONLY= 1, > CURSOR_TYPE_FOR_UPDATE= 2, > CURSOR_TYPE_SCROLLABLE= 4 >}; > > > >enum enum_mysql_set_option >{ > MYSQL_OPTION_MULTI_STATEMENTS_ON, > MYSQL_OPTION_MULTI_STATEMENTS_OFF >}; > > > > >extern "C" { > > >my_bool my_net_init(NET *net, Vio* vio); >void my_net_local_init(NET *net); >void net_end(NET *net); >void net_clear(NET *net, my_bool check_buffer); >my_bool net_realloc(NET *net, size_t length); >my_bool net_flush(NET *net); >my_bool my_net_write(NET *net,const unsigned char *packet, size_t len); >my_bool net_write_command(NET *net,unsigned char command, > const unsigned char *header, size_t head_len, > const unsigned char *packet, size_t len); >my_bool net_write_packet(NET *net, const unsigned char *packet, size_t length); >unsigned long my_net_read(NET *net); > > >void my_net_set_write_timeout(NET *net, uint timeout); >void my_net_set_read_timeout(NET *net, uint timeout); > > >struct rand_struct { > unsigned long seed1,seed2,max_value; > double max_value_dbl; >}; > > >} > > > > >enum Item_result {STRING_RESULT=0, REAL_RESULT, INT_RESULT, ROW_RESULT, > DECIMAL_RESULT}; > >typedef struct st_udf_args >{ > unsigned int arg_count; > enum Item_result *arg_type; > char **args; > unsigned long *lengths; > char *maybe_null; > char **attributes; > unsigned long *attribute_lengths; > void *extension; >} UDF_ARGS; > > > >typedef struct st_udf_init >{ > my_bool maybe_null; > unsigned int decimals; > unsigned long max_length; > char *ptr; > my_bool const_item; > void *extension; >} UDF_INIT; ># 548 "../../../include/mysql_com.h" >extern "C" { > > > > > > > >void randominit(struct rand_struct *, unsigned long seed1, > unsigned long seed2); >double my_rnd(struct rand_struct *); >void create_random_string(char *to, unsigned int length, struct rand_struct *rand_st); > >void hash_password(unsigned long *to, const char *password, unsigned int password_len); >void make_scrambled_password_323(char *to, const char *password); >void scramble_323(char *to, const char *message, const char *password); >my_bool check_scramble_323(const unsigned char *reply, const char *message, > unsigned long *salt); >void get_salt_from_password_323(unsigned long *res, const char *password); >void make_password_from_salt_323(char *to, const unsigned long *salt); > >void make_scrambled_password(char *to, const char *password); >void scramble(char *to, const char *message, const char *password); >my_bool check_scramble(const unsigned char *reply, const char *message, > const unsigned char *hash_stage2); >void get_salt_from_password(unsigned char *res, const char *password); >void make_password_from_salt(char *to, const unsigned char *hash_stage2); >char *octet2hex(char *to, const char *str, unsigned int len); > > > >char *get_tty_password(const char *opt_message); >const char *mysql_errno_to_sqlstate(unsigned int mysql_errno); > > > >my_bool my_thread_init(void); >void my_thread_end(void); > > >ulong net_field_length(uchar **packet); >my_ulonglong net_field_length_ll(uchar **packet); >uchar *net_store_length(uchar *pkg, ulonglong length); > > > >} ># 21 "../../../storage/perfschema/pfs_instr_class.h" 2 ># 1 "../../../include/lf.h" 1 ># 21 "../../../include/lf.h" >extern "C" { ># 71 "../../../include/lf.h" >typedef struct { > void * volatile level[4]; > uint size_of_element; > my_atomic_rwlock_t lock; >} LF_DYNARRAY; > >typedef int (*lf_dynarray_func)(void *, void *); > >void lf_dynarray_init(LF_DYNARRAY *array, uint element_size); >void lf_dynarray_destroy(LF_DYNARRAY *array); > >void * _lf_dynarray_value (LF_DYNARRAY *array, uint idx); static inline void * lf_dynarray_value (LF_DYNARRAY *array, uint idx) { return _lf_dynarray_value (array, idx); } > > >void * _lf_dynarray_lvalue (LF_DYNARRAY *array, uint idx); static inline void * lf_dynarray_lvalue (LF_DYNARRAY *array, uint idx) { void * ret; ; ret= _lf_dynarray_lvalue (array, idx); ; return ret; } > > > >int _lf_dynarray_iterate (LF_DYNARRAY *array, lf_dynarray_func func, void *arg); static inline int lf_dynarray_iterate (LF_DYNARRAY *array, lf_dynarray_func func, void *arg) { return _lf_dynarray_iterate (array, func, arg); } ># 100 "../../../include/lf.h" >typedef void lf_pinbox_free_func(void *, void *, void*); > >typedef struct { > LF_DYNARRAY pinarray; > lf_pinbox_free_func *free_func; > void *free_func_arg; > uint free_ptr_offset; > uint32 volatile pinstack_top_ver; > uint32 volatile pins_in_array; >} LF_PINBOX; > >typedef struct { > void * volatile pin[4]; > LF_PINBOX *pinbox; > void **stack_ends_here; > void *purgatory; > uint32 purgatory_count; > uint32 volatile link; > > > > >} LF_PINS; ># 164 "../../../include/lf.h" >void lf_pinbox_init(LF_PINBOX *pinbox, uint free_ptr_offset, > lf_pinbox_free_func *free_func, void * free_func_arg); >void lf_pinbox_destroy(LF_PINBOX *pinbox); > >LF_PINS * _lf_pinbox_get_pins (LF_PINBOX *pinbox); static inline LF_PINS * lf_pinbox_get_pins (LF_PINBOX *pinbox) { LF_PINS * ret; ; ret= _lf_pinbox_get_pins (pinbox); ; return ret; } > > > >void _lf_pinbox_put_pins (LF_PINS *pins); static inline void lf_pinbox_put_pins (LF_PINS *pins) { ; _lf_pinbox_put_pins (pins); ; } > > > >void _lf_pinbox_free (LF_PINS *pins, void *addr); static inline void lf_pinbox_free (LF_PINS *pins, void *addr) { ; _lf_pinbox_free (pins, addr); ; } ># 185 "../../../include/lf.h" >typedef struct st_lf_allocator { > LF_PINBOX pinbox; > uchar * volatile top; > uint element_size; > uint32 volatile mallocs; > void (*constructor)(uchar *); > void (*destructor)(uchar *); >} LF_ALLOCATOR; > >void lf_alloc_init(LF_ALLOCATOR *allocator, uint size, uint free_ptr_offset); >void lf_alloc_destroy(LF_ALLOCATOR *allocator); >uint lf_alloc_pool_count(LF_ALLOCATOR *allocator); ># 209 "../../../include/lf.h" >void * _lf_alloc_new (LF_PINS *pins); static inline void * lf_alloc_new (LF_PINS *pins) { void * ret; ; ret= _lf_alloc_new (pins); ; return ret; } > > > > >} > > > > ># 1 "../../../include/hash.h" 1 ># 22 "../../../include/hash.h" ># 1 "../../../include/my_sys.h" 1 ># 23 "../../../include/hash.h" 2 ># 36 "../../../include/hash.h" >extern "C" { ># 48 "../../../include/hash.h" >struct st_hash; >typedef uint my_hash_value_type; >typedef uchar *(*my_hash_get_key)(const uchar *,size_t*,my_bool); >typedef void (*my_hash_free_key)(void *); > > > > > > >typedef my_hash_value_type (*my_hash_function)(const struct st_hash *, > const uchar *, > size_t); > >typedef struct st_hash { > size_t key_offset,key_length; > size_t blength; > ulong records; > uint flags; > DYNAMIC_ARRAY array; > my_hash_get_key get_key; > void (*free)(void *); > CHARSET_INFO *charset; > my_hash_function hash_function; >} HASH; > > >typedef uint HASH_SEARCH_STATE; > > > > > > > >my_bool _my_hash_init(HASH *hash, uint growth_size, CHARSET_INFO *charset, > my_hash_function hash_function, > ulong default_array_elements, size_t key_offset, > size_t key_length, my_hash_get_key get_key, > void (*free_element)(void*), > uint flags); >void my_hash_free(HASH *tree); >void my_hash_reset(HASH *hash); >uchar *my_hash_element(HASH *hash, ulong idx); >uchar *my_hash_search(const HASH *info, const uchar *key, size_t length); >uchar *my_hash_search_using_hash_value(const HASH *info, > my_hash_value_type hash_value, > const uchar *key, size_t length); >my_hash_value_type my_calc_hash(const HASH *info, > const uchar *key, size_t length); >uchar *my_hash_first(const HASH *info, const uchar *key, size_t length, > HASH_SEARCH_STATE *state); >uchar *my_hash_first_from_hash_value(const HASH *info, > my_hash_value_type hash_value, > const uchar *key, > size_t length, > HASH_SEARCH_STATE *state); >uchar *my_hash_next(const HASH *info, const uchar *key, size_t length, > HASH_SEARCH_STATE *state); >my_bool my_hash_insert(HASH *info, const uchar *data); >my_bool my_hash_delete(HASH *hash, uchar *record); >my_bool my_hash_update(HASH *hash, uchar *record, uchar *old_key, > size_t old_key_length); >void my_hash_replace(HASH *hash, HASH_SEARCH_STATE *state, uchar *new_row); >my_bool my_hash_check(HASH *hash); > > > > > > > >} ># 220 "../../../include/lf.h" 2 > >extern "C" { > > > > >extern const int LF_HASH_OVERHEAD; > >typedef struct { > LF_DYNARRAY array; > LF_ALLOCATOR alloc; > my_hash_get_key get_key; > CHARSET_INFO *charset; > uint key_offset, key_length; > uint element_size; > uint flags; > int32 volatile size; > int32 volatile count; >} LF_HASH; > >void lf_hash_init(LF_HASH *hash, uint element_size, uint flags, > uint key_offset, uint key_length, my_hash_get_key get_key, > CHARSET_INFO *charset); >void lf_hash_destroy(LF_HASH *hash); >int lf_hash_insert(LF_HASH *hash, LF_PINS *pins, const void *data); >void *lf_hash_search(LF_HASH *hash, LF_PINS *pins, const void *key, uint keylen); >int lf_hash_delete(LF_HASH *hash, LF_PINS *pins, const void *key, uint keylen); ># 265 "../../../include/lf.h" >} ># 22 "../../../storage/perfschema/pfs_instr_class.h" 2 ># 1 "../../../storage/perfschema/pfs_global.h" 1 ># 28 "../../../storage/perfschema/pfs_global.h" >extern bool pfs_initialized; > >extern size_t pfs_allocated_memory; ># 44 "../../../storage/perfschema/pfs_global.h" >void *pfs_malloc(size_t size, myf flags); ># 56 "../../../storage/perfschema/pfs_global.h" >void pfs_free(void *ptr); > > >uint pfs_get_socket_address(char *host, > uint host_len, > uint *port, > const struct sockaddr_storage *src_addr, > socklen_t src_len); > > > > > > > >inline uint randomized_index(const void *ptr, uint max_size) >{ > static uint seed1= 0; > static uint seed2= 0; > uint result; > register intptr value; > > if (__builtin_expect((max_size == 0),0)) > return 0; ># 106 "../../../storage/perfschema/pfs_global.h" > value= (reinterpret_cast<intptr> (ptr)) >> 3; > value*= 1789; > value+= seed2 + seed1 + 1; > > result= (static_cast<uint> (value)) % max_size; > > seed2= seed1*seed1; > seed1= result; > > do { } while(0); > return result; >} > >void pfs_print_error(const char *format, ...); ># 23 "../../../storage/perfschema/pfs_instr_class.h" 2 ># 49 "../../../storage/perfschema/pfs_instr_class.h" ># 1 "../../../storage/perfschema/pfs_column_types.h" 1 ># 68 "../../../storage/perfschema/pfs_column_types.h" >enum enum_timer_name >{ > TIMER_NAME_CYCLE= 1, > TIMER_NAME_NANOSEC= 2, > TIMER_NAME_MICROSEC= 3, > TIMER_NAME_MILLISEC= 4, > TIMER_NAME_TICK= 5 >}; ># 91 "../../../storage/perfschema/pfs_column_types.h" >enum enum_yes_no >{ > ENUM_YES= 1, > ENUM_NO= 2 >}; ># 104 "../../../storage/perfschema/pfs_column_types.h" >enum enum_operation_type >{ > > OPERATION_TYPE_LOCK= 1, > OPERATION_TYPE_TRYLOCK= 2, > > > OPERATION_TYPE_READLOCK= 3, > OPERATION_TYPE_WRITELOCK= 4, > OPERATION_TYPE_TRYREADLOCK= 5, > OPERATION_TYPE_TRYWRITELOCK= 6, > > > OPERATION_TYPE_WAIT= 7, > OPERATION_TYPE_TIMEDWAIT= 8, > > > OPERATION_TYPE_FILECREATE= 9, > OPERATION_TYPE_FILECREATETMP= 10, > OPERATION_TYPE_FILEOPEN= 11, > OPERATION_TYPE_FILESTREAMOPEN= 12, > OPERATION_TYPE_FILECLOSE= 13, > OPERATION_TYPE_FILESTREAMCLOSE= 14, > OPERATION_TYPE_FILEREAD= 15, > OPERATION_TYPE_FILEWRITE= 16, > OPERATION_TYPE_FILESEEK= 17, > OPERATION_TYPE_FILETELL= 18, > OPERATION_TYPE_FILEFLUSH= 19, > OPERATION_TYPE_FILESTAT= 20, > OPERATION_TYPE_FILEFSTAT= 21, > OPERATION_TYPE_FILECHSIZE= 22, > OPERATION_TYPE_FILEDELETE= 23, > OPERATION_TYPE_FILERENAME= 24, > OPERATION_TYPE_FILESYNC= 25, > > > OPERATION_TYPE_TABLE_FETCH= 26, > OPERATION_TYPE_TABLE_WRITE_ROW= 27, > OPERATION_TYPE_TABLE_UPDATE_ROW= 28, > OPERATION_TYPE_TABLE_DELETE_ROW= 29, > > > OPERATION_TYPE_TL_READ_NORMAL= 30, > OPERATION_TYPE_TL_READ_WITH_SHARED_LOCKS= 31, > OPERATION_TYPE_TL_READ_HIGH_PRIORITY= 32, > OPERATION_TYPE_TL_READ_NO_INSERTS= 33, > OPERATION_TYPE_TL_WRITE_ALLOW_WRITE= 34, > OPERATION_TYPE_TL_WRITE_CONCURRENT_INSERT= 35, > OPERATION_TYPE_TL_WRITE_DELAYED= 36, > OPERATION_TYPE_TL_WRITE_LOW_PRIORITY= 37, > OPERATION_TYPE_TL_WRITE_NORMAL= 38, > OPERATION_TYPE_TL_READ_EXTERNAL= 39, > OPERATION_TYPE_TL_WRITE_EXTERNAL= 40, > > > OPERATION_TYPE_SOCKETCREATE = 41, > OPERATION_TYPE_SOCKETCONNECT = 42, > OPERATION_TYPE_SOCKETBIND = 43, > OPERATION_TYPE_SOCKETCLOSE = 44, > OPERATION_TYPE_SOCKETSEND = 45, > OPERATION_TYPE_SOCKETRECV = 46, > OPERATION_TYPE_SOCKETSENDTO = 47, > OPERATION_TYPE_SOCKETRECVFROM = 48, > OPERATION_TYPE_SOCKETSENDMSG = 49, > OPERATION_TYPE_SOCKETRECVMSG = 50, > OPERATION_TYPE_SOCKETSEEK = 51, > OPERATION_TYPE_SOCKETOPT = 52, > OPERATION_TYPE_SOCKETSTAT = 53, > OPERATION_TYPE_SOCKETSHUTDOWN = 54, > OPERATION_TYPE_SOCKETSELECT = 55, > > > OPERATION_TYPE_IDLE= 56 >}; ># 188 "../../../storage/perfschema/pfs_column_types.h" >enum enum_object_type >{ > OBJECT_TYPE_TABLE= 1, > OBJECT_TYPE_TEMPORARY_TABLE= 2 >}; ># 207 "../../../storage/perfschema/pfs_column_types.h" >enum enum_event_type >{ > EVENT_TYPE_STATEMENT= 1, > EVENT_TYPE_STAGE= 2, > EVENT_TYPE_WAIT= 3 >}; ># 50 "../../../storage/perfschema/pfs_instr_class.h" 2 > >struct PFS_global_param; > > > > > > >extern my_bool pfs_enabled; >extern enum_timer_name *class_timers[]; > > >typedef unsigned int PFS_sync_key; > >typedef unsigned int PFS_thread_key; > >typedef unsigned int PFS_file_key; > >typedef unsigned int PFS_stage_key; > >typedef unsigned int PFS_statement_key; > >typedef unsigned int PFS_socket_key; > >enum PFS_class_type >{ > PFS_CLASS_NONE= 0, > PFS_CLASS_MUTEX= 1, > PFS_CLASS_RWLOCK= 2, > PFS_CLASS_COND= 3, > PFS_CLASS_FILE= 4, > PFS_CLASS_TABLE= 5, > PFS_CLASS_STAGE= 6, > PFS_CLASS_STATEMENT= 7, > PFS_CLASS_SOCKET= 8, > PFS_CLASS_TABLE_IO= 9, > PFS_CLASS_TABLE_LOCK= 10, > PFS_CLASS_IDLE= 11, > PFS_CLASS_LAST= PFS_CLASS_IDLE, > PFS_CLASS_MAX= PFS_CLASS_LAST + 1 >}; > > >struct PFS_instr_config >{ > > char *m_name; > > uint m_name_length; > > bool m_enabled; > > bool m_timed; >}; > >extern DYNAMIC_ARRAY pfs_instr_config_array; >extern int pfs_instr_config_state; > >static const int PFS_INSTR_CONFIG_NOT_INITIALIZED= 0; >static const int PFS_INSTR_CONFIG_ALLOCATED= 1; >static const int PFS_INSTR_CONFIG_DEALLOCATED= 2; > >struct PFS_thread; > >extern uint mutex_class_start; >extern uint rwlock_class_start; >extern uint cond_class_start; >extern uint file_class_start; >extern uint socket_class_start; >extern uint wait_class_max; > > >struct PFS_instr_class >{ > > PFS_class_type m_type; > > bool m_enabled; > > bool m_timed; > > int m_flags; > > > > > > > > uint m_event_name_index; > > char m_name[128]; > > uint m_name_length; > > enum_timer_name *m_timer; > > bool is_singleton() const > { > return m_flags & (1 << 0); > } > > bool is_mutable() const > { > return m_flags & (1 << 1); > } > > static void set_enabled(PFS_instr_class *pfs, bool enabled); > static void set_timed(PFS_instr_class *pfs, bool timed); > > bool is_deferred() const > { > switch(m_type) > { > case PFS_CLASS_SOCKET: > return true; > break; > default: > return false; > break; > }; > } >}; > >struct PFS_mutex; > > >struct __attribute__((__aligned__((64)))) PFS_mutex_class : public PFS_instr_class >{ > > PFS_mutex_stat m_mutex_stat; > > PFS_mutex *m_singleton; >}; > >struct PFS_rwlock; > > >struct __attribute__((__aligned__((64)))) PFS_rwlock_class : public PFS_instr_class >{ > > PFS_rwlock_stat m_rwlock_stat; > > PFS_rwlock *m_singleton; >}; > >struct PFS_cond; > > >struct __attribute__((__aligned__((64)))) PFS_cond_class : public PFS_instr_class >{ > > > > > PFS_cond_stat m_cond_stat; > > PFS_cond *m_singleton; >}; > > >struct __attribute__((__aligned__((64)))) PFS_thread_class >{ > > bool m_enabled; > > PFS_thread *m_singleton; > > char m_name[128]; > > uint m_name_length; >}; > > >struct PFS_table_share_key >{ > > > > > > > char m_hash_key[1 + (64*3) + 1 + (64*3) + 1]; > > uint m_key_length; >}; > > >struct PFS_table_key >{ > > char m_name[(64*3)]; > > uint m_name_length; >}; > > >struct __attribute__((__aligned__((64)))) PFS_table_share >{ >public: > uint32 get_version() > { return m_lock.get_version(); } > > enum_object_type get_object_type() > { > return (enum_object_type) m_key.m_hash_key[0]; > } > > void aggregate_io(void); > void aggregate_lock(void); > > inline void aggregate(void) > { > aggregate_io(); > aggregate_lock(); > } > > inline void init_refcount(void) > { > PFS_atomic::store_32(& m_refcount, 1); > } > > inline int get_refcount(void) > { > return PFS_atomic::load_32(& m_refcount); > } > > inline void inc_refcount(void) > { > PFS_atomic::add_32(& m_refcount, 1); > } > > inline void dec_refcount(void) > { > PFS_atomic::add_32(& m_refcount, -1); > } > > void refresh_setup_object_flags(PFS_thread *thread); > > > pfs_lock m_lock; > > > > > bool m_enabled; > > > > > bool m_timed; > > PFS_table_share_key m_key; > > const char *m_schema_name; > > uint m_schema_name_length; > > const char *m_table_name; > > uint m_table_name_length; > > uint m_key_count; > > PFS_table_stat m_table_stat; > > PFS_table_key m_keys[64U]; > >private: > > int m_refcount; >}; > > >extern PFS_single_stat global_idle_stat; > >extern PFS_table_io_stat global_table_io_stat; > >extern PFS_table_lock_stat global_table_lock_stat; > >inline uint sanitize_index_count(uint count) >{ > if (__builtin_expect((count <= 64U),1)) > return count; > return 0; >} ># 345 "../../../storage/perfschema/pfs_instr_class.h" >extern PFS_instr_class global_table_io_class; > > > > > >extern PFS_instr_class global_table_lock_class; > > > > >extern PFS_instr_class global_idle_class; > >struct PFS_file; > > >struct __attribute__((__aligned__((64)))) PFS_file_class : public PFS_instr_class >{ > > PFS_file_stat m_file_stat; > > PFS_file *m_singleton; >}; > > >struct __attribute__((__aligned__((64)))) PFS_stage_class : public PFS_instr_class >{ > > > > > uint m_prefix_length; > > PFS_stage_stat m_stage_stat; >}; > > >struct __attribute__((__aligned__((64)))) PFS_statement_class : public PFS_instr_class >{ >}; > >struct PFS_socket; > > >struct __attribute__((__aligned__((64)))) PFS_socket_class : public PFS_instr_class >{ > > PFS_socket_stat m_socket_stat; > > PFS_socket *m_singleton; >}; > >void init_event_name_sizing(const PFS_global_param *param); > >void register_global_classes(); > >int init_sync_class(uint mutex_class_sizing, > uint rwlock_class_sizing, > uint cond_class_sizing); > >void cleanup_sync_class(); >int init_thread_class(uint thread_class_sizing); >void cleanup_thread_class(); >int init_table_share(uint table_share_sizing); >void cleanup_table_share(); >int init_table_share_hash(); >void cleanup_table_share_hash(); >int init_file_class(uint file_class_sizing); >void cleanup_file_class(); >int init_stage_class(uint stage_class_sizing); >void cleanup_stage_class(); >int init_statement_class(uint statement_class_sizing); >void cleanup_statement_class(); >int init_socket_class(uint socket_class_sizing); >void cleanup_socket_class(); > >PFS_sync_key register_mutex_class(const char *name, uint name_length, > int flags); > >PFS_sync_key register_rwlock_class(const char *name, uint name_length, > int flags); > >PFS_sync_key register_cond_class(const char *name, uint name_length, > int flags); > >PFS_thread_key register_thread_class(const char *name, uint name_length, > int flags); > >PFS_file_key register_file_class(const char *name, uint name_length, > int flags); > >PFS_stage_key register_stage_class(const char *name, > uint prefix_length, > uint name_length, > int flags); > >PFS_statement_key register_statement_class(const char *name, uint name_length, > int flags); > >PFS_socket_key register_socket_class(const char *name, uint name_length, > int flags); > >PFS_mutex_class *find_mutex_class(PSI_mutex_key key); >PFS_mutex_class *sanitize_mutex_class(PFS_mutex_class *unsafe); >PFS_rwlock_class *find_rwlock_class(PSI_rwlock_key key); >PFS_rwlock_class *sanitize_rwlock_class(PFS_rwlock_class *unsafe); >PFS_cond_class *find_cond_class(PSI_cond_key key); >PFS_cond_class *sanitize_cond_class(PFS_cond_class *unsafe); >PFS_thread_class *find_thread_class(PSI_thread_key key); >PFS_thread_class *sanitize_thread_class(PFS_thread_class *unsafe); >PFS_file_class *find_file_class(PSI_file_key key); >PFS_file_class *sanitize_file_class(PFS_file_class *unsafe); >PFS_stage_class *find_stage_class(PSI_stage_key key); >PFS_stage_class *sanitize_stage_class(PFS_stage_class *unsafe); >PFS_statement_class *find_statement_class(PSI_statement_key key); >PFS_statement_class *sanitize_statement_class(PFS_statement_class *unsafe); >PFS_instr_class *find_table_class(uint index); >PFS_instr_class *sanitize_table_class(PFS_instr_class *unsafe); >PFS_socket_class *find_socket_class(PSI_socket_key key); >PFS_socket_class *sanitize_socket_class(PFS_socket_class *unsafe); >PFS_instr_class *find_idle_class(uint index); >PFS_instr_class *sanitize_idle_class(PFS_instr_class *unsafe); > >PFS_table_share *find_or_create_table_share(PFS_thread *thread, > bool temporary, > const TABLE_SHARE *share); >void release_table_share(PFS_table_share *pfs); >void drop_table_share(PFS_thread *thread, > bool temporary, > const char *schema_name, uint schema_name_length, > const char *table_name, uint table_name_length); > >PFS_table_share *sanitize_table_share(PFS_table_share *unsafe); > >extern ulong mutex_class_max; >extern ulong mutex_class_lost; >extern ulong rwlock_class_max; >extern ulong rwlock_class_lost; >extern ulong cond_class_max; >extern ulong cond_class_lost; >extern ulong thread_class_max; >extern ulong thread_class_lost; >extern ulong file_class_max; >extern ulong file_class_lost; >extern ulong stage_class_max; >extern ulong stage_class_lost; >extern ulong statement_class_max; >extern ulong statement_class_lost; >extern ulong socket_class_max; >extern ulong socket_class_lost; >extern ulong table_share_max; >extern ulong table_share_lost; > > > >extern PFS_mutex_class *mutex_class_array; >extern PFS_rwlock_class *rwlock_class_array; >extern PFS_cond_class *cond_class_array; >extern PFS_file_class *file_class_array; >extern PFS_table_share *table_share_array; > >void reset_events_waits_by_class(); >void reset_file_class_io(); >void reset_socket_class_io(); > > >void update_table_share_derived_flags(PFS_thread *thread); > >extern LF_HASH table_share_hash; ># 42 "../../../storage/perfschema/pfs_instr.h" 2 ># 1 "../../../storage/perfschema/pfs_events_waits.h" 1 ># 26 "../../../storage/perfschema/pfs_events_waits.h" ># 1 "../../../storage/perfschema/pfs_events.h" 1 ># 26 "../../../storage/perfschema/pfs_events.h" >struct PFS_instr_class; > > >struct PFS_events >{ > > ulonglong m_thread_internal_id; > > ulonglong m_event_id; > > ulonglong m_end_event_id; > > enum_event_type m_event_type; > > ulonglong m_nesting_event_id; > > enum_event_type m_nesting_event_type; > > PFS_instr_class *m_class; > > > > > ulonglong m_timer_start; > > > > > ulonglong m_timer_end; > > const char *m_source_file; > > uint m_source_line; >}; ># 27 "../../../storage/perfschema/pfs_events_waits.h" 2 > >struct PFS_mutex; >struct PFS_rwlock; >struct PFS_cond; >struct PFS_table; >struct PFS_file; >struct PFS_thread; >struct PFS_socket; >struct PFS_instr_class; >struct PFS_table_share; >struct PFS_account; >struct PFS_user; >struct PFS_host; > > >enum events_waits_class >{ > NO_WAIT_CLASS= 0, > WAIT_CLASS_MUTEX, > WAIT_CLASS_RWLOCK, > WAIT_CLASS_COND, > WAIT_CLASS_TABLE, > WAIT_CLASS_FILE, > WAIT_CLASS_SOCKET, > WAIT_CLASS_IDLE >}; > > >struct PFS_events_waits : public PFS_events >{ ># 68 "../../../storage/perfschema/pfs_events_waits.h" > events_waits_class m_wait_class; > > PFS_thread *m_thread; > > enum_object_type m_object_type; > > PFS_table_share *m_weak_table_share; > > PFS_file *m_weak_file; > > PFS_socket *m_weak_socket; > > uint32 m_weak_version; > > const void *m_object_instance_addr; > > enum_operation_type m_operation; > > > > > size_t m_number_of_bytes; > > > > > uint m_index; > > ulong m_flags; >}; ># 108 "../../../storage/perfschema/pfs_events_waits.h" >void insert_events_waits_history(PFS_thread *thread, PFS_events_waits *wait); > >void insert_events_waits_history_long(PFS_events_waits *wait); > >extern bool flag_events_waits_current; >extern bool flag_events_waits_history; >extern bool flag_events_waits_history_long; >extern bool flag_global_instrumentation; >extern bool flag_thread_instrumentation; > >extern bool events_waits_history_long_full; >extern volatile uint32 events_waits_history_long_index; >extern PFS_events_waits *events_waits_history_long_array; >extern ulong events_waits_history_long_size; > >int init_events_waits_history_long(uint events_waits_history_long_sizing); >void cleanup_events_waits_history_long(); > >void reset_events_waits_current(); >void reset_events_waits_history(); >void reset_events_waits_history_long(); >void reset_events_waits_by_thread(); >void reset_events_waits_by_account(); >void reset_events_waits_by_user(); >void reset_events_waits_by_host(); >void reset_events_waits_global(); >void aggregate_account_waits(PFS_account *account); >void aggregate_user_waits(PFS_user *user); >void aggregate_host_waits(PFS_host *host); > >void reset_table_waits_by_table(); >void reset_table_io_waits_by_table(); >void reset_table_lock_waits_by_table(); >void reset_table_waits_by_table_handle(); >void reset_table_io_waits_by_table_handle(); >void reset_table_lock_waits_by_table_handle(); ># 43 "../../../storage/perfschema/pfs_instr.h" 2 ># 1 "../../../storage/perfschema/pfs_events_stages.h" 1 ># 26 "../../../storage/perfschema/pfs_events_stages.h" >struct PFS_thread; >struct PFS_account; >struct PFS_user; >struct PFS_host; > > >struct PFS_events_stages : public PFS_events >{ > >}; > >void insert_events_stages_history(PFS_thread *thread, PFS_events_stages *stage); >void insert_events_stages_history_long(PFS_events_stages *stage); > >extern bool flag_events_stages_current; >extern bool flag_events_stages_history; >extern bool flag_events_stages_history_long; > >extern bool events_stages_history_long_full; >extern volatile uint32 events_stages_history_long_index; >extern PFS_events_stages *events_stages_history_long_array; >extern ulong events_stages_history_long_size; > >int init_events_stages_history_long(uint events_stages_history_long_sizing); >void cleanup_events_stages_history_long(); > >void reset_events_stages_current(); >void reset_events_stages_history(); >void reset_events_stages_history_long(); >void reset_events_stages_by_thread(); >void reset_events_stages_by_account(); >void reset_events_stages_by_user(); >void reset_events_stages_by_host(); >void reset_events_stages_global(); >void aggregate_account_stages(PFS_account *account); >void aggregate_user_stages(PFS_user *user); >void aggregate_host_stages(PFS_host *host); ># 44 "../../../storage/perfschema/pfs_instr.h" 2 ># 1 "../../../storage/perfschema/pfs_events_statements.h" 1 ># 26 "../../../storage/perfschema/pfs_events_statements.h" ># 1 "../../../storage/perfschema/pfs_digest.h" 1 ># 30 "../../../storage/perfschema/pfs_digest.h" >extern bool flag_statements_digest; >extern ulong digest_max; >extern ulong digest_lost; >struct PFS_thread; > > > > > > > >struct PFS_digest_key >{ > unsigned char m_md5[16]; > char m_schema_name[(64*3)]; > uint m_schema_name_length; >}; > > >struct __attribute__((__aligned__((64)))) PFS_statements_digest_stat >{ > > PFS_digest_key m_digest_key; > > > PSI_digest_storage m_digest_storage; > > > PFS_statement_stat m_stat; > > > ulonglong m_first_seen; > ulonglong m_last_seen; > > > void reset_data(); > > void reset_index(PFS_thread *thread); >}; > >int init_digest(const PFS_global_param *param); >void cleanup_digest(); > >int init_digest_hash(void); >void cleanup_digest_hash(void); >PFS_statement_stat* find_or_create_digest(PFS_thread *thread, > PSI_digest_storage *digest_storage, > const char *schema_name, > uint schema_name_length); > >void get_digest_text(char *digest_text, PSI_digest_storage *digest_storage); > >void reset_esms_by_digest(); > > >extern PFS_statements_digest_stat *statements_digest_stat_array; > > > >struct PSI_digest_locker *pfs_digest_start_v1(PSI_statement_locker *locker); >PSI_digest_locker *pfs_digest_add_token_v1(PSI_digest_locker *locker, > uint token, > OPAQUE_LEX_YYSTYPE *yylval); > >static inline void digest_reset(PSI_digest_storage *digest) >{ > digest->m_full= false; > digest->m_byte_count= 0; > digest->m_charset_number= 0; >} > >static inline void digest_copy(PSI_digest_storage *to, const PSI_digest_storage *from) >{ > if (from->m_byte_count > 0) > { > to->m_full= from->m_full; > to->m_byte_count= from->m_byte_count; > to->m_charset_number= from->m_charset_number; > do { } while(0); > memcpy(to->m_token_array, from->m_token_array, to->m_byte_count); > } > else > { > do { } while(0); > to->m_full= false; > to->m_byte_count= 0; > to->m_charset_number= 0; > } >} > > > > >inline int read_token(PSI_digest_storage *digest_storage, > int index, uint *tok) >{ > int safe_byte_count= digest_storage->m_byte_count; > > if (index + 2 <= safe_byte_count && > safe_byte_count <= 1024) > { > unsigned char *src= & digest_storage->m_token_array[index]; > *tok= src[0] | (src[1] << 8); > return index + 2; > } > > > *tok= 0; > return 1024 + 1; >} > > > > >inline void store_token(PSI_digest_storage* digest_storage, uint token) >{ > do { } while(0); > do { } while(0); > > if (digest_storage->m_byte_count + 2 <= 1024) > { > unsigned char* dest= & digest_storage->m_token_array[digest_storage->m_byte_count]; > dest[0]= token & 0xff; > dest[1]= (token >> 8) & 0xff; > digest_storage->m_byte_count+= 2; > } > else > { > digest_storage->m_full= true; > } >} > > > > >inline int read_identifier(PSI_digest_storage* digest_storage, > int index, char ** id_string, int *id_length) >{ > int new_index; > do { } while(0); > do { } while(0); > > > > > > unsigned char *src= & digest_storage->m_token_array[index]; > uint length= src[0] | (src[1] << 8); > *id_string= (char *) (src + 2); > *id_length= length; > > new_index= index + 2 + length; > do { } while(0); > return new_index; >} > > > > >inline void store_token_identifier(PSI_digest_storage* digest_storage, > uint token, > uint id_length, const char *id_name) >{ > do { } while(0); > do { } while(0); > > uint bytes_needed= 2 * 2 + id_length; > if (digest_storage->m_byte_count + bytes_needed <= 1024) > { > unsigned char* dest= & digest_storage->m_token_array[digest_storage->m_byte_count]; > > dest[0]= token & 0xff; > dest[1]= (token >> 8) & 0xff; > > dest[2]= id_length & 0xff; > dest[3]= (id_length >> 8) & 0xff; > > if (id_length > 0) > memcpy((char *)(dest + 4), id_name, id_length); > digest_storage->m_byte_count+= bytes_needed; > } > else > { > digest_storage->m_full= true; > } >} > >extern LF_HASH digest_hash; ># 27 "../../../storage/perfschema/pfs_events_statements.h" 2 > >struct PFS_thread; >struct PFS_account; >struct PFS_user; >struct PFS_host; > > >struct PFS_events_statements : public PFS_events >{ > > char m_current_schema_name[(64*3)]; > > uint m_current_schema_name_length; > > char m_sqltext[1024]; > > uint m_sqltext_length; > > > ulonglong m_lock_time; > > > char m_message_text[512 +1]; > > uint m_sql_errno; > > char m_sqlstate[5]; > > uint m_error_count; > > uint m_warning_count; > > ulonglong m_rows_affected; > > > ulonglong m_rows_sent; > > ulonglong m_rows_examined; > > ulonglong m_created_tmp_disk_tables; > > ulonglong m_created_tmp_tables; > > ulonglong m_select_full_join; > > ulonglong m_select_full_range_join; > > ulonglong m_select_range; > > ulonglong m_select_range_check; > > ulonglong m_select_scan; > > ulonglong m_sort_merge_passes; > > ulonglong m_sort_range; > > ulonglong m_sort_rows; > > ulonglong m_sort_scan; > > ulonglong m_no_index_used; > > ulonglong m_no_good_index_used; > > PSI_digest_storage m_digest_storage; >}; > >void insert_events_statements_history(PFS_thread *thread, PFS_events_statements *statement); >void insert_events_statements_history_long(PFS_events_statements *statement); > >extern bool flag_events_statements_current; >extern bool flag_events_statements_history; >extern bool flag_events_statements_history_long; > >extern bool events_statements_history_long_full; >extern volatile uint32 events_statements_history_long_index; >extern PFS_events_statements *events_statements_history_long_array; >extern ulong events_statements_history_long_size; > >int init_events_statements_history_long(uint events_statements_history_long_sizing); >void cleanup_events_statements_history_long(); > >void reset_events_statements_current(); >void reset_events_statements_history(); >void reset_events_statements_history_long(); >void reset_events_statements_by_thread(); >void reset_events_statements_by_account(); >void reset_events_statements_by_user(); >void reset_events_statements_by_host(); >void reset_events_statements_global(); >void aggregate_account_statements(PFS_account *account); >void aggregate_user_statements(PFS_user *user); >void aggregate_host_statements(PFS_host *host); ># 45 "../../../storage/perfschema/pfs_instr.h" 2 ># 1 "../../../storage/perfschema/pfs_server.h" 1 ># 58 "../../../storage/perfschema/pfs_server.h" >struct PFS_sizing_hints >{ > long m_table_definition_cache; > long m_table_open_cache; > long m_max_connections; > long m_open_files_limit; >}; > > >struct PFS_global_param >{ > > bool m_enabled; > > bool m_consumer_events_stages_current_enabled; > bool m_consumer_events_stages_history_enabled; > bool m_consumer_events_stages_history_long_enabled; > bool m_consumer_events_statements_current_enabled; > bool m_consumer_events_statements_history_enabled; > bool m_consumer_events_statements_history_long_enabled; > bool m_consumer_events_waits_current_enabled; > bool m_consumer_events_waits_history_enabled; > bool m_consumer_events_waits_history_long_enabled; > bool m_consumer_global_instrumentation_enabled; > bool m_consumer_thread_instrumentation_enabled; > bool m_consumer_statement_digest_enabled; > > > char *m_pfs_instrument; > > > > > > ulong m_mutex_class_sizing; > > > > > ulong m_rwlock_class_sizing; > > > > > ulong m_cond_class_sizing; > > > > > ulong m_thread_class_sizing; > > > > > long m_table_share_sizing; > > > > > ulong m_file_class_sizing; > > > > > long m_mutex_sizing; > > > > > long m_rwlock_sizing; > > > > > long m_cond_sizing; > > > > > long m_thread_sizing; > > > > > long m_table_sizing; > > > > > long m_file_sizing; > > > > > long m_file_handle_sizing; > > > > > long m_socket_sizing; > > > > > ulong m_socket_class_sizing; > > long m_events_waits_history_sizing; > > long m_events_waits_history_long_sizing; > > ulong m_setup_actor_sizing; > > ulong m_setup_object_sizing; > > long m_host_sizing; > > long m_user_sizing; > > long m_account_sizing; > > > > > ulong m_stage_class_sizing; > > long m_events_stages_history_sizing; > > long m_events_stages_history_long_sizing; > > > > > ulong m_statement_class_sizing; > > long m_events_statements_history_sizing; > > long m_events_statements_history_long_sizing; > > long m_digest_sizing; > > long m_session_connect_attrs_sizing; > > > PFS_sizing_hints m_hints; >}; > > > > > >extern PFS_global_param pfs_param; > > > > > > >struct PSI_bootstrap* >initialize_performance_schema(PFS_global_param *param); > >void pfs_automated_sizing(PFS_global_param *param); ># 229 "../../../storage/perfschema/pfs_server.h" >void initialize_performance_schema_acl(bool bootstrap); > >void check_performance_schema(); > > > > > >void init_pfs_instrument_array(); > > > > >int add_pfs_instr_to_array(const char* name, const char* value); > > > > >void shutdown_performance_schema(); ># 46 "../../../storage/perfschema/pfs_instr.h" 2 > ># 1 "../../../storage/perfschema/pfs_con_slice.h" 1 ># 27 "../../../storage/perfschema/pfs_con_slice.h" >struct PFS_single_stat; >struct PFS_stage_stat; >struct PFS_statement_stat; ># 40 "../../../storage/perfschema/pfs_con_slice.h" >struct PFS_connection_slice >{ > > > > > > static PFS_single_stat *alloc_waits_slice(uint sizing); > > > > > > static PFS_stage_stat *alloc_stages_slice(uint sizing); > > > > > > static PFS_statement_stat *alloc_statements_slice(uint sizing); > > > inline void reset_stats() > { > reset_waits_stats(); > reset_stages_stats(); > reset_statements_stats(); > } > > > void reset_waits_stats(); > > void reset_stages_stats(); > > void reset_statements_stats(); > > > > > > > > PFS_single_stat *m_instr_class_waits_stats; > > > > > > > > PFS_stage_stat *m_instr_class_stages_stats; > > > > > > > > PFS_statement_stat *m_instr_class_statements_stats; >}; ># 48 "../../../storage/perfschema/pfs_instr.h" 2 > > > > > > >struct PFS_thread; >struct PFS_host; >struct PFS_user; >struct PFS_account; > > >struct PFS_instr >{ > > pfs_lock m_lock; > > bool m_enabled; > > bool m_timed; >}; > > >struct __attribute__((__aligned__((64)))) PFS_mutex : public PFS_instr >{ > > const void *m_identity; > > PFS_mutex_class *m_class; > > PFS_mutex_stat m_mutex_stat; > > PFS_thread *m_owner; > > > > > ulonglong m_last_locked; >}; > > >struct __attribute__((__aligned__((64)))) PFS_rwlock : public PFS_instr >{ > > const void *m_identity; > > PFS_rwlock_class *m_class; > > PFS_rwlock_stat m_rwlock_stat; > > PFS_thread *m_writer; > > uint m_readers; > > > > > ulonglong m_last_written; > > > > > ulonglong m_last_read; >}; > > >struct __attribute__((__aligned__((64)))) PFS_cond : public PFS_instr >{ > > const void *m_identity; > > PFS_cond_class *m_class; > > PFS_single_stat m_wait_stat; > > PFS_cond_stat m_cond_stat; >}; > > >struct __attribute__((__aligned__((64)))) PFS_file : public PFS_instr >{ > uint32 get_version() > { return m_lock.get_version(); } > > > const void *m_identity; > > char m_filename[512]; > > uint m_filename_length; > > PFS_file_class *m_class; > > PFS_file_stat m_file_stat; >}; > > >struct __attribute__((__aligned__((64)))) PFS_table >{ > > > > > bool m_io_enabled; > > > > > bool m_lock_enabled; > > > > > bool m_io_timed; > > > > > bool m_lock_timed; > > > bool m_has_io_stats; > > > bool m_has_lock_stats; > >public: > > > > > > void aggregate(void) > { > if (m_has_io_stats && m_has_lock_stats) > { > safe_aggregate(& m_table_stat, m_share); > m_has_io_stats= false; > m_has_lock_stats= false; > } > else if (m_has_io_stats) > { > safe_aggregate_io(& m_table_stat, m_share); > m_has_io_stats= false; > } > else if (m_has_lock_stats) > { > safe_aggregate_lock(& m_table_stat, m_share); > m_has_lock_stats= false; > } > } ># 207 "../../../storage/perfschema/pfs_instr.h" > void sanitized_aggregate(void); > > > > > > void sanitized_aggregate_io(void); > > > > > > void sanitized_aggregate_lock(void); > > > pfs_lock m_lock; > > PFS_thread *m_thread_owner; > > PFS_table_share *m_share; > > const void *m_identity; > > PFS_table_stat m_table_stat; > >private: > static void safe_aggregate(PFS_table_stat *stat, > PFS_table_share *safe_share); > static void safe_aggregate_io(PFS_table_stat *stat, > PFS_table_share *safe_share); > static void safe_aggregate_lock(PFS_table_stat *stat, > PFS_table_share *safe_share); >}; > > >struct __attribute__((__aligned__((64)))) PFS_socket : public PFS_instr >{ > uint32 get_version() > { return m_lock.get_version(); } > > > const void *m_identity; > > PFS_thread *m_thread_owner; > > uint m_fd; > > struct sockaddr_storage m_sock_addr; > > socklen_t m_addr_len; > > bool m_idle; > > PFS_socket_class *m_class; > > PFS_socket_stat m_socket_stat; >}; ># 300 "../../../storage/perfschema/pfs_instr.h" >extern uint statement_stack_max; ># 320 "../../../storage/perfschema/pfs_instr.h" >struct PFS_scan >{ >public: > > > > > > void init(uint random, uint max_size); > > > > > > bool has_pass() const > { return (m_pass < m_pass_max); } > > > > > void next_pass() > { m_pass++; } > > > uint first() const > { return m_first[m_pass]; } > > > uint last() const > { return m_last[m_pass]; } > >private: > > uint m_pass; > > uint m_pass_max; > > uint m_first[2]; > > uint m_last[2]; >}; > > > >struct __attribute__((__aligned__((64)))) PFS_thread : PFS_connection_slice >{ > static PFS_thread* get_current_thread(void); > > > bool m_enabled; > > PFS_events_waits *m_events_waits_current; > > ulonglong m_event_id; > > > > > > > > pfs_lock m_lock; > > LF_PINS *m_filename_hash_pins; > > LF_PINS *m_table_share_hash_pins; > > LF_PINS *m_setup_actor_hash_pins; > > LF_PINS *m_setup_object_hash_pins; > > LF_PINS *m_host_hash_pins; > > LF_PINS *m_user_hash_pins; > > LF_PINS *m_account_hash_pins; > > LF_PINS *m_digest_hash_pins; > > ulonglong m_thread_internal_id; > > ulonglong m_parent_thread_internal_id; > > ulong m_processlist_id; > > PFS_thread_class *m_class; ># 435 "../../../storage/perfschema/pfs_instr.h" > PFS_events_waits m_events_waits_stack[(1 + 5)]; > > bool m_waits_history_full; > > uint m_waits_history_index; > > > > > > PFS_events_waits *m_waits_history; > > > bool m_stages_history_full; > > uint m_stages_history_index; > > > > > > PFS_events_stages *m_stages_history; > > > bool m_statements_history_full; > > uint m_statements_history_index; > > > > > > PFS_events_statements *m_statements_history; > > > > > > > pfs_lock m_session_lock; > > > > > char m_username[(16*3)]; > > > > > uint m_username_length; > > > > > char m_hostname[60]; > > > > > uint m_hostname_length; > > > > > char m_dbname[(64*3)]; > > > > > uint m_dbname_length; > > int m_command; > > time_t m_start_time; > > > > > > pfs_lock m_stmt_lock; > > PFS_stage_key m_stage; > > > > > char m_processlist_info[1024]; > > > > > uint m_processlist_info_length; > > PFS_events_stages m_stage_current; > > > uint m_events_statements_count; > PFS_events_statements *m_statement_stack; > > PFS_host *m_host; > PFS_user *m_user; > PFS_account *m_account; > > > void reset_session_connect_attrs(); > > > > > > char *m_session_connect_attrs; > > > > > uint m_session_connect_attrs_length; > > > > > uint m_session_connect_attrs_cs_number; >}; > >extern PFS_stage_stat *global_instr_class_stages_array; >extern PFS_statement_stat *global_instr_class_statements_array; > >PFS_mutex *sanitize_mutex(PFS_mutex *unsafe); >PFS_rwlock *sanitize_rwlock(PFS_rwlock *unsafe); >PFS_cond *sanitize_cond(PFS_cond *unsafe); >PFS_thread *sanitize_thread(PFS_thread *unsafe); >PFS_file *sanitize_file(PFS_file *unsafe); >PFS_socket *sanitize_socket(PFS_socket *unsafe); > >int init_instruments(const PFS_global_param *param); >void cleanup_instruments(); >int init_file_hash(); >void cleanup_file_hash(); >PFS_mutex* create_mutex(PFS_mutex_class *mutex_class, const void *identity); >void destroy_mutex(PFS_mutex *pfs); >PFS_rwlock* create_rwlock(PFS_rwlock_class *klass, const void *identity); >void destroy_rwlock(PFS_rwlock *pfs); >PFS_cond* create_cond(PFS_cond_class *klass, const void *identity); >void destroy_cond(PFS_cond *pfs); > >PFS_thread* create_thread(PFS_thread_class *klass, const void *identity, > ulonglong processlist_id); > >void destroy_thread(PFS_thread *pfs); > >PFS_file* find_or_create_file(PFS_thread *thread, PFS_file_class *klass, > const char *filename, uint len, bool create); > >void release_file(PFS_file *pfs); >void destroy_file(PFS_thread *thread, PFS_file *pfs); >PFS_table* create_table(PFS_table_share *share, PFS_thread *opening_thread, > const void *identity); >void destroy_table(PFS_table *pfs); > >PFS_socket* create_socket(PFS_socket_class *socket_class, > const my_socket *fd, > const struct sockaddr *addr, > socklen_t addr_len); >void destroy_socket(PFS_socket *pfs); > > > >extern ulong mutex_max; >extern ulong mutex_lost; >extern ulong rwlock_max; >extern ulong rwlock_lost; >extern ulong cond_max; >extern ulong cond_lost; >extern ulong thread_max; >extern ulong thread_lost; >extern ulong file_max; >extern ulong file_lost; >extern long file_handle_max; >extern ulong file_handle_lost; >extern ulong table_max; >extern ulong table_lost; >extern ulong socket_max; >extern ulong socket_lost; >extern ulong events_waits_history_per_thread; >extern ulong events_stages_history_per_thread; >extern ulong events_statements_history_per_thread; >extern ulong locker_lost; >extern ulong statement_lost; >extern ulong session_connect_attrs_lost; >extern ulong session_connect_attrs_size_per_thread; > > > >extern PFS_mutex *mutex_array; >extern PFS_rwlock *rwlock_array; >extern PFS_cond *cond_array; >extern PFS_thread *thread_array; >extern PFS_file *file_array; >extern PFS_file **file_handle_array; >extern PFS_table *table_array; >extern PFS_socket *socket_array; > >void reset_events_waits_by_instance(); >void reset_file_instance_io(); >void reset_socket_instance_io(); > >void aggregate_all_event_names(PFS_single_stat *from_array, > PFS_single_stat *to_array); >void aggregate_all_event_names(PFS_single_stat *from_array, > PFS_single_stat *to_array_1, > PFS_single_stat *to_array_2); > >void aggregate_all_stages(PFS_stage_stat *from_array, > PFS_stage_stat *to_array); >void aggregate_all_stages(PFS_stage_stat *from_array, > PFS_stage_stat *to_array_1, > PFS_stage_stat *to_array_2); > >void aggregate_all_statements(PFS_statement_stat *from_array, > PFS_statement_stat *to_array); >void aggregate_all_statements(PFS_statement_stat *from_array, > PFS_statement_stat *to_array_1, > PFS_statement_stat *to_array_2); > >void aggregate_thread(PFS_thread *thread, > PFS_account *safe_account, > PFS_user *safe_user, > PFS_host *safe_host); >void aggregate_thread_waits(PFS_thread *thread, > PFS_account *safe_account, > PFS_user *safe_user, > PFS_host *safe_host); >void aggregate_thread_stages(PFS_thread *thread, > PFS_account *safe_account, > PFS_user *safe_user, > PFS_host *safe_host); >void aggregate_thread_statements(PFS_thread *thread, > PFS_account *safe_account, > PFS_user *safe_user, > PFS_host *safe_host); >void clear_thread_account(PFS_thread *thread); >void set_thread_account(PFS_thread *thread); > > >void update_mutex_derived_flags(); > >void update_rwlock_derived_flags(); > >void update_cond_derived_flags(); > >void update_file_derived_flags(); > >void update_table_derived_flags(); > >void update_socket_derived_flags(); > >void update_instruments_derived_flags(); > >extern LF_HASH filename_hash; ># 26 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../storage/perfschema/pfs_setup_actor.h" 1 ># 24 "../../../storage/perfschema/pfs_setup_actor.h" ># 1 "../../../sql/sql_string.h" 1 ># 23 "../../../sql/sql_string.h" ># 1 "../../../include/m_string.h" 1 ># 31 "../../../include/m_string.h" ># 1 "/usr/include/strings.h" 1 3 4 ># 32 "../../../include/m_string.h" 2 ># 56 "../../../include/m_string.h" >extern "C" { > > > > > > > >extern void *(*my_str_malloc)(size_t); >extern void *(*my_str_realloc)(void *, size_t); >extern void (*my_str_free)(void *); ># 78 "../../../include/m_string.h" >extern char _dig_vec_upper[]; >extern char _dig_vec_lower[]; ># 88 "../../../include/m_string.h" >extern void bmove_upp(uchar *dst,const uchar *src,size_t len); >extern void bchange(uchar *dst,size_t old_len,const uchar *src, > size_t new_len,size_t tot_len); >extern void strappend(char *s,size_t len,pchar fill); >extern char *strend(const char *s); >extern char *strcend(const char *, pchar); >extern char *strfill(char * s,size_t len,pchar fill); >extern char *strmake(char *dst,const char *src,size_t length); > > > > >extern char *strmov_overlapp(char *dst,const char *src); > >extern char *strnmov(char *dst, const char *src, size_t n); >extern char *strcont(const char *src, const char *set); >extern char *strxmov(char *dst, const char *src, ...); >extern char *strxnmov(char *dst, size_t len, const char *src, ...); > > > > > > >extern int is_prefix(const char *, const char *); > > >typedef enum { > MY_GCVT_ARG_FLOAT, > MY_GCVT_ARG_DOUBLE >} my_gcvt_arg_type; > >double my_strtod(const char *str, char **end, int *error); >double my_atof(const char *nptr); >size_t my_fcvt(double x, int precision, char *to, my_bool *error); >size_t my_gcvt(double x, my_gcvt_arg_type type, int width, char *to, > my_bool *error); ># 152 "../../../include/m_string.h" >extern char *llstr(longlong value,char *buff); >extern char *ullstr(longlong value,char *buff); > > > > > >extern char *int2str(long val, char *dst, int radix, int upcase); >extern char *int10_to_str(long val,char *dst,int radix); >extern char *str2int(const char *src,int radix,long lower,long upper, > long *val); >longlong my_strtoll10(const char *nptr, char **endptr, int *error); ># 189 "../../../include/m_string.h" >} > > > > > > > ># 1 "../../../include/mysql/plugin.h" 1 ># 44 "../../../include/mysql/plugin.h" >class THD; >class Item; > > > > > >typedef void * MYSQL_PLUGIN; > ># 1 "../../../include/mysql/services.h" 1 ># 18 "../../../include/mysql/services.h" >extern "C" { > > ># 1 "../../../include/mysql/service_my_snprintf.h" 1 ># 71 "../../../include/mysql/service_my_snprintf.h" >extern "C" { > > > > > > > >extern struct my_snprintf_service_st { > size_t (*my_snprintf_type)(char*, size_t, const char*, ...); > size_t (*my_vsnprintf_type)(char *, size_t, const char*, va_list); >} *my_snprintf_service; ># 91 "../../../include/mysql/service_my_snprintf.h" >size_t my_snprintf(char* to, size_t n, const char* fmt, ...); >size_t my_vsnprintf(char *to, size_t n, const char* fmt, va_list ap); > > > > >} ># 22 "../../../include/mysql/services.h" 2 ># 1 "../../../include/mysql/service_thd_alloc.h" 1 ># 35 "../../../include/mysql/service_thd_alloc.h" >extern "C" { > > >struct st_mysql_lex_string >{ > char *str; > size_t length; >}; >typedef struct st_mysql_lex_string MYSQL_LEX_STRING; > >extern struct thd_alloc_service_st { > void *(*thd_alloc_func)(THD*, unsigned int); > void *(*thd_calloc_func)(THD*, unsigned int); > char *(*thd_strdup_func)(THD*, const char *); > char *(*thd_strmake_func)(THD*, const char *, unsigned int); > void *(*thd_memdup_func)(THD*, const void*, unsigned int); > MYSQL_LEX_STRING *(*thd_make_lex_string_func)(THD*, MYSQL_LEX_STRING *, > const char *, unsigned int, int); >} *thd_alloc_service; ># 87 "../../../include/mysql/service_thd_alloc.h" >void *thd_alloc(THD* thd, unsigned int size); > > > >void *thd_calloc(THD* thd, unsigned int size); > > > >char *thd_strdup(THD* thd, const char *str); > > > >char *thd_strmake(THD* thd, const char *str, unsigned int size); > > > >void *thd_memdup(THD* thd, const void* str, unsigned int size); ># 118 "../../../include/mysql/service_thd_alloc.h" >MYSQL_LEX_STRING *thd_make_lex_string(THD* thd, MYSQL_LEX_STRING *lex_str, > const char *str, unsigned int size, > int allocate_lex_string); > > > > >} ># 23 "../../../include/mysql/services.h" 2 ># 1 "../../../include/mysql/service_thd_wait.h" 1 ># 50 "../../../include/mysql/service_thd_wait.h" >extern "C" { ># 66 "../../../include/mysql/service_thd_wait.h" >typedef enum _thd_wait_type_e { > THD_WAIT_SLEEP= 1, > THD_WAIT_DISKIO= 2, > THD_WAIT_ROW_LOCK= 3, > THD_WAIT_GLOBAL_LOCK= 4, > THD_WAIT_META_DATA_LOCK= 5, > THD_WAIT_TABLE_LOCK= 6, > THD_WAIT_USER_LOCK= 7, > THD_WAIT_BINLOG= 8, > THD_WAIT_GROUP_COMMIT= 9, > THD_WAIT_SYNC= 10, > THD_WAIT_LAST= 11 >} thd_wait_type; > >extern struct thd_wait_service_st { > void (*thd_wait_begin_func)(THD*, int); > void (*thd_wait_end_func)(THD*); >} *thd_wait_service; ># 93 "../../../include/mysql/service_thd_wait.h" >void thd_wait_begin(THD* thd, int wait_type); >void thd_wait_end(THD* thd); > > > > >} ># 24 "../../../include/mysql/services.h" 2 ># 1 "../../../include/mysql/service_thread_scheduler.h" 1 ># 22 "../../../include/mysql/service_thread_scheduler.h" >extern "C" { > > >struct scheduler_functions; > >extern struct my_thread_scheduler_service { > int (*set)(struct scheduler_functions *scheduler); > int (*reset)(); >} *my_thread_scheduler_service; ># 46 "../../../include/mysql/service_thread_scheduler.h" >int my_thread_scheduler_set(struct scheduler_functions *scheduler); ># 57 "../../../include/mysql/service_thread_scheduler.h" >int my_thread_scheduler_reset(); > > > > >} ># 25 "../../../include/mysql/services.h" 2 ># 1 "../../../include/mysql/service_my_plugin_log.h" 1 ># 31 "../../../include/mysql/service_my_plugin_log.h" >enum plugin_log_level >{ > MY_ERROR_LEVEL, > MY_WARNING_LEVEL, > MY_INFORMATION_LEVEL >}; > > > >extern "C" { > > >extern struct my_plugin_log_service >{ > > int (*my_plugin_log_message)(MYSQL_PLUGIN *, enum plugin_log_level, const char *, ...); >} *my_plugin_log_service; > > > > > > > >int my_plugin_log_message(MYSQL_PLUGIN *plugin, enum plugin_log_level level, > const char *format, ...); > > > > >} ># 26 "../../../include/mysql/services.h" 2 ># 1 "../../../include/mysql/service_mysql_string.h" 1 ># 26 "../../../include/mysql/service_mysql_string.h" >extern "C" { > > >typedef void *mysql_string_iterator_handle; >typedef void *mysql_string_handle; > >extern struct mysql_string_service_st { > int (*mysql_string_convert_to_char_ptr_type) > (mysql_string_handle, const char *, char *, unsigned int, int *); > mysql_string_iterator_handle (*mysql_string_get_iterator_type) > (mysql_string_handle); > int (*mysql_string_iterator_next_type)(mysql_string_iterator_handle); > int (*mysql_string_iterator_isupper_type)(mysql_string_iterator_handle); > int (*mysql_string_iterator_islower_type)(mysql_string_iterator_handle); > int (*mysql_string_iterator_isdigit_type)(mysql_string_iterator_handle); > mysql_string_handle (*mysql_string_to_lowercase_type)(mysql_string_handle); > void (*mysql_string_free_type)(mysql_string_handle); > void (*mysql_string_iterator_free_type)(mysql_string_iterator_handle); >} *mysql_string_service; ># 84 "../../../include/mysql/service_mysql_string.h" >int mysql_string_convert_to_char_ptr(mysql_string_handle string_handle, > const char *charset_name, char *buffer, > unsigned int buffer_size, int *error); > > >mysql_string_iterator_handle mysql_string_get_iterator(mysql_string_handle > string_handle); > > > > >int mysql_string_iterator_next(mysql_string_iterator_handle iterator_handle); > > > > > >int mysql_string_iterator_isupper(mysql_string_iterator_handle iterator_handle); > > > > > >int mysql_string_iterator_islower(mysql_string_iterator_handle iterator_handle); > > > > > >int mysql_string_iterator_isdigit(mysql_string_iterator_handle iterator_handle); > > >mysql_string_handle mysql_string_to_lowercase(mysql_string_handle > string_handle); > > >void mysql_string_free(mysql_string_handle); > > > > > >void mysql_string_iterator_free(mysql_string_iterator_handle); > > > >} ># 27 "../../../include/mysql/services.h" 2 > > >} ># 54 "../../../include/mysql/plugin.h" 2 ># 64 "../../../include/mysql/plugin.h" >struct st_mysql_xid { > long formatID; > long gtrid_length; > long bqual_length; > char data[128]; >}; >typedef struct st_mysql_xid MYSQL_XID; ># 131 "../../../include/mysql/plugin.h" >enum enum_mysql_show_type >{ > SHOW_UNDEF, SHOW_BOOL, > SHOW_INT, > SHOW_LONG, > SHOW_LONGLONG, > SHOW_CHAR, SHOW_CHAR_PTR, > SHOW_ARRAY, SHOW_FUNC, SHOW_DOUBLE, > SHOW_always_last >}; > >struct st_mysql_show_var { > const char *name; > char *value; > enum enum_mysql_show_type type; >}; > > >typedef int (*mysql_show_var_func)(THD*, struct st_mysql_show_var*, char *); ># 183 "../../../include/mysql/plugin.h" >struct st_mysql_sys_var; >struct st_mysql_value; ># 205 "../../../include/mysql/plugin.h" >typedef int (*mysql_var_check_func)(THD* thd, > struct st_mysql_sys_var *var, > void *save, struct st_mysql_value *value); ># 223 "../../../include/mysql/plugin.h" >typedef void (*mysql_var_update_func)(THD* thd, > struct st_mysql_sys_var *var, > void *var_ptr, const void *save); ># 429 "../../../include/mysql/plugin.h" >struct st_mysql_plugin >{ > int type; > void *info; > const char *name; > const char *author; > const char *descr; > int license; > int (*init)(MYSQL_PLUGIN); > int (*deinit)(MYSQL_PLUGIN); > unsigned int version; > struct st_mysql_show_var *status_vars; > struct st_mysql_sys_var **system_vars; > void * __reserved1; > unsigned long flags; >}; > > > > ># 1 "../../../include/mysql/plugin_ftparser.h" 1 ># 18 "../../../include/mysql/plugin_ftparser.h" ># 1 "../../../include/mysql/plugin.h" 1 ># 19 "../../../include/mysql/plugin_ftparser.h" 2 ># 27 "../../../include/mysql/plugin_ftparser.h" >enum enum_ftparser_mode >{ ># 37 "../../../include/mysql/plugin_ftparser.h" > MYSQL_FTPARSER_SIMPLE_MODE= 0, ># 48 "../../../include/mysql/plugin_ftparser.h" > MYSQL_FTPARSER_WITH_STOPWORDS= 1, ># 61 "../../../include/mysql/plugin_ftparser.h" > MYSQL_FTPARSER_FULL_BOOLEAN_INFO= 2 >}; ># 75 "../../../include/mysql/plugin_ftparser.h" >enum enum_ft_token_type >{ > FT_TOKEN_EOF= 0, > FT_TOKEN_WORD= 1, > FT_TOKEN_LEFT_PAREN= 2, > FT_TOKEN_RIGHT_PAREN= 3, > FT_TOKEN_STOPWORD= 4 >}; ># 115 "../../../include/mysql/plugin_ftparser.h" >typedef struct st_mysql_ftparser_boolean_info >{ > enum enum_ft_token_type type; > int yesno; > int weight_adjust; > char wasign; > char trunc; > > char prev; > char *quot; >} MYSQL_FTPARSER_BOOLEAN_INFO; ># 177 "../../../include/mysql/plugin_ftparser.h" >typedef struct st_mysql_ftparser_param >{ > int (*mysql_parse)(struct st_mysql_ftparser_param *, > char *doc, int doc_len); > int (*mysql_add_word)(struct st_mysql_ftparser_param *, > char *word, int word_len, > MYSQL_FTPARSER_BOOLEAN_INFO *boolean_info); > void *ftparser_state; > void *mysql_ftparam; > const struct charset_info_st *cs; > char *doc; > int length; > int flags; > enum enum_ftparser_mode mode; >} MYSQL_FTPARSER_PARAM; ># 201 "../../../include/mysql/plugin_ftparser.h" >struct st_mysql_ftparser >{ > int interface_version; > int (*parse)(MYSQL_FTPARSER_PARAM *param); > int (*init)(MYSQL_FTPARSER_PARAM *param); > int (*deinit)(MYSQL_FTPARSER_PARAM *param); >}; ># 450 "../../../include/mysql/plugin.h" 2 ># 463 "../../../include/mysql/plugin.h" >struct st_mysql_daemon >{ > int interface_version; >}; ># 481 "../../../include/mysql/plugin.h" >struct st_mysql_information_schema >{ > int interface_version; >}; ># 500 "../../../include/mysql/plugin.h" >struct st_mysql_storage_engine >{ > int interface_version; >}; > >struct handlerton; ># 516 "../../../include/mysql/plugin.h" > struct Mysql_replication { > int interface_version; > }; ># 534 "../../../include/mysql/plugin.h" >struct st_mysql_value >{ > int (*value_type)(struct st_mysql_value *); > const char *(*val_str)(struct st_mysql_value *, char *buffer, int *length); > int (*val_real)(struct st_mysql_value *, double *realbuf); > int (*val_int)(struct st_mysql_value *, long long *intbuf); > int (*is_unsigned)(struct st_mysql_value *); >}; > > > > > > > >extern "C" { > > >int thd_in_lock_tables(const THD* thd); >int thd_tablespace_op(const THD* thd); >long long thd_test_options(const THD* thd, long long test_options); >int thd_sql_command(const THD* thd); >const char *thd_proc_info(THD* thd, const char *info); >void **thd_ha_data(const THD* thd, const struct handlerton *hton); >void thd_storage_lock_wait(THD* thd, long long value); >int thd_tx_isolation(const THD* thd); >int thd_tx_is_read_only(const THD* thd); >char *thd_security_context(THD* thd, char *buffer, unsigned int length, > unsigned int max_query_len); > >void thd_inc_row_count(THD* thd); >int thd_allow_batch(THD* thd); ># 579 "../../../include/mysql/plugin.h" >int mysql_tmpfile(const char *prefix); ># 595 "../../../include/mysql/plugin.h" >int thd_killed(const THD* thd); ># 609 "../../../include/mysql/plugin.h" >void thd_binlog_pos(const THD* thd, > const char **file_var, > unsigned long long *pos_var); > > > > > > > >unsigned long thd_get_thread_id(const THD* thd); > > > > > > > >void thd_get_xid(const THD* thd, MYSQL_XID *xid); ># 637 "../../../include/mysql/plugin.h" >void mysql_query_cache_invalidate4(THD* thd, > const char *key, unsigned int key_length, > int using_trx); > > > > > >void *thd_get_ha_data(const THD* thd, const struct handlerton *hton); ># 669 "../../../include/mysql/plugin.h" >void thd_set_ha_data(THD* thd, const struct handlerton *hton, > const void *ha_data); > >} ># 198 "../../../include/m_string.h" 2 >typedef struct st_mysql_lex_string LEX_STRING; > > > > > >struct st_mysql_const_lex_string >{ > const char *str; > size_t length; >}; >typedef struct st_mysql_const_lex_string LEX_CSTRING; ># 254 "../../../include/m_string.h" >static inline const uchar *skip_trailing_space(const uchar *ptr,size_t len) >{ > const uchar *end= ptr + len; > > if (len > 20) > { > const uchar *end_words= (const uchar *)(intptr) > (((ulonglong)(intptr)end) / 4 * 4); > const uchar *start_words= (const uchar *)(intptr) > ((((ulonglong)(intptr)ptr) + 4 - 1) / 4 * 4); > > do { } while(0); > if (end_words > ptr) > { > while (end > end_words && end[-1] == 0x20) > end--; > if (end[-1] == 0x20 && start_words < end_words) > while (end > start_words && ((unsigned *)end)[-1] == 0x20202020) > end -= 4; > } > } > while (end > ptr && end[-1] == 0x20) > end--; > return (end); >} > >static inline void lex_string_set(LEX_STRING *lex_str, const char *c_str) >{ > lex_str->str= (char *) c_str; > lex_str->length= strlen(c_str); >} ># 24 "../../../sql/sql_string.h" 2 ># 37 "../../../sql/sql_string.h" >class Simple_cstring >{ >private: > const char *m_str; > size_t m_length; >protected: > > > > void set(const char *str_arg, size_t length_arg) > { > > do { } while(0); > > do { } while(0); > m_str= str_arg; > m_length= length_arg; > } >public: > Simple_cstring() > { > set(__null, 0); > } > Simple_cstring(const char *str_arg, size_t length_arg) > { > set(str_arg, length_arg); > } > Simple_cstring(const LEX_STRING arg) > { > set(arg.str, arg.length); > } > void reset() > { > set(__null, 0); > } > > > > void set(const char *str) > { > set(str, str ? strlen(str) : 0); > } > > > > const char *ptr() const { return m_str; } > > > > bool is_set() const { return m_str != __null; } > > > > size_t length() const { return m_length; } > > > > bool eq_bin(const Simple_cstring other) const > { > return m_length == other.m_length && > memcmp(m_str, other.m_str, m_length) == 0; > } > > > > void strcpy(char *buff) const > { > memcpy(buff, m_str, m_length); > buff[m_length]= '\0'; > } >}; > > >class String; >typedef struct charset_info_st CHARSET_INFO; >typedef struct st_io_cache IO_CACHE; >typedef struct st_mem_root MEM_ROOT; > >int sortcmp(const String *a,const String *b, const CHARSET_INFO *cs); >String *copy_if_not_alloced(String *a,String *b,uint32 arg_length); >inline uint32 copy_and_convert(char *to, uint32 to_length, > const CHARSET_INFO *to_cs, > const char *from, uint32 from_length, > const CHARSET_INFO *from_cs, uint *errors) >{ > return my_convert(to, to_length, to_cs, from, from_length, from_cs, errors); >} >uint32 well_formed_copy_nchars(const CHARSET_INFO *to_cs, > char *to, uint to_length, > const CHARSET_INFO *from_cs, > const char *from, uint from_length, > uint nchars, > const char **well_formed_error_pos, > const char **cannot_convert_error_pos, > const char **from_end_pos); >size_t my_copy_with_hex_escaping(const CHARSET_INFO *cs, > char *dst, size_t dstlen, > const char *src, size_t srclen); >uint convert_to_printable(char *to, size_t to_len, > const char *from, size_t from_len, > const CHARSET_INFO *from_cs, size_t nbytes= 0); > >class String >{ > char *Ptr; > uint32 str_length,Alloced_length; > bool alloced; > const CHARSET_INFO *str_charset; >public: > String() > { > Ptr=0; str_length=Alloced_length=0; alloced=0; > str_charset= &my_charset_bin; > } > String(uint32 length_arg) > { > alloced=0; Alloced_length=0; (void) real_alloc(length_arg); > str_charset= &my_charset_bin; > } > String(const char *str, const CHARSET_INFO *cs) > { > Ptr=(char*) str; str_length=(uint) strlen(str); Alloced_length=0; alloced=0; > str_charset=cs; > } > String(const char *str,uint32 len, const CHARSET_INFO *cs) > { > Ptr=(char*) str; str_length=len; Alloced_length=0; alloced=0; > str_charset=cs; > } > String(char *str,uint32 len, const CHARSET_INFO *cs) > { > Ptr=(char*) str; Alloced_length=str_length=len; alloced=0; > str_charset=cs; > } > String(const String &str) > { > Ptr=str.Ptr ; str_length=str.str_length ; > Alloced_length=str.Alloced_length; alloced=0; > str_charset=str.str_charset; > } > static void *operator new(size_t size, MEM_ROOT *mem_root) throw () > { return (void*) alloc_root(mem_root, (uint) size); } > static void operator delete(void *ptr_arg, size_t size) > { > (void) ptr_arg; > (void) size; > do {} while(0); > } > static void operator delete(void *, MEM_ROOT *) > { } > ~String() { free(); } > > inline void set_charset(const CHARSET_INFO *charset_arg) > { str_charset= charset_arg; } > inline const CHARSET_INFO *charset() const { return str_charset; } > inline uint32 length() const { return str_length;} > inline uint32 alloced_length() const { return Alloced_length;} > inline char& operator [] (uint32 i) const { return Ptr[i]; } > inline void length(uint32 len) { str_length=len ; } > inline bool is_empty() const { return (str_length == 0); } > inline void mark_as_const() { Alloced_length= 0;} > inline const char *ptr() const { return Ptr; } > inline char *c_ptr() > { > do { } while(0) > ; > > if (!Ptr || Ptr[str_length]) > (void) realloc(str_length); > return Ptr; > } > inline char *c_ptr_quick() > { > if (Ptr && str_length < Alloced_length) > Ptr[str_length]=0; > return Ptr; > } > inline char *c_ptr_safe() > { > if (Ptr && str_length < Alloced_length) > Ptr[str_length]=0; > else > (void) realloc(str_length); > return Ptr; > } > LEX_STRING lex_string() const > { > LEX_STRING lex_string = { (char*) ptr(), length() }; > return lex_string; > } > > void set(String &str,uint32 offset,uint32 arg_length) > { > do { } while(0); > free(); > Ptr=(char*) str.ptr()+offset; str_length=arg_length; alloced=0; > if (str.Alloced_length) > Alloced_length=str.Alloced_length-offset; > else > Alloced_length=0; > str_charset=str.str_charset; > } ># 249 "../../../sql/sql_string.h" > inline void set(char *str,uint32 arg_length, const CHARSET_INFO *cs) > { > free(); > Ptr=(char*) str; str_length=Alloced_length=arg_length ; alloced=0; > str_charset=cs; > } > inline void set(const char *str,uint32 arg_length, const CHARSET_INFO *cs) > { > free(); > Ptr=(char*) str; str_length=arg_length; Alloced_length=0 ; alloced=0; > str_charset=cs; > } > bool set_ascii(const char *str, uint32 arg_length); > inline void set_quick(char *str,uint32 arg_length, const CHARSET_INFO *cs) > { > if (!alloced) > { > Ptr=(char*) str; str_length=Alloced_length=arg_length; > } > str_charset=cs; > } > bool set_int(longlong num, bool unsigned_flag, const CHARSET_INFO *cs); > bool set(longlong num, const CHARSET_INFO *cs) > { return set_int(num, false, cs); } > bool set(ulonglong num, const CHARSET_INFO *cs) > { return set_int((longlong)num, true, cs); } > bool set_real(double num,uint decimals, const CHARSET_INFO *cs); ># 299 "../../../sql/sql_string.h" > inline void chop() > { > str_length--; > Ptr[str_length]= '\0'; > do { } while(0); > } > > inline void free() > { > if (alloced) > { > alloced=0; > Alloced_length=0; > my_free(Ptr); > Ptr=0; > str_length=0; > } > } > inline bool alloc(uint32 arg_length) > { > if (arg_length < Alloced_length) > return 0; > return real_alloc(arg_length); > } > bool real_alloc(uint32 arg_length); > bool realloc(uint32 arg_length); > > > inline void shrink(uint32 arg_length) > { > if (!is_alloced()) > return; > if (arg_length < Alloced_length) > { > char *new_ptr; > if (!(new_ptr=(char*) my_realloc(Ptr,arg_length,(myf) (0)))) > { > Alloced_length = 0; > real_alloc(arg_length); > } > else > { > Ptr=new_ptr; > Alloced_length=arg_length; > } > } > } > bool is_alloced() const { return alloced; } > inline String& operator = (const String &s) > { > if (&s != this) > { > > > > > do { } while(0); > free(); > Ptr=s.Ptr ; str_length=s.str_length ; Alloced_length=s.Alloced_length; > str_charset=s.str_charset; > alloced=0; > } > return *this; > } ># 371 "../../../sql/sql_string.h" > inline void takeover(String &s) > { > do { } while(0); > > do { } while(0); > free(); > Ptr= s.Ptr; > str_length= s.str_length; > Alloced_length= s.Alloced_length; > alloced= s.alloced; > str_charset= s.str_charset; > s.Ptr= __null; > s.Alloced_length= 0; > s.str_length= 0; > s.alloced= 0; > } > > bool copy(); > bool copy(const String &s); > > bool copy(const char *s,uint32 arg_length, const CHARSET_INFO *cs); > static bool needs_conversion(uint32 arg_length, > const CHARSET_INFO *cs_from, const CHARSET_INFO *cs_to, > uint32 *offset); > bool copy_aligned(const char *s, uint32 arg_length, uint32 offset, > const CHARSET_INFO *cs); > bool set_or_copy_aligned(const char *s, uint32 arg_length, > const CHARSET_INFO *cs); > bool copy(const char*s,uint32 arg_length, const CHARSET_INFO *csfrom, > const CHARSET_INFO *csto, uint *errors); > bool append(const String &s); > bool append(const char *s); > bool append(LEX_STRING *ls) > { > return append(ls->str, (uint32) ls->length); > } > bool append(Simple_cstring str) > { > return append(str.ptr(), static_cast<uint>(str.length())); > } > bool append(const char *s, uint32 arg_length); > bool append(const char *s, uint32 arg_length, const CHARSET_INFO *cs); > bool append_ulonglong(ulonglong val); > bool append(IO_CACHE* file, uint32 arg_length); > bool append_with_prefill(const char *s, uint32 arg_length, > uint32 full_length, char fill_char); > bool append_parenthesized(long nr, int radix= 10); > int strstr(const String &search,uint32 offset=0); > int strrstr(const String &search,uint32 offset=0); > bool replace(uint32 offset,uint32 arg_length,const char *to,uint32 length); > bool replace(uint32 offset,uint32 arg_length,const String &to); > inline bool append(char chr) > { > if (str_length < Alloced_length) > { > Ptr[str_length++]=chr; > } > else > { > if (realloc(str_length+1)) > return 1; > Ptr[str_length++]=chr; > } > return 0; > } > bool fill(uint32 max_length,char fill); > void strip_sp(); > friend int sortcmp(const String *a,const String *b, const CHARSET_INFO *cs); > friend int stringcmp(const String *a,const String *b); > friend String *copy_if_not_alloced(String *a,String *b,uint32 arg_length); > uint32 numchars() const; > int charpos(int i,uint32 offset=0); > > int reserve(uint32 space_needed) > { > return realloc(str_length + space_needed); > } > int reserve(uint32 space_needed, uint32 grow_by); > > > > > > void q_append(const char c) > { > Ptr[str_length++] = c; > } > void q_append(const uint32 n) > { > do { *((char *)(Ptr + str_length))=(char) ((n)); *(((char *)(Ptr + str_length))+1)=(char) (((n) >> 8)); *(((char *)(Ptr + str_length))+2)=(char) (((n) >> 16)); *(((char *)(Ptr + str_length))+3)=(char) (((n) >> 24)); } while(0); > str_length += 4; > } > void q_append(double d) > { > memcpy(((Ptr + str_length)), (void*) &(d), sizeof(double)); > str_length += 8; > } > void q_append(double *d) > { > memcpy(((Ptr + str_length)), (void*) &(*d), sizeof(double)); > str_length += 8; > } > void q_append(const char *data, uint32 data_len) > { > memcpy(Ptr + str_length, data, data_len); > str_length += data_len; > } > > void write_at_position(int position, uint32 value) > { > do { *((char *)(Ptr + position))=(char) ((value)); *(((char *)(Ptr + position))+1)=(char) (((value) >> 8)); *(((char *)(Ptr + position))+2)=(char) (((value) >> 16)); *(((char *)(Ptr + position))+3)=(char) (((value) >> 24)); } while(0); > } > > void qs_append(const char *str, uint32 len); > void qs_append(double d); > void qs_append(double *d); > inline void qs_append(const char c) > { > Ptr[str_length]= c; > str_length++; > } > void qs_append(int i); > void qs_append(uint i); > > > > inline char *prep_append(uint32 arg_length, uint32 step_alloc) > { > uint32 new_length= arg_length + str_length; > if (new_length > Alloced_length) > { > if (realloc(new_length + step_alloc)) > return 0; > } > uint32 old_length= str_length; > str_length+= arg_length; > return Ptr+ old_length; > } > > inline bool append(const char *s, uint32 arg_length, uint32 step_alloc) > { > uint32 new_length= arg_length + str_length; > if (new_length > Alloced_length && realloc(new_length + step_alloc)) > return (1); > memcpy(Ptr+str_length, s, arg_length); > str_length+= arg_length; > return (0); > } > void print(String *print); > > > void swap(String &s); > > inline bool uses_buffer_owned_by(const String *s) const > { > return (s->alloced && Ptr >= s->Ptr && Ptr < s->Ptr + s->str_length); > } > bool is_ascii() const > { > if (length() == 0) > return (1); > if (charset()->mbminlen > 1) > return (0); > for (const char *c= ptr(), *end= c + length(); c < end; c++) > { > if (!(!((*c) & ~0177))) > return (0); > } > return (1); > } > > > > > > > > char *dup(MEM_ROOT *root) const > { > if (str_length > 0 && Ptr[str_length - 1] == 0) > return static_cast<char *>(memdup_root(root, Ptr, str_length)); > > char *ret= static_cast<char*>(alloc_root(root, str_length + 1)); > if (ret != __null) > { > memcpy(ret, Ptr, str_length); > ret[str_length]= 0; > } > return ret; > } >}; ># 575 "../../../sql/sql_string.h" >template<size_t buff_sz> >class StringBuffer : public String >{ > char buff[buff_sz]; > >public: > StringBuffer() : String(buff, buff_sz, &my_charset_bin) { length(0); } > explicit StringBuffer(const CHARSET_INFO *cs) : String(buff, buff_sz, cs) > { > length(0); > } > StringBuffer(const char *str, size_t length, const CHARSET_INFO *cs) > : String(buff, buff_sz, cs) > { > set(str, length, cs); > } >}; > > >static inline bool check_if_only_end_space(const CHARSET_INFO *cs, char *str, > char *end) >{ > return str+ cs->cset->scan(cs, str, end, 2) == end; >} ># 25 "../../../storage/perfschema/pfs_setup_actor.h" 2 > > > >struct PFS_global_param; ># 39 "../../../storage/perfschema/pfs_setup_actor.h" >struct PFS_setup_actor_key >{ > > > > > > char m_hash_key[(16*3) + 1 + 60 + 1 + 64 + 1]; > > uint m_key_length; >}; > > >struct __attribute__((__aligned__((64)))) PFS_setup_actor >{ > > pfs_lock m_lock; > > PFS_setup_actor_key m_key; > > const char *m_username; > > uint m_username_length; > > const char *m_hostname; > > uint m_hostname_length; > > const char *m_rolename; > > uint m_rolename_length; >}; > >int init_setup_actor(const PFS_global_param *param); >void cleanup_setup_actor(void); >int init_setup_actor_hash(void); >void cleanup_setup_actor_hash(void); > >int insert_setup_actor(const String *user, const String *host, const String *role); >int delete_setup_actor(const String *user, const String *host, const String *role); >int reset_setup_actor(void); >long setup_actor_count(void); > >void lookup_setup_actor(PFS_thread *thread, > const char *user, uint user_length, > const char *host, uint host_length, > bool *enabled); > > > >extern ulong setup_actor_max; > > > >extern PFS_setup_actor *setup_actor_array; > >extern LF_HASH setup_actor_hash; ># 27 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../storage/perfschema/pfs_host.h" 1 ># 28 "../../../storage/perfschema/pfs_host.h" >struct PFS_global_param; >struct PFS_thread; > > > > > > >struct PFS_host_key >{ > > > > > > char m_hash_key[60 + 1]; > uint m_key_length; >}; > >struct __attribute__((__aligned__((64)))) PFS_host : PFS_connection_slice >{ >public: > inline void init_refcount(void) > { > PFS_atomic::store_32(& m_refcount, 1); > } > > inline int get_refcount(void) > { > return PFS_atomic::load_32(& m_refcount); > } > > inline void inc_refcount(void) > { > PFS_atomic::add_32(& m_refcount, 1); > } > > inline void dec_refcount(void) > { > PFS_atomic::add_32(& m_refcount, -1); > } > > void aggregate(void); > void aggregate_waits(void); > void aggregate_stages(void); > void aggregate_statements(void); > void aggregate_stats(void); > void release(void); > > > pfs_lock m_lock; > PFS_host_key m_key; > const char *m_hostname; > uint m_hostname_length; > > ulonglong m_disconnected_count; > >private: > int m_refcount; >}; > >int init_host(const PFS_global_param *param); >void cleanup_host(void); >int init_host_hash(void); >void cleanup_host_hash(void); > >PFS_host *find_or_create_host(PFS_thread *thread, > const char *hostname, uint hostname_length); > >PFS_host *sanitize_host(PFS_host *unsafe); >void purge_all_host(void); > > > >extern ulong host_max; >extern ulong host_lost; > > > >extern PFS_host *host_array; > >extern LF_HASH host_hash; ># 28 "../../../storage/perfschema/pfs_account.cc" 2 > ># 1 "../../../storage/perfschema/pfs_user.h" 1 ># 28 "../../../storage/perfschema/pfs_user.h" >struct PFS_global_param; >struct PFS_thread; > > > > > > >struct PFS_user_key >{ > > > > > > char m_hash_key[(16*3) + 1]; > uint m_key_length; >}; > >struct __attribute__((__aligned__((64)))) PFS_user : public PFS_connection_slice >{ >public: > inline void init_refcount(void) > { > PFS_atomic::store_32(& m_refcount, 1); > } > > inline int get_refcount(void) > { > return PFS_atomic::load_32(& m_refcount); > } > > inline void inc_refcount(void) > { > PFS_atomic::add_32(& m_refcount, 1); > } > > inline void dec_refcount(void) > { > PFS_atomic::add_32(& m_refcount, -1); > } > > void aggregate(void); > void aggregate_waits(void); > void aggregate_stages(void); > void aggregate_statements(void); > void aggregate_stats(void); > void release(void); > > > pfs_lock m_lock; > PFS_user_key m_key; > const char *m_username; > uint m_username_length; > > ulonglong m_disconnected_count; > >private: > int m_refcount; >}; > >int init_user(const PFS_global_param *param); >void cleanup_user(void); >int init_user_hash(void); >void cleanup_user_hash(void); > >PFS_user * >find_or_create_user(PFS_thread *thread, > const char *username, uint username_length); > >PFS_user *sanitize_user(PFS_user *unsafe); >void purge_all_user(void); > > > > >extern ulong user_max; >extern ulong user_lost; > > > >extern PFS_user *user_array; > >extern LF_HASH user_hash; ># 30 "../../../storage/perfschema/pfs_account.cc" 2 ># 1 "../../../storage/perfschema/pfs_account.h" 1 ># 28 "../../../storage/perfschema/pfs_account.h" >struct PFS_global_param; >struct PFS_user; >struct PFS_host; >struct PFS_thread; > > > > > > >struct PFS_account_key >{ > > > > > > char m_hash_key[(16*3) + 1 + 60 + 1]; > uint m_key_length; >}; > >struct __attribute__((__aligned__((64)))) PFS_account : PFS_connection_slice >{ >public: > inline void init_refcount(void) > { > PFS_atomic::store_32(& m_refcount, 1); > } > > inline int get_refcount(void) > { > return PFS_atomic::load_32(& m_refcount); > } > > inline void inc_refcount(void) > { > PFS_atomic::add_32(& m_refcount, 1); > } > > inline void dec_refcount(void) > { > PFS_atomic::add_32(& m_refcount, -1); > } > > void aggregate(PFS_user *safe_user, PFS_host *safe_host); > void aggregate_waits(PFS_user *safe_user, PFS_host *safe_host); > void aggregate_stages(PFS_user *safe_user, PFS_host *safe_host); > void aggregate_statements(PFS_user *safe_user, PFS_host *safe_host); > void aggregate_stats(PFS_user *safe_user, PFS_host *safe_host); > void release(void); > > > pfs_lock m_lock; > PFS_account_key m_key; > const char *m_username; > uint m_username_length; > const char *m_hostname; > uint m_hostname_length; > PFS_user *m_user; > PFS_host *m_host; > > ulonglong m_disconnected_count; > >private: > int m_refcount; >}; > >int init_account(const PFS_global_param *param); >void cleanup_account(void); >int init_account_hash(void); >void cleanup_account_hash(void); > >PFS_account * >find_or_create_account(PFS_thread *thread, > const char *username, uint username_length, > const char *hostname, uint hostname_length); > >PFS_account *sanitize_account(PFS_account *unsafe); >void purge_all_account(void); > > > > >extern ulong account_max; >extern ulong account_lost; > > > >extern PFS_account *account_array; > >extern LF_HASH account_hash; ># 31 "../../../storage/perfschema/pfs_account.cc" 2 ># 39 "../../../storage/perfschema/pfs_account.cc" >ulong account_max; >ulong account_lost; > >PFS_account *account_array= __null; > >static PFS_single_stat *account_instr_class_waits_array= __null; >static PFS_stage_stat *account_instr_class_stages_array= __null; >static PFS_statement_stat *account_instr_class_statements_array= __null; > >LF_HASH account_hash; >static bool account_hash_inited= false; > > > > > > >int init_account(const PFS_global_param *param) >{ > uint index; > > account_max= param->m_account_sizing; > > account_array= __null; > account_instr_class_waits_array= __null; > account_instr_class_stages_array= __null; > account_instr_class_statements_array= __null; > uint waits_sizing= account_max * wait_class_max; > uint stages_sizing= account_max * stage_class_max; > uint statements_sizing= account_max * statement_class_max; > > if (account_max > 0) > { > account_array= reinterpret_cast<PFS_account*> (pfs_malloc((account_max) * sizeof(PFS_account), ((myf) (32)))) > ; > if (__builtin_expect((account_array == __null),0)) > return 1; > } > > if (waits_sizing > 0) > { > account_instr_class_waits_array= > PFS_connection_slice::alloc_waits_slice(waits_sizing); > if (__builtin_expect((account_instr_class_waits_array == __null),0)) > return 1; > } > > if (stages_sizing > 0) > { > account_instr_class_stages_array= > PFS_connection_slice::alloc_stages_slice(stages_sizing); > if (__builtin_expect((account_instr_class_stages_array == __null),0)) > return 1; > } > > if (statements_sizing > 0) > { > account_instr_class_statements_array= > PFS_connection_slice::alloc_statements_slice(statements_sizing); > if (__builtin_expect((account_instr_class_statements_array == __null),0)) > return 1; > } > > for (index= 0; index < account_max; index++) > { > account_array[index].m_instr_class_waits_stats= > &account_instr_class_waits_array[index * wait_class_max]; > account_array[index].m_instr_class_stages_stats= > &account_instr_class_stages_array[index * stage_class_max]; > account_array[index].m_instr_class_statements_stats= > &account_instr_class_statements_array[index * statement_class_max]; > } > > return 0; >} > > >void cleanup_account(void) >{ > pfs_free(account_array); > account_array= __null; > pfs_free(account_instr_class_waits_array); > account_instr_class_waits_array= __null; > account_max= 0; >} > >extern "C" { >static uchar *account_hash_get_key(const uchar *entry, size_t *length, > my_bool) >{ > const PFS_account * const *typed_entry; > const PFS_account *account; > const void *result; > typed_entry= reinterpret_cast<const PFS_account* const *> (entry); > do { } while(0); > account= *typed_entry; > do { } while(0); > *length= account->m_key.m_key_length; > result= account->m_key.m_hash_key; > return const_cast<uchar*> (reinterpret_cast<const uchar*> (result)); >} >} > > > > > >int init_account_hash(void) >{ > if ((! account_hash_inited) && (account_max > 0)) > { > lf_hash_init(&account_hash, sizeof(PFS_account*), 1, > 0, 0, account_hash_get_key, &my_charset_bin); > account_hash.size= account_max; > account_hash_inited= true; > } > return 0; >} > > >void cleanup_account_hash(void) >{ > if (account_hash_inited) > { > lf_hash_destroy(&account_hash); > account_hash_inited= false; > } >} > >static LF_PINS* get_account_hash_pins(PFS_thread *thread) >{ > if (__builtin_expect((thread->m_account_hash_pins == __null),0)) > { > if (! account_hash_inited) > return __null; > thread->m_account_hash_pins= lf_pinbox_get_pins(&(&(&account_hash)->alloc)->pinbox); > } > return thread->m_account_hash_pins; >} > >static void set_account_key(PFS_account_key *key, > const char *user, uint user_length, > const char *host, uint host_length) >{ > do { } while(0); > do { } while(0); > > char *ptr= &key->m_hash_key[0]; > if (user_length > 0) > { > memcpy(ptr, user, user_length); > ptr+= user_length; > } > ptr[0]= 0; > ptr++; > if (host_length > 0) > { > memcpy(ptr, host, host_length); > ptr+= host_length; > } > ptr[0]= 0; > ptr++; > key->m_key_length= ptr - &key->m_hash_key[0]; >} > >PFS_account * >find_or_create_account(PFS_thread *thread, > const char *username, uint username_length, > const char *hostname, uint hostname_length) >{ > if (account_max == 0) > { > account_lost++; > return __null; > } > > LF_PINS *pins= get_account_hash_pins(thread); > if (__builtin_expect((pins == __null),0)) > { > account_lost++; > return __null; > } > > PFS_account_key key; > set_account_key(&key, username, username_length, > hostname, hostname_length); > > PFS_account **entry; > uint retry_count= 0; > const uint retry_max= 3; > >search: > entry= reinterpret_cast<PFS_account**> > (lf_hash_search(&account_hash, pins, > key.m_hash_key, key.m_key_length)); > if (entry && (entry != ((void*)(intptr)1))) > { > PFS_account *pfs; > pfs= *entry; > pfs->inc_refcount(); > do { ; my_atomic_storeptr(&((pins))->pin[2], (__null)); ; } while (0); > return pfs; > } > > do { ; my_atomic_storeptr(&((pins))->pin[2], (__null)); ; } while (0); > > PFS_scan scan; > uint random= randomized_index(username, account_max); > > for (scan.init(random, account_max); > scan.has_pass(); > scan.next_pass()) > { > PFS_account *pfs= account_array + scan.first(); > PFS_account *pfs_last= account_array + scan.last(); > for ( ; pfs < pfs_last; pfs++) > { > if (pfs->m_lock.is_free()) > { > if (pfs->m_lock.free_to_dirty()) > { > pfs->m_key= key; > if (username_length > 0) > pfs->m_username= &pfs->m_key.m_hash_key[0]; > else > pfs->m_username= __null; > pfs->m_username_length= username_length; > > if (hostname_length > 0) > pfs->m_hostname= &pfs->m_key.m_hash_key[username_length + 1]; > else > pfs->m_hostname= __null; > pfs->m_hostname_length= hostname_length; > > pfs->m_user= find_or_create_user(thread, username, username_length); > pfs->m_host= find_or_create_host(thread, hostname, hostname_length); > > pfs->init_refcount(); > pfs->reset_stats(); > pfs->m_disconnected_count= 0; > > int res; > res= lf_hash_insert(&account_hash, pins, &pfs); > if (__builtin_expect((res == 0),1)) > { > pfs->m_lock.dirty_to_allocated(); > return pfs; > } > > if (pfs->m_user) > { > pfs->m_user->release(); > pfs->m_user= __null; > } > if (pfs->m_host) > { > pfs->m_host->release(); > pfs->m_host= __null; > } > > pfs->m_lock.dirty_to_free(); > > if (res > 0) > { > if (++retry_count > retry_max) > { > account_lost++; > return __null; > } > goto search; > } > > account_lost++; > return __null; > } > } > } > } > > account_lost++; > return __null; >} > >void PFS_account::aggregate(PFS_user *safe_user, PFS_host *safe_host) >{ > aggregate_waits(safe_user, safe_host); > aggregate_stages(safe_user, safe_host); > aggregate_statements(safe_user, safe_host); > aggregate_stats(safe_user, safe_host); >} > >void PFS_account::aggregate_waits(PFS_user *safe_user, PFS_host *safe_host) >{ > if (__builtin_expect((safe_user != __null && safe_host != __null),1)) > { > > > > > > > aggregate_all_event_names(m_instr_class_waits_stats, > safe_user->m_instr_class_waits_stats, > safe_host->m_instr_class_waits_stats); > return; > } > > if (safe_user != __null) > { > > > > > aggregate_all_event_names(m_instr_class_waits_stats, > safe_user->m_instr_class_waits_stats); > return; > } > > if (safe_host != __null) > { > > > > > aggregate_all_event_names(m_instr_class_waits_stats, > safe_host->m_instr_class_waits_stats); > return; > } > > > reset_waits_stats(); > return; >} > >void PFS_account::aggregate_stages(PFS_user *safe_user, PFS_host *safe_host) >{ > if (__builtin_expect((safe_user != __null && safe_host != __null),1)) > { > > > > > > > aggregate_all_stages(m_instr_class_stages_stats, > safe_user->m_instr_class_stages_stats, > safe_host->m_instr_class_stages_stats); > return; > } > > if (safe_user != __null) > { > > > > > > > aggregate_all_stages(m_instr_class_stages_stats, > safe_user->m_instr_class_stages_stats, > global_instr_class_stages_array); > return; > } > > if (safe_host != __null) > { > > > > > aggregate_all_stages(m_instr_class_stages_stats, > safe_host->m_instr_class_stages_stats); > return; > } > > > > > > aggregate_all_stages(m_instr_class_stages_stats, > global_instr_class_stages_array); > return; >} > >void PFS_account::aggregate_statements(PFS_user *safe_user, PFS_host *safe_host) >{ > if (__builtin_expect((safe_user != __null && safe_host != __null),1)) > { > > > > > > > aggregate_all_statements(m_instr_class_statements_stats, > safe_user->m_instr_class_statements_stats, > safe_host->m_instr_class_statements_stats); > return; > } > > if (safe_user != __null) > { > > > > > > > aggregate_all_statements(m_instr_class_statements_stats, > safe_user->m_instr_class_statements_stats, > global_instr_class_statements_array); > return; > } > > if (safe_host != __null) > { > > > > > aggregate_all_statements(m_instr_class_statements_stats, > safe_host->m_instr_class_statements_stats); > return; > } > > > > > > aggregate_all_statements(m_instr_class_statements_stats, > global_instr_class_statements_array); > return; >} > >void PFS_account::aggregate_stats(PFS_user *safe_user, PFS_host *safe_host) >{ > if (__builtin_expect((safe_user != __null && safe_host != __null),1)) > { > safe_user->m_disconnected_count+= m_disconnected_count; > safe_host->m_disconnected_count+= m_disconnected_count; > m_disconnected_count= 0; > return; > } > > if (safe_user != __null) > { > safe_user->m_disconnected_count+= m_disconnected_count; > m_disconnected_count= 0; > return; > } > > if (safe_host != __null) > { > safe_host->m_disconnected_count+= m_disconnected_count; > m_disconnected_count= 0; > return; > } > > m_disconnected_count= 0; > return; >} > >void PFS_account::release() >{ > dec_refcount(); >} > >PFS_account *sanitize_account(PFS_account *unsafe) >{ > if ((&account_array[0] <= unsafe) && > (unsafe < &account_array[account_max])) > return unsafe; > return __null; >} > >void purge_account(PFS_thread *thread, PFS_account *account, > PFS_user *safe_user, PFS_host *safe_host) >{ > account->aggregate(safe_user, safe_host); > > LF_PINS *pins= get_account_hash_pins(thread); > if (__builtin_expect((pins == __null),0)) > return; > > PFS_account **entry; > entry= reinterpret_cast<PFS_account**> > (lf_hash_search(&account_hash, pins, > account->m_key.m_hash_key, > account->m_key.m_key_length)); > if (entry && (entry != ((void*)(intptr)1))) > { > > > do { } while(0); > if (account->get_refcount() == 0) > { > lf_hash_delete(&account_hash, pins, > account->m_key.m_hash_key, > account->m_key.m_key_length); > if (account->m_user != __null) > { > account->m_user->release(); > account->m_user= __null; > } > if (account->m_host != __null) > { > account->m_host->release(); > account->m_host= __null; > } > account->m_lock.allocated_to_free(); > } > } > > do { ; my_atomic_storeptr(&((pins))->pin[2], (__null)); ; } while (0); >} > > >void purge_all_account(void) >{ > PFS_thread *thread= PFS_thread::get_current_thread(); > if (__builtin_expect((thread == __null),0)) > return; > > PFS_account *pfs= account_array; > PFS_account *pfs_last= account_array + account_max; > PFS_user *user; > PFS_host *host; > > for ( ; pfs < pfs_last; pfs++) > { > if (pfs->m_lock.is_populated()) > { > user= sanitize_user(pfs->m_user); > host= sanitize_host(pfs->m_host); > pfs->aggregate_stats(user, host); > > if (pfs->get_refcount() == 0) > purge_account(thread, pfs, user, host); > } > } >}
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 1093467
: 909284