diff options
| author | Andrew Turner <andrew@FreeBSD.org> | 2015-06-23 10:32:26 +0000 |
|---|---|---|
| committer | Andrew Turner <andrew@FreeBSD.org> | 2015-06-23 10:32:26 +0000 |
| commit | ff8a3cb6e285c4a3a0dc0674bb828cc5b0c34833 (patch) | |
| tree | ce42f248a21206a8b91b8adfb7fb70b8324ab9b3 | |
| parent | 71d827559bbfc4d8a05bdb120603976953dd082a (diff) | |
Notes
| -rw-r--r-- | libexec/rtld-elf/aarch64/rtld_start.S | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libexec/rtld-elf/aarch64/rtld_start.S b/libexec/rtld-elf/aarch64/rtld_start.S index e34b172a4ab1a..a5e0df59fd749 100644 --- a/libexec/rtld-elf/aarch64/rtld_start.S +++ b/libexec/rtld-elf/aarch64/rtld_start.S @@ -68,6 +68,7 @@ ENTRY(_rtld_bind_start) stp x2, x3, [sp, #-16]! stp x4, x5, [sp, #-16]! stp x6, x7, [sp, #-16]! + stp x8, xzr, [sp, #-16]! /* Calculate reloff */ ldr x2, [x17, #0] /* Get the address of the entry */ @@ -84,12 +85,13 @@ ENTRY(_rtld_bind_start) bl _rtld_bind /* Restore the registers saved by the plt code */ - ldp xzr, x30, [sp, #(4 * 16)] + ldp xzr, x30, [sp, #(5 * 16)] /* Backup the address to branch to */ mov x16, x0 /* restore the arguments */ + ldp x8, xzr, [sp], #16 ldp x6, x7, [sp], #16 ldp x4, x5, [sp], #16 ldp x2, x3, [sp], #16 |
