class CallInst
Declaration
class CallInst : public CallBase { /* full declaration omitted */ };
Declared at: llvm/include/llvm/IR/Instructions.h:1406
Inherits from: CallBase
Member Variables
Inherited from CallBase:
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 llvm::CallInst * Create(llvm::FunctionType * Ty, llvm::Value * F, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::CallInst * CI, ArrayRef<llvm::OperandBundleDef> Bundles, llvm::Instruction * InsertPt = nullptr)
- public static llvm::CallInst * Create(llvm::Value * Func, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::Value * Func, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::Value * Func, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::Value * Func, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::Value * Func, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::Value * Func, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::FunctionCallee Func, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::FunctionCallee Func, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::FunctionCallee Func, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::FunctionCallee Func, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::FunctionCallee Func, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::FunctionType * Ty, llvm::Value * F, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::CallInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, ArrayRef<llvm::Value *> Args, ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>, const llvm::Twine & NameStr = "", llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::FunctionType * Ty, llvm::Value * Func, ArrayRef<llvm::Value *> Args, const llvm::Twine & NameStr, llvm::Instruction * InsertBefore = nullptr)
- public static llvm::CallInst * Create(llvm::FunctionCallee Func, const llvm::Twine & NameStr, llvm::BasicBlock * InsertAtEnd)
- public static llvm::Instruction * CreateFree(llvm::Value * Source, llvm::Instruction * InsertBefore)
- public static llvm::Instruction * CreateFree(llvm::Value * Source, ArrayRef<llvm::OperandBundleDef> Bundles, llvm::BasicBlock * InsertAtEnd)
- public static llvm::Instruction * CreateFree(llvm::Value * Source, ArrayRef<llvm::OperandBundleDef> Bundles, llvm::Instruction * InsertBefore)
- public static llvm::Instruction * CreateFree(llvm::Value * Source, llvm::BasicBlock * InsertAtEnd)
- public static llvm::Instruction * CreateMalloc(llvm::BasicBlock * InsertAtEnd, llvm::Type * IntPtrTy, llvm::Type * AllocTy, llvm::Value * AllocSize, llvm::Value * ArraySize = nullptr, ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>, llvm::Function * MallocF = nullptr, const llvm::Twine & Name = "")
- public static llvm::Instruction * CreateMalloc(llvm::Instruction * InsertBefore, llvm::Type * IntPtrTy, llvm::Type * AllocTy, llvm::Value * AllocSize, llvm::Value * ArraySize = nullptr, ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>, llvm::Function * MallocF = nullptr, const llvm::Twine & Name = "")
- public static llvm::Instruction * CreateMalloc(llvm::BasicBlock * InsertAtEnd, llvm::Type * IntPtrTy, llvm::Type * AllocTy, llvm::Value * AllocSize, llvm::Value * ArraySize = nullptr, llvm::Function * MallocF = nullptr, const llvm::Twine & Name = "")
- public static llvm::Instruction * CreateMalloc(llvm::Instruction * InsertBefore, llvm::Type * IntPtrTy, llvm::Type * AllocTy, llvm::Value * AllocSize, llvm::Value * ArraySize = nullptr, llvm::Function * MallocF = nullptr, const llvm::Twine & Name = "")
- public bool canReturnTwice() const
- public static bool classof(const llvm::Instruction * I)
- public static bool classof(const llvm::Value * V)
- protected llvm::CallInst * cloneImpl() const
- public llvm::CallInst::TailCallKind getTailCallKind() const
- public bool isMustTailCall() const
- public bool isNoTailCall() const
- public bool isTailCall() const
- public void setCanReturnTwice()
- public void setTailCall(bool isTC = true)
- public void setTailCallKind(llvm::CallInst::TailCallKind TCK)
- public void updateProfWeight(uint64_t S, uint64_t T)
Inherited from CallBase:
- protected CountBundleInputs
- public addAttribute
- public addAttribute
- public addDereferenceableAttr
- public addDereferenceableOrNullAttr
- public addParamAttr
- public addParamAttr
- public arg_begin
- public arg_begin
- public arg_empty
- public arg_end
- public arg_end
- public arg_operands
- public arg_operands
- 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 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 doesNotReadMemory
- public doesNotReadMemory
- public doesNotReturn
- public doesNotThrow
- public getArgOperand
- public getArgOperandNo
- public getArgOperandNo
- public getArgOperandUse
- public getArgOperandUse
- public getAttribute
- public getAttribute
- public getAttributes
- public getBundleOpInfoForOperand
- public getBundleOperandsEndIndex
- public getBundleOperandsStartIndex
- public getCalledFunction
- public getCalledOperand
- public getCalledOperandUse
- public getCalledOperandUse
- public getCalledValue
- public getCaller
- public getCaller
- public getCallingConv
- public getDataOperandNo
- public getDataOperandNo
- public getDereferenceableBytes
- public getDereferenceableOrNullBytes
- public getFunctionType
- public getIntrinsicID
- public getNumArgOperands
- public getNumOperandBundles
- protected getNumSubclassExtraOperands
- protected getNumSubclassExtraOperandsDynamic
- public getNumTotalBundleOperands
- public getOperandBundle
- public getOperandBundle
- public getOperandBundleAt
- public getOperandBundleForOperand
- public getOperandBundlesAsDefs
- public getParamAlign
- public getParamAlignment
- public getParamAttr
- public getParamAttr
- public getParamByValType
- public getRetAlign
- public getRetAlignment
- 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 hasStructRetAttr
- public isArgOperand
- public isArgOperand
- public isBundleOperand
- public isBundleOperand
- public isBundleOperand
- public isByValArgument
- public isByValOrInAllocaArgument
- 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 isReturnNonNull
- public isStrictFP
- public isTailCall
- public mutateFunctionType
- public onlyAccessesArgMemory
- public onlyAccessesInaccessibleMemOrArgMem
- public onlyAccessesInaccessibleMemory
- public onlyReadsMemory
- public onlyReadsMemory
- public operandBundleFromBundleOpInfo
- public paramHasAttr
- public populateBundleOperandInfos
- public removeAttribute
- public removeAttribute
- public removeParamAttr
- public removeParamAttr
- public returnDoesNotAlias
- public setArgOperand
- public setAttributes
- public setCalledFunction
- public setCalledFunction
- public setCalledFunction
- public setCalledOperand
- public setCallingConv
- public setCannotDuplicate
- public setConvergent
- public setDoesNotAccessMemory
- public setDoesNotReadMemory
- public setDoesNotReturn
- public setDoesNotThrow
- public setIsNoInline
- public setNotConvergent
- public setOnlyAccessesArgMemory
- public setOnlyAccessesInaccessibleMemOrArgMem
- public setOnlyAccessesInaccessibleMemory
- public setOnlyReadsMemory
Inherited from Instruction:
- public andIRFlags
- public applyMergedLocation
- public classof
- public clone
- public copyFastMathFlags
- public copyFastMathFlags
- public copyIRFlags
- public copyMetadata
- public dropPoisonGeneratingFlags
- 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 getSubclassDataFromInstruction
- 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 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 isEHPad
- public isExact
- public isExceptionalTerminator
- public isExceptionalTerminator
- public isFast
- public isFenceLike
- public isFuncletPad
- public isFuncletPad
- public isIdempotent
- public isIdempotent
- public isIdenticalTo
- public isIdenticalToWhenDefined
- public isIndirectTerminator
- public isIndirectTerminator
- public isIntDivRem
- public isIntDivRem
- public isLifetimeStartOrEnd
- public isLogicalShift
- public isNilpotent
- public isNilpotent
- public isSafeToRemove
- public isSameOperationAs
- public isShift
- public isShift
- public isTerminator
- public isTerminator
- public isUnaryOp
- public isUnaryOp
- public isUsedOutsideOfBlock
- 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 setHasAllowReassoc
- public setHasAllowReciprocal
- public setHasApproxFunc
- public setHasNoInfs
- public setHasNoNaNs
- public setHasNoSignedWrap
- public setHasNoSignedZeros
- public setHasNoUnsignedWrap
- protected setInstructionSubclassData
- public setIsExact
- public setMetadata
- public setMetadata
- public setProfWeight
- public setSuccessor
- public swapProfMetadata
- public user_back
- public user_back
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 llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* F,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* F,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1449
Parameters
- llvm::FunctionType* Ty
- llvm::Value* F
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::CallInst* CI,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::Instruction* InsertPt = nullptr)
static llvm::CallInst* Create(
llvm::CallInst* CI,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::Instruction* InsertPt = nullptr)
Description
Create a clone of \p CI with a different set of operand bundles and insert it before \p InsertPt. The returned call instruction is identical \p CI 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:1593
Parameters
- llvm::CallInst* CI
- ArrayRef<llvm::OperandBundleDef> Bundles
- llvm::Instruction* InsertPt = nullptr
¶static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1579
Parameters
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1571
Parameters
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::Value* Func,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::Value* Func,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1563
Parameters
- llvm::Value* Func
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1553
Parameters
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1544
Parameters
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::Value* Func,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::Value* Func,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1536
Parameters
- llvm::Value* Func
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1528
Parameters
- llvm::FunctionCallee Func
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1522
Parameters
- llvm::FunctionCallee Func
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1509
Parameters
- llvm::FunctionCallee Func
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::FunctionCallee Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1501
Parameters
- llvm::FunctionCallee Func
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::FunctionCallee Func,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::FunctionCallee Func,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1495
Parameters
- llvm::FunctionCallee Func
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1484
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1478
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* F,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* F,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1473
Parameters
- llvm::FunctionType* Ty
- llvm::Value* F
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
const llvm::Twine& NameStr = "",
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1461
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>
- const llvm::Twine& NameStr = ""
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
static llvm::CallInst* Create(
llvm::FunctionType* Ty,
llvm::Value* Func,
ArrayRef<llvm::Value*> Args,
const llvm::Twine& NameStr,
llvm::Instruction* InsertBefore = nullptr)
Declared at: llvm/include/llvm/IR/Instructions.h:1454
Parameters
- llvm::FunctionType* Ty
- llvm::Value* Func
- ArrayRef<llvm::Value*> Args
- const llvm::Twine& NameStr
- llvm::Instruction* InsertBefore = nullptr
¶static llvm::CallInst* Create(
llvm::FunctionCallee Func,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
static llvm::CallInst* Create(
llvm::FunctionCallee Func,
const llvm::Twine& NameStr,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1516
Parameters
- llvm::FunctionCallee Func
- const llvm::Twine& NameStr
- llvm::BasicBlock* InsertAtEnd
¶static llvm::Instruction* CreateFree(
llvm::Value* Source,
llvm::Instruction* InsertBefore)
static llvm::Instruction* CreateFree(
llvm::Value* Source,
llvm::Instruction* InsertBefore)
Description
Generate the IR for a call to the builtin free function.
Declared at: llvm/include/llvm/IR/Instructions.h:1625
Parameters
- llvm::Value* Source
- llvm::Instruction* InsertBefore
¶static llvm::Instruction* CreateFree(
llvm::Value* Source,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::BasicBlock* InsertAtEnd)
static llvm::Instruction* CreateFree(
llvm::Value* Source,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1630
Parameters
- llvm::Value* Source
- ArrayRef<llvm::OperandBundleDef> Bundles
- llvm::BasicBlock* InsertAtEnd
¶static llvm::Instruction* CreateFree(
llvm::Value* Source,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::Instruction* InsertBefore)
static llvm::Instruction* CreateFree(
llvm::Value* Source,
ArrayRef<llvm::OperandBundleDef> Bundles,
llvm::Instruction* InsertBefore)
Declared at: llvm/include/llvm/IR/Instructions.h:1627
Parameters
- llvm::Value* Source
- ArrayRef<llvm::OperandBundleDef> Bundles
- llvm::Instruction* InsertBefore
¶static llvm::Instruction* CreateFree(
llvm::Value* Source,
llvm::BasicBlock* InsertAtEnd)
static llvm::Instruction* CreateFree(
llvm::Value* Source,
llvm::BasicBlock* InsertAtEnd)
Declared at: llvm/include/llvm/IR/Instructions.h:1626
Parameters
- llvm::Value* Source
- llvm::BasicBlock* InsertAtEnd
¶static llvm::Instruction* CreateMalloc(
llvm::BasicBlock* InsertAtEnd,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
static llvm::Instruction* CreateMalloc(
llvm::BasicBlock* InsertAtEnd,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
Declared at: llvm/include/llvm/IR/Instructions.h:1618
Parameters
- llvm::BasicBlock* InsertAtEnd
- llvm::Type* IntPtrTy
- llvm::Type* AllocTy
- llvm::Value* AllocSize
- llvm::Value* ArraySize = nullptr
- ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>
- llvm::Function* MallocF = nullptr
- const llvm::Twine& Name = ""
¶static llvm::Instruction* CreateMalloc(
llvm::Instruction* InsertBefore,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
static llvm::Instruction* CreateMalloc(
llvm::Instruction* InsertBefore,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
ArrayRef<llvm::OperandBundleDef> Bundles =
<null expr>,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
Declared at: llvm/include/llvm/IR/Instructions.h:1612
Parameters
- llvm::Instruction* InsertBefore
- llvm::Type* IntPtrTy
- llvm::Type* AllocTy
- llvm::Value* AllocSize
- llvm::Value* ArraySize = nullptr
- ArrayRef<llvm::OperandBundleDef> Bundles = <null expr>
- llvm::Function* MallocF = nullptr
- const llvm::Twine& Name = ""
¶static llvm::Instruction* CreateMalloc(
llvm::BasicBlock* InsertAtEnd,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
static llvm::Instruction* CreateMalloc(
llvm::BasicBlock* InsertAtEnd,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
Declared at: llvm/include/llvm/IR/Instructions.h:1607
Parameters
- llvm::BasicBlock* InsertAtEnd
- llvm::Type* IntPtrTy
- llvm::Type* AllocTy
- llvm::Value* AllocSize
- llvm::Value* ArraySize = nullptr
- llvm::Function* MallocF = nullptr
- const llvm::Twine& Name = ""
¶static llvm::Instruction* CreateMalloc(
llvm::Instruction* InsertBefore,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
static llvm::Instruction* CreateMalloc(
llvm::Instruction* InsertBefore,
llvm::Type* IntPtrTy,
llvm::Type* AllocTy,
llvm::Value* AllocSize,
llvm::Value* ArraySize = nullptr,
llvm::Function* MallocF = nullptr,
const llvm::Twine& Name = "")
Description
Generate the IR for a call to malloc: 1. Compute the malloc call's argument as the specified type's size, possibly multiplied by the array size if the array size is not constant 1. 2. Call malloc with that argument. 3. Bitcast the result of the malloc call to the specified type.
Declared at: llvm/include/llvm/IR/Instructions.h:1602
Parameters
- llvm::Instruction* InsertBefore
- llvm::Type* IntPtrTy
- llvm::Type* AllocTy
- llvm::Value* AllocSize
- llvm::Value* ArraySize = nullptr
- llvm::Function* MallocF = nullptr
- const llvm::Twine& Name = ""
¶bool canReturnTwice() const
bool canReturnTwice() const
Description
Return true if the call can return twice
Declared at: llvm/include/llvm/IR/Instructions.h:1669
¶static bool classof(const llvm::Instruction* I)
static bool classof(const llvm::Instruction* I)
Declared at: llvm/include/llvm/IR/Instructions.h:1675
Parameters
- const llvm::Instruction* I
¶static bool classof(const llvm::Value* V)
static bool classof(const llvm::Value* V)
Declared at: llvm/include/llvm/IR/Instructions.h:1678
Parameters
- const llvm::Value* V
¶llvm::CallInst* cloneImpl() const
llvm::CallInst* cloneImpl() const
Declared at: llvm/include/llvm/IR/Instructions.h:1446
¶llvm::CallInst::TailCallKind getTailCallKind()
const
llvm::CallInst::TailCallKind getTailCallKind()
const
Declared at: llvm/include/llvm/IR/Instructions.h:1641
¶bool isMustTailCall() const
bool isMustTailCall() const
Declared at: llvm/include/llvm/IR/Instructions.h:1650
¶bool isNoTailCall() const
bool isNoTailCall() const
Declared at: llvm/include/llvm/IR/Instructions.h:1654
¶bool isTailCall() const
bool isTailCall() const
Declared at: llvm/include/llvm/IR/Instructions.h:1645
¶void setCanReturnTwice()
void setCanReturnTwice()
Declared at: llvm/include/llvm/IR/Instructions.h:1670
¶void setTailCall(bool isTC = true)
void setTailCall(bool isTC = true)
Declared at: llvm/include/llvm/IR/Instructions.h:1658
Parameters
- bool isTC = true
¶void setTailCallKind(
llvm::CallInst::TailCallKind TCK)
void setTailCallKind(
llvm::CallInst::TailCallKind TCK)
Declared at: llvm/include/llvm/IR/Instructions.h:1663
Parameters
- llvm::CallInst::TailCallKind TCK
¶void updateProfWeight(uint64_t S, uint64_t T)
void updateProfWeight(uint64_t S, uint64_t T)
Description
Updates profile metadata by scaling it by \p S / \p T.
Declared at: llvm/include/llvm/IR/Instructions.h:1683
Parameters
- uint64_t S
- uint64_t T