1
0
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hmz007 6d24f2138b
Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56)
3 years ago
..
models/inliner Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AliasAnalysisEvaluator.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AliasAnalysisSummary.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AliasAnalysisSummary.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AliasSetTracker.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Analysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AssumeBundleQueries.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
AssumptionCache.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
BasicAliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
BlockFrequencyInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
BlockFrequencyInfoImpl.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
BranchProbabilityInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CFG.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CFGPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CFLAndersAliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CFLGraph.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CFLSteensAliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CGSCCPassManager.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CMakeLists.txt Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CallGraph.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CallGraphSCCPass.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CallPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CaptureTracking.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CmpInstAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CodeMetrics.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ConstantFolding.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ConstraintSystem.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
CostModel.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DDG.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Delinearization.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DemandedBits.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DependenceAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DependenceGraphBuilder.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DevelopmentModeInlineAdvisor.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DivergenceAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DomPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DomTreeUpdater.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
DominanceFrontier.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
EHPersonalities.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
FunctionPropertiesAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
GlobalsModRef.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
GuardUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
HeatUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IRSimilarityIdentifier.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IVDescriptors.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IVUsers.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IndirectCallPromotionAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
InlineAdvisor.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
InlineCost.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
InlineSizeEstimatorAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
InstCount.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
InstructionPrecedenceTracking.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
InstructionSimplify.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Interval.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
IntervalPartition.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LazyBlockFrequencyInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LazyBranchProbabilityInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LazyCallGraph.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LazyValueInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LegacyDivergenceAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Lint.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Loads.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopAccessAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopAnalysisManager.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopCacheAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopNestAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopPass.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
LoopUnrollAnalyzer.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MLInlineAdvisor.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemDepPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemDerefPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemoryBuiltins.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemoryDependenceAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemoryLocation.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemorySSA.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MemorySSAUpdater.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ModuleDebugInfoPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ModuleSummaryAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
MustExecute.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ObjCARCAliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ObjCARCAnalysisUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ObjCARCInstKind.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
OptimizationRemarkEmitter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
PHITransAddr.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
PhiValues.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
PostDominators.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ProfileSummaryInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
PtrUseVisitor.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
README.txt Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
RegionInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
RegionPass.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
RegionPrinter.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ReleaseModeModelRunner.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ReplayInlineAdvisor.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScalarEvolution.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScalarEvolutionAliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScalarEvolutionDivision.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScalarEvolutionNormalization.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ScopedNoAliasAA.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StackLifetime.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StackSafetyAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
StratifiedSets.h Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SyncDependenceAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
SyntheticCountsUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TFUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TargetLibraryInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TargetTransformInfo.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
Trace.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TypeBasedAliasAnalysis.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
TypeMetadataUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
VFABIDemangling.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ValueLattice.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ValueLatticeUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
ValueTracking.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago
VectorUtils.cpp Rockchip Anroid12_SDK 20220721-rkr10 (e1522e56) 3 years ago

README.txt

Analysis Opportunities:

//===---------------------------------------------------------------------===//

In test/Transforms/LoopStrengthReduce/quadradic-exit-value.ll, the
ScalarEvolution expression for %r is this:

  {1,+,3,+,2}<loop>

Outside the loop, this could be evaluated simply as (%n * %n), however
ScalarEvolution currently evaluates it as

  (-2 + (2 * (trunc i65 (((zext i64 (-2 + %n) to i65) * (zext i64 (-1 + %n) to i65)) /u 2) to i64)) + (3 * %n))

In addition to being much more complicated, it involves i65 arithmetic,
which is very inefficient when expanded into code.

//===---------------------------------------------------------------------===//

In formatValue in test/CodeGen/X86/lsr-delayed-fold.ll,

ScalarEvolution is forming this expression:

((trunc i64 (-1 * %arg5) to i32) + (trunc i64 %arg5 to i32) + (-1 * (trunc i64 undef to i32)))

This could be folded to

(-1 * (trunc i64 undef to i32))

//===---------------------------------------------------------------------===//