LLVM API Documentation
#include <DerivedTypes.h>
Public Member Functions | |
unsigned | getAddressSpace () const |
Return the address space of the Pointer type. More... | |
![]() | |
Type * | getElementType () const |
![]() | |
Type * | getTypeAtIndex (const Value *V) |
Type * | getTypeAtIndex (unsigned Idx) |
bool | indexValid (const Value *V) const |
bool | indexValid (unsigned Idx) const |
![]() | |
void | print (raw_ostream &O) const |
void | dump () const |
LLVMContext & | getContext () const |
getContext - Return the LLVMContext in which this type was uniqued. More... | |
TypeID | getTypeID () const |
bool | isVoidTy () const |
isVoidTy - Return true if this is 'void'. More... | |
bool | isHalfTy () const |
isHalfTy - Return true if this is 'half', a 16-bit IEEE fp type. More... | |
bool | isFloatTy () const |
isFloatTy - Return true if this is 'float', a 32-bit IEEE fp type. More... | |
bool | isDoubleTy () const |
isDoubleTy - Return true if this is 'double', a 64-bit IEEE fp type. More... | |
bool | isX86_FP80Ty () const |
isX86_FP80Ty - Return true if this is x86 long double. More... | |
bool | isFP128Ty () const |
isFP128Ty - Return true if this is 'fp128'. More... | |
bool | isPPC_FP128Ty () const |
isPPC_FP128Ty - Return true if this is powerpc long double. More... | |
bool | isFloatingPointTy () const |
const fltSemantics & | getFltSemantics () const |
bool | isX86_MMXTy () const |
isX86_MMXTy - Return true if this is X86 MMX. More... | |
bool | isFPOrFPVectorTy () const |
bool | isLabelTy () const |
isLabelTy - Return true if this is 'label'. More... | |
bool | isMetadataTy () const |
isMetadataTy - Return true if this is 'metadata'. More... | |
bool | isIntegerTy () const |
bool | isIntegerTy (unsigned Bitwidth) const |
isIntegerTy - Return true if this is an IntegerType of the given width. More... | |
bool | isIntOrIntVectorTy () const |
bool | isFunctionTy () const |
bool | isStructTy () const |
bool | isArrayTy () const |
bool | isPointerTy () const |
bool | isPtrOrPtrVectorTy () const |
bool | isVectorTy () const |
bool | canLosslesslyBitCastTo (Type *Ty) const |
Determine if this type could be losslessly bitcast to Ty. More... | |
bool | isEmptyTy () const |
bool | isPrimitiveType () const |
bool | isDerivedType () const |
bool | isFirstClassType () const |
bool | isSingleValueType () const |
bool | isAggregateType () const |
bool | isSized () const |
unsigned | getPrimitiveSizeInBits () const |
unsigned | getScalarSizeInBits () |
int | getFPMantissaWidth () const |
const Type * | getScalarType () const |
Type * | getScalarType () |
subtype_iterator | subtype_begin () const |
subtype_iterator | subtype_end () const |
subtype_reverse_iterator | subtype_rbegin () const |
subtype_reverse_iterator | subtype_rend () const |
Type * | getContainedType (unsigned i) const |
unsigned | getNumContainedTypes () const |
unsigned | getIntegerBitWidth () const |
Type * | getFunctionParamType (unsigned i) const |
unsigned | getFunctionNumParams () const |
bool | isFunctionVarArg () const |
StringRef | getStructName () const |
unsigned | getStructNumElements () const |
Type * | getStructElementType (unsigned N) const |
Type * | getSequentialElementType () const |
uint64_t | getArrayNumElements () const |
Type * | getArrayElementType () const |
unsigned | getVectorNumElements () const |
Type * | getVectorElementType () const |
Type * | getPointerElementType () const |
unsigned | getPointerAddressSpace () const |
Get the address space of this pointer or pointer vector type. More... | |
PointerType * | getPointerTo (unsigned AddrSpace=0) |
Additional Inherited Members | |
![]() | |
enum | TypeID { VoidTyID = 0, HalfTyID, FloatTyID, DoubleTyID, X86_FP80TyID, FP128TyID, PPC_FP128TyID, LabelTyID, MetadataTyID, X86_MMXTyID, IntegerTyID, FunctionTyID, StructTyID, ArrayTyID, PointerTyID, VectorTyID, NumTypeIDs, LastPrimitiveTyID = X86_MMXTyID, FirstDerivedTyID = IntegerTyID } |
typedef Type *const * | subtype_iterator |
typedef std::reverse_iterator < subtype_iterator > | subtype_reverse_iterator |
![]() | |
SequentialType (TypeID TID, Type *ElType) | |
![]() | |
CompositeType (LLVMContext &C, TypeID tid) | |
![]() | |
Type (LLVMContext &C, TypeID tid) | |
~Type () | |
void | setTypeID (TypeID ID) |
unsigned | getSubclassData () const |
void | setSubclassData (unsigned val) |
![]() | |
unsigned | NumContainedTys |
Type *const * | ContainedTys |
PointerType - Class to represent pointers.
Definition at line 425 of file DerivedTypes.h.
Implement support type inquiry through isa, cast, and dyn_cast.
Definition at line 448 of file DerivedTypes.h.
References llvm::Type::getTypeID(), and llvm::Type::PointerTyID.
|
static |
PointerType::get - This constructs a pointer to an object of the specified type in a numbered address space.
Definition at line 730 of file Type.cpp.
References llvm::LLVMContextImpl::ASPointerTypes, llvm::Type::getContext(), isValidElementType(), llvm::LLVMContext::pImpl, llvm::LLVMContextImpl::PointerTypes, and llvm::LLVMContextImpl::TypeAllocator.
Referenced by AnalyzeLoadFromClobberingMemInst(), ConstantFoldGetElementPtrImpl(), convertMemSetToLoop(), CreatePrologue(), DecodeFixedType(), getAccessType(), getFoldedAlignOf(), getFoldedSizeOf(), llvm::GetElementPtrInst::getGEPReturnType(), GetLoadValueForLoad(), GetMemInstValueForLoad(), llvm::Module::getOrInsertGlobal(), llvm::Type::getPointerTo(), getUnqual(), InstCombineStoreToCast(), LLVMPointerType(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::NVPTXTargetLowering::LowerFormalArguments(), and SimplifyGEPInst().
|
inline |
Return the address space of the Pointer type.
Definition at line 445 of file DerivedTypes.h.
References llvm::Type::getSubclassData().
Referenced by canDemoteGlobalVar(), ConstantFoldGetElementPtrImpl(), FoldReinterpretLoadFromConstPtr(), llvm::GlobalAddressSDNode::getAddressSpace(), llvm::SelectionDAG::getGlobalAddress(), INITIALIZE_PASS(), InstCombineLoadCast(), InstCombineStoreToCast(), llvm::TypePrinting::print(), llvm::AssemblyWriter::printGlobal(), SimplifyGEPInst(), SRAGlobal(), TryToShrinkGlobalToBoolean(), llvm::InstCombiner::visitBitCast(), llvm::InstCombiner::visitGetElementPtrInst(), and WriteTypeTable().
|
inlinestatic |
PointerType::getUnqual - This constructs a pointer to an object of the specified type in the generic address space (address space zero).
Definition at line 436 of file DerivedTypes.h.
References get().
Referenced by appendToGlobalArray(), createMalloc(), GenerateARCBBEntranceAnnotation(), GenerateARCBBTerminatorAnnotation(), llvm::InlineAsm::get(), llvm::TypeBuilder< T *, cross >::get(), GetHeapSROAValue(), getMemCmpLoad(), llvm::ConstantExpr::getOffsetOf(), llvm::ScalarEvolution::getOffsetOfExpr(), llvm::Module::getOrInsertFunction(), llvm::ConstantExpr::getSizeOf(), llvm::ScalarEvolution::getSizeOfExpr(), InstallGlobalCtors(), llvm::SelectionDAGBuilder::LowerCallTo(), llvm::SparcTargetLowering::LowerF128_LibCallArg(), llvm::SparcTargetLowering::LowerF128Op(), PerformHeapAllocSRoA(), llvm::UpgradeIntrinsicCall(), and llvm::InstCombiner::visitCallInst().
isValidElementType - Return true if the specified type is valid as a element type.
Definition at line 760 of file Type.cpp.
References llvm::Type::isLabelTy(), llvm::Type::isMetadataTy(), and llvm::Type::isVoidTy().
Referenced by get().