class BlockAddress

Declaration

class BlockAddress : public Constant { /* full declaration omitted */ };

Description

The address of a basic block.

Declared at: llvm/include/llvm/IR/Constants.h:840

Inherits from: Constant

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 bool classof(const llvm::Value * V)
  • public static llvm::BlockAddress * get(llvm::Function * F, llvm::BasicBlock * BB)
  • public static llvm::BlockAddress * get(llvm::BasicBlock * BB)
  • public llvm::BasicBlock * getBasicBlock() const
  • public llvm::Function * getFunction() const
  • public static llvm::BlockAddress * lookup(const llvm::BasicBlock * BB)

Inherited from Constant:

Inherited from User:

Inherited from Value:

Methods

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

Description

Methods for support type inquiry through isa, cast, and dyn_cast:

Declared at: llvm/include/llvm/IR/Constants.h:870

Parameters

const llvm::Value* V

static llvm::BlockAddress* get(
    llvm::Function* F,
    llvm::BasicBlock* BB)

Description

Return a BlockAddress for the specified function and basic block.

Declared at: llvm/include/llvm/IR/Constants.h:852

Parameters

llvm::Function* F
llvm::BasicBlock* BB

static llvm::BlockAddress* get(
    llvm::BasicBlock* BB)

Description

Return a BlockAddress for the specified basic block. The basic block must be embedded into a function.

Declared at: llvm/include/llvm/IR/Constants.h:856

Parameters

llvm::BasicBlock* BB

llvm::BasicBlock* getBasicBlock() const

Declared at: llvm/include/llvm/IR/Constants.h:867

llvm::Function* getFunction() const

Declared at: llvm/include/llvm/IR/Constants.h:866

static llvm::BlockAddress* lookup(
    const llvm::BasicBlock* BB)

Description

Lookup an existing \c BlockAddress constant for the given BasicBlock.

Declared at: llvm/include/llvm/IR/Constants.h:861

Parameters

const llvm::BasicBlock* BB

Returns

0 if \c !BB->hasAddressTaken(), otherwise the \c BlockAddress.