xref: /minix/sys/arch/i386/conf/stand.ldscript (revision ebfedea0)
1/*	$NetBSD: stand.ldscript,v 1.1 2013/11/01 00:19:04 christos Exp $	*/
2
3OUTPUT_FORMAT("elf32-i386-minix", "elf32-i386-minix",
4	      "elf32-i386-minix")
5OUTPUT_ARCH(i386)
6ENTRY(_start)
7SECTIONS
8{
9   /* Read-only sections, merged into text segment: */
10   .text :
11   AT (ADDR(.text) & 0x0fffffff)
12   {
13     *(.text)
14     *(.text.*)
15     *(.stub)
16   } =0
17   _etext = . ;
18   PROVIDE (etext = .) ;
19
20   .rodata :
21   AT (LOADADDR(.text) + (ADDR(.rodata) - ADDR(.text)))
22   {
23     *(.rodata)
24     *(.rodata.*)
25   }
26
27   __data_start = . ;
28   .data :
29   AT (LOADADDR(.text) + (ADDR(.data) - ADDR(.text)))
30   {
31     *(.data)
32   }
33   .data.cacheline_aligned :
34   AT (LOADADDR(.text) + (ADDR(.data.cacheline_aligned) - ADDR(.text)))
35   {
36     *(.data.cacheline_aligned)
37   }
38   .data.read_mostly :
39   AT (LOADADDR(.text) + (ADDR(.data.read_mostly) - ADDR(.text)))
40   {
41     *(.data.read_mostly)
42   }
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(32 / 8);
53   }
54   . = ALIGN(32 / 8);
55  _end = . ;
56  PROVIDE (end = .) ;
57  /DISCARD/ : {
58    *(.eh_frame_hdr)
59    *(.eh_frame)
60    *(.rel.eh_frame)
61    *(.rela.eh_frame)
62    *(.note.netbsd.ident)
63  }
64}
65