extern fpu_control_t _dl_fpu_control;
weak_extern (_dl_starting_up)extern fpu_control_t _dl_fpu_control;extern int _dl_fpu_control_set;/* Set nonzero if we have to be prepared for more then one libc being   used in the process.  Safe assumption if initializer never runs.  */int __libc_multiple_libcs = 1;/* Remember the command line argument and enviroment contents for   later calls of initializers for dynamic libraries.  */int __libc_argc;char **__libc_argv;static voidinit (int argc, char **argv, char **envp){#ifdef USE_NONOPTION_FLAGS  extern void __getopt_clean_environment (char **);#endif  /* The next variable is only here to work around a bug in gcc <= 2.7.2.2.     If the address would be taken inside the expression the optimizer     would try to be too smart and throws it away.  Grrr.  */  int *dummy_addr = &_dl_starting_up;  __libc_multiple_libcs = dummy_addr && !_dl_starting_up;  /* Make sure we don't initialize twice.  */  if (!__libc_multiple_libcs)    {#ifndef SHARED      DL_SYSDEP_OSCHECK (__libc_fatal);#endif      /* Set the FPU control word to the proper default value if the	 kernel would use a different value.  (In a static program we	 don't have this information.)  */#ifdef SHARED      if (__fpu_control != _dl_fpu_control)#endif	__setfpucw (__fpu_control);    }  /* Save the command-line arguments.  */  __libc_argc = argc;  __libc_argv = argv;  __environ = envp;#ifndef SHARED  __libc_init_secure ();#endif  __libc_init (argc, argv, envp);#ifdef USE_NONOPTION_FLAGS  /* This is a hack to make the special getopt in GNU libc working.  */  __getopt_clean_environment (envp);#endif#ifdef SHARED  __libc_global_ctors ();#endif}