class UnreachableInst

Declaration

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

Description

This function has undefined behavior. In particular, the presence of this instruction indicates some higher level knowledge that the end of the block cannot be reached.

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

Inherits from: Instruction

Member Variables

Inherited from Value:

protected SubclassOptionalData
protected NumUserOperands
protected IsUsedByMD
protected HasName
protected HasMetadata
protected HasHungOffUses
protected HasDescriptor
public static MaxAlignmentExponent = 32
public static MaximumAlignment = 1ULL << MaxAlignmentExponent

Method Overview

  • public UnreachableInst(llvm::LLVMContext & C, llvm::Instruction * InsertBefore = nullptr)
  • public UnreachableInst(llvm::LLVMContext & C, llvm::BasicBlock * InsertAtEnd)
  • public static bool classof(const llvm::Instruction * I)
  • public static bool classof(const llvm::Value * V)
  • protected llvm::UnreachableInst * cloneImpl() const
  • public unsigned int getNumSuccessors() const
  • private llvm::BasicBlock * getSuccessor(unsigned int idx) const
  • private void setSuccessor(unsigned int idx, llvm::BasicBlock * B)

Inherited from Instruction:

Inherited from User:

Inherited from Value:

Methods

UnreachableInst(
    llvm::LLVMContext& C,
    llvm::Instruction* InsertBefore = nullptr)

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

Parameters

llvm::LLVMContext& C
llvm::Instruction* InsertBefore = nullptr

UnreachableInst(llvm::LLVMContext& C,
                llvm::BasicBlock* InsertAtEnd)

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

Parameters

llvm::LLVMContext& C
llvm::BasicBlock* InsertAtEnd

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

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

Parameters

const llvm::Instruction* I

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

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

Parameters

const llvm::Value* V

llvm::UnreachableInst* cloneImpl() const

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

unsigned int getNumSuccessors() const

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

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

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

Parameters

unsigned int idx

void setSuccessor(unsigned int idx,
                  llvm::BasicBlock* B)

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

Parameters

unsigned int idx
llvm::BasicBlock* B