LLVM API Documentation

llvm::VectorType Class Reference

#include <DerivedTypes.h>

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

List of all members.

Public Member Functions

unsigned getNumElements () const
 Return the number of elements in the Vector type.
unsigned getBitWidth () const
 Return the number of bits in the Vector type.
virtual void refineAbstractType (const DerivedType *OldTy, const Type *NewTy)
virtual void typeBecameConcrete (const DerivedType *AbsTy)

Static Public Member Functions

static VectorType * get (const Type *ElementType, unsigned NumElements)
static VectorType * getInteger (const VectorType *VTy)
static VectorType * getExtendedElementVectorType (const VectorType *VTy)
static VectorType * getTruncatedElementVectorType (const VectorType *VTy)
static bool classof (const VectorType *)
static bool classof (const Type *T)
 Methods for support type inquiry through isa, cast, and dyn_cast:.

Friends

class TypeMap< VectorValType, VectorType >


Detailed Description

VectorType - Class to represent vector types

Definition at line 349 of file DerivedTypes.h.


Member Function Documentation

VectorType * VectorType::get ( const Type *  ElementType,
unsigned  NumElements 
) [static]

static VectorType* llvm::VectorType::getInteger ( const VectorType *  VTy  )  [inline, static]

VectorType::getInteger - This static method gets a VectorType with the same number of elements as the input type, and the element type is an integer type of the same width as the input element type.

Definition at line 366 of file DerivedTypes.h.

References get(), llvm::IntegerType::get(), llvm::SequentialType::getElementType(), getNumElements(), and llvm::Type::getPrimitiveSizeInBits().

Referenced by llvm::ConstantFoldCompareInstruction().

static VectorType* llvm::VectorType::getExtendedElementVectorType ( const VectorType *  VTy  )  [inline, static]

VectorType::getExtendedElementVectorType - This static method is like getInteger except that the element types are twice as wide as the elements in the input type.

Definition at line 376 of file DerivedTypes.h.

References get(), llvm::IntegerType::get(), llvm::SequentialType::getElementType(), getNumElements(), and llvm::Type::getPrimitiveSizeInBits().

static VectorType* llvm::VectorType::getTruncatedElementVectorType ( const VectorType *  VTy  )  [inline, static]

VectorType::getTruncatedElementVectorType - This static method is like getInteger except that the element types are half as wide as the elements in the input type.

Definition at line 386 of file DerivedTypes.h.

References get(), llvm::IntegerType::get(), llvm::SequentialType::getElementType(), getNumElements(), and llvm::Type::getPrimitiveSizeInBits().

unsigned llvm::VectorType::getNumElements (  )  const [inline]

unsigned llvm::VectorType::getBitWidth (  )  const [inline]

Return the number of bits in the Vector type.

Definition at line 398 of file DerivedTypes.h.

Referenced by MergeInType().

void VectorType::refineAbstractType ( const DerivedType *  OldTy,
const Type *  NewTy 
) [virtual]

refineAbstractType - The callback method invoked when an abstract type is resolved to another type. An object must override this method to update its internal state to reference NewType instead of OldType.

Reimplemented from llvm::Type.

Definition at line 1482 of file Type.cpp.

void VectorType::typeBecameConcrete ( const DerivedType *  AbsTy  )  [virtual]

The other case which AbstractTypeUsers must be aware of is when a type makes the transition from being abstract (where it has clients on it's AbstractTypeUsers list) to concrete (where it does not). This method notifies ATU's when this occurs for a type.

Reimplemented from llvm::Type.

Definition at line 1487 of file Type.cpp.

static bool llvm::VectorType::classof ( const VectorType *   )  [inline, static]

Definition at line 407 of file DerivedTypes.h.

static bool llvm::VectorType::classof ( const Type *   )  [inline, static]

Methods for support type inquiry through isa, cast, and dyn_cast:.

Reimplemented from llvm::SequentialType.

Definition at line 408 of file DerivedTypes.h.

References llvm::Type::getTypeID(), and llvm::Type::VectorTyID.


Friends And Related Function Documentation

friend class TypeMap< VectorValType, VectorType > [friend]

Definition at line 350 of file DerivedTypes.h.


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