]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Hurd: Use __executable_start symbol instead of _start.
authorSamuel Thibault <samuel.thibault@ens-lyon.org>
Sun, 24 Jun 2007 15:45:35 +0000 (17:45 +0200)
committerThomas Schwinge <thomas@codesourcery.com>
Thu, 29 Aug 2013 10:22:19 +0000 (12:22 +0200)
_start points to the first instruction, not to the ELF header.
__executable_start does point on the ELF header.

ChangeLog
sysdeps/mach/hurd/i386/init-first.c

index f396dbdd1e68e1f884541c90f76abc16ec697b8c..3ea264392c64e25514337e35b21625834a13f9ff 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-08-29  Samuel Thibault  <samuel.thibault@ens-lyon.org>
+
+       * sysdeps/mach/hurd/i386/init-first.c (init1): Use
+       __executable_start symbol instead of _start.
+
 2013-08-29  Thomas Schwinge  <thomas@codesourcery.com>
 
        * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_HEADER)
index 70378d806eb7c055708402341553170c8117697e..8fb613b5501fa61c3176c9d8f34d69512b8e11aa 100644 (file)
@@ -122,8 +122,8 @@ init1 (int argc, char *arg0, ...)
           /* We may need to see our own phdrs, e.g. for TLS setup.
              Try the usual kludge to find the headers without help from
              the exec server.  */
-          extern const void _start;
-          const ElfW(Ehdr) *const ehdr = &_start;
+          extern const void __executable_start;
+          const ElfW(Ehdr) *const ehdr = &__executable_start;
           _dl_phdr = (const void *) ehdr + ehdr->e_phoff;
           _dl_phnum = ehdr->e_phnum;
           assert (ehdr->e_phentsize == sizeof (ElfW(Phdr)));