mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-05 15:15:42 +00:00
ld: Clear map_head_is_link_order for .gnu_object_only
Clear map_head_is_link_order when generating .gnu_object_only section so that lang_add_section can add new sections and .sframe sections will be properly merged by _bfd_elf_merge_section_sframe. PR ld/33146 * ldlang.c (cmdline_emit_object_only_section): Clear map_head_is_link_order. * testsuite/ld-plugin/lto.exp (as_gsframe): New. (lto_link_tests): Add $as_gsframe to compile lto-4b.o and lto-4c.o. Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
This commit is contained in:
@@ -10887,6 +10887,9 @@ cmdline_emit_object_only_section (void)
|
|||||||
lang_init (true);
|
lang_init (true);
|
||||||
ldexp_init (true);
|
ldexp_init (true);
|
||||||
|
|
||||||
|
/* Allow lang_add_section to add new sections. */
|
||||||
|
map_head_is_link_order = false;
|
||||||
|
|
||||||
/* Set up the object-only output. */
|
/* Set up the object-only output. */
|
||||||
lang_final ();
|
lang_final ();
|
||||||
|
|
||||||
|
|||||||
@@ -51,6 +51,11 @@ if { [check_lto_fat_available] } {
|
|||||||
set no_lto "-fno-lto"
|
set no_lto "-fno-lto"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
set as_gsframe ""
|
||||||
|
if { [gas_sframe_check] } {
|
||||||
|
set as_gsframe "-Wa,--gsframe"
|
||||||
|
}
|
||||||
|
|
||||||
# Simple LTO tests and generate input files for complex LTO tests.
|
# Simple LTO tests and generate input files for complex LTO tests.
|
||||||
set lto_link_tests [list \
|
set lto_link_tests [list \
|
||||||
[list "LTO 1" \
|
[list "LTO 1" \
|
||||||
@@ -76,10 +81,10 @@ set lto_link_tests [list \
|
|||||||
"" "-flto $lto_fat" \
|
"" "-flto $lto_fat" \
|
||||||
{lto-4a.c} {} ""] \
|
{lto-4a.c} {} ""] \
|
||||||
[list "Compile 4b" \
|
[list "Compile 4b" \
|
||||||
"" "-O2" \
|
"" "-O2 $as_gsframe" \
|
||||||
{lto-4b.c} {} ""] \
|
{lto-4b.c} {} ""] \
|
||||||
[list "Compile 4c" \
|
[list "Compile 4c" \
|
||||||
"" "-O2" \
|
"" "-O2 $as_gsframe" \
|
||||||
{lto-4c.c} {} ""] \
|
{lto-4c.c} {} ""] \
|
||||||
[list "Compile 5a" \
|
[list "Compile 5a" \
|
||||||
"" "-flto $lto_fat" \
|
"" "-flto $lto_fat" \
|
||||||
|
|||||||
Reference in New Issue
Block a user