LLVM  8.0.1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
llvm::SCEVCastExpr Class Reference

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

#include "llvm/Analysis/ScalarEvolutionExpressions.h"

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

Public Member Functions

const SCEVgetOperand () const
 
TypegetType () const
 
- Public Member Functions inherited from llvm::SCEV
 SCEV (const FoldingSetNodeIDRef ID, unsigned SCEVTy)
 
 SCEV (const SCEV &)=delete
 
SCEVoperator= (const SCEV &)=delete
 
unsigned 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...
 
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)
 

Static Public Member Functions

static bool classof (const SCEV *S)
 Methods for support type inquiry through isa, cast, and dyn_cast: More...
 

Protected Member Functions

 SCEVCastExpr (const FoldingSetNodeIDRef ID, unsigned SCEVTy, const SCEV *op, Type *ty)
 

Protected Attributes

const SCEVOp
 
TypeTy
 
- Protected Attributes inherited from llvm::SCEV
unsigned short SubclassData = 0
 This field is initialized to zero and may be used in subclasses to store miscellaneous information. More...
 

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...
 

Detailed Description

This is the base class for unary cast operator classes.

Definition at line 69 of file ScalarEvolutionExpressions.h.

Constructor & Destructor Documentation

◆ SCEVCastExpr()

SCEVCastExpr::SCEVCastExpr ( const FoldingSetNodeIDRef  ID,
unsigned  SCEVTy,
const SCEV op,
Type ty 
)
protected

Member Function Documentation

◆ classof()

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

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

Definition at line 82 of file ScalarEvolutionExpressions.h.

References llvm::SCEV::getSCEVType(), llvm::scSignExtend, llvm::scTruncate, and llvm::scZeroExtend.

◆ getOperand()

const SCEV* llvm::SCEVCastExpr::getOperand ( ) const
inline

◆ getType()

Type* llvm::SCEVCastExpr::getType ( ) const
inline

Member Data Documentation

◆ Op

const SCEV* llvm::SCEVCastExpr::Op
protected

◆ Ty

Type* llvm::SCEVCastExpr::Ty
protected

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