36 lines
691 B
Text
36 lines
691 B
Text
ENTRY(_start)
|
|
|
|
SECTIONS
|
|
{
|
|
. = 0x80000000;
|
|
|
|
.text : ALIGN(4K) {
|
|
/* This matches the .section .text.boot in your assembly */
|
|
*(.text.boot)
|
|
*(.text .text.*)
|
|
}
|
|
|
|
.rodata : ALIGN(4K) {
|
|
*(.rodata .rodata.*)
|
|
}
|
|
|
|
.data : ALIGN(4K) {
|
|
*(.data .data.*)
|
|
}
|
|
|
|
.bss : ALIGN(4K) {
|
|
PROVIDE(_bss_start = .);
|
|
*(.bss .bss.*)
|
|
*(COMMON)
|
|
PROVIDE(_bss_end = .);
|
|
}
|
|
|
|
/* Keep the stack at the very end to prevent it from overwriting code if it overflows */
|
|
. = ALIGN(16);
|
|
PROVIDE(_stack_bottom = .);
|
|
. += 16384; /* 16k stack */
|
|
PROVIDE(stack_top = .);
|
|
|
|
. = ALIGN(4K);
|
|
_heap_start =.;
|
|
}
|