class SCEVComparePredicate
Declaration
class SCEVComparePredicate : public SCEVPredicate { /* full declaration omitted */ };
Description
This class represents an assumption that the expression LHS Pred RHS evaluates to true, and this can be checked at run-time.
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:278
Inherits from: SCEVPredicate
Member Variables
- private const ICmpInst::Predicate Pred
- We assume that LHS Pred RHS is true.
- private const llvm::SCEV* LHS
- private const llvm::SCEV* RHS
Inherited from SCEVPredicate:
Method Overview
- public SCEVComparePredicate(const llvm::FoldingSetNodeIDRef ID, const ICmpInst::Predicate Pred, const llvm::SCEV * LHS, const llvm::SCEV * RHS)
- public static bool classof(const llvm::SCEVPredicate * P)
- public const llvm::SCEV * getLHS() const
- public ICmpInst::Predicate getPredicate() const
- public const llvm::SCEV * getRHS() const
- public bool implies(const llvm::SCEVPredicate * N) const
- public bool isAlwaysTrue() const
- public void print(llvm::raw_ostream & OS, unsigned int Depth = 0) const
Inherited from SCEVPredicate:
Inherited from FoldingSetBase::Node:
Methods
¶SCEVComparePredicate(
const llvm::FoldingSetNodeIDRef ID,
const ICmpInst::Predicate Pred,
const llvm::SCEV* LHS,
const llvm::SCEV* RHS)
SCEVComparePredicate(
const llvm::FoldingSetNodeIDRef ID,
const ICmpInst::Predicate Pred,
const llvm::SCEV* LHS,
const llvm::SCEV* RHS)
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:285
Parameters
- const llvm::FoldingSetNodeIDRef ID
- const ICmpInst::Predicate Pred
- const llvm::SCEV* LHS
- const llvm::SCEV* RHS
¶static bool classof(const llvm::SCEVPredicate* P)
static bool classof(const llvm::SCEVPredicate* P)
Description
Methods for support type inquiry through isa, cast, and dyn_cast:
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:303
Parameters
- const llvm::SCEVPredicate* P
¶const llvm::SCEV* getLHS() const
const llvm::SCEV* getLHS() const
Description
Returns the left hand side of the predicate.
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:297
¶ICmpInst::Predicate getPredicate() const
ICmpInst::Predicate getPredicate() const
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:294
¶const llvm::SCEV* getRHS() const
const llvm::SCEV* getRHS() const
Description
Returns the right hand side of the predicate.
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:300
¶bool implies(const llvm::SCEVPredicate* N) const
bool implies(const llvm::SCEVPredicate* N) const
Description
Implementation of the SCEVPredicate interface
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:290
Parameters
- const llvm::SCEVPredicate* N
¶bool isAlwaysTrue() const
bool isAlwaysTrue() const
Description
Returns true if the predicate is always true. This means that no assumptions were made and nothing needs to be checked at run-time.
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:292
¶void print(llvm::raw_ostream& OS,
unsigned int Depth = 0) const
void print(llvm::raw_ostream& OS,
unsigned int Depth = 0) const
Description
Prints a textual representation of this predicate with an indentation of\p Depth.
Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:291
Parameters
- llvm::raw_ostream& OS
- unsigned int Depth = 0