You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
970 B
28 lines
970 B
Backport of: |
|
|
|
commit e9177fba13549a8e2a6232f46080e5c6d3e467b1 |
|
Author: Szabolcs Nagy <szabolcs.nagy@arm.com> |
|
Date: Wed Jun 21 13:47:07 2017 +0100 |
|
|
|
[AArch64] Use hidden __GI__dl_argv in rtld startup code |
|
|
|
We rely on the symbol being locally defined so using extern symbol |
|
is not correct and the linker may complain about the relocations. |
|
|
|
Adjusted to the old INTDEF/INTUSE mechanism. |
|
|
|
diff --git a/ports/sysdeps/aarch64/dl-machine.h b/ports/sysdeps/aarch64/dl-machine.h |
|
index 0e76ca8f146905ef..40b0587ba42cd59e 100644 |
|
--- a/ports/sysdeps/aarch64/dl-machine.h |
|
+++ b/ports/sysdeps/aarch64/dl-machine.h |
|
@@ -169,8 +169,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, _dl_argv_internal \n\ |
|
+ str x2, [x3, #:lo12:_dl_argv_internal] \n\ |
|
.L_done_stack_adjust: \n\ |
|
// compute envp \n\ |
|
add x3, x2, x1, lsl #3 \n\
|
|
|