There is no point to importing at -O0, since we won't inline. We should
also disable other cross-module optimizations.
(Plan to backport this fix to the 3.9 branch to fix PR30774)
Paths
| Differential D25918
[ThinLTO] Disable importing and other cross-module optis at -O0 ClosedPublic Authored by tejohnson on Oct 24 2016, 12:29 PM.
Details Summary There is no point to importing at -O0, since we won't inline. We should (Plan to backport this fix to the 3.9 branch to fix PR30774)
Diff Detail
Event TimelineComment Actions Forgot to add llvm-commits before, just added. There haven't been any comments yet, so only thing missing on mailing list is the original description: There is no point to importing at -O0, since we won't inline. We should (Plan to backport this fix to the 3.9 branch to fix PR30774) pcc edited edge metadata. Comment ActionsLGTM Regarding 3.9 I don't think it's worth backporting this as a workaround for some other bug, you'd need a separate patch anyway since 3.9 branched before the new LTO API landed. This revision is now accepted and ready to land.Oct 31 2016, 10:54 AM Comment Actions
That's true it won't be a straight backport to 3.9, due to the different implementation. But I think it is the most straightforward way to address the other bug, which doesn't have a simple fix. Closed by commit rL285648: [ThinLTO] Disable importing and other cross-module optis at -O0 (authored by tejohnson). · Explain WhyOct 31 2016, 3:21 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 76492 llvm/trunk/lib/LTO/LTO.cpp
llvm/trunk/test/ThinLTO/X86/Inputs/funcimport2.ll
llvm/trunk/test/ThinLTO/X86/funcimport2.ll
llvm/trunk/test/tools/gold/X86/Inputs/thinlto_funcimport.ll
llvm/trunk/test/tools/gold/X86/thinlto_funcimport.ll
llvm/trunk/tools/llvm-lto2/llvm-lto2.cpp
|