llvm-project/llvm/lib/Transforms/IPO
Chandler Carruth 01f0c8a8c4 [PM/ThinLTO] Fix PR33536, a bug where the ThinLTO bitcode writer was
querying for analysis results on a function declaration rather than
a definition.

The only reason this worked previously is by chance -- because the way
we got alias analysis results with the legacy PM, we happened to not
compute a dominator tree and so we happened to not hit an assert even
though it didn't make any real sense. Now we bail out before trying to
compute alias analysis so that we don't hit these asserts.

llvm-svn: 307625
2017-07-11 05:39:20 +00:00
..
AlwaysInliner.cpp [PM] Teach the always inliner in the new pass manager to support 2016-12-26 23:43:27 +00:00
ArgumentPromotion.cpp [ArgumentPromotion] Change use of removed argument in llvm.dbg.value to undef 2017-07-10 06:07:24 +00:00
BarrierNoopPass.cpp
CMakeLists.txt IPO: Introduce ThinLTOBitcodeWriter pass. 2016-12-16 00:26:30 +00:00
ConstantMerge.cpp Don't merge global constants with non-dbg metadata. 2017-03-09 00:03:37 +00:00
CrossDSOCFI.cpp [cfi] CFI-ICall for ThinLTO. 2017-06-16 00:18:29 +00:00
DeadArgumentElimination.cpp [DAE] Simplify attribute list creation, NFC 2017-04-19 23:45:45 +00:00
ElimAvailExtern.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
ExtractGV.cpp [ExtractGV] Fix the doxygen comment on the constructor and the class to refer to global values instead of functions. While there fix an 80 column violation. NFC 2017-06-08 23:38:19 +00:00
ForceFunctionAttrs.cpp [PM] Remove support for omitting the AnalysisManager argument to new 2016-06-17 00:11:01 +00:00
FunctionAttrs.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
FunctionImport.cpp Increase the import-threshold for crtical functions. 2017-07-07 21:01:00 +00:00
GlobalDCE.cpp Global DCE performance improvement 2017-01-27 19:48:57 +00:00
GlobalOpt.cpp [GlobalOpt] Remove unreachable blocks before optimizing a function. 2017-07-05 22:28:28 +00:00
GlobalSplit.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
IPConstantPropagation.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
IPO.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
InferFunctionAttrs.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
InlineSimple.cpp Do not inline hot callsites for samplepgo in thinlto compile phase. 2017-03-21 19:55:36 +00:00
Inliner.cpp [PM] Finish implementing and fix a chain of bugs uncovered by testing 2017-07-09 03:59:31 +00:00
Internalize.cpp Consistently use ModuleAnalysisManager 2016-08-09 00:28:38 +00:00
LLVMBuild.txt IPO: Add missing build dep. 2017-05-01 20:57:20 +00:00
LoopExtractor.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
LowerTypeTests.cpp [cfi] CFI-ICall for ThinLTO. 2017-06-16 00:18:29 +00:00
MergeFunctions.cpp Rename WeakVH to WeakTrackingVH; NFC 2017-05-01 17:07:49 +00:00
PartialInlining.cpp Fix function name /NFC 2017-06-16 16:54:13 +00:00
PassManagerBuilder.cpp Avoid constructing GlobalExtensions only to find out it is empty. 2017-07-06 00:09:09 +00:00
PruneEH.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SampleProfile.cpp Hook the sample PGO machinery in the new PM 2017-06-29 23:33:05 +00:00
StripDeadPrototypes.cpp [PM] Remove support for omitting the AnalysisManager argument to new 2016-06-17 00:11:01 +00:00
StripSymbols.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
ThinLTOBitcodeWriter.cpp [PM/ThinLTO] Fix PR33536, a bug where the ThinLTO bitcode writer was 2017-07-11 05:39:20 +00:00
WholeProgramDevirt.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00