class MVT

Declaration

class MVT { /* full declaration omitted */ };

Description

Machine Value Type. Every type that is supported natively by some processor targeted by LLVM occurs here. This means that any legal value type can be represented by an MVT.

Declared at: llvm/include/llvm/Support/MachineValueType.h:30

Member Variables

public llvm::MVT::SimpleValueType SimpleTy = INVALID_SIMPLE_VALUE_TYPE

Method Overview

Methods

constexpr MVT(llvm::MVT::SimpleValueType SVT)

Declared at: llvm/include/llvm/Support/MachineValueType.h:268

Parameters

llvm::MVT::SimpleValueType SVT

MVT()

Declared at: llvm/include/llvm/Support/MachineValueType.h:267

static llvm::MVT::mvt_range all_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1125

bool bitsGE(llvm::MVT VT) const

Description

Return true if this has no less bits than VT.

Declared at: llvm/include/llvm/Support/MachineValueType.h:868

Parameters

llvm::MVT VT

bool bitsGT(llvm::MVT VT) const

Description

Return true if this has more bits than VT.

Declared at: llvm/include/llvm/Support/MachineValueType.h:863

Parameters

llvm::MVT VT

bool bitsLE(llvm::MVT VT) const

Description

Return true if this has no more bits than VT.

Declared at: llvm/include/llvm/Support/MachineValueType.h:878

Parameters

llvm::MVT VT

bool bitsLT(llvm::MVT VT) const

Description

Return true if this has less bits than VT.

Declared at: llvm/include/llvm/Support/MachineValueType.h:873

Parameters

llvm::MVT VT

static llvm::MVT::mvt_range
fixedlen_vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1144

static llvm::MVT::mvt_range
fp_fixedlen_vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1162

static llvm::MVT::mvt_range
fp_scalable_vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1174

static llvm::MVT::mvt_range fp_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1134

static llvm::MVT getFloatingPointVT(
    unsigned int BitWidth)

Declared at: llvm/include/llvm/Support/MachineValueType.h:882

Parameters

unsigned int BitWidth

llvm::MVT getHalfNumVectorElementsVT() const

Description

Return a VT for a vector type with the same element type but half the number of elements.

Declared at: llvm/include/llvm/Support/MachineValueType.h:395

static llvm::MVT getIntegerVT(
    unsigned int BitWidth)

Declared at: llvm/include/llvm/Support/MachineValueType.h:899

Parameters

unsigned int BitWidth

llvm::MVT getPow2VectorType() const

Description

Widens the length of the given vector MVT up to the nearest power of 2 and returns that type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:410

static llvm::MVT getScalableVectorVT(
    llvm::MVT VT,
    unsigned int NumElements)

Declared at: llvm/include/llvm/Support/MachineValueType.h:1018

Parameters

llvm::MVT VT
unsigned int NumElements

llvm::TypeSize getScalarSizeInBits() const

Declared at: llvm/include/llvm/Support/MachineValueType.h:831

llvm::MVT getScalarType() const

Description

If this is a vector, return the element type, otherwise return this.

Declared at: llvm/include/llvm/Support/MachineValueType.h:420

llvm::TypeSize getSizeInBits() const

Description

Returns the size of the specified MVT in bits. If the value type is a scalable vector type, the scalable property will be set and the runtime size will be a positive integer multiple of the base size.

Declared at: llvm/include/llvm/Support/MachineValueType.h:679

llvm::TypeSize getStoreSize() const

Description

Return the number of bytes overwritten by a store of the specified value type. If the value type is a scalable vector type, the scalable property will be set and the runtime size will be a positive integer multiple of the base size.

Declared at: llvm/include/llvm/Support/MachineValueType.h:841

llvm::TypeSize getStoreSizeInBits() const

Description

Return the number of bits overwritten by a store of the specified value type. If the value type is a scalable vector type, the scalable property will be set and the runtime size will be a positive integer multiple of the base size.

Declared at: llvm/include/llvm/Support/MachineValueType.h:852

static llvm::MVT getVT(llvm::Type* Ty,
                       bool HandleUnknown = false)

Description

Return the value type corresponding to the specified type. This returns all pointers as iPTR. If HandleUnknown is true, unknown types are returned as Other, otherwise they are invalid.

Declared at: llvm/include/llvm/Support/MachineValueType.h:1099

Parameters

llvm::Type* Ty
bool HandleUnknown = false

llvm::ElementCount getVectorElementCount() const

Declared at: llvm/include/llvm/Support/MachineValueType.h:670

llvm::MVT getVectorElementType() const

Declared at: llvm/include/llvm/Support/MachineValueType.h:424

unsigned int getVectorNumElements() const

Declared at: llvm/include/llvm/Support/MachineValueType.h:547

static llvm::MVT getVectorVT(
    llvm::MVT VT,
    llvm::ElementCount EC)

Declared at: llvm/include/llvm/Support/MachineValueType.h:1090

Parameters

llvm::MVT VT
llvm::ElementCount EC

static llvm::MVT getVectorVT(
    llvm::MVT VT,
    unsigned int NumElements)

Declared at: llvm/include/llvm/Support/MachineValueType.h:918

Parameters

llvm::MVT VT
unsigned int NumElements

static llvm::MVT getVectorVT(
    llvm::MVT VT,
    unsigned int NumElements,
    bool IsScalable)

Declared at: llvm/include/llvm/Support/MachineValueType.h:1084

Parameters

llvm::MVT VT
unsigned int NumElements
bool IsScalable

static llvm::MVT::mvt_range
integer_fixedlen_vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1156

static llvm::MVT::mvt_range
integer_scalable_vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1168

static llvm::MVT::mvt_range integer_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1129

bool is1024BitVector() const

Description

Return true if this is a 1024-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:374

bool is128BitVector() const

Description

Return true if this is a 128-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:349

bool is16BitVector() const

Description

Return true if this is a 16-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:328

bool is2048BitVector() const

Description

Return true if this is a 2048-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:381

bool is256BitVector() const

Description

Return true if this is a 256-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:358

bool is32BitVector() const

Description

Return true if this is a 32-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:334

bool is512BitVector() const

Description

Return true if this is a 512-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:366

bool is64BitVector() const

Description

Return true if this is a 64-bit vector type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:341

bool isByteSized() const

Description

Returns true if the number of bits for the type is a multiple of an 8-bit byte.

Declared at: llvm/include/llvm/Support/MachineValueType.h:858

bool isFixedLengthVector() const

Declared at: llvm/include/llvm/Support/MachineValueType.h:322

bool isFloatingPoint() const

Description

Return true if this is a FP or a vector FP type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:284

bool isInteger() const

Description

Return true if this is an integer or a vector integer type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:294

bool isOverloaded() const

Description

Return true if this is an overloaded type for TableGen.

Declared at: llvm/include/llvm/Support/MachineValueType.h:387

bool isPow2VectorType() const

Description

Returns true if the given vector is a power of 2.

Declared at: llvm/include/llvm/Support/MachineValueType.h:403

bool isScalableVector() const

Description

Return true if this is a vector value type where the runtime length is machine dependent

Declared at: llvm/include/llvm/Support/MachineValueType.h:317

bool isScalarInteger() const

Description

Return true if this is an integer, not including vectors.

Declared at: llvm/include/llvm/Support/MachineValueType.h:304

bool isValid() const

Description

Return true if this is a valid simple valuetype.

Declared at: llvm/include/llvm/Support/MachineValueType.h:278

bool isVector() const

Description

Return true if this is a vector value type.

Declared at: llvm/include/llvm/Support/MachineValueType.h:310

static llvm::MVT::mvt_range
scalable_vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1150

static llvm::MVT::mvt_range vector_valuetypes()

Declared at: llvm/include/llvm/Support/MachineValueType.h:1139