LLVM 24.0.0git
Constant Expressions

Functions in this group correspond to APIs on llvm::ConstantExpr. More...

Collaboration diagram for Constant Expressions:

Functions

LLVM_C_ABI LLVMOpcode LLVMGetConstOpcode (LLVMValueRef ConstantVal)
LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED (LLVMValueRef LLVMAlignOf(LLVMTypeRef Ty), "Create a constant based on LLVMABIAlignmentOfType() instead")
LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED (LLVMValueRef LLVMSizeOf(LLVMTypeRef Ty), "Create a constant based on LLVMABISizeOfType() instead")
LLVM_C_ABI LLVMValueRef LLVMConstNeg (LLVMValueRef ConstantVal)
LLVM_C_ABI LLVMValueRef LLVMConstNSWNeg (LLVMValueRef ConstantVal)
LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED (LLVMValueRef LLVMConstNUWNeg(LLVMValueRef ConstantVal), "Use LLVMConstNull instead.")
LLVM_C_ABI LLVMValueRef LLVMConstNot (LLVMValueRef ConstantVal)
LLVM_C_ABI LLVMValueRef LLVMConstAdd (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVMValueRef LLVMConstNSWAdd (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVMValueRef LLVMConstNUWAdd (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVMValueRef LLVMConstSub (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVMValueRef LLVMConstNSWSub (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVMValueRef LLVMConstNUWSub (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVMValueRef LLVMConstXor (LLVMValueRef LHSConstant, LLVMValueRef RHSConstant)
LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED (LLVMValueRef LLVMConstGEP2(LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices), "Use LLVMConstPtrAdd() or LLVMConstPtrAddFromIndices() instead")
LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED (LLVMValueRef LLVMConstGEPWithNoWrapFlags(LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices, LLVMGEPNoWrapFlags NoWrapFlags), "Use LLVMConstPtrAdd() or LLVMConstPtrAddFromIndices() instead")
LLVM_C_ABI LLVMValueRef LLVMConstPtrAdd (LLVMValueRef ConstantVal, LLVMValueRef ConstantOffset, LLVMGEPNoWrapFlags NoWrapFlags)
 Creates a constant ptradd expression (getelementptr i8).
LLVM_C_ABI LLVMValueRef LLVMConstPtrAddFromIndices (LLVMTargetDataRef DataLayout, LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices, LLVMGEPNoWrapFlags NoWrapFlags)
 Creates a constant ptradd expression (getelementptr i8) by converting the provided GEP indices for the provided source element type into a constant offset using the provided data layout.
LLVM_C_ABI LLVMValueRef LLVMConstTrunc (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstPtrToInt (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstIntToPtr (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstBitCast (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstAddrSpaceCast (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstTruncOrBitCast (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstPointerCast (LLVMValueRef ConstantVal, LLVMTypeRef ToType)
LLVM_C_ABI LLVMValueRef LLVMConstExtractElement (LLVMValueRef VectorConstant, LLVMValueRef IndexConstant)
LLVM_C_ABI LLVMValueRef LLVMConstInsertElement (LLVMValueRef VectorConstant, LLVMValueRef ElementValueConstant, LLVMValueRef IndexConstant)
LLVM_C_ABI LLVMValueRef LLVMConstShuffleVector (LLVMValueRef VectorAConstant, LLVMValueRef VectorBConstant, LLVMValueRef MaskConstant)
LLVM_C_ABI LLVMValueRef LLVMBlockAddress (LLVMValueRef F, LLVMBasicBlockRef BB)
LLVM_C_ABI LLVMValueRef LLVMGetBlockAddressFunction (LLVMValueRef BlockAddr)
 Gets the function associated with a given BlockAddress constant value.
LLVM_C_ABI LLVMBasicBlockRef LLVMGetBlockAddressBasicBlock (LLVMValueRef BlockAddr)
 Gets the basic block associated with a given BlockAddress constant value.
LLVM_C_ABI LLVMValueRef LLVMConstInlineAsm (LLVMTypeRef Ty, const char *AsmString, const char *Constraints, LLVMBool HasSideEffects, LLVMBool IsAlignStack)
 Deprecated: Use LLVMGetInlineAsm instead.

Detailed Description

Functions in this group correspond to APIs on llvm::ConstantExpr.

See also
llvm::ConstantExpr.

Function Documentation

◆ LLVM_ATTRIBUTE_C_DEPRECATED() [1/5]

LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED ( LLVMValueRef LLVMAlignOfLLVMTypeRef Ty,
"Create a constant based on LLVMABIAlignmentOfType() instead"  )

◆ LLVM_ATTRIBUTE_C_DEPRECATED() [2/5]

LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED ( LLVMValueRef LLVMConstGEP2LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices,
"Use LLVMConstPtrAdd() or LLVMConstPtrAddFromIndices() instead"  )

◆ LLVM_ATTRIBUTE_C_DEPRECATED() [3/5]

LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED ( LLVMValueRef LLVMConstGEPWithNoWrapFlagsLLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices, LLVMGEPNoWrapFlags NoWrapFlags,
"Use LLVMConstPtrAdd() or LLVMConstPtrAddFromIndices() instead"  )

References A(), C(), const, F, Linkage, LLVM_ATTRIBUTE_C_DEPRECATED, LLVM_C_ABI, LLVMAddAlias2(), LLVMAddAttributeAtIndex(), LLVMAddGlobal(), LLVMAddGlobalIFunc(), LLVMAddGlobalInAddressSpace(), LLVMAddTargetDependentFunctionAttr(), LLVMAliasGetAliasee(), LLVMAliasSetAliasee(), LLVMBlockAddress(), LLVMConstAddrSpaceCast(), LLVMConstBitCast(), LLVMConstExtractElement(), LLVMConstGEPWithNoWrapFlags(), LLVMConstInlineAsm(), LLVMConstInsertElement(), LLVMConstIntToPtr(), LLVMConstPointerCast(), LLVMConstPtrAdd(), LLVMConstPtrAddFromIndices(), LLVMConstPtrToInt(), LLVMConstShuffleVector(), LLVMConstTrunc(), LLVMConstTruncOrBitCast(), LLVMCountParams(), LLVMDeleteFunction(), LLVMDeleteGlobal(), LLVMDisposeValueMetadataEntries(), LLVMEraseGlobalIFunc(), LLVMGetAlignment(), LLVMGetAttributeCountAtIndex(), LLVMGetAttributesAtIndex(), LLVMGetBlockAddressBasicBlock(), LLVMGetBlockAddressFunction(), LLVMGetDLLStorageClass(), LLVMGetEnumAttributeAtIndex(), LLVMGetFirstGlobal(), LLVMGetFirstGlobalAlias(), LLVMGetFirstGlobalIFunc(), LLVMGetFirstParam(), LLVMGetFunctionCallConv(), LLVMGetGC(), LLVMGetGlobalIFuncResolver(), LLVMGetGlobalParent(), LLVMGetInitializer(), LLVMGetIntrinsicDeclaration(), LLVMGetIntrinsicID(), LLVMGetLastGlobal(), LLVMGetLastGlobalAlias(), LLVMGetLastGlobalIFunc(), LLVMGetLastParam(), LLVMGetLinkage(), LLVMGetMDNodeNumOperands(), LLVMGetMDNodeOperands(), LLVMGetMDString(), LLVMGetNamedGlobal(), LLVMGetNamedGlobalAlias(), LLVMGetNamedGlobalIFunc(), LLVMGetNamedGlobalWithLength(), LLVMGetNextGlobal(), LLVMGetNextGlobalAlias(), LLVMGetNextGlobalIFunc(), LLVMGetNextParam(), LLVMGetParam(), LLVMGetParamParent(), LLVMGetParams(), LLVMGetPersonalityFn(), LLVMGetPrefixData(), LLVMGetPreviousGlobal(), LLVMGetPreviousGlobalAlias(), LLVMGetPreviousGlobalIFunc(), LLVMGetPreviousParam(), LLVMGetPrologueData(), LLVMGetSection(), LLVMGetStringAttributeAtIndex(), LLVMGetThreadLocalMode(), LLVMGetUnnamedAddress(), LLVMGetVisibility(), LLVMGlobalAddDebugInfo(), LLVMGlobalAddMetadata(), LLVMGlobalClearMetadata(), LLVMGlobalCopyAllMetadata(), LLVMGlobalEraseMetadata(), LLVMGlobalGetValueType(), LLVMGlobalSetMetadata(), LLVMHasPersonalityFn(), LLVMHasPrefixData(), LLVMHasPrologueData(), LLVMHasUnnamedAddr(), LLVMIntrinsicCopyOverloadedName(), LLVMIntrinsicCopyOverloadedName2(), LLVMIntrinsicGetName(), LLVMIntrinsicGetType(), LLVMIntrinsicIsOverloaded(), LLVMIsDeclaration(), LLVMIsDSOLocal(), LLVMIsExternallyInitialized(), LLVMIsGlobalConstant(), LLVMIsThreadLocal(), LLVMLookupIntrinsicID(), LLVMMDNodeInContext2(), LLVMMDStringInContext(), LLVMMDStringInContext2(), LLVMMetadataAsValue(), LLVMRemoveEnumAttributeAtIndex(), LLVMRemoveGlobalIFunc(), LLVMRemoveStringAttributeAtIndex(), LLVMReplaceMDNodeOperandWith(), LLVMSetAlignment(), LLVMSetDLLStorageClass(), LLVMSetDSOLocal(), LLVMSetExternallyInitialized(), LLVMSetFunctionCallConv(), LLVMSetGC(), LLVMSetGlobalConstant(), LLVMSetGlobalIFuncResolver(), LLVMSetInitializer(), LLVMSetLinkage(), LLVMSetParamAlignment(), LLVMSetPersonalityFn(), LLVMSetPrefixData(), LLVMSetPrologueData(), LLVMSetSection(), LLVMSetThreadLocal(), LLVMSetThreadLocalMode(), LLVMSetUnnamedAddr(), LLVMSetUnnamedAddress(), LLVMSetVisibility(), LLVMValueAsMetadata(), LLVMValueMetadataEntriesGetKind(), LLVMValueMetadataEntriesGetMetadata(), Mod, and Mode.

◆ LLVM_ATTRIBUTE_C_DEPRECATED() [4/5]

◆ LLVM_ATTRIBUTE_C_DEPRECATED() [5/5]

LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED ( LLVMValueRef LLVMSizeOfLLVMTypeRef Ty,
"Create a constant based on LLVMABISizeOfType() instead"  )

◆ LLVMBlockAddress()

Definition at line 2038 of file Core.cpp.

References F, llvm::BlockAddress::get(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstAdd()

LLVM_C_ABI LLVMValueRef LLVMConstAdd ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1873 of file Core.cpp.

References llvm::ConstantExpr::getAdd(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstAddrSpaceCast()

LLVM_C_ABI LLVMValueRef LLVMConstAddrSpaceCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

◆ LLVMConstBitCast()

LLVM_C_ABI LLVMValueRef LLVMConstBitCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1983 of file Core.cpp.

References llvm::ConstantExpr::getBitCast(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstExtractElement()

LLVM_C_ABI LLVMValueRef LLVMConstExtractElement ( LLVMValueRef VectorConstant,
LLVMValueRef IndexConstant )

◆ LLVMConstInlineAsm()

LLVM_C_ABI LLVMValueRef LLVMConstInlineAsm ( LLVMTypeRef Ty,
const char * AsmString,
const char * Constraints,
LLVMBool HasSideEffects,
LLVMBool IsAlignStack )

Deprecated: Use LLVMGetInlineAsm instead.

Definition at line 2030 of file Core.cpp.

References llvm::dyn_cast(), llvm::InlineAsm::get(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstInsertElement()

LLVM_C_ABI LLVMValueRef LLVMConstInsertElement ( LLVMValueRef VectorConstant,
LLVMValueRef ElementValueConstant,
LLVMValueRef IndexConstant )

◆ LLVMConstIntToPtr()

LLVM_C_ABI LLVMValueRef LLVMConstIntToPtr ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1978 of file Core.cpp.

References llvm::ConstantExpr::getIntToPtr(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNeg()

LLVM_C_ABI LLVMValueRef LLVMConstNeg ( LLVMValueRef ConstantVal)

Definition at line 1856 of file Core.cpp.

References llvm::ConstantExpr::getNeg(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNot()

LLVM_C_ABI LLVMValueRef LLVMConstNot ( LLVMValueRef ConstantVal)

Definition at line 1869 of file Core.cpp.

References llvm::ConstantExpr::getNot(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNSWAdd()

LLVM_C_ABI LLVMValueRef LLVMConstNSWAdd ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1878 of file Core.cpp.

References llvm::ConstantExpr::getNSWAdd(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNSWNeg()

LLVM_C_ABI LLVMValueRef LLVMConstNSWNeg ( LLVMValueRef ConstantVal)

Definition at line 1860 of file Core.cpp.

References llvm::ConstantExpr::getNSWNeg(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNSWSub()

LLVM_C_ABI LLVMValueRef LLVMConstNSWSub ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1895 of file Core.cpp.

References llvm::ConstantExpr::getNSWSub(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNUWAdd()

LLVM_C_ABI LLVMValueRef LLVMConstNUWAdd ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1884 of file Core.cpp.

References llvm::ConstantExpr::getNUWAdd(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstNUWSub()

LLVM_C_ABI LLVMValueRef LLVMConstNUWSub ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1901 of file Core.cpp.

References llvm::ConstantExpr::getNUWSub(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstPointerCast()

LLVM_C_ABI LLVMValueRef LLVMConstPointerCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

◆ LLVMConstPtrAdd()

LLVM_C_ABI LLVMValueRef LLVMConstPtrAdd ( LLVMValueRef ConstantVal,
LLVMValueRef ConstantOffset,
LLVMGEPNoWrapFlags NoWrapFlags )

Creates a constant ptradd expression (getelementptr i8).

See also
llvm::ConstantExpr::getPtrAdd()

Definition at line 1947 of file Core.cpp.

References llvm::ConstantExpr::getPtrAdd(), mapFromLLVMGEPNoWrapFlags(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstPtrAddFromIndices()

LLVM_C_ABI LLVMValueRef LLVMConstPtrAddFromIndices ( LLVMTargetDataRef DataLayout,
LLVMTypeRef Ty,
LLVMValueRef ConstantVal,
LLVMValueRef * ConstantIndices,
unsigned NumIndices,
LLVMGEPNoWrapFlags NoWrapFlags )

Creates a constant ptradd expression (getelementptr i8) by converting the provided GEP indices for the provided source element type into a constant offset using the provided data layout.

May return null if the indices are not representable as a constant ptradd.

See also
llvm::ConstantExpr::getGetElementPtr()

Definition at line 1955 of file Core.cpp.

References llvm::ConstantExpr::getGetElementPtr(), mapFromLLVMGEPNoWrapFlags(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstPtrToInt()

LLVM_C_ABI LLVMValueRef LLVMConstPtrToInt ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1973 of file Core.cpp.

References llvm::ConstantExpr::getPtrToInt(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstShuffleVector()

LLVM_C_ABI LLVMValueRef LLVMConstShuffleVector ( LLVMValueRef VectorAConstant,
LLVMValueRef VectorBConstant,
LLVMValueRef MaskConstant )

◆ LLVMConstSub()

LLVM_C_ABI LLVMValueRef LLVMConstSub ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1890 of file Core.cpp.

References llvm::ConstantExpr::getSub(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstTrunc()

LLVM_C_ABI LLVMValueRef LLVMConstTrunc ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1968 of file Core.cpp.

References llvm::ConstantExpr::getTrunc(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMConstTruncOrBitCast()

LLVM_C_ABI LLVMValueRef LLVMConstTruncOrBitCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

◆ LLVMConstXor()

LLVM_C_ABI LLVMValueRef LLVMConstXor ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1907 of file Core.cpp.

References llvm::ConstantExpr::getXor(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMGetBlockAddressBasicBlock()

LLVM_C_ABI LLVMBasicBlockRef LLVMGetBlockAddressBasicBlock ( LLVMValueRef BlockAddr)

Gets the basic block associated with a given BlockAddress constant value.

Definition at line 2046 of file Core.cpp.

References llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMGetBlockAddressFunction()

LLVM_C_ABI LLVMValueRef LLVMGetBlockAddressFunction ( LLVMValueRef BlockAddr)

Gets the function associated with a given BlockAddress constant value.

Definition at line 2042 of file Core.cpp.

References getFunction(), llvm::unwrap(), and llvm::wrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().

◆ LLVMGetConstOpcode()

LLVM_C_ABI LLVMOpcode LLVMGetConstOpcode ( LLVMValueRef ConstantVal)

Definition at line 1840 of file Core.cpp.

References map_to_llvmopcode(), and llvm::unwrap().

Referenced by LLVM_ATTRIBUTE_C_DEPRECATED().