1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-12 09:58:36 +00:00

remove CONSTRUCTORS from kernel linker scripts

The linker script CONSTRUCTORS keyword is only meaningful "when linking
object file formats which do not support arbitrary sections, such as
ECOFF and XCOFF"[1] and is ignored for other object file formats.

LLVM's lld does not yet accept (and ignore) CONSTRUCTORS, so just remove
CONSTRUCTORS from the linker scripts as it has no effect.

[1] https://sourceware.org/binutils/docs/ld/Output-Section-Keywords.html

Reviewed by:	kib
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D7343
This commit is contained in:
Ed Maste 2016-07-28 13:54:46 +00:00
parent 58a74cc5af
commit 45eff3df96
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=303442
12 changed files with 0 additions and 12 deletions

View File

@ -149,7 +149,6 @@ SECTIONS
{ {
*(.data .data.* .gnu.linkonce.d.*) *(.data .data.* .gnu.linkonce.d.*)
KEEP (*(.gnu.linkonce.d.*personality*)) KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
_edata = .; PROVIDE (edata = .); _edata = .; PROVIDE (edata = .);

View File

@ -76,7 +76,6 @@ SECTIONS
{ {
*(.data) *(.data)
*(.gnu.linkonce.d*) *(.gnu.linkonce.d*)
CONSTRUCTORS
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
. = ALIGN(32 / 8); . = ALIGN(32 / 8);

View File

@ -76,7 +76,6 @@ SECTIONS
{ {
*(.data) *(.data)
*(.gnu.linkonce.d*) *(.gnu.linkonce.d*)
CONSTRUCTORS
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
. = ALIGN(32 / 8); . = ALIGN(32 / 8);

View File

@ -137,7 +137,6 @@ SECTIONS
{ {
*(.data .data.* .gnu.linkonce.d.*) *(.data .data.* .gnu.linkonce.d.*)
KEEP (*(.gnu.linkonce.d.*personality*)) KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
_edata = .; PROVIDE (edata = .); _edata = .; PROVIDE (edata = .);

View File

@ -184,7 +184,6 @@ SECTIONS
*(.data) *(.data)
*(.data.*) *(.data.*)
*(.gnu.linkonce.d.*) *(.gnu.linkonce.d.*)
SORT(CONSTRUCTORS)
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
.eh_frame : { KEEP (*(.eh_frame)) } .eh_frame : { KEEP (*(.eh_frame)) }

View File

@ -201,7 +201,6 @@ SECTIONS
*(.data) *(.data)
*(.data.*) *(.data.*)
*(.gnu.linkonce.d.*) *(.gnu.linkonce.d.*)
SORT(CONSTRUCTORS)
} :data } :data
.data1 : { *(.data1) } .data1 : { *(.data1) }
.eh_frame : { KEEP (*(.eh_frame)) } .eh_frame : { KEEP (*(.eh_frame)) }

View File

@ -185,7 +185,6 @@ SECTIONS
*(.data) *(.data)
*(.data.*) *(.data.*)
*(.gnu.linkonce.d.*) *(.gnu.linkonce.d.*)
SORT(CONSTRUCTORS)
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
.eh_frame : { KEEP (*(.eh_frame)) } .eh_frame : { KEEP (*(.eh_frame)) }

View File

@ -28,7 +28,6 @@ SECTIONS {
_rwdata = .; _rwdata = .;
*(.data) *(.data)
. = ALIGN(32); . = ALIGN(32);
CONSTRUCTORS;
} }
_gp = (. + 0x8000); _gp = (. + 0x8000);

View File

@ -63,7 +63,6 @@ SECTIONS
{ {
*(.data) *(.data)
*(.gnu.linkonce.d*) *(.gnu.linkonce.d*)
CONSTRUCTORS
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
.got1 : { *(.got1) } .got1 : { *(.got1) }

View File

@ -63,7 +63,6 @@ SECTIONS
{ {
*(.data) *(.data)
*(.gnu.linkonce.d*) *(.gnu.linkonce.d*)
CONSTRUCTORS
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
.toc1 : ALIGN(8) { *(.toc1) } .toc1 : ALIGN(8) { *(.toc1) }

View File

@ -63,7 +63,6 @@ SECTIONS
{ {
*(.data) *(.data)
*(.gnu.linkonce.d*) *(.gnu.linkonce.d*)
CONSTRUCTORS
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
. = ALIGN(32 / 8); . = ALIGN(32 / 8);

View File

@ -154,7 +154,6 @@ SECTIONS
*(.data) *(.data)
*(.data.*) *(.data.*)
*(.gnu.linkonce.d.*) *(.gnu.linkonce.d.*)
SORT(CONSTRUCTORS)
} }
.data1 : { *(.data1) } .data1 : { *(.data1) }
.eh_frame : { KEEP (*(.eh_frame)) } .eh_frame : { KEEP (*(.eh_frame)) }