summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Bugaev <bugaevc@gmail.com>2023-05-17 22:14:35 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-17 23:03:23 +0200
commitc93ee967cd688bc6d43c795b48e988075655a67f (patch)
tree01db06495111efddd1aa5deebdfb624f93a33e39
parent70fd6b3b230f58782a196b1075513a24f2376077 (diff)
downloadglibc-master.tar.gz
hurd: Also make it possible to call strlen very earlyHEADmaster
strlen, which is another ifunc-selected function, is invoked during early static executable startup if the argv arrives from the exec server. Make it not crash. Checked on x86_64-gnu: statically linked executables launched after the exec server is up now start up successfully. Signed-off-by: Sergey Bugaev <bugaevc@gmail.com> Message-Id: <20230517191436.73636-10-bugaevc@gmail.com>
-rw-r--r--sysdeps/mach/hurd/x86_64/static-start.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/sysdeps/mach/hurd/x86_64/static-start.S b/sysdeps/mach/hurd/x86_64/static-start.S
index cc8e2410ea..0fed375cdf 100644
--- a/sysdeps/mach/hurd/x86_64/static-start.S
+++ b/sysdeps/mach/hurd/x86_64/static-start.S
@@ -22,6 +22,9 @@ _start:
leaq __memcpy_sse2_unaligned(%rip), %rax
movq %rax, memcpy@GOTPCREL(%rip)
+ leaq __strlen_sse2(%rip), %rax
+ movq %rax, strlen@GOTPCREL(%rip)
+
call _hurd_stack_setup
xorq %rdx, %rdx
jmp _start1