LLVM: llvm::MDNodeSDNode Class Reference (original) (raw)
Public Member Functions
Public Member Functions inherited from llvm::SDNode
Return the SelectionDAG opcode value for this node.
Test if this node has a target-specific opcode (in the ISD namespace).
Returns true if the node type is UNDEF or POISON.
Returns true if the node type is ADD or PTRADD.
Test if this node is a memory intrinsic (with valid pointer information).
Test if this node is a strict floating point pseudo-op.
Test if this node is an assert operation.
isVPOpcode () const
Test if this node is a vector predication operation.
Test if this node has a post-isel opcode, directly corresponding to a MachineInstr opcode.
This may only be called if isMachineOpcode returns true.
void
setHasDebugValue (bool b)
isDivergent () const
Return true if there are no uses of this node.
Return true if there is exactly one use of this node.
size_t
Return the number of uses of this node.
int
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.
getIROrder () const
Return the node ordering.
void
setIROrder (unsigned Order)
Set the node ordering.
getDebugLoc () const
Return the source location info.
void
setDebugLoc (DebugLoc dl)
Set source location info.
Provide iteration support to walk over all uses of an SDNode.
iterator_range< use_iterator >
uses ()
iterator_range< use_iterator >
user_begin () const
Provide iteration support to walk over all users of an SDNode.
iterator_range< user_iterator >
users ()
iterator_range< user_iterator >
hasNUsesOfValue (unsigned NUses, unsigned Value) const
Return true if there are exactly NUSES uses of the indicated value.
hasAnyUseOfValue (unsigned Value) const
Return true if there are any use of the indicated value.
isOnlyUserOf (const SDNode *N) const
Return true if this node is the only use of N.
isOperandOf (const SDNode *N) const
Return true if this node is an operand of N.
isPredecessorOf (const SDNode *N) const
Return true if this node is a predecessor of N.
hasPredecessor (const SDNode *N) const
Return true if N is a predecessor of this node.
Return the number of values used by this operation.
getConstantOperandVal (unsigned Num) const
Helper method returns the integer value of a ConstantSDNode operand.
Helper method returns the zero-extended integer value of a ConstantSDNode.
getConstantOperandAPInt (unsigned Num) const
Helper method returns the APInt of a ConstantSDNode operand.
Helper method returns the APInt value of a ConstantSDNode.
std::optional< APInt >
getOperand (unsigned Num) const
iterator_range< value_op_iterator >
SDNode *
If this node has a glue operand, return the node to which the glue operand points.
SDNode *
If this node has a glue value with a user, return the user (there is at most one).
void
setFlags (SDNodeFlags NewFlags)
void
LLVM_ABI void
intersectFlagsWith (const SDNodeFlags Flags)
Clear any flags in this node that aren't also set in Flags.
hasPoisonGeneratingFlags () const
void
getCFIType () const
Return the number of values defined/returned by this operator.
getValueType (unsigned ResNo) const
Return the type of a specified result.
getSimpleValueType (unsigned ResNo) const
Return the type of a specified result as a simple type.
getValueSizeInBits (unsigned ResNo) const
Returns MVT::getSizeInBits(getValueType(ResNo)).
value_begin () const
iterator_range< value_iterator >
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 this node, for debugging.
LLVM_ABI void
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
This method should only be used by the SDUse class.
Public Member Functions inherited from llvm::FoldingSetBase::Node
Node ()=default
void *
void
SetNextInBucket (void *N)
Public Member Functions inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< SDNode, Options... >::type >
getIterator ()
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 *
void
setParent (ilist_detail::compute_node_options< SDNode, Options... >::type::parent_ty *Parent)
Definition at line 2373 of file SelectionDAGNodes.h.