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