summaryrefslogtreecommitdiff
path: root/i386/ldscript
diff options
context:
space:
mode:
authorThomas Schwinge <tschwinge@gnu.org>2006-10-03 14:57:50 +0000
committerThomas Schwinge <tschwinge@gnu.org>2009-06-18 00:26:41 +0200
commitf53df62268d63a84c5763ce37a4cac267add57a8 (patch)
tree101f94768343c7c73a0295c09e0fd2d96a563ccc /i386/ldscript
parent974a9c45937557cf35a67bf347bbae658e1aa8e7 (diff)
2006-10-03 Thomas Schwinge <tschwinge@gnu.org>
[task #5941 --- ``Linker script for GNU Mach''] * Makefile.in (kernel.o): Remove `$(systype)-objfiles-prepend' hackery. * i386/Makefile.in (sysdep.a): Likewise. * i386/Makerules.in: Likewise. (LDFLAGS-kernel): Point to the linker script. * i386/i386at/boothdr.S (_start): Don't put into `.text', but into `.text.start' instead. * i386/ldscript: Change to put `.text' at 0x100000 and put `.text.start' first into `.text'.
Diffstat (limited to 'i386/ldscript')
-rw-r--r--i386/ldscript6
1 files changed, 6 insertions, 0 deletions
diff --git a/i386/ldscript b/i386/ldscript
index 0680714..19a5c76 100644
--- a/i386/ldscript
+++ b/i386/ldscript
@@ -46,8 +46,14 @@ SECTIONS
KEEP (*(.init))
} =0x90909090
.plt : { *(.plt) }
+ /*
+ * _start needs to be at 0x100000, so that's where .text will be begin
+ * and .text.start will be first in there. See also i386/i386at/boothdr.S.
+ */
+ . = 0x100000;
.text :
{
+ *(.text.start)
*(.text .stub .text.* .gnu.linkonce.t.*)
KEEP (*(.text.*personality*))
/* .gnu.warning sections are handled specially by elf32.em. */