|
VPLoadFFSDNode (unsigned Order, const DebugLoc &DL, SDVTList VTs, EVT MemVT, MachineMemOperand *MMO) |
| const SDValue & |
getBasePtr () const |
| const SDValue & |
getMask () const |
| const SDValue & |
getVectorLength () const |
| Public Member Functions inherited from llvm::MemSDNode |
|
| LLVM_ABI |
MemSDNode (unsigned Opc, unsigned Order, const DebugLoc &dl, SDVTList VTs, EVT memvt, MachineMemOperand *MMO) |
| bool |
readMem () const |
| bool |
writeMem () const |
| Align |
getBaseAlign () const |
|
Returns alignment and volatility of the memory access. |
| Align |
getAlign () const |
| unsigned |
getRawSubclassData () const |
|
Return the SubclassData value, without HasDebugValue. |
| bool |
isVolatile () const |
| bool |
isNonTemporal () const |
| bool |
isDereferenceable () const |
| bool |
isInvariant () const |
| int64_t |
getSrcValueOffset () const |
| AAMDNodes |
getAAInfo () const |
|
Returns the AA info that describes the dereference. |
| const MDNode * |
getRanges () const |
|
Returns the Ranges that describes the dereference. |
| SyncScope::ID |
getSyncScopeID () const |
|
Returns the synchronization scope ID for this memory operation. |
| AtomicOrdering |
getSuccessOrdering () const |
|
Return the atomic ordering requirements for this memory operation. |
| AtomicOrdering |
getMergedOrdering () const |
|
Return a single atomic ordering that is at least as strong as both the success and failure orderings for an atomic operation. |
| bool |
isAtomic () const |
|
Return true if the memory operation ordering is Unordered or higher. |
| bool |
isUnordered () const |
|
Returns true if the memory operation doesn't imply any ordering constraints on surrounding memory operations beyond the normal memory aliasing rules. |
| bool |
isSimple () const |
|
Returns true if the memory operation is neither atomic or volatile. |
| EVT |
getMemoryVT () const |
|
Return the type of the in-memory value. |
| MachineMemOperand * |
getMemOperand () const |
|
Return a MachineMemOperand object describing the memory reference performed by operation. |
| const MachinePointerInfo & |
getPointerInfo () const |
| unsigned |
getAddressSpace () const |
|
Return the address space for the associated pointer. |
| void |
refineAlignment (const MachineMemOperand *NewMMO) |
|
Update this MemSDNode's MachineMemOperand information to reflect the alignment of NewMMO, if it has a greater alignment. |
| void |
refineRanges (const MachineMemOperand *NewMMO) |
| const SDValue & |
getChain () const |
| const SDValue & |
getBasePtr () const |
| Public Member Functions inherited from llvm::SDNode |
|
| unsigned |
getOpcode () const |
|
Return the SelectionDAG opcode value for this node. |
| bool |
isTargetOpcode () const |
|
Test if this node has a target-specific opcode (in the ISD namespace). |
| bool |
isUndef () const |
|
Returns true if the node type is UNDEF or POISON. |
| bool |
isAnyAdd () const |
|
Returns true if the node type is ADD or PTRADD. |
| bool |
isMemIntrinsic () const |
|
Test if this node is a memory intrinsic (with valid pointer information). |
| bool |
isStrictFPOpcode () |
|
Test if this node is a strict floating point pseudo-op. |
| bool |
isAssert () const |
|
Test if this node is an assert operation. |
| bool |
isVPOpcode () const |
|
Test if this node is a vector predication operation. |
| bool |
isMachineOpcode () const |
|
Test if this node has a post-isel opcode, directly corresponding to a MachineInstr opcode. |
| unsigned |
getMachineOpcode () const |
|
This may only be called if isMachineOpcode returns true. |
| bool |
getHasDebugValue () const |
| void |
setHasDebugValue (bool b) |
| bool |
isDivergent () const |
| bool |
use_empty () const |
|
Return true if there are no uses of this node. |
| bool |
hasOneUse () const |
|
Return true if there is exactly one use of this node. |
| size_t |
use_size () const |
|
Return the number of uses of this node. |
| int |
getNodeId () const |
|
Return the unique node id. |
| void |
setNodeId (int Id) |
|
Set unique node id. |
| int |
getCombinerWorklistIndex () const |
|
Get worklist index for DAGCombiner. |
| void |
setCombinerWorklistIndex (int Index) |
|
Set worklist index for DAGCombiner. |
| unsigned |
getIROrder () const |
|
Return the node ordering. |
| void |
setIROrder (unsigned Order) |
|
Set the node ordering. |
| const DebugLoc & |
getDebugLoc () const |
|
Return the source location info. |
| void |
setDebugLoc (DebugLoc dl) |
|
Set source location info. |
| use_iterator |
use_begin () const |
|
Provide iteration support to walk over all uses of an SDNode. |
| iterator_range< use_iterator > |
uses () |
| iterator_range< use_iterator > |
uses () const |
| user_iterator |
user_begin () const |
|
Provide iteration support to walk over all users of an SDNode. |
| iterator_range< user_iterator > |
users () |
| iterator_range< user_iterator > |
users () const |
| bool |
hasNUsesOfValue (unsigned NUses, unsigned Value) const |
|
Return true if there are exactly NUSES uses of the indicated value. |
| LLVM_ABI bool |
hasAnyUseOfValue (unsigned Value) const |
|
Return true if there are any use of the indicated value. |
| LLVM_ABI bool |
isOnlyUserOf (const SDNode *N) const |
|
Return true if this node is the only use of N. |
| LLVM_ABI bool |
isOperandOf (const SDNode *N) const |
|
Return true if this node is an operand of N. |
| bool |
isPredecessorOf (const SDNode *N) const |
|
Return true if this node is a predecessor of N. |
| LLVM_ABI bool |
hasPredecessor (const SDNode *N) const |
|
Return true if N is a predecessor of this node. |
| unsigned |
getNumOperands () const |
|
Return the number of values used by this operation. |
| uint64_t |
getConstantOperandVal (unsigned Num) const |
|
Helper method returns the integer value of a ConstantSDNode operand. |
| uint64_t |
getAsZExtVal () const |
|
Helper method returns the zero-extended integer value of a ConstantSDNode. |
| const APInt & |
getConstantOperandAPInt (unsigned Num) const |
|
Helper method returns the APInt of a ConstantSDNode operand. |
| const APInt & |
getAsAPIntVal () const |
|
Helper method returns the APInt value of a ConstantSDNode. |
| std::optional< APInt > |
bitcastToAPInt () const |
| const SDValue & |
getOperand (unsigned Num) const |
| op_iterator |
op_begin () const |
| op_iterator |
op_end () const |
| ArrayRef< SDUse > |
ops () const |
| iterator_range< value_op_iterator > |
op_values () const |
| SDVTList |
getVTList () const |
| SDNode * |
getGluedNode () const |
|
If this node has a glue operand, return the node to which the glue operand points. |
| SDNode * |
getGluedUser () const |
|
If this node has a glue value with a user, return the user (there is at most one). |
| SDNodeFlags |
getFlags () const |
| void |
setFlags (SDNodeFlags NewFlags) |
| void |
dropFlags (unsigned Mask) |
| LLVM_ABI void |
intersectFlagsWith (const SDNodeFlags Flags) |
|
Clear any flags in this node that aren't also set in Flags. |
| bool |
hasPoisonGeneratingFlags () const |
| void |
setCFIType (uint32_t Type) |
| uint32_t |
getCFIType () const |
| unsigned |
getNumValues () const |
|
Return the number of values defined/returned by this operator. |
| EVT |
getValueType (unsigned ResNo) const |
|
Return the type of a specified result. |
| MVT |
getSimpleValueType (unsigned ResNo) const |
|
Return the type of a specified result as a simple type. |
| TypeSize |
getValueSizeInBits (unsigned ResNo) const |
|
Returns MVT::getSizeInBits(getValueType(ResNo)). |
| value_iterator |
value_begin () const |
| value_iterator |
value_end () const |
| iterator_range< value_iterator > |
values () const |
| LLVM_ABI std::string |
getOperationName (const SelectionDAG *G=nullptr) const |
|
Return the opcode of this operation for printing. |
| LLVM_ABI void |
print_types (raw_ostream &OS, const SelectionDAG *G) const |
| LLVM_ABI void |
print_details (raw_ostream &OS, const SelectionDAG *G) const |
| LLVM_ABI void |
print (raw_ostream &OS, const SelectionDAG *G=nullptr) const |
| LLVM_ABI void |
printr (raw_ostream &OS, const SelectionDAG *G=nullptr) const |
| LLVM_ABI void |
printrFull (raw_ostream &O, const SelectionDAG *G=nullptr) const |
|
Print a SelectionDAG node and all children down to the leaves. |
| LLVM_ABI void |
printrWithDepth (raw_ostream &O, const SelectionDAG *G=nullptr, unsigned depth=100) const |
|
Print a SelectionDAG node and children up to depth "depth." The given SelectionDAG allows target-specific nodes to be printed in human-readable form. |
| LLVM_ABI void |
dump () const |
|
Dump this node, for debugging. |
| LLVM_ABI void |
dumpr () const |
|
Dump (recursively) this node and its use-def subgraph. |
| LLVM_ABI void |
dump (const SelectionDAG *G) const |
|
Dump this node, for debugging. |
| LLVM_ABI void |
dumpr (const SelectionDAG *G) const |
|
Dump (recursively) this node and its use-def subgraph. |
| LLVM_ABI void |
dumprFull (const SelectionDAG *G=nullptr) const |
|
printrFull to dbgs(). |
| LLVM_ABI void |
dumprWithDepth (const SelectionDAG *G=nullptr, unsigned depth=100) const |
|
printrWithDepth to dbgs(). |
| LLVM_ABI void |
Profile (FoldingSetNodeID &ID) const |
|
Gather unique data for the node. |
| void |
addUse (SDUse &U) |
|
This method should only be used by the SDUse class. |
| Public Member Functions inherited from llvm::FoldingSetBase::Node |
|
|
Node ()=default |
| void * |
getNextInBucket () const |
| void |
SetNextInBucket (void *N) |
| Public Member Functions inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< SDNode, Options... >::type > |
|
| self_iterator |
getIterator () |
| reverse_self_iterator |
getReverseIterator () |
| std::enable_if_t< T::is_sentinel_tracking_explicit, bool > |
isSentinel () const |
|
Check whether this is the sentinel node. |
| Public Member Functions inherited from llvm::ilist_detail::node_parent_access< ilist_node_impl< ilist_detail::compute_node_options< SDNode, Options... >::type >, ilist_detail::compute_node_options< SDNode, Options... >::type::parent_ty > |
|
| const ilist_detail::compute_node_options< SDNode, Options... >::type::parent_ty * |
getParent () const |
| void |
setParent (ilist_detail::compute_node_options< SDNode, Options... >::type::parent_ty *Parent) |