On 08/26/2013 03:57 PM, Jan Hubicka wrote:
While analyzing the relocations of libreoffice I noticed that I can play the same game w/o LTO at linker level. Making those symbols hidden truns external relocations to internal and should improve runtime, too: comdat sharing by dynamic linker is expensive and won't save duplicated functions from the binary.
Makes sense.
There is ext/visibility/template2.C that fails with the patch. It tests that visibility pragma does not bring the symbol local, but now we do so based on logic above. Jason, do you have any idea how to fix the testcase? I tried to use different visility but that doesn't work, since we do not have corresponding scan-not-*
Maybe change it to use a function that has its address taken, so this optimization doesn't apply.
Jason