|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | - | - |
| AliasAnalysis.cpp | D | 03-May-2024 | 30.5 KiB | 841 | 538 |
| AliasAnalysisEvaluator.cpp | D | 03-May-2024 | 15.5 KiB | 434 | 378 |
| AliasAnalysisSummary.cpp | D | 03-May-2024 | 3.5 KiB | 104 | 81 |
| AliasAnalysisSummary.h | D | 03-May-2024 | 10.1 KiB | 266 | 147 |
| AliasSetTracker.cpp | D | 03-May-2024 | 23.7 KiB | 730 | 516 |
| Analysis.cpp | D | 03-May-2024 | 5.1 KiB | 137 | 110 |
| AssumptionCache.cpp | D | 03-May-2024 | 9.1 KiB | 276 | 184 |
| BasicAliasAnalysis.cpp | D | 03-May-2024 | 79.8 KiB | 1,975 | 1,101 |
| BlockFrequencyInfo.cpp | D | 03-May-2024 | 12.1 KiB | 343 | 259 |
| BlockFrequencyInfoImpl.cpp | D | 03-May-2024 | 27.9 KiB | 848 | 580 |
| BranchProbabilityInfo.cpp | D | 03-May-2024 | 36.4 KiB | 1,040 | 710 |
| CFG.cpp | D | 03-May-2024 | 8.4 KiB | 237 | 147 |
| CFGPrinter.cpp | D | 03-May-2024 | 6 KiB | 196 | 133 |
| CFLAndersAliasAnalysis.cpp | D | 03-May-2024 | 32.7 KiB | 923 | 626 |
| CFLGraph.h | D | 03-May-2024 | 21 KiB | 655 | 461 |
| CFLSteensAliasAnalysis.cpp | D | 03-May-2024 | 12.9 KiB | 359 | 227 |
| CGSCCPassManager.cpp | D | 03-May-2024 | 28.4 KiB | 690 | 388 |
| CMakeLists.txt | D | 03-May-2024 | 2.1 KiB | 97 | 94 |
| CallGraph.cpp | D | 03-May-2024 | 11 KiB | 330 | 214 |
| CallGraphSCCPass.cpp | D | 03-May-2024 | 23.9 KiB | 667 | 404 |
| CallPrinter.cpp | D | 03-May-2024 | 3 KiB | 93 | 54 |
| CaptureTracking.cpp | D | 03-May-2024 | 13.8 KiB | 365 | 205 |
| CmpInstAnalysis.cpp | D | 03-May-2024 | 4.7 KiB | 145 | 111 |
| CodeMetrics.cpp | D | 03-May-2024 | 7 KiB | 200 | 116 |
| ConstantFolding.cpp | D | 03-May-2024 | 83.1 KiB | 2,263 | 1,699 |
| CostModel.cpp | D | 03-May-2024 | 3.8 KiB | 113 | 71 |
| Delinearization.cpp | D | 03-May-2024 | 4.4 KiB | 131 | 91 |
| DemandedBits.cpp | D | 03-May-2024 | 14 KiB | 411 | 288 |
| DependenceAnalysis.cpp | D | 03-May-2024 | 145.7 KiB | 3,982 | 2,735 |
| DivergenceAnalysis.cpp | D | 03-May-2024 | 12.4 KiB | 341 | 190 |
| DomPrinter.cpp | D | 03-May-2024 | 9.6 KiB | 299 | 228 |
| DominanceFrontier.cpp | D | 03-May-2024 | 3.1 KiB | 98 | 67 |
| EHPersonalities.cpp | D | 03-May-2024 | 5.9 KiB | 137 | 98 |
| GlobalsModRef.cpp | D | 03-May-2024 | 39.7 KiB | 1,015 | 630 |
| IVUsers.cpp | D | 03-May-2024 | 16.1 KiB | 428 | 273 |
| IndirectCallPromotionAnalysis.cpp | D | 03-May-2024 | 4.3 KiB | 108 | 71 |
| InlineCost.cpp | D | 03-May-2024 | 81.6 KiB | 2,155 | 1,274 |
| InstCount.cpp | D | 03-May-2024 | 2.4 KiB | 80 | 48 |
| InstructionSimplify.cpp | D | 03-May-2024 | 191.2 KiB | 5,182 | 3,477 |
| Interval.cpp | D | 03-May-2024 | 1.7 KiB | 53 | 24 |
| IntervalPartition.cpp | D | 03-May-2024 | 4.3 KiB | 115 | 55 |
| IteratedDominanceFrontier.cpp | D | 03-May-2024 | 3.4 KiB | 100 | 59 |
| LLVMBuild.txt | D | 03-May-2024 | 736 | 23 | 21 |
| LazyBlockFrequencyInfo.cpp | D | 03-May-2024 | 2.8 KiB | 73 | 42 |
| LazyBranchProbabilityInfo.cpp | D | 03-May-2024 | 2.9 KiB | 75 | 44 |
| LazyCallGraph.cpp | D | 03-May-2024 | 65.5 KiB | 1,806 | 1,115 |
| LazyValueInfo.cpp | D | 03-May-2024 | 74.1 KiB | 1,921 | 1,257 |
| Lint.cpp | D | 03-May-2024 | 28.5 KiB | 754 | 551 |
| Loads.cpp | D | 03-May-2024 | 16.9 KiB | 442 | 256 |
| LoopAccessAnalysis.cpp | D | 03-May-2024 | 90.1 KiB | 2,378 | 1,479 |
| LoopAnalysisManager.cpp | D | 03-May-2024 | 6.9 KiB | 160 | 84 |
| LoopInfo.cpp | D | 03-May-2024 | 25.7 KiB | 771 | 512 |
| LoopPass.cpp | D | 03-May-2024 | 12.9 KiB | 391 | 238 |
| LoopUnrollAnalyzer.cpp | D | 03-May-2024 | 7.2 KiB | 216 | 135 |
| MemDepPrinter.cpp | D | 03-May-2024 | 5 KiB | 167 | 126 |
| MemDerefPrinter.cpp | D | 03-May-2024 | 2.4 KiB | 77 | 61 |
| MemoryBuiltins.cpp | D | 03-May-2024 | 36.1 KiB | 962 | 680 |
| MemoryDependenceAnalysis.cpp | D | 03-May-2024 | 70.4 KiB | 1,806 | 1,075 |
| MemoryLocation.cpp | D | 03-May-2024 | 6 KiB | 175 | 124 |
| MemorySSA.cpp | D | 03-May-2024 | 78.4 KiB | 2,191 | 1,463 |
| MemorySSAUpdater.cpp | D | 03-May-2024 | 24.3 KiB | 637 | 407 |
| ModuleDebugInfoPrinter.cpp | D | 03-May-2024 | 4 KiB | 129 | 96 |
| ModuleSummaryAnalysis.cpp | D | 03-May-2024 | 25.8 KiB | 644 | 483 |
| MustExecute.cpp | D | 03-May-2024 | 10.5 KiB | 270 | 176 |
| ObjCARCAliasAnalysis.cpp | D | 03-May-2024 | 5.6 KiB | 163 | 97 |
| ObjCARCAnalysisUtils.cpp | D | 03-May-2024 | 1 KiB | 27 | 8 |
| ObjCARCInstKind.cpp | D | 03-May-2024 | 23.8 KiB | 696 | 573 |
| OptimizationRemarkEmitter.cpp | D | 03-May-2024 | 4.1 KiB | 135 | 87 |
| OrderedBasicBlock.cpp | D | 03-May-2024 | 3.5 KiB | 86 | 40 |
| PHITransAddr.cpp | D | 03-May-2024 | 16 KiB | 441 | 273 |
| PhiValues.cpp | D | 03-May-2024 | 7.3 KiB | 197 | 128 |
| PostDominators.cpp | D | 03-May-2024 | 2.7 KiB | 86 | 51 |
| ProfileSummaryInfo.cpp | D | 03-May-2024 | 11.6 KiB | 311 | 218 |
| PtrUseVisitor.cpp | D | 03-May-2024 | 1.1 KiB | 40 | 21 |
| README.txt | D | 03-May-2024 | 1,006 | 31 | 17 |
| RegionInfo.cpp | D | 03-May-2024 | 6.4 KiB | 217 | 137 |
| RegionPass.cpp | D | 03-May-2024 | 9.1 KiB | 295 | 174 |
| RegionPrinter.cpp | D | 03-May-2024 | 8.6 KiB | 268 | 197 |
| ScalarEvolution.cpp | D | 03-May-2024 | 465.1 KiB | 12,294 | 8,183 |
| ScalarEvolutionAliasAnalysis.cpp | D | 03-May-2024 | 5.6 KiB | 144 | 73 |
| ScalarEvolutionExpander.cpp | D | 03-May-2024 | 91.6 KiB | 2,345 | 1,553 |
| ScalarEvolutionNormalization.cpp | D | 03-May-2024 | 4.6 KiB | 119 | 57 |
| ScopedNoAliasAA.cpp | D | 03-May-2024 | 7.2 KiB | 212 | 124 |
| StratifiedSets.h | D | 03-May-2024 | 18.6 KiB | 598 | 357 |
| SyntheticCountsUtils.cpp | D | 03-May-2024 | 4.1 KiB | 114 | 63 |
| TargetLibraryInfo.cpp | D | 03-May-2024 | 58 KiB | 1,664 | 1,374 |
| TargetTransformInfo.cpp | D | 03-May-2024 | 42.4 KiB | 1,196 | 929 |
| Trace.cpp | D | 03-May-2024 | 1.8 KiB | 55 | 29 |
| TypeBasedAliasAnalysis.cpp | D | 03-May-2024 | 25.7 KiB | 741 | 431 |
| TypeMetadataUtils.cpp | D | 03-May-2024 | 4.2 KiB | 119 | 87 |
| ValueLattice.cpp | D | 03-May-2024 | 932 | 27 | 15 |
| ValueLatticeUtils.cpp | D | 03-May-2024 | 1.5 KiB | 45 | 27 |
| ValueTracking.cpp | D | 03-May-2024 | 194.8 KiB | 5,136 | 3,419 |
| VectorUtils.cpp | D | 03-May-2024 | 19.5 KiB | 578 | 391 |
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