1OUTPUT_FORMAT(CONFIG_OUTPUT_FORMAT, CONFIG_OUTPUT_FORMAT, CONFIG_OUTPUT_FORMAT)
2
3#undef i386
4
5#include <asm/page_types.h>
6
7#ifdef CONFIG_X86_64
8OUTPUT_ARCH(i386:x86-64)
9ENTRY(startup_64)
10#else
11OUTPUT_ARCH(i386)
12ENTRY(startup_32)
13#endif
14
15SECTIONS
16{
17	/* Be careful parts of head_64.S assume startup_32 is at
18	 * address 0.
19	 */
20	. = 0;
21	.text.head : {
22		_head = . ;
23		*(.text.head)
24		_ehead = . ;
25	}
26	.rodata.compressed : {
27		*(.rodata.compressed)
28	}
29	.text :	{
30		_text = .; 	/* Text */
31		*(.text)
32		*(.text.*)
33		_etext = . ;
34	}
35	.rodata : {
36		_rodata = . ;
37		*(.rodata)	 /* read-only data */
38		*(.rodata.*)
39		_erodata = . ;
40	}
41	.data :	{
42		_data = . ;
43		*(.data)
44		*(.data.*)
45		_edata = . ;
46	}
47	. = ALIGN(CONFIG_X86_L1_CACHE_BYTES);
48	.bss : {
49		_bss = . ;
50		*(.bss)
51		*(.bss.*)
52		*(COMMON)
53		. = ALIGN(8);	/* For convenience during zeroing */
54		_ebss = .;
55	}
56#ifdef CONFIG_X86_64
57       . = ALIGN(PAGE_SIZE);
58       .pgtable : {
59		_pgtable = . ;
60		*(.pgtable)
61		_epgtable = . ;
62	}
63#endif
64	_end = .;
65}
66