aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/scripts
diff options
context:
space:
mode:
authorFabian Imhof <fabian.imhof@ost.ch>2025-05-18 13:21:42 +0000
committerFabian Imhof <fabian.imhof@ost.ch>2025-05-18 13:21:42 +0000
commit1b5a771a34743a2973a82de5ebdfd22da030b841 (patch)
tree19e81ac7c122225efedcab74051a46283723400a /arch/x86_64/scripts
parent5c314eef566df2732973e8cb35974ec49748adba (diff)
downloadteachos-1b5a771a34743a2973a82de5ebdfd22da030b841.tar.xz
teachos-1b5a771a34743a2973a82de5ebdfd22da030b841.zip
update linker file and improve section parsing
Diffstat (limited to 'arch/x86_64/scripts')
-rw-r--r--arch/x86_64/scripts/kernel.ld7
1 files changed, 3 insertions, 4 deletions
diff --git a/arch/x86_64/scripts/kernel.ld b/arch/x86_64/scripts/kernel.ld
index 23f9681..3d9a7ae 100644
--- a/arch/x86_64/scripts/kernel.ld
+++ b/arch/x86_64/scripts/kernel.ld
@@ -87,9 +87,8 @@ SECTIONS
.stl_text ALIGN(4K) : AT(ADDR (.stl_text))
{
- *(.stl_text)
+ *(.stl_text .stl_text*)
KEEP(*libstdc++.a:*(.text .text.*))
- KEEP(*libatomic.a:*(.text .text.*)) /* TODO: Attempt to move atomic stl into stl_text as well, doesn't work */
}
.text ALIGN(4K) : AT(ADDR (.text))
@@ -99,7 +98,7 @@ SECTIONS
.user_text ALIGN(4K) : AT(ADDR (.user_text))
{
- *(.user_text)
+ *(.user_text .user_text.*)
}
.rodata ALIGN(4K) : AT (ADDR (.rodata))
@@ -137,7 +136,7 @@ SECTIONS
.user_data ALIGN(4K) : AT (ADDR (.user_data))
{
- *(.user_data*)
+ *(.user_data .user_data.*)
}
/***************************************************************************