LLVM
8.0.1
|
These functions relate to LLVMTypeRef instances. More...
Functions | |
LLVMTypeRef | LLVMStructTypeInContext (LLVMContextRef C, LLVMTypeRef *ElementTypes, unsigned ElementCount, LLVMBool Packed) |
Create a new structure type in a context. More... | |
LLVMTypeRef | LLVMStructType (LLVMTypeRef *ElementTypes, unsigned ElementCount, LLVMBool Packed) |
Create a new structure type in the global context. More... | |
LLVMTypeRef | LLVMStructCreateNamed (LLVMContextRef C, const char *Name) |
Create an empty structure in a context having a specified name. More... | |
const char * | LLVMGetStructName (LLVMTypeRef Ty) |
Obtain the name of a structure. More... | |
void | LLVMStructSetBody (LLVMTypeRef StructTy, LLVMTypeRef *ElementTypes, unsigned ElementCount, LLVMBool Packed) |
Set the contents of a structure type. More... | |
unsigned | LLVMCountStructElementTypes (LLVMTypeRef StructTy) |
Get the number of elements defined inside the structure. More... | |
void | LLVMGetStructElementTypes (LLVMTypeRef StructTy, LLVMTypeRef *Dest) |
Get the elements within a structure. More... | |
LLVMTypeRef | LLVMStructGetTypeAtIndex (LLVMTypeRef StructTy, unsigned i) |
Get the type of the element at a given index in the structure. More... | |
LLVMBool | LLVMIsPackedStruct (LLVMTypeRef StructTy) |
Determine whether a structure is packed. More... | |
LLVMBool | LLVMIsOpaqueStruct (LLVMTypeRef StructTy) |
Determine whether a structure is opaque. More... | |
LLVMBool | LLVMIsLiteralStruct (LLVMTypeRef StructTy) |
Determine whether a structure is literal. More... | |
These functions relate to LLVMTypeRef instances.
unsigned LLVMCountStructElementTypes | ( | LLVMTypeRef | StructTy | ) |
Get the number of elements defined inside the structure.
void LLVMGetStructElementTypes | ( | LLVMTypeRef | StructTy, |
LLVMTypeRef * | Dest | ||
) |
Get the elements within a structure.
The function is passed the address of a pre-allocated array of LLVMTypeRef at least LLVMCountStructElementTypes() long. After invocation, this array will be populated with the structure's elements. The objects in the destination array will have a lifetime of the structure type itself, which is the lifetime of the context it is contained in.
Definition at line 697 of file Core.cpp.
References E, llvm::StructType::element_begin(), llvm::StructType::element_end(), I, and llvm::wrap().
const char* LLVMGetStructName | ( | LLVMTypeRef | Ty | ) |
Obtain the name of a structure.
Definition at line 679 of file Core.cpp.
References llvm::StringRef::data(), llvm::StructType::getName(), and llvm::StructType::hasName().
LLVMBool LLVMIsLiteralStruct | ( | LLVMTypeRef | StructTy | ) |
Determine whether a structure is literal.
LLVMBool LLVMIsOpaqueStruct | ( | LLVMTypeRef | StructTy | ) |
Determine whether a structure is opaque.
LLVMBool LLVMIsPackedStruct | ( | LLVMTypeRef | StructTy | ) |
Determine whether a structure is packed.
LLVMTypeRef LLVMStructCreateNamed | ( | LLVMContextRef | C, |
const char * | Name | ||
) |
Create an empty structure in a context having a specified name.
Definition at line 674 of file Core.cpp.
References llvm::StructType::create(), llvm::unwrap(), and llvm::wrap().
LLVMTypeRef LLVMStructGetTypeAtIndex | ( | LLVMTypeRef | StructTy, |
unsigned | i | ||
) |
Get the type of the element at a given index in the structure.
Definition at line 704 of file Core.cpp.
References llvm::CompositeType::getTypeAtIndex(), and llvm::wrap().
void LLVMStructSetBody | ( | LLVMTypeRef | StructTy, |
LLVMTypeRef * | ElementTypes, | ||
unsigned | ElementCount, | ||
LLVMBool | Packed | ||
) |
Set the contents of a structure type.
Definition at line 687 of file Core.cpp.
References llvm::unwrap().
LLVMTypeRef LLVMStructType | ( | LLVMTypeRef * | ElementTypes, |
unsigned | ElementCount, | ||
LLVMBool | Packed | ||
) |
Create a new structure type in the global context.
Definition at line 668 of file Core.cpp.
References LLVMGetGlobalContext(), and LLVMStructTypeInContext().
LLVMTypeRef LLVMStructTypeInContext | ( | LLVMContextRef | C, |
LLVMTypeRef * | ElementTypes, | ||
unsigned | ElementCount, | ||
LLVMBool | Packed | ||
) |
Create a new structure type in a context.
A structure is specified by a list of inner elements/types and whether these can be packed together.
Definition at line 662 of file Core.cpp.
References llvm::StructType::get(), llvm::unwrap(), and llvm::wrap().
Referenced by LLVMStructType().