• Home
Name Date Size #Lines LOC

..--

models/inliner/03-May-2024-32,65332,649

AliasAnalysis.cppD03-May-202434.1 KiB944627

AliasAnalysisEvaluator.cppD03-May-202415.7 KiB436382

AliasAnalysisSummary.cppD03-May-20243.5 KiB10582

AliasAnalysisSummary.hD03-May-202410.2 KiB269149

AliasSetTracker.cppD03-May-202426.3 KiB786560

Analysis.cppD03-May-20245.4 KiB140114

AssumeBundleQueries.cppD03-May-20248.3 KiB217191

AssumptionCache.cppD03-May-202410.9 KiB327230

BasicAliasAnalysis.cppD03-May-202475.6 KiB1,8821,079

BlockFrequencyInfo.cppD03-May-202412.4 KiB349265

BlockFrequencyInfoImpl.cppD03-May-202428.6 KiB867597

BranchProbabilityInfo.cppD03-May-202447.7 KiB1,311908

CFG.cppD03-May-202410.2 KiB285181

CFGPrinter.cppD03-May-202411.2 KiB300222

CFLAndersAliasAnalysis.cppD03-May-202433 KiB932635

CFLGraph.hD03-May-202421.2 KiB661468

CFLSteensAliasAnalysis.cppD03-May-202413.2 KiB365234

CGSCCPassManager.cppD03-May-202450.6 KiB1,250726

CMakeLists.txtD03-May-20243.1 KiB146139

CallGraph.cppD03-May-202413.8 KiB404274

CallGraphSCCPass.cppD03-May-202426.8 KiB763485

CallPrinter.cppD03-May-20249.5 KiB309226

CaptureTracking.cppD03-May-202417.4 KiB455265

CmpInstAnalysis.cppD03-May-20244.6 KiB144111

CodeMetrics.cppD03-May-20247 KiB195113

ConstantFolding.cppD03-May-2024110.7 KiB3,1272,430

ConstraintSystem.cppD03-May-20245 KiB159113

CostModel.cppD03-May-20244 KiB11674

DDG.cppD03-May-202411.3 KiB326232

Delinearization.cppD03-May-20245.1 KiB147106

DemandedBits.cppD03-May-202420.2 KiB593414

DependenceAnalysis.cppD03-May-2024150.9 KiB4,0832,817

DependenceGraphBuilder.cppD03-May-202419.2 KiB512340

DevelopmentModeInlineAdvisor.cppD03-May-202419.6 KiB538454

DivergenceAnalysis.cppD03-May-202413.5 KiB394238

DomPrinter.cppD03-May-20249.7 KiB299229

DomTreeUpdater.cppD03-May-202415.2 KiB533381

DominanceFrontier.cppD03-May-20243.2 KiB9868

EHPersonalities.cppD03-May-20246 KiB140102

FunctionPropertiesAnalysis.cppD03-May-20243.1 KiB8863

GlobalsModRef.cppD03-May-202441 KiB1,046658

GuardUtils.cppD03-May-20243.3 KiB10776

HeatUtils.cppD03-May-20242.9 KiB7957

IRSimilarityIdentifier.cppD03-May-202426.3 KiB698405

IVDescriptors.cppD03-May-202446 KiB1,218770

IVUsers.cppD03-May-202416.1 KiB428274

IndirectCallPromotionAnalysis.cppD03-May-20244.3 KiB10569

InlineAdvisor.cppD03-May-202417.7 KiB478356

InlineCost.cppD03-May-2024100.1 KiB2,6161,585

InlineSizeEstimatorAnalysis.cppD03-May-202410.4 KiB284223

InstCount.cppD03-May-20243.1 KiB9565

InstructionPrecedenceTracking.cppD03-May-20244.8 KiB13991

InstructionSimplify.cppD03-May-2024222.8 KiB5,9553,919

Interval.cppD03-May-20241.8 KiB5224

IntervalPartition.cppD03-May-20244.5 KiB11959

LazyBlockFrequencyInfo.cppD03-May-20242.8 KiB7343

LazyBranchProbabilityInfo.cppD03-May-20243 KiB7646

LazyCallGraph.cppD03-May-202466.7 KiB1,8361,139

LazyValueInfo.cppD03-May-202476.3 KiB1,9571,301

LegacyDivergenceAnalysis.cppD03-May-202414.8 KiB409242

Lint.cppD03-May-202430.1 KiB784584

Loads.cppD03-May-202423.5 KiB565329

LoopAccessAnalysis.cppD03-May-202487.8 KiB2,3321,445

LoopAnalysisManager.cppD03-May-20246.6 KiB15483

LoopCacheAnalysis.cppD03-May-202423.7 KiB668475

LoopInfo.cppD03-May-202437.8 KiB1,136766

LoopNestAnalysis.cppD03-May-202412.5 KiB337221

LoopPass.cppD03-May-202413.3 KiB399248

LoopUnrollAnalyzer.cppD03-May-20247.3 KiB216136

MLInlineAdvisor.cppD03-May-202411.4 KiB303225

MemDepPrinter.cppD03-May-20245.1 KiB168127

MemDerefPrinter.cppD03-May-20243.5 KiB11393

MemoryBuiltins.cppD03-May-202441.1 KiB1,078771

MemoryDependenceAnalysis.cppD03-May-202470.8 KiB1,8161,094

MemoryLocation.cppD03-May-20249.8 KiB276219

MemorySSA.cppD03-May-202494.4 KiB2,5841,741

MemorySSAUpdater.cppD03-May-202458.8 KiB1,4691,022

ModuleDebugInfoPrinter.cppD03-May-20244.7 KiB149113

ModuleSummaryAnalysis.cppD03-May-202438.1 KiB934693

MustExecute.cppD03-May-202432.7 KiB881610

ObjCARCAliasAnalysis.cppD03-May-20245.9 KiB168102

ObjCARCAnalysisUtils.cppD03-May-20241.7 KiB4620

ObjCARCInstKind.cppD03-May-202423.2 KiB706597

OptimizationRemarkEmitter.cppD03-May-20245.2 KiB158109

PHITransAddr.cppD03-May-202416.1 KiB440273

PhiValues.cppD03-May-20248.4 KiB227150

PostDominators.cppD03-May-20243.6 KiB11471

ProfileSummaryInfo.cppD03-May-202418.1 KiB462350

PtrUseVisitor.cppD03-May-20241.3 KiB4526

README.txtD03-May-20241,006 3117

RegionInfo.cppD03-May-20246.4 KiB214135

RegionPass.cppD03-May-20249 KiB294178

RegionPrinter.cppD03-May-20248.6 KiB268198

ReleaseModeModelRunner.cppD03-May-20242.9 KiB9158

ReplayInlineAdvisor.cppD03-May-20242.3 KiB6136

ScalarEvolution.cppD03-May-2024509.6 KiB13,3178,895

ScalarEvolutionAliasAnalysis.cppD03-May-20246 KiB15181

ScalarEvolutionDivision.cppD03-May-20247.4 KiB258182

ScalarEvolutionNormalization.cppD03-May-20244.6 KiB11857

ScopedNoAliasAA.cppD03-May-20246.7 KiB187111

StackLifetime.cppD03-May-202413.2 KiB403317

StackSafetyAnalysis.cppD03-May-202436 KiB1,096881

StratifiedSets.hD03-May-202418.7 KiB597357

SyncDependenceAnalysis.cppD03-May-202415.5 KiB464249

SyntheticCountsUtils.cppD03-May-20243.8 KiB10454

TFUtils.cppD03-May-202417.6 KiB506400

TargetLibraryInfo.cppD03-May-202459.7 KiB1,6871,402

TargetTransformInfo.cppD03-May-202452.2 KiB1,4491,116

Trace.cppD03-May-20241.8 KiB5429

TypeBasedAliasAnalysis.cppD03-May-202426 KiB739432

TypeMetadataUtils.cppD03-May-20245.9 KiB163120

VFABIDemangling.cppD03-May-202416.5 KiB483269

ValueLattice.cppD03-May-20241.2 KiB3421

ValueLatticeUtils.cppD03-May-20241.5 KiB4222

ValueTracking.cppD03-May-2024250.6 KiB6,7784,797

VectorUtils.cppD03-May-202449.7 KiB1,379911

README.txt

1Analysis Opportunities:
2
3//===---------------------------------------------------------------------===//
4
5In test/Transforms/LoopStrengthReduce/quadradic-exit-value.ll, the
6ScalarEvolution expression for %r is this:
7
8  {1,+,3,+,2}<loop>
9
10Outside the loop, this could be evaluated simply as (%n * %n), however
11ScalarEvolution currently evaluates it as
12
13  (-2 + (2 * (trunc i65 (((zext i64 (-2 + %n) to i65) * (zext i64 (-1 + %n) to i65)) /u 2) to i64)) + (3 * %n))
14
15In addition to being much more complicated, it involves i65 arithmetic,
16which is very inefficient when expanded into code.
17
18//===---------------------------------------------------------------------===//
19
20In formatValue in test/CodeGen/X86/lsr-delayed-fold.ll,
21
22ScalarEvolution is forming this expression:
23
24((trunc i64 (-1 * %arg5) to i32) + (trunc i64 %arg5 to i32) + (-1 * (trunc i64 undef to i32)))
25
26This could be folded to
27
28(-1 * (trunc i64 undef to i32))
29
30//===---------------------------------------------------------------------===//
31