summaryrefslogtreecommitdiff
path: root/iconv
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-06-11 21:57:23 +0000
committerUlrich Drepper <drepper@redhat.com>2003-06-11 21:57:23 +0000
commitdd9423a67a7650a9b0f50d8151e4f3797c5a14f8 (patch)
tree2b796d5a03925d5782c12a7844c54f631f7d789c /iconv
parentc98d505c4dd96f7a58a3434fadbe4f6c30c29b08 (diff)
Update.
2003-06-11 Ulrich Drepper <drepper@redhat.com> * allocatestack.c (queue_stack): Always inline. * ptreadhP.h (__do_cancel): Likewise.
Diffstat (limited to 'iconv')
-rw-r--r--iconv/Makefile6
-rw-r--r--iconv/gconv_cache.c2
-rw-r--r--iconv/gconv_charset.h11
-rw-r--r--iconv/gconv_conf.c6
-rw-r--r--iconv/gconv_db.c3
-rw-r--r--iconv/gconv_int.h7
-rw-r--r--iconv/gconv_simple.c12
-rw-r--r--iconv/iconvconfig.c2
-rw-r--r--iconv/loop.c2
9 files changed, 32 insertions, 19 deletions
diff --git a/iconv/Makefile b/iconv/Makefile
index 15846c2c07..9fb41db9df 100644
--- a/iconv/Makefile
+++ b/iconv/Makefile
@@ -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
diff --git a/iconv/gconv_cache.c b/iconv/gconv_cache.c
index 6d19f9f052..9b695c377d 100644
--- a/iconv/gconv_cache.c
+++ b/iconv/gconv_cache.c
@@ -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);
diff --git a/iconv/gconv_charset.h b/iconv/gconv_charset.h
index f2eab2d4bd..31b545f2e1 100644
--- a/iconv/gconv_charset.h
+++ b/iconv/gconv_charset.h
@@ -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;
diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c
index 746c2245a3..1fa7d0e9f8 100644
--- a/iconv/gconv_conf.c
+++ b/iconv/gconv_conf.c
@@ -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)
{
diff --git a/iconv/gconv_db.c b/iconv/gconv_db.c
index 020b556d5e..158e0e186e 100644
--- a/iconv/gconv_db.c
+++ b/iconv/gconv_db.c
@@ -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'
diff --git a/iconv/gconv_int.h b/iconv/gconv_int.h
index dec29d9c14..a5fb728447 100644
--- a/iconv/gconv_int.h
+++ b/iconv/gconv_int.h
@@ -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) \
diff --git a/iconv/gconv_simple.c b/iconv/gconv_simple.c
index 69489d892b..4bb7a911cd 100644
--- a/iconv/gconv_simple.c
+++ b/iconv/gconv_simple.c
@@ -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,
diff --git a/iconv/iconvconfig.c b/iconv/iconvconfig.c
index 33ffeb34fc..cd243f6807 100644
--- a/iconv/iconvconfig.c
+++ b/iconv/iconvconfig.c
@@ -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;
diff --git a/iconv/loop.c b/iconv/loop.c
index d792f4a8a2..1918fe5007 100644
--- a/iconv/loop.c
+++ b/iconv/loop.c
@@ -257,6 +257,7 @@
/* 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,