LLVM 20.0.0git
Functions
Composite Constants

Functions in this group operate on composite constants. More...

Collaboration diagram for Composite Constants:

Functions

LLVMValueRef LLVMConstStringInContext (LLVMContextRef C, const char *Str, unsigned Length, LLVMBool DontNullTerminate)
 Create a ConstantDataSequential and initialize it with a string.
 
LLVMValueRef LLVMConstStringInContext2 (LLVMContextRef C, const char *Str, size_t Length, LLVMBool DontNullTerminate)
 Create a ConstantDataSequential and initialize it with a string.
 
LLVMValueRef LLVMConstString (const char *Str, unsigned Length, LLVMBool DontNullTerminate)
 Create a ConstantDataSequential with string content in the global context.
 
LLVMBool LLVMIsConstantString (LLVMValueRef c)
 Returns true if the specified constant is an array of i8.
 
const charLLVMGetAsString (LLVMValueRef c, size_t *Length)
 Get the given constant data sequential as a string.
 
LLVMValueRef LLVMConstStructInContext (LLVMContextRef C, LLVMValueRef *ConstantVals, unsigned Count, LLVMBool Packed)
 Create an anonymous ConstantStruct with the specified values.
 
LLVMValueRef LLVMConstStruct (LLVMValueRef *ConstantVals, unsigned Count, LLVMBool Packed)
 Create a ConstantStruct in the global Context.
 
LLVMValueRef LLVMConstArray (LLVMTypeRef ElementTy, LLVMValueRef *ConstantVals, unsigned Length)
 Create a ConstantArray from values.
 
LLVMValueRef LLVMConstArray2 (LLVMTypeRef ElementTy, LLVMValueRef *ConstantVals, uint64_t Length)
 Create a ConstantArray from values.
 
LLVMValueRef LLVMConstNamedStruct (LLVMTypeRef StructTy, LLVMValueRef *ConstantVals, unsigned Count)
 Create a non-anonymous ConstantStruct from values.
 
LLVMValueRef LLVMGetAggregateElement (LLVMValueRef C, unsigned Idx)
 Get element of a constant aggregate (struct, array or vector) at the specified index.
 
 LLVM_ATTRIBUTE_C_DEPRECATED (LLVMValueRef LLVMGetElementAsConstant(LLVMValueRef C, unsigned idx), "Use LLVMGetAggregateElement instead")
 Get an element at specified index as a constant.
 
LLVMValueRef LLVMConstVector (LLVMValueRef *ScalarConstantVals, unsigned Size)
 Create a ConstantVector from values.
 
LLVMValueRef LLVMConstantPtrAuth (LLVMValueRef Ptr, LLVMValueRef Key, LLVMValueRef Disc, LLVMValueRef AddrDisc)
 Create a ConstantPtrAuth constant with the given values.
 

Detailed Description

Functions in this group operate on composite constants.

Function Documentation

◆ LLVM_ATTRIBUTE_C_DEPRECATED()

LLVM_ATTRIBUTE_C_DEPRECATED ( LLVMValueRef   LLVMGetElementAsConstantLLVMValueRef C, unsigned idx,
"Use LLVMGetAggregateElement instead"   
)

Get an element at specified index as a constant.

See also
ConstantDataSequential::getElementAsConstant()

◆ LLVMConstantPtrAuth()

LLVMValueRef LLVMConstantPtrAuth ( LLVMValueRef  Ptr,
LLVMValueRef  Key,
LLVMValueRef  Disc,
LLVMValueRef  AddrDisc 
)

Create a ConstantPtrAuth constant with the given values.

See also
llvm::ConstantPtrAuth::get()

Definition at line 1683 of file Core.cpp.

References llvm::ConstantPtrAuth::get(), Ptr, and llvm::wrap().

◆ LLVMConstArray()

LLVMValueRef LLVMConstArray ( LLVMTypeRef  ElementTy,
LLVMValueRef ConstantVals,
unsigned  Length 
)

Create a ConstantArray from values.

Deprecated:
LLVMConstArray is deprecated in favor of the API accurate LLVMConstArray2
See also
llvm::ConstantArray::get()

Definition at line 1643 of file Core.cpp.

References llvm::ConstantArray::get(), llvm::Length, unwrap(), and llvm::wrap().

◆ LLVMConstArray2()

LLVMValueRef LLVMConstArray2 ( LLVMTypeRef  ElementTy,
LLVMValueRef ConstantVals,
uint64_t  Length 
)

Create a ConstantArray from values.

See also
llvm::ConstantArray::get()

Definition at line 1649 of file Core.cpp.

References llvm::ConstantArray::get(), llvm::Length, unwrap(), and llvm::wrap().

◆ LLVMConstNamedStruct()

LLVMValueRef LLVMConstNamedStruct ( LLVMTypeRef  StructTy,
LLVMValueRef ConstantVals,
unsigned  Count 
)

Create a non-anonymous ConstantStruct from values.

See also
llvm::ConstantStruct::get()

Definition at line 1669 of file Core.cpp.

References llvm::ConstantStruct::get(), and llvm::wrap().

◆ LLVMConstString()

LLVMValueRef LLVMConstString ( const char Str,
unsigned  Length,
LLVMBool  DontNullTerminate 
)

Create a ConstantDataSequential with string content in the global context.

This is the same as LLVMConstStringInContext except it operates on the global context.

See also
LLVMConstStringInContext()
llvm::ConstantDataArray::getString()

Definition at line 1619 of file Core.cpp.

References llvm::Length, LLVMConstStringInContext(), and LLVMGetGlobalContext().

◆ LLVMConstStringInContext()

LLVMValueRef LLVMConstStringInContext ( LLVMContextRef  C,
const char Str,
unsigned  Length,
LLVMBool  DontNullTerminate 
)

Create a ConstantDataSequential and initialize it with a string.

Deprecated:
LLVMConstStringInContext is deprecated in favor of the API accurate LLVMConstStringInContext2
See also
llvm::ConstantDataArray::getString()

Definition at line 1601 of file Core.cpp.

References llvm::CallingConv::C, llvm::ConstantDataArray::getString(), llvm::Length, unwrap(), and llvm::wrap().

Referenced by LLVMConstString().

◆ LLVMConstStringInContext2()

LLVMValueRef LLVMConstStringInContext2 ( LLVMContextRef  C,
const char Str,
size_t  Length,
LLVMBool  DontNullTerminate 
)

Create a ConstantDataSequential and initialize it with a string.

See also
llvm::ConstantDataArray::getString()

Definition at line 1610 of file Core.cpp.

References llvm::CallingConv::C, llvm::ConstantDataArray::getString(), llvm::Length, unwrap(), and llvm::wrap().

◆ LLVMConstStruct()

LLVMValueRef LLVMConstStruct ( LLVMValueRef ConstantVals,
unsigned  Count,
LLVMBool  Packed 
)

Create a ConstantStruct in the global Context.

This is the same as LLVMConstStructInContext except it operates on the global Context.

See also
LLVMConstStructInContext()

Definition at line 1663 of file Core.cpp.

References LLVMConstStructInContext(), and LLVMGetGlobalContext().

◆ LLVMConstStructInContext()

LLVMValueRef LLVMConstStructInContext ( LLVMContextRef  C,
LLVMValueRef ConstantVals,
unsigned  Count,
LLVMBool  Packed 
)

Create an anonymous ConstantStruct with the specified values.

See also
llvm::ConstantStruct::getAnon()

Definition at line 1655 of file Core.cpp.

References llvm::CallingConv::C, llvm::ConstantStruct::getAnon(), unwrap(), and llvm::wrap().

Referenced by LLVMConstStruct().

◆ LLVMConstVector()

LLVMValueRef LLVMConstVector ( LLVMValueRef ScalarConstantVals,
unsigned  Size 
)

Create a ConstantVector from values.

See also
llvm::ConstantVector::get()

Definition at line 1678 of file Core.cpp.

References llvm::ConstantVector::get(), Size, and llvm::wrap().

◆ LLVMGetAggregateElement()

LLVMValueRef LLVMGetAggregateElement ( LLVMValueRef  C,
unsigned  Idx 
)

Get element of a constant aggregate (struct, array or vector) at the specified index.

Returns null if the index is out of range, or it's not possible to determine the element (e.g., because the constant is a constant expression.)

See also
llvm::Constant::getAggregateElement()

Definition at line 1625 of file Core.cpp.

References llvm::CallingConv::C, Idx, and llvm::wrap().

◆ LLVMGetAsString()

const char * LLVMGetAsString ( LLVMValueRef  c,
size_t *  Length 
)

Get the given constant data sequential as a string.

See also
ConstantDataSequential::getAsString()

Definition at line 1637 of file Core.cpp.

References llvm::CallingConv::C, and llvm::Length.

◆ LLVMIsConstantString()

LLVMBool LLVMIsConstantString ( LLVMValueRef  c)

Returns true if the specified constant is an array of i8.

See also
ConstantDataSequential::getAsString()

Definition at line 1633 of file Core.cpp.

References llvm::CallingConv::C.