Home | History | Annotate | Line # | Download | only in conf
kern.ldscript revision 1.5
      1  1.5    pavel /*	$NetBSD: kern.ldscript,v 1.5 2006/05/26 09:22:42 pavel Exp $	*/
      2  1.1  thorpej 
      3  1.1  thorpej OUTPUT_FORMAT("elf32-i386", "elf32-i386",
      4  1.1  thorpej 	      "elf32-i386")
      5  1.1  thorpej OUTPUT_ARCH(i386)
      6  1.1  thorpej ENTRY(_start)
      7  1.1  thorpej SECTIONS
      8  1.1  thorpej {
      9  1.5    pavel    /* Read-only sections, merged into text segment: */
     10  1.5    pavel    .text :
     11  1.5    pavel    AT (ADDR(.text) & 0x0fffffff)
     12  1.5    pavel    {
     13  1.5    pavel      *(.text)
     14  1.5    pavel      *(.text.*)
     15  1.5    pavel      *(.stub)
     16  1.5    pavel      *(.rodata)
     17  1.5    pavel    } =0
     18  1.5    pavel    _etext = . ;
     19  1.5    pavel    PROVIDE (etext = .) ;
     20  1.5    pavel 
     21  1.5    pavel    /* Adjust the address for the data segment.  We want to adjust up to
     22  1.5    pavel       the same address within the page on the next page up.  */
     23  1.5    pavel    . = ALIGN(0x1000) + (. & (0x1000 - 1));
     24  1.5    pavel    .data :
     25  1.5    pavel    AT (LOADADDR(.text) + (ADDR(.data) - ADDR(.text)))
     26  1.5    pavel    {
     27  1.5    pavel      *(.data)
     28  1.5    pavel      *(.data.*)
     29  1.5    pavel    }
     30  1.5    pavel    _edata = . ;
     31  1.5    pavel    PROVIDE (edata = .) ;
     32  1.5    pavel    __bss_start = . ;
     33  1.5    pavel    .bss :
     34  1.5    pavel    AT (LOADADDR(.text) + (ADDR(.bss) - ADDR(.text)))
     35  1.5    pavel    {
     36  1.5    pavel      *(.bss)
     37  1.5    pavel      *(.bss.*)
     38  1.5    pavel      *(COMMON)
     39  1.5    pavel      . = ALIGN(32 / 8);
     40  1.5    pavel    }
     41  1.5    pavel    . = ALIGN(32 / 8);
     42  1.1  thorpej   _end = . ;
     43  1.5    pavel   PROVIDE (end = .) ;
     44  1.1  thorpej }
     45