summaryrefslogtreecommitdiff
path: root/src/kernel/link.ld
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/link.ld')
-rw-r--r--src/kernel/link.ld32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/kernel/link.ld b/src/kernel/link.ld
new file mode 100644
index 0000000..1ce17cf
--- /dev/null
+++ b/src/kernel/link.ld
@@ -0,0 +1,32 @@
+ENTRY (loader)
+
+SECTIONS{
+ . = 0x00100000;
+
+ .setup : {
+ *(.setup)
+ }
+
+ . += 0xE0000000;
+
+ .text : AT(ADDR(.text) - 0xE0000000) {
+ *(.text)
+ }
+
+ .rodata ALIGN (0x1000) : AT(ADDR(.rodata) - 0xE0000000) {
+ *(.rodata)
+ }
+
+ .data ALIGN (0x1000) : AT(ADDR(.data) - 0xE0000000) {
+ *(.data)
+ }
+
+ .bss : AT(ADDR(.bss) - 0xE0000000) {
+ sbss = .;
+ *(COMMON)
+ *(.bss)
+ ebss = .;
+ }
+
+ end = .; _end = .; __end = .;
+}