[PATCH] D43690: [ThinLTO] Keep available_externally symbols live
Teresa Johnson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 5 08:21:41 PST 2018
tejohnson added a comment.
Sorry for the delay, I was OOO for awhile and am still catching up.
================
Comment at: lib/Transforms/IPO/FunctionImport.cpp:620
+ for (auto &S : VI.getSummaryList())
+ if (S->linkage() != GlobalValue::AvailableExternallyLinkage)
+ return;
----------------
Is it possible to have a symbol that is weak in one module and available_externally in another? If so, it would be more correct to return only if none of the copies is available_externally.
================
Comment at: lib/Transforms/IPO/PassManagerBuilder.cpp:523
- if (OptLevel > 1 && !PrepareForLTO && !PrepareForThinLTO)
+ if (!PrepareForLTO && !PrepareForThinLTO)
// Remove avail extern fns and globals definitions if we aren't
----------------
Thanks for this fix. Can you commit separately with a test?
Repository:
rL LLVM
https://reviews.llvm.org/D43690
More information about the llvm-commits
mailing list