ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / arch / ia64 / sn / fakeprom / fprom.lds
1 /*
2  * This file is subject to the terms and conditions of the GNU General Public
3  * License.  See the file "COPYING" in the main directory of this archive
4  * for more details.
5  *
6  * Copyright (c) 2002-2003 Silicon Graphics, Inc.  All Rights Reserved.
7  */
8
9 OUTPUT_FORMAT("elf64-ia64-little")
10 OUTPUT_ARCH(ia64)
11 ENTRY(_start)
12 SECTIONS
13 {
14   v = 0x0000000000000000 ;      /* this symbol is here to make debugging with kdb easier... */
15
16   . = (0x000000000000000  + 0x100000) ;
17
18   _text = .;
19   .text : AT(ADDR(.text) - 0x0000000000000000 )
20     {
21         *(__ivt_section)
22         /* these are not really text pages, but the zero page needs to be in a fixed location: */
23         *(__special_page_section)
24         __start_gate_section = .;
25         *(__gate_section)
26         __stop_gate_section = .;
27         *(.text)
28     }
29
30   /* Global data */
31   _data = .;
32
33   .rodata : AT(ADDR(.rodata) - 0x0000000000000000 )
34         { *(.rodata) *(.rodata.*) }
35   .opd : AT(ADDR(.opd) - 0x0000000000000000 )
36         { *(.opd) }
37   .data : AT(ADDR(.data) - 0x0000000000000000 )
38         { *(.data) *(.gnu.linkonce.d*) CONSTRUCTORS }
39
40   __gp = ALIGN (8) + 0x200000;
41
42   .got : AT(ADDR(.got) - 0x0000000000000000 )
43         { *(.got.plt) *(.got) }
44   /* We want the small data sections together, so single-instruction offsets
45      can access them all, and initialized data all before uninitialized, so
46      we can shorten the on-disk segment size.  */
47   .sdata : AT(ADDR(.sdata) - 0x0000000000000000 )
48         { *(.sdata) }
49   _edata  =  .;
50   _bss = .;
51   .sbss : AT(ADDR(.sbss) - 0x0000000000000000 )
52         { *(.sbss) *(.scommon) }
53   .bss : AT(ADDR(.bss) - 0x0000000000000000 )
54         { *(.bss) *(COMMON) }
55   . = ALIGN(64 / 8);
56   _end = .;
57
58   /* Sections to be discarded */
59   /DISCARD/ : {
60         *(.text.exit)
61         *(.data.exit)
62         }
63
64   /* Stabs debugging sections.  */
65   .stab 0 : { *(.stab) }
66   .stabstr 0 : { *(.stabstr) }
67   .stab.excl 0 : { *(.stab.excl) }
68   .stab.exclstr 0 : { *(.stab.exclstr) }
69   .stab.index 0 : { *(.stab.index) }
70   .stab.indexstr 0 : { *(.stab.indexstr) }
71   /* DWARF debug sections.
72      Symbols in the DWARF debugging sections are relative to the beginning
73      of the section so we begin them at 0.  */
74   /* DWARF 1 */
75   .debug          0 : { *(.debug) }
76   .line           0 : { *(.line) }
77   /* GNU DWARF 1 extensions */
78   .debug_srcinfo  0 : { *(.debug_srcinfo) }
79   .debug_sfnames  0 : { *(.debug_sfnames) }
80   /* DWARF 1.1 and DWARF 2 */
81   .debug_aranges  0 : { *(.debug_aranges) }
82   .debug_pubnames 0 : { *(.debug_pubnames) }
83   /* DWARF 2 */
84   .debug_info     0 : { *(.debug_info) }
85   .debug_abbrev   0 : { *(.debug_abbrev) }
86   .debug_line     0 : { *(.debug_line) }
87   .debug_frame    0 : { *(.debug_frame) }
88   .debug_str      0 : { *(.debug_str) }
89   .debug_loc      0 : { *(.debug_loc) }
90   .debug_macinfo  0 : { *(.debug_macinfo) }
91   /* SGI/MIPS DWARF 2 extensions */
92   .debug_weaknames 0 : { *(.debug_weaknames) }
93   .debug_funcnames 0 : { *(.debug_funcnames) }
94   .debug_typenames 0 : { *(.debug_typenames) }
95   .debug_varnames  0 : { *(.debug_varnames) }
96   /* These must appear regardless of  .  */
97   /* Discard them for now since Intel SoftSDV cannot handle them.
98   .comment 0 : { *(.comment) }
99   .note 0 : { *(.note) }
100   */
101   /DISCARD/ : { *(.comment) }
102   /DISCARD/ : { *(.note) }
103 }