LLVM 22.0.0git
|
This is the base class for unary cast operator classes. More...
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
Public Member Functions | |
const SCEV * | getOperand () const |
const SCEV * | getOperand (unsigned i) const |
ArrayRef< const SCEV * > | operands () const |
size_t | getNumOperands () const |
Type * | getType () const |
Public Member Functions inherited from llvm::SCEV | |
SCEV (const FoldingSetNodeIDRef ID, SCEVTypes SCEVTy, unsigned short ExpressionSize) | |
SCEV (const SCEV &)=delete | |
SCEV & | operator= (const SCEV &)=delete |
SCEVTypes | getSCEVType () const |
LLVM_ABI Type * | getType () const |
Return the LLVM type of this SCEV expression. | |
LLVM_ABI ArrayRef< const SCEV * > | operands () const |
Return operands of this SCEV expression. | |
LLVM_ABI bool | isZero () const |
Return true if the expression is a constant zero. | |
LLVM_ABI bool | isOne () const |
Return true if the expression is a constant one. | |
LLVM_ABI bool | isAllOnesValue () const |
Return true if the expression is a constant all-ones value. | |
LLVM_ABI bool | isNonConstantNegative () const |
Return true if the specified scev is negated, but not a constant. | |
unsigned short | getExpressionSize () const |
LLVM_ABI void | print (raw_ostream &OS) const |
Print out the internal representation of this scalar to the specified stream. | |
LLVM_ABI void | dump () const |
This method is used for debugging. | |
Public Member Functions inherited from llvm::FoldingSetBase::Node | |
Node ()=default | |
void * | getNextInBucket () const |
void | SetNextInBucket (void *N) |
Static Public Member Functions | |
static bool | classof (const SCEV *S) |
Methods for support type inquiry through isa, cast, and dyn_cast: |
Protected Member Functions | |
LLVM_ABI | SCEVCastExpr (const FoldingSetNodeIDRef ID, SCEVTypes SCEVTy, const SCEV *op, Type *ty) |
Protected Attributes | |
const SCEV * | Op |
Type * | Ty |
Protected Attributes inherited from llvm::SCEV | |
const unsigned short | ExpressionSize |
unsigned short | SubclassData = 0 |
This field is initialized to zero and may be used in subclasses to store miscellaneous information. |
Additional Inherited Members | |
Public Types inherited from llvm::SCEV | |
enum | NoWrapFlags { FlagAnyWrap = 0 , FlagNW = (1 << 0) , FlagNUW = (1 << 1) , FlagNSW = (1 << 2) , NoWrapMask = (1 << 3) - 1 } |
NoWrapFlags are bitfield indices into SubclassData. More... |
This is the base class for unary cast operator classes.
Definition at line 104 of file ScalarEvolutionExpressions.h.
|
protected |
Definition at line 511 of file ScalarEvolution.cpp.
References llvm::computeExpressionSize(), Op, op, llvm::SCEV::SCEV(), and Ty.
Referenced by llvm::SCEVIntegralCastExpr::SCEVIntegralCastExpr().
Methods for support type inquiry through isa, cast, and dyn_cast:
Definition at line 123 of file ScalarEvolutionExpressions.h.
References llvm::SCEV::getSCEVType(), llvm::SCEV::SCEV(), llvm::scPtrToInt, llvm::scSignExtend, llvm::scTruncate, and llvm::scZeroExtend.
|
inline |
Definition at line 119 of file ScalarEvolutionExpressions.h.
Definition at line 113 of file ScalarEvolutionExpressions.h.
References Op, and llvm::SCEV::SCEV().
Referenced by BuildConstantFromSCEV(), isSimpleCastedPHI(), llvm::SCEV::print(), llvm::ScalarEvolution::LoopGuards::rewrite(), llvm::SCEVRewriteVisitor< SC >::visitPtrToIntExpr(), llvm::SCEVRewriteVisitor< SC >::visitSignExtendExpr(), llvm::SCEVRewriteVisitor< SC >::visitTruncateExpr(), and llvm::SCEVRewriteVisitor< SC >::visitZeroExtendExpr().
Definition at line 114 of file ScalarEvolutionExpressions.h.
References assert(), Op, and llvm::SCEV::SCEV().
|
inline |
Definition at line 120 of file ScalarEvolutionExpressions.h.
References Ty.
Referenced by BuildConstantFromSCEV(), isSimpleCastedPHI(), llvm::SCEV::print(), llvm::ScalarEvolution::LoopGuards::rewrite(), llvm::SCEVRewriteVisitor< SC >::visitPtrToIntExpr(), llvm::SCEVRewriteVisitor< SC >::visitSignExtendExpr(), llvm::SCEVRewriteVisitor< SC >::visitTruncateExpr(), and llvm::SCEVRewriteVisitor< SC >::visitZeroExtendExpr().
Definition at line 118 of file ScalarEvolutionExpressions.h.
References Op.
Definition at line 106 of file ScalarEvolutionExpressions.h.
Referenced by getOperand(), getOperand(), operands(), llvm::SCEVPtrToIntExpr::ScalarEvolution, and SCEVCastExpr().
|
protected |
Definition at line 107 of file ScalarEvolutionExpressions.h.
Referenced by getType(), and SCEVCastExpr().