diff options
Diffstat (limited to 'boards')
-rw-r--r-- | boards/qemu-virt/qemu-virt.ld | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/boards/qemu-virt/qemu-virt.ld b/boards/qemu-virt/qemu-virt.ld index 9673637..1b9ff79 100644 --- a/boards/qemu-virt/qemu-virt.ld +++ b/boards/qemu-virt/qemu-virt.ld @@ -3,27 +3,34 @@ ENTRY(_start) SECTIONS { . = 0x80000000; + + PROVIDE(kernel_start = .); .text : { *(.text.start) *(.text .text.*) - . = ALIGN(0x1000); } - + . = ALIGN(0x1000); .rodata : { - *(.rodata) - . = ALIGN(0x1000); + *(.srodata .srodata.*) + . = ALIGN(16); + *(.rodata .rodata.*) } - + . = ALIGN(0x1000); .data : { - *(.data) + *(.sdata .sdata.*) + . = ALIGN(16); + *(.data .data.*) + . = ALIGN(16); } .bss : { - *(.bss) - . = ALIGN(0x1000); + *(.sbss .sbss.*) + . = ALIGN(16); + *(.bss .bss.*) } - + . = ALIGN(0x1000); .hart0_initial_stack : { . += 0x1000; PROVIDE(hart0_initial_stack_top = .); } + PROVIDE(kernel_end = .); } |