Blame view

arch/um/kernel/uml.lds.S 2.21 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
8
9
  #include <asm-generic/vmlinux.lds.h>
  
  OUTPUT_FORMAT(ELF_FORMAT)
  OUTPUT_ARCH(ELF_ARCH)
  ENTRY(_start)
  jiffies = jiffies_64;
  
  SECTIONS
  {
23bbd586e   Jeff Dike   [PATCH] uml: fix ...
10
    /* This must contain the right address - not quite the default ELF one.*/
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
11
    PROVIDE (__executable_start = START);
23bbd586e   Jeff Dike   [PATCH] uml: fix ...
12
13
14
15
16
17
    /* Static binaries stick stuff here, like the sigreturn trampoline,
     * invisibly to objdump.  So, just make __binary_start equal to the very
     * beginning of the executable, and if there are unmapped pages after this,
     * they are forever unusable.
     */
    __binary_start = START;
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
18

23bbd586e   Jeff Dike   [PATCH] uml: fix ...
19
    . = START + SIZEOF_HEADERS;
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
20

60b2737de   Paolo 'Blaisorblade' Giarrusso   [PATCH] uml: fix ...
21
  #ifdef MODE_TT
1c30385ae   Paolo 'Blaisorblade' Giarrusso   [PATCH] uml: gcc ...
22
23
    .remap_data : { UNMAP_PATH (.data .bss) }
    .remap : { UNMAP_PATH (.text) }
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
24
25
26
  
    . = ALIGN(4096);		/* Init code and data */
  #endif
d1480c56f   Jeff Dike   [PATCH] uml: add ...
27
    _text = .;
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
28
29
30
31
32
33
34
35
    _stext = .;
    __init_begin = .;
    .init.text : {
  	_sinittext = .;
  	*(.init.text)
  	_einittext = .;
    }
    . = ALIGN(4096);
d67b569f5   Jeff Dike   [PATCH] uml: skas...
36

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
37
38
    .text      :
    {
7664709b4   Sam Ravnborg   all-archs: consol...
39
      TEXT_TEXT
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
40
41
42
43
44
45
      SCHED_TEXT
      LOCK_TEXT
      *(.fixup)
      /* .gnu.warning sections are handled specially by elf32.em.  */
      *(.gnu.warning)
      *(.gnu.linkonce.t*)
d67b569f5   Jeff Dike   [PATCH] uml: skas...
46
47
48
49
50
51
  
      . = ALIGN(4096);
      __syscall_stub_start = .;
      *(.__syscall_stub*)
      __syscall_stub_end = .;
      . = ALIGN(4096);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
52
53
54
55
56
57
58
59
60
    }
  
    #include "asm/common.lds.S"
  
    init.data : { *(init.data) }
    .data    :
    {
      . = ALIGN(KERNEL_STACK_SIZE);		/* init_task */
      *(.data.init_task)
c14b84949   Jeff Dike   uml: iRQ stacks
61
62
      . = ALIGN(KERNEL_STACK_SIZE);
      *(.data.init_irqstack)
ca967258b   Sam Ravnborg   all-archs: consol...
63
      DATA_DATA
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
      *(.gnu.linkonce.d*)
      CONSTRUCTORS
    }
    .data1   : { *(.data1) }
    .ctors         :
    {
      *(.ctors)
    }
    .dtors         :
    {
      *(.dtors)
    }
  
    .got           : { *(.got.plt) *(.got) }
    .dynamic       : { *(.dynamic) }
ba9950c82   Jeff Dike   [PATCH] uml: smal...
79
80
    .tdata	  : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
    .tbss		  : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
    /* We want the small data sections together, so single-instruction offsets
       can access them all, and initialized data all before uninitialized, so
       we can shorten the on-disk segment size.  */
    .sdata     : { *(.sdata) }
    _edata  =  .;
    PROVIDE (edata = .);
    . = ALIGN(0x1000);
    .sbss      :
    {
     __bss_start = .;
     PROVIDE(_bss_start = .);
     *(.sbss)
     *(.scommon)
    }
    .bss       :
    {
     *(.dynbss)
     *(.bss)
     *(COMMON)
    }
a7d0c2103   Paolo 'Blaisorblade' Giarrusso   [PATCH] i386 / um...
101
    _end = .;
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
102
    PROVIDE (end = .);
a7d0c2103   Paolo 'Blaisorblade' Giarrusso   [PATCH] i386 / um...
103
104
105
106
  
    STABS_DEBUG
  
    DWARF_DEBUG
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
107
  }