IRValue
public protocol IRValue
An IRValue is a type that is capable of lowering itself to an
LLVMValueRef object for use with LLVM’s C API.
-
Retrieves the underlying LLVM value object.
Declaration
Swift
func asLLVM() -> LLVMValueRef
-
isAArgumentExtension methodWhether or not the underlying LLVM value is an
ArgumentDeclaration
Swift
public var isAArgument: Bool -
isABasicBlockExtension methodWhether or not the underlying LLVM value is a
BasicBlockDeclaration
Swift
public var isABasicBlock: Bool -
isAInlineAsmExtension methodWhether or not the underlying LLVM value is
InlineAsmDeclaration
Swift
public var isAInlineAsm: Bool -
isAUserExtension methodWhether or not the underlying LLVM value is a
UserDeclaration
Swift
public var isAUser: Bool -
isAConstantExtension methodWhether or not the underlying LLVM value is a
ConstantDeclaration
Swift
public var isAConstant: Bool -
isABlockAddressExtension methodWhether or not the underlying LLVM value is a
BlockAddressDeclaration
Swift
public var isABlockAddress: Bool -
isAConstantAggregateZeroExtension methodWhether or not the underlying LLVM value is a
ConstantAggregateZeroDeclaration
Swift
public var isAConstantAggregateZero: Bool -
isAConstantArrayExtension methodWhether or not the underlying LLVM value is a
ConstantArrayDeclaration
Swift
public var isAConstantArray: Bool -
isAConstantDataSequentialExtension methodWhether or not the underlying LLVM value is a
ConstantDataSequentialDeclaration
Swift
public var isAConstantDataSequential: Bool -
isAConstantDataArrayExtension methodWhether or not the underlying LLVM value is a
ConstantDataArrayDeclaration
Swift
public var isAConstantDataArray: Bool -
isAConstantDataVectorExtension methodWhether or not the underlying LLVM value is a
ConstantDataVectorDeclaration
Swift
public var isAConstantDataVector: Bool -
isAConstantExprExtension methodWhether or not the underlying LLVM value is a
ConstantExprDeclaration
Swift
public var isAConstantExpr: Bool -
isAConstantFPExtension methodWhether or not the underlying LLVM value is a
ConstantFPDeclaration
Swift
public var isAConstantFP: Bool -
isAConstantIntExtension methodWhether or not the underlying LLVM value is a
ConstantIntDeclaration
Swift
public var isAConstantInt: Bool -
isAConstantPointerNullExtension methodWhether or not the underlying LLVM value is a
ConstantPointerNullDeclaration
Swift
public var isAConstantPointerNull: Bool -
isAConstantStructExtension methodWhether or not the underlying LLVM value is a
ConstantStructDeclaration
Swift
public var isAConstantStruct: Bool -
isAConstantTokenNoneExtension methodWhether or not the underlying LLVM value is a
ConstantTokenNoneDeclaration
Swift
public var isAConstantTokenNone: Bool -
isAConstantVectorExtension methodWhether or not the underlying LLVM value is a
ConstantVectorDeclaration
Swift
public var isAConstantVector: Bool -
isAGlobalValueExtension methodWhether or not the underlying LLVM value is a
GlobalValueDeclaration
Swift
public var isAGlobalValue: Bool -
isAGlobalAliasExtension methodWhether or not the underlying LLVM value is a
GlobalAliasDeclaration
Swift
public var isAGlobalAlias: Bool -
isAGlobalObjectExtension methodWhether or not the underlying LLVM value is a
GlobalObjectDeclaration
Swift
public var isAGlobalObject: Bool -
isAFunctionExtension methodWhether or not the underlying LLVM value is a
FunctionDeclaration
Swift
public var isAFunction: Bool -
isAGlobalVariableExtension methodWhether or not the underlying LLVM value is a
GlobalVariableDeclaration
Swift
public var isAGlobalVariable: Bool -
isAUndefValueExtension methodWhether or not the underlying LLVM value is an
UndefValueDeclaration
Swift
public var isAUndefValue: Bool -
isAInstructionExtension methodWhether or not the underlying LLVM value is an
InstructionDeclaration
Swift
public var isAInstruction: Bool -
isABinaryOperatorExtension methodWhether or not the underlying LLVM value is a
BinaryOperatorDeclaration
Swift
public var isABinaryOperator: Bool -
isACallInstExtension methodWhether or not the underlying LLVM value is a
CallInstDeclaration
Swift
public var isACallInst: Bool -
isAIntrinsicInstExtension methodWhether or not the underlying LLVM value is an
IntrinsicInstDeclaration
Swift
public var isAIntrinsicInst: Bool -
isADbgInfoIntrinsicExtension methodWhether or not the underlying LLVM value is a
DbgInfoIntrinsicDeclaration
Swift
public var isADbgInfoIntrinsic: Bool -
isADbgDeclareInstExtension methodWhether or not the underlying LLVM value is a
DbgDeclareInstDeclaration
Swift
public var isADbgDeclareInst: Bool -
isAMemIntrinsicExtension methodWhether or not the underlying LLVM value is a
MemIntrinsicDeclaration
Swift
public var isAMemIntrinsic: Bool -
isAMemCpyInstExtension methodWhether or not the underlying LLVM value is a
MemCpyInstDeclaration
Swift
public var isAMemCpyInst: Bool -
isAMemMoveInstExtension methodWhether or not the underlying LLVM value is a
MemMoveInstDeclaration
Swift
public var isAMemMoveInst: Bool -
isAMemSetInstExtension methodWhether or not the underlying LLVM value is a
MemSetInstDeclaration
Swift
public var isAMemSetInst: Bool -
isACmpInstExtension methodWhether or not the underlying LLVM value is a
CmpInstDeclaration
Swift
public var isACmpInst: Bool -
isAFCmpInstExtension methodWhether or not the underlying LLVM value is a
FCmpInstDeclaration
Swift
public var isAFCmpInst: Bool -
isAICmpInstExtension methodWhether or not the underlying LLVM value is an
ICmpInstDeclaration
Swift
public var isAICmpInst: Bool -
isAExtractElementInstExtension methodWhether or not the underlying LLVM value is an
ExtractElementInstDeclaration
Swift
public var isAExtractElementInst: Bool -
isAGetElementPtrInstExtension methodWhether or not the underlying LLVM value is a
GetElementPtrInstDeclaration
Swift
public var isAGetElementPtrInst: Bool -
isAInsertElementInstExtension methodWhether or not the underlying LLVM value is an
InsertElementInstDeclaration
Swift
public var isAInsertElementInst: Bool -
isAInsertValueInstExtension methodWhether or not the underlying LLVM value is an
InsertValueInstDeclaration
Swift
public var isAInsertValueInst: Bool -
isALandingPadInstExtension methodWhether or not the underlying LLVM value is a
LandingPadInstDeclaration
Swift
public var isALandingPadInst: Bool -
isAPHINodeExtension methodWhether or not the underlying LLVM value is a
PHINodeDeclaration
Swift
public var isAPHINode: Bool -
isASelectInstExtension methodWhether or not the underlying LLVM value is a
SelectInstDeclaration
Swift
public var isASelectInst: Bool -
isAShuffleVectorInstExtension methodWhether or not the underlying LLVM value is a
ShuffleVectorInstDeclaration
Swift
public var isAShuffleVectorInst: Bool -
isAStoreInstExtension methodWhether or not the underlying LLVM value is a
StoreInstDeclaration
Swift
public var isAStoreInst: Bool -
isATerminatorInstExtension methodWhether or not the underlying LLVM value is a
TerminatorInstDeclaration
Swift
public var isATerminatorInst: Bool -
isABranchInstExtension methodWhether or not the underlying LLVM value is a
BranchInstDeclaration
Swift
public var isABranchInst: Bool -
isAIndirectBrInstExtension methodWhether or not the underlying LLVM value is an
IndirectBrInstDeclaration
Swift
public var isAIndirectBrInst: Bool -
isAInvokeInstExtension methodWhether or not the underlying LLVM value is an
InvokeInstDeclaration
Swift
public var isAInvokeInst: Bool -
isAReturnInstExtension methodWhether or not the underlying LLVM value is a
ReturnInstDeclaration
Swift
public var isAReturnInst: Bool -
isASwitchInstExtension methodWhether or not the underlying LLVM value is a
SwitchInstDeclaration
Swift
public var isASwitchInst: Bool -
isAUnreachableInstExtension methodWhether or not the underlying LLVM value is an
UnreachableInstDeclaration
Swift
public var isAUnreachableInst: Bool -
isAResumeInstExtension methodWhether or not the underlying LLVM value is a
ResumeInstDeclaration
Swift
public var isAResumeInst: Bool -
isACleanupReturnInstExtension methodWhether or not the underlying LLVM value is a
CleanupReturnInstDeclaration
Swift
public var isACleanupReturnInst: Bool -
isACatchReturnInstExtension methodWhether or not the underlying LLVM value is a
CatchReturnInstDeclaration
Swift
public var isACatchReturnInst: Bool -
isAFuncletPadInstExtension methodWhether or not the underlying LLVM value is a
FuncletPadInstDeclaration
Swift
public var isAFuncletPadInst: Bool -
isACatchPadInstExtension methodWhether or not the underlying LLVM value is a
CatchPadInstDeclaration
Swift
public var isACatchPadInst: Bool -
isACleanupPadInstExtension methodWhether or not the underlying LLVM value is a
CleanupPadInstDeclaration
Swift
public var isACleanupPadInst: Bool -
isAUnaryInstructionExtension methodWhether or not the underlying LLVM value is a
UnaryInstructionDeclaration
Swift
public var isAUnaryInstruction: Bool -
isAAllocaInstExtension methodWhether or not the underlying LLVM value is an
AllocaInstDeclaration
Swift
public var isAAllocaInst: Bool -
isACastInstExtension methodWhether or not the underlying LLVM value is a
CastInstDeclaration
Swift
public var isACastInst: Bool -
isAAddrSpaceCastInstExtension methodWhether or not the underlying LLVM value is an
AddrSpaceCastInstDeclaration
Swift
public var isAAddrSpaceCastInst: Bool -
isABitCastInstExtension methodWhether or not the underlying LLVM value is a
BitCastInstDeclaration
Swift
public var isABitCastInst: Bool -
isAFPExtInstExtension methodWhether or not the underlying LLVM value is a
FPExtInstDeclaration
Swift
public var isAFPExtInst: Bool -
isAFPToSIInstExtension methodWhether or not the underlying LLVM value is a
FPToSIInstDeclaration
Swift
public var isAFPToSIInst: Bool -
isAFPToUIInstExtension methodWhether or not the underlying LLVM value is a
FPToUIInstDeclaration
Swift
public var isAFPToUIInst: Bool -
isAFPTruncInstExtension methodWhether or not the underlying LLVM value is a
FPTruncInstDeclaration
Swift
public var isAFPTruncInst: Bool -
isAIntToPtrInstExtension methodWhether or not the underlying LLVM value is an
IntToPtrInstDeclaration
Swift
public var isAIntToPtrInst: Bool -
isAPtrToIntInstExtension methodWhether or not the underlying LLVM value is a
PtrToIntInstDeclaration
Swift
public var isAPtrToIntInst: Bool -
isASExtInstExtension methodWhether or not the underlying LLVM value is a
SExtInstDeclaration
Swift
public var isASExtInst: Bool -
isASIToFPInstExtension methodWhether or not the underlying LLVM value is a
SIToFPInstDeclaration
Swift
public var isASIToFPInst: Bool -
isATruncInstExtension methodWhether or not the underlying LLVM value is a
TruncInstDeclaration
Swift
public var isATruncInst: Bool -
isAUIToFPInstExtension methodWhether or not the underlying LLVM value is a
UIToFPInstDeclaration
Swift
public var isAUIToFPInst: Bool -
isAZExtInstExtension methodWhether or not the underlying LLVM value is a
ZExtInstDeclaration
Swift
public var isAZExtInst: Bool -
isAExtractValueInstExtension methodWhether or not the underlying LLVM value is a
ExtractValueInstDeclaration
Swift
public var isAExtractValueInst: Bool -
isALoadInstExtension methodWhether or not the underlying LLVM value is a
LoadInstDeclaration
Swift
public var isALoadInst: Bool -
isAVAArgInstExtension methodWhether or not the underlying LLVM value is a
VAArgInstDeclaration
Swift
public var isAVAArgInst: Bool
-
typeExtension methodRetrieves the type of this value.
Declaration
Swift
public var type: IRType -
alignmentExtension methodRetrieves the alignment of this value.
Declaration
Swift
public var alignment: Int -
isConstantExtension methodReturns whether this value is a constant.
Declaration
Swift
public var isConstant: Bool -
isUndefExtension methodReturns whether this value has been initialized with the special
undefvalue.The
undefvalue can be used anywhere a constant is expected, and indicates that the user of the value may receive an unspecified bit-pattern.Declaration
Swift
public var isUndef: Bool -
nameExtension methodGets and sets the name for this value.
Declaration
Swift
public var name: String -
constGEP(indices:)Extension methodPerform a GEP (Get Element Pointer) with this value as the base.
Declaration
Swift
public func constGEP(indices: [IRValue]) -> IRValueParameters
indicesA list of indices that indicate which of the elements of the aggregate object are indexed.
Return Value
A value representing the address of a subelement of the given aggregate data structure value.
-
replaceAllUses(with:)Extension methodReplaces all uses of this value with the specified value.
Declaration
Swift
public func replaceAllUses(with value: IRValue)Parameters
valueThe new value to swap in.
-
dump()Extension methodDumps a representation of this value to stderr.
Declaration
Swift
public func dump()
IRValue Protocol Reference