My Project
Public Types | Public Member Functions | Static Public Member Functions | List of all members
mlir::LLVM::LLVMType Class Reference

#include <LLVMDialect.h>

Inheritance diagram for mlir::LLVM::LLVMType:
Inheritance graph
[legend]
Collaboration diagram for mlir::LLVM::LLVMType:
Collaboration graph
[legend]

Public Types

enum  Kind { LLVM_TYPE = FIRST_LLVM_TYPE }
 
- Public Types inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT >
using Base = StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT >
 Utility declarations for the concrete attribute class. More...
 
using ImplType = StorageT
 

Public Member Functions

LLVMDialectgetDialect ()
 
llvm::Type * getUnderlyingType () const
 
bool isFloatTy ()
 Utilities to identify types. More...
 
bool isDoubleTy ()
 
bool isIntegerTy ()
 
bool isIntegerTy (unsigned bitwidth)
 
LLVMType getArrayElementType ()
 Array type utilities. More...
 
unsigned getArrayNumElements ()
 
bool isArrayTy ()
 
LLVMType getVectorElementType ()
 Vector type utilities. More...
 
bool isVectorTy ()
 
LLVMType getFunctionParamType (unsigned argIdx)
 Function type utilities. More...
 
unsigned getFunctionNumParams ()
 
LLVMType getFunctionResultType ()
 
bool isFunctionTy ()
 
LLVMType getPointerTo (unsigned addrSpace=0)
 Pointer type utilities. More...
 
LLVMType getPointerElementTy ()
 
bool isPointerTy ()
 
LLVMType getStructElementType (unsigned i)
 Struct type utilities. More...
 
unsigned getStructNumElements ()
 
bool isStructTy ()
 

Static Public Member Functions

static bool kindof (unsigned kind)
 
static LLVMType getDoubleTy (LLVMDialect *dialect)
 Utilities used to generate floating point types. More...
 
static LLVMType getFloatTy (LLVMDialect *dialect)
 
static LLVMType getHalfTy (LLVMDialect *dialect)
 
static LLVMType getFP128Ty (LLVMDialect *dialect)
 
static LLVMType getX86_FP80Ty (LLVMDialect *dialect)
 
static LLVMType getIntNTy (LLVMDialect *dialect, unsigned numBits)
 Utilities used to generate integer types. More...
 
static LLVMType getInt1Ty (LLVMDialect *dialect)
 
static LLVMType getInt8Ty (LLVMDialect *dialect)
 
static LLVMType getInt8PtrTy (LLVMDialect *dialect)
 
static LLVMType getInt16Ty (LLVMDialect *dialect)
 
static LLVMType getInt32Ty (LLVMDialect *dialect)
 
static LLVMType getInt64Ty (LLVMDialect *dialect)
 
static LLVMType getArrayTy (LLVMType elementType, uint64_t numElements)
 Utilities used to generate other miscellaneous types. More...
 
static LLVMType getFunctionTy (LLVMType result, ArrayRef< LLVMType > params, bool isVarArg)
 
static LLVMType getFunctionTy (LLVMType result, bool isVarArg)
 
static LLVMType getStructTy (LLVMDialect *dialect, ArrayRef< LLVMType > elements, bool isPacked=false)
 
static LLVMType getStructTy (LLVMDialect *dialect, bool isPacked=false)
 
template<typename... Args>
static std::enable_if< llvm::are_base_of< LLVMType, Args... >::value, LLVMType >::type getStructTy (LLVMType elt1, Args... elts)
 
static LLVMType getVectorTy (LLVMType elementType, unsigned numElements)
 
static LLVMType getVoidTy (LLVMDialect *dialect)
 
- Static Public Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT >
static ClassIDgetClassID ()
 Return a unique identifier for the concrete type. More...
 
template<typename T >
static bool classof (T val)
 

Additional Inherited Members

- Protected Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT >
ImplTypegetImpl () const
 Utility for easy access to the storage instance. More...
 
- Static Protected Member Functions inherited from mlir::detail::StorageUserBase< ConcreteT, BaseT, StorageT, UniquerT >
template<typename... Args>
static ConcreteT get (MLIRContext *ctx, unsigned kind, Args... args)
 
template<typename... Args>
static ConcreteT getChecked (const Location &loc, MLIRContext *ctx, unsigned kind, Args... args)
 
template<typename... Args>
static LogicalResult verifyConstructionInvariants (Args... args)
 Default implementation that just returns success. More...
 

Member Enumeration Documentation

◆ Kind

Enumerator
LLVM_TYPE 

Member Function Documentation

◆ getArrayElementType()

LLVMType LLVMType::getArrayElementType ( )

Array type utilities.

◆ getArrayNumElements()

unsigned LLVMType::getArrayNumElements ( )

◆ getArrayTy()

LLVMType LLVMType::getArrayTy ( LLVMType  elementType,
uint64_t  numElements 
)
static

Utilities used to generate other miscellaneous types.

◆ getDialect()

LLVMDialect & LLVMType::getDialect ( )

◆ getDoubleTy()

LLVMType LLVMType::getDoubleTy ( LLVMDialect dialect)
static

Utilities used to generate floating point types.

◆ getFloatTy()

LLVMType LLVMType::getFloatTy ( LLVMDialect dialect)
static

◆ getFP128Ty()

LLVMType LLVMType::getFP128Ty ( LLVMDialect dialect)
static

◆ getFunctionNumParams()

unsigned LLVMType::getFunctionNumParams ( )

◆ getFunctionParamType()

LLVMType LLVMType::getFunctionParamType ( unsigned  argIdx)

Function type utilities.

◆ getFunctionResultType()

LLVMType LLVMType::getFunctionResultType ( )

◆ getFunctionTy() [1/2]

LLVMType LLVMType::getFunctionTy ( LLVMType  result,
ArrayRef< LLVMType params,
bool  isVarArg 
)
static

◆ getFunctionTy() [2/2]

static LLVMType mlir::LLVM::LLVMType::getFunctionTy ( LLVMType  result,
bool  isVarArg 
)
inlinestatic

◆ getHalfTy()

LLVMType LLVMType::getHalfTy ( LLVMDialect dialect)
static

◆ getInt16Ty()

static LLVMType mlir::LLVM::LLVMType::getInt16Ty ( LLVMDialect dialect)
inlinestatic

◆ getInt1Ty()

static LLVMType mlir::LLVM::LLVMType::getInt1Ty ( LLVMDialect dialect)
inlinestatic

◆ getInt32Ty()

static LLVMType mlir::LLVM::LLVMType::getInt32Ty ( LLVMDialect dialect)
inlinestatic

◆ getInt64Ty()

static LLVMType mlir::LLVM::LLVMType::getInt64Ty ( LLVMDialect dialect)
inlinestatic

◆ getInt8PtrTy()

static LLVMType mlir::LLVM::LLVMType::getInt8PtrTy ( LLVMDialect dialect)
inlinestatic

◆ getInt8Ty()

static LLVMType mlir::LLVM::LLVMType::getInt8Ty ( LLVMDialect dialect)
inlinestatic

◆ getIntNTy()

LLVMType LLVMType::getIntNTy ( LLVMDialect dialect,
unsigned  numBits 
)
static

Utilities used to generate integer types.

◆ getPointerElementTy()

LLVMType LLVMType::getPointerElementTy ( )

◆ getPointerTo()

LLVMType LLVMType::getPointerTo ( unsigned  addrSpace = 0)

Pointer type utilities.

◆ getStructElementType()

LLVMType LLVMType::getStructElementType ( unsigned  i)

Struct type utilities.

◆ getStructNumElements()

unsigned LLVMType::getStructNumElements ( )

◆ getStructTy() [1/3]

LLVMType LLVMType::getStructTy ( LLVMDialect dialect,
ArrayRef< LLVMType elements,
bool  isPacked = false 
)
static

◆ getStructTy() [2/3]

static LLVMType mlir::LLVM::LLVMType::getStructTy ( LLVMDialect dialect,
bool  isPacked = false 
)
inlinestatic

◆ getStructTy() [3/3]

template<typename... Args>
static std::enable_if<llvm::are_base_of<LLVMType, Args...>::value, LLVMType>::type mlir::LLVM::LLVMType::getStructTy ( LLVMType  elt1,
Args...  elts 
)
inlinestatic

◆ getUnderlyingType()

llvm::Type * LLVMType::getUnderlyingType ( ) const

◆ getVectorElementType()

LLVMType LLVMType::getVectorElementType ( )

Vector type utilities.

◆ getVectorTy()

LLVMType LLVMType::getVectorTy ( LLVMType  elementType,
unsigned  numElements 
)
static

◆ getVoidTy()

LLVMType LLVMType::getVoidTy ( LLVMDialect dialect)
static

◆ getX86_FP80Ty()

LLVMType LLVMType::getX86_FP80Ty ( LLVMDialect dialect)
static

◆ isArrayTy()

bool LLVMType::isArrayTy ( )

◆ isDoubleTy()

bool mlir::LLVM::LLVMType::isDoubleTy ( )
inline

◆ isFloatTy()

bool mlir::LLVM::LLVMType::isFloatTy ( )
inline

Utilities to identify types.

◆ isFunctionTy()

bool LLVMType::isFunctionTy ( )

◆ isIntegerTy() [1/2]

bool mlir::LLVM::LLVMType::isIntegerTy ( )
inline

◆ isIntegerTy() [2/2]

bool mlir::LLVM::LLVMType::isIntegerTy ( unsigned  bitwidth)
inline

◆ isPointerTy()

bool LLVMType::isPointerTy ( )

◆ isStructTy()

bool LLVMType::isStructTy ( )

◆ isVectorTy()

bool LLVMType::isVectorTy ( )

◆ kindof()

static bool mlir::LLVM::LLVMType::kindof ( unsigned  kind)
inlinestatic

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