• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

AliasAnalysis.cppD23-Nov-202325.7 KiB708451

AliasAnalysisEvaluator.cppD23-Nov-202313.3 KiB390334

AliasAnalysisSummary.cppD23-Nov-20233.6 KiB10682

AliasAnalysisSummary.hD23-Nov-20237.7 KiB19281

AliasSetTracker.cppD23-Nov-202323 KiB719505

Analysis.cppD23-Nov-20234.6 KiB129102

Android.bpD23-Nov-2023453 1715

AssumptionCache.cppD23-Nov-20234.9 KiB14190

BasicAliasAnalysis.cppD23-Nov-202369.2 KiB1,725944

BlockFrequencyInfo.cppD23-Nov-20239.1 KiB268202

BlockFrequencyInfoImpl.cppD23-Nov-202326.1 KiB796533

BranchProbabilityInfo.cppD23-Nov-202323.9 KiB711468

CFG.cppD23-Nov-20238.4 KiB237147

CFGPrinter.cppD23-Nov-20234.9 KiB166108

CFLAndersAliasAnalysis.cppD23-Nov-20232.2 KiB6124

CFLGraph.hD23-Nov-202317.5 KiB534357

CFLSteensAliasAnalysis.cppD23-Nov-202316.2 KiB443285

CGSCCPassManager.cppD23-Nov-2023986 2512

CMakeLists.txtD23-Nov-20231.9 KiB8784

CallGraph.cppD23-Nov-202311.3 KiB338220

CallGraphSCCPass.cppD23-Nov-202323.2 KiB645383

CallPrinter.cppD23-Nov-20233 KiB9354

CaptureTracking.cppD23-Nov-202313.6 KiB360202

CodeMetrics.cppD23-Nov-20236.3 KiB187108

ConstantFolding.cppD23-Nov-202371.2 KiB1,9291,421

CostModel.cppD23-Nov-202317.6 KiB537374

Delinearization.cppD23-Nov-20234.8 KiB141100

DemandedBits.cppD23-Nov-202313.9 KiB404285

DependenceAnalysis.cppD23-Nov-2023143.8 KiB3,9472,725

DivergenceAnalysis.cppD23-Nov-202312 KiB331181

DomPrinter.cppD23-Nov-20239.2 KiB283214

DominanceFrontier.cppD23-Nov-20232.4 KiB7853

EHPersonalities.cppD23-Nov-20234.6 KiB11074

GlobalsModRef.cppD23-Nov-202338.3 KiB981613

IVUsers.cppD23-Nov-202313.5 KiB371247

IndirectCallPromotionAnalysis.cppD23-Nov-20234.1 KiB11072

InlineCost.cppD23-Nov-202357.6 KiB1,554932

InstCount.cppD23-Nov-20232.7 KiB8956

InstructionSimplify.cppD23-Nov-2023163.7 KiB4,3262,990

Interval.cppD23-Nov-20231.8 KiB5625

IntervalPartition.cppD23-Nov-20234.2 KiB11450

IteratedDominanceFrontier.cppD23-Nov-20233.5 KiB10565

LLVMBuild.txtD23-Nov-2023716 2321

LazyBlockFrequencyInfo.cppD23-Nov-20232.5 KiB6941

LazyCallGraph.cppD23-Nov-202358.6 KiB1,5911,003

LazyValueInfo.cppD23-Nov-202360.7 KiB1,7171,164

Lint.cppD23-Nov-202327.5 KiB720522

Loads.cppD23-Nov-202315.7 KiB421239

LoopAccessAnalysis.cppD23-Nov-202376.6 KiB2,0611,305

LoopInfo.cppD23-Nov-202324.1 KiB730479

LoopPass.cppD23-Nov-202311.4 KiB358215

LoopPassManager.cppD23-Nov-20231.3 KiB4024

LoopUnrollAnalyzer.cppD23-Nov-20237 KiB211132

MemDepPrinter.cppD23-Nov-20235 KiB167126

MemDerefPrinter.cppD23-Nov-20232.5 KiB7963

MemoryBuiltins.cppD23-Nov-202331.5 KiB857594

MemoryDependenceAnalysis.cppD23-Nov-202366.6 KiB1,7091,003

MemoryLocation.cppD23-Nov-20235.5 KiB159112

ModuleDebugInfoPrinter.cppD23-Nov-20233.9 KiB12794

ModuleSummaryAnalysis.cppD23-Nov-20238.4 KiB230154

ObjCARCAliasAnalysis.cppD23-Nov-20235.6 KiB16397

ObjCARCAnalysisUtils.cppD23-Nov-20231.1 KiB2910

ObjCARCInstKind.cppD23-Nov-202323.8 KiB690570

OrderedBasicBlock.cppD23-Nov-20233.5 KiB8640

PHITransAddr.cppD23-Nov-202316.2 KiB444276

PostDominators.cppD23-Nov-20232.1 KiB6638

ProfileSummaryInfo.cppD23-Nov-20236.2 KiB167106

PtrUseVisitor.cppD23-Nov-20231 KiB3618

README.txtD23-Nov-20231,006 3117

RegionInfo.cppD23-Nov-20236 KiB214136

RegionPass.cppD23-Nov-20238.6 KiB283166

RegionPrinter.cppD23-Nov-20238.6 KiB268197

ScalarEvolution.cppD23-Nov-2023385.6 KiB10,4647,052

ScalarEvolutionAliasAnalysis.cppD23-Nov-20235.6 KiB14473

ScalarEvolutionExpander.cppD23-Nov-202386 KiB2,2121,454

ScalarEvolutionNormalization.cppD23-Nov-202310.1 KiB255152

ScopedNoAliasAA.cppD23-Nov-20237.1 KiB207123

SparsePropagation.cppD23-Nov-202311.8 KiB348212

StratifiedSets.hD23-Nov-202319 KiB607361

TargetLibraryInfo.cppD23-Nov-202341.8 KiB1,173981

TargetTransformInfo.cppD23-Nov-202316.7 KiB469370

Trace.cppD23-Nov-20231.7 KiB5326

TypeBasedAliasAnalysis.cppD23-Nov-202320.9 KiB617331

TypeMetadataUtils.cppD23-Nov-20234.2 KiB11987

ValueTracking.cppD23-Nov-2023157.8 KiB4,1592,827

VectorUtils.cppD23-Nov-202316.5 KiB491326

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