class IntegerType

Declaration

class IntegerType : public Type { /* full declaration omitted */ };

Description

Class to represent integer types. Note that this class is also used to represent the built-in integer types: Int1Ty, Int8Ty, Int16Ty, Int32Ty and Int64Ty. Integer representation type

Declared at: llvm/include/llvm/IR/DerivedTypes.h:40

Inherits from: Type

Member Variables

Inherited from Type:

protected NumContainedTys = 0
protected ContainedTys = nullptr

Method Overview

Inherited from Type:

Methods

IntegerType(llvm::LLVMContext& C,
            unsigned int NumBits)

Declared at: llvm/include/llvm/IR/DerivedTypes.h:44

Parameters

llvm::LLVMContext& C
unsigned int NumBits

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

Description

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

Declared at: llvm/include/llvm/IR/DerivedTypes.h:97

Parameters

const llvm::Type* T

static llvm::IntegerType* get(
    llvm::LLVMContext& C,
    unsigned int NumBits)

Description

This static method is the primary way of constructing an IntegerType. If an IntegerType with the same NumBits value was previously instantiated, that instance will be returned. Otherwise a new one will be created. Only one instance with a given NumBits value is ever created. Get or create an IntegerType instance.

Declared at: llvm/include/llvm/IR/DerivedTypes.h:63

Parameters

llvm::LLVMContext& C
unsigned int NumBits

uint64_t getBitMask() const

Description

Return a bitmask with ones set for all of the bits that can be set by an unsigned version of this type. This is 0xFF for i8, 0xFFFF for i16, etc.

Declared at: llvm/include/llvm/IR/DerivedTypes.h:75

unsigned int getBitWidth() const

Description

Get the number of bits in this IntegerType

Declared at: llvm/include/llvm/IR/DerivedTypes.h:71

llvm::IntegerType* getExtendedType() const

Description

Returns type twice as wide the input type.

Declared at: llvm/include/llvm/IR/DerivedTypes.h:66

llvm::APInt getMask() const

Description

For example, this is 0xFF for an 8 bit integer, 0xFFFF for i16, etc.

Declared at: llvm/include/llvm/IR/DerivedTypes.h:88

Returns

a bit mask with ones set for all the bits of this type. Get a bit mask for this type.

uint64_t getSignBit() const

Description

Return a uint64_t with just the most significant bit set (the sign bit, if the value is treated as a signed number).

Declared at: llvm/include/llvm/IR/DerivedTypes.h:81

bool isPowerOf2ByteWidth() const

Description

This method determines if the width of this IntegerType is a power-of-2 in terms of 8 bit bytes.

Declared at: llvm/include/llvm/IR/DerivedTypes.h:94

Returns

true if this is a power-of-2 byte width. Is this a power-of-2 byte-width IntegerType ?