HomeSort by relevance Sort by last modified time
    Searched refs:ScalarEvolution (Results 1 - 25 of 30) sorted by null

1 2

  /external/llvm/include/llvm/Transforms/Utils/
SimplifyIndVar.h 12 // simplify a loop's induction variables based on ScalarEvolution.
29 class ScalarEvolution;
41 /// by using ScalarEvolution to analyze the IV's recurrence.
42 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, LPPassManager *LPM,
47 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, LPPassManager *LPM,
  /external/llvm/include/llvm/Analysis/
ScalarEvolutionNormalization.h 10 // This file defines utilities for working with "normalized" ScalarEvolution
46 class ScalarEvolution;
73 ScalarEvolution &SE,
ScalarEvolutionExpressions.h 18 #include "llvm/Analysis/ScalarEvolution.h"
38 friend class ScalarEvolution;
82 friend class ScalarEvolution;
99 friend class ScalarEvolution;
116 friend class ScalarEvolution;
135 // Since SCEVs are immutable, ScalarEvolution allocates operand
203 friend class ScalarEvolution;
228 friend class ScalarEvolution;
247 friend class ScalarEvolution;
260 // crazy cases one or the other may be a pointer. ScalarEvolution doesn'
    [all...]
IVUsers.h 27 class ScalarEvolution;
124 ScalarEvolution *SE;
ScalarEvolution.h 1 //===- llvm/Analysis/ScalarEvolution.h - Scalar Evolution -------*- C++ -*-===//
10 // The ScalarEvolution class is an LLVM pass which can be used to analyze and
42 class ScalarEvolution;
61 /// The ScalarEvolution's BumpPtrAllocator holds the data.
168 /// ScalarEvolution - This class is the main scalar evolution driver. Because
172 class ScalarEvolution : public FunctionPass {
191 /// visible in the ScalarEvolution name space.
205 /// SCEVCallbackVH - A CallbackVH to arrange for ScalarEvolution to be
208 ScalarEvolution *SE;
212 SCEVCallbackVH(Value *V, ScalarEvolution *SE = 0)
    [all...]
DependenceAnalysis.h 51 class ScalarEvolution;
304 ScalarEvolution *SE;
353 ScalarEvolution *SE;
417 void setAny(ScalarEvolution *SE);
    [all...]
ScalarEvolutionExpander.h 38 ScalarEvolution &SE;
94 explicit SCEVExpander(ScalarEvolution &se, const char *name)
  /external/llvm/lib/Transforms/Scalar/
LoopUnrollPass.cpp 19 #include "llvm/Analysis/ScalarEvolution.h"
92 AU.addRequired<ScalarEvolution>();
93 AU.addPreserved<ScalarEvolution>();
110 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
140 ScalarEvolution *SE = &getAnalysis<ScalarEvolution>();
LoopDeletion.cpp 23 #include "llvm/Analysis/ScalarEvolution.h"
46 AU.addRequired<ScalarEvolution>();
50 AU.addPreserved<ScalarEvolution>();
64 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
166 ScalarEvolution& SE = getAnalysis<ScalarEvolution>();
179 // Tell ScalarEvolution that the loop is deleted. Do this before
180 // deleting the loop so that ScalarEvolution can look at the loop
LoopIdiomRecognize.cpp 136 ScalarEvolution *SE;
175 AU.addRequired<ScalarEvolution>();
176 AU.addPreserved<ScalarEvolution>();
191 ScalarEvolution *getScalarEvolution() {
192 return SE ? SE : (SE = &getAnalysis<ScalarEvolution>());
218 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
231 static void deleteDeadInstruction(Instruction *I, ScalarEvolution &SE,
264 static void deleteIfDeadInstruction(Value *V, ScalarEvolution &SE,
498 ScalarEvolution *SE = LIR.getScalarEvolution();
720 SE = &getAnalysis<ScalarEvolution>();
    [all...]
IndVarSimplify.cpp 64 cl::desc("Verify the ScalarEvolution result after running indvars"));
69 ScalarEvolution *SE;
89 AU.addRequired<ScalarEvolution>();
92 AU.addPreserved<ScalarEvolution>();
124 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
455 // If the loop previously had floating-point IV, ScalarEvolution
507 // It's necessary to tell ScalarEvolution about this explicitly so that
599 ScalarEvolution *SE;
605 WideIVVisitor(PHINode *NarrowIV, ScalarEvolution *SCEV,
671 ScalarEvolution *SE
    [all...]
LoopRotation.cpp 20 #include "llvm/Analysis/ScalarEvolution.h"
54 AU.addPreserved<ScalarEvolution>();
304 // Anything ScalarEvolution may know about this loop or the PHI nodes
306 if (ScalarEvolution *SE = getAnalysisIfAvailable<ScalarEvolution>())
LoopStrengthReduce.cpp 256 void InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE);
277 ScalarEvolution &SE) {
332 void Formula::InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE) {
438 static bool isAddRecSExtable(const SCEVAddRecExpr *AR, ScalarEvolution &SE) {
446 static bool isAddSExtable(const SCEVAddExpr *A, ScalarEvolution &SE) {
454 static bool isMulSExtable(const SCEVMulExpr *M, ScalarEvolution &SE) {
468 ScalarEvolution &SE,
478 // Handle x /s -1 as x * -1, to give ScalarEvolution a chance to do
559 static int64_t ExtractImmediate(const SCEV *&S, ScalarEvolution &SE) {
586 static GlobalValue *ExtractSymbol(const SCEV *&S, ScalarEvolution &SE)
    [all...]
  /external/llvm/lib/Analysis/
ScalarEvolutionAliasAnalysis.cpp 11 // simple alias analysis implemented in terms of ScalarEvolution queries.
17 // ScalarEvolution has a more complete understanding of pointer arithmetic
30 /// implementation that uses ScalarEvolution to answer queries.
33 ScalarEvolution *SE;
64 "ScalarEvolution-based Alias Analysis", false, true, false)
65 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
67 "ScalarEvolution-based Alias Analysis", false, true, false)
75 AU.addRequiredTransitive<ScalarEvolution>();
83 SE = &getAnalysis<ScalarEvolution>();
157 // If ScalarEvolution can find an underlying object, form a new query
    [all...]
ScalarEvolution.cpp 1 //===- ScalarEvolution.cpp - Scalar Evolution Analysis ----------*- C++ -*-===//
62 #include "llvm/Analysis/ScalarEvolution.h"
112 cl::desc("Verify ScalarEvolution's backedge taken counts (slow)"));
114 INITIALIZE_PASS_BEGIN(ScalarEvolution, "scalar-evolution",
119 INITIALIZE_PASS_END(ScalarEvolution, "scalar-evolution",
121 char ScalarEvolution::ID = 0;
314 const SCEV *ScalarEvolution::getConstant(ConstantInt *V) {
325 const SCEV *ScalarEvolution::getConstant(const APInt& Val) {
330 ScalarEvolution::getConstant(Type *Ty, uint64_t V, bool isSigned) {
681 ScalarEvolution &SE
    [all...]
Android.mk 54 ScalarEvolution.cpp \
IVUsers.cpp 38 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
50 ScalarEvolution *SE, LoopInfo *LI) {
228 AU.addRequired<ScalarEvolution>();
237 SE = &getAnalysis<ScalarEvolution>();
ScalarEvolutionNormalization.cpp 70 ScalarEvolution &SE;
77 ScalarEvolution &se, DominatorTree &dt):
130 // This assert is conceptually correct, but ScalarEvolution currently
219 ScalarEvolution &SE,
  /external/llvm/lib/Transforms/Utils/
SimplifyIndVar.cpp 12 // simplify a loop's induction variables based on ScalarEvolution.
40 /// based on ScalarEvolution. It is the primary instrument of the
46 ScalarEvolution *SE;
54 SimplifyIndvar(Loop *Loop, ScalarEvolution *SE, LPPassManager *LPM,
292 static bool isSimpleIVUser(Instruction *I, const Loop *L, ScalarEvolution *SE) {
372 /// by using ScalarEvolution to analyze the IV's recurrence.
373 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, LPPassManager *LPM,
384 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, LPPassManager *LPM,
LoopUnroll.cpp 25 #include "llvm/Analysis/ScalarEvolution.h"
97 // ScalarEvolution holds references to loop exit blocks.
99 if (ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>()) {
137 /// This utility preserves LoopInfo. If DominatorTree or ScalarEvolution are
207 // Notify ScalarEvolution that the loop will be substantially changed,
210 ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>();
419 ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>();
    [all...]
LCSSA.cpp 36 #include "llvm/Analysis/ScalarEvolution.h"
57 ScalarEvolution *SE;
74 AU.addPreserved<ScalarEvolution>();
123 SE = getAnalysisIfAvailable<ScalarEvolution>();
LoopUnrollRuntime.cpp 29 #include "llvm/Analysis/ScalarEvolution.h"
242 ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>();
LoopSimplify.cpp 51 #include "llvm/Analysis/ScalarEvolution.h"
79 ScalarEvolution *SE;
92 AU.addPreserved<ScalarEvolution>();
134 SE = getAnalysisIfAvailable<ScalarEvolution>();
337 // ScalarEvolution. Currently assume the parent loop doesn't change
574 // If ScalarEvolution is around and knows anything about values in
  /external/llvm/include/llvm/
LinkAllPasses.h 28 #include "llvm/Analysis/ScalarEvolution.h"
168 (void)new llvm::ScalarEvolution();
  /external/llvm/unittests/Analysis/
ScalarEvolutionTest.cpp 1 //===- ScalarEvolutionsTest.cpp - ScalarEvolution unit tests --------------===//
23 // We use this fixture to ensure that we clean up ScalarEvolution before
27 ScalarEvolutionsTest() : M("", Context), SE(*new ScalarEvolution) {}
36 ScalarEvolution &SE;
52 // Create a ScalarEvolution and "run" it so that it gets initialized.
99 // Create a ScalarEvolution and "run" it so that it gets initialized.

Completed in 254 milliseconds

1 2