This is an archive of the discontinued LLVM Phabricator instance.

Strip @VER suffices from the LTO output
ClosedPublic

Authored by espindola on Mar 28 2018, 1:37 PM.

Details

Reviewers
ruiu
pcc
Summary

This fixes pr36623.

The problem is that we have to parse versions out of names before LTO so that LTO can use that information.

When we get the LTO produced .o files, we replace the previous symbols with the LTO produced ones, but they still have @ in them.

We could just trim the name directly, but calling parseSymbolVersion to do it is simpler.

Diff Detail

Event Timeline

espindola created this revision.Mar 28 2018, 1:37 PM
ruiu accepted this revision.Mar 28 2018, 1:41 PM

LGTM

ELF/InputFiles.cpp
269

off-topic, but maybe we should rename this FirstGlobal. NonLocal is probably more technically correct, but colloquially Local <-> Global is much easier to digest.

This revision is now accepted and ready to land.Mar 28 2018, 1:41 PM
espindola closed this revision.Mar 28 2018, 3:49 PM

328738

ELF/InputFiles.cpp
269

LGTM. We already use global to mean non local in other parts of the linker.