source: mainline/uspace/lib/c/arch/ia64/_link.ld.in@ 8054f60

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

cpp: added missing section to ppc32 and ia64 linker script, which fixes c++ builds on those architectures

  • Property mode set to 100644
File size: 1.4 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}
9
10SECTIONS {
11#ifdef SHLIB
12 . = SEGMENT_START("text-segment", 0);
13#else
14 . = SEGMENT_START("text-segment", 0x400000);
15 PROVIDE (__executable_start = .);
16#endif
17 . = . + SIZEOF_HEADERS;
18
19 /* Workaround proper alignment of the .init section */
20 . = ALIGN(., 16);
21
22 .init : {
23 *(.init);
24 } :text
25
26 .text : {
27 *(.text .text.*);
28 *(.rodata .rodata.*);
29 } :text
30
31 . = . + 0x4000;
32
33 .got : {
34 /* Tell the linker where we expect GP to point. */
35 __gp = .;
36 *(.got .got.*);
37 } :data
38
39 .data : {
40 *(.opd);
41 *(.data .data.*);
42 *(.sdata);
43 *(.sdata.*);
44 } :data
45
46 .tdata : {
47 *(.tdata);
48 *(.tdata.*);
49 *(.gnu.linkonce.td.*);
50 } :data :tls
51
52 .tbss : {
53 *(.tbss);
54 *(.tbss.*);
55 *(.gnu.linkonce.tb.*);
56 } :data :tls
57
58 .bss : {
59 *(.sbss);
60 *(.scommon);
61 *(COMMON);
62 *(.bss);
63 } :data
64
65 __dso_handle = .;
66
67 .init_array : {
68 PROVIDE_HIDDEN (__init_array_start = .);
69 KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*)))
70 KEEP (*(.init_array .ctors))
71 PROVIDE_HIDDEN (__init_array_end = .);
72 }
73
74 .fini_array : {
75 PROVIDE_HIDDEN (__fini_array_start = .);
76 KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*)))
77 KEEP (*(.fini_array .dtors))
78 PROVIDE_HIDDEN (__fini_array_end = .);
79 }
80
81 _end = .;
82
83 /DISCARD/ : {
84 *(*);
85 }
86}
Note: See TracBrowser for help on using the repository browser.