1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-30 22:43:12 +03:00

Optimize access to isXYZ and toXYZ tables

The functions to get the pointers can now depend on the TLS variable
be initialized.
This commit is contained in:
Ulrich Drepper
2011-10-15 16:27:08 -04:00
parent 2d1f3a4db6
commit fd5bdc0924
10 changed files with 135 additions and 18 deletions

View File

@ -1,5 +1,5 @@
/* Initialization code run first thing by the ELF startup code. Linux version.
Copyright (C) 1995-2004, 2005, 2007 Free Software Foundation, Inc.
Copyright (C) 1995-2004, 2005, 2007, 2011 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -17,6 +17,7 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
@ -93,12 +94,14 @@ _init (int argc, char **argv, char **envp)
__getopt_clean_environment (envp);
#endif
/* Initialize ctype data. */
__ctype_init ();
#if defined SHARED && !defined NO_CTORS_DTORS_SECTIONS
__libc_global_ctors ();
#endif
}
/* This function is defined here so that if this file ever gets into
ld.so we will get a link error. Having this file silently included
in ld.so causes disaster, because the _init definition above will