LLVM API Documentation
#include <ScalarEvolutionExpressions.h>
Public Member Functions | |
SCEVParameterRewriter (ScalarEvolution &S, ValueToValueMap &M) | |
const SCEV * | visitConstant (const SCEVConstant *Constant) |
const SCEV * | visitTruncateExpr (const SCEVTruncateExpr *Expr) |
const SCEV * | visitZeroExtendExpr (const SCEVZeroExtendExpr *Expr) |
const SCEV * | visitSignExtendExpr (const SCEVSignExtendExpr *Expr) |
const SCEV * | visitAddExpr (const SCEVAddExpr *Expr) |
const SCEV * | visitMulExpr (const SCEVMulExpr *Expr) |
const SCEV * | visitUDivExpr (const SCEVUDivExpr *Expr) |
const SCEV * | visitAddRecExpr (const SCEVAddRecExpr *Expr) |
const SCEV * | visitSMaxExpr (const SCEVSMaxExpr *Expr) |
const SCEV * | visitUMaxExpr (const SCEVUMaxExpr *Expr) |
const SCEV * | visitUnknown (const SCEVUnknown *Expr) |
const SCEV * | visitCouldNotCompute (const SCEVCouldNotCompute *Expr) |
![]() | |
const SCEV * | visit (const SCEV *S) |
const SCEV * | visitCouldNotCompute (const SCEVCouldNotCompute *S) |
Static Public Member Functions | |
static const SCEV * | rewrite (const SCEV *Scev, ScalarEvolution &SE, ValueToValueMap &Map) |
The SCEVParameterRewriter takes a scalar evolution expression and updates the SCEVUnknown components following the Map (Value -> Value).
Definition at line 562 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 571 of file ScalarEvolutionExpressions.h.
|
inlinestatic |
Definition at line 565 of file ScalarEvolutionExpressions.h.
References Rewriter, and llvm::SCEVVisitor< SC, RetVal >::visit().
|
inline |
Definition at line 593 of file ScalarEvolutionExpressions.h.
References llvm::ScalarEvolution::getAddExpr(), llvm::SCEVNAryExpr::getNumOperands(), llvm::SCEVNAryExpr::getOperand(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 611 of file ScalarEvolutionExpressions.h.
References llvm::ScalarEvolution::getAddRecExpr(), llvm::SCEVAddRecExpr::getLoop(), llvm::SCEVNAryExpr::getNoWrapFlags(), llvm::SCEVNAryExpr::getNumOperands(), llvm::SCEVNAryExpr::getOperand(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 574 of file ScalarEvolutionExpressions.h.
References llvm::ISD::Constant.
|
inline |
Definition at line 640 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 600 of file ScalarEvolutionExpressions.h.
References llvm::ScalarEvolution::getMulExpr(), llvm::SCEVNAryExpr::getNumOperands(), llvm::SCEVNAryExpr::getOperand(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 588 of file ScalarEvolutionExpressions.h.
References llvm::SCEVCastExpr::getOperand(), llvm::ScalarEvolution::getSignExtendExpr(), llvm::SCEVCastExpr::getType(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 619 of file ScalarEvolutionExpressions.h.
References llvm::SCEVNAryExpr::getNumOperands(), llvm::SCEVNAryExpr::getOperand(), llvm::ScalarEvolution::getSMaxExpr(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 578 of file ScalarEvolutionExpressions.h.
References llvm::SCEVCastExpr::getOperand(), llvm::ScalarEvolution::getTruncateExpr(), llvm::SCEVCastExpr::getType(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 607 of file ScalarEvolutionExpressions.h.
References llvm::SCEVUDivExpr::getLHS(), llvm::SCEVUDivExpr::getRHS(), llvm::ScalarEvolution::getUDivExpr(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 626 of file ScalarEvolutionExpressions.h.
References llvm::SCEVNAryExpr::getNumOperands(), llvm::SCEVNAryExpr::getOperand(), llvm::ScalarEvolution::getUMaxExpr(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().
|
inline |
Definition at line 633 of file ScalarEvolutionExpressions.h.
References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT >::count(), llvm::ScalarEvolution::getUnknown(), and llvm::SCEVUnknown::getValue().
|
inline |
Definition at line 583 of file ScalarEvolutionExpressions.h.
References llvm::SCEVCastExpr::getOperand(), llvm::SCEVCastExpr::getType(), llvm::ScalarEvolution::getZeroExtendExpr(), and llvm::SCEVVisitor< SCEVParameterRewriter, const SCEV * >::visit().