kern.ldscript revision 1.2
11.2Smatt/*	$NetBSD: kern.ldscript,v 1.2 2014/01/30 15:36:44 matt Exp $	*/
21.1Sthorpej
31.1SthorpejOUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
41.1Sthorpej	      "elf32-littlearm")
51.1SthorpejOUTPUT_ARCH(arm)
61.1SthorpejSECTIONS
71.1Sthorpej{
81.1Sthorpej  . = 0xf0000020;	/* 0x20 == sizeof(a.out header) */
91.1Sthorpej
101.1Sthorpej  /* Read-only sections, merged into text segment: */
111.1Sthorpej  .text :
121.1Sthorpej  {
131.1Sthorpej    *(.text)
141.1Sthorpej    *(.text.*)
151.1Sthorpej    *(.stub)
161.1Sthorpej    *(.glue_7t) *(.glue_7)
171.1Sthorpej    *(.rodata) *(.rodata.*)
181.1Sthorpej  } =0
191.2Smatt  .ARM.extab   : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
201.2Smatt  PROVIDE (__exidx_start = .);
211.2Smatt  .ARM.exidx   : { *(.ARM.exidx* .gnu.linkonce.armexidx.*) }
221.2Smatt  PROVIDE (__exidx_end = .);
231.1Sthorpej  PROVIDE (__etext = .);
241.1Sthorpej  PROVIDE (_etext = .);
251.1Sthorpej  PROVIDE (etext = .);
261.1Sthorpej  . = ALIGN(0x1000);
271.1Sthorpej  .data :
281.1Sthorpej  {
291.1Sthorpej    __data_start = . ;
301.1Sthorpej    *(.data)
311.1Sthorpej    *(.data.*)
321.1Sthorpej    *(.sdata)
331.1Sthorpej    *(.sdata.*)
341.1Sthorpej  }
351.1Sthorpej  _edata = .;
361.1Sthorpej  PROVIDE (edata = .);
371.1Sthorpej  __bss_start = .;
381.1Sthorpej  __bss_start__ = .;
391.1Sthorpej  .bss       :
401.1Sthorpej  {
411.1Sthorpej   *(.dynbss)
421.1Sthorpej   *(.bss)
431.1Sthorpej   *(.bss.*)
441.1Sthorpej   *(COMMON)
451.1Sthorpej   /* Align here to ensure that the .bss section occupies space up to
461.1Sthorpej      _end.  Align after .bss to ensure correct alignment even if the
471.1Sthorpej      .bss section disappears because there are no input sections.  */
481.1Sthorpej   . = ALIGN(32 / 8);
491.1Sthorpej  }
501.1Sthorpej  . = ALIGN(32 / 8);
511.1Sthorpej  _end = .;
521.1Sthorpej  _bss_end__ = . ; __bss_end__ = . ; __end__ = . ;
531.1Sthorpej  PROVIDE (end = .);
541.1Sthorpej}
55