1OUTPUT_FORMAT("elf64-littleaarch64")
2OUTPUT_ARCH(aarch64)
3ENTRY(_start)
4SECTIONS
5{
6	.text 0x0 : {
7		_text = .;
8		*(.text.head)
9		*(.text)
10		*(.text.*)
11		*(.gnu.linkonce.t.*)
12		*(.srodata)
13		*(.rodata*)
14		. = ALIGN(16);
15	}
16	_etext = .;
17	_text_size = . - _text;
18	.dynamic  : { *(.dynamic) }
19	.data : {
20		__ctor_list = .;
21		*(.init_array)
22		*(.ctors)
23		__ctor_end = .;
24		_data = .;
25		*(.sdata)
26		*(.data)
27		*(.data1)
28		*(.data.*)
29		*(.got.plt)
30		*(.got)
31
32		/*
33		 * The EFI loader doesn't seem to like a .bss section, so we
34		 * stick it all into .data:
35		 */
36		. = ALIGN(16);
37		_bss = .;
38		*(.sbss)
39		*(.scommon)
40		*(.dynbss)
41		*(.bss)
42		*(.bss.*)
43		*(COMMON)
44		. = ALIGN(16);
45		_bss_end = .;
46	}
47	.rela.dyn : { *(.rela.dyn) }
48	.rela.plt : { *(.rela.plt) }
49	.rela.got : { *(.rela.got) }
50	.rela.data : { *(.rela.data) *(.rela.data*) }
51
52	_edata = .;
53	_data_size = . - _etext;
54
55	. = ALIGN(4096);
56	.dynsym   : { *(.dynsym) }
57	. = ALIGN(4096);
58	.dynstr   : { *(.dynstr) }
59	. = ALIGN(4096);
60
61	_end = . ;
62	.note.gnu.build-id : { *(.note.gnu.build-id) }
63	/DISCARD/ : {
64		*(.rel.reloc)
65		*(.eh_frame)
66		*(.note.GNU-stack)
67	}
68	.comment 0 : { *(.comment) }
69}
70