Project Alice
Loading...
Searching...
No Matches
Sequential Types
Collaboration diagram for Sequential Types:

Functions

LLVMTypeRef LLVMGetElementType (LLVMTypeRef Ty)
 
void LLVMGetSubtypes (LLVMTypeRef Tp, LLVMTypeRef *Arr)
 
unsigned LLVMGetNumContainedTypes (LLVMTypeRef Tp)
 
LLVMTypeRef LLVMArrayType (LLVMTypeRef ElementType, unsigned ElementCount)
 
LLVMTypeRef LLVMArrayType2 (LLVMTypeRef ElementType, uint64_t ElementCount)
 
unsigned LLVMGetArrayLength (LLVMTypeRef ArrayTy)
 
uint64_t LLVMGetArrayLength2 (LLVMTypeRef ArrayTy)
 
LLVMTypeRef LLVMPointerType (LLVMTypeRef ElementType, unsigned AddressSpace)
 
LLVMBool LLVMPointerTypeIsOpaque (LLVMTypeRef Ty)
 
LLVMTypeRef LLVMPointerTypeInContext (LLVMContextRef C, unsigned AddressSpace)
 
unsigned LLVMGetPointerAddressSpace (LLVMTypeRef PointerTy)
 
LLVMTypeRef LLVMVectorType (LLVMTypeRef ElementType, unsigned ElementCount)
 
LLVMTypeRef LLVMScalableVectorType (LLVMTypeRef ElementType, unsigned ElementCount)
 
unsigned LLVMGetVectorSize (LLVMTypeRef VectorTy)
 

Detailed Description

Sequential types represents "arrays" of types. This is a super class for array, vector, and pointer types.

Function Documentation

◆ LLVMArrayType()

LLVMTypeRef LLVMArrayType ( LLVMTypeRef  ElementType,
unsigned  ElementCount 
)

Create a fixed size array type that refers to a specific type.

The created type will exist in the context that its element type exists in.

Deprecated:
LLVMArrayType is deprecated in favor of the API accurate LLVMArrayType2
See also
llvm::ArrayType::get()

◆ LLVMArrayType2()

LLVMTypeRef LLVMArrayType2 ( LLVMTypeRef  ElementType,
uint64_t  ElementCount 
)

Create a fixed size array type that refers to a specific type.

The created type will exist in the context that its element type exists in.

See also
llvm::ArrayType::get()

◆ LLVMGetArrayLength()

unsigned LLVMGetArrayLength ( LLVMTypeRef  ArrayTy)

Obtain the length of an array type.

This only works on types that represent arrays.

Deprecated:
LLVMGetArrayLength is deprecated in favor of the API accurate LLVMGetArrayLength2
See also
llvm::ArrayType::getNumElements()

◆ LLVMGetArrayLength2()

uint64_t LLVMGetArrayLength2 ( LLVMTypeRef  ArrayTy)

Obtain the length of an array type.

This only works on types that represent arrays.

See also
llvm::ArrayType::getNumElements()

◆ LLVMGetElementType()

LLVMTypeRef LLVMGetElementType ( LLVMTypeRef  Ty)

Obtain the element type of an array or vector type.

See also
llvm::SequentialType::getElementType()

◆ LLVMGetNumContainedTypes()

unsigned LLVMGetNumContainedTypes ( LLVMTypeRef  Tp)

Return the number of types in the derived type.

See also
llvm::Type::getNumContainedTypes()

◆ LLVMGetPointerAddressSpace()

unsigned LLVMGetPointerAddressSpace ( LLVMTypeRef  PointerTy)

Obtain the address space of a pointer type.

This only works on types that represent pointers.

See also
llvm::PointerType::getAddressSpace()

◆ LLVMGetSubtypes()

void LLVMGetSubtypes ( LLVMTypeRef  Tp,
LLVMTypeRef Arr 
)

Returns type's subtypes

See also
llvm::Type::subtypes()

◆ LLVMGetVectorSize()

unsigned LLVMGetVectorSize ( LLVMTypeRef  VectorTy)

Obtain the (possibly scalable) number of elements in a vector type.

This only works on types that represent vectors (fixed or scalable).

See also
llvm::VectorType::getNumElements()

◆ LLVMPointerType()

LLVMTypeRef LLVMPointerType ( LLVMTypeRef  ElementType,
unsigned  AddressSpace 
)

Create a pointer type that points to a defined type.

The created type will exist in the context that its pointee type exists in.

See also
llvm::PointerType::get()

◆ LLVMPointerTypeInContext()

LLVMTypeRef LLVMPointerTypeInContext ( LLVMContextRef  C,
unsigned  AddressSpace 
)

Create an opaque pointer type in a context.

See also
llvm::PointerType::get()

◆ LLVMPointerTypeIsOpaque()

LLVMBool LLVMPointerTypeIsOpaque ( LLVMTypeRef  Ty)

Determine whether a pointer is opaque.

True if this is an instance of an opaque PointerType.

See also
llvm::Type::isOpaquePointerTy()

◆ LLVMScalableVectorType()

LLVMTypeRef LLVMScalableVectorType ( LLVMTypeRef  ElementType,
unsigned  ElementCount 
)

Create a vector type that contains a defined type and has a scalable number of elements.

The created type will exist in the context thats its element type exists in.

See also
llvm::ScalableVectorType::get()

◆ LLVMVectorType()

LLVMTypeRef LLVMVectorType ( LLVMTypeRef  ElementType,
unsigned  ElementCount 
)

Create a vector type that contains a defined type and has a specific number of elements.

The created type will exist in the context thats its element type exists in.

See also
llvm::VectorType::get()