class VectorType

Declaration

class VectorType : public Type, public Node { /* full declaration omitted */ };

Description

Represents a GCC generic vector type. This type is created using __attribute__((vector_size(n)), where "n" specifies the vector size in bytes; or from an Altivec __vector or vector declaration. Since the constructor takes the number of vector elements, the client is responsible for converting the size into the number of elements.

Declared at: clang/include/clang/AST/Type.h:3301

Inherits from: Type, FoldingSetBase::Node

Member Variables

protected clang::QualType ElementType
The element type of the vector.

Inherited from Type:

protected

Method Overview

  • public void Profile(llvm::FoldingSetNodeID & ID)
  • public static void Profile(llvm::FoldingSetNodeID & ID, clang::QualType ElementType, unsigned int NumElements, clang::Type::TypeClass TypeClass, clang::VectorType::VectorKind VecKind)
  • protected VectorType(clang::QualType vecType, unsigned int nElements, clang::QualType canonType, clang::VectorType::VectorKind vecKind)
  • protected VectorType(clang::Type::TypeClass tc, clang::QualType vecType, unsigned int nElements, clang::QualType canonType, clang::VectorType::VectorKind vecKind)
  • public static bool classof(const clang::Type * T)
  • public clang::QualType desugar() const
  • public clang::QualType getElementType() const
  • public unsigned int getNumElements() const
  • public clang::VectorType::VectorKind getVectorKind() const
  • public bool isSugared() const

Inherited from FoldingSetBase::Node:

Inherited from Type:

Inherited from ExtQualsTypeCommonBase:

    Methods

    void Profile(llvm::FoldingSetNodeID& ID)

    Declared at: clang/include/clang/AST/Type.h:3352

    Parameters

    llvm::FoldingSetNodeID& ID

    static void Profile(
        llvm::FoldingSetNodeID& ID,
        clang::QualType ElementType,
        unsigned int NumElements,
        clang::Type::TypeClass TypeClass,
        clang::VectorType::VectorKind VecKind)

    Declared at: clang/include/clang/AST/Type.h:3357

    Parameters

    llvm::FoldingSetNodeID& ID
    clang::QualType ElementType
    unsigned int NumElements
    clang::Type::TypeClass TypeClass
    clang::VectorType::VectorKind VecKind

    VectorType(clang::QualType vecType,
               unsigned int nElements,
               clang::QualType canonType,
               clang::VectorType::VectorKind vecKind)

    Declared at: clang/include/clang/AST/Type.h:3335

    Parameters

    clang::QualType vecType
    unsigned int nElements
    clang::QualType canonType
    clang::VectorType::VectorKind vecKind

    VectorType(clang::Type::TypeClass tc,
               clang::QualType vecType,
               unsigned int nElements,
               clang::QualType canonType,
               clang::VectorType::VectorKind vecKind)

    Declared at: clang/include/clang/AST/Type.h:3338

    Parameters

    clang::Type::TypeClass tc
    clang::QualType vecType
    unsigned int nElements
    clang::QualType canonType
    clang::VectorType::VectorKind vecKind

    static bool classof(const clang::Type* T)

    Declared at: clang/include/clang/AST/Type.h:3366

    Parameters

    const clang::Type* T

    clang::QualType desugar() const

    Declared at: clang/include/clang/AST/Type.h:3346

    clang::QualType getElementType() const

    Declared at: clang/include/clang/AST/Type.h:3342

    unsigned int getNumElements() const

    Declared at: clang/include/clang/AST/Type.h:3343

    clang::VectorType::VectorKind getVectorKind()
        const

    Declared at: clang/include/clang/AST/Type.h:3348

    bool isSugared() const

    Declared at: clang/include/clang/AST/Type.h:3345