* include/stdlib.h (__libc_drand48_data): Declare as hidden.
	* stdlib/drand48.c: Remove declaration of __libc_drand48_data here.
	* stdlib/erand48.c: Likewise.
	* stdlib/jrand48.c: Likewise.
	* stdlib/lcong48.c: Likewise.
	* stdlib/lrand48.c: Likewise.
	* stdlib/mrand48.c: Likewise.
	* stdlib/nrand48.c: Likewise.
	* stdlib/seed48.c: Likewise.
	* stdlib/srand48.c: Likewise.

	* stdio-common/_itoa.c (_itoa_base_table): Declare as hidden.
	(_itoa_lower_digits_internal): New declaration.
	(_itoa_upper_digits_internal): New declaration.
	(_itoa): Use INTUSE to acces _itoa_upper_digits and _itoa_lower_digits.
	* stdio-common.h (_itoa_lower_digits_internal): New declaration.
	(_itoa_upper_digits_internal): New declaration.
	(_itoa_word): Use INTUSE to acces _itoa_upper_digits and
	_itoa_lower_digits.
	* stdio-common/itoa-digits.c: Use INTVARDEF with _itoa_lower_digits.
	* stdio-common/itoa-udigits.c: Use INTVARDEF with _itoa_upper_digits.

	* elf/dl-minimal.c (_itoa): Declare _itoa_lower_digits as hidden.
	* elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.

	* stdio-common/_itowa.c (_itoa_base_table): Declare as hidden.
	(_itowa_lower_digits): Likewise.
	(_itowa_upper_digits): Likewise.
	* stdio-common/_itowa.h (_itowa_lower_digits): Likewise.
	(_itowa_upper_digits): Likewise.

	* intl/plural-exp.h (attribute_hidden): Define as empty macro if
	not already defined.
	(GERMANIC_PLURAL): Declare as hidden.

	* posix/getopt.c (__getopt_initialized): Declare as hidden.
	(attribute_hidden): Define as empty macro if not already defined.

	* iconv/gconv_int.h (__gconv_path_elem): Declare hidden.
	(__gconv_max_path_elem_len): Likewise.
	(__gconv_path_envvar): Likewise.

	* math/Makefile (gmp-objs): Remove mp_clz_tab.
	* stdlib/Makefile (aux): Remove mp_clz_tab.
	* stdlib/mp_clz_tab.c: Removed.  Not needed anywhere.

	* stdlib/exit.h (__exit_funcs): Declare as hidden.
This commit is contained in:
Ulrich Drepper 2002-03-12 20:04:56 +00:00
parent 418f17011f
commit aa32f79837
26 changed files with 109 additions and 90 deletions

View File

@ -1,5 +1,53 @@
2002-03-12 Ulrich Drepper <drepper@redhat.com>
* include/stdlib.h (__libc_drand48_data): Declare as hidden.
* stdlib/drand48.c: Remove declaration of __libc_drand48_data here.
* stdlib/erand48.c: Likewise.
* stdlib/jrand48.c: Likewise.
* stdlib/lcong48.c: Likewise.
* stdlib/lrand48.c: Likewise.
* stdlib/mrand48.c: Likewise.
* stdlib/nrand48.c: Likewise.
* stdlib/seed48.c: Likewise.
* stdlib/srand48.c: Likewise.
* stdio-common/_itoa.c (_itoa_base_table): Declare as hidden.
(_itoa_lower_digits_internal): New declaration.
(_itoa_upper_digits_internal): New declaration.
(_itoa): Use INTUSE to acces _itoa_upper_digits and _itoa_lower_digits.
* stdio-common.h (_itoa_lower_digits_internal): New declaration.
(_itoa_upper_digits_internal): New declaration.
(_itoa_word): Use INTUSE to acces _itoa_upper_digits and
_itoa_lower_digits.
* stdio-common/itoa-digits.c: Use INTVARDEF with _itoa_lower_digits.
* stdio-common/itoa-udigits.c: Use INTVARDEF with _itoa_upper_digits.
* elf/dl-minimal.c (_itoa): Declare _itoa_lower_digits as hidden.
* elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.
* stdio-common/_itowa.c (_itoa_base_table): Declare as hidden.
(_itowa_lower_digits): Likewise.
(_itowa_upper_digits): Likewise.
* stdio-common/_itowa.h (_itowa_lower_digits): Likewise.
(_itowa_upper_digits): Likewise.
* intl/plural-exp.h (attribute_hidden): Define as empty macro if
not already defined.
(GERMANIC_PLURAL): Declare as hidden.
* posix/getopt.c (__getopt_initialized): Declare as hidden.
(attribute_hidden): Define as empty macro if not already defined.
* iconv/gconv_int.h (__gconv_path_elem): Declare hidden.
(__gconv_max_path_elem_len): Likewise.
(__gconv_path_envvar): Likewise.
* math/Makefile (gmp-objs): Remove mp_clz_tab.
* stdlib/Makefile (aux): Remove mp_clz_tab.
* stdlib/mp_clz_tab.c: Removed. Not needed anywhere.
* stdlib/exit.h (__exit_funcs): Declare as hidden.
* posix/bug-regex5.c (main): Use nl_langinfo instead of _NL_CURRENT.
* locale/localeinfo.h: Add attribute_hidden to _nl_current_LC_XXX,

View File

@ -290,7 +290,7 @@ _itoa (value, buflim, base, upper_case)
unsigned int base;
int upper_case;
{
extern const char _itoa_lower_digits[];
extern const char _itoa_lower_digits[] attribute_hidden;
assert (! upper_case);

View File

@ -210,7 +210,7 @@ void
internal_function
_dl_reloc_bad_type (struct link_map *map, unsigned int type, int plt)
{
extern const char _itoa_lower_digits[];
extern const char _itoa_lower_digits[] attribute_hidden;
#define DIGIT(b) _itoa_lower_digits[(b) & 0xf];
/* XXX We cannot translate these messages. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -33,9 +33,9 @@ struct path_elem
};
/* Variable with search path for `gconv' implementation. */
extern struct path_elem *__gconv_path_elem;
extern struct path_elem *__gconv_path_elem attribute_hidden;
/* Maximum length of a single path element. */
extern size_t __gconv_max_path_elem_len;
extern size_t __gconv_max_path_elem_len attribute_hidden;
/* Structure for alias definition. Simply two strings. */
@ -121,7 +121,7 @@ extern size_t __gconv_nmodules;
extern struct gconv_module *__gconv_modules_db;
/* Value of the GCONV_PATH environment variable. */
extern const char *__gconv_path_envvar;
extern const char *__gconv_path_envvar attribute_hidden;
/* The gconv functions expects the name to be in upper case and complete,

View File

@ -38,6 +38,9 @@ extern int __lcong48_r (unsigned short int __param[7],
extern int __drand48_iterate (unsigned short int __xsubi[3],
struct drand48_data *__buffer);
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data attribute_hidden;
extern int __setenv (__const char *__name, __const char *__value,
int __replace);
extern int __unsetenv (__const char *__name);

View File

@ -1,5 +1,5 @@
/* Expression parsing and evaluation for plural form selection.
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
Written by Ulrich Drepper <drepper@cygnus.com>, 2000.
This file is part of the GNU C Library.
@ -106,10 +106,14 @@ struct parse_args
# define EXTRACT_PLURAL_EXPRESSION extract_plural_expression
#endif
#ifndef attribute_hidden
# define attribute_hidden
#endif
extern void FREE_EXPRESSION PARAMS ((struct expression *exp))
internal_function;
extern int PLURAL_PARSE PARAMS ((void *arg));
extern struct expression GERMANIC_PLURAL;
extern struct expression GERMANIC_PLURAL attribute_hidden;
extern void EXTRACT_PLURAL_EXPRESSION PARAMS ((const char *nullentry,
struct expression **pluralp,
unsigned long int *npluralsp))

View File

@ -1,4 +1,4 @@
# Copyright (C) 1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc.
# Copyright (C) 1996-2001, 2002 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
@ -183,7 +183,7 @@ o = .os
endif
gmp-objs = $(patsubst %,$(common-objpfx)stdlib/%$o,\
add_n sub_n cmp addmul_1 mul_1 mul_n divmod_1 \
lshift rshift mp_clz_tab udiv_qrnnd inlines)
lshift rshift udiv_qrnnd inlines)
$(objpfx)atest-exp: $(gmp-objs)
$(objpfx)atest-sincos: $(gmp-objs)
$(objpfx)atest-exp2: $(gmp-objs)

View File

@ -2,7 +2,7 @@
NOTE: getopt is now part of the C library, so if you don't know what
"Keep this file name-space clean" means, talk to drepper@gnu.org
before changing it!
Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001
Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@ -91,6 +91,10 @@
# endif
#endif
#ifndef attribute_hidden
# define attribute_hidden
#endif
/* This version of `getopt' appears to the caller like standard Unix `getopt'
but it behaves differently for the user, since it allows the user
to intersperse the options with the other arguments.
@ -134,7 +138,7 @@ int optind = 1;
causes problems with re-calling getopt as programs generally don't
know that. */
int __getopt_initialized;
int __getopt_initialized attribute_hidden;
/* The next char to be scanned in the option-element
in which the last option character we returned was found.

View File

@ -78,7 +78,7 @@ struct base_table_t
/* Local variables. */
const struct base_table_t _itoa_base_table[] =
const struct base_table_t _itoa_base_table[] attribute_hidden =
{
#if BITS_PER_MP_LIMB == 64
/* 2 */ {SEL1(0ul) 1, 1},
@ -158,8 +158,10 @@ const struct base_table_t _itoa_base_table[] =
/* Lower-case digits. */
extern const char _itoa_lower_digits[];
extern const char _itoa_lower_digits_internal[] attribute_hidden;
/* Upper-case digits. */
extern const char _itoa_upper_digits[];
extern const char _itoa_upper_digits_internal[] attribute_hidden;
char *
@ -169,7 +171,9 @@ _itoa (value, buflim, base, upper_case)
unsigned int base;
int upper_case;
{
const char *digits = upper_case ? _itoa_upper_digits : _itoa_lower_digits;
const char *digits = (upper_case
? INTUSE(_itoa_upper_digits)
: INTUSE(_itoa_lower_digits));
const struct base_table_t *brec = &_itoa_base_table[base - 2];
switch (base)

View File

@ -29,12 +29,18 @@
extern char *_itoa (unsigned long long int value, char *buflim,
unsigned int base, int upper_case);
extern const char _itoa_upper_digits[];
extern const char _itoa_upper_digits_internal[] attribute_hidden;
extern const char _itoa_lower_digits[];
extern const char _itoa_lower_digits_internal[] attribute_hidden;
static inline char * __attribute__ ((unused))
_itoa_word (unsigned long value, char *buflim,
unsigned int base, int upper_case)
{
extern const char _itoa_upper_digits[], _itoa_lower_digits[];
const char *digits = upper_case ? _itoa_upper_digits : _itoa_lower_digits;
const char *digits = (upper_case
? INTUSE(_itoa_upper_digits)
: INTUSE(_itoa_lower_digits));
switch (base)
{

View File

@ -1,5 +1,5 @@
/* Internal function for converting integers to ASCII.
Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1994,1995,1996,1999,2000,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Torbjorn Granlund <tege@matematik.su.se>
and Ulrich Drepper <drepper@gnu.org>.
@ -77,12 +77,12 @@ struct base_table_t
#endif
/* Factor table for the different bases. */
extern const struct base_table_t _itoa_base_table[];
extern const struct base_table_t _itoa_base_table[] attribute_hidden;
/* Lower-case digits. */
extern const wchar_t _itowa_lower_digits[];
extern const wchar_t _itowa_lower_digits[] attribute_hidden;
/* Upper-case digits. */
extern const wchar_t _itowa_upper_digits[];
extern const wchar_t _itowa_upper_digits[] attribute_hidden;
wchar_t *

View File

@ -35,7 +35,8 @@ __attribute__ ((unused))
_itowa_word (unsigned long value, wchar_t *buflim,
unsigned int base, int upper_case)
{
extern const wchar_t _itowa_upper_digits[], _itowa_lower_digits[];
extern const wchar_t _itowa_upper_digits[] attribute_hidden;
extern const wchar_t _itowa_lower_digits[] attribute_hidden;
const wchar_t *digits = (upper_case
? _itowa_upper_digits : _itowa_lower_digits);
wchar_t *bp = buflim;

View File

@ -1,5 +1,5 @@
/* Digits.
Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1994,1995,1996,1999,2000,2002 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
@ -20,3 +20,4 @@
/* Lower-case digits. */
const char _itoa_lower_digits[36]
= "0123456789abcdefghijklmnopqrstuvwxyz";
INTVARDEF(_itoa_lower_digits)

View File

@ -1,5 +1,5 @@
/* Digits.
Copyright (C) 1994, 1995, 1996, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1994,1995,1996,1999,2000,2002 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
@ -20,3 +20,4 @@
/* Upper-case digits. */
const char _itoa_upper_digits[36]
= "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
INTVARDEF(_itoa_upper_digits)

View File

@ -70,7 +70,9 @@ mpn-headers = longlong.h gmp.h gmp-impl.h gmp-mparam.h asm-syntax.h
routines := $(strip $(routines) $(mpn-routines)) \
dbl2mpn ldbl2mpn \
mpn2flt mpn2dbl mpn2ldbl
aux := mp_clz_tab fpioconst
# mp_clz seems not to be used. At least on x86. If removing the file
# does not cause problem clean this up and actually remove the file.
aux := fpioconst# mp_clz_tab
distribute := $(distribute) $(mpn-headers) gen-mpn-copy fpioconst.h
generated += isomac isomac.out

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997, 1998, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1995,1996,1997,1998,2001,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
double
drand48 ()

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
double
erand48 (xsubi)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1996, 1997, 1999, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1991,1996,1997,1999,2001,2002 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
@ -56,7 +56,7 @@ struct exit_function_list
size_t idx;
struct exit_function fns[32];
};
extern struct exit_function_list *__exit_funcs;
extern struct exit_function_list *__exit_funcs attribute_hidden;
extern struct exit_function *__new_exitfn (void);

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
long int
jrand48 (xsubi)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
void
lcong48 (param)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997, 1998, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1995,1996,1997,1998,2001,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
long int
lrand48 ()

View File

@ -1,37 +0,0 @@
/* __clz_tab -- support for longlong.h
Copyright (C) 1991, 1993, 1994, 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library. Its master source is NOT part of
the C library, however. The master source lives in the GNU MP Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#if 0
#include "gmp.h"
#include "gmp-impl.h"
#endif
const
unsigned char __clz_tab[] =
{
0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,
8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,
8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,
8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,
};

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997, 1998, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1995,1996,1997,1998,2001,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
long int
mrand48 ()

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
long int
nrand48 (xsubi)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997, 1998, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1995,1996,1997,1998,2001,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
unsigned short int *
seed48 (seed16v)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -19,8 +19,6 @@
#include <stdlib.h>
/* Global state for non-reentrant functions. Defined in drand48-iter.c. */
extern struct drand48_data __libc_drand48_data;
void
srand48 (seedval)