LLVM  6.0.0svn
Public Member Functions | Public Attributes | List of all members
llvm::SelectionDAGBuilder::StatepointLoweringInfo Struct Reference

Describes a gc.statepoint or a gc.statepoint like thing for the purposes of lowering into a STATEPOINT node. More...

#include "CodeGen/SelectionDAG/SelectionDAGBuilder.h"

Collaboration diagram for llvm::SelectionDAGBuilder::StatepointLoweringInfo:
Collaboration graph
[legend]

Public Member Functions

 StatepointLoweringInfo (SelectionDAG &DAG)
 

Public Attributes

SmallVector< const Value *, 16 > Bases
 Bases[i] is the base pointer for Ptrs[i]. More...
 
SmallVector< const Value *, 16 > Ptrs
 
SmallVector< const GCRelocateInst *, 16 > GCRelocates
 The set of gc.relocate calls associated with this gc.statepoint. More...
 
ArrayRef< const UseGCArgs
 The full list of gc arguments to the gc.statepoint being lowered. More...
 
const InstructionStatepointInstr = nullptr
 The gc.statepoint instruction. More...
 
ArrayRef< const UseGCTransitionArgs
 The list of gc transition arguments present in the gc.statepoint being lowered. More...
 
unsigned ID = -1
 The ID that the resulting STATEPOINT instruction has to report. More...
 
TargetLowering::CallLoweringInfo CLI
 Information regarding the underlying call instruction. More...
 
ArrayRef< const UseDeoptState
 The deoptimization state associated with this gc.statepoint call, if any. More...
 
uint64_t StatepointFlags = -1
 Flags associated with the meta arguments being lowered. More...
 
unsigned NumPatchBytes = -1
 The number of patchable bytes the call needs to get lowered into. More...
 
const BasicBlockEHPadBB = nullptr
 The exception handling unwind destination, in case this represents an invoke of gc.statepoint. More...
 

Detailed Description

Describes a gc.statepoint or a gc.statepoint like thing for the purposes of lowering into a STATEPOINT node.

Definition at line 734 of file SelectionDAGBuilder.h.

Constructor & Destructor Documentation

◆ StatepointLoweringInfo()

llvm::SelectionDAGBuilder::StatepointLoweringInfo::StatepointLoweringInfo ( SelectionDAG DAG)
inlineexplicit

Member Data Documentation

◆ Bases

SmallVector<const Value *, 16> llvm::SelectionDAGBuilder::StatepointLoweringInfo::Bases

Bases[i] is the base pointer for Ptrs[i].

Together they denote the set of gc pointers this STATEPOINT has to relocate.

Definition at line 737 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), and lowerStatepointMetaArgs().

◆ CLI

TargetLowering::CallLoweringInfo llvm::SelectionDAGBuilder::StatepointLoweringInfo::CLI

◆ DeoptState

ArrayRef<const Use> llvm::SelectionDAGBuilder::StatepointLoweringInfo::DeoptState

The deoptimization state associated with this gc.statepoint call, if any.

Definition at line 761 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerCallSiteWithDeoptBundleImpl(), and lowerStatepointMetaArgs().

◆ EHPadBB

const BasicBlock* llvm::SelectionDAGBuilder::StatepointLoweringInfo::EHPadBB = nullptr

The exception handling unwind destination, in case this represents an invoke of gc.statepoint.

Definition at line 771 of file SelectionDAGBuilder.h.

Referenced by lowerCallFromStatepointLoweringInfo(), and llvm::SelectionDAGBuilder::LowerCallSiteWithDeoptBundleImpl().

◆ GCArgs

ArrayRef<const Use> llvm::SelectionDAGBuilder::StatepointLoweringInfo::GCArgs

The full list of gc arguments to the gc.statepoint being lowered.

Definition at line 744 of file SelectionDAGBuilder.h.

Referenced by lowerStatepointMetaArgs().

◆ GCRelocates

SmallVector<const GCRelocateInst *, 16> llvm::SelectionDAGBuilder::StatepointLoweringInfo::GCRelocates

The set of gc.relocate calls associated with this gc.statepoint.

Definition at line 741 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), and lowerStatepointMetaArgs().

◆ GCTransitionArgs

ArrayRef<const Use> llvm::SelectionDAGBuilder::StatepointLoweringInfo::GCTransitionArgs

The list of gc transition arguments present in the gc.statepoint being lowered.

Definition at line 751 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT().

◆ ID

unsigned llvm::SelectionDAGBuilder::StatepointLoweringInfo::ID = -1

The ID that the resulting STATEPOINT instruction has to report.

Definition at line 754 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), and llvm::SelectionDAGBuilder::LowerCallSiteWithDeoptBundleImpl().

◆ NumPatchBytes

unsigned llvm::SelectionDAGBuilder::StatepointLoweringInfo::NumPatchBytes = -1

The number of patchable bytes the call needs to get lowered into.

Definition at line 767 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), and llvm::SelectionDAGBuilder::LowerCallSiteWithDeoptBundleImpl().

◆ Ptrs

SmallVector<const Value *, 16> llvm::SelectionDAGBuilder::StatepointLoweringInfo::Ptrs

◆ StatepointFlags

uint64_t llvm::SelectionDAGBuilder::StatepointLoweringInfo::StatepointFlags = -1

Flags associated with the meta arguments being lowered.

Definition at line 764 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), llvm::SelectionDAGBuilder::LowerCallSiteWithDeoptBundleImpl(), and lowerStatepointMetaArgs().

◆ StatepointInstr

const Instruction* llvm::SelectionDAGBuilder::StatepointLoweringInfo::StatepointInstr = nullptr

The gc.statepoint instruction.

Definition at line 747 of file SelectionDAGBuilder.h.

Referenced by llvm::SelectionDAGBuilder::LowerAsSTATEPOINT(), and lowerStatepointMetaArgs().


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