bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/13229] V2 of getsymbol linker plugin interface is not supported


From: hubicka at ucw dot cz
Subject: [Bug ld/13229] V2 of getsymbol linker plugin interface is not supported by GNU LD
Date: Wed, 05 Oct 2011 20:49:35 +0000

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.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]