|
LLVM
4.0.0
|
This class represents an assumption that two SCEV expressions are equal, and this can be checked at run-time. More...
#include <ScalarEvolution.h>
Public Member Functions | |
| SCEVEqualPredicate (const FoldingSetNodeIDRef ID, const SCEVUnknown *LHS, const SCEVConstant *RHS) | |
| bool | implies (const SCEVPredicate *N) const override |
| Implementation of the SCEVPredicate interface. More... | |
| void | print (raw_ostream &OS, unsigned Depth=0) const override |
Prints a textual representation of this predicate with an indentation of Depth. More... | |
| bool | isAlwaysTrue () const override |
| Returns true if the predicate is always true. More... | |
| const SCEV * | getExpr () const override |
| Returns the SCEV to which this predicate applies, or nullptr if this is a SCEVUnionPredicate. More... | |
| const SCEVUnknown * | getLHS () const |
| Returns the left hand side of the equality. More... | |
| const SCEVConstant * | getRHS () const |
| Returns the right hand side of the equality. More... | |
Public Member Functions inherited from llvm::SCEVPredicate | |
| SCEVPredicate (const FoldingSetNodeIDRef ID, SCEVPredicateKind Kind) | |
| SCEV predicates. More... | |
| SCEVPredicateKind | getKind () const |
| virtual unsigned | getComplexity () const |
| Returns the estimated complexity of this predicate. More... | |
Public Member Functions inherited from llvm::FoldingSetImpl::Node | |
| Node () | |
| void * | getNextInBucket () const |
| void | SetNextInBucket (void *N) |
Static Public Member Functions | |
| static bool | classof (const SCEVPredicate *P) |
| Methods for support type inquiry through isa, cast, and dyn_cast: More... | |
Additional Inherited Members | |
Public Types inherited from llvm::SCEVPredicate | |
| enum | SCEVPredicateKind { P_Union, P_Equal, P_Wrap } |
Protected Member Functions inherited from llvm::SCEVPredicate | |
| ~SCEVPredicate ()=default | |
| SCEVPredicate (const SCEVPredicate &)=default | |
| SCEVPredicate & | operator= (const SCEVPredicate &)=default |
Protected Attributes inherited from llvm::SCEVPredicate | |
| SCEVPredicateKind | Kind |
This class represents an assumption that two SCEV expressions are equal, and this can be checked at run-time.
We assume that the left hand side is a SCEVUnknown and the right hand side a constant.
Definition at line 242 of file ScalarEvolution.h.
| SCEVEqualPredicate::SCEVEqualPredicate | ( | const FoldingSetNodeIDRef | ID, |
| const SCEVUnknown * | LHS, | ||
| const SCEVConstant * | RHS | ||
| ) |
Definition at line 10250 of file ScalarEvolution.cpp.
|
inlinestatic |
Methods for support type inquiry through isa, cast, and dyn_cast:
Definition at line 265 of file ScalarEvolution.h.
References llvm::SCEVPredicate::getKind(), and llvm::SCEVPredicate::P_Equal.
Returns the SCEV to which this predicate applies, or nullptr if this is a SCEVUnionPredicate.
Implements llvm::SCEVPredicate.
Definition at line 10266 of file ScalarEvolution.cpp.
|
inline |
Returns the left hand side of the equality.
Definition at line 259 of file ScalarEvolution.h.
Referenced by llvm::SCEVExpander::expandEqualPredicate().
|
inline |
Returns the right hand side of the equality.
Definition at line 262 of file ScalarEvolution.h.
Referenced by llvm::SCEVExpander::expandEqualPredicate().
|
overridevirtual |
Implementation of the SCEVPredicate interface.
Implements llvm::SCEVPredicate.
Definition at line 10255 of file ScalarEvolution.cpp.
References llvm::dyn_cast(), and N.
|
overridevirtual |
Returns true if the predicate is always true.
This means that no assumptions were made and nothing needs to be checked at run-time.
Implements llvm::SCEVPredicate.
Definition at line 10264 of file ScalarEvolution.cpp.
|
overridevirtual |
Prints a textual representation of this predicate with an indentation of Depth.
Implements llvm::SCEVPredicate.
Definition at line 10268 of file ScalarEvolution.cpp.
References llvm::raw_ostream::indent().
1.8.6