LLVM  8.0.1
Public Member Functions | List of all members
llvm::Statepoint Class Reference

A specialization of it's base class for read-write access to a gc.statepoint. More...

#include "llvm/IR/Statepoint.h"

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

Public Member Functions

 Statepoint (Instruction *I)
 
 Statepoint (CallSite CS)
 
- Public Member Functions inherited from llvm::StatepointBase< Function, Instruction, Value, CallSite >
void * operator new (size_t, unsigned)=delete
 
void * operator new (size_t s)=delete
 
 operator bool () const
 
CallSite getCallSite () const
 Return the underlying CallSite. More...
 
uint64_t getFlags () const
 
uint64_t getID () const
 Return the ID associated with this statepoint. More...
 
uint32_t getNumPatchBytes () const
 Return the number of patchable bytes associated with this statepoint. More...
 
ValuegetCalledValue () const
 Return the value actually being called or invoked. More...
 
InstructiongetInstruction () const
 
FunctiongetCalledFunction () const
 Return the function being called if this is a direct call, otherwise return null (if it's an indirect call). More...
 
FunctiongetCaller () const
 Return the caller function for this statepoint. More...
 
bool doesNotThrow () const
 Determine if the statepoint cannot unwind. More...
 
TypegetActualReturnType () const
 Return the type of the value returned by the call underlying the statepoint. More...
 
int getNumCallArgs () const
 Number of arguments to be passed to the actual callee. More...
 
size_t arg_size () const
 
CallSite ::arg_iterator arg_begin () const
 
CallSite ::arg_iterator arg_end () const
 
ValuegetArgument (unsigned Index)
 
iterator_range< arg_iteratorcall_args () const
 range adapter for call arguments More...
 
bool paramHasAttr (unsigned i, Attribute::AttrKind A) const
 Return true if the call or the callee has the given attribute. More...
 
int getNumTotalGCTransitionArgs () const
 Number of GC transition args. More...
 
CallSite ::arg_iterator gc_transition_args_begin () const
 
CallSite ::arg_iterator gc_transition_args_end () const
 
iterator_range< arg_iteratorgc_transition_args () const
 range adapter for GC transition arguments More...
 
int getNumTotalVMSArgs () const
 Number of additional arguments excluding those intended for garbage collection. More...
 
CallSite ::arg_iterator deopt_begin () const
 
CallSite ::arg_iterator deopt_end () const
 
iterator_range< arg_iteratordeopt_operands () const
 range adapter for vm state arguments More...
 
CallSite ::arg_iterator gc_args_begin () const
 
CallSite ::arg_iterator gc_args_end () const
 
unsigned gcArgsStartIdx () const
 
iterator_range< arg_iteratorgc_args () const
 range adapter for gc arguments More...
 
std::vector< const GCRelocateInst *> getRelocates () const
 Get list of all gc reloactes linked to this statepoint May contain several relocations for the same base/derived pair. More...
 
const GCResultInstgetGCResult () const
 Get the experimental_gc_result call tied to this statepoint. More...
 
void verify ()
 Asserts if this statepoint is malformed. More...
 

Additional Inherited Members

- Public Types inherited from llvm::StatepointBase< Function, Instruction, Value, CallSite >
enum  
 
using arg_iterator = typename CallSite ::arg_iterator
 
- Protected Member Functions inherited from llvm::StatepointBase< Function, Instruction, Value, CallSite >
 StatepointBase (Instruction *I)
 
 StatepointBase (CallSite CS)
 

Detailed Description

A specialization of it's base class for read-write access to a gc.statepoint.

Definition at line 319 of file Statepoint.h.

Constructor & Destructor Documentation

◆ Statepoint() [1/2]

llvm::Statepoint::Statepoint ( Instruction I)
inlineexplicit

Definition at line 324 of file Statepoint.h.

◆ Statepoint() [2/2]

llvm::Statepoint::Statepoint ( CallSite  CS)
inlineexplicit

Definition at line 325 of file Statepoint.h.


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