class CatchSwitchInst

Declaration

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

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

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

Inherited from Instruction:

Inherited from User:

Inherited from Value:

Methods

static llvm::CatchSwitchInst* Create(
    llvm::Value* ParentPad,
    llvm::BasicBlock* UnwindDest,
    unsigned int NumHandlers,
    const llvm::Twine& NameStr = "",
    llvm::Instruction* InsertBefore = nullptr)

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

Parameters

llvm::Value* ParentPad
llvm::BasicBlock* UnwindDest
unsigned int NumHandlers
const llvm::Twine& NameStr = ""
llvm::Instruction* InsertBefore = nullptr

static llvm::CatchSwitchInst* Create(
    llvm::Value* ParentPad,
    llvm::BasicBlock* UnwindDest,
    unsigned int NumHandlers,
    const llvm::Twine& NameStr,
    llvm::BasicBlock* InsertAtEnd)

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

Parameters

llvm::Value* ParentPad
llvm::BasicBlock* UnwindDest
unsigned int NumHandlers
const llvm::Twine& NameStr
llvm::BasicBlock* InsertAtEnd

void addHandler(llvm::BasicBlock* Dest)

Description

Add an entry to the switch instruction... Note: This action invalidates handler_end(). Old handler_end() iterator will point to the added handler.

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

Parameters

llvm::BasicBlock* Dest

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

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

Parameters

const llvm::Value* V

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

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

Parameters

const llvm::Instruction* I

llvm::CatchSwitchInst* cloneImpl() const

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

unsigned int getNumHandlers() const

Description

return the number of 'handlers' in this catchswitch instruction, except the default handler

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

unsigned int getNumSuccessors() const

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

llvm::Value* getParentPad() const

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

llvm::BasicBlock* getSuccessor(
    unsigned int Idx) const

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

Parameters

unsigned int Idx

llvm::BasicBlock* getUnwindDest() const

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

int handler_begin()

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

int handler_begin() const

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

int handler_end()

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

int handler_end() const

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

int handlers()

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

int handlers() const

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

bool hasUnwindDest() const

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

void removeHandler(int HI)

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

Parameters

int HI

void setParentPad(llvm::Value* ParentPad)

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

Parameters

llvm::Value* ParentPad

void setSuccessor(unsigned int Idx,
                  llvm::BasicBlock* NewSucc)

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

Parameters

unsigned int Idx
llvm::BasicBlock* NewSucc

void setUnwindDest(llvm::BasicBlock* UnwindDest)

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

Parameters

llvm::BasicBlock* UnwindDest

bool unwindsToCaller() const

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