source: mainline/uspace/lib/c/arch/ppc32/_link.ld.in@ d6cd626

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since d6cd626 was 9bcdbc5, checked in by Martin Decky <martin@…>, 13 years ago

make sure the code in .init is always aligned reasonably
(despite .interp section being also present in the text segment)

  • Property mode set to 100644
File size: 1.3 KB
RevLine 
[1b1164e8]1STARTUP(LIBC_PATH/arch/UARCH/src/entry.o)
[34c4d69]2ENTRY(__entry)
3
4PHDRS {
[c53d906]5#ifdef LOADER
6 interp PT_INTERP;
7 text PT_LOAD FILEHDR PHDRS FLAGS(5);
8#else
[34c4d69]9 text PT_LOAD FLAGS(5);
[c53d906]10#endif
[34c4d69]11 data PT_LOAD FLAGS(6);
[34efa8a]12 debug PT_NOTE;
[34c4d69]13}
14
15SECTIONS {
[c53d906]16#ifdef LOADER
[e1c0260]17 . = 0x70001000 + SIZEOF_HEADERS;
18
[a41577e]19 .interp : {
[c53d906]20 *(.interp);
[e1c0260]21 } :interp :text
[c53d906]22#else
23 . = 0x1000 + SIZEOF_HEADERS;
24#endif
[e1c0260]25
[9bcdbc5]26 /* Make sure the code is aligned reasonably */
27 . = ALIGN(., 4);
28
[1cc2974]29 .init : {
[34c4d69]30 *(.init);
31 } :text
[5e8b881]32
[34c4d69]33 .text : {
[5bddc53]34 *(.text .text.*);
35 *(.rodata .rodata.*);
[34c4d69]36 } :text
[5e8b881]37
[1cc2974]38 . = . + 0x1000;
[5e8b881]39
[1cc2974]40 .data : {
[34c4d69]41 *(.data);
[432c648]42 *(.sdata);
[34c4d69]43 } :data
[5e8b881]44
[34c4d69]45 .tdata : {
46 _tdata_start = .;
47 *(.tdata);
48 _tdata_end = .;
49 _tbss_start = .;
50 *(.tbss);
51 _tbss_end = .;
52 } :data
[5e8b881]53
[e622f0a8]54 _tls_alignment = ALIGNOF(.tdata);
[5e8b881]55
[34c4d69]56 .bss : {
57 *(.sbss);
58 *(COMMON);
59 *(.bss);
60 } :data
61
[34efa8a]62#ifdef CONFIG_LINE_DEBUG
63 .comment 0 : { *(.comment); } :debug
64 .debug_abbrev 0 : { *(.debug_abbrev); } :debug
65 .debug_aranges 0 : { *(.debug_aranges); } :debug
66 .debug_info 0 : { *(.debug_info); } :debug
67 .debug_line 0 : { *(.debug_line); } :debug
68 .debug_loc 0 : { *(.debug_loc); } :debug
69 .debug_pubnames 0 : { *(.debug_pubnames); } :debug
70 .debug_pubtypes 0 : { *(.debug_pubtypes); } :debug
71 .debug_ranges 0 : { *(.debug_ranges); } :debug
72 .debug_str 0 : { *(.debug_str); } :debug
73#endif
74
[34c4d69]75 /DISCARD/ : {
76 *(*);
77 }
78}
Note: See TracBrowser for help on using the repository browser.