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