LLVM API Documentation
#include <ScalarEvolutionExpressions.h>
Public Member Functions | |
| const SCEVHandle & | getOperand () const |
| virtual const Type * | getType () const |
| virtual bool | isLoopInvariant (const Loop *L) const |
| virtual bool | hasComputableLoopEvolution (const Loop *L) const |
| SCEVHandle | replaceSymbolicValuesWithConcrete (const SCEVHandle &Sym, const SCEVHandle &Conc, ScalarEvolution &SE) const |
| virtual void | print (std::ostream &OS) const |
| void | print (std::ostream *OS) const |
Static Public Member Functions | |
| static bool | classof (const SCEVZeroExtendExpr *S) |
| Methods for support type inquiry through isa, cast, and dyn_cast:. | |
| static bool | classof (const SCEV *S) |
Friends | |
| class | ScalarEvolution |
Definition at line 117 of file ScalarEvolutionExpressions.h.
| const SCEVHandle& llvm::SCEVZeroExtendExpr::getOperand | ( | ) | const [inline] |
Definition at line 125 of file ScalarEvolutionExpressions.h.
References Op.
Referenced by llvm::SCEVExpander::visitZeroExtendExpr().
| virtual const Type* llvm::SCEVZeroExtendExpr::getType | ( | ) | const [inline, virtual] |
getType - Return the LLVM type of this SCEV expression.
Implements llvm::SCEV.
Definition at line 126 of file ScalarEvolutionExpressions.h.
References Ty.
Referenced by llvm::SCEVExpander::visitZeroExtendExpr().
| virtual bool llvm::SCEVZeroExtendExpr::isLoopInvariant | ( | const Loop * | L | ) | const [inline, virtual] |
isLoopInvariant - Return true if the value of this SCEV is unchanging in the specified loop.
Implements llvm::SCEV.
Definition at line 128 of file ScalarEvolutionExpressions.h.
References Op.
| virtual bool llvm::SCEVZeroExtendExpr::hasComputableLoopEvolution | ( | const Loop * | L | ) | const [inline, virtual] |
hasComputableLoopEvolution - Return true if this SCEV changes value in a known way in the specified loop. This property being true implies that the value is variant in the loop AND that we can emit an expression to compute the value of the expression at any particular loop iteration.
Implements llvm::SCEV.
Definition at line 132 of file ScalarEvolutionExpressions.h.
References Op.
| SCEVHandle llvm::SCEVZeroExtendExpr::replaceSymbolicValuesWithConcrete | ( | const SCEVHandle & | Sym, | |
| const SCEVHandle & | Conc, | |||
| ScalarEvolution & | SE | |||
| ) | const [inline, virtual] |
replaceSymbolicValuesWithConcrete - If this SCEV internally references the symbolic value "Sym", construct and return a new SCEV that produces the same value, but which uses the concrete value Conc instead of the symbolic value. If this SCEV does not use the symbolic value, it returns itself.
Implements llvm::SCEV.
Definition at line 136 of file ScalarEvolutionExpressions.h.
References llvm::ScalarEvolution::getZeroExtendExpr(), H, Op, and Ty.
| void SCEVZeroExtendExpr::print | ( | std::ostream & | OS | ) | const [virtual] |
print - Print out the internal representation of this scalar to the specified stream. This should really only be used for debugging purposes.
Implements llvm::SCEV.
Definition at line 230 of file ScalarEvolution.cpp.
Referenced by print().
| void llvm::SCEVZeroExtendExpr::print | ( | std::ostream * | OS | ) | const [inline] |
Reimplemented from llvm::SCEV.
Definition at line 146 of file ScalarEvolutionExpressions.h.
References print().
| static bool llvm::SCEVZeroExtendExpr::classof | ( | const SCEVZeroExtendExpr * | S | ) | [inline, static] |
Methods for support type inquiry through isa, cast, and dyn_cast:.
Definition at line 149 of file ScalarEvolutionExpressions.h.
| static bool llvm::SCEVZeroExtendExpr::classof | ( | const SCEV * | S | ) | [inline, static] |
Definition at line 150 of file ScalarEvolutionExpressions.h.
References llvm::SCEV::getSCEVType(), and llvm::scZeroExtend.
friend class ScalarEvolution [friend] |
Definition at line 118 of file ScalarEvolutionExpressions.h.