static void print_statistics (void);
static void print_statistics (hp_timing_t *total_timep);
extern __typeof (__mempcpy) __mempcpy attribute_hidden;/* GCC has mental blocks about _exit.  */extern __typeof (_exit) exit_internal asm ("_exit") attribute_hidden;#define _exit exit_internal/* Helper function to handle errors while resolving symbols.  */static void print_unresolved (int errcode, const char *objname,			      const char *errsting);/* Helper function to handle errors when a version is missing.  */static void print_missing_version (int errcode, const char *objname,				   const char *errsting);/* Print the various times we collected.  */static void print_statistics (void);/* This is a list of all the modes the dynamic loader can be in.  */enum mode { normal, list, verify, trace };/* Process all environments variables the dynamic linker must recognize.   Since all of them start with `LD_' we are a bit smarter while finding   all the entries.  */static void process_envvars (enum mode *modep);int _dl_argc attribute_hidden;char **_dl_argv = NULL;INTDEF(_dl_argv)/* Nonzero if we were run directly.  */unsigned int _dl_skip_args attribute_hidden;/* Set nonzero during loading and initialization of executable and   libraries, cleared before the executable's entry point runs.  This   must not be initialized to nonzero, because the unused dynamic   linker loaded in for libc.so's "ld.so.1" dep will provide the   definition seen by libc.so's initializer; that value must be zero,   and will be since that dynamic linker's _dl_start and dl_main will   never be called.  */int _dl_starting_up = 0;INTVARDEF(_dl_starting_up)/* This is the structure which defines all variables global to ld.so   (except those which cannot be added for some reason).  */struct rtld_global _rtld_global =  {    /* Get architecture specific initializer.  */#include <dl-procinfo.c>    ._dl_debug_fd = STDERR_FILENO,#ifdef NEED_DL_SYSINFO    ._dl_sysinfo = DL_SYSINFO_DEFAULT,#endif    ._dl_lazy = 1,    ._dl_use_load_bias = -2,    ._dl_fpu_control = _FPU_DEFAULT,    ._dl_correct_cache_id = _DL_CACHE_DEFAULT_ID,    ._dl_hwcap_mask = HWCAP_IMPORTANT,    /* Default presumption without further information is executable stack.  */    ._dl_stack_flags = PF_R|PF_W|PF_X,#ifdef _LIBC_REENTRANT    ._dl_load_lock = _RTLD_LOCK_RECURSIVE_INITIALIZER#endif  };