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

1 2

  /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 19 #include "llvm/Analysis/ScalarEvolution.h"
39 friend class ScalarEvolution;
83 friend class ScalarEvolution;
100 friend class ScalarEvolution;
117 friend class ScalarEvolution;
136 // Since SCEVs are immutable, ScalarEvolution allocates operand
208 friend class ScalarEvolution;
233 friend class ScalarEvolution;
252 friend class ScalarEvolution;
265 // crazy cases one or the other may be a pointer. ScalarEvolution doesn'
    [all...]
LoopAccessAnalysis.h 33 class ScalarEvolution;
97 /// We use the ScalarEvolution framework to symbolically evalutate access
180 MemoryDepChecker(ScalarEvolution *Se, const Loop *L)
239 ScalarEvolution *SE;
326 void insert(ScalarEvolution *SE, Loop *Lp, Value *Ptr, bool WritePtr,
371 LoopAccessInfo(Loop *L, ScalarEvolution *SE, const DataLayout &DL,
465 ScalarEvolution *SE;
496 const SCEV *replaceSymbolicStrideSCEV(ScalarEvolution *SE,
540 ScalarEvolution *SE;
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
43 class ScalarEvolution;
62 /// The ScalarEvolution's BumpPtrAllocator holds the data.
172 /// ScalarEvolution - This class is the main scalar evolution driver. Because
176 class ScalarEvolution : public FunctionPass {
195 /// visible in the ScalarEvolution name space.
210 /// SCEVCallbackVH - A CallbackVH to arrange for ScalarEvolution to be
213 ScalarEvolution *SE;
217 SCEVCallbackVH(Value *V, ScalarEvolution *SE = nullptr)
    [all...]
ScalarEvolutionExpander.h 29 bool isSafeToExpand(const SCEV *S, ScalarEvolution &SE);
38 ScalarEvolution &SE;
94 explicit SCEVExpander(ScalarEvolution &se, const DataLayout &DL,
DependenceAnalysis.h 51 class ScalarEvolution;
335 ScalarEvolution *SE;
384 ScalarEvolution *SE;
448 void setAny(ScalarEvolution *SE);
    [all...]
  /external/llvm/include/llvm/Transforms/Utils/
SimplifyIndVar.h 12 // simplify a loop's induction variables based on ScalarEvolution.
30 class ScalarEvolution;
59 /// by using ScalarEvolution to analyze the IV's recurrence.
60 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, LPPassManager *LPM,
65 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, LPPassManager *LPM,
LoopUtils.h 32 class ScalarEvolution;
51 /// will optionally update \c AliasAnalysis and \c ScalarEvolution analyses if
54 AliasAnalysis *AA = nullptr, ScalarEvolution *SE = nullptr,
65 /// If ScalarEvolution is passed in, it will be preserved.
69 ScalarEvolution *SE = nullptr);
77 /// If ScalarEvolution is passed in, it will be preserved.
81 ScalarEvolution *SE = nullptr);
128 bool isInductionPHI(PHINode *, ScalarEvolution *, ConstantInt *&);
  /external/llvm/lib/Transforms/Scalar/
NaryReassociate.cpp 86 #include "llvm/Analysis/ScalarEvolution.h"
111 AU.addPreserved<ScalarEvolution>();
114 AU.addRequired<ScalarEvolution>();
131 ScalarEvolution *SE;
150 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
164 SE = &getAnalysis<ScalarEvolution>();
LoopDeletion.cpp 21 #include "llvm/Analysis/ScalarEvolution.h"
43 AU.addRequired<ScalarEvolution>();
47 AU.addPreserved<ScalarEvolution>();
67 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
172 ScalarEvolution &SE = getAnalysis<ScalarEvolution>();
185 // Tell ScalarEvolution that the loop is deleted. Do this before
186 // deleting the loop so that ScalarEvolution can look at the loop
AlignmentFromAssumptions.cpp 11 // This file implements a ScalarEvolution-based transformation to set
26 #include "llvm/Analysis/ScalarEvolution.h"
57 AU.addRequired<ScalarEvolution>();
63 AU.addPreserved<ScalarEvolution>();
72 ScalarEvolution *SE;
87 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
103 ScalarEvolution *SE) {
138 ScalarEvolution *SE) {
413 SE = &getAnalysis<ScalarEvolution>();
InductiveRangeCheckElimination.cpp 49 #include "llvm/Analysis/ScalarEvolution.h"
126 ScalarEvolution &SE, Value *&Index,
130 parseRangeCheck(Loop *L, ScalarEvolution &SE, Value *Condition,
192 Optional<Range> computeSafeIterationSpace(ScalarEvolution &SE,
199 Loop *L, ScalarEvolution &SE,
217 AU.addRequired<ScalarEvolution>();
260 ScalarEvolution &SE, Value *&Index,
268 return SE.getLoopDisposition(S, L) == ScalarEvolution::LoopInvariant &&
326 InductiveRangeCheck::parseRangeCheck(Loop *L, ScalarEvolution &SE,
385 Loop *L, ScalarEvolution &SE
    [all...]
LoopInterchange.cpp 26 #include "llvm/Analysis/ScalarEvolution.h"
298 static PHINode *getInductionVariable(Loop *L, ScalarEvolution *SE) {
329 LoopInterchangeLegality(Loop *Outer, Loop *Inner, ScalarEvolution *SE,
349 ScalarEvolution *SE;
357 LoopInterchangeProfitability(Loop *Outer, Loop *Inner, ScalarEvolution *SE)
371 ScalarEvolution *SE;
377 LoopInterchangeTransform(Loop *Outer, Loop *Inner, ScalarEvolution *SE,
402 ScalarEvolution *SE;
411 ScalarEvolution *SE;
421 AU.addRequired<ScalarEvolution>();
    [all...]
LoopUnrollPass.cpp 21 #include "llvm/Analysis/ScalarEvolution.h"
144 AU.addRequired<ScalarEvolution>();
145 AU.addPreserved<ScalarEvolution>();
244 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
271 ScalarEvolution &SE;
272 FindConstantPointers(const Loop *loop, ScalarEvolution &SE)
333 ScalarEvolution &SE;
428 UnrollAnalyzer(const Loop *L, unsigned TripCount, ScalarEvolution &SE,
553 approximateNumberOfOptimizedInstructions(const Loop *L, ScalarEvolution &SE,
729 ScalarEvolution *SE = &getAnalysis<ScalarEvolution>()
    [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
31 /// implementation that uses ScalarEvolution to answer queries.
34 ScalarEvolution *SE;
65 "ScalarEvolution-based Alias Analysis", false, true, false)
66 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
68 "ScalarEvolution-based Alias Analysis", false, true, false)
76 AU.addRequiredTransitive<ScalarEvolution>();
84 SE = &getAnalysis<ScalarEvolution>();
158 // If ScalarEvolution can find an underlying object, form a new query
    [all...]
Delinearization.cpp 20 #include "llvm/Analysis/ScalarEvolution.h"
45 ScalarEvolution *SE;
63 AU.addRequired<ScalarEvolution>();
68 SE = &getAnalysis<ScalarEvolution>();
ScalarEvolution.cpp 1 //===- ScalarEvolution.cpp - Scalar Evolution Analysis --------------------===//
61 #include "llvm/Analysis/ScalarEvolution.h"
115 cl::desc("Verify ScalarEvolution's backedge taken counts (slow)"));
117 INITIALIZE_PASS_BEGIN(ScalarEvolution, "scalar-evolution",
123 INITIALIZE_PASS_END(ScalarEvolution, "scalar-evolution",
125 char ScalarEvolution::ID = 0;
316 const SCEV *ScalarEvolution::getConstant(ConstantInt *V) {
327 const SCEV *ScalarEvolution::getConstant(const APInt &Val) {
332 ScalarEvolution::getConstant(Type *Ty, uint64_t V, bool isSigned) {
708 static void divide(ScalarEvolution &SE, const SCEV *Numerator
    [all...]
IVUsers.cpp 39 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
51 ScalarEvolution *SE, LoopInfo *LI) {
249 AU.addRequired<ScalarEvolution>();
258 SE = &getAnalysis<ScalarEvolution>();
ScalarEvolutionNormalization.cpp 70 ScalarEvolution &SE;
77 ScalarEvolution &se, DominatorTree &dt):
141 // This assert is conceptually correct, but ScalarEvolution currently
250 ScalarEvolution &SE,
  /external/llvm/lib/CodeGen/
MachineFunctionPass.cpp 20 #include "llvm/Analysis/ScalarEvolution.h"
58 AU.addPreserved<ScalarEvolution>();
  /external/llvm/lib/Target/PowerPC/
PPCLoopDataPrefetch.cpp 23 #include "llvm/Analysis/ScalarEvolution.h"
74 AU.addRequired<ScalarEvolution>();
77 // AU.addPreserved<ScalarEvolution>();
87 ScalarEvolution *SE;
99 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
107 SE = &getAnalysis<ScalarEvolution>();
PPCLoopPreIncPrep.cpp 32 #include "llvm/Analysis/ScalarEvolution.h"
76 AU.addRequired<ScalarEvolution>();
88 ScalarEvolution *SE;
96 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
106 SCEVLess(ScalarEvolution *SE) : SE(SE) {}
114 ScalarEvolution *SE;
143 SE = &getAnalysis<ScalarEvolution>();
  /external/llvm/lib/Transforms/Utils/
LCSSA.cpp 35 #include "llvm/Analysis/ScalarEvolution.h"
216 ScalarEvolution *SE) {
265 ScalarEvolution *SE) {
286 ScalarEvolution *SE;
300 AU.addPreserved<ScalarEvolution>();
323 SE = getAnalysisIfAvailable<ScalarEvolution>();
SimplifyIndVar.cpp 12 // simplify a loop's induction variables based on ScalarEvolution.
44 /// based on ScalarEvolution. It is the primary instrument of the
50 ScalarEvolution *SE;
57 SimplifyIndvar(Loop *Loop, ScalarEvolution *SE, LoopInfo *LI,
277 const SCEV *(ScalarEvolution::*GetExprForBO)(const SCEV *, const SCEV *,
285 GetExprForBO = &ScalarEvolution::getAddExpr;
289 GetExprForBO = &ScalarEvolution::getMinusSCEV;
293 GetExprForBO = &ScalarEvolution::getMulExpr;
418 static bool isSimpleIVUser(Instruction *I, const Loop *L, ScalarEvolution *SE) {
516 /// by using ScalarEvolution to analyze the IV's recurrence
    [all...]

Completed in 1614 milliseconds

1 2