LLVM API Documentation

Public Types | Public Member Functions
llvm::GCFunctionInfo Class Reference

#include <GCMetadata.h>

List of all members.

Public Types

typedef std::vector< GCPoint >
::iterator 
iterator
typedef std::vector< GCRoot >
::iterator 
roots_iterator
typedef std::vector< GCRoot >
::const_iterator 
live_iterator

Public Member Functions

 GCFunctionInfo (const Function &F, GCStrategy &S)
 ~GCFunctionInfo ()
const FunctiongetFunction () const
GCStrategygetStrategy ()
void addStackRoot (int Num, const Constant *Metadata)
roots_iterator removeStackRoot (roots_iterator position)
 removeStackRoot - Removes a root.
void addSafePoint (GC::PointKind Kind, MCSymbol *Label, DebugLoc DL)
uint64_t getFrameSize () const
void setFrameSize (uint64_t S)
iterator begin ()
iterator end ()
size_t size () const
roots_iterator roots_begin ()
roots_iterator roots_end ()
size_t roots_size () const
live_iterator live_begin (const iterator &p)
live_iterator live_end (const iterator &p)
size_t live_size (const iterator &p) const

Detailed Description

GCFunctionInfo - Garbage collection metadata for a single function.

Definition at line 85 of file GCMetadata.h.


Member Typedef Documentation

Definition at line 87 of file GCMetadata.h.

typedef std::vector<GCRoot>::const_iterator llvm::GCFunctionInfo::live_iterator

Definition at line 89 of file GCMetadata.h.

Definition at line 88 of file GCMetadata.h.


Constructor & Destructor Documentation

Definition at line 53 of file GCMetadata.cpp.


Member Function Documentation

void llvm::GCFunctionInfo::addSafePoint ( GC::PointKind  Kind,
MCSymbol Label,
DebugLoc  DL 
) [inline]

addSafePoint - Notes the existence of a safe point. Num is the ID of the label just prior to the safe point (if the code generator is using MachineModuleInfo).

Definition at line 135 of file GCMetadata.h.

void llvm::GCFunctionInfo::addStackRoot ( int  Num,
const Constant Metadata 
) [inline]

addStackRoot - Registers a root that lives on the stack. Num is the stack object ID for the alloca (if the code generator is

Definition at line 123 of file GCMetadata.h.

begin/end - Iterators for safe points.

Definition at line 146 of file GCMetadata.h.

Definition at line 147 of file GCMetadata.h.

uint64_t llvm::GCFunctionInfo::getFrameSize ( ) const [inline]

getFrameSize/setFrameSize - Records the function's frame size.

Definition at line 141 of file GCMetadata.h.

getFunction - Return the function to which this metadata applies.

Definition at line 114 of file GCMetadata.h.

getStrategy - Return the GC strategy for the function.

Definition at line 118 of file GCMetadata.h.

live_begin/live_end - Iterators for live roots at a given safe point.

Definition at line 158 of file GCMetadata.h.

References roots_begin().

Definition at line 159 of file GCMetadata.h.

References roots_end().

size_t llvm::GCFunctionInfo::live_size ( const iterator p) const [inline]

Definition at line 160 of file GCMetadata.h.

References roots_size().

removeStackRoot - Removes a root.

Definition at line 128 of file GCMetadata.h.

roots_begin/roots_end - Iterators for all roots in the function.

Definition at line 152 of file GCMetadata.h.

Referenced by live_begin().

Definition at line 153 of file GCMetadata.h.

Referenced by live_end().

size_t llvm::GCFunctionInfo::roots_size ( ) const [inline]

Definition at line 154 of file GCMetadata.h.

Referenced by live_size().

void llvm::GCFunctionInfo::setFrameSize ( uint64_t  S) [inline]

Definition at line 142 of file GCMetadata.h.

size_t llvm::GCFunctionInfo::size ( ) const [inline]

Definition at line 148 of file GCMetadata.h.


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