llvm::GCFunctionInfo

Garbage collection metadata for a single function. Currently, this information only applies to GCStrategies which use GCRoot.

Synopsis

Declared in <llvm/CodeGen/GCMetadata.h>

class GCFunctionInfo;

Type Aliases

NameDescription
iterator Iterator over safe points in this function.
live_iterator Const iterator over roots treated as live at a safe point.
roots_iterator Iterator over all GC roots in this function.

Member Functions

NameDescription
GCFunctionInfo [constructor]Construct GC metadata for function F using strategy S.
~GCFunctionInfo [destructor]Destroy this function's GC metadata.
addSafePoint 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).
addStackRoot Register a root that lives on the stack.
begin begin/end - Iterators for safe points.
end Return an iterator past the last safe point.
getFrameSize getFrameSize/setFrameSize - Records the function's frame size.
getFunction getFunction - Return the function to which this metadata applies.
getStrategy getStrategy - Return the GC strategy for the function.
invalidate Handle invalidation explicitly.
live_begin live_begin/live_end - Iterators for live roots at a given safe point.
live_end Return an iterator past the last live root at safe point p.
live_size Return the number of live roots at safe point p.
removeStackRoot removeStackRoot - Removes a root.
roots_begin roots_begin/roots_end - Iterators for all roots in the function.
roots_end Return an iterator past the last root in the function.
roots_size Return the number of roots in the function.
setFrameSize Record the function's frame size in bytes.
size Return the number of safe points in this function.