This is the base class for unary integral cast operator classes.
Declared in <llvm/Analysis/ScalarEvolutionExpressions.h>
class SCEVIntegralCastExpr
: public SCEVCastExpr
| Name | Description |
|---|---|
SCEVCastExpr | This is the base class for unary cast operator classes. |
| Name | Description |
|---|---|
NoWrapFlags | SCEV no-wrap flags; alias of SCEVNoWrapFlags. |
| Name | Description |
|---|---|
operator= [deleted] | Deleted copy assignment. |
computeAndSetCanonical | Compute and set the canonical SCEV, by constructing a SCEV with the same operands, but all SCEVUse flags dropped. |
dump | This method is used for debugging. |
getCanonical | Return the canonical SCEV. |
getExpressionSize | Return the estimated size of this SCEV's expression tree. |
getNumOperands | Return the number of operands (always 1). |
getOperand | getOperand overloads |
getSCEVType | Return the SCEV opcode of this expression. |
getType | Return the LLVM type of this SCEV expression. |
isAllOnesValue | Return true if the expression is a constant all-ones value. |
isNonConstantNegative | Return true if the specified scev is negated, but not a constant. |
isOne | Return true if the expression is a constant one. |
isZero | Return true if the expression is a constant zero. |
operands | Return the single-element operand array for this cast. |
print | Print this SCEV to OS. |
| Name | Description |
|---|---|
classof | Methods for support type inquiry through isa, cast, and dyn_cast. |
| Name | Description |
|---|---|
FlagAnyWrap | No wrap guarantee. |
FlagNSW | No signed wrap. |
FlagNUW | No unsigned wrap. |
FlagNW | No self-wrap. |
NoWrapMask | Mask of all no-wrap flag bits. |
| Name | Description |
|---|---|
SCEVIntegralCastExpr [constructor] | Construct a unary integral cast SCEV of kind SCEVTy. |
| Name | Description |
|---|---|
CanonicalSCEV | Pointer to the canonical version of the SCEV, i.e. one where all operands have no SCEVUse flags. |
ExpressionSize | Estimated complexity of this node's expression tree size. |
Op | The single cast operand. |
SubclassData | This field is initialized to zero and may be used in subclasses to store miscellaneous information. |
Ty | Immutable type of the SCEV. |
| Name | Description |
|---|---|
SCEVExprContains | Return true if any node in Root satisfies the predicate Pred. |
cannotBeMaxInLoop | Returns true if S is defined and never is equal to signed/unsigned max. |
cannotBeMinInLoop | Returns true if S is defined and never is equal to signed/unsigned min. |
denormalizeForPostIncUse | Denormalize S to be post-increment for all loops present in Loops. |
isDereferenceableAndAlignedInLoop | Overload for isDereferenceableAndAlignedInLoop taking the pointer and access size directly as SCEVs. |
isKnownNegativeInLoop | Returns true if we can prove that S is defined and always negative in loop L. |
isKnownNonNegativeInLoop | Returns true if we can prove that S is defined and always non-negative in loop L. |
isKnownNonPositiveInLoop | Returns true if we can prove that S is defined and always non-positive in loop L. |
isKnownPositiveInLoop | Returns true if we can prove that S is defined and always positive in loop L. |
normalizeForPostIncUse | Normalize S to be post-increment for all loops present in Loops. |
normalizeForPostIncUseIf | Normalize S for all add recurrence sub-expressions for which Pred returns true. |
visitAll | Use SCEVTraversal to visit all nodes in the given expression tree. |
SCEVPatternMatch::m_SCEV | Match a SCEV, capturing it if we match. |
SCEVPatternMatch::m_scev_Specific | Match if we have a specific specified SCEV. |
SCEVPatternMatch::match | Match SCEV S against pattern P. |
| Name | Description |
|---|---|
SCEVSignExtendExpr | This class represents a sign extension of a small integer value to a larger integer value. |
SCEVTruncateExpr | This class represents a truncation of an integer value to a smaller integer value. |
SCEVZeroExtendExpr | This class represents a zero extension of a small integer value to a larger integer value. |