LLVM  4.0.0
Public Types | Public Member Functions | List of all members
llvm::StackMapOpers Class Reference

MI-level stackmap operands. More...

#include <StackMaps.h>

Public Types

enum  { IDPos, NBytesPos }
 Enumerate the meta operands. More...
 

Public Member Functions

 StackMapOpers (const MachineInstr *MI)
 
uint64_t getID () const
 Return the ID for the given stackmap. More...
 
uint32_t getNumPatchBytes () const
 Return the number of patchable bytes the given stackmap should emit. More...
 
unsigned getVarIdx () const
 Get the operand index of the variable list of non-argument operands. More...
 

Detailed Description

MI-level stackmap operands.

MI stackmap operations take the form: <id>, <numBytes>, live args...

Definition at line 29 of file StackMaps.h.

Member Enumeration Documentation

anonymous enum

Enumerate the meta operands.

Enumerator
IDPos 
NBytesPos 

Definition at line 32 of file StackMaps.h.

Constructor & Destructor Documentation

StackMapOpers::StackMapOpers ( const MachineInstr MI)
explicit

Definition at line 38 of file StackMaps.cpp.

References assert(), llvm::MachineInstr::getNumOperands(), and getVarIdx().

Member Function Documentation

uint64_t llvm::StackMapOpers::getID ( ) const
inline

Return the ID for the given stackmap.

Definition at line 41 of file StackMaps.h.

References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), and IDPos.

uint32_t llvm::StackMapOpers::getNumPatchBytes ( ) const
inline

Return the number of patchable bytes the given stackmap should emit.

Definition at line 44 of file StackMaps.h.

References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), and NBytesPos.

Referenced by llvm::AArch64InstrInfo::getInstSizeInBytes(), and llvm::PPCInstrInfo::getInstSizeInBytes().

unsigned llvm::StackMapOpers::getVarIdx ( ) const
inline

Get the operand index of the variable list of non-argument operands.

These hold the "live state".

Definition at line 50 of file StackMaps.h.

Referenced by foldPatchpoint(), and StackMapOpers().


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