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:
- public canTrap
- public classof
- public containsConstantExpression
- public containsUndefElement
- public destroyConstant
- public getAggregateElement
- public getAggregateElement
- public getAllOnesValue
- public getIntegerValue
- public getNullValue
- public getSplatValue
- public getUniqueInteger
- public handleOperandChange
- public hasExactInverseFP
- public isAllOnesValue
- public isConstantUsed
- public isDLLImportDependent
- public isElementWiseEqual
- public isFiniteNonZeroFP
- public isMinSignedValue
- public isNaN
- public isNegativeZeroValue
- public isNormalFP
- public isNotMinSignedValue
- public isNotOneValue
- public isNullValue
- public isOneValue
- public isThreadDependent
- public isZeroValue
- public needsRelocation
- public removeDeadConstantUsers
- public replaceUndefsWith
- public stripPointerCasts
- public stripPointerCasts
Inherited from User:
- protected Op
- protected Op
- protected OpFrom
- protected allocHungoffUses
- public classof
- public dropAllReferences
- public getDescriptor
- public getDescriptor
- public getNumOperands
- public getOperand
- public getOperandList
- public getOperandList
- public getOperandUse
- public getOperandUse
- protected growHungoffUses
- public op_begin
- public op_begin
- public op_end
- public op_end
- public operand_values
- public operand_values
- public operands
- public operands
- public replaceUsesOfWith
- public setGlobalVariableNumOperands
- public setNumHungOffUseOperands
- public setOperand
- public value_op_begin
- public value_op_begin
- public value_op_end
- public value_op_end
Inherited from Value:
- public DoPHITranslation
- public DoPHITranslation
- public addUse
- public assertModuleIsMaterialized
- public assertModuleIsMaterializedImpl
- public clearSubclassOptionalData
- public deleteValue
- public dump
- public getContext
- public getName
- public getNumUses
- public getPointerAlignment
- public getPointerDereferenceableBytes
- public getRawSubclassOptionalData
- protected getSubclassDataFromValue
- public getType
- public getValueID
- public getValueName
- public hasNUses
- public hasNUsesOrMore
- public hasName
- public hasOneUse
- public hasSameSubclassOptionalData
- public hasValueHandle
- public isSwiftError
- public isUsedByMetadata
- public isUsedInBasicBlock
- public materialized_use_begin
- public materialized_use_begin
- public materialized_use_empty
- public materialized_user_begin
- public materialized_user_begin
- public materialized_users
- public materialized_users
- public materialized_uses
- public materialized_uses
- public mutateType
- public print
- public print
- public printAsOperand
- public printAsOperand
- public replaceAllUsesWith
- public replaceNonMetadataUsesWith
- public replaceUsesOutsideBlock
- public replaceUsesWithIf
- public reverseUseList
- public setName
- public setValueName
- protected setValueSubclassData
- public sortUseList
- public stripAndAccumulateConstantOffsets
- public stripAndAccumulateConstantOffsets
- public stripAndAccumulateInBoundsConstantOffsets
- public stripAndAccumulateInBoundsConstantOffsets
- public stripInBoundsConstantOffsets
- public stripInBoundsConstantOffsets
- public stripInBoundsOffsets
- public stripInBoundsOffsets
- public stripPointerCasts
- public stripPointerCasts
- public stripPointerCastsAndAliases
- public stripPointerCastsAndAliases
- public stripPointerCastsAndInvariantGroups
- public stripPointerCastsAndInvariantGroups
- public stripPointerCastsSameRepresentation
- public stripPointerCastsSameRepresentation
- public takeName
- public use_begin
- public use_begin
- public use_empty
- public use_end
- public use_end
- public user_back
- public user_back
- public user_begin
- public user_begin
- public user_empty
- public user_end
- public user_end
- public users
- public users
- public uses
- public uses
Methods
¶static bool classof(const llvm::Value* V)
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)
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
¶static llvm::BlockAddress* get(
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
llvm::BasicBlock* getBasicBlock() const
Declared at: llvm/include/llvm/IR/Constants.h:867
¶llvm::Function* getFunction() const
llvm::Function* getFunction() const
Declared at: llvm/include/llvm/IR/Constants.h:866
¶static llvm::BlockAddress* lookup(
const llvm::BasicBlock* BB)
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.