llvm-project/llvm/lib/Transforms/IPO
Justin Bogner e9fb228d59 LoopInfo: Simplify ownership of Loop objects
It's strange that LoopInfo mostly owns the Loop objects, but that it
defers deleting them to the loop pass manager. Instead, change the
oddly named "updateUnloop" to "markAsRemoved" and have it queue the
Loop object for deletion. We can't delete the Loop immediately when we
remove it, since we need its pointer identity still, so we'll mark the
object as "invalid" so that clients can see what's going on.

llvm-svn: 257191
2016-01-08 19:08:53 +00:00
..
ArgumentPromotion.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
BarrierNoopPass.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
CMakeLists.txt [attrs] Extract the pure inference of function attributes into 2015-12-27 08:41:34 +00:00
ConstantMerge.cpp IPO: Remove implicit ilist iterator conversions, NFC 2015-10-13 17:51:03 +00:00
CrossDSOCFI.cpp Remove one of the void casts used to suppress unused variable warning. 2015-12-15 23:47:17 +00:00
DeadArgumentElimination.cpp [OperandBundles] Have DeadArgElim play nice with operand bundles 2015-12-23 09:58:36 +00:00
ElimAvailExtern.cpp Disallow aliases to available_externally. 2015-11-26 19:22:59 +00:00
ExtractGV.cpp IPO: Remove implicit ilist iterator conversions, NFC 2015-10-13 17:51:03 +00:00
ForceFunctionAttrs.cpp Fix option desc in FunctionAttrs; NFC 2016-01-06 18:18:16 +00:00
FunctionAttrs.cpp [attrs] Split the late-revisit pattern for deducing norecurse in 2016-01-08 10:55:52 +00:00
FunctionImport.cpp [ThinLTO] Use new in-place symbol changes for exporting module 2016-01-08 17:06:29 +00:00
GlobalDCE.cpp Re-reapply "[IR] Move optional data in llvm::Function into a hungoff uselist" 2015-12-19 08:52:49 +00:00
GlobalOpt.cpp Also add unnamed_addr to functions. 2015-12-22 20:43:30 +00:00
IPConstantPropagation.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
IPO.cpp [attrs] Split the late-revisit pattern for deducing norecurse in 2016-01-08 10:55:52 +00:00
InferFunctionAttrs.cpp [BasicAA] Remove special casing of memset_pattern16 in favor of generic attribute inference 2016-01-06 04:53:16 +00:00
InlineAlways.cpp Refactor inline costs analysis by removing the InlineCostAnalysis class 2015-12-28 20:28:19 +00:00
InlineSimple.cpp Refactor inline costs analysis by removing the InlineCostAnalysis class 2015-12-28 20:28:19 +00:00
Inliner.cpp Refactor inline costs analysis by removing the InlineCostAnalysis class 2015-12-28 20:28:19 +00:00
Internalize.cpp IPO: Remove implicit ilist iterator conversions, NFC 2015-10-13 17:51:03 +00:00
LLVMBuild.txt [PGO] Revert revision r254021,r254028,r254035 2015-11-24 23:49:08 +00:00
LoopExtractor.cpp LoopInfo: Simplify ownership of Loop objects 2016-01-08 19:08:53 +00:00
LowerBitSets.cpp [cfi] Fix LowerBitSets on 32-bit targets. 2015-12-21 22:14:04 +00:00
Makefile
MergeFunctions.cpp [MergeFunctions] Use II instead of CI for InvokeInst; NFC 2015-12-14 19:11:45 +00:00
PartialInlining.cpp IPO: Remove implicit ilist iterator conversions, NFC 2015-10-13 17:51:03 +00:00
PassManagerBuilder.cpp [attrs] Split the late-revisit pattern for deducing norecurse in 2016-01-08 10:55:52 +00:00
PruneEH.cpp PruneEH pass incorrectly reports that a change was made 2015-12-11 16:30:26 +00:00
SampleProfile.cpp SamplePGO - Reduce memory utilization by 10x. 2015-12-11 23:21:38 +00:00
StripDeadPrototypes.cpp [PM] Port StripDeadPrototypes to the new pass manager 2015-10-30 23:28:12 +00:00
StripSymbols.cpp DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00