summaryrefslogtreecommitdiffstats
path: root/src/kernel.ld
blob: 1078122c8397cf2a65939926b17f693e1cc52e5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
rom_offset = 0xfff00000;
base_load_address = 0x00000000;
text_load_address = 0x00003000;

SECTIONS
{
    . = base_load_address;

    .text ALIGN(0x1000): AT(base_load_address + rom_offset) {
	*(.text.intvects)
	. = text_load_address;
	*(.text)
	*(.text._*)
	*(.rodata)
	*(.rodata.*)
	. = ALIGN(0x8);
	ctor_start_address = .;
	*(.ctors)
	ctor_end_address = .;
    }
    
    .data ALIGN(0x1000): {
	data_load_address = .;
	*(.data)
	*(.data.*)
	*(.branch_lt)

	toc_load_address = .;
	*(.toc)
	opd_load_address = .;
	*(.opd)
	*(.got)

	*(.bss)
	*(.bss.*)

    }

    end_load_address = .;

    /DISCARD/ : {
	*(.comment)
	*(.gnu.attributes)
	*(.dtors)
    }
}


OpenPOWER on IntegriCloud