LLVM 22.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 LLVMValueRef LLVMAlignOf (LLVMTypeRef Ty)
LLVM_C_ABI LLVMValueRef LLVMSizeOf (LLVMTypeRef Ty)
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 LLVMValueRef LLVMConstGEP2 (LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices)
LLVM_C_ABI LLVMValueRef LLVMConstInBoundsGEP2 (LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices)
LLVM_C_ABI LLVMValueRef LLVMConstGEPWithNoWrapFlags (LLVMTypeRef Ty, LLVMValueRef ConstantVal, LLVMValueRef *ConstantIndices, unsigned NumIndices, LLVMGEPNoWrapFlags NoWrapFlags)
 Creates a constant GetElementPtr expression.
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()

LLVM_C_ABI LLVM_ATTRIBUTE_C_DEPRECATED ( LLVMValueRef LLVMConstNUWNegLLVMValueRef ConstantVal,
"Use LLVMConstNull instead."  )

References A(), B(), block, C(), Cond, F, GEP, LHS, Linkage, LLVM_C_ABI, Mod, Mode, N, and RHS.

◆ LLVMAlignOf()

LLVM_C_ABI LLVMValueRef LLVMAlignOf ( LLVMTypeRef Ty)

Definition at line 1759 of file Core.cpp.

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

◆ LLVMBlockAddress()

Definition at line 1922 of file Core.cpp.

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

◆ LLVMConstAdd()

LLVM_C_ABI LLVMValueRef LLVMConstAdd ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1784 of file Core.cpp.

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

◆ LLVMConstAddrSpaceCast()

LLVM_C_ABI LLVMValueRef LLVMConstAddrSpaceCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1872 of file Core.cpp.

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

◆ LLVMConstBitCast()

LLVM_C_ABI LLVMValueRef LLVMConstBitCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1867 of file Core.cpp.

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

◆ LLVMConstExtractElement()

LLVM_C_ABI LLVMValueRef LLVMConstExtractElement ( LLVMValueRef VectorConstant,
LLVMValueRef IndexConstant )

Definition at line 1890 of file Core.cpp.

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

◆ LLVMConstGEP2()

LLVM_C_ABI LLVMValueRef LLVMConstGEP2 ( LLVMTypeRef Ty,
LLVMValueRef ConstantVal,
LLVMValueRef * ConstantIndices,
unsigned NumIndices )

Definition at line 1823 of file Core.cpp.

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

◆ LLVMConstGEPWithNoWrapFlags()

LLVM_C_ABI LLVMValueRef LLVMConstGEPWithNoWrapFlags ( LLVMTypeRef Ty,
LLVMValueRef ConstantVal,
LLVMValueRef * ConstantIndices,
unsigned NumIndices,
LLVMGEPNoWrapFlags NoWrapFlags )

Creates a constant GetElementPtr expression.

Similar to LLVMConstGEP2, but allows specifying the no-wrap flags.

See also
llvm::ConstantExpr::getGetElementPtr()

Definition at line 1840 of file Core.cpp.

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

◆ LLVMConstInBoundsGEP2()

LLVM_C_ABI LLVMValueRef LLVMConstInBoundsGEP2 ( LLVMTypeRef Ty,
LLVMValueRef ConstantVal,
LLVMValueRef * ConstantIndices,
unsigned NumIndices )

◆ 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 1914 of file Core.cpp.

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

◆ LLVMConstInsertElement()

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

Definition at line 1896 of file Core.cpp.

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

◆ LLVMConstIntToPtr()

LLVM_C_ABI LLVMValueRef LLVMConstIntToPtr ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1862 of file Core.cpp.

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

◆ LLVMConstNeg()

LLVM_C_ABI LLVMValueRef LLVMConstNeg ( LLVMValueRef ConstantVal)

Definition at line 1767 of file Core.cpp.

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

◆ LLVMConstNot()

LLVM_C_ABI LLVMValueRef LLVMConstNot ( LLVMValueRef ConstantVal)

Definition at line 1780 of file Core.cpp.

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

◆ LLVMConstNSWAdd()

LLVM_C_ABI LLVMValueRef LLVMConstNSWAdd ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1789 of file Core.cpp.

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

◆ LLVMConstNSWNeg()

LLVM_C_ABI LLVMValueRef LLVMConstNSWNeg ( LLVMValueRef ConstantVal)

Definition at line 1771 of file Core.cpp.

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

◆ LLVMConstNSWSub()

LLVM_C_ABI LLVMValueRef LLVMConstNSWSub ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1806 of file Core.cpp.

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

◆ LLVMConstNUWAdd()

LLVM_C_ABI LLVMValueRef LLVMConstNUWAdd ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1795 of file Core.cpp.

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

◆ LLVMConstNUWSub()

LLVM_C_ABI LLVMValueRef LLVMConstNUWSub ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1812 of file Core.cpp.

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

◆ LLVMConstPointerCast()

LLVM_C_ABI LLVMValueRef LLVMConstPointerCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1884 of file Core.cpp.

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

◆ LLVMConstPtrToInt()

LLVM_C_ABI LLVMValueRef LLVMConstPtrToInt ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1857 of file Core.cpp.

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

◆ 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 1801 of file Core.cpp.

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

◆ LLVMConstTrunc()

LLVM_C_ABI LLVMValueRef LLVMConstTrunc ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1852 of file Core.cpp.

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

◆ LLVMConstTruncOrBitCast()

LLVM_C_ABI LLVMValueRef LLVMConstTruncOrBitCast ( LLVMValueRef ConstantVal,
LLVMTypeRef ToType )

Definition at line 1878 of file Core.cpp.

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

◆ LLVMConstXor()

LLVM_C_ABI LLVMValueRef LLVMConstXor ( LLVMValueRef LHSConstant,
LLVMValueRef RHSConstant )

Definition at line 1818 of file Core.cpp.

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

◆ LLVMGetBlockAddressBasicBlock()

LLVM_C_ABI LLVMBasicBlockRef LLVMGetBlockAddressBasicBlock ( LLVMValueRef BlockAddr)

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

Definition at line 1930 of file Core.cpp.

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

◆ LLVMGetBlockAddressFunction()

LLVM_C_ABI LLVMValueRef LLVMGetBlockAddressFunction ( LLVMValueRef BlockAddr)

Gets the function associated with a given BlockAddress constant value.

Definition at line 1926 of file Core.cpp.

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

◆ LLVMGetConstOpcode()

LLVM_C_ABI LLVMOpcode LLVMGetConstOpcode ( LLVMValueRef ConstantVal)

Definition at line 1755 of file Core.cpp.

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

◆ LLVMSizeOf()

Definition at line 1763 of file Core.cpp.

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