LLVM  14.0.0git
Static Public Member Functions | Protected Member Functions | List of all members
llvm::SCEVIntegralCastExpr Class Reference

This is the base class for unary integral cast operator classes. More...

#include "llvm/Analysis/ScalarEvolutionExpressions.h"

Inheritance diagram for llvm::SCEVIntegralCastExpr:
Inheritance graph
[legend]
Collaboration diagram for llvm::SCEVIntegralCastExpr:
Collaboration graph
[legend]

Static Public Member Functions

static bool classof (const SCEV *S)
 Methods for support type inquiry through isa, cast, and dyn_cast: More...
 
- Static Public Member Functions inherited from llvm::SCEVCastExpr
static bool classof (const SCEV *S)
 Methods for support type inquiry through isa, cast, and dyn_cast: More...
 

Protected Member Functions

 SCEVIntegralCastExpr (const FoldingSetNodeIDRef ID, SCEVTypes SCEVTy, const SCEV *op, Type *ty)
 
- Protected Member Functions inherited from llvm::SCEVCastExpr
 SCEVCastExpr (const FoldingSetNodeIDRef ID, SCEVTypes SCEVTy, const SCEV *op, Type *ty)
 

Additional Inherited Members

- Public Types inherited from llvm::SCEVCastExpr
using op_iterator = std::array< const SCEV *, 1 >::const_iterator
 
using op_range = iterator_range< op_iterator >
 
- 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...
 
- Public Member Functions inherited from llvm::SCEVCastExpr
const SCEVgetOperand () const
 
const SCEVgetOperand (unsigned i) const
 
op_range operands () const
 
size_t getNumOperands () const
 
TypegetType () const
 
- Public Member Functions inherited from llvm::SCEV
 SCEV (const FoldingSetNodeIDRef ID, SCEVTypes SCEVTy, unsigned short ExpressionSize)
 
 SCEV (const SCEV &)=delete
 
SCEVoperator= (const SCEV &)=delete
 
SCEVTypes getSCEVType () const
 
TypegetType () const
 Return the LLVM type of this SCEV expression. More...
 
bool isZero () const
 Return true if the expression is a constant zero. More...
 
bool isOne () const
 Return true if the expression is a constant one. More...
 
bool isAllOnesValue () const
 Return true if the expression is a constant all-ones value. More...
 
bool isNonConstantNegative () const
 Return true if the specified scev is negated, but not a constant. More...
 
unsigned short getExpressionSize () const
 
void print (raw_ostream &OS) const
 Print out the internal representation of this scalar to the specified stream. More...
 
void dump () const
 This method is used for debugging. More...
 
- Public Member Functions inherited from llvm::FoldingSetBase::Node
 Node ()=default
 
void * getNextInBucket () const
 
void SetNextInBucket (void *N)
 
- Protected Attributes inherited from llvm::SCEVCastExpr
std::array< const SCEV *, 1 > Operands
 
TypeTy
 
- 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. More...
 

Detailed Description

This is the base class for unary integral cast operator classes.

Definition at line 121 of file ScalarEvolutionExpressions.h.

Constructor & Destructor Documentation

◆ SCEVIntegralCastExpr()

SCEVIntegralCastExpr::SCEVIntegralCastExpr ( const FoldingSetNodeIDRef  ID,
SCEVTypes  SCEVTy,
const SCEV op,
Type ty 
)
protected

Definition at line 480 of file ScalarEvolution.cpp.

Member Function Documentation

◆ classof()

static bool llvm::SCEVIntegralCastExpr::classof ( const SCEV S)
inlinestatic

Methods for support type inquiry through isa, cast, and dyn_cast:

Definition at line 128 of file ScalarEvolutionExpressions.h.

References S, llvm::scSignExtend, llvm::scTruncate, and llvm::scZeroExtend.


The documentation for this class was generated from the following files: