svn commit: trunk/uClibc/ldso: include ldso

vapier at uclibc.org vapier at uclibc.org
Wed Jul 5 19:31:49 UTC 2006


Author: vapier
Date: 2006-07-05 12:31:48 -0700 (Wed, 05 Jul 2006)
New Revision: 15644

Log:
patch from Bernd Schmidt to abstract away initializing of prog load addresses

Modified:
   trunk/uClibc/ldso/include/dl-defs.h
   trunk/uClibc/ldso/ldso/ldso.c


Changeset:
Modified: trunk/uClibc/ldso/include/dl-defs.h
===================================================================
--- trunk/uClibc/ldso/include/dl-defs.h	2006-07-05 19:27:41 UTC (rev 15643)
+++ trunk/uClibc/ldso/include/dl-defs.h	2006-07-05 19:31:48 UTC (rev 15644)
@@ -84,6 +84,14 @@
 	((LOADADDR) = (BASEADDR))
 #endif
 
+/* Initialize a LOADADDR representing the program.  It's called from
+ * DL_BOOT only.
+ */
+#ifndef DL_INIT_LOADADDR_PROG
+# define DL_INIT_LOADADDR_PROG(LOADADDR, BASEADDR) \
+	((LOADADDR) = (DL_LOADADDR_TYPE)(BASEADDR))
+#endif
+
 /* Test whether a given ADDR is more likely to be within the memory
  * region mapped to TPNT (a struct elf_resolve *) than to TFROM.
  * Everywhere that this is used, TFROM is initially NULL, and whenever

Modified: trunk/uClibc/ldso/ldso/ldso.c
===================================================================
--- trunk/uClibc/ldso/ldso/ldso.c	2006-07-05 19:27:41 UTC (rev 15643)
+++ trunk/uClibc/ldso/ldso/ldso.c	2006-07-05 19:31:48 UTC (rev 15644)
@@ -295,7 +295,7 @@
 
 		for (idx = 0; idx < auxvt[AT_PHNUM].a_un.a_val; idx++, phdr++)
 			if (phdr->p_type == PT_PHDR) {
-				app_tpnt->loadaddr = (ElfW(Addr)) (auxvt[AT_PHDR].a_un.a_val - phdr->p_vaddr);
+				DL_INIT_LOADADDR_PROG(app_tpnt->loadaddr, auxvt[AT_PHDR].a_un.a_val - phdr->p_vaddr);
 				break;
 			}
 




More information about the uClibc-cvs mailing list