Home | History | Annotate | Line # | Download | only in conf
kern.ldscript.Xen revision 1.6
      1 /*	$NetBSD: kern.ldscript.Xen,v 1.6 2014/11/02 17:58:14 uebayasi Exp $	*/
      2 
      3 OUTPUT_FORMAT("elf32-i386", "elf32-i386",
      4 	      "elf32-i386")
      5 OUTPUT_ARCH(i386)
      6 SECTIONS
      7 {
      8    /* Read-only sections, merged into text segment: */
      9    .text :
     10    {
     11      *(.text)
     12      *(.text.*)
     13      *(.stub)
     14    } =0
     15    _etext = . ;
     16    PROVIDE (etext = .) ;
     17 
     18    .rodata :
     19    {
     20      *(.rodata)
     21      *(.rodata.*)
     22    }
     23 
     24    /* Adjust the address for the data segment.  We want to adjust up to
     25       the same address within the page on the next page up.  */
     26    . = ALIGN(0x1000) + (. & (0x1000 - 1));
     27    __data_start = . ;
     28    .data :
     29    {
     30      *(.data)
     31    }
     32    . = ALIGN(64);	/* COHERENCY_UNIT */
     33    .data.cacheline_aligned :
     34    AT (LOADADDR(.text) + (ADDR(.data.cacheline_aligned) - ADDR(.text)))
     35    {
     36      *(.data.cacheline_aligned)
     37    }
     38    . = ALIGN(64);	/* COHERENCY_UNIT */
     39    .data.read_mostly :
     40    AT (LOADADDR(.text) + (ADDR(.data.read_mostly) - ADDR(.text)))
     41    {
     42      *(.data.read_mostly)
     43    }
     44    . = ALIGN(64);	/* COHERENCY_UNIT */
     45    _edata = . ;
     46    PROVIDE (edata = .) ;
     47    __bss_start = . ;
     48    .bss :
     49    {
     50      *(.bss)
     51      *(.bss.*)
     52      *(COMMON)
     53      . = ALIGN(32 / 8);
     54    }
     55    . = ALIGN(32 / 8);
     56   _end = . ;
     57   PROVIDE (end = .) ;
     58   .note.netbsd.ident :
     59   {
     60     KEEP(*(.note.netbsd.ident));
     61   }
     62 }
     63