xref: /kvm-unit-tests/arm/flat.lds (revision 0917dc65eabbacb592456c0d1bb05e5828c23661)
1
2SECTIONS
3{
4    .text : { *(.init) *(.text) *(.text.*) }
5    . = ALIGN(64K);
6    PROVIDE(etext = .);
7
8    PROVIDE(reloc_start = .);
9    .rela.dyn : { *(.rela.dyn) }
10    PROVIDE(reloc_end = .);
11    .dynsym   : { *(.dynsym) }
12    .dynstr   : { *(.dynstr) }
13    .hash     : { *(.hash) }
14    .gnu.hash : { *(.gnu.hash) }
15    .got      : { *(.got) *(.got.plt) }
16    .eh_frame : { *(.eh_frame) }
17
18    .rodata   : { *(.rodata*) }
19    .data     : { *(.data) }
20    . = ALIGN(16);
21    PROVIDE(bss = .);
22    .bss      : { *(.bss) }
23    . = ALIGN(16);
24    PROVIDE(ebss = .);
25    . = ALIGN(64K);
26    PROVIDE(edata = .);
27
28    /*
29     * stack depth is 16K for arm and PAGE_SIZE for arm64, see THREAD_SIZE
30     * sp must be 16 byte aligned for arm64, and 8 byte aligned for arm
31     * sp must always be strictly less than the true stacktop
32     */
33    . += 64K;
34    . = ALIGN(64K);
35    PROVIDE(stackptr = . - 16);
36    PROVIDE(stacktop = .);
37
38    /DISCARD/ : {
39        *(.note*)
40        *(.interp)
41        *(.debug*)
42        *(.comment)
43        *(.dynamic)
44    }
45}
46
47ENTRY(start)
48