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