|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | - | - |
| AliasAnalysis.cpp | D | 23-Nov-2023 | 25.7 KiB | 708 | 451 |
| AliasAnalysisEvaluator.cpp | D | 23-Nov-2023 | 13.3 KiB | 390 | 334 |
| AliasAnalysisSummary.cpp | D | 23-Nov-2023 | 3.6 KiB | 106 | 82 |
| AliasAnalysisSummary.h | D | 23-Nov-2023 | 7.7 KiB | 192 | 81 |
| AliasSetTracker.cpp | D | 23-Nov-2023 | 23 KiB | 719 | 505 |
| Analysis.cpp | D | 23-Nov-2023 | 4.6 KiB | 129 | 102 |
| Android.bp | D | 23-Nov-2023 | 453 | 17 | 15 |
| AssumptionCache.cpp | D | 23-Nov-2023 | 4.9 KiB | 141 | 90 |
| BasicAliasAnalysis.cpp | D | 23-Nov-2023 | 69.2 KiB | 1,725 | 944 |
| BlockFrequencyInfo.cpp | D | 23-Nov-2023 | 9.1 KiB | 268 | 202 |
| BlockFrequencyInfoImpl.cpp | D | 23-Nov-2023 | 26.1 KiB | 796 | 533 |
| BranchProbabilityInfo.cpp | D | 23-Nov-2023 | 23.9 KiB | 711 | 468 |
| CFG.cpp | D | 23-Nov-2023 | 8.4 KiB | 237 | 147 |
| CFGPrinter.cpp | D | 23-Nov-2023 | 4.9 KiB | 166 | 108 |
| CFLAndersAliasAnalysis.cpp | D | 23-Nov-2023 | 2.2 KiB | 61 | 24 |
| CFLGraph.h | D | 23-Nov-2023 | 17.5 KiB | 534 | 357 |
| CFLSteensAliasAnalysis.cpp | D | 23-Nov-2023 | 16.2 KiB | 443 | 285 |
| CGSCCPassManager.cpp | D | 23-Nov-2023 | 986 | 25 | 12 |
| CMakeLists.txt | D | 23-Nov-2023 | 1.9 KiB | 87 | 84 |
| CallGraph.cpp | D | 23-Nov-2023 | 11.3 KiB | 338 | 220 |
| CallGraphSCCPass.cpp | D | 23-Nov-2023 | 23.2 KiB | 645 | 383 |
| CallPrinter.cpp | D | 23-Nov-2023 | 3 KiB | 93 | 54 |
| CaptureTracking.cpp | D | 23-Nov-2023 | 13.6 KiB | 360 | 202 |
| CodeMetrics.cpp | D | 23-Nov-2023 | 6.3 KiB | 187 | 108 |
| ConstantFolding.cpp | D | 23-Nov-2023 | 71.2 KiB | 1,929 | 1,421 |
| CostModel.cpp | D | 23-Nov-2023 | 17.6 KiB | 537 | 374 |
| Delinearization.cpp | D | 23-Nov-2023 | 4.8 KiB | 141 | 100 |
| DemandedBits.cpp | D | 23-Nov-2023 | 13.9 KiB | 404 | 285 |
| DependenceAnalysis.cpp | D | 23-Nov-2023 | 143.8 KiB | 3,947 | 2,725 |
| DivergenceAnalysis.cpp | D | 23-Nov-2023 | 12 KiB | 331 | 181 |
| DomPrinter.cpp | D | 23-Nov-2023 | 9.2 KiB | 283 | 214 |
| DominanceFrontier.cpp | D | 23-Nov-2023 | 2.4 KiB | 78 | 53 |
| EHPersonalities.cpp | D | 23-Nov-2023 | 4.6 KiB | 110 | 74 |
| GlobalsModRef.cpp | D | 23-Nov-2023 | 38.3 KiB | 981 | 613 |
| IVUsers.cpp | D | 23-Nov-2023 | 13.5 KiB | 371 | 247 |
| IndirectCallPromotionAnalysis.cpp | D | 23-Nov-2023 | 4.1 KiB | 110 | 72 |
| InlineCost.cpp | D | 23-Nov-2023 | 57.6 KiB | 1,554 | 932 |
| InstCount.cpp | D | 23-Nov-2023 | 2.7 KiB | 89 | 56 |
| InstructionSimplify.cpp | D | 23-Nov-2023 | 163.7 KiB | 4,326 | 2,990 |
| Interval.cpp | D | 23-Nov-2023 | 1.8 KiB | 56 | 25 |
| IntervalPartition.cpp | D | 23-Nov-2023 | 4.2 KiB | 114 | 50 |
| IteratedDominanceFrontier.cpp | D | 23-Nov-2023 | 3.5 KiB | 105 | 65 |
| LLVMBuild.txt | D | 23-Nov-2023 | 716 | 23 | 21 |
| LazyBlockFrequencyInfo.cpp | D | 23-Nov-2023 | 2.5 KiB | 69 | 41 |
| LazyCallGraph.cpp | D | 23-Nov-2023 | 58.6 KiB | 1,591 | 1,003 |
| LazyValueInfo.cpp | D | 23-Nov-2023 | 60.7 KiB | 1,717 | 1,164 |
| Lint.cpp | D | 23-Nov-2023 | 27.5 KiB | 720 | 522 |
| Loads.cpp | D | 23-Nov-2023 | 15.7 KiB | 421 | 239 |
| LoopAccessAnalysis.cpp | D | 23-Nov-2023 | 76.6 KiB | 2,061 | 1,305 |
| LoopInfo.cpp | D | 23-Nov-2023 | 24.1 KiB | 730 | 479 |
| LoopPass.cpp | D | 23-Nov-2023 | 11.4 KiB | 358 | 215 |
| LoopPassManager.cpp | D | 23-Nov-2023 | 1.3 KiB | 40 | 24 |
| LoopUnrollAnalyzer.cpp | D | 23-Nov-2023 | 7 KiB | 211 | 132 |
| MemDepPrinter.cpp | D | 23-Nov-2023 | 5 KiB | 167 | 126 |
| MemDerefPrinter.cpp | D | 23-Nov-2023 | 2.5 KiB | 79 | 63 |
| MemoryBuiltins.cpp | D | 23-Nov-2023 | 31.5 KiB | 857 | 594 |
| MemoryDependenceAnalysis.cpp | D | 23-Nov-2023 | 66.6 KiB | 1,709 | 1,003 |
| MemoryLocation.cpp | D | 23-Nov-2023 | 5.5 KiB | 159 | 112 |
| ModuleDebugInfoPrinter.cpp | D | 23-Nov-2023 | 3.9 KiB | 127 | 94 |
| ModuleSummaryAnalysis.cpp | D | 23-Nov-2023 | 8.4 KiB | 230 | 154 |
| ObjCARCAliasAnalysis.cpp | D | 23-Nov-2023 | 5.6 KiB | 163 | 97 |
| ObjCARCAnalysisUtils.cpp | D | 23-Nov-2023 | 1.1 KiB | 29 | 10 |
| ObjCARCInstKind.cpp | D | 23-Nov-2023 | 23.8 KiB | 690 | 570 |
| OrderedBasicBlock.cpp | D | 23-Nov-2023 | 3.5 KiB | 86 | 40 |
| PHITransAddr.cpp | D | 23-Nov-2023 | 16.2 KiB | 444 | 276 |
| PostDominators.cpp | D | 23-Nov-2023 | 2.1 KiB | 66 | 38 |
| ProfileSummaryInfo.cpp | D | 23-Nov-2023 | 6.2 KiB | 167 | 106 |
| PtrUseVisitor.cpp | D | 23-Nov-2023 | 1 KiB | 36 | 18 |
| README.txt | D | 23-Nov-2023 | 1,006 | 31 | 17 |
| RegionInfo.cpp | D | 23-Nov-2023 | 6 KiB | 214 | 136 |
| RegionPass.cpp | D | 23-Nov-2023 | 8.6 KiB | 283 | 166 |
| RegionPrinter.cpp | D | 23-Nov-2023 | 8.6 KiB | 268 | 197 |
| ScalarEvolution.cpp | D | 23-Nov-2023 | 385.6 KiB | 10,464 | 7,052 |
| ScalarEvolutionAliasAnalysis.cpp | D | 23-Nov-2023 | 5.6 KiB | 144 | 73 |
| ScalarEvolutionExpander.cpp | D | 23-Nov-2023 | 86 KiB | 2,212 | 1,454 |
| ScalarEvolutionNormalization.cpp | D | 23-Nov-2023 | 10.1 KiB | 255 | 152 |
| ScopedNoAliasAA.cpp | D | 23-Nov-2023 | 7.1 KiB | 207 | 123 |
| SparsePropagation.cpp | D | 23-Nov-2023 | 11.8 KiB | 348 | 212 |
| StratifiedSets.h | D | 23-Nov-2023 | 19 KiB | 607 | 361 |
| TargetLibraryInfo.cpp | D | 23-Nov-2023 | 41.8 KiB | 1,173 | 981 |
| TargetTransformInfo.cpp | D | 23-Nov-2023 | 16.7 KiB | 469 | 370 |
| Trace.cpp | D | 23-Nov-2023 | 1.7 KiB | 53 | 26 |
| TypeBasedAliasAnalysis.cpp | D | 23-Nov-2023 | 20.9 KiB | 617 | 331 |
| TypeMetadataUtils.cpp | D | 23-Nov-2023 | 4.2 KiB | 119 | 87 |
| ValueTracking.cpp | D | 23-Nov-2023 | 157.8 KiB | 4,159 | 2,827 |
| VectorUtils.cpp | D | 23-Nov-2023 | 16.5 KiB | 491 | 326 |
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