Searched defs:SCEV (Results 1 - 3 of 3) sorted by relevance
/external/llvm/include/llvm/Analysis/ |
H A D | ScalarEvolution.h | 13 // SCEV class. Given this analysis, trip counts of loops and other important 50 class SCEV; 51 template<> struct FoldingSetTrait<SCEV>; 53 /// SCEV - This class represents an analyzed expression in the program. These 57 class SCEV : public FoldingSetNode { class in namespace:llvm 58 friend struct FoldingSetTrait<SCEV>; 64 // The SCEV baseclass this node corresponds to 73 SCEV(const SCEV &); // DO NOT IMPLEMENT 74 void operator=(const SCEV 100 explicit SCEV(const FoldingSetNodeIDRef ID, unsigned SCEVTy) : function in class:llvm::SCEV 578 getAddExpr(const SCEV *LHS, const SCEV *RHS, SCEV::NoWrapFlags Flags = SCEV::FlagAnyWrap) argument 585 getAddExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, SCEV::NoWrapFlags Flags = SCEV::FlagAnyWrap) argument 595 getMulExpr(const SCEV *LHS, const SCEV *RHS, SCEV::NoWrapFlags Flags = SCEV::FlagAnyWrap) argument 603 getMulExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, SCEV::NoWrapFlags Flags = SCEV::FlagAnyWrap) argument [all...] |
/external/llvm/lib/Transforms/Scalar/ |
H A D | IndVarSimplify.cpp | 60 // implement a strong expression equivalence checker in SCEV. Until then, we 112 Value *LinearFunctionTestReplace(Loop *L, const SCEV *BackedgeTakenCount, 134 /// isValidRewrite - Return true if the SCEV expansion generated by the 135 /// rewriter can replace the original value. SCEV guarantees that it 139 // If an SCEV expression subsumed multiple pointers, its expansion could 143 // could fail in a dangerous way. Ultimately, SCEV will be improved to avoid 148 // because it understands lcssa phis while SCEV does not. 162 // SCEV may have rewritten an expression that produces the GEP's pointer 165 // base of a recurrence. This handles the case in which SCEV expansion 173 const SCEV *FromBas 605 WideIVVisitor(PHINode *NarrowIV, ScalarEvolution *SCEV, const TargetData *TData) argument 1103 isHighCostExpansion(const SCEV *S, BranchInst *BI, SmallPtrSet<const SCEV*, 8> &Processed, ScalarEvolution *SE) argument [all...] |
H A D | LoopStrengthReduce.cpp | 29 // The SCEV for %i is {0,+,1}<%L>. The SCEV for %i.next is {1,+,1}<%L>, however 135 typedef DenseMap<const SCEV *, RegSortData> RegUsesTy; 138 SmallVector<const SCEV *, 16> RegSequence; 141 void CountRegister(const SCEV *Reg, size_t LUIdx); 142 void DropRegister(const SCEV *Reg, size_t LUIdx); 145 bool isRegUsedByUsesOtherThan(const SCEV *Reg, size_t LUIdx) const; 147 const SmallBitVector &getUsedByIndices(const SCEV *Reg) const; 151 typedef SmallVectorImpl<const SCEV *>::iterator iterator; 152 typedef SmallVectorImpl<const SCEV *> 674 isHighCostExpansion(const SCEV *S, SmallPtrSet<const SCEV*, 8> &Processed, ScalarEvolution &SE) argument [all...] |
Completed in 513 milliseconds