[git commit master 1/1] ldso: get rid of _dl_lookup_hash

Carmelo Amoroso carmelo.amoroso at st.com
Thu Jan 20 14:31:14 UTC 2011


commit: http://git.uclibc.org/uClibc/commit/?id=8fb5b1cffd576ba9cec8c42df028e8afd6933dcd
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master

Now _dl_find_hash and _dl_lookup_hash are exactly the same, we can get rid
of the _dl_lookup_hash, reverting the _dl_find_hash from a wrapper of
_dl_lookup_hash to its original role.

Signed-off-by: Carmelo Amoroso <carmelo.amoroso at st.com>
---
 ldso/include/dl-hash.h     |    8 +-------
 ldso/ldso/bfin/elfinterp.c |    6 +++---
 ldso/ldso/dl-hash.c        |    2 +-
 3 files changed, 5 insertions(+), 11 deletions(-)

diff --git a/ldso/include/dl-hash.h b/ldso/include/dl-hash.h
index d1f9acc..d8b3e3e 100644
--- a/ldso/include/dl-hash.h
+++ b/ldso/include/dl-hash.h
@@ -142,15 +142,9 @@ extern struct elf_resolve * _dl_add_elf_hash_table(const char * libname,
 	DL_LOADADDR_TYPE loadaddr, unsigned long * dynamic_info,
 	unsigned long dynamic_addr, unsigned long dynamic_size);
 
-extern char *_dl_lookup_hash(const char *name, struct dyn_elf *rpnt,
+extern char *_dl_find_hash(const char *name, struct dyn_elf *rpnt,
 		struct elf_resolve *mytpnt, int type_class,
 		struct symbol_ref *symbol);
-static __always_inline char *_dl_find_hash(const char *name, struct dyn_elf *rpnt,
-		struct elf_resolve *mytpnt, int type_class,
-		struct symbol_ref *symbol)
-{
-	return _dl_lookup_hash(name, rpnt, mytpnt, type_class, symbol);
-}
 
 extern int _dl_linux_dynamic_link(void);
 
diff --git a/ldso/ldso/bfin/elfinterp.c b/ldso/ldso/bfin/elfinterp.c
index 5accbfc..48470d5 100644
--- a/ldso/ldso/bfin/elfinterp.c
+++ b/ldso/ldso/bfin/elfinterp.c
@@ -67,9 +67,9 @@ _dl_linux_resolver (struct elf_resolve *tpnt, int reloc_entry)
 	got_entry = (struct funcdesc_value *) DL_RELOC_ADDR(tpnt->loadaddr, this_reloc->r_offset);
 
 	/* Get the address to be used to fill in the GOT entry.  */
-	new_addr = _dl_lookup_hash(symname, tpnt->symbol_scope, NULL, 0, &sym_ref);
+	new_addr = _dl_find_hash(symname, tpnt->symbol_scope, NULL, 0, &sym_ref);
 	if (!new_addr) {
-		new_addr = _dl_lookup_hash(symname, NULL, NULL, 0, &sym_ref);
+		new_addr = _dl_find_hash(symname, NULL, NULL, 0, &sym_ref);
 		if (!new_addr) {
 			_dl_dprintf(2, "%s: can't resolve symbol '%s'\n",
 				    _dl_progname, symname);
@@ -184,7 +184,7 @@ _dl_do_reloc (struct elf_resolve *tpnt,struct dyn_elf *scope,
 	} else {
 
 		symbol_addr = (unsigned long)
-		  _dl_lookup_hash(symname, scope, NULL, 0, &sym_ref);
+		  _dl_find_hash(symname, scope, NULL, 0, &sym_ref);
 
 		/*
 		 * We want to allow undefined references to weak symbols - this might
diff --git a/ldso/ldso/dl-hash.c b/ldso/ldso/dl-hash.c
index 6db81a9..0454d61 100644
--- a/ldso/ldso/dl-hash.c
+++ b/ldso/ldso/dl-hash.c
@@ -268,7 +268,7 @@ _dl_lookup_sysv_hash(struct elf_resolve *tpnt, ElfW(Sym) *symtab, unsigned long
  * This function resolves externals, and this is either called when we process
  * relocations or when we call an entry in the PLT table for the first time.
  */
-char *_dl_lookup_hash(const char *name, struct dyn_elf *rpnt, struct elf_resolve *mytpnt,
+char *_dl_find_hash(const char *name, struct dyn_elf *rpnt, struct elf_resolve *mytpnt,
 	int type_class, struct symbol_ref *sym_ref)
 {
 	struct elf_resolve *tpnt = NULL;
-- 
1.7.3.4



More information about the uClibc-cvs mailing list