|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | - | - |
| models/inliner/ | | 03-May-2024 | - | 32,653 | 32,649 |
| AliasAnalysis.cpp | D | 03-May-2024 | 34.1 KiB | 944 | 627 |
| AliasAnalysisEvaluator.cpp | D | 03-May-2024 | 15.7 KiB | 436 | 382 |
| AliasAnalysisSummary.cpp | D | 03-May-2024 | 3.5 KiB | 105 | 82 |
| AliasAnalysisSummary.h | D | 03-May-2024 | 10.2 KiB | 269 | 149 |
| AliasSetTracker.cpp | D | 03-May-2024 | 26.3 KiB | 786 | 560 |
| Analysis.cpp | D | 03-May-2024 | 5.4 KiB | 140 | 114 |
| AssumeBundleQueries.cpp | D | 03-May-2024 | 8.3 KiB | 217 | 191 |
| AssumptionCache.cpp | D | 03-May-2024 | 10.9 KiB | 327 | 230 |
| BasicAliasAnalysis.cpp | D | 03-May-2024 | 75.6 KiB | 1,882 | 1,079 |
| BlockFrequencyInfo.cpp | D | 03-May-2024 | 12.4 KiB | 349 | 265 |
| BlockFrequencyInfoImpl.cpp | D | 03-May-2024 | 28.6 KiB | 867 | 597 |
| BranchProbabilityInfo.cpp | D | 03-May-2024 | 47.7 KiB | 1,311 | 908 |
| CFG.cpp | D | 03-May-2024 | 10.2 KiB | 285 | 181 |
| CFGPrinter.cpp | D | 03-May-2024 | 11.2 KiB | 300 | 222 |
| CFLAndersAliasAnalysis.cpp | D | 03-May-2024 | 33 KiB | 932 | 635 |
| CFLGraph.h | D | 03-May-2024 | 21.2 KiB | 661 | 468 |
| CFLSteensAliasAnalysis.cpp | D | 03-May-2024 | 13.2 KiB | 365 | 234 |
| CGSCCPassManager.cpp | D | 03-May-2024 | 50.6 KiB | 1,250 | 726 |
| CMakeLists.txt | D | 03-May-2024 | 3.1 KiB | 146 | 139 |
| CallGraph.cpp | D | 03-May-2024 | 13.8 KiB | 404 | 274 |
| CallGraphSCCPass.cpp | D | 03-May-2024 | 26.8 KiB | 763 | 485 |
| CallPrinter.cpp | D | 03-May-2024 | 9.5 KiB | 309 | 226 |
| CaptureTracking.cpp | D | 03-May-2024 | 17.4 KiB | 455 | 265 |
| CmpInstAnalysis.cpp | D | 03-May-2024 | 4.6 KiB | 144 | 111 |
| CodeMetrics.cpp | D | 03-May-2024 | 7 KiB | 195 | 113 |
| ConstantFolding.cpp | D | 03-May-2024 | 110.7 KiB | 3,127 | 2,430 |
| ConstraintSystem.cpp | D | 03-May-2024 | 5 KiB | 159 | 113 |
| CostModel.cpp | D | 03-May-2024 | 4 KiB | 116 | 74 |
| DDG.cpp | D | 03-May-2024 | 11.3 KiB | 326 | 232 |
| Delinearization.cpp | D | 03-May-2024 | 5.1 KiB | 147 | 106 |
| DemandedBits.cpp | D | 03-May-2024 | 20.2 KiB | 593 | 414 |
| DependenceAnalysis.cpp | D | 03-May-2024 | 150.9 KiB | 4,083 | 2,817 |
| DependenceGraphBuilder.cpp | D | 03-May-2024 | 19.2 KiB | 512 | 340 |
| DevelopmentModeInlineAdvisor.cpp | D | 03-May-2024 | 19.6 KiB | 538 | 454 |
| DivergenceAnalysis.cpp | D | 03-May-2024 | 13.5 KiB | 394 | 238 |
| DomPrinter.cpp | D | 03-May-2024 | 9.7 KiB | 299 | 229 |
| DomTreeUpdater.cpp | D | 03-May-2024 | 15.2 KiB | 533 | 381 |
| DominanceFrontier.cpp | D | 03-May-2024 | 3.2 KiB | 98 | 68 |
| EHPersonalities.cpp | D | 03-May-2024 | 6 KiB | 140 | 102 |
| FunctionPropertiesAnalysis.cpp | D | 03-May-2024 | 3.1 KiB | 88 | 63 |
| GlobalsModRef.cpp | D | 03-May-2024 | 41 KiB | 1,046 | 658 |
| GuardUtils.cpp | D | 03-May-2024 | 3.3 KiB | 107 | 76 |
| HeatUtils.cpp | D | 03-May-2024 | 2.9 KiB | 79 | 57 |
| IRSimilarityIdentifier.cpp | D | 03-May-2024 | 26.3 KiB | 698 | 405 |
| IVDescriptors.cpp | D | 03-May-2024 | 46 KiB | 1,218 | 770 |
| IVUsers.cpp | D | 03-May-2024 | 16.1 KiB | 428 | 274 |
| IndirectCallPromotionAnalysis.cpp | D | 03-May-2024 | 4.3 KiB | 105 | 69 |
| InlineAdvisor.cpp | D | 03-May-2024 | 17.7 KiB | 478 | 356 |
| InlineCost.cpp | D | 03-May-2024 | 100.1 KiB | 2,616 | 1,585 |
| InlineSizeEstimatorAnalysis.cpp | D | 03-May-2024 | 10.4 KiB | 284 | 223 |
| InstCount.cpp | D | 03-May-2024 | 3.1 KiB | 95 | 65 |
| InstructionPrecedenceTracking.cpp | D | 03-May-2024 | 4.8 KiB | 139 | 91 |
| InstructionSimplify.cpp | D | 03-May-2024 | 222.8 KiB | 5,955 | 3,919 |
| Interval.cpp | D | 03-May-2024 | 1.8 KiB | 52 | 24 |
| IntervalPartition.cpp | D | 03-May-2024 | 4.5 KiB | 119 | 59 |
| LazyBlockFrequencyInfo.cpp | D | 03-May-2024 | 2.8 KiB | 73 | 43 |
| LazyBranchProbabilityInfo.cpp | D | 03-May-2024 | 3 KiB | 76 | 46 |
| LazyCallGraph.cpp | D | 03-May-2024 | 66.7 KiB | 1,836 | 1,139 |
| LazyValueInfo.cpp | D | 03-May-2024 | 76.3 KiB | 1,957 | 1,301 |
| LegacyDivergenceAnalysis.cpp | D | 03-May-2024 | 14.8 KiB | 409 | 242 |
| Lint.cpp | D | 03-May-2024 | 30.1 KiB | 784 | 584 |
| Loads.cpp | D | 03-May-2024 | 23.5 KiB | 565 | 329 |
| LoopAccessAnalysis.cpp | D | 03-May-2024 | 87.8 KiB | 2,332 | 1,445 |
| LoopAnalysisManager.cpp | D | 03-May-2024 | 6.6 KiB | 154 | 83 |
| LoopCacheAnalysis.cpp | D | 03-May-2024 | 23.7 KiB | 668 | 475 |
| LoopInfo.cpp | D | 03-May-2024 | 37.8 KiB | 1,136 | 766 |
| LoopNestAnalysis.cpp | D | 03-May-2024 | 12.5 KiB | 337 | 221 |
| LoopPass.cpp | D | 03-May-2024 | 13.3 KiB | 399 | 248 |
| LoopUnrollAnalyzer.cpp | D | 03-May-2024 | 7.3 KiB | 216 | 136 |
| MLInlineAdvisor.cpp | D | 03-May-2024 | 11.4 KiB | 303 | 225 |
| MemDepPrinter.cpp | D | 03-May-2024 | 5.1 KiB | 168 | 127 |
| MemDerefPrinter.cpp | D | 03-May-2024 | 3.5 KiB | 113 | 93 |
| MemoryBuiltins.cpp | D | 03-May-2024 | 41.1 KiB | 1,078 | 771 |
| MemoryDependenceAnalysis.cpp | D | 03-May-2024 | 70.8 KiB | 1,816 | 1,094 |
| MemoryLocation.cpp | D | 03-May-2024 | 9.8 KiB | 276 | 219 |
| MemorySSA.cpp | D | 03-May-2024 | 94.4 KiB | 2,584 | 1,741 |
| MemorySSAUpdater.cpp | D | 03-May-2024 | 58.8 KiB | 1,469 | 1,022 |
| ModuleDebugInfoPrinter.cpp | D | 03-May-2024 | 4.7 KiB | 149 | 113 |
| ModuleSummaryAnalysis.cpp | D | 03-May-2024 | 38.1 KiB | 934 | 693 |
| MustExecute.cpp | D | 03-May-2024 | 32.7 KiB | 881 | 610 |
| ObjCARCAliasAnalysis.cpp | D | 03-May-2024 | 5.9 KiB | 168 | 102 |
| ObjCARCAnalysisUtils.cpp | D | 03-May-2024 | 1.7 KiB | 46 | 20 |
| ObjCARCInstKind.cpp | D | 03-May-2024 | 23.2 KiB | 706 | 597 |
| OptimizationRemarkEmitter.cpp | D | 03-May-2024 | 5.2 KiB | 158 | 109 |
| PHITransAddr.cpp | D | 03-May-2024 | 16.1 KiB | 440 | 273 |
| PhiValues.cpp | D | 03-May-2024 | 8.4 KiB | 227 | 150 |
| PostDominators.cpp | D | 03-May-2024 | 3.6 KiB | 114 | 71 |
| ProfileSummaryInfo.cpp | D | 03-May-2024 | 18.1 KiB | 462 | 350 |
| PtrUseVisitor.cpp | D | 03-May-2024 | 1.3 KiB | 45 | 26 |
| README.txt | D | 03-May-2024 | 1,006 | 31 | 17 |
| RegionInfo.cpp | D | 03-May-2024 | 6.4 KiB | 214 | 135 |
| RegionPass.cpp | D | 03-May-2024 | 9 KiB | 294 | 178 |
| RegionPrinter.cpp | D | 03-May-2024 | 8.6 KiB | 268 | 198 |
| ReleaseModeModelRunner.cpp | D | 03-May-2024 | 2.9 KiB | 91 | 58 |
| ReplayInlineAdvisor.cpp | D | 03-May-2024 | 2.3 KiB | 61 | 36 |
| ScalarEvolution.cpp | D | 03-May-2024 | 509.6 KiB | 13,317 | 8,895 |
| ScalarEvolutionAliasAnalysis.cpp | D | 03-May-2024 | 6 KiB | 151 | 81 |
| ScalarEvolutionDivision.cpp | D | 03-May-2024 | 7.4 KiB | 258 | 182 |
| ScalarEvolutionNormalization.cpp | D | 03-May-2024 | 4.6 KiB | 118 | 57 |
| ScopedNoAliasAA.cpp | D | 03-May-2024 | 6.7 KiB | 187 | 111 |
| StackLifetime.cpp | D | 03-May-2024 | 13.2 KiB | 403 | 317 |
| StackSafetyAnalysis.cpp | D | 03-May-2024 | 36 KiB | 1,096 | 881 |
| StratifiedSets.h | D | 03-May-2024 | 18.7 KiB | 597 | 357 |
| SyncDependenceAnalysis.cpp | D | 03-May-2024 | 15.5 KiB | 464 | 249 |
| SyntheticCountsUtils.cpp | D | 03-May-2024 | 3.8 KiB | 104 | 54 |
| TFUtils.cpp | D | 03-May-2024 | 17.6 KiB | 506 | 400 |
| TargetLibraryInfo.cpp | D | 03-May-2024 | 59.7 KiB | 1,687 | 1,402 |
| TargetTransformInfo.cpp | D | 03-May-2024 | 52.2 KiB | 1,449 | 1,116 |
| Trace.cpp | D | 03-May-2024 | 1.8 KiB | 54 | 29 |
| TypeBasedAliasAnalysis.cpp | D | 03-May-2024 | 26 KiB | 739 | 432 |
| TypeMetadataUtils.cpp | D | 03-May-2024 | 5.9 KiB | 163 | 120 |
| VFABIDemangling.cpp | D | 03-May-2024 | 16.5 KiB | 483 | 269 |
| ValueLattice.cpp | D | 03-May-2024 | 1.2 KiB | 34 | 21 |
| ValueLatticeUtils.cpp | D | 03-May-2024 | 1.5 KiB | 42 | 22 |
| ValueTracking.cpp | D | 03-May-2024 | 250.6 KiB | 6,778 | 4,797 |
| VectorUtils.cpp | D | 03-May-2024 | 49.7 KiB | 1,379 | 911 |
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