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 isFixedLengthSVEData () const
bool isFixedLengthSVEPredicate () 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.
LLVM_ABI uint64_t getABISizeInBits () const
 Returns the size in bits that the source language gives this type, including any padding.
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 291 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 305 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 331 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 311 of file Types.h.

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

◆ getNumElements()

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

Definition at line 312 of file Types.h.

◆ getVectorKind()

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

Definition at line 314 of file Types.h.

◆ isFixedLength()

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

Definition at line 317 of file Types.h.

Referenced by isFixedLengthSVEData(), and isFixedLengthSVEPredicate().

◆ isFixedLengthSVEData()

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

Definition at line 323 of file Types.h.

References isFixedLength(), and isSVEData().

◆ isFixedLengthSVEPredicate()

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

Definition at line 324 of file Types.h.

References isFixedLength(), and isSVEPredicate().

◆ isScalable()

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

Definition at line 316 of file Types.h.

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

◆ isSVECount()

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

Definition at line 321 of file Types.h.

References llvm::abi::SVECount.

◆ isSVEData()

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

Definition at line 319 of file Types.h.

References llvm::abi::SVEData.

Referenced by isFixedLengthSVEData().

◆ isSVEPredicate()

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

Definition at line 320 of file Types.h.

References llvm::abi::SVEPredicate.

Referenced by isFixedLengthSVEPredicate().

◆ isSVEType()

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

Returns true for any of the AArch64 SVE flavors.

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