2008-09-22 09:08:49 +08:00
|
|
|
add_llvm_library(LLVMAnalysis
|
|
|
|
AliasAnalysis.cpp
|
|
|
|
AliasAnalysisCounter.cpp
|
|
|
|
AliasAnalysisEvaluator.cpp
|
|
|
|
AliasDebugger.cpp
|
|
|
|
AliasSetTracker.cpp
|
|
|
|
Analysis.cpp
|
|
|
|
BasicAliasAnalysis.cpp
|
2011-07-26 03:25:40 +08:00
|
|
|
BlockFrequencyInfo.cpp
|
2011-06-04 09:16:30 +08:00
|
|
|
BranchProbabilityInfo.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
CFGPrinter.cpp
|
2009-07-16 05:08:16 +08:00
|
|
|
CaptureTracking.cpp
|
2012-11-03 05:48:17 +08:00
|
|
|
CostModel.cpp
|
2012-03-16 13:51:52 +08:00
|
|
|
CodeMetrics.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
ConstantFolding.cpp
|
2008-12-16 20:25:04 +08:00
|
|
|
DbgInfoPrinter.cpp
|
dependence analysis
Patch from Preston Briggs <preston.briggs@gmail.com>.
This is an updated version of the dependence-analysis patch, including an MIV
test based on Banerjee's inequalities.
It's a fairly complete implementation of the paper
Practical Dependence Testing
Gina Goff, Ken Kennedy, and Chau-Wen Tseng
PLDI 1991
It cannot yet propagate constraints between coupled RDIV subscripts (discussed
in Section 5.3.2 of the paper).
It's organized as a FunctionPass with a single entry point that supports testing
for dependence between two instructions in a function. If there's no dependence,
it returns null. If there's a dependence, it returns a pointer to a Dependence
which can be queried about details (what kind of dependence, is it loop
independent, direction and distance vector entries, etc). I haven't included
every imaginable feature, but there's a good selection that should be adequate
for supporting many loop transformations. Of course, it can be extended as
necessary.
Included in the patch file are many test cases, commented with C code showing
the loops and array references.
llvm-svn: 165708
2012-10-11 15:32:34 +08:00
|
|
|
DependenceAnalysis.cpp
|
2009-10-18 12:10:40 +08:00
|
|
|
DomPrinter.cpp
|
2011-03-01 08:02:51 +08:00
|
|
|
DominanceFrontier.cpp
|
2009-07-16 05:08:16 +08:00
|
|
|
IVUsers.cpp
|
2009-10-14 02:50:54 +08:00
|
|
|
InlineCost.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
InstCount.cpp
|
2009-11-10 06:57:59 +08:00
|
|
|
InstructionSimplify.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
Interval.cpp
|
|
|
|
IntervalPartition.cpp
|
2009-11-11 08:22:30 +08:00
|
|
|
LazyValueInfo.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
LibCallAliasAnalysis.cpp
|
|
|
|
LibCallSemantics.cpp
|
2010-04-09 02:52:18 +08:00
|
|
|
Lint.cpp
|
2010-05-29 00:19:17 +08:00
|
|
|
Loads.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
LoopInfo.cpp
|
|
|
|
LoopPass.cpp
|
2010-09-17 07:06:18 +08:00
|
|
|
MemDepPrinter.cpp
|
2009-10-28 04:05:49 +08:00
|
|
|
MemoryBuiltins.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
MemoryDependenceAnalysis.cpp
|
2010-05-08 00:22:32 +08:00
|
|
|
ModuleDebugInfoPrinter.cpp
|
2011-03-01 08:02:51 +08:00
|
|
|
NoAliasAnalysis.cpp
|
|
|
|
PHITransAddr.cpp
|
2011-01-29 09:09:53 +08:00
|
|
|
PathNumbering.cpp
|
|
|
|
PathProfileInfo.cpp
|
|
|
|
PathProfileVerifier.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
PostDominators.cpp
|
2009-08-09 02:44:18 +08:00
|
|
|
ProfileEstimatorPass.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
ProfileInfo.cpp
|
|
|
|
ProfileInfoLoader.cpp
|
|
|
|
ProfileInfoLoaderPass.cpp
|
2009-09-01 18:24:10 +08:00
|
|
|
ProfileVerifierPass.cpp
|
2012-08-29 06:21:25 +08:00
|
|
|
ProfileDataLoader.cpp
|
|
|
|
ProfileDataLoaderPass.cpp
|
2010-07-22 15:46:31 +08:00
|
|
|
RegionInfo.cpp
|
2010-10-20 09:54:44 +08:00
|
|
|
RegionPass.cpp
|
2010-07-22 15:46:31 +08:00
|
|
|
RegionPrinter.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
ScalarEvolution.cpp
|
2009-08-27 00:33:57 +08:00
|
|
|
ScalarEvolutionAliasAnalysis.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
ScalarEvolutionExpander.cpp
|
2010-04-08 07:01:37 +08:00
|
|
|
ScalarEvolutionNormalization.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
SparsePropagation.cpp
|
|
|
|
Trace.cpp
|
2010-08-03 10:38:20 +08:00
|
|
|
TypeBasedAliasAnalysis.cpp
|
2008-09-22 09:08:49 +08:00
|
|
|
ValueTracking.cpp
|
|
|
|
)
|
2011-02-19 06:06:14 +08:00
|
|
|
|
2012-06-24 21:32:01 +08:00
|
|
|
add_dependencies(LLVMAnalysis intrinsics_gen)
|
|
|
|
|
2011-02-19 06:06:14 +08:00
|
|
|
add_subdirectory(IPA)
|