[uClibc-cvs] uClibc/ldso/ldso/powerpc elfinterp.c,1.23,1.24

Erik Andersen andersen at uclibc.org
Thu Nov 6 13:03:47 UTC 2003


Update of /var/cvs/uClibc/ldso/ldso/powerpc
In directory winder:/tmp/cvs-serv24829/powerpc

Modified Files:
	elfinterp.c 
Log Message:
A few debugging cleanups


Index: elfinterp.c
===================================================================
RCS file: /var/cvs/uClibc/ldso/ldso/powerpc/elfinterp.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- elfinterp.c	5 Nov 2003 10:47:01 -0000	1.23
+++ elfinterp.c	6 Nov 2003 13:03:42 -0000	1.24
@@ -170,10 +170,9 @@
 	unsigned long insn_addr;
 	unsigned long *insns;
 	unsigned long new_addr;
+	char *symname;
 	int delta;
 
-	//DPRINTF("linux_resolver tpnt=%x reloc_entry=%x\n", tpnt, reloc_entry);
-
 	rel_addr = (ELF_RELOC *) (tpnt->dynamic_info[DT_JMPREL] + tpnt->loadaddr);
 
 	this_reloc = (void *)rel_addr + reloc_entry;
@@ -182,8 +181,10 @@
 
 	symtab = (Elf32_Sym *) (tpnt->dynamic_info[DT_SYMTAB] + tpnt->loadaddr);
 	strtab = (char *) (tpnt->dynamic_info[DT_STRTAB] + tpnt->loadaddr);
+	symname      = strtab + symtab[symtab_index].st_name;
 
 #if defined (__SUPPORT_LD_DEBUG__)
+	debug_sym(symtab,strtab,symtab_index);
 	debug_reloc(symtab,strtab,this_reloc);
 #endif
 
@@ -196,7 +197,10 @@
 	insn_addr = (unsigned long) tpnt->loadaddr +
 		(unsigned long) this_reloc->r_offset;
 
-	//DPRINTF("Resolving symbol %s %x --> ", strtab + symtab[symtab_index].st_name, insn_addr);
+#if defined (__SUPPORT_LD_DEBUG__)
+	if(_dl_debug_reloc && _dl_debug_detail)
+		_dl_dprintf(_dl_debug_file, "\n\tResolving symbol %s %x --> ", symname, insn_addr);
+#endif
 
 	/* Get the address of the GOT entry */
 	new_addr = (unsigned long) _dl_find_hash(
@@ -204,10 +208,14 @@
 		tpnt->symbol_scope, tpnt, resolver);
 	if (!new_addr) {
 		_dl_dprintf(2, "%s: can't resolve symbol '%s'\n", 
-			_dl_progname, strtab + symtab[symtab_index].st_name);
+			_dl_progname, symname);
 		_dl_exit(1);
 	};
-	//DPRINTF("%x\n", new_addr);
+
+#if defined (__SUPPORT_LD_DEBUG__)
+	if(_dl_debug_reloc && _dl_debug_detail)
+		_dl_dprintf(_dl_debug_file, "%x\n", new_addr);
+#endif
 
 	insns = (unsigned long *)insn_addr;
 	delta = new_addr - insn_addr;
@@ -442,7 +450,7 @@
 				break;
 #else
 				_dl_dprintf(2, "%s: symbol '%s' is type R_PPC_REL24\n\tCompile shared libraries with -fPIC!\n",
-						_dl_progname, strtab + symtab[symtab_index].st_name);
+						_dl_progname, symname);
 				_dl_exit(1);
 #endif
 			case R_PPC_RELATIVE:




More information about the uClibc-cvs mailing list