kern.ldscript revision 1.19
11.19Smaxv/* $NetBSD: kern.ldscript,v 1.19 2016/05/14 08:19:42 maxv Exp $ */ 21.1Sthorpej 31.15Suebayasi#include "assym.h" 41.15Suebayasi 51.18Smaxv__PAGE_SIZE = 0x1000 ; 61.18Smaxv 71.1SthorpejENTRY(_start) 81.1SthorpejSECTIONS 91.1Sthorpej{ 101.16Smaxv .text : 111.16Smaxv { 121.16Smaxv *(.text) 131.16Smaxv *(.text.*) 141.16Smaxv *(.stub) 151.16Smaxv } 161.16Smaxv _etext = . ; 171.16Smaxv PROVIDE (etext = .) ; 181.16Smaxv 191.19Smaxv . = ALIGN(__PAGE_SIZE); 201.17Smaxv 211.17Smaxv __rodata_start = . ; 221.16Smaxv .rodata : 231.16Smaxv { 241.16Smaxv *(.rodata) 251.16Smaxv *(.rodata.*) 261.16Smaxv } 271.16Smaxv 281.19Smaxv . = ALIGN(__PAGE_SIZE); 291.19Smaxv 301.16Smaxv __data_start = . ; 311.16Smaxv .data : 321.16Smaxv { 331.16Smaxv *(.data) 341.16Smaxv } 351.16Smaxv 361.16Smaxv . = ALIGN(COHERENCY_UNIT); 371.16Smaxv .data.cacheline_aligned : 381.16Smaxv { 391.16Smaxv *(.data.cacheline_aligned) 401.16Smaxv } 411.16Smaxv . = ALIGN(COHERENCY_UNIT); 421.16Smaxv .data.read_mostly : 431.16Smaxv { 441.16Smaxv *(.data.read_mostly) 451.16Smaxv } 461.16Smaxv . = ALIGN(COHERENCY_UNIT); 471.18Smaxv 481.16Smaxv _edata = . ; 491.16Smaxv PROVIDE (edata = .) ; 501.16Smaxv __bss_start = . ; 511.16Smaxv .bss : 521.16Smaxv { 531.16Smaxv *(.bss) 541.16Smaxv *(.bss.*) 551.16Smaxv *(COMMON) 561.19Smaxv . = ALIGN(32 / 8); 571.16Smaxv } 581.18Smaxv 591.18Smaxv . = ALIGN(__PAGE_SIZE); 601.18Smaxv 611.18Smaxv /* End of the kernel image */ 621.18Smaxv __kernel_end = . ; 631.18Smaxv 641.16Smaxv _end = . ; 651.16Smaxv PROVIDE (end = .) ; 661.16Smaxv .note.netbsd.ident : 671.16Smaxv { 681.16Smaxv KEEP(*(.note.netbsd.ident)); 691.16Smaxv } 701.1Sthorpej} 711.16Smaxv 721.13SuebayasiSECTIONS 731.13Suebayasi{ 741.16Smaxv .text : 751.16Smaxv AT (ADDR(.text) & 0x0fffffff) 761.16Smaxv { 771.16Smaxv *(.text) 781.16Smaxv } = 0 791.13Suebayasi} 80