class LandingPadInst

Declaration

class LandingPadInst : public Instruction { /* full declaration omitted */ };

Declared at: llvm/include/llvm/IR/Instructions.h:2797

Inherits from: Instruction

Member Variables

Inherited from Value:

protected SubclassOptionalData
protected NumUserOperands
protected IsUsedByMD
protected HasName
protected HasHungOffUses
protected HasDescriptor
public static MaxAlignmentExponent = 29
public static MaximumAlignment = 1U << MaxAlignmentExponent

Method Overview

  • public static llvm::LandingPadInst * Create(llvm::Type * RetTy, unsigned int NumReservedClauses, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
  • public static llvm::LandingPadInst * Create(llvm::Type * RetTy, unsigned int NumReservedClauses, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
  • public void addClause(llvm::Constant * ClauseVal)
  • public static bool classof(const llvm::Instruction * I)
  • public static bool classof(const llvm::Value * V)
  • protected llvm::LandingPadInst * cloneImpl() const
  • public llvm::Constant * getClause(unsigned int Idx) const
  • public unsigned int getNumClauses() const
  • public bool isCatch(unsigned int Idx) const
  • public bool isCleanup() const
  • public bool isFilter(unsigned int Idx) const
  • public void reserveClauses(unsigned int Size)
  • public void setCleanup(bool V)

Inherited from Instruction:

Inherited from User:

Inherited from Value:

Methods

static llvm::LandingPadInst* Create(
    llvm::Type* RetTy,
    unsigned int NumReservedClauses,
    const llvm::Twine& NameStr = "",
    llvm::Instruction* InsertBefore = nullptr)

Description

Constructors - NumReservedClauses is a hint for the number of incoming clauses that this landingpad will have (use 0 if you really have no idea).

Declared at: llvm/include/llvm/IR/Instructions.h:2830

Parameters

llvm::Type* RetTy
unsigned int NumReservedClauses
const llvm::Twine& NameStr = ""
llvm::Instruction* InsertBefore = nullptr

static llvm::LandingPadInst* Create(
    llvm::Type* RetTy,
    unsigned int NumReservedClauses,
    const llvm::Twine& NameStr,
    llvm::BasicBlock* InsertAtEnd)

Declared at: llvm/include/llvm/IR/Instructions.h:2833

Parameters

llvm::Type* RetTy
unsigned int NumReservedClauses
const llvm::Twine& NameStr
llvm::BasicBlock* InsertAtEnd

void addClause(llvm::Constant* ClauseVal)

Description

Add a catch or filter clause to the landing pad.

Declared at: llvm/include/llvm/IR/Instructions.h:2851

Parameters

llvm::Constant* ClauseVal

static bool classof(const llvm::Instruction* I)

Declared at: llvm/include/llvm/IR/Instructions.h:2877

Parameters

const llvm::Instruction* I

static bool classof(const llvm::Value* V)

Declared at: llvm/include/llvm/IR/Instructions.h:2880

Parameters

const llvm::Value* V

llvm::LandingPadInst* cloneImpl() const

Declared at: llvm/include/llvm/IR/Instructions.h:2825

llvm::Constant* getClause(unsigned int Idx) const

Description

Get the value of the clause at index Idx. Use isCatch/isFilter to determine what type of clause this is.

Declared at: llvm/include/llvm/IR/Instructions.h:2855

Parameters

unsigned int Idx

unsigned int getNumClauses() const

Description

Get the number of clauses for this landing pad.

Declared at: llvm/include/llvm/IR/Instructions.h:2870

bool isCatch(unsigned int Idx) const

Description

Return 'true' if the clause and index Idx is a catch clause.

Declared at: llvm/include/llvm/IR/Instructions.h:2860

Parameters

unsigned int Idx

bool isCleanup() const

Description

Return 'true' if this landingpad instruction is a cleanup. I.e., it should be run when unwinding even if its landing pad doesn't catch the exception.

Declared at: llvm/include/llvm/IR/Instructions.h:2842

bool isFilter(unsigned int Idx) const

Description

Return 'true' if the clause and index Idx is a filter clause.

Declared at: llvm/include/llvm/IR/Instructions.h:2865

Parameters

unsigned int Idx

void reserveClauses(unsigned int Size)

Description

Grow the size of the operand list to accommodate the new number of clauses.

Declared at: llvm/include/llvm/IR/Instructions.h:2874

Parameters

unsigned int Size

void setCleanup(bool V)

Description

Indicate that this landingpad instruction is a cleanup.

Declared at: llvm/include/llvm/IR/Instructions.h:2845

Parameters

bool V