kern.ldscript revision 1.11
11.9Suebayasi/* $NetBSD: kern.ldscript,v 1.11 2015/08/20 08:36:42 uebayasi Exp $ */ 21.1Sfvdl 31.1SfvdlOUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", 41.1Sfvdl "elf64-x86-64") 51.1SfvdlOUTPUT_ARCH(i386:x86-64) 61.1SfvdlENTRY(_start) 71.1SfvdlSECTIONS 81.1Sfvdl{ 91.10Suebayasi /* Read-only sections, merged into text segment: */ 101.10Suebayasi .text : 111.10Suebayasi { 121.10Suebayasi *(.text) 131.10Suebayasi *(.text.*) 141.10Suebayasi *(.stub) 151.10Suebayasi } =0 161.10Suebayasi _etext = . ; 171.10Suebayasi PROVIDE (etext = .) ; 181.2Schristos 191.10Suebayasi .rodata : 201.10Suebayasi { 211.10Suebayasi *(.rodata) 221.10Suebayasi *(.rodata.*) 231.10Suebayasi } 241.9Suebayasi 251.10Suebayasi /* Adjust the address for the data segment. We want to adjust up to 261.10Suebayasi the same address within the page on the next page up. */ 271.10Suebayasi . = ALIGN(0x100000) + (. & (0x100000 - 1)); 281.10Suebayasi __data_start = . ; 291.10Suebayasi .data : 301.10Suebayasi { 311.10Suebayasi *(.data) 321.10Suebayasi } 331.8Suebayasi 341.10Suebayasi . = ALIGN(64); /* COHERENCY_UNIT */ 351.10Suebayasi .data.cacheline_aligned : 361.10Suebayasi { 371.10Suebayasi *(.data.cacheline_aligned) 381.10Suebayasi } 391.10Suebayasi . = ALIGN(64); /* COHERENCY_UNIT */ 401.10Suebayasi .data.read_mostly : 411.10Suebayasi { 421.10Suebayasi *(.data.read_mostly) 431.10Suebayasi } 441.10Suebayasi . = ALIGN(64); /* COHERENCY_UNIT */ 451.8Suebayasi 461.10Suebayasi _edata = . ; 471.10Suebayasi PROVIDE (edata = .) ; 481.10Suebayasi __bss_start = . ; 491.10Suebayasi .bss : 501.10Suebayasi { 511.10Suebayasi *(.bss) 521.10Suebayasi *(.bss.*) 531.10Suebayasi *(COMMON) 541.10Suebayasi . = ALIGN(64 / 8); 551.10Suebayasi } 561.10Suebayasi . = ALIGN(64 / 8); 571.2Schristos _end = . ; 581.2Schristos PROVIDE (end = .) ; 591.2Schristos .note.netbsd.ident : 601.1Sfvdl { 611.2Schristos KEEP(*(.note.netbsd.ident)); 621.1Sfvdl } 631.1Sfvdl} 641.11SuebayasiSECTIONS 651.11Suebayasi{ 661.11Suebayasi .text : 671.11Suebayasi AT (ADDR(.text) & 0x0fffffff) 681.11Suebayasi { 691.11Suebayasi *(.text) 701.11Suebayasi } =0 711.11Suebayasi} 72