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>
lang_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. */
lang_final ();
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.
set lto_link_tests [list \
[list "LTO 1" \
"" "-flto $lto_fat" \
{lto-4a.c} {} ""] \
[list "Compile 4b" \
- "" "-O2" \
+ "" "-O2 $as_gsframe" \
{lto-4b.c} {} ""] \
[list "Compile 4c" \
- "" "-O2" \
+ "" "-O2 $as_gsframe" \
{lto-4c.c} {} ""] \
[list "Compile 5a" \
"" "-flto $lto_fat" \