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 TypegetElementType () 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
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

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 268 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 282 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 303 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 288 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 289 of file Types.h.

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

◆ getVectorKind()

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

Definition at line 291 of file Types.h.

◆ isFixedLength()

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

Definition at line 294 of file Types.h.

◆ isScalable()

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

Definition at line 293 of file Types.h.

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

◆ isSVECount()

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

Definition at line 298 of file Types.h.

References llvm::abi::SVECount.

◆ isSVEData()

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

Definition at line 296 of file Types.h.

References llvm::abi::SVEData.

◆ isSVEPredicate()

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

Definition at line 297 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 301 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: