source: mainline/uspace/lib/c/arch/sparc64/_link.ld.in@ 6f025a8

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 6f025a8 was 09553a0, checked in by Dzejrou <dzejrou@…>, 7 years ago

cpp+c: added missing linker script modifications and fixed some compile errors for different architectures

  • Property mode set to 100644
File size: 1.7 KB
Line 
1STARTUP(LIBC_PATH/arch/UARCH/src/entry.o)
2ENTRY(_start)
3
4PHDRS {
5 text PT_LOAD FILEHDR PHDRS FLAGS(5);
6 data PT_LOAD FLAGS(6);
7 tls PT_TLS;
8 debug PT_NOTE;
9}
10
11SECTIONS {
12#ifdef SHLIB
13 . = SEGMENT_START("text-segment", 0);
14#else
15 . = SEGMENT_START("text-segment", 0x400000);
16 PROVIDE (__executable_start = .);
17#endif
18 . = . + SIZEOF_HEADERS;
19
20 .init : {
21 *(.init);
22 } :text
23
24 .text : {
25 *(.text .text.*);
26 *(.rodata .rodata.*);
27 } :text
28
29 . = . + 0x4000;
30
31 .got : {
32 *(.got*);
33 } :data
34
35 .data : {
36 *(.data);
37 *(.sdata);
38 } :data
39
40 .tdata : {
41 *(.tdata);
42 *(.tdata.*);
43 *(.gnu.linkonce.td.*);
44 } :data :tls
45
46 .tbss : {
47 *(.tbss);
48 *(.tbss.*);
49 *(.gnu.linkonce.tb.*);
50 } :data :tls
51
52 .bss : {
53 *(.sbss);
54 *(COMMON);
55 *(.bss);
56 } :data
57
58 __dso_handle = .;
59
60 .init_array : {
61 PROVIDE_HIDDEN (__init_array_start = .);
62 KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*)))
63 KEEP (*(.init_array .ctors))
64 PROVIDE_HIDDEN (__init_array_end = .);
65 }
66
67 .fini_array : {
68 PROVIDE_HIDDEN (__fini_array_start = .);
69 KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*)))
70 KEEP (*(.fini_array .dtors))
71 PROVIDE_HIDDEN (__fini_array_end = .);
72 }
73
74 _end = .;
75
76#ifdef CONFIG_LINE_DEBUG
77 .comment 0 : { *(.comment); } :debug
78 .debug_abbrev 0 : { *(.debug_abbrev); } :debug
79 .debug_aranges 0 : { *(.debug_aranges); } :debug
80 .debug_info 0 : { *(.debug_info); } :debug
81 .debug_line 0 : { *(.debug_line); } :debug
82 .debug_loc 0 : { *(.debug_loc); } :debug
83 .debug_pubnames 0 : { *(.debug_pubnames); } :debug
84 .debug_pubtypes 0 : { *(.debug_pubtypes); } :debug
85 .debug_ranges 0 : { *(.debug_ranges); } :debug
86 .debug_str 0 : { *(.debug_str); } :debug
87#endif
88
89 /DISCARD/ : {
90 *(*);
91 }
92}
Note: See TracBrowser for help on using the repository browser.