class CallBrInst
Declaration
class CallBrInst : public CallBase { /* full declaration omitted */ };
Description
CallBr instruction, tracking function calls that may not return control but instead transfer it to a third location. The SubclassData field is used to hold the calling convention of the call.
Declared at: llvm/include/llvm/IR/Instructions.h:3985
Inherits from: CallBase
Member Variables
- private unsigned int NumIndirectDests
Inherited from CallBase:
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
- private inline CallBrInst(llvm::FunctionType * Ty, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, int NumOperands, const llvm::Twine & NameStr, llvm::Instruction * InsertBefore)
- private inline CallBrInst(llvm::FunctionType * Ty, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, int NumOperands, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- private CallBrInst(const llvm::CallBrInst & BI)
- private static int ComputeNumOperands(int NumArgs, int NumIndirectDests, int NumBundleInputs = 0)
- public static llvm::CallBrInst * Create(llvm::FunctionCallee Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles = None, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallBrInst * Create(llvm::CallBrInst * CBI, ArrayRef<llvm::OperandBundleDef> Bundles, llvm::Instruction * InsertPt = nullptr)
- public static llvm::CallBrInst * Create(llvm::FunctionCallee Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallBrInst * Create(llvm::FunctionCallee Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallBrInst * Create(llvm::FunctionCallee Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallBrInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallBrInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallBrInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles = None, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallBrInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::Instruction * InsertBefore = nullptr)
- public static bool classof(const llvm::Value * V)
- public static bool classof(const llvm::Instruction * I)
- protected llvm::CallBrInst * cloneImpl() const
- public llvm::BlockAddress * getBlockAddressForIndirectDest(unsigned int DestNo) const
- public llvm::BasicBlock * getDefaultDest() const
- public llvm::BasicBlock * getIndirectDest(unsigned int i) const
- public llvm::Value * getIndirectDestLabel(unsigned int i) const
- public llvm::Value * getIndirectDestLabelUse(unsigned int i) const
- public SmallVector<llvm::BasicBlock *, 16> getIndirectDests() const
- public unsigned int getNumIndirectDests() const
- public unsigned int getNumSuccessors() const
- public llvm::BasicBlock * getSuccessor(unsigned int i) const
- private void init(llvm::FunctionType * FTy, llvm::Value * Func, llvm::BasicBlock * DefaultDest, ArrayRef<llvm::BasicBlock *> IndirectDests, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, const llvm::Twine & NameStr)
- public void setDefaultDest(llvm::BasicBlock * B)
- public void setIndirectDest(unsigned int i, llvm::BasicBlock * B)
- private template <typename Bitfield>void setSubclassData(typename Bitfield::Type Value)
- public void setSuccessor(unsigned int i, llvm::BasicBlock * NewSucc)
Inherited from CallBase:
- protected CountBundleInputs
- public Create
- public Create
- public addAttributeAtIndex
- public addAttributeAtIndex
- public addDereferenceableParamAttr
- public addDereferenceableRetAttr
- public addFnAttr
- public addFnAttr
- public addOperandBundle
- public addParamAttr
- public addParamAttr
- public addRetAttr
- public addRetAttr
- public arg_begin
- public arg_begin
- public arg_empty
- public arg_end
- public arg_end
- public arg_size
- public args
- public args
- public bundleOperandHasAttr
- public bundle_op_info_begin
- public bundle_op_info_begin
- public bundle_op_info_end
- public bundle_op_info_end
- public bundle_op_infos
- public bundle_op_infos
- public cannotDuplicate
- public cannotMerge
- public classof
- public classof
- public countOperandBundlesOfType
- public countOperandBundlesOfType
- public dataOperandHasImpliedAttr
- public data_operands_begin
- public data_operands_begin
- public data_operands_empty
- public data_operands_end
- public data_operands_end
- public data_operands_size
- public data_ops
- public data_ops
- public doesNoCfCheck
- public doesNotAccessMemory
- public doesNotAccessMemory
- public doesNotCapture
- public doesNotReturn
- public doesNotThrow
- public getArgOperand
- public getArgOperandNo
- public getArgOperandNo
- public getArgOperandUse
- public getArgOperandUse
- public getArgOperandWithAttribute
- public getAttributeAtIndex
- public getAttributeAtIndex
- public getAttributes
- public getBundleOpInfoForOperand
- public getBundleOpInfoForOperand
- public getBundleOperandsEndIndex
- public getBundleOperandsStartIndex
- public getCalledFunction
- public getCalledOperand
- public getCalledOperandUse
- public getCalledOperandUse
- public getCaller
- public getCaller
- public getCallingConv
- public getDataOperandNo
- public getDataOperandNo
- public getFnAttr
- public getFnAttr
- public getFunctionType
- public getIntrinsicID
- public getNumOperandBundles
- protected getNumSubclassExtraOperands
- protected getNumSubclassExtraOperandsDynamic
- public getNumTotalBundleOperands
- public getOperandBundle
- public getOperandBundle
- public getOperandBundleAt
- public getOperandBundleForOperand
- public getOperandBundlesAsDefs
- public getParamAlign
- public getParamAttr
- public getParamAttr
- public getParamByValType
- public getParamDereferenceableBytes
- public getParamDereferenceableOrNullBytes
- public getParamElementType
- public getParamInAllocaType
- public getParamPreallocatedType
- public getParamStackAlign
- public getParamStructRetType
- public getRetAlign
- public getRetDereferenceableBytes
- public getRetDereferenceableOrNullBytes
- public getReturnedArgOperand
- public hasArgument
- public hasByValArgument
- public hasClobberingOperandBundles
- protected hasDescriptor
- public hasFnAttr
- public hasFnAttr
- public hasIdenticalOperandBundleSchema
- public hasInAllocaArgument
- public hasOperandBundles
- public hasOperandBundlesOtherThan
- public hasReadingOperandBundles
- public hasRetAttr
- public hasRetAttr
- public hasStructRetAttr
- public isArgOperand
- public isArgOperand
- public isBundleOperand
- public isBundleOperand
- public isBundleOperand
- public isByValArgument
- public isCallee
- public isCallee
- public isConvergent
- public isDataOperand
- public isDataOperand
- public isFnAttrDisallowedByOpBundle
- public isFnAttrDisallowedByOpBundle
- public isInAllocaArgument
- public isIndirectCall
- public isInlineAsm
- public isMustTailCall
- public isNoBuiltin
- public isNoInline
- public isOperandBundleOfType
- public isPassPointeeByValueArgument
- public isPassingUndefUB
- public isReturnNonNull
- public isStrictFP
- public isTailCall
- public mutateFunctionType
- public onlyAccessesArgMemory
- public onlyAccessesInaccessibleMemOrArgMem
- public onlyAccessesInaccessibleMemory
- public onlyReadsMemory
- public onlyReadsMemory
- public onlyWritesMemory
- public onlyWritesMemory
- public operandBundleFromBundleOpInfo
- public paramHasAttr
- public populateBundleOperandInfos
- public removeAttributeAtIndex
- public removeAttributeAtIndex
- public removeFnAttr
- public removeFnAttrs
- public removeOperandBundle
- public removeParamAttr
- public removeParamAttr
- public removeParamAttrs
- public removeRetAttr
- public removeRetAttrs
- public returnDoesNotAlias
- public setArgOperand
- public setAttributes
- public setCalledFunction
- public setCalledFunction
- public setCalledFunction
- public setCalledOperand
- public setCallingConv
- public setCannotDuplicate
- public setCannotMerge
- public setConvergent
- public setDoesNotAccessMemory
- public setDoesNotReturn
- public setDoesNotThrow
- public setIsNoInline
- public setNotConvergent
- public setOnlyAccessesArgMemory
- public setOnlyAccessesInaccessibleMemOrArgMem
- public setOnlyAccessesInaccessibleMemory
- public setOnlyReadsMemory
- public setOnlyWritesMemory
Inherited from Instruction:
- public addAnnotationMetadata
- public andIRFlags
- public applyMergedLocation
- public classof
- public clone
- public comesBefore
- public copyFastMathFlags
- public copyFastMathFlags
- public copyIRFlags
- public copyMetadata
- public dropLocation
- public dropPoisonGeneratingFlags
- public dropUndefImplyingAttrsAndUnknownMetadata
- public dropUnknownNonDebugMetadata
- public dropUnknownNonDebugMetadata
- public dropUnknownNonDebugMetadata
- public dropUnknownNonDebugMetadata
- public eraseFromParent
- public extractProfMetadata
- public extractProfTotalWeight
- public getAAMetadata
- public getAllMetadata
- public getAllMetadataOtherThanDebugLoc
- public getDebugLoc
- public getFastMathFlags
- public getFunction
- public getFunction
- public getMetadata
- public getMetadata
- public getModule
- public getModule
- public getNextNonDebugInstruction
- public getNextNonDebugInstruction
- public getNumSuccessors
- public getOpcode
- public getOpcodeName
- public getOpcodeName
- public getParent
- public getParent
- public getPrevNonDebugInstruction
- public getPrevNonDebugInstruction
- protected getSubclassData
- public getSuccessor
- public hasAllowContract
- public hasAllowReassoc
- public hasAllowReciprocal
- public hasApproxFunc
- public hasAtomicLoad
- public hasAtomicStore
- public hasMetadata
- public hasMetadata
- public hasMetadata
- public hasMetadataOtherThanDebugLoc
- public hasNoInfs
- public hasNoNaNs
- public hasNoSignedWrap
- public hasNoSignedZeros
- public hasNoUnsignedWrap
- public hasPoisonGeneratingFlags
- public insertAfter
- public insertBefore
- public isArithmeticShift
- public isAssociative
- public isAssociative
- public isAtomic
- public isBinaryOp
- public isBinaryOp
- public isBitwiseLogicOp
- public isBitwiseLogicOp
- public isCast
- public isCast
- public isCommutative
- public isCommutative
- public isDebugOrPseudoInst
- public isEHPad
- public isExact
- public isExceptionalTerminator
- public isExceptionalTerminator
- public isFast
- public isFenceLike
- public isFuncletPad
- public isFuncletPad
- public isIdempotent
- public isIdempotent
- public isIdenticalTo
- public isIdenticalToWhenDefined
- public isIntDivRem
- public isIntDivRem
- public isLaunderOrStripInvariantGroup
- public isLifetimeStartOrEnd
- public isLogicalShift
- public isNilpotent
- public isNilpotent
- public isOnlyUserOfAnyOperand
- public isSafeToRemove
- public isSameOperationAs
- public isShift
- public isShift
- public isTerminator
- public isTerminator
- public isUnaryOp
- public isUnaryOp
- public isUsedOutsideOfBlock
- public isVolatile
- public mayHaveSideEffects
- public mayReadFromMemory
- public mayReadOrWriteMemory
- public mayThrow
- public mayWriteToMemory
- public moveAfter
- public moveBefore
- public moveBefore
- public removeFromParent
- public replaceSuccessorWith
- public setAAMetadata
- public setDebugLoc
- public setFast
- public setFastMathFlags
- public setHasAllowContract
- public setHasAllowReassoc
- public setHasAllowReciprocal
- public setHasApproxFunc
- public setHasNoInfs
- public setHasNoNaNs
- public setHasNoSignedWrap
- public setHasNoSignedZeros
- public setHasNoUnsignedWrap
- public setIsExact
- public setMetadata
- public setMetadata
- protected setSubclassData
- public setSuccessor
- public swapProfMetadata
- public updateLocationAfterHoist
- public user_back
- public user_back
- public willReturn
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 isDroppable
- 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
- protected addMetadata
- protected addMetadata
- public addUse
- public assertModuleIsMaterialized
- public assertModuleIsMaterializedImpl
- public canBeFreed
- protected clearMetadata
- public clearSubclassOptionalData
- public deleteValue
- public dropDroppableUse
- public dropDroppableUses
- public dropDroppableUsesIn
- public dump
- protected eraseMetadata
- protected getAllMetadata
- public getContext
- protected getMetadata
- protected getMetadata
- protected getMetadata
- protected getMetadata
- public getName
- public getNameOrAsOperand
- public getNumUses
- public getPointerAlignment
- public getPointerDereferenceableBytes
- public getRawSubclassOptionalData
- public getSingleUndroppableUse
- public getSingleUndroppableUse
- protected getSubclassDataFromValue
- public getType
- public getUniqueUndroppableUser
- public getUniqueUndroppableUser
- public getValueID
- public getValueName
- protected hasMetadata
- protected hasMetadata
- protected hasMetadata
- public hasNUndroppableUses
- public hasNUndroppableUsesOrMore
- public hasNUses
- public hasNUsesOrMore
- public hasName
- public hasOneUse
- public hasOneUser
- public hasSameSubclassOptionalData
- public hasValueHandle
- public isSwiftError
- public isTransitiveUsedByMetadataOnly
- 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
- protected setMetadata
- protected setMetadata
- 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 stripPointerCastsForAliasAnalysis
- public stripPointerCastsForAliasAnalysis
- 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
¶inline CallBrInst(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
int NumOperands,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore)
inline CallBrInst(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
int NumOperands,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore)
Description
Construct a CallBrInst given a range of arguments. Construct a CallBrInst from a range of arguments
Declared at: llvm/include/llvm/IR/Instructions.h:3994
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- int NumOperands
- const llvm::Twine& NameStr
- llvm::Instruction* InsertBefore
¶inline CallBrInst(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
int NumOperands,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
inline CallBrInst(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
int NumOperands,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:4000
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- int NumOperands
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶CallBrInst(const llvm::CallBrInst& BI)
CallBrInst(const llvm::CallBrInst& BI)
Declared at: llvm/include/llvm/IR/Instructions.h:3989
Parameters
- const llvm::CallBrInst& BI
¶static int ComputeNumOperands(
int NumArgs,
int NumIndirectDests,
int NumBundleInputs = 0)
static int ComputeNumOperands(
int NumArgs,
int NumIndirectDests,
int NumBundleInputs = 0)
Description
Compute the number of operands to allocate.
Declared at: llvm/include/llvm/IR/Instructions.h:4011
Parameters
- int NumArgs
- int NumIndirectDests
- int NumBundleInputs = 0
¶static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
None,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
None,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:4086
Parameters
- llvm::FunctionCallee Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles = None
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallBrInst* Create(
llvm::CallBrInst* CBI,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::Instruction* InsertPt = nullptr)
static llvm::CallBrInst* Create(
llvm::CallBrInst* CBI,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::Instruction* InsertPt = nullptr)
Description
Create a clone of \p CBI with a different set of operand bundles and insert it before \p InsertPt. The returned callbr instruction is identical to \p CBI in every way except that the operand bundles for the new instruction are set to the operand bundles in \p Bundles.
Declared at: llvm/include/llvm/IR/Instructions.h:4120
Parameters
- llvm::CallBrInst* CBI
- ArrayRef<llvm::OperandBundleDef> Bundles
- llvm::Instruction* InsertPt = nullptr
¶static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:4104
Parameters
- llvm::FunctionCallee Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:4096
Parameters
- llvm::FunctionCallee Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallBrInst* Create(
llvm::FunctionCallee Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:4078
Parameters
- llvm::FunctionCallee Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:4063
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:4052
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
None,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
None,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:4036
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles = None
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallBrInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:4025
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::Instruction* InsertBefore = nullptr
¶static bool classof(const llvm::Value* V)
static bool classof(const llvm::Value* V)
Declared at: llvm/include/llvm/IR/Instructions.h:4180
Parameters
- const llvm::Value* V
¶static bool classof(const llvm::Instruction* I)
static bool classof(const llvm::Instruction* I)
Declared at: llvm/include/llvm/IR/Instructions.h:4177
Parameters
- const llvm::Instruction* I
¶llvm::CallBrInst* cloneImpl() const
llvm::CallBrInst* cloneImpl() const
Declared at: llvm/include/llvm/IR/Instructions.h:4022
¶llvm::BlockAddress*
getBlockAddressForIndirectDest(
unsigned int DestNo) const
llvm::BlockAddress*
getBlockAddressForIndirectDest(
unsigned int DestNo) const
Declared at: llvm/include/llvm/IR/Instructions.h:4174
Parameters
- unsigned int DestNo
¶llvm::BasicBlock* getDefaultDest() const
llvm::BasicBlock* getDefaultDest() const
Declared at: llvm/include/llvm/IR/Instructions.h:4141
¶llvm::BasicBlock* getIndirectDest(
unsigned int i) const
llvm::BasicBlock* getIndirectDest(
unsigned int i) const
Declared at: llvm/include/llvm/IR/Instructions.h:4144
Parameters
- unsigned int i
¶llvm::Value* getIndirectDestLabel(
unsigned int i) const
llvm::Value* getIndirectDestLabel(
unsigned int i) const
Description
getIndirectDestLabel - Return the i-th indirect dest label.
Declared at: llvm/include/llvm/IR/Instructions.h:4130
Parameters
- unsigned int i
¶llvm::Value* getIndirectDestLabelUse(
unsigned int i) const
llvm::Value* getIndirectDestLabelUse(
unsigned int i) const
Declared at: llvm/include/llvm/IR/Instructions.h:4135
Parameters
- unsigned int i
¶SmallVector<llvm::BasicBlock*, 16>
getIndirectDests() const
SmallVector<llvm::BasicBlock*, 16>
getIndirectDests() const
Declared at: llvm/include/llvm/IR/Instructions.h:4147
¶unsigned int getNumIndirectDests() const
unsigned int getNumIndirectDests() const
Description
Return the number of callbr indirect dest labels.
Declared at: llvm/include/llvm/IR/Instructions.h:4126
¶unsigned int getNumSuccessors() const
unsigned int getNumSuccessors() const
Declared at: llvm/include/llvm/IR/Instructions.h:4172
¶llvm::BasicBlock* getSuccessor(
unsigned int i) const
llvm::BasicBlock* getSuccessor(
unsigned int i) const
Declared at: llvm/include/llvm/IR/Instructions.h:4160
Parameters
- unsigned int i
¶void init(
llvm::FunctionType* FTy,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr)
void init(
llvm::FunctionType* FTy,
llvm::Value* Func,
llvm::BasicBlock* DefaultDest,
ArrayRef<llvm::BasicBlock*> IndirectDests,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr)
Declared at: llvm/include/llvm/IR/Instructions.h:4006
Parameters
- llvm::FunctionType* FTy
- llvm::Value* Func
- llvm::BasicBlock* DefaultDest
- ArrayRef<llvm::BasicBlock*> IndirectDests
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- const llvm::Twine& NameStr
¶void setDefaultDest(llvm::BasicBlock* B)
void setDefaultDest(llvm::BasicBlock* B)
Declared at: llvm/include/llvm/IR/Instructions.h:4153
Parameters
¶void setIndirectDest(unsigned int i,
llvm::BasicBlock* B)
void setIndirectDest(unsigned int i,
llvm::BasicBlock* B)
Declared at: llvm/include/llvm/IR/Instructions.h:4156
Parameters
- unsigned int i
- llvm::BasicBlock* B
¶template <typename Bitfield>
void setSubclassData(
typename Bitfield::Type Value)
template <typename Bitfield>
void setSubclassData(
typename Bitfield::Type Value)
Declared at: llvm/include/llvm/IR/Instructions.h:4188
Templates
- Bitfield
Parameters
- typename Bitfield::Type Value
¶void setSuccessor(unsigned int i,
llvm::BasicBlock* NewSucc)
void setSuccessor(unsigned int i,
llvm::BasicBlock* NewSucc)
Declared at: llvm/include/llvm/IR/Instructions.h:4166
Parameters
- unsigned int i
- llvm::BasicBlock* NewSucc