From fd5bdc0924e0cfd1688b632068c1b26f3b0c88da Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 15 Oct 2011 16:27:08 -0400 Subject: Optimize access to isXYZ and toXYZ tables The functions to get the pointers can now depend on the TLS variable be initialized. --- sysdeps/unix/sysv/linux/init-first.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sysdeps/unix/sysv/linux/init-first.c') diff --git a/sysdeps/unix/sysv/linux/init-first.c b/sysdeps/unix/sysv/linux/init-first.c index a60212f4ed..63cf1ed33a 100644 --- a/sysdeps/unix/sysv/linux/init-first.c +++ b/sysdeps/unix/sysv/linux/init-first.c @@ -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 #include #include #include @@ -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 -- cgit v1.2.3-70-g09d2