kern.ldscript revision 1.20
1/*	$NetBSD: kern.ldscript,v 1.20 2017/08/18 10:28:53 maxv Exp $	*/
2
3#include "assym.h"
4
5__PAGE_SIZE = 0x1000 ;
6
7ENTRY(_start)
8SECTIONS
9{
10	.text : AT (ADDR(.text) & 0x0fffffff)
11	{
12		*(.text)
13		*(.text.*)
14		*(.stub)
15		. = ALIGN(__PAGE_SIZE);
16	} =0xCC
17	_etext = . ;
18	PROVIDE (etext = .) ;
19
20	. = ALIGN(__PAGE_SIZE);
21
22	__rodata_start = . ;
23	.rodata :
24	{
25		*(.rodata)
26		*(.rodata.*)
27	}
28
29	. = ALIGN(__PAGE_SIZE);
30
31	__data_start = . ;
32	.data :
33	{
34		*(.data)
35	}
36
37	. = ALIGN(COHERENCY_UNIT);
38	.data.cacheline_aligned :
39	{
40		*(.data.cacheline_aligned)
41	}
42	. = ALIGN(COHERENCY_UNIT);
43	.data.read_mostly :
44	{
45		*(.data.read_mostly)
46	}
47	. = ALIGN(COHERENCY_UNIT);
48
49	_edata = . ;
50	PROVIDE (edata = .) ;
51	__bss_start = . ;
52	.bss :
53	{
54		*(.bss)
55		*(.bss.*)
56		*(COMMON)
57		. = ALIGN(32 / 8);
58	}
59
60	. = ALIGN(__PAGE_SIZE);
61
62	/* End of the kernel image */
63	__kernel_end = . ;
64
65	_end = . ;
66	PROVIDE (end = .) ;
67	.note.netbsd.ident :
68	{
69		KEEP(*(.note.netbsd.ident));
70	}
71}
72
73