]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Wed, 11 Jun 2003 21:57:23 +0000 (21:57 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 11 Jun 2003 21:57:23 +0000 (21:57 +0000)
2003-06-11  Ulrich Drepper  <drepper@redhat.com>

* allocatestack.c (queue_stack): Always inline.
* ptreadhP.h (__do_cancel): Likewise.

41 files changed:
argp/argp-help.c
elf/dl-load.c
elf/dl-version.c
elf/do-lookup.h
iconv/Makefile
iconv/gconv_cache.c
iconv/gconv_charset.h
iconv/gconv_conf.c
iconv/gconv_db.c
iconv/gconv_int.h
iconv/gconv_simple.c
iconv/iconvconfig.c
iconv/loop.c
iconvdata/cns11643.h
iconvdata/cns11643l1.h
iconvdata/euc-kr.c
iconvdata/gb2312.h
iconvdata/jis0201.h
iconvdata/jis0208.h
iconvdata/jis0212.h
iconvdata/jisx0213.h
iconvdata/ksc5601.h
iconvdata/utf-7.c
include/libc-symbols.h
include/set-hooks.h
inet/Makefile
intl/Makefile
intl/dcigettext.c
intl/hash-string.c [new file with mode: 0644]
intl/hash-string.h
intl/loadmsgcat.c
io/ftw.c
locale/findlocale.c
locale/programs/linereader.c
locale/programs/linereader.h
locale/setlocale.c
locale/weight.h
locale/weightwc.h
nptl/ChangeLog
nptl/allocatestack.c
nptl/pthreadP.h

index af23d93fe27779cb24a6c9b47a40271ba6af7ce8..208fd86d6bd74502b00f8d26c4c20cd2b88c6478 100644 (file)
@@ -1,5 +1,5 @@
 /* Hierarchial argument parsing help output
-   Copyright (C) 1995-2000, 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1995-2000, 2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Miles Bader <miles@gnu.ai.mit.edu>.
 
@@ -521,7 +521,7 @@ hol_free (struct hol *hol)
   free (hol);
 }
 \f
-static inline int
+static int
 hol_entry_short_iterate (const struct hol_entry *entry,
                         int (*func)(const struct argp_option *opt,
                                     const struct argp_option *real,
index 8b0c82bb5249abd328eed1a20227710bd7d4b6a4..9198427edda8e6124aeb21ae74d18c1924690a90 100644 (file)
@@ -361,7 +361,7 @@ static struct r_search_path_struct rtld_search_dirs;
 
 static size_t max_dirnamelen;
 
-static inline struct r_search_path_elem **
+static struct r_search_path_elem **
 fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep,
              int check_trusted, const char *what, const char *where)
 {
@@ -1935,8 +1935,7 @@ _dl_rtld_di_serinfo (struct link_map *loader, Dl_serinfo *si, bool counting)
 
   unsigned int idx = 0;
   char *allocptr = (char *) &si->dls_serpath[si->dls_cnt];
-  inline void add_path (const struct r_search_path_struct *sps,
-                       unsigned int flags)
+  void add_path (const struct r_search_path_struct *sps, unsigned int flags)
 # define add_path(sps, flags) add_path(sps, 0) /* XXX */
     {
       if (sps->dirs != (void *) -1)
index e9553e4744a02e5978c4ef663fb9f2b08dd34fa4..3daea87848f7547fac34f76e291bfa9f0d3b1871 100644 (file)
@@ -1,5 +1,5 @@
 /* Handle symbol and library versioning.
-   Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
+   Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -53,6 +53,7 @@
 
 
 static inline struct link_map *
+__attribute ((always_inline))
 find_needed (const char *name, struct link_map *map)
 {
   struct link_map *tmap;
index be75fb7b00be08b5c098cafb772769cf45e49612..8ba07253e376d9215495f6d2c8fde97760fdd117 100644 (file)
@@ -1,5 +1,5 @@
 /* Look up a symbol in the loaded objects.
-   Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc.
+   Copyright (C) 1995-2002, 2003 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
@@ -28,7 +28,7 @@
 /* Inner part of the lookup functions.  We return a value > 0 if we
    found the symbol, the value 0 if nothing is found and < 0 if
    something bad happened.  */
-static inline int
+static int
 FCT (const char *undef_name, unsigned long int hash, const ElfW(Sym) *ref,
      struct sym_val *result, struct r_scope_elem *scope, size_t i, ARG,
      struct link_map *skip, int type_class)
index 15846c2c07ce8eaef8413020e385fea3b65e1b4a..9fb41db9dfd21284068f3bfaacaad60e2f7792ea 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1997,1998,2000,2001,2002,2003 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
@@ -35,11 +35,11 @@ CFLAGS-gconv_cache.c = -DSTATIC_GCONV
 CFLAGS-gconv_simple.c = -DSTATIC_GCONV
 endif
 
-vpath %.c ../locale/programs
+vpath %.c ../locale/programs ../intl
 
 iconv_prog-modules = iconv_charmap charmap charmap-dir linereader \
                     dummy-repertoire simple-hash xstrdup xmalloc
-iconvconfig-modules = strtab xmalloc
+iconvconfig-modules = strtab xmalloc hash-string
 extra-objs        = $(iconv_prog-modules:=.o) $(iconvconfig-modules:=.o)
 CFLAGS-iconv_prog.c = -I../locale/programs
 CFLAGS-iconv_charmap.c = -I../locale/programs
index 6d19f9f052f874ab369ea043e425ff63024b4840..9b695c377d7380176f1aafb24059c0b035430ad7 100644 (file)
@@ -159,7 +159,7 @@ find_module_idx (const char *str, size_t *idxp)
   hashtab = (struct hash_entry *) ((char *) gconv_cache
                                   + header->hash_offset);
 
-  hval = hash_string (str);
+  hval = __hash_string (str);
   idx = hval % header->hash_size;
   hval2 = 1 + hval % (header->hash_size - 2);
 
index f2eab2d4bdfac247870e0e383b05b273c8c0baef..31b545f2e1e24259eb27db4b26fbd7742d7ce1dd 100644 (file)
@@ -1,5 +1,5 @@
 /* Charset name normalization.
-   Copyright (C) 2001,02 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 2001.
 
@@ -22,7 +22,7 @@
 #include <locale.h>
 
 
-static inline void
+static void
 strip (char *wp, const char *s)
 {
   int slash_count = 0;
@@ -48,7 +48,7 @@ strip (char *wp, const char *s)
 }
 
 
-static inline char * __attribute__ ((unused))
+static inline char * __attribute__ ((unused, always_inline))
 upstr (char *dst, const char *str)
 {
   char *cp = dst;
@@ -56,8 +56,3 @@ upstr (char *dst, const char *str)
     /* nothing */;
   return dst;
 }
-
-
-/* If NAME is an codeset alias expand it.  */
-extern int __gconv_compare_alias (const char *name1, const char *name2)
-     internal_function;
index 746c2245a3534d5d8730cc1e5827ef874046db3c..1fa7d0e9f8d8b3a6bba6e930193d40b39b3489a9 100644 (file)
@@ -1,5 +1,5 @@
 /* Handle configuration data.
-   Copyright (C) 1997,98,99,2000,2001,2002 Free Software Foundation, Inc.
+   Copyright (C) 1997,98,99,2000,2001,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -125,7 +125,7 @@ detect_conflict (const char *alias)
 
 
 /* Add new alias.  */
-static inline void
+static void
 add_alias (char *rp, void *modules)
 {
   /* We now expect two more string.  The strings are normalized
@@ -178,7 +178,7 @@ add_alias (char *rp, void *modules)
 
 
 /* Insert a data structure for a new module in the search tree.  */
-static inline void
+static void
 internal_function
 insert_module (struct gconv_module *newp, int tobefreed)
 {
index 020b556d5eb587174c7324d42fed89ecc7d2dffa..158e0e186e4dd951812e97034cd53b2310ec195d 100644 (file)
@@ -1,5 +1,5 @@
 /* Provide access to the collection of available transformation modules.
-   Copyright (C) 1997,98,99,2000,2001,2002 Free Software Foundation, Inc.
+   Copyright (C) 1997,98,99,2000,2001,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -27,7 +27,6 @@
 
 #include <dlfcn.h>
 #include <gconv_int.h>
-#include <gconv_charset.h>
 
 
 /* Simple data structure for alias mapping.  We have two names, `from'
index dec29d9c14bb320ecf3917cf45a840f757c4bde5..a5fb7284475d76aad4224e75d7cfccd32d9ca52e 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -262,6 +262,11 @@ extern int __gconv_transliterate (struct __gconv_step *step,
                                  size_t *irreversible) attribute_hidden;
 
 
+/* If NAME is an codeset alias expand it.  */
+extern int __gconv_compare_alias (const char *name1, const char *name2)
+     internal_function;
+
+
 /* Builtin transformations.  */
 #ifdef _LIBC
 # define __BUILTIN_TRANSFORM(Name) \
index 69489d892bd45bce6a373c3aea9ff5f20accfb9d..4bb7a911cdd17e2f393c710d59b419933b09f7c4 100644 (file)
@@ -72,6 +72,7 @@ __gconv_btwoc_ascii (struct __gconv_step *step, unsigned char c)
 
 
 static inline int
+__attribute ((always_inline))
 internal_ucs4_loop (struct __gconv_step *step,
                    struct __gconv_step_data *step_data,
                    const unsigned char **inptrp, const unsigned char *inend,
@@ -113,6 +114,7 @@ internal_ucs4_loop (struct __gconv_step *step,
 
 #ifndef _STRING_ARCH_unaligned
 static inline int
+__attribute ((always_inline))
 internal_ucs4_loop_unaligned (struct __gconv_step *step,
                              struct __gconv_step_data *step_data,
                              const unsigned char **inptrp,
@@ -161,6 +163,7 @@ internal_ucs4_loop_unaligned (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 internal_ucs4_loop_single (struct __gconv_step *step,
                           struct __gconv_step_data *step_data,
                           const unsigned char **inptrp,
@@ -219,6 +222,7 @@ internal_ucs4_loop_single (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 ucs4_internal_loop (struct __gconv_step *step,
                    struct __gconv_step_data *step_data,
                    const unsigned char **inptrp, const unsigned char *inend,
@@ -283,6 +287,7 @@ ucs4_internal_loop (struct __gconv_step *step,
 
 #ifndef _STRING_ARCH_unaligned
 static inline int
+__attribute ((always_inline))
 ucs4_internal_loop_unaligned (struct __gconv_step *step,
                              struct __gconv_step_data *step_data,
                              const unsigned char **inptrp,
@@ -352,6 +357,7 @@ ucs4_internal_loop_unaligned (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 ucs4_internal_loop_single (struct __gconv_step *step,
                           struct __gconv_step_data *step_data,
                           const unsigned char **inptrp,
@@ -426,6 +432,7 @@ ucs4_internal_loop_single (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 internal_ucs4le_loop (struct __gconv_step *step,
                      struct __gconv_step_data *step_data,
                      const unsigned char **inptrp, const unsigned char *inend,
@@ -467,6 +474,7 @@ internal_ucs4le_loop (struct __gconv_step *step,
 
 #ifndef _STRING_ARCH_unaligned
 static inline int
+__attribute ((always_inline))
 internal_ucs4le_loop_unaligned (struct __gconv_step *step,
                                struct __gconv_step_data *step_data,
                                const unsigned char **inptrp,
@@ -518,6 +526,7 @@ internal_ucs4le_loop_unaligned (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 internal_ucs4le_loop_single (struct __gconv_step *step,
                             struct __gconv_step_data *step_data,
                             const unsigned char **inptrp,
@@ -573,6 +582,7 @@ internal_ucs4le_loop_single (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 ucs4le_internal_loop (struct __gconv_step *step,
                      struct __gconv_step_data *step_data,
                      const unsigned char **inptrp, const unsigned char *inend,
@@ -638,6 +648,7 @@ ucs4le_internal_loop (struct __gconv_step *step,
 
 #ifndef _STRING_ARCH_unaligned
 static inline int
+__attribute ((always_inline))
 ucs4le_internal_loop_unaligned (struct __gconv_step *step,
                                struct __gconv_step_data *step_data,
                                const unsigned char **inptrp,
@@ -711,6 +722,7 @@ ucs4le_internal_loop_unaligned (struct __gconv_step *step,
 
 
 static inline int
+__attribute ((always_inline))
 ucs4le_internal_loop_single (struct __gconv_step *step,
                             struct __gconv_step_data *step_data,
                             const unsigned char **inptrp,
index 33ffeb34fc09c9e6abeaaa14d31d6d3b775a5162..cd243f6807349ae4f298ec59d0e72b65f229f12d 100644 (file)
@@ -784,7 +784,7 @@ new_name (const char *str, struct Strent *strent)
   newp->name = str;
   newp->strent = strent;
   newp->module_idx = -1;
-  newp->hashval = hash_string (str);
+  newp->hashval = __hash_string (str);
 
   ++nnames;
 
index d792f4a8a246a642757bbc3b7fecb1c35dd0037f..1918fe5007e4b1fe64105669834cad479bcdf3cd 100644 (file)
 
 /* The function returns the status, as defined in gconv.h.  */
 static inline int
+__attribute ((always_inline))
 FCTNAME (LOOPFCT) (struct __gconv_step *step,
                   struct __gconv_step_data *step_data,
                   const unsigned char **inptrp, const unsigned char *inend,
@@ -342,6 +343,7 @@ FCTNAME (LOOPFCT) (struct __gconv_step *step,
 # define SINGLE(fct) SINGLE2 (fct)
 # define SINGLE2(fct) fct##_single
 static inline int
+__attribute ((always_inline))
 SINGLE(LOOPFCT) (struct __gconv_step *step,
                 struct __gconv_step_data *step_data,
                 const unsigned char **inptrp, const unsigned char *inend,
index 5117533ab4ca7dd9224f90965a3e7160f72e69d3..125f55f2286b8489d8b8eb93c18c7025084496a1 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for CNS 11643 handling.
-   Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -40,6 +40,7 @@ extern const uint32_t __cns11643l15_to_ucs4_tab[];
 
 
 static inline uint32_t
+__attribute ((always_inline))
 cns11643_to_ucs4 (const char **s, size_t avail, unsigned char offset)
 {
   unsigned char ch = *(*s);
@@ -140,6 +141,7 @@ extern const char __cns11643_from_ucs4p2c_tab[][3];
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_cns11643 (uint32_t wch, char *s, size_t avail)
 {
   unsigned int ch = (unsigned int) wch;
index be99888ab79b03a51fb4e909a2e187b828733c05..e4b8655b0a56a51af14c662bb3f95a32add46c81 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for CNS 11643, plane 1 handling.
-   Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999, 2000, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -26,6 +26,7 @@ extern const uint16_t __cns11643l1_to_ucs4_tab[];
 
 
 static inline uint32_t
+__attribute ((always_inline))
 cns11643l1_to_ucs4 (const unsigned char **s, size_t avail,
                    unsigned char offset)
 {
@@ -71,6 +72,7 @@ extern const char __cns11643l1_from_ucs4_tab14[][2];
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_cns11643l1 (uint32_t wch, unsigned char *s, size_t avail)
 {
   unsigned int ch = (unsigned int) wch;
index 7774720bd6a2028e9ca07264f1102ad19b9b5d88..289ff4c4199dd7a6964ce201d755779c6311e943 100644 (file)
@@ -1,5 +1,5 @@
 /* Mapping tables for EUC-KR handling.
-   Copyright (C) 1998, 1999, 2000-2002 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999, 2000-2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Jungshik Shin <jshin@pantheon.yale.edu>
    and Ulrich Drepper <drepper@cygnus.com>, 1998.
@@ -25,6 +25,7 @@
 
 
 static inline void
+__attribute ((always_inline))
 euckr_from_ucs4 (uint32_t ch, unsigned char *cp)
 {
   if (ch > 0x9f)
index c6856515c1ac4f12001e9980aaf081b2ca7918ac..f5eaaf2224ac163b20f3ec3d1f96cee61d8ec408 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for GB2312 conversion.
-   Copyright (C) 1998, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -30,6 +30,7 @@ extern const uint16_t __gb2312_to_ucs[];
 
 
 static inline uint32_t
+__attribute ((always_inline))
 gb2312_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 {
   unsigned char ch = *(*s);
@@ -67,6 +68,7 @@ extern const char __gb2312_from_ucs4_tab8[][2];
 extern const char __gb2312_from_ucs4_tab9[][2];
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_gb2312 (uint32_t wch, unsigned char *s, size_t avail)
 {
   unsigned int ch = (unsigned int) wch;
index 6fae3a2883196aeee4461cda230d9ade16e947aa..391e6d3f7cb65deba1213fc8907e4e435c668087 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for JISX0201 conversion.
-   Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -26,6 +26,7 @@ extern const uint32_t __jisx0201_to_ucs4[];
 
 
 static inline uint32_t
+__attribute ((always_inline))
 jisx0201_to_ucs4 (char ch)
 {
   uint32_t val = __jisx0201_to_ucs4[(unsigned char) ch];
@@ -38,6 +39,7 @@ jisx0201_to_ucs4 (char ch)
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_jisx0201 (uint32_t wch, char *s)
 {
   char ch;
index ef6b891eb67f9e68009aff43091c16c1e7d8c341..9dea38973ca73d635257cdb3875f99da9a8a5a37 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for JISX0208 conversion.
-   Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1997, 1998, 1999, 2000, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -43,6 +43,7 @@ struct jisx0208_ucs_idx
 
 
 static inline uint32_t
+__attribute ((always_inline))
 jisx0208_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 {
   unsigned char ch = *(*s);
@@ -70,6 +71,7 @@ jisx0208_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_jisx0208 (uint32_t wch, char *s, size_t avail)
 {
   unsigned int ch = (unsigned int) wch;
index f57778ebabfcc46f77258ca74577848d12081c4c..ba439e53ebce2c506d600e76d95c23a058fb40d1 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for JISX0212 conversion.
-   Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -42,6 +42,7 @@ extern const char __jisx0212_from_ucs[][2];
 
 
 static inline uint32_t
+__attribute ((always_inline))
 jisx0212_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 {
   const struct jisx0212_idx *rp = __jisx0212_to_ucs_idx;
@@ -77,6 +78,7 @@ jisx0212_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_jisx0212 (uint32_t wch, char *s, size_t avail)
 {
   const struct jisx0212_idx *rp = __jisx0212_from_ucs_idx;
index 5632e523bc5ba96cd8371bde9848d6dd92b2e3da..c92c70fdeeb9e04aeafd3d40eba5100ccb0505c9 100644 (file)
@@ -1,5 +1,5 @@
 /* Functions for JISX0213 conversion.
-   Copyright (C) 2002 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Bruno Haible <bruno@clisp.org>, 2002.
 
@@ -32,6 +32,7 @@ extern const uint16_t __jisx0213_from_ucs_level2[];
 #define NELEMS(arr) (sizeof (arr) / sizeof (arr[0]))
 
 static inline uint32_t
+__attribute ((always_inline))
 jisx0213_to_ucs4 (unsigned int row, unsigned int col)
 {
   uint32_t val;
@@ -64,6 +65,7 @@ jisx0213_to_ucs4 (unsigned int row, unsigned int col)
 }
 
 static inline uint16_t
+__attribute ((always_inline))
 ucs4_to_jisx0213 (uint32_t ucs)
 {
   if (ucs < NELEMS (__jisx0213_from_ucs_level1) << 6)
index 50e74fc9859a27b643fb1f0bebd4302d0ed5290a..603a337f891f14e8a12dac0a957f50cf522ea120 100644 (file)
@@ -1,5 +1,5 @@
 /* Access functions for KS C 5601-1992 based encoding conversion.
-   Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999, 2000, 2003 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
@@ -44,6 +44,7 @@ extern const struct map __ksc5601_hanja_from_ucs[KSC5601_HANJA];
 
 
 static inline uint32_t
+__attribute ((always_inline))
 ksc5601_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 {
   unsigned char ch = **s;
@@ -85,6 +86,7 @@ ksc5601_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
 }
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_ksc5601_hangul (uint32_t wch, unsigned char *s, size_t avail)
 {
   int l = 0;
@@ -116,6 +118,7 @@ ucs4_to_ksc5601_hangul (uint32_t wch, unsigned char *s, size_t avail)
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_ksc5601_hanja (uint32_t wch, unsigned char *s, size_t avail)
 {
   int l = 0;
@@ -146,6 +149,7 @@ ucs4_to_ksc5601_hanja (uint32_t wch, unsigned char *s, size_t avail)
 }
 
 static inline  size_t
+__attribute ((always_inline))
 ucs4_to_ksc5601_sym (uint32_t wch, unsigned char *s, size_t avail)
 {
   int l = 0;
@@ -177,6 +181,7 @@ ucs4_to_ksc5601_sym (uint32_t wch, unsigned char *s, size_t avail)
 
 
 static inline size_t
+__attribute ((always_inline))
 ucs4_to_ksc5601 (uint32_t wch, unsigned char *s, size_t avail)
 {
   if (wch >= 0xac00 && wch <= 0xd7a3)
index 64cf614208488a22374ad44bf935d452d3661cc9..ee2ae441b09d8a5261b956f9686176e1a025a51f 100644 (file)
@@ -1,5 +1,5 @@
 /* Conversion module for UTF-7.
-   Copyright (C) 2000-2002 Free Software Foundation, Inc.
+   Copyright (C) 2000-2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Bruno Haible <haible@clisp.cons.org>, 2000.
 
@@ -93,7 +93,7 @@ isxbase64 (uint32_t ch)
 
 
 /* Converts a value in the range 0..63 to a base64 encoded char.  */
-static inline unsigned char
+static unsigned char
 base64 (unsigned int i)
 {
   if (i < 26)
index ffda19c6ace5aa17e01aa85314922dd54a436426..e585a3b304af052245900fcedd0d269f6a490c54 100644 (file)
 #  endif
 
 /* Return a pointer (void *const *) to the first element of SET.  */
-#  define symbol_set_first_element(set)        (&__start_##set)
+#  define symbol_set_first_element(set)        ((void *const *) (&__start_##set))
 
 /* Return true iff PTR (a void *const *) has been incremented
    past the last element in SET.  */
-#  define symbol_set_end_p(set, ptr)   ((ptr) >= &__stop_##set)
+#  define symbol_set_end_p(set, ptr) ((ptr) >= (void *const *) &__stop_##set)
 
 # else /* Not ELF: a.out.  */
 
index 1bc411ba6f366c15b989c33d8df4d641021edcaf..770b305309f7b352b775c588a934cb6dbded6c6c 100644 (file)
@@ -1,5 +1,5 @@
 /* Macros for using symbol sets for running lists of functions.
-   Copyright (C) 1994, 1995, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1994, 1995, 1997, 2000, 2003 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
 /* Run all the functions hooked on the set called NAME.
    Each function is called like this: `function ARGS'.  */
 
-# define RUN_HOOK(NAME, ARGS)                          \
-do {                                                   \
-  void *const *__unbounded ptr;                                \
-  for (ptr = symbol_set_first_element (NAME);          \
-       ! symbol_set_end_p (NAME, ptr); ++ptr)          \
-    (*(__##NAME##_hook_function_t *) *ptr) ARGS;       \
+# define RUN_HOOK(NAME, ARGS)                                                \
+do {                                                                         \
+  void *const *__unbounded ptr;                                                      \
+  for (ptr = (void *const *) symbol_set_first_element (NAME);                \
+       ! symbol_set_end_p (NAME, ptr); ++ptr)                                \
+    (*(__##NAME##_hook_function_t *) *ptr) ARGS;                             \
 } while (0)
 
 /* Define a hook variable with NAME and PROTO, and a function called RUNNER
index b27687709908a411b7db922cf09cb40f8c9aa841..96313f40c2aeee696ce273e53bfc152d3e1dc62d 100644 (file)
@@ -47,7 +47,7 @@ routines := htonl htons               \
            getaliasent_r getaliasent getaliasname getaliasname_r \
            in6_addr getnameinfo if_index ifaddrs
 
-aux := check_pf
+aux := check_pf ifreq
 
 tests := htontest test_ifindex tst-ntoa tst-ether_aton tst-network \
         tst-gethnm test-ifaddrs
index ad38e263f977e3d1fa7e567dea5a43371ce2b8a0..32212c0e2948a6eb72dfbeb0d8d268f918ec3edb 100644 (file)
@@ -22,8 +22,8 @@ subdir = intl
 headers = libintl.h
 routines = bindtextdom dcgettext dgettext gettext      \
           dcigettext dcngettext dngettext ngettext \
-          finddomain loadmsgcat localealias textdomain \
-          l10nflist explodename plural plural-exp
+          finddomain loadmsgcat localealias textdomain
+aux =     l10nflist explodename plural plural-exp hash-string
 distribute = gmo.h gettextP.h hash-string.h loadinfo.h locale.alias \
             plural.y plural-exp.h po2test.sed tst-gettext.sh tst-translit.sh \
             translit.po tst-gettext2.sh tstlang1.po tstlang2.po tstcodeset.po\
index 9118dbdda9ca5de1127061e0160e9db46121d485..fa53b7c5748f1f7e8159b7d0fb31ea05c970b44c 100644 (file)
@@ -1,5 +1,5 @@
 /* Implementation of the internal dcigettext function.
-   Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1995-2002, 2003 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
@@ -695,7 +695,7 @@ _nl_find_msg (domain_file, domainbinding, msgid, lengthp)
     {
       /* Use the hashing table.  */
       nls_uint32 len = strlen (msgid);
-      nls_uint32 hash_val = hash_string (msgid);
+      nls_uint32 hash_val = __hash_string (msgid);
       nls_uint32 idx = hash_val % domain->hash_size;
       nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2));
 
diff --git a/intl/hash-string.c b/intl/hash-string.c
new file mode 100644 (file)
index 0000000..e4b0f8f
--- /dev/null
@@ -0,0 +1,47 @@
+/* Implements a string hashing function.
+   Copyright (C) 1995, 1997, 1998, 2000, 2003 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
+   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.  */
+
+#include "hash-string.h"
+
+
+/* Defines the so called `hashpjw' function by P.J. Weinberger
+   [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools,
+   1986, 1987 Bell Telephone Laboratories, Inc.]  */
+unsigned long int
+__hash_string (str_param)
+     const char *str_param;
+{
+  unsigned long int hval, g;
+  const char *str = str_param;
+
+  /* Compute the hash value for the given string.  */
+  hval = 0;
+  while (*str != '\0')
+    {
+      hval <<= 4;
+      hval += (unsigned long int) *str++;
+      g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4));
+      if (g != 0)
+       {
+         hval ^= g >> (HASHWORDBITS - 8);
+         hval ^= g;
+       }
+    }
+  return hval;
+}
index ae515a7655629ea364cf070f81a92b56292abe9c..578a329e7ded7d3e063f83229c6f714dfcdd83f2 100644 (file)
@@ -1,5 +1,5 @@
 /* Implements a string hashing function.
-   Copyright (C) 1995, 1997, 1998, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1997, 1998, 2000, 2003 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
 /* Defines the so called `hashpjw' function by P.J. Weinberger
    [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools,
    1986, 1987 Bell Telephone Laboratories, Inc.]  */
-static unsigned long int hash_string PARAMS ((const char *__str_param));
-
-static inline unsigned long int
-hash_string (str_param)
-     const char *str_param;
-{
-  unsigned long int hval, g;
-  const char *str = str_param;
-
-  /* Compute the hash value for the given string.  */
-  hval = 0;
-  while (*str != '\0')
-    {
-      hval <<= 4;
-      hval += (unsigned long int) *str++;
-      g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4));
-      if (g != 0)
-       {
-         hval ^= g >> (HASHWORDBITS - 8);
-         hval ^= g;
-       }
-    }
-  return hval;
-}
+extern unsigned long int __hash_string PARAMS ((const char *__str_param))
+     attribute_hidden;
index afcbd3c9fb688d8864442b9294c93531e328f0e6..55dab143d31cdf927cf1419188e2afb793ed944e 100644 (file)
@@ -1,5 +1,5 @@
 /* Load needed message catalogs.
-   Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1995-2002, 2003 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
@@ -1209,7 +1209,7 @@ _nl_load_domain (domain_file, domainbinding)
                for (i = 0; i < n_sysdep_strings; i++)
                  {
                    const char *msgid = inmem_orig_sysdep_tab[i].pointer;
-                   nls_uint32 hash_val = hash_string (msgid);
+                   nls_uint32 hash_val = __hash_string (msgid);
                    nls_uint32 idx = hash_val % domain->hash_size;
                    nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2));
 
index 64cab00252bd6c4cd9488b0b4ad56fcbc69c3011..c7c2038c06edf03157b05f9eef5e006f724332f6 100644 (file)
--- a/io/ftw.c
+++ b/io/ftw.c
@@ -258,6 +258,7 @@ find_object (struct ftw_data *data, struct STAT *st)
 
 
 static inline int
+__attribute ((always_inline))
 open_dir_stream (struct ftw_data *data, struct dir_data *dirp)
 {
   int result = 0;
@@ -348,7 +349,8 @@ open_dir_stream (struct ftw_data *data, struct dir_data *dirp)
 }
 
 
-static inline int
+static int
+internal_function
 process_entry (struct ftw_data *data, struct dir_data *dir, const char *name,
               size_t namlen)
 {
index 9c9b85347fa3045d0f73c0bf4f981c3de3c4834b..04b197d266c032366a2ee2affccea33df961ebc9 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
 
@@ -28,6 +28,7 @@
 
 #include "localeinfo.h"
 #include "../iconv/gconv_charset.h"
+#include "../iconv/gconv_int.h"
 
 
 #ifdef NL_CURRENT_INDIRECT
index 1df7df7e5027ac13695bb5c3d8c785c9764da19a..c3865e4dd541f2981b1d8de12cb3e93bdd05cfcb 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
 
@@ -110,6 +110,35 @@ lr_eof (struct linereader *lr)
 }
 
 
+void
+lr_ignore_rest (struct linereader *lr, int verbose)
+{
+  if (verbose)
+    {
+      while (isspace (lr->buf[lr->idx]) && lr->buf[lr->idx] != '\n'
+            && lr->buf[lr->idx] != lr->comment_char)
+       if (lr->buf[lr->idx] == '\0')
+         {
+           if (lr_next (lr) < 0)
+             return;
+         }
+       else
+         ++lr->idx;
+
+      if (lr->buf[lr->idx] != '\n' && ! feof (lr->fp)
+         && lr->buf[lr->idx] != lr->comment_char)
+       lr_error (lr, _("trailing garbage at end of line"));
+    }
+
+  /* Ignore continued line.  */
+  while (lr->bufact > 0 && lr->buf[lr->bufact - 1] != '\n')
+    if (lr_next (lr) < 0)
+      break;
+
+  lr->idx = lr->bufact;
+}
+
+
 void
 lr_close (struct linereader *lr)
 {
index a44360979bfe3bc980239053547973098ce7d7fd..27043b24565081fd7d55a2eb98ff45117f553e3b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper, <drepper@gnu.org>.
 
@@ -95,6 +95,7 @@ extern struct token *lr_token (struct linereader *lr,
                               struct localedef_t *locale,
                               const struct repertoire_t *repertoire,
                               int verbose);
+extern void lr_ignore_rest (struct linereader *lr, int verbose);
 
 
 #define lr_error(lr, fmt, args...) \
@@ -103,6 +104,7 @@ extern struct token *lr_token (struct linereader *lr,
 
 
 static inline int
+__attribute ((always_inline))
 lr_getc (struct linereader *lr)
 {
   if (lr->idx == lr->bufact)
@@ -120,6 +122,7 @@ lr_getc (struct linereader *lr)
 
 
 static inline int
+__attribute ((always_inline))
 lr_ungetc (struct linereader *lr, int ch)
 {
   if (lr->idx == 0)
@@ -142,33 +145,4 @@ lr_ungetn (struct linereader *lr, size_t n)
 }
 
 
-static inline void
-lr_ignore_rest (struct linereader *lr, int verbose)
-{
-  if (verbose)
-    {
-      while (isspace (lr->buf[lr->idx]) && lr->buf[lr->idx] != '\n'
-            && lr->buf[lr->idx] != lr->comment_char)
-       if (lr->buf[lr->idx] == '\0')
-         {
-           if (lr_next (lr) < 0)
-             return;
-         }
-       else
-         ++lr->idx;
-
-      if (lr->buf[lr->idx] != '\n' && ! feof (lr->fp)
-         && lr->buf[lr->idx] != lr->comment_char)
-       lr_error (lr, _("trailing garbage at end of line"));
-    }
-
-  /* Ignore continued line.  */
-  while (lr->bufact > 0 && lr->buf[lr->bufact - 1] != '\n')
-    if (lr_next (lr) < 0)
-      break;
-
-  lr->idx = lr->bufact;
-}
-
-
 #endif /* linereader.h */
index 50c752826c9e1ff9bbb248d9bdcc6d9922db3cc1..9f6e96439b1b3f2e7d1d8b83299f656dc3b5df6e 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 95-99, 2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 92, 1995-2000, 2002, 2003 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
@@ -128,7 +128,7 @@ extern int _nl_msg_cat_cntr;
 
 
 /* Construct a new composite name.  */
-static inline char *
+static char *
 new_composite_name (int category, const char *newnames[__LC_LAST])
 {
   size_t last_len = 0;
index 439accdcaa4697bb09519b9fd9e18b11b14adab1..d67e9d9c2423e6cab7cb7cb946479ca77fbe88ea 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1996,1997,1998,1999,2000,2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Ulrich Drepper, <drepper@cygnus.com>.
 
@@ -19,6 +19,7 @@
 
 /* Find index of weight.  */
 static inline int32_t
+__attribute ((always_inline))
 findidx (const unsigned char **cpp)
 {
   int_fast32_t i = table[*(*cpp)++];
index 7eb72187f6133f4b563353b7fd2932db0ed5c1e7..649b7a77ad41ecdb5f1b91a8ec19f2fbd95a4d61 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2000, 2001, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Ulrich Drepper, <drepper@cygnus.com>.
 
@@ -19,6 +19,7 @@
 
 /* Find index of weight.  */
 static inline int32_t
+__attribute ((always_inline))
 findidx (const wint_t **cpp)
 {
   int32_t i;
index c7af57c8cadda0471e77e5598f4f4987fdf87bb9..feeae3b711fe08dadf6f1f4e71b66ceb6d1285ec 100644 (file)
@@ -1,3 +1,8 @@
+2003-06-11  Ulrich Drepper  <drepper@redhat.com>
+
+       * allocatestack.c (queue_stack): Always inline.
+       * ptreadhP.h (__do_cancel): Likewise.
+
 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
 
        * sysdeps/unix/sysv/linux/s390/sem_timedwait.c (sem_timedwait): Fix
index 9653b62cab1e559c4029d5624537b9a3b5061ef1..bfa5ea1160b4e5e57e84ca3e090d266c30cf9c57 100644 (file)
@@ -202,6 +202,7 @@ get_cached_stack (size_t *sizep, void **memp)
 /* Add a stack frame which is not used anymore to the stack.  Must be
    called with the cache lock held.  */
 static inline void
+__attribute ((always_inline))
 queue_stack (struct pthread *stack)
 {
   /* We unconditionally add the stack to the list.  The memory may
index fe982af87bb459915cafd50501aed70e88dbbef8..a979f07f0b3289dff1d2bf78ea148bd5864cd877 100644 (file)
@@ -116,7 +116,7 @@ extern void __pthread_unwind (__pthread_unwind_buf_t *__buf)
 
 /* Called when a thread reacts on a cancellation request.  */
 static inline void
-__attribute ((noreturn))
+__attribute ((noreturn, always_inline))
 __do_cancel (void)
 {
   struct pthread *self = THREAD_SELF;