|
LLVM
4.0.0
|
This visitor recursively visits a SCEV expression and re-writes it. More...
#include <ScalarEvolutionExpressions.h>
Public Member Functions | |
| SCEVRewriteVisitor (ScalarEvolution &SE) | |
| const SCEV * | visit (const SCEV *S) |
| 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) |
Public Member Functions inherited from llvm::SCEVVisitor< SC, const SCEV * > | |
| const SCEV * | visit (const SCEV *S) |
| const SCEV * | visitCouldNotCompute (const SCEVCouldNotCompute *S) |
Protected Attributes | |
| ScalarEvolution & | SE |
| DenseMap< const SCEV *, const SCEV * > | RewriteResults |
This visitor recursively visits a SCEV expression and re-writes it.
The result from each visit is cached, so it will return the same SCEV for the same input.
Definition at line 569 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 580 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 582 of file ScalarEvolutionExpressions.h.
Referenced by llvm::SCEVParameterRewriter::rewrite(), llvm::SCEVLoopAddRecRewriter::rewrite(), and llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitUDivExpr().
|
inline |
Definition at line 611 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 630 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 592 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 656 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 618 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 606 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 638 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 596 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 625 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 645 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 652 of file ScalarEvolutionExpressions.h.
|
inline |
Definition at line 601 of file ScalarEvolutionExpressions.h.
|
protected |
Definition at line 577 of file ScalarEvolutionExpressions.h.
Referenced by llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visit().
|
protected |
Definition at line 571 of file ScalarEvolutionExpressions.h.
Referenced by llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitAddExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitAddRecExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitMulExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitSignExtendExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitSMaxExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitTruncateExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitUDivExpr(), llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitUMaxExpr(), and llvm::SCEVRewriteVisitor< SCEVLoopAddRecRewriter >::visitZeroExtendExpr().
1.8.6