This node represents an addition of some number of SCEVs.
Synopsis
Declared in <llvm/Analysis/ScalarEvolutionExpressions.h>
class SCEVAddExpr
: public SCEVCommutativeExpr
Base Classes
Name |
Description |
This node is the base class for n'ary commutative operators. |
Type Aliases
Name |
Description |
SCEV no‐wrap flags; alias of SCEVNoWrapFlags. |
Member Functions
Name |
Description |
|
Deleted copy assignment. |
Compute and set the canonical SCEV, by constructing a SCEV with the same operands, but all SCEVUse flags dropped. |
|
This method is used for debugging. |
|
Return the canonical SCEV. |
|
Return the estimated size of this SCEV's expression tree. |
|
Return no‐wrap flags selected by |
|
Return the number of operands. |
|
Return the operand at index |
|
Return the SCEV opcode of this expression. |
|
Return the LLVM type of this SCEV expression. |
|
Return true if this expression has the no‐self‐wrap flag. |
|
Return true if this expression has the no‐signed‐wrap flag. |
|
Return true if this expression has the no‐unsigned‐wrap flag. |
|
Return true if the expression is a constant all‐ones value. |
|
Return true if the specified scev is negated, but not a constant. |
|
Return true if the expression is a constant one. |
|
Return true if the expression is a constant zero. |
|
Return the array of operands. |
|
Print this SCEV to |
|
Set flags for a non‐recurrence without clearing previously set flags. |
Static Member Functions
Name |
Description |
|
Static Data Members
Name |
Description |
No wrap guarantee. |
|
No signed wrap. |
|
No unsigned wrap. |
|
No self‐wrap. |
|
Mask of all no‐wrap flag bits. |
Protected Data Members
Name |
Description |
Pointer to the canonical version of the SCEV, i.e. one where all operands have no SCEVUse flags. |
|
Estimated complexity of this node's expression tree size. |
|
Number of operands. |
|
Pointer to the immutable operand array owned by ScalarEvolution. |
|
This field is initialized to zero and may be used in subclasses to store miscellaneous information. |
|
Immutable type of the SCEV. |
Friends
Name |
Description |
The main scalar evolution driver. Because client code (intentionally) can't do much with the SCEV objects directly, they must ask this class for services. |
Non-Member Functions
Name |
Description |
Return true if any node in |
|
Returns true if |
|
Returns true if |
|
Denormalize |
|
Overload for isDereferenceableAndAlignedInLoop taking the pointer and access size directly as SCEVs. |
|
Returns true if we can prove that |
|
Returns true if we can prove that |
|
Returns true if we can prove that |
|
Returns true if we can prove that |
|
Normalize |
|
Normalize |
|
Use SCEVTraversal to visit all nodes in the given expression tree. |
|
Match a SCEV, capturing it if we match. |
|
Match a SCEVAddExpr with operands matching |
|
Match a SCEVAddExpr, capturing it if we match. |
|
Match if we have a specific specified SCEV. |
|
Match SCEV |
Created with MrDocs