source: mainline/uspace/lib/c/arch/amd64/_link.ld.in@ 3b8a990

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

place the .interp section behind the other sections in the text segment
the explicit alignment directive (which causes issues such as #491) is no longer needed

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