~vojtech-horky/helenos/helenos-qemu

« back to all changes in this revision

Viewing changes to kernel/arch/ppc32/_link.ld.in

  • Committer: Martin Decky
  • Date: 2009-08-04 11:19:19 UTC
  • Revision ID: martin@uranus.dsrg.hide.ms.mff.cuni.cz-20090804111919-evyclddlr3v5lhmp
Initial import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/** PPC32 linker script
 
2
 *
 
3
 * umapped section:
 
4
 *  kernel text
 
5
 *  kernel data
 
6
 * mapped section:
 
7
 *  kernel text
 
8
 *  kernel data
 
9
 *
 
10
 */
 
11
 
 
12
#include <arch/boot/boot.h>
 
13
#include <arch/mm/page.h>
 
14
 
 
15
ENTRY(kernel_image_start)
 
16
OUTPUT_FORMAT("elf32-powerpc")
 
17
OUTPUT_ARCH("powerpc:common")
 
18
 
 
19
SECTIONS {
 
20
        .unmapped 0: AT (0) {
 
21
                unmapped_ktext_start = .;
 
22
                *(K_UNMAPPED_TEXT_START);
 
23
                unmapped_ktext_end = .;
 
24
                
 
25
                unmapped_kdata_start = .;
 
26
                *(K_UNMAPPED_DATA_START);
 
27
                unmapped_kdata_start = .;
 
28
        }
 
29
        
 
30
        .mapped PA2KA(BOOT_OFFSET): AT (BOOT_OFFSET) {
 
31
                ktext_start = .;
 
32
                *(K_TEXT_START);
 
33
                *(.text);
 
34
                ktext_end = .;
 
35
                
 
36
                kdata_start = .;
 
37
                *(K_DATA_START);
 
38
                *(.rodata);
 
39
                *(.rodata.*);
 
40
                *(.data);       /* initialized data */
 
41
                *(.sdata);
 
42
                *(.sdata2);
 
43
                *(.sbss);
 
44
                hardcoded_ktext_size = .;
 
45
                LONG(ktext_end - ktext_start);
 
46
                hardcoded_kdata_size = .;
 
47
                LONG(kdata_end - kdata_start);
 
48
                hardcoded_load_address = .;
 
49
                LONG(PA2KA(BOOT_OFFSET));
 
50
                *(.bss);        /* uninitialized static variables */
 
51
                *(COMMON);      /* global variables */
 
52
                
 
53
                symbol_table = .;
 
54
                *(symtab.*);    /* Symbol table, must be LAST symbol!*/
 
55
                
 
56
                kdata_end = .;
 
57
        }
 
58
}