• Home
Name Date Size #Lines LOC

..--

AliasAnalysis.cppD03-May-202421 KiB586354

AliasAnalysisEvaluator.cppD03-May-202413.9 KiB397331

AliasSetTracker.cppD03-May-202421.7 KiB674471

Analysis.cppD03-May-20244.4 KiB12598

Android.mkD03-May-20242.3 KiB10189

AssumptionCache.cppD03-May-20244.9 KiB14190

BasicAliasAnalysis.cppD03-May-202464.5 KiB1,617919

BlockFrequencyInfo.cppD03-May-20246.6 KiB214162

BlockFrequencyInfoImpl.cppD03-May-202425.5 KiB770520

BranchProbabilityInfo.cppD03-May-202423.5 KiB729469

CFG.cppD03-May-20248.4 KiB237147

CFGPrinter.cppD03-May-20244.9 KiB166108

CFLAliasAnalysis.cppD03-May-202438.6 KiB1,120733

CGSCCPassManager.cppD03-May-20242.5 KiB7336

CMakeLists.txtD03-May-20241.6 KiB7875

CallGraph.cppD03-May-202410.3 KiB307195

CallGraphSCCPass.cppD03-May-202422.9 KiB633372

CallPrinter.cppD03-May-20242.9 KiB9354

CaptureTracking.cppD03-May-202411.8 KiB316174

CodeMetrics.cppD03-May-20246.4 KiB185106

ConstantFolding.cppD03-May-202469.7 KiB1,8351,327

CostModel.cppD03-May-202417.6 KiB534372

Delinearization.cppD03-May-20244.8 KiB142101

DemandedBits.cppD03-May-202413.7 KiB393276

DependenceAnalysis.cppD03-May-2024146.6 KiB4,0162,785

DivergenceAnalysis.cppD03-May-202411.8 KiB321177

DomPrinter.cppD03-May-20247.9 KiB255187

DominanceFrontier.cppD03-May-20241.6 KiB5838

EHPersonalities.cppD03-May-20244.4 KiB10771

GlobalsModRef.cppD03-May-202439.5 KiB1,003627

IVUsers.cppD03-May-202413.6 KiB374250

InlineCost.cppD03-May-202454 KiB1,452881

InstCount.cppD03-May-20242.7 KiB8956

InstructionSimplify.cppD03-May-2024158.6 KiB4,1822,881

Interval.cppD03-May-20242 KiB5928

IntervalPartition.cppD03-May-20244.2 KiB11551

IteratedDominanceFrontier.cppD03-May-20243.1 KiB9657

LLVMBuild.txtD03-May-2024704 2321

LazyCallGraph.cppD03-May-202426.1 KiB728496

LazyValueInfo.cppD03-May-202449 KiB1,426976

Lint.cppD03-May-202427.6 KiB721523

Loads.cppD03-May-202410.8 KiB288144

LoopAccessAnalysis.cppD03-May-202468.7 KiB1,8621,165

LoopInfo.cppD03-May-202426.8 KiB779481

LoopPass.cppD03-May-202411.1 KiB348205

MakefileD03-May-2024430 164

MemDepPrinter.cppD03-May-20245.2 KiB169128

MemDerefPrinter.cppD03-May-20242.5 KiB7963

MemoryBuiltins.cppD03-May-202429.7 KiB805553

MemoryDependenceAnalysis.cppD03-May-202470.6 KiB1,7591,015

MemoryLocation.cppD03-May-20246.1 KiB175124

ModuleDebugInfoPrinter.cppD03-May-20243.9 KiB12794

ObjCARCAliasAnalysis.cppD03-May-20246 KiB171104

ObjCARCAnalysisUtils.cppD03-May-20241.1 KiB2910

ObjCARCInstKind.cppD03-May-202423.3 KiB676556

OrderedBasicBlock.cppD03-May-20243.5 KiB8640

PHITransAddr.cppD03-May-202416.1 KiB443275

PostDominators.cppD03-May-20241.5 KiB5125

PtrUseVisitor.cppD03-May-20241 KiB3618

README.txtD03-May-20241,006 3117

RegionInfo.cppD03-May-20244.9 KiB183116

RegionPass.cppD03-May-20248.6 KiB283166

RegionPrinter.cppD03-May-20248.6 KiB268197

ScalarEvolution.cppD03-May-2024364.5 KiB9,7436,461

ScalarEvolutionAliasAnalysis.cppD03-May-20245.9 KiB14978

ScalarEvolutionExpander.cppD03-May-202478.5 KiB2,0271,340

ScalarEvolutionNormalization.cppD03-May-202410.1 KiB255152

ScopedNoAliasAA.cppD03-May-20247.5 KiB213129

SparsePropagation.cppD03-May-202411.8 KiB348212

StratifiedSets.hD03-May-202422 KiB693406

TargetLibraryInfo.cppD03-May-202422.4 KiB636497

TargetTransformInfo.cppD03-May-202413.5 KiB391305

Trace.cppD03-May-20241.7 KiB5326

TypeBasedAliasAnalysis.cppD03-May-202421.3 KiB623337

ValueTracking.cppD03-May-2024164.6 KiB4,2202,835

VectorUtils.cppD03-May-202419.2 KiB568386

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