|
| FPStateAccessSDNode (unsigned NodeTy, unsigned Order, const DebugLoc &dl, SDVTList VTs, EVT MemVT, MachineMemOperand *MMO) |
|
| MemSDNode (unsigned Opc, unsigned Order, const DebugLoc &dl, SDVTList VTs, EVT memvt, MachineMemOperand *MMO) |
|
bool | readMem () const |
|
bool | writeMem () const |
|
Align | getOriginalAlign () 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.
|
|
const SDValue & | getChain () const |
|
const SDValue & | getBasePtr () const |
|
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 <target>ISD namespace).
|
|
bool | isTargetStrictFPOpcode () const |
| Test if this node has a target-specific opcode that may raise FP exceptions (in the <target>ISD namespace and greater than FIRST_TARGET_STRICTFP_OPCODE).
|
|
bool | isTargetMemoryOpcode () const |
| Test if this node has a target-specific memory-referencing opcode (in the <target>ISD namespace and greater than FIRST_TARGET_MEMORY_OPCODE).
|
|
bool | isUndef () const |
| Return true if the type of the node type undefined.
|
|
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 | 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.
|
|
bool | hasAnyUseOfValue (unsigned Value) const |
| Return true if there are any use of the indicated value.
|
|
bool | isOnlyUserOf (const SDNode *N) const |
| Return true if this node is the only use of N.
|
|
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.
|
|
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.
|
|
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) |
|
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 |
|
std::string | getOperationName (const SelectionDAG *G=nullptr) const |
| Return the opcode of this operation for printing.
|
|
void | print_types (raw_ostream &OS, const SelectionDAG *G) const |
|
void | print_details (raw_ostream &OS, const SelectionDAG *G) const |
|
void | print (raw_ostream &OS, const SelectionDAG *G=nullptr) const |
|
void | printr (raw_ostream &OS, const SelectionDAG *G=nullptr) const |
|
void | printrFull (raw_ostream &O, const SelectionDAG *G=nullptr) const |
| Print a SelectionDAG node and all children down to the leaves.
|
|
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.
|
|
void | dump () const |
| Dump this node, for debugging.
|
|
void | dumpr () const |
| Dump (recursively) this node and its use-def subgraph.
|
|
void | dump (const SelectionDAG *G) const |
| Dump this node, for debugging.
|
|
void | dumpr (const SelectionDAG *G) const |
| Dump (recursively) this node and its use-def subgraph.
|
|
void | dumprFull (const SelectionDAG *G=nullptr) const |
| printrFull to dbgs().
|
|
void | dumprWithDepth (const SelectionDAG *G=nullptr, unsigned depth=100) const |
| printrWithDepth to dbgs().
|
|
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.
|
|
| Node ()=default |
|
void * | getNextInBucket () const |
|
void | SetNextInBucket (void *N) |
|
self_iterator | getIterator () |
|
const_self_iterator | getIterator () const |
|
reverse_self_iterator | getReverseIterator () |
|
const_reverse_self_iterator | getReverseIterator () const |
|
bool | isSentinel () const |
| Check whether this is the sentinel node.
|
|
const OptionsT::parent_ty * | getParent () const |
|
OptionsT::parent_ty * | getParent () |
|
void | setParent (OptionsT::parent_ty *Parent) |
|