]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
[AArch64] Use hidden __GI__dl_argv in rtld startup code
authorSzabolcs Nagy <szabolcs.nagy@arm.com>
Wed, 12 Jul 2017 16:41:04 +0000 (17:41 +0100)
committerSzabolcs Nagy <szabolcs.nagy@arm.com>
Wed, 12 Jul 2017 16:41:57 +0000 (17:41 +0100)
We rely on the symbol being locally defined so using extern symbol
is not correct and the linker may complain about the relocations.

ChangeLog
sysdeps/aarch64/dl-machine.h

index f58debbfc9fcd2a7c35e2e4cdc585e1b42d10e9e..2f8f9c606b27985800fdcf8ff5aed744703c5c75 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-07-12  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * sysdeps/aarch64/dl-machine.h (RTLD_START_1): Change _dl_argv to the
+       hidden __GI__dl_argv symbol.
+
 2016-09-05  Aurelien Jarno  <aurelien@aurel32.net>
 
        * conform/Makefile (conformtest-header-tests): Pass -I. to $(PERL).
index 282805e396e8abb9dd0b71cdd05e7117ec24b9c9..e86d8b5b63e5b976bab82e72940a603977275c54 100644 (file)
@@ -172,8 +172,8 @@ _dl_start_user:                                                     \n\
        cmp     x0, #0                                          \n\
        bne     1b                                              \n\
        // Update _dl_argv                                      \n\
-       adrp    x3, _dl_argv                                    \n\
-       str     x2, [x3, #:lo12:_dl_argv]                       \n\
+       adrp    x3, __GI__dl_argv                               \n\
+       str     x2, [x3, #:lo12:__GI__dl_argv]                  \n\
 .L_done_stack_adjust:                                          \n\
        // compute envp                                         \n\
        add     x3, x2, x1, lsl #3                              \n\