LLVM API Documentation
Modules | |
Integer Types | |
Floating Point Types | |
Function Types | |
Structure Types | |
Sequential Types | |
Other Types | |
Functions | |
LLVMTypeKind | LLVMGetTypeKind (LLVMTypeRef Ty) |
LLVMBool | LLVMTypeIsSized (LLVMTypeRef Ty) |
LLVMContextRef | LLVMGetTypeContext (LLVMTypeRef Ty) |
void | LLVMDumpType (LLVMTypeRef Val) |
char * | LLVMPrintTypeToString (LLVMTypeRef Val) |
Types represent the type of a value.
Types are associated with a context instance. The context internally deduplicates types so there is only 1 instance of a specific type alive at a time. In other words, a unique type is shared among all consumers within a context.
A Type in the C API corresponds to llvm::Type.
Types have the following hierarchy:
types: integer type real type function type sequence types: array type pointer type vector type void type label type opaque type
void LLVMDumpType | ( | LLVMTypeRef | Val | ) |
Dump a representation of a type to stderr.
Definition at line 278 of file Core.cpp.
References llvm::unwrap().
Obtain the context to which this type instance is associated.
Definition at line 274 of file Core.cpp.
References llvm::unwrap(), and llvm::wrap().
Obtain the enumerated type of a Type instance.
Definition at line 231 of file Core.cpp.
References llvm::Type::ArrayTyID, llvm::Type::DoubleTyID, llvm::Type::FloatTyID, llvm::Type::FP128TyID, llvm::Type::FunctionTyID, getTypeID(), llvm::Type::HalfTyID, llvm::Type::IntegerTyID, llvm::Type::LabelTyID, llvm_unreachable, LLVMArrayTypeKind, LLVMDoubleTypeKind, LLVMFloatTypeKind, LLVMFP128TypeKind, LLVMFunctionTypeKind, LLVMHalfTypeKind, LLVMIntegerTypeKind, LLVMLabelTypeKind, LLVMMetadataTypeKind, LLVMPointerTypeKind, LLVMPPC_FP128TypeKind, LLVMStructTypeKind, LLVMVectorTypeKind, LLVMVoidTypeKind, LLVMX86_FP80TypeKind, LLVMX86_MMXTypeKind, llvm::Type::MetadataTyID, llvm::Type::PointerTyID, llvm::Type::PPC_FP128TyID, llvm::Type::StructTyID, llvm::unwrap(), llvm::Type::VectorTyID, llvm::Type::VoidTyID, llvm::Type::X86_FP80TyID, and llvm::Type::X86_MMXTyID.
char* LLVMPrintTypeToString | ( | LLVMTypeRef | Val | ) |
Return a string representation of the type. Use LLVMDisposeMessage to free the string.
Definition at line 282 of file Core.cpp.
References llvm::raw_ostream::flush(), llvm::LibFunc::strdup, and llvm::unwrap().
Whether the type has a known size.
Things that don't have a size are abstract types, labels, and void.a
Definition at line 269 of file Core.cpp.
References llvm::unwrap().