http://sourceware.org/bugzilla/show_bug.cgi?id=13229
--- Comment #12 from hubicka at ucw dot cz 2011-10-05 20:49:35 UTC ---
>
> /* This is the prevailing definition of the symbol, with no
> references from regular objects. It is only referenced from IR
> code, but the symbol is exported and may be referenced from
> a dynamic object (not seen at link time). */
> LDPR_PREVAILING_DEF_IRONLY_EXP
>
> It looks like it should be made dynamic since it is exported.
> Do you have a stand-alone testcase for this?
What is causing the problem are LDPR_PREVAILING_DEF_IRONLY_EXP symbols
that are completely optimized out (i.e. not appearing in the output from
linker plugin, just in the LTO symbol table).
The follwing should work in C++
inline void test (void)
{
call_something();
}
void test2 (void)
{
test();
}
and compile with -flto -fuse-linker-plugin -fno-early-inlining -O3.
Late inliner wil linline test into test2, but test's symbol will still
appear in the symbol table (with V2 get_symbol API)
Honza
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-binutils