vitalyisaev 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
..
AliasAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
AliasAnalysisEvaluator.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
AliasAnalysisSummary.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
AliasAnalysisSummary.h 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
AliasSetTracker.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Analysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
AssumeBundleQueries.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
AssumptionCache.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
BasicAliasAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
BlockFrequencyInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
BlockFrequencyInfoImpl.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
BranchProbabilityInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CFG.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CFGPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CFGSCCPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CGSCCPassManager.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CallGraph.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CallGraphSCCPass.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CallPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CaptureTracking.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CmpInstAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CodeMetrics.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ConstantFolding.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ConstraintSystem.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CostModel.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
CycleAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DDG.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DDGPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Delinearization.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DemandedBits.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DependenceAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DependenceGraphBuilder.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DevelopmentModeInlineAdvisor.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DivergenceAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DomPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DomTreeUpdater.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
DominanceFrontier.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
EHPersonalities.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
FunctionPropertiesAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
GlobalsModRef.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
GuardUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
HeatUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
IRSimilarityIdentifier.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
IVDescriptors.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
IVUsers.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ImportedFunctionsInliningStatistics.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
IndirectCallPromotionAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InlineAdvisor.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InlineCost.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InlineOrder.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InlineSizeEstimatorAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InstCount.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InstructionPrecedenceTracking.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
InstructionSimplify.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Interval.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
IntervalPartition.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LazyBlockFrequencyInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LazyBranchProbabilityInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LazyCallGraph.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LazyValueInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LegacyDivergenceAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Lint.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Loads.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Local.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopAccessAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopAnalysisManager.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopCacheAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopNestAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopPass.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
LoopUnrollAnalyzer.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MLInlineAdvisor.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemDepPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemDerefPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemoryBuiltins.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemoryDependenceAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemoryLocation.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemoryProfileInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemorySSA.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MemorySSAUpdater.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ModelUnderTrainingRunner.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ModuleDebugInfoPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ModuleSummaryAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
MustExecute.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
NoInferenceModelRunner.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ObjCARCAliasAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ObjCARCAnalysisUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ObjCARCInstKind.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
OptimizationRemarkEmitter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
OverflowInstAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
PHITransAddr.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
PhiValues.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
PostDominators.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ProfileSummaryInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
PtrUseVisitor.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
README.txt 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
RegionInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
RegionPass.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
RegionPrinter.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ReplayInlineAdvisor.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ScalarEvolution.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ScalarEvolutionAliasAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ScalarEvolutionDivision.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ScalarEvolutionNormalization.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ScopedNoAliasAA.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
StackLifetime.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
StackSafetyAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
SyncDependenceAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
SyntheticCountsUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TFLiteUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TargetLibraryInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TargetTransformInfo.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TensorSpec.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
Trace.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TrainingLogger.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TypeBasedAliasAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
TypeMetadataUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
UniformityAnalysis.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
VFABIDemangling.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ValueLattice.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ValueLatticeUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ValueTracking.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
VectorUtils.cpp 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago
ya.make 6ffe9e5365 YQ Connector: support managed ClickHouse 1 year ago

README.txt

Analysis Opportunities:

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

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

{1,+,3,+,2}

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))

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