LLVM  4.0.0
Classes | Namespaces | Functions
ScalarEvolution.h File Reference
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/FoldingSet.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/IR/ConstantRange.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/PassManager.h"
#include "llvm/IR/ValueHandle.h"
#include "llvm/IR/ValueMap.h"
#include "llvm/Pass.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/DataTypes.h"
Include dependency graph for ScalarEvolution.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::SCEV
 This class represents an analyzed expression in the program. More...
 
struct  llvm::FoldingSetTrait< SCEV >
 
struct  llvm::SCEVCouldNotCompute
 An object of this class is returned by queries that could not be answered. More...
 
class  llvm::SCEVPredicate
 This class represents an assumption made using SCEV expressions which can be checked at run-time. More...
 
struct  llvm::FoldingSetTrait< SCEVPredicate >
 
class  llvm::SCEVEqualPredicate
 This class represents an assumption that two SCEV expressions are equal, and this can be checked at run-time. More...
 
class  llvm::SCEVWrapPredicate
 This class represents an assumption made on an AddRec expression. More...
 
class  llvm::SCEVUnionPredicate
 This class represents a composition of other SCEV predicates, and is the class that most clients will interact with. More...
 
class  llvm::ScalarEvolution
 The main scalar evolution driver. More...
 
class  llvm::ScalarEvolutionAnalysis
 Analysis pass that exposes the ScalarEvolution for a function. More...
 
class  llvm::ScalarEvolutionPrinterPass
 Printer pass for the ScalarEvolutionAnalysis results. More...
 
class  llvm::ScalarEvolutionWrapperPass
 
class  llvm::PredicatedScalarEvolution
 An interface layer with SCEV used to manage how we see SCEV expressions for values in the context of existing predicates. More...
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Functions

raw_ostream & llvm::operator<< (raw_ostream &OS, const SCEV &S)
 
raw_ostream & llvm::operator<< (raw_ostream &OS, const SCEVPredicate &P)