LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::SelectionDAGNode Class Reference

#include <SelectionDAG.h>

Collaboration diagram for llvm::SelectionDAGNode:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SelectionDAGNode (ISD::NodeType NT, MVT::ValueType VT, MachineBasicBlock *bb=0)
 SelectionDAGNode (ISD::NodeType NT, MVT::ValueType VT, MachineBasicBlock *bb, SelectionDAGNode *N)
 SelectionDAGNode (ISD::NodeType NT, MVT::ValueType VT, MachineBasicBlock *bb, SelectionDAGNode *N1, SelectionDAGNode *N2)
 SelectionDAGNode (ISD::NodeType NT, MVT::ValueType VT, MachineBasicBlock *bb, SelectionDAGNode *N1, SelectionDAGNode *N2, SelectionDAGNode *N3)
 ~SelectionDAGNode ()
void setNode (ISD::NodeType NT, MachineBasicBlock *bb)
void setNode (ISD::NodeType NT, MachineBasicBlock *bb, SelectionDAGNode *N)
void setNode (ISD::NodeType NT, MachineBasicBlock *bb, SelectionDAGNode *N1, SelectionDAGNode *N2)
ISD::NodeType getNodeType () const
MVT::ValueType getValueType () const
MachineBasicBlockgetBB () const
SelectionDAGNodegetUse (unsigned Num)
template<class Type>
TypegetValue (unsigned Code) const
template<class Type>
TypehasValue (unsigned Code) const
void addValue (SelectionDAGReducedValue *New)
unsigned getPatternFor (unsigned Slot) const
unsigned getCostFor (unsigned Slot) const
void setPatternCostFor (unsigned Slot, unsigned Pattern, unsigned Cost, unsigned NumSlots)
void dump () const

Detailed Description

SelectionDAGNode - Represents one node in the selection DAG.

Definition at line 181 of file SelectionDAG.h.


Constructor & Destructor Documentation

llvm::SelectionDAGNode::SelectionDAGNode ISD::NodeType  NT,
MVT::ValueType  VT,
MachineBasicBlock bb = 0
[inline]
 

Definition at line 194 of file SelectionDAG.h.

llvm::SelectionDAGNode::SelectionDAGNode ISD::NodeType  NT,
MVT::ValueType  VT,
MachineBasicBlock bb,
SelectionDAGNode N
[inline]
 

Definition at line 198 of file SelectionDAG.h.

References llvm::ISD::ProtoNode.

llvm::SelectionDAGNode::SelectionDAGNode ISD::NodeType  NT,
MVT::ValueType  VT,
MachineBasicBlock bb,
SelectionDAGNode N1,
SelectionDAGNode N2
[inline]
 

Definition at line 204 of file SelectionDAG.h.

References llvm::ISD::ProtoNode.

llvm::SelectionDAGNode::SelectionDAGNode ISD::NodeType  NT,
MVT::ValueType  VT,
MachineBasicBlock bb,
SelectionDAGNode N1,
SelectionDAGNode N2,
SelectionDAGNode N3
[inline]
 

Definition at line 210 of file SelectionDAG.h.

References llvm::ISD::ProtoNode.

llvm::SelectionDAGNode::~SelectionDAGNode  )  [inline]
 

Definition at line 218 of file SelectionDAG.h.


Member Function Documentation

void llvm::SelectionDAGNode::addValue SelectionDAGReducedValue New  )  [inline]
 

Definition at line 269 of file SelectionDAG.h.

References llvm::SelectionDAGReducedValue::getNext(), and llvm::SelectionDAGReducedValue::setNext().

void SelectionDAGNode::dump  )  const
 

Definition at line 55 of file SelectionDAG.cpp.

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

MachineBasicBlock* llvm::SelectionDAGNode::getBB  )  const [inline]
 

Definition at line 240 of file SelectionDAG.h.

unsigned llvm::SelectionDAGNode::getCostFor unsigned  Slot  )  const [inline]
 

getCostFor - Return the cost to compute the value corresponding to Slot.

Definition at line 288 of file SelectionDAG.h.

ISD::NodeType llvm::SelectionDAGNode::getNodeType  )  const [inline]
 

Definition at line 238 of file SelectionDAG.h.

unsigned llvm::SelectionDAGNode::getPatternFor unsigned  Slot  )  const [inline]
 

getPatternFor - Return the pattern selected to compute the specified slot, or zero if there is no pattern yet.

Definition at line 282 of file SelectionDAG.h.

SelectionDAGNode* llvm::SelectionDAGNode::getUse unsigned  Num  )  [inline]
 

Definition at line 242 of file SelectionDAG.h.

template<class Type>
Type* llvm::SelectionDAGNode::getValue unsigned  Code  )  const [inline]
 

Definition at line 248 of file SelectionDAG.h.

References llvm::SelectionDAGReducedValue::getNext(), and llvm::SelectionDAGReducedValue::getValueCode().

MVT::ValueType llvm::SelectionDAGNode::getValueType  )  const [inline]
 

Definition at line 239 of file SelectionDAG.h.

template<class Type>
Type* llvm::SelectionDAGNode::hasValue unsigned  Code  )  const [inline]
 

Definition at line 259 of file SelectionDAG.h.

References llvm::SelectionDAGReducedValue::getNext(), and llvm::SelectionDAGReducedValue::getValueCode().

void llvm::SelectionDAGNode::setNode ISD::NodeType  NT,
MachineBasicBlock bb,
SelectionDAGNode N1,
SelectionDAGNode N2
[inline]
 

Definition at line 228 of file SelectionDAG.h.

References llvm::ISD::ProtoNode.

void llvm::SelectionDAGNode::setNode ISD::NodeType  NT,
MachineBasicBlock bb,
SelectionDAGNode N
[inline]
 

Definition at line 224 of file SelectionDAG.h.

References llvm::ISD::ProtoNode.

void llvm::SelectionDAGNode::setNode ISD::NodeType  NT,
MachineBasicBlock bb
[inline]
 

Definition at line 220 of file SelectionDAG.h.

References llvm::ISD::ProtoNode.

Referenced by llvm::SelectionDAGBuilder::visitAdd(), llvm::SelectionDAGBuilder::visitAnd(), llvm::SelectionDAGBuilder::visitLoad(), llvm::SelectionDAGBuilder::visitMul(), llvm::SelectionDAGBuilder::visitOr(), llvm::SelectionDAGBuilder::visitSetEQ(), llvm::SelectionDAGBuilder::visitSub(), and llvm::SelectionDAGBuilder::visitXor().

void llvm::SelectionDAGNode::setPatternCostFor unsigned  Slot,
unsigned  Pattern,
unsigned  Cost,
unsigned  NumSlots
[inline]
 

setPatternCostFor - Sets the pattern and the cost for the specified slot to the specified values. This allocates the Costs vector if necessary, so you must specify the maximum number of slots that may be used.

Definition at line 296 of file SelectionDAG.h.


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