LLVM 24.0.0git
llvm::abi::VectorType Class Reference

#include "llvm/ABI/Types.h"

Inheritance diagram for llvm::abi::VectorType:
[legend]

Public Member Functions

 VectorType (const Type *ElementType, ElementCount NumElements, Align ABIAlign, VectorKind VecKind=VectorKind::Generic)
const Type * getElementType () const
ElementCount getNumElements () const
VectorKind getVectorKind () const
bool isScalable () const
bool isFixedLength () const
bool isSVEData () const
bool isSVEPredicate () const
bool isSVECount () const
bool isSVEType () const
 Returns true for any of the AArch64 SVE flavors.
Public Member Functions inherited from llvm::abi::Type
TypeKind getKind () const
TypeSize getSizeInBits () const
uint64_t getFixedSizeInBitsOrZero () const
 Returns the size in bits if it is fixed, otherwise 0.
Align getAlignment () const
Align getUnadjustedAlignment () const
 Alignment before record-level adjustments such as aligned attributes.
TypeSize getTypeAllocSize () const
bool isVoid () const
bool isAtomic () const
bool isInteger () const
bool isFloat () const
bool isPointer () const
bool isArray () const
bool isVector () const
bool isTuple () const
bool isRecord () const
bool isMemberPointer () const
bool isComplex () const
bool isZeroSize () const
LLVM_ABI bool isSVESizelessType () const
LLVM_ABI bool isEmptyRecord () const
 True if this type is a record that is empty for ABI purposes.

Static Public Member Functions

static bool classof (const Type *T)

Additional Inherited Members

Protected Member Functions inherited from llvm::abi::Type
 Type (TypeKind K, TypeSize SizeInBits, Align ABIAlign)
 Type (TypeKind K, TypeSize SizeInBits, Align ABIAlign, Align UnadjustedAlign)
Protected Attributes inherited from llvm::abi::Type
TypeKind Kind
TypeSize SizeInBits
Align ABIAlignment
Align UnadjustedAlignment

Detailed Description

Definition at line 277 of file Types.h.

Constructor & Destructor Documentation

◆ VectorType()

llvm::abi::VectorType::VectorType ( const Type * ElementType,
ElementCount NumElements,
Align ABIAlign,
VectorKind VecKind = VectorKind::Generic )
inline

Definition at line 291 of file Types.h.

References llvm::abi::Generic, llvm::abi::Type::Type(), and llvm::abi::Vector.

Member Function Documentation

◆ classof()

bool llvm::abi::VectorType::classof ( const Type * T)
inlinestatic

Definition at line 312 of file Types.h.

References T, llvm::abi::Type::Type(), and llvm::abi::Vector.

◆ getElementType()

const Type * llvm::abi::VectorType::getElementType ( ) const
inline

Definition at line 297 of file Types.h.

References llvm::abi::Type::Type().

Referenced by llvm::abi::getClangVectorWidthInBits().

◆ getNumElements()

ElementCount llvm::abi::VectorType::getNumElements ( ) const
inline

Definition at line 298 of file Types.h.

Referenced by llvm::abi::getClangVectorWidthInBits().

◆ getVectorKind()

VectorKind llvm::abi::VectorType::getVectorKind ( ) const
inline

Definition at line 300 of file Types.h.

◆ isFixedLength()

bool llvm::abi::VectorType::isFixedLength ( ) const
inline

Definition at line 303 of file Types.h.

◆ isScalable()

bool llvm::abi::VectorType::isScalable ( ) const
inline

Definition at line 302 of file Types.h.

Referenced by llvm::abi::Type::isSVESizelessType().

◆ isSVECount()

bool llvm::abi::VectorType::isSVECount ( ) const
inline

Definition at line 307 of file Types.h.

References llvm::abi::SVECount.

◆ isSVEData()

bool llvm::abi::VectorType::isSVEData ( ) const
inline

Definition at line 305 of file Types.h.

References llvm::abi::SVEData.

◆ isSVEPredicate()

bool llvm::abi::VectorType::isSVEPredicate ( ) const
inline

Definition at line 306 of file Types.h.

References llvm::abi::SVEPredicate.

◆ isSVEType()

bool llvm::abi::VectorType::isSVEType ( ) const
inline

Returns true for any of the AArch64 SVE flavors.

Definition at line 310 of file Types.h.

References llvm::abi::Generic.

Referenced by llvm::abi::Type::isSVESizelessType().


The documentation for this class was generated from the following file: