[PATCH] ld: Document -pie -Ttext-segment=ORG generates ET_EXEC
H.J. Lu
hjl.tools@gmail.com
Sat May 25 14:38:29 GMT 2024
-Ttext-segment=ORG is used to set the address of the first byte of the
text segment to ORG. When -pie is used with -Ttext-segment=ORG, the
output executable is marked ET_EXEC so that the address of the first
byte of the text segment will be ORG at run-time. Otherwise, kernel
may load ET_DYN executable at some random addresses.
PR ld/31795
* ld.texi: Document -pie -Ttext-segment=ORG generates ET_EXEC.
Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
---
ld/ld.texi | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/ld/ld.texi b/ld/ld.texi
index dd0af8e4f5e..1f383dd37a4 100644
--- a/ld/ld.texi
+++ b/ld/ld.texi
@@ -2694,7 +2694,10 @@ Same as @option{--section-start}, with @code{.bss}, @code{.data} or
@item -Ttext-segment=@var{org}
@cindex text segment origin, cmd line
When creating an ELF executable, it will set the address of the first
-byte of the text segment.
+byte of the text segment. Note that when @option{-pie} is used with
+@option{-Ttext-segment=@var{org}}, the output executable is marked
+ET_EXEC so that the address of the first byte of the text segment will
+be @var{org} at run time.
@kindex -Trodata-segment=@var{org}
@item -Trodata-segment=@var{org}
--
2.45.1
More information about the Binutils
mailing list