teak-llvm/llvm/lib/Transforms/Utils
Chandler Carruth ca68a3ec47 [PM] Introduce an analysis set used to preserve all analyses over
a function's CFG when that CFG is unchanged.

This allows transformation passes to simply claim they preserve the CFG
and analysis passes to check for the CFG being preserved to remove the
fanout of all analyses being listed in all passes.

I've gone through and removed or cleaned up as many of the comments
reminding us to do this as I could.

Differential Revision: https://reviews.llvm.org/D28627

llvm-svn: 292054
2017-01-15 06:32:49 +00:00
..
AddDiscriminators.cpp Use the last 7 bits to represent the discriminator to fit it in 1 byte ULEB128 (NFC). 2016-11-08 16:32:32 +00:00
ASanStackFrameLayout.cpp [asan] Replace std::to_string with llvm::to_string 2016-10-19 00:16:56 +00:00
BasicBlockUtils.cpp
BreakCriticalEdges.cpp
BuildLibCalls.cpp
BypassSlowDivision.cpp [BypassSlowDivision] Handle division by constant numerators better. 2016-11-16 00:44:47 +00:00
CloneFunction.cpp [CloneFunction] Don't remove unrelated nodes from the CGSSC 2016-08-19 16:37:40 +00:00
CloneModule.cpp Cloning: Also clone global variable attached metadata. 2016-10-26 02:57:33 +00:00
CMakeLists.txt [LoopUnroll] Implement profile-based loop peeling 2016-11-30 21:13:57 +00:00
CmpInstAnalysis.cpp
CodeExtractor.cpp CodeExtractor : Add ability to preserve profile data. 2016-08-02 02:15:45 +00:00
CtorUtils.cpp [CtorUtils] Modernize. No functional changes intended. 2016-10-22 01:21:24 +00:00
DemoteRegToStack.cpp
EscapeEnumerator.cpp [tsan] Add support for C++ exceptions into TSan (call __tsan_func_exit during unwinding), LLVM part 2016-11-14 21:41:13 +00:00
Evaluator.cpp Use the range variant of find instead of unpacking begin/end 2016-08-11 22:21:41 +00:00
FlattenCFG.cpp [FlattenCFG] Simplify + remove unused variable. NFCI. 2016-08-05 20:53:35 +00:00
FunctionComparator.cpp IR: Move NumElements field from {Array,Vector}Type to SequentialType. 2016-12-02 03:20:58 +00:00
FunctionImportUtils.cpp [ThinLTO] Handle conflicting local names gracefully 2017-01-06 23:38:41 +00:00
GlobalStatus.cpp [Transforms/Utils] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-14 00:32:38 +00:00
ImportedFunctionsInliningStatistics.cpp Imported statistics types changes 2016-08-02 22:18:47 +00:00
InlineFunction.cpp fix typo; NFC 2017-01-02 19:05:11 +00:00
InstructionNamer.cpp
IntegerDivision.cpp
LCSSA.cpp [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
LibCallsShrinkWrap.cpp Give some helper classes/functions internal linkage. NFC. 2016-11-19 20:44:26 +00:00
LLVMBuild.txt
Local.cpp Refactor the DIExpression fragment query interface (NFC) 2016-12-22 05:27:12 +00:00
LoopSimplify.cpp Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
LoopUnroll.cpp [loop-unroll] Factor out code to update LoopInfo (NFC). 2017-01-10 23:24:54 +00:00
LoopUnrollPeel.cpp Make sure total loop body weight is preserved in loop peeling 2017-01-02 20:27:23 +00:00
LoopUnrollRuntime.cpp [loop-unroll] Properly populate LoopInfo for loops cloned in LoopUnrollRuntime. 2017-01-10 23:43:35 +00:00
LoopUtils.cpp [LV] Don't panic when encountering the IV of an outer loop. 2017-01-10 19:32:30 +00:00
LoopVersioning.cpp [LoopVersioning] Require loop-simplify form for loop versioning. 2016-12-19 17:13:37 +00:00
LowerInvoke.cpp [PM] Port LowerInvoke to the new pass manager 2016-08-12 17:28:27 +00:00
LowerSwitch.cpp Use the range variant of remove_if instead of unpacking begin/end 2016-08-12 04:32:37 +00:00
Mem2Reg.cpp [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
MemorySSA.cpp [MemorySSA] Define a restricted upward AccessList splice. 2016-12-25 23:34:07 +00:00
MetaRenamer.cpp
ModuleUtils.cpp [PM] Teach the always inliner in the new pass manager to support 2016-12-26 23:43:27 +00:00
NameAnonGlobals.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
PromoteMemoryToRegister.cpp Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
SanitizerStats.cpp
SimplifyCFG.cpp [DebugInfo] Remove redundant check in SimplifyCFG; NFC. 2017-01-12 21:11:09 +00:00
SimplifyIndVar.cpp
SimplifyInstructions.cpp [PM] Introduce an analysis set used to preserve all analyses over 2017-01-15 06:32:49 +00:00
SimplifyLibCalls.cpp [SimplifyLibCalls] Propagate fast math flags while optimizing pow(). 2017-01-10 18:02:05 +00:00
SplitModule.cpp
SSAUpdater.cpp Use the range variant of find instead of unpacking begin/end 2016-08-11 22:21:41 +00:00
StripGCRelocates.cpp [StripGCRelocates] New pass to remove gc.relocates added by RS4GC 2016-10-21 18:43:16 +00:00
StripNonLineTableDebugInfo.cpp Add -strip-nonlinetable-debuginfo capability 2016-10-25 18:44:13 +00:00
SymbolRewriter.cpp
UnifyFunctionExitNodes.cpp
Utils.cpp Add -strip-nonlinetable-debuginfo capability 2016-10-25 18:44:13 +00:00
ValueMapper.cpp "Use" lambda captures which are otherwise only used in asserts. NFC 2017-01-13 21:02:41 +00:00