- Linus: drop support for old-style Makefiles entirely. Big.
[davej-history.git] / arch / ppc / vmlinux.lds
blob9ca864b729e144063b6bb003330aabf33cda5640
1 OUTPUT_ARCH(powerpc)
2 SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib);
3 /* Do we need any of these for elf?
4    __DYNAMIC = 0;    */
5 SECTIONS
7   /* Read-only sections, merged into text segment: */
8   . = + SIZEOF_HEADERS;
9   .interp : { *(.interp) }
10   .hash          : { *(.hash)           }
11   .dynsym        : { *(.dynsym)         }
12   .dynstr        : { *(.dynstr)         }
13   .rel.text      : { *(.rel.text)               }
14   .rela.text     : { *(.rela.text)      }
15   .rel.data      : { *(.rel.data)               }
16   .rela.data     : { *(.rela.data)      }
17   .rel.rodata    : { *(.rel.rodata)     }
18   .rela.rodata   : { *(.rela.rodata)    }
19   .rel.got       : { *(.rel.got)                }
20   .rela.got      : { *(.rela.got)               }
21   .rel.ctors     : { *(.rel.ctors)      }
22   .rela.ctors    : { *(.rela.ctors)     }
23   .rel.dtors     : { *(.rel.dtors)      }
24   .rela.dtors    : { *(.rela.dtors)     }
25   .rel.bss       : { *(.rel.bss)                }
26   .rela.bss      : { *(.rela.bss)               }
27   .rel.plt       : { *(.rel.plt)                }
28   .rela.plt      : { *(.rela.plt)               }
29 /*  .init          : { *(.init) } =0*/
30   .plt : { *(.plt) }
31   .text      :
32   {
33     *(.text)
34     *(.fixup)
35     *(.got1)
36   }
37   _etext = .;
38   PROVIDE (etext = .);
39   .rodata    :
40   {
41     *(.rodata)
42     *(.rodata1)
43   }
44   .kstrtab   : { *(.kstrtab) }
45   .fini      : { *(.fini)    } =0
46   .ctors     : { *(.ctors)   }
47   .dtors     : { *(.dtors)   }
48   /* Read-write section, merged into data segment: */
49   . = (. + 0x0FFF) & 0xFFFFF000;
50   .data    :
51   {
52     *(.data)
53     *(.data1)
54     *(.sdata)
55     *(.sdata2)
56     *(.got.plt) *(.got)
57     *(.dynamic)
58     CONSTRUCTORS
59   }
60   _edata  =  .;
61   PROVIDE (edata = .);
63   .fixup   : { *(.fixup) }
64   __start___ex_table = .;
65   __ex_table : { *(__ex_table) }
66   __stop___ex_table = .;
68   __start___ksymtab = .;        /* Kernel symbol table */
69   __ksymtab : { *(__ksymtab) }
70   __stop___ksymtab = .;
72   . = ALIGN(32);
73   .data.cacheline_aligned : { *(.data.cacheline_aligned) }
75   . = ALIGN(4096);
76   __init_begin = .;
77   .text.init : { *(.text.init) }
78   .data.init : { 
79     *(.data.init);
80     __vtop_table_begin = .;
81     *(.vtop_fixup);
82     __vtop_table_end = .;
83     __ptov_table_begin = .;
84     *(.ptov_fixup);
85     __ptov_table_end = .;
86   }
87   . = ALIGN(16);
88   __setup_start = .;
89   .setup.init : { *(.setup.init) }
90   __setup_end = .;
91   __initcall_start = .;
92   .initcall.init : { *(.initcall.init) }
93   __initcall_end = .;
94   . = ALIGN(4096);
95   __init_end = .;
97   . = ALIGN(4096);
98   __pmac_begin = .;
99   .text.pmac : { *(.text.pmac) }
100   .data.pmac : { *(.data.pmac) }
101   . = ALIGN(4096);
102   __pmac_end = .;
104   . = ALIGN(4096);
105   __prep_begin = .;
106   .text.prep : { *(.text.prep) }
107   .data.prep : { *(.data.prep) }
108   . = ALIGN(4096);
109   __prep_end = .;
111   . = ALIGN(4096);
112   __chrp_begin = .;
113   .text.chrp : { *(.text.chrp) }
114   .data.chrp : { *(.data.chrp) }
115   . = ALIGN(4096);
116   __chrp_end = .;
118   . = ALIGN(4096);
119   __apus_begin = .;
120   .text.apus : { *(.text.apus) }
121   .data.apus : { *(.data.apus) }
122   . = ALIGN(4096);
123   __apus_end = .;
125   . = ALIGN(4096);
126   __apus_begin = .;
127   .text.apus : { *(.text.apus) }
128   .data.apus : { *(.data.apus) }
129   . = ALIGN(4096);
130   __apus_end = .;
132   . = ALIGN(4096);
133   __openfirmware_begin = .;
134   .text.openfirmware : { *(.text.openfirmware) }
135   .data.openfirmware : { *(.data.openfirmware) }
136   . = ALIGN(4096);
137   __openfirmware_end = .;
139   __bss_start = .;
140   .bss       :
141   {
142    *(.sbss) *(.scommon)
143    *(.dynbss)
144    *(.bss)
145    *(COMMON)
146   }
147   _end = . ;
148   PROVIDE (end = .);