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

1 2

  /external/llvm/include/llvm/Transforms/Utils/
SimplifyIndVar.h 12 // simplify a loop's induction variables based on ScalarEvolution.
28 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,
53 bool simplifyIVUsers(IVUsers *IU, 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 17 #include "llvm/Analysis/ScalarEvolution.h"
37 friend class ScalarEvolution;
83 friend class ScalarEvolution;
101 friend class ScalarEvolution;
119 friend class ScalarEvolution;
139 // Since SCEVs are immutable, ScalarEvolution allocates operand
209 friend class ScalarEvolution;
235 friend class ScalarEvolution;
255 friend class ScalarEvolution;
268 // crazy cases one or the other may be a pointer. ScalarEvolution doesn'
    [all...]
LoopDependenceAnalysis.h 33 class ScalarEvolution;
40 ScalarEvolution *SE;
IVUsers.h 28 class ScalarEvolution;
125 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;
60 /// The ScalarEvolution's BumpPtrAllocator holds the data.
164 /// ScalarEvolution - This class is the main scalar evolution driver. Because
168 class ScalarEvolution : public FunctionPass {
187 /// visible in the ScalarEvolution name space.
201 /// SCEVCallbackVH - A CallbackVH to arrange for ScalarEvolution to be
204 ScalarEvolution *SE;
208 SCEVCallbackVH(Value *V, ScalarEvolution *SE = 0)
    [all...]
ScalarEvolutionExpander.h 32 ScalarEvolution &SE;
83 explicit SCEVExpander(ScalarEvolution &se, const char *name)
  /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++ -*-===//
107 INITIALIZE_PASS_BEGIN(ScalarEvolution, "scalar-evolution",
111 INITIALIZE_PASS_END(ScalarEvolution, "scalar-evolution",
113 char ScalarEvolution::ID = 0;
284 const SCEV *ScalarEvolution::getConstant(ConstantInt *V) {
295 const SCEV *ScalarEvolution::getConstant(const APInt& Val) {
300 ScalarEvolution::getConstant(Type *Ty, uint64_t V, bool isSigned) {
654 ScalarEvolution &SE,
773 ScalarEvolution &SE) const {
792 const SCEV *ScalarEvolution::getTruncateExpr(const SCEV *Op
    [all...]
IVUsers.cpp 37 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
49 ScalarEvolution *SE, LoopInfo *LI) {
169 AU.addRequired<ScalarEvolution>();
178 SE = &getAnalysis<ScalarEvolution>();
Android.mk 53 ScalarEvolution.cpp \
LoopDependenceAnalysis.cpp 28 #include "llvm/Analysis/ScalarEvolution.h"
53 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
107 static inline const SCEV *GetZeroSCEV(ScalarEvolution *SE) {
319 SE = &getAnalysis<ScalarEvolution>();
331 AU.addRequiredTransitive<ScalarEvolution>();
ScalarEvolutionNormalization.cpp 70 ScalarEvolution &SE;
77 ScalarEvolution &se, DominatorTree &dt):
131 // This assert is conceptually correct, but ScalarEvolution currently
221 ScalarEvolution &SE,
  /external/llvm/lib/Transforms/Scalar/
LoopUnrollPass.cpp 20 #include "llvm/Analysis/ScalarEvolution.h"
46 cl::desc("Use ScalarEvolution to analyze loop trip counts for unrolling"));
88 AU.addRequired<ScalarEvolution>();
89 AU.addPreserved<ScalarEvolution>();
131 ScalarEvolution *SE = &getAnalysis<ScalarEvolution>();
LoopDeletion.cpp 21 #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
LoopRotation.cpp 21 #include "llvm/Analysis/ScalarEvolution.h"
51 AU.addPreserved<ScalarEvolution>();
193 // Anything ScalarEvolution may know about this loop or the PHI nodes
195 if (ScalarEvolution *SE = getAnalysisIfAvailable<ScalarEvolution>())
LoopIdiomRecognize.cpp 70 ScalarEvolution *SE;
107 AU.addRequired<ScalarEvolution>();
108 AU.addPreserved<ScalarEvolution>();
123 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
135 static void deleteDeadInstruction(Instruction *I, ScalarEvolution &SE) {
167 static void deleteIfDeadInstruction(Value *V, ScalarEvolution &SE) {
182 SE = &getAnalysis<ScalarEvolution>();
IndVarSimplify.cpp 71 cl::desc("Verify the ScalarEvolution result after running indvars"));
78 ScalarEvolution *SE;
97 AU.addRequired<ScalarEvolution>();
102 AU.addPreserved<ScalarEvolution>();
138 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
472 // If the loop previously had floating-point IV, ScalarEvolution
524 // It's necessary to tell ScalarEvolution about this explicitly so that
608 static bool isSafe(const SCEV *S, const Loop *L, ScalarEvolution *SE) {
692 // Inform ScalarEvolution that this value is changing. The change doesn't
694 // value will be on after the replacement, which affects ScalarEvolution'
    [all...]
LoopStrengthReduce.cpp 234 void InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE);
255 ScalarEvolution &SE) {
310 void Formula::InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE) {
414 static bool isAddRecSExtable(const SCEVAddRecExpr *AR, ScalarEvolution &SE) {
422 static bool isAddSExtable(const SCEVAddExpr *A, ScalarEvolution &SE) {
430 static bool isMulSExtable(const SCEVMulExpr *M, ScalarEvolution &SE) {
444 ScalarEvolution &SE,
454 // Handle x /s -1 as x * -1, to give ScalarEvolution a chance to do
535 static int64_t ExtractImmediate(const SCEV *&S, ScalarEvolution &SE) {
562 static GlobalValue *ExtractSymbol(const SCEV *&S, ScalarEvolution &SE)
    [all...]
  /external/llvm/lib/Transforms/Utils/
SimplifyIndVar.cpp 12 // simplify a loop's induction variables based on ScalarEvolution.
41 /// based on ScalarEvolution. It is the primary instrument of the
48 ScalarEvolution *SE;
57 SimplifyIndvar(Loop *Loop, ScalarEvolution *SE, LPPassManager *LPM,
301 static bool isSimpleIVUser(Instruction *I, const Loop *L, ScalarEvolution *SE) {
379 /// by using ScalarEvolution to analyze the IV's recurrence.
380 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, LPPassManager *LPM,
391 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, LPPassManager *LPM,
405 bool simplifyIVUsers(IVUsers *IU, ScalarEvolution *SE, LPPassManager *LPM,
LoopUnroll.cpp 26 #include "llvm/Analysis/ScalarEvolution.h"
97 // ScalarEvolution holds references to loop exit blocks.
98 if (ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>()) {
135 /// This utility preserves LoopInfo. If DominatorTree or ScalarEvolution are
168 // Notify ScalarEvolution that the loop will be substantially changed,
170 ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>();
LoopSimplify.cpp 52 #include "llvm/Analysis/ScalarEvolution.h"
78 ScalarEvolution *SE;
91 AU.addPreserved<ScalarEvolution>();
131 SE = getAnalysisIfAvailable<ScalarEvolution>();
329 // ScalarEvolution. Currently assume the parent loop doesn't change
552 // If ScalarEvolution is around and knows anything about values in
LCSSA.cpp 38 #include "llvm/Analysis/ScalarEvolution.h"
72 AU.addPreserved<ScalarEvolution>();
  /external/llvm/include/llvm/
LinkAllPasses.h 26 #include "llvm/Analysis/ScalarEvolution.h"
156 (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 812 milliseconds

1 2