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::CallGraphNode Class Reference

#include <CallGraph.h>

Collaboration diagram for llvm::CallGraphNode:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< CallGraphNode
* >::iterator 
iterator
typedef std::vector< CallGraphNode
* >::const_iterator 
const_iterator

Public Member Functions

FunctiongetFunction () const
iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
unsigned size () const
CallGraphNodeoperator[] (unsigned i) const
void dump () const
void print (std::ostream &OS) const
void removeAllCalledFunctions ()
void addCalledFunction (CallGraphNode *M)
void removeCallEdgeTo (CallGraphNode *Callee)
void removeAnyCallEdgeTo (CallGraphNode *Callee)

Friends

class CallGraph

Detailed Description

Definition at line 201 of file CallGraph.h.


Member Typedef Documentation

typedef std::vector<CallGraphNode*>::const_iterator llvm::CallGraphNode::const_iterator
 

Definition at line 212 of file CallGraph.h.

typedef std::vector<CallGraphNode*>::iterator llvm::CallGraphNode::iterator
 

Definition at line 211 of file CallGraph.h.


Member Function Documentation

void llvm::CallGraphNode::addCalledFunction CallGraphNode M  )  [inline]
 

addCalledFunction add a function to the list of functions called by this one.

Definition at line 245 of file CallGraph.h.

Referenced by InlineCallIfPossible().

const_iterator llvm::CallGraphNode::begin  )  const [inline]
 

Definition at line 219 of file CallGraph.h.

iterator llvm::CallGraphNode::begin  )  [inline]
 

Definition at line 217 of file CallGraph.h.

Referenced by llvm::GraphTraits< const CallGraphNode * >::child_begin(), llvm::GraphTraits< CallGraphNode * >::child_begin(), llvm::Inliner::doFinalization(), InlineCallIfPossible(), and print().

void CallGraphNode::dump  )  const
 

dump - Print out this call graph node.

Definition at line 143 of file CallGraph.cpp.

References print().

const_iterator llvm::CallGraphNode::end  )  const [inline]
 

Definition at line 220 of file CallGraph.h.

iterator llvm::CallGraphNode::end  )  [inline]
 

Definition at line 218 of file CallGraph.h.

Referenced by llvm::GraphTraits< const CallGraphNode * >::child_end(), llvm::GraphTraits< CallGraphNode * >::child_end(), llvm::Inliner::doFinalization(), InlineCallIfPossible(), and print().

Function* llvm::CallGraphNode::getFunction  )  const [inline]
 

Definition at line 215 of file CallGraph.h.

Referenced by llvm::Inliner::doFinalization(), print(), and llvm::CallGraph::removeFunctionFromModule().

CallGraphNode* llvm::CallGraphNode::operator[] unsigned  i  )  const [inline]
 

Definition at line 225 of file CallGraph.h.

void CallGraphNode::print std::ostream &  OS  )  const
 

Definition at line 129 of file CallGraph.cpp.

References begin(), E, end(), and getFunction().

Referenced by dump(), and llvm::CallGraph::print().

void llvm::CallGraphNode::removeAllCalledFunctions  )  [inline]
 

removeAllCalledFunctions - As the name implies, this removes all edges from this CallGraphNode to any functions it calls.

Definition at line 239 of file CallGraph.h.

void CallGraphNode::removeAnyCallEdgeTo CallGraphNode Callee  ) 
 

removeAnyCallEdgeTo - This method removes any call edges from this node to the specified callee function. This takes more time to execute than removeCallEdgeTo, so it should not be used unless necessary.

Definition at line 212 of file CallGraph.cpp.

Referenced by llvm::Inliner::doFinalization().

void CallGraphNode::removeCallEdgeTo CallGraphNode Callee  ) 
 

removeCallEdgeTo - This method removes a *single* edge to the specified callee function. Note that this method takes linear time, so it should be used sparingly.

Definition at line 199 of file CallGraph.cpp.

Referenced by llvm::Inliner::doFinalization(), and InlineCallIfPossible().

unsigned llvm::CallGraphNode::size  )  const [inline]
 

Definition at line 221 of file CallGraph.h.


Friends And Related Function Documentation

friend class CallGraph [friend]
 

Definition at line 260 of file CallGraph.h.


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