LLVM API Documentation

llvm::SDNode Class Reference

#include <SelectionDAGNodes.h>

Inheritance diagram for llvm::SDNode:

Inheritance graph
[legend]
Collaboration diagram for llvm::SDNode:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< SDNode
* >::const_iterator 
use_iterator
typedef const SDOperandop_iterator
typedef const MVT::ValueTypevalue_iterator

Public Member Functions

virtual ~SDNode ()
unsigned getOpcode () const
bool isTargetOpcode () const
unsigned getTargetOpcode () const
size_t use_size () const
bool use_empty () const
bool hasOneUse () const
unsigned getNodeDepth () const
use_iterator use_begin () const
use_iterator use_end () const
bool hasNUsesOfValue (unsigned NUses, unsigned Value) const
bool isOnlyUse (SDNode *N) const
bool isOperand (SDNode *N) const
unsigned getNumOperands () const
const SDOperandgetOperand (unsigned Num) const
op_iterator op_begin () const
op_iterator op_end () const
unsigned getNumValues () const
MVT::ValueType getValueType (unsigned ResNo) const
value_iterator value_begin () const
value_iterator value_end () const
const char * getOperationName (const SelectionDAG *G=0) const
void dump () const
void dump (const SelectionDAG *G) const

Static Public Member Functions

static bool classof (const SDNode *)

Protected Member Functions

 SDNode (unsigned NT, MVT::ValueType VT)
 SDNode (unsigned NT, SDOperand Op)
 SDNode (unsigned NT, SDOperand N1, SDOperand N2)
 SDNode (unsigned NT, SDOperand N1, SDOperand N2, SDOperand N3)
 SDNode (unsigned NT, SDOperand N1, SDOperand N2, SDOperand N3, SDOperand N4)
 SDNode (unsigned Opc, const std::vector< SDOperand > &Nodes)
void MorphNodeTo (unsigned Opc)
void setValueTypes (MVT::ValueType VT)
void setValueTypes (MVT::ValueType *List, unsigned NumVal)
void setOperands (SDOperand Op0)
void setOperands (SDOperand Op0, SDOperand Op1)
void setOperands (SDOperand Op0, SDOperand Op1, SDOperand Op2)
void setOperands (SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3)
void setOperands (SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3, SDOperand Op4)
void setOperands (SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3, SDOperand Op4, SDOperand Op5)
void setOperands (SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3, SDOperand Op4, SDOperand Op5, SDOperand Op6)
void setOperands (SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3, SDOperand Op4, SDOperand Op5, SDOperand Op6, SDOperand Op7)
void addUser (SDNode *User)
void removeUser (SDNode *User)

Static Protected Member Functions

static MVT::ValueTypegetValueTypeList (MVT::ValueType VT)

Friends

struct ilist_traits< SDNode >
class SelectionDAG

Detailed Description

SDNode - Represents one node in the SelectionDAG.

Definition at line 668 of file SelectionDAGNodes.h.


Member Typedef Documentation

typedef const SDOperand* llvm::SDNode::op_iterator

Definition at line 743 of file SelectionDAGNodes.h.

typedef std::vector<SDNode*>::const_iterator llvm::SDNode::use_iterator

Definition at line 720 of file SelectionDAGNodes.h.

typedef const MVT::ValueType* llvm::SDNode::value_iterator

Definition at line 760 of file SelectionDAGNodes.h.


Constructor & Destructor Documentation

virtual llvm::SDNode::~SDNode (  )  [inline, virtual]

Definition at line 698 of file SelectionDAGNodes.h.

llvm::SDNode::SDNode ( unsigned  NT,
MVT::ValueType  VT 
) [inline, protected]

Definition at line 779 of file SelectionDAGNodes.h.

References getValueTypeList(), Next, and Prev.

llvm::SDNode::SDNode ( unsigned  NT,
SDOperand  Op 
) [inline, protected]

Definition at line 785 of file SelectionDAGNodes.h.

References Next, Op, Prev, and llvm::Use::Val.

llvm::SDNode::SDNode ( unsigned  NT,
SDOperand  N1,
SDOperand  N2 
) [inline, protected]

Definition at line 795 of file SelectionDAGNodes.h.

References getNodeDepth(), Next, Prev, Uses, and llvm::SDOperand::Val.

llvm::SDNode::SDNode ( unsigned  NT,
SDOperand  N1,
SDOperand  N2,
SDOperand  N3 
) [inline, protected]

Definition at line 810 of file SelectionDAGNodes.h.

References getNodeDepth(), Next, Prev, Uses, and llvm::SDOperand::Val.

llvm::SDNode::SDNode ( unsigned  NT,
SDOperand  N1,
SDOperand  N2,
SDOperand  N3,
SDOperand  N4 
) [inline, protected]

Definition at line 831 of file SelectionDAGNodes.h.

References getNodeDepth(), Next, Prev, Uses, and llvm::SDOperand::Val.

llvm::SDNode::SDNode ( unsigned  Opc,
const std::vector< SDOperand > &  Nodes 
) [inline, protected]

Definition at line 855 of file SelectionDAGNodes.h.

References getNodeDepth(), Next, Prev, Uses, and llvm::SDOperand::Val.


Member Function Documentation

void llvm::SDNode::addUser ( SDNode User  )  [inline, protected]

Definition at line 1001 of file SelectionDAGNodes.h.

References User.

Referenced by llvm::SelectionDAG::ReplaceAllUsesOfValueWith(), llvm::SelectionDAG::ReplaceAllUsesWith(), and llvm::SelectionDAG::UpdateNodeOperands().

static bool llvm::SDNode::classof ( const SDNode  )  [inline, static]

Reimplemented in llvm::StringSDNode, llvm::ConstantSDNode, llvm::ConstantFPSDNode, llvm::GlobalAddressSDNode, llvm::FrameIndexSDNode, llvm::ConstantPoolSDNode, llvm::BasicBlockSDNode, llvm::SrcValueSDNode, llvm::RegisterSDNode, llvm::ExternalSymbolSDNode, llvm::CondCodeSDNode, and llvm::VTSDNode.

Definition at line 770 of file SelectionDAGNodes.h.

void SDNode::dump ( const SelectionDAG G  )  const

Definition at line 2868 of file SelectionDAG.cpp.

References CP, G, llvm::Value::getName(), getNumOperands(), getNumValues(), getOperand(), getOperationName(), getValueType(), llvm::MVT::getValueTypeString(), llvm::MRegisterInfo::isPhysicalRegister(), M, llvm::MVT::Other, R, Val, and llvm::WriteAsOperand().

void SDNode::dump (  )  const

Definition at line 2867 of file SelectionDAG.cpp.

Referenced by DumpNodes(), and llvm::ScheduleDAG::EmitNode().

unsigned llvm::SDNode::getNodeDepth (  )  const [inline]

getNodeDepth - Return the distance from this node to the leaves in the graph. The leaves have a depth of 1.

Definition at line 718 of file SelectionDAGNodes.h.

Referenced by llvm::SDOperand::getNodeDepth(), and SDNode().

unsigned llvm::SDNode::getNumOperands (  )  const [inline]

getNumOperands - Return the number of values used by this operation.

Definition at line 737 of file SelectionDAGNodes.h.

Referenced by ComputeTopDownOrdering(), CountOperands(), dump(), DumpNodes(), llvm::ScheduleDAG::EmitNode(), llvm::SDNodeIterator::end(), llvm::PPC::get_VSPLTI_elt(), GetConstantBuildVectorBits(), llvm::SDOperand::getNumOperands(), llvm::X86::getShuffleSHUFImmediate(), llvm::ISD::isBuildVectorAllOnes(), llvm::ISD::isBuildVectorAllZeros(), llvm::X86::isMOVHLPSMask(), llvm::X86::isMOVHPMask(), llvm::X86::isMOVLHPSMask(), llvm::X86::isMOVLPMask(), llvm::X86::isMOVSMask(), llvm::SDOperand::isOperand(), llvm::X86::isPSHUFDMask(), isPSHUFHW_PSHUFLWMask(), llvm::X86::isPSHUFHWMask(), llvm::X86::isPSHUFLWMask(), isRotateAndMask(), llvm::X86::isSHUFPMask(), llvm::X86::isSplatMask(), llvm::PPC::isSplatShuffleMask(), llvm::X86::isUNPCKHMask(), llvm::X86::isUNPCKL_v_undef_Mask(), llvm::X86::isUNPCKLMask(), isVMerge(), llvm::PPC::isVSLDOIShuffleMask(), and llvm::SelectionDAG::UpdateNodeOperands().

unsigned llvm::SDNode::getNumValues (  )  const [inline]

getNumValues - Return the number of values defined/returned by this operator.

Definition at line 751 of file SelectionDAGNodes.h.

Referenced by CountResults(), dump(), hasNUsesOfValue(), llvm::PPCTargetLowering::LowerCallTo(), llvm::X86TargetLowering::LowerOperation(), llvm::SelectionDAG::ReplaceAllUsesOfValueWith(), llvm::SelectionDAG::ReplaceAllUsesWith(), and llvm::SelectionDAGLowering::visitTargetIntrinsic().

unsigned llvm::SDNode::getOpcode (  )  const [inline]

Definition at line 705 of file SelectionDAGNodes.h.

Referenced by llvm::VTSDNode::classof(), llvm::CondCodeSDNode::classof(), llvm::ExternalSymbolSDNode::classof(), llvm::RegisterSDNode::classof(), llvm::SrcValueSDNode::classof(), llvm::BasicBlockSDNode::classof(), llvm::ConstantPoolSDNode::classof(), llvm::FrameIndexSDNode::classof(), llvm::GlobalAddressSDNode::classof(), llvm::ConstantFPSDNode::classof(), llvm::ConstantSDNode::classof(), llvm::StringSDNode::classof(), llvm::PPCHazardRecognizer970::EmitInstruction(), llvm::ScheduleDAG::EmitNode(), FindCallEndFromCallStart(), FindCallStartFromCallEnd(), llvm::PPCHazardRecognizer970::getHazardType(), llvm::SDOperand::getOpcode(), getOperationName(), llvm::ISD::isBuildVectorAllOnes(), llvm::ISD::isBuildVectorAllZeros(), isIntImmediate(), isInvertibleForFree(), llvm::X86::isMOVHLPSMask(), llvm::X86::isMOVHPMask(), llvm::X86::isMOVLHPSMask(), llvm::X86::isMOVLPMask(), llvm::X86::isMOVSMask(), isOpcWithIntImmediate(), llvm::X86::isPSHUFDMask(), isPSHUFHW_PSHUFLWMask(), llvm::X86::isPSHUFHWMask(), llvm::X86::isPSHUFLWMask(), isRotateAndMask(), llvm::X86::isSHUFPMask(), llvm::X86::isSplatMask(), llvm::PPC::isSplatShuffleMask(), llvm::X86::isUNPCKHMask(), llvm::X86::isUNPCKL_v_undef_Mask(), llvm::X86::isUNPCKLMask(), isVMerge(), llvm::PPC::isVSLDOIShuffleMask(), and llvm::PPCTargetLowering::PerformDAGCombine().

const SDOperand& llvm::SDNode::getOperand ( unsigned  Num  )  const [inline]

Definition at line 739 of file SelectionDAGNodes.h.

Referenced by CountOperands(), dump(), DumpNodes(), llvm::PPCHazardRecognizer970::EmitInstruction(), llvm::ScheduleDAG::EmitNode(), FindCallStartFromCallEnd(), llvm::PPC::get_VSPLTI_elt(), GetConstantBuildVectorBits(), llvm::PPCHazardRecognizer970::getHazardType(), llvm::SelectionDAG::getNode(), llvm::SDOperand::getOperand(), getOperationName(), llvm::X86::getShufflePSHUFHWImmediate(), llvm::X86::getShufflePSHUFLWImmediate(), llvm::X86::getShuffleSHUFImmediate(), llvm::HandleSDNode::getValue(), llvm::PPC::getVSPLTImmediate(), llvm::ISD::isBuildVectorAllOnes(), llvm::ISD::isBuildVectorAllZeros(), llvm::X86::isMOVHLPSMask(), llvm::X86::isMOVHPMask(), llvm::X86::isMOVLHPSMask(), llvm::X86::isMOVLPMask(), llvm::X86::isMOVSMask(), isOpcWithIntImmediate(), llvm::SDOperand::isOperand(), llvm::X86::isPSHUFDMask(), isPSHUFHW_PSHUFLWMask(), llvm::X86::isPSHUFHWMask(), llvm::X86::isPSHUFLWMask(), isRotateAndMask(), llvm::X86::isSHUFPMask(), llvm::X86::isSplatMask(), llvm::PPC::isSplatShuffleMask(), llvm::X86::isUNPCKHMask(), llvm::X86::isUNPCKL_v_undef_Mask(), llvm::X86::isUNPCKLMask(), isVMerge(), llvm::PPC::isVPKUHUMShuffleMask(), llvm::PPC::isVPKUWUMShuffleMask(), llvm::PPC::isVSLDOIShuffleMask(), llvm::SDNodeIterator::operator *(), llvm::PPCTargetLowering::PerformDAGCombine(), and llvm::SelectionDAG::UpdateNodeOperands().

const char * SDNode::getOperationName ( const SelectionDAG G = 0  )  const

getOperationName - Return the opcode of this operation for printing.

Definition at line 2654 of file SelectionDAG.cpp.

References llvm::ISD::ADD, llvm::ISD::ADDC, llvm::ISD::ADDE, llvm::ISD::AND, llvm::ISD::ANY_EXTEND, llvm::ISD::AssertSext, llvm::ISD::AssertZext, llvm::ISD::BasicBlock, llvm::ISD::BIT_CONVERT, llvm::ISD::BR, llvm::ISD::BR_CC, llvm::ISD::BRCOND, llvm::ISD::BSWAP, llvm::ISD::BUILD_PAIR, llvm::ISD::BUILD_VECTOR, llvm::ISD::BUILTIN_OP_END, llvm::ISD::CALLSEQ_END, llvm::ISD::CALLSEQ_START, llvm::ISD::CONDCODE, llvm::ISD::Constant, llvm::ISD::ConstantFP, llvm::ISD::ConstantPool, llvm::ISD::CopyFromReg, llvm::ISD::CopyToReg, llvm::ISD::CTLZ, llvm::ISD::CTPOP, llvm::ISD::CTTZ, llvm::ISD::DEBUG_LABEL, llvm::ISD::DEBUG_LOC, llvm::ISD::DYNAMIC_STACKALLOC, llvm::ISD::EntryToken, llvm::ISD::ExternalSymbol, llvm::ISD::EXTLOAD, llvm::ISD::EXTRACT_ELEMENT, llvm::ISD::EXTRACT_VECTOR_ELT, llvm::ISD::FABS, llvm::ISD::FADD, llvm::ISD::FCOPYSIGN, llvm::ISD::FCOS, llvm::ISD::FDIV, llvm::ISD::FMUL, llvm::ISD::FNEG, llvm::ISD::FORMAL_ARGUMENTS, llvm::ISD::FP_EXTEND, llvm::ISD::FP_ROUND, llvm::ISD::FP_ROUND_INREG, llvm::ISD::FP_TO_SINT, llvm::ISD::FP_TO_UINT, llvm::ISD::FrameIndex, llvm::ISD::FREM, llvm::ISD::FSIN, llvm::ISD::FSQRT, llvm::ISD::FSUB, G, llvm::Intrinsic::getName(), llvm::TargetInstrInfo::getName(), getOpcode(), getOperand(), llvm::TargetLowering::getTargetNodeName(), llvm::ISD::GlobalAddress, llvm::ISD::HANDLENODE, llvm::ISD::INLINEASM, llvm::ISD::INSERT_VECTOR_ELT, llvm::ISD::INTRINSIC_VOID, llvm::ISD::INTRINSIC_W_CHAIN, llvm::ISD::INTRINSIC_WO_CHAIN, llvm::ISD::LOAD, llvm::ISD::LOCATION, llvm::ISD::MEMCPY, llvm::ISD::MEMMOVE, llvm::ISD::MEMSET, llvm::ISD::MERGE_VALUES, llvm::ISD::MUL, llvm::ISD::MULHS, llvm::ISD::MULHU, Name, llvm::ISD::OR, llvm::ISD::PCMARKER, llvm::ISD::READCYCLECOUNTER, llvm::ISD::Register, llvm::ISD::RET, llvm::ISD::ROTL, llvm::ISD::ROTR, llvm::ISD::SCALAR_TO_VECTOR, llvm::ISD::SDIV, llvm::ISD::SELECT, llvm::ISD::SELECT_CC, llvm::ISD::SETCC, llvm::ISD::SETEQ, llvm::ISD::SETGE, llvm::ISD::SETGT, llvm::ISD::SETLE, llvm::ISD::SETLT, llvm::ISD::SETNE, llvm::ISD::SETO, llvm::ISD::SETOEQ, llvm::ISD::SETOGE, llvm::ISD::SETOGT, llvm::ISD::SETOLE, llvm::ISD::SETOLT, llvm::ISD::SETONE, llvm::ISD::SETUEQ, llvm::ISD::SETUGE, llvm::ISD::SETUGT, llvm::ISD::SETULE, llvm::ISD::SETULT, llvm::ISD::SETUNE, llvm::ISD::SETUO, llvm::ISD::SEXTLOAD, llvm::ISD::SHL, llvm::ISD::SHL_PARTS, llvm::ISD::SIGN_EXTEND, llvm::ISD::SIGN_EXTEND_INREG, llvm::ISD::SINT_TO_FP, llvm::ISD::SRA, llvm::ISD::SRA_PARTS, llvm::ISD::SRCVALUE, llvm::ISD::SREM, llvm::ISD::SRL_PARTS, llvm::ISD::STACKRESTORE, llvm::ISD::STACKSAVE, llvm::ISD::STORE, llvm::ISD::STRING, llvm::ISD::SUB, llvm::ISD::SUBC, llvm::ISD::SUBE, llvm::ISD::TargetConstant, llvm::ISD::TargetConstantFP, llvm::ISD::TargetConstantPool, llvm::ISD::TargetExternalSymbol, llvm::ISD::TargetFrameIndex, llvm::ISD::TargetGlobalAddress, TII, TLI, llvm::ISD::TokenFactor, llvm::ISD::TRUNCATE, llvm::ISD::TRUNCSTORE, llvm::ISD::UDIV, llvm::ISD::UINT_TO_FP, llvm::ISD::UNDEF, llvm::ISD::UREM, llvm::ISD::VAARG, llvm::ISD::VACOPY, llvm::ISD::VADD, llvm::ISD::VAEND, llvm::ISD::VALUETYPE, llvm::ISD::VAND, llvm::ISD::VASTART, llvm::ISD::VBIT_CONVERT, llvm::ISD::VBUILD_VECTOR, llvm::ISD::VECTOR_SHUFFLE, llvm::ISD::VEXTRACT_VECTOR_ELT, llvm::ISD::VINSERT_VECTOR_ELT, llvm::ISD::VLOAD, llvm::ISD::VMUL, llvm::ISD::VOR, llvm::ISD::VSDIV, llvm::ISD::VSELECT, llvm::ISD::VSUB, llvm::ISD::VUDIV, llvm::ISD::VVECTOR_SHUFFLE, llvm::ISD::VXOR, llvm::ISD::XOR, llvm::ISD::ZERO_EXTEND, and llvm::ISD::ZEXTLOAD.

Referenced by dump().

unsigned llvm::SDNode::getTargetOpcode (  )  const [inline]

Definition at line 707 of file SelectionDAGNodes.h.

References llvm::ISD::BUILTIN_OP_END, and isTargetOpcode().

Referenced by llvm::ScheduleDAG::EmitNode(), and llvm::SDOperand::getTargetOpcode().

MVT::ValueType llvm::SDNode::getValueType ( unsigned  ResNo  )  const [inline]

getValueType - Return the type of a specified result.

Definition at line 755 of file SelectionDAGNodes.h.

Referenced by llvm::TargetLowering::ComputeMaskedBits(), CountResults(), dump(), llvm::ScheduleDAG::EmitNode(), llvm::ConstantSDNode::getSignExtended(), llvm::SDOperand::getValueType(), llvm::ConstantSDNode::isAllOnesValue(), isRotateAndMask(), llvm::X86TargetLowering::LowerOperation(), and llvm::PPCTargetLowering::PerformDAGCombine().

static MVT::ValueType* llvm::SDNode::getValueTypeList ( MVT::ValueType  VT  )  [static, protected]

getValueTypeList - Return a pointer to the specified value type.

Referenced by SDNode(), and setValueTypes().

bool SDNode::hasNUsesOfValue ( unsigned  NUses,
unsigned  Value 
) const

hasNUsesOfValue - Return true if there are exactly NUSES uses of the indicated value. This method ignores uses of other values defined by this operation.

Definition at line 2595 of file SelectionDAG.cpp.

References E, getNumValues(), and use_size().

Referenced by llvm::SDOperand::hasOneUse().

bool llvm::SDNode::hasOneUse (  )  const [inline]

Definition at line 714 of file SelectionDAGNodes.h.

Referenced by DumpNodes(), isInvertibleForFree(), and isOneUseSetCC().

bool SDNode::isOnlyUse ( SDNode N  )  const

Definition at line 2626 of file SelectionDAG.cpp.

References E, use_begin(), and use_end().

bool SDNode::isOperand ( SDNode N  )  const

Definition at line 2647 of file SelectionDAG.cpp.

References NumOperands, OperandList, and llvm::SDOperand::Val.

bool llvm::SDNode::isTargetOpcode (  )  const [inline]

Definition at line 706 of file SelectionDAGNodes.h.

References llvm::ISD::BUILTIN_OP_END.

Referenced by llvm::ScheduleDAG::EmitNode(), getTargetOpcode(), and llvm::SDOperand::isTargetOpcode().

void llvm::SDNode::MorphNodeTo ( unsigned  Opc  )  [inline, protected]

MorphNodeTo - This clears the return value and operands list, and sets the opcode of the node to the specified value. This should only be used by the SelectionDAG class.

Definition at line 875 of file SelectionDAGNodes.h.

References E, I, op_begin(), and op_end().

Referenced by llvm::SelectionDAG::SelectNodeTo(), and llvm::HandleSDNode::~HandleSDNode().

op_iterator llvm::SDNode::op_begin (  )  const [inline]

Definition at line 744 of file SelectionDAGNodes.h.

Referenced by MorphNodeTo().

op_iterator llvm::SDNode::op_end (  )  const [inline]

Definition at line 745 of file SelectionDAGNodes.h.

Referenced by MorphNodeTo(), llvm::SelectionDAGLowering::visitExtractElement(), llvm::SelectionDAGLowering::visitInsertElement(), and llvm::SelectionDAGLowering::visitShuffleVector().

void llvm::SDNode::removeUser ( SDNode User  )  [inline, protected]

Definition at line 1004 of file SelectionDAGNodes.h.

References User.

Referenced by llvm::SelectionDAG::ReplaceAllUsesOfValueWith(), llvm::SelectionDAG::ReplaceAllUsesWith(), and llvm::SelectionDAG::UpdateNodeOperands().

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1,
SDOperand  Op2,
SDOperand  Op3,
SDOperand  Op4,
SDOperand  Op5,
SDOperand  Op6,
SDOperand  Op7 
) [inline, protected]

Definition at line 982 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1,
SDOperand  Op2,
SDOperand  Op3,
SDOperand  Op4,
SDOperand  Op5,
SDOperand  Op6 
) [inline, protected]

Definition at line 965 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1,
SDOperand  Op2,
SDOperand  Op3,
SDOperand  Op4,
SDOperand  Op5 
) [inline, protected]

Definition at line 950 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1,
SDOperand  Op2,
SDOperand  Op3,
SDOperand  Op4 
) [inline, protected]

Definition at line 936 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1,
SDOperand  Op2,
SDOperand  Op3 
) [inline, protected]

Definition at line 925 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1,
SDOperand  Op2 
) [inline, protected]

Definition at line 915 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0,
SDOperand  Op1 
) [inline, protected]

Definition at line 907 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

void llvm::SDNode::setOperands ( SDOperand  Op0  )  [inline, protected]

Definition at line 900 of file SelectionDAGNodes.h.

References Uses, and llvm::SDOperand::Val.

Referenced by llvm::SelectionDAG::SelectNodeTo().

void llvm::SDNode::setValueTypes ( MVT::ValueType List,
unsigned  NumVal 
) [inline, protected]

Definition at line 894 of file SelectionDAGNodes.h.

void llvm::SDNode::setValueTypes ( MVT::ValueType  VT  )  [inline, protected]

Definition at line 889 of file SelectionDAGNodes.h.

References getValueTypeList().

Referenced by llvm::SelectionDAG::getNode(), and llvm::SelectionDAG::SelectNodeTo().

use_iterator llvm::SDNode::use_begin (  )  const [inline]

Definition at line 721 of file SelectionDAGNodes.h.

Referenced by llvm::ScheduleDAG::EmitNode(), isOnlyUse(), llvm::PPCTargetLowering::PerformDAGCombine(), llvm::SelectionDAG::ReplaceAllUsesOfValueWith(), and llvm::SelectionDAG::ReplaceAllUsesWith().

bool llvm::SDNode::use_empty (  )  const [inline]

Definition at line 713 of file SelectionDAGNodes.h.

Referenced by llvm::SelectionDAG::DeleteNode(), FindCallEndFromCallStart(), llvm::SelectionDAG::RemoveDeadNodes(), and llvm::SelectionDAG::ReplaceAllUsesWith().

use_iterator llvm::SDNode::use_end (  )  const [inline]

Definition at line 722 of file SelectionDAGNodes.h.

Referenced by llvm::ScheduleDAG::EmitNode(), isOnlyUse(), llvm::PPCTargetLowering::PerformDAGCombine(), and llvm::SelectionDAG::ReplaceAllUsesOfValueWith().

size_t llvm::SDNode::use_size (  )  const [inline]

Definition at line 712 of file SelectionDAGNodes.h.

Referenced by hasNUsesOfValue().

value_iterator llvm::SDNode::value_begin (  )  const [inline]

Definition at line 761 of file SelectionDAGNodes.h.

value_iterator llvm::SDNode::value_end (  )  const [inline]

Definition at line 762 of file SelectionDAGNodes.h.


Friends And Related Function Documentation

friend struct ilist_traits< SDNode > [friend]

Definition at line 692 of file SelectionDAGNodes.h.

friend class SelectionDAG [friend]

Reimplemented in llvm::StringSDNode, llvm::ConstantSDNode, llvm::ConstantFPSDNode, llvm::GlobalAddressSDNode, llvm::FrameIndexSDNode, llvm::ConstantPoolSDNode, llvm::BasicBlockSDNode, llvm::SrcValueSDNode, llvm::RegisterSDNode, llvm::ExternalSymbolSDNode, llvm::CondCodeSDNode, and llvm::VTSDNode.

Definition at line 773 of file SelectionDAGNodes.h.


The documentation for this class was generated from the following files: