|
@ -24,6 +24,7 @@ SECTIONS |
|
|
/* ??? Why is .gcc_exc here? */ |
|
|
/* ??? Why is .gcc_exc here? */ |
|
|
*(.gcc_exc) |
|
|
*(.gcc_exc) |
|
|
PROVIDE (etext = .); |
|
|
PROVIDE (etext = .); |
|
|
|
|
|
PROVIDE (_etext = .); |
|
|
*(.gcc_except_table) |
|
|
*(.gcc_except_table) |
|
|
} |
|
|
} |
|
|
/* The Cygwin32 library uses a section to avoid copying certain data |
|
|
/* The Cygwin32 library uses a section to avoid copying certain data |
|
@ -120,12 +121,18 @@ SECTIONS |
|
|
*(SORT(.CRT$XT*)) /* Termination */ |
|
|
*(SORT(.CRT$XT*)) /* Termination */ |
|
|
___crt_xt_end__ = . ; |
|
|
___crt_xt_end__ = . ; |
|
|
} |
|
|
} |
|
|
|
|
|
/* Windows TLS expects .tls$AAA to be at the start and .tls$ZZZ to be |
|
|
|
|
|
at the end of section. This is important because _tls_start MUST |
|
|
|
|
|
be at the beginning of the section to enable SECREL32 relocations with TLS |
|
|
|
|
|
data. */ |
|
|
.tls BLOCK(__section_alignment__) : |
|
|
.tls BLOCK(__section_alignment__) : |
|
|
{ |
|
|
{ |
|
|
___tls_start__ = . ; |
|
|
___tls_start__ = . ; |
|
|
|
|
|
*(.tls$AAA) |
|
|
*(.tls) |
|
|
*(.tls) |
|
|
*(.tls$) |
|
|
*(.tls$) |
|
|
*(SORT(.tls$*)) |
|
|
*(SORT(.tls$*)) |
|
|
|
|
|
*(.tls$ZZZ) |
|
|
___tls_end__ = . ; |
|
|
___tls_end__ = . ; |
|
|
} |
|
|
} |
|
|
.endjunk BLOCK(__section_alignment__) : |
|
|
.endjunk BLOCK(__section_alignment__) : |
|
@ -161,72 +168,140 @@ SECTIONS |
|
|
{ |
|
|
{ |
|
|
*(.debug_aranges) |
|
|
*(.debug_aranges) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_aranges BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_aranges) |
|
|
|
|
|
} |
|
|
.debug_pubnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_pubnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_pubnames) |
|
|
*(.debug_pubnames) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_pubnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_pubnames) |
|
|
|
|
|
} |
|
|
.debug_pubtypes BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_pubtypes BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_pubtypes) |
|
|
*(.debug_pubtypes) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_pubtypes BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_pubtypes) |
|
|
|
|
|
} |
|
|
/* DWARF 2. */ |
|
|
/* DWARF 2. */ |
|
|
.debug_info BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_info BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_info .gnu.linkonce.wi.*) |
|
|
*(.debug_info .gnu.linkonce.wi.*) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_info BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_info .zdebug.gnu.linkonce.wi.*) |
|
|
|
|
|
} |
|
|
.debug_abbrev BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_abbrev BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_abbrev) |
|
|
*(.debug_abbrev) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_abbrev BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_abbrev) |
|
|
|
|
|
} |
|
|
.debug_line BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_line BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_line) |
|
|
*(.debug_line) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_line BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_line) |
|
|
|
|
|
} |
|
|
.debug_frame BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_frame BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_frame*) |
|
|
*(.debug_frame*) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_frame BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_frame*) |
|
|
|
|
|
} |
|
|
.debug_str BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_str BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_str) |
|
|
*(.debug_str) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_str BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_str) |
|
|
|
|
|
} |
|
|
.debug_loc BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_loc BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_loc) |
|
|
*(.debug_loc) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_loc BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_loc) |
|
|
|
|
|
} |
|
|
.debug_macinfo BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_macinfo BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_macinfo) |
|
|
*(.debug_macinfo) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_macinfo BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_macinfo) |
|
|
|
|
|
} |
|
|
/* SGI/MIPS DWARF 2 extensions. */ |
|
|
/* SGI/MIPS DWARF 2 extensions. */ |
|
|
.debug_weaknames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_weaknames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_weaknames) |
|
|
*(.debug_weaknames) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_weaknames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_weaknames) |
|
|
|
|
|
} |
|
|
.debug_funcnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_funcnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_funcnames) |
|
|
*(.debug_funcnames) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_funcnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_funcnames) |
|
|
|
|
|
} |
|
|
.debug_typenames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_typenames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_typenames) |
|
|
*(.debug_typenames) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_typenames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_typenames) |
|
|
|
|
|
} |
|
|
.debug_varnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_varnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_varnames) |
|
|
*(.debug_varnames) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_varnames BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_varnames) |
|
|
|
|
|
} |
|
|
.debug_macro BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_macro BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_macro) |
|
|
*(.debug_macro) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_macro BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_macro) |
|
|
|
|
|
} |
|
|
/* DWARF 3. */ |
|
|
/* DWARF 3. */ |
|
|
.debug_ranges BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_ranges BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_ranges) |
|
|
*(.debug_ranges) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_ranges BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_ranges) |
|
|
|
|
|
} |
|
|
/* DWARF 4. */ |
|
|
/* DWARF 4. */ |
|
|
.debug_types BLOCK(__section_alignment__) (NOLOAD) : |
|
|
.debug_types BLOCK(__section_alignment__) (NOLOAD) : |
|
|
{ |
|
|
{ |
|
|
*(.debug_types .gnu.linkonce.wt.*) |
|
|
*(.debug_types .gnu.linkonce.wt.*) |
|
|
} |
|
|
} |
|
|
|
|
|
.zdebug_types BLOCK(__section_alignment__) (NOLOAD) : |
|
|
|
|
|
{ |
|
|
|
|
|
*(.zdebug_types .gnu.linkonce.wt.*) |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|