kern.ldscript revision 1.3
11.3Suebayasi/*	$NetBSD: kern.ldscript,v 1.3 2015/08/20 07:00:49 uebayasi 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.3Suebayasi    *(.dynbss)
421.3Suebayasi    *(.bss)
431.3Suebayasi    *(.bss.*)
441.3Suebayasi    *(COMMON)
451.3Suebayasi    /* Align here to ensure that the .bss section occupies space up to
461.3Suebayasi       _end.  Align after .bss to ensure correct alignment even if the
471.3Suebayasi       .bss section disappears because there are no input sections.  */
481.3Suebayasi    . = 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