aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/scripts
diff options
context:
space:
mode:
authorMatteo Gmür <matteo.gmuer1@ost.ch>2025-05-16 09:58:57 +0000
committerMatteo Gmür <matteo.gmuer1@ost.ch>2025-05-16 09:58:57 +0000
commitd4cc546df6eba2dd287785f1a63fbcce4a1b9bc0 (patch)
treea22b7a91ac0f55c37dbee6516bf9103fcc89b548 /arch/x86_64/scripts
parent06b6e20ba921a062b71c86df8859eaaea4b75cb2 (diff)
downloadteachos-d4cc546df6eba2dd287785f1a63fbcce4a1b9bc0.tar.xz
teachos-d4cc546df6eba2dd287785f1a63fbcce4a1b9bc0.zip
Attempt to move atomic into stl text as well
Diffstat (limited to 'arch/x86_64/scripts')
-rw-r--r--arch/x86_64/scripts/kernel.ld16
1 files changed, 8 insertions, 8 deletions
diff --git a/arch/x86_64/scripts/kernel.ld b/arch/x86_64/scripts/kernel.ld
index 1925872..e5cbc73 100644
--- a/arch/x86_64/scripts/kernel.ld
+++ b/arch/x86_64/scripts/kernel.ld
@@ -85,21 +85,21 @@ SECTIONS
KEEP(*crtn.s.o*(.fini))
}
- .text ALIGN(4K) : AT(ADDR (.text))
+ .stl_text ALIGN(4K) : AT(ADDR (.stl_text))
{
- *(.text*)
- *(EXCLUDE_FILE (*libstdc++.a) .text .text.*)
+ *(.stl_text)
+ KEEP(*libstdc++.a:*(.text .text.*))
+ KEEP(*libatomic.a:*(.text .text.*)) /* Attempt to move atomic stl into stl_text as well, doesn't work */
}
- .user_text ALIGN(4K) : AT(ADDR (.user_text))
+ .text ALIGN(4K) : AT(ADDR (.text))
{
- *(.user_text)
+ *(.text .text.*)
}
- .stl_text ALIGN(4K) : AT(ADDR (.stl_text))
+ .user_text ALIGN(4K) : AT(ADDR (.user_text))
{
- *(.stl_text)
- *libstdc++.a:*(.text .text.*)
+ *(.user_text)
}
.rodata ALIGN(4K) : AT (ADDR (.rodata))