LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::SequentialType Class Reference

#include <DerivedTypes.h>

Inheritance diagram for llvm::SequentialType:

Inheritance graph
[legend]
Collaboration diagram for llvm::SequentialType:

Collaboration graph
[legend]
List of all members.

Public Member Functions

const TypegetElementType () const
virtual bool indexValid (const Value *V) const
virtual const TypegetTypeAtIndex (const Value *V) const

Static Public Member Functions

static bool classof (const SequentialType *T)
static bool classof (const Type *T)
 Methods for support type inquiry through isa, cast, and dyn_cast:.

Protected Member Functions

 SequentialType (TypeID TID, const Type *ElType)

Detailed Description

SequentialType - This is the superclass of the array, pointer and packed type classes. All of these represent "arrays" in memory. The array type represents a specifically sized array, pointer types are unsized/unknown size arrays, packed types represent specifically sized arrays that allow for use of SIMD instructions. SequentialType holds the common features of all, which stem from the fact that all three lay their components out in memory identically.

Definition at line 241 of file DerivedTypes.h.


Constructor & Destructor Documentation

llvm::SequentialType::SequentialType TypeID  TID,
const Type ElType
[inline, protected]
 

Definition at line 245 of file DerivedTypes.h.

References llvm::Type::ContainedTys.


Member Function Documentation

static bool llvm::SequentialType::classof const Type T  )  [inline, static]
 

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

Reimplemented from llvm::CompositeType.

Reimplemented in llvm::ArrayType, llvm::PackedType, and llvm::PointerType.

Definition at line 264 of file DerivedTypes.h.

References llvm::Type::ArrayTyID, llvm::Type::getTypeID(), llvm::Type::PackedTyID, and llvm::Type::PointerTyID.

static bool llvm::SequentialType::classof const SequentialType T  )  [inline, static]
 

Definition at line 263 of file DerivedTypes.h.

const Type* llvm::SequentialType::getElementType  )  const [inline]
 

Definition at line 251 of file DerivedTypes.h.

References llvm::Type::ContainedTys.

Referenced by ArrayTypeIsString(), calcTypeName(), llvm::ConstantArray::ConstantArray(), llvm::ConstantPacked::ConstantPacked(), llvm::ConvertExpressionToType(), ConvertMallocToType(), ConvertOperandToType(), llvm::ExecutionEngine::EmitGlobalVariable(), llvm::Interpreter::executeGEPOperation(), llvm::ExpressionConvertibleToType(), llvm::PointerValType::get(), llvm::PackedValType::get(), llvm::ArrayValType::get(), llvm::AllocationInst::getAllocatedType(), llvm::Function::getFunctionType(), GetGEPGlobalInitializer(), llvm::GetElementPtrInst::getIndexedType(), llvm::JIT::getOrEmitGlobalVariable(), llvm::getPointedToComposite(), getTypeDescription(), getTypeInfo(), llvm::InsertProfilingInitCall(), LinkAppendingVars(), LinkGlobals(), MallocConvertibleToType(), llvm::DSNode::mergeTypeInfo(), OperandConvertibleToType(), OptimizeGlobalAddressOfMalloc(), llvm::BytecodeReader::ParseConstantValue(), llvm::BytecodeReader::ParseInstruction(), llvm::BytecodeReader::ParseModule(), llvm::BytecodeReader::ParseStringConstants(), ProcessGlobalsWithSameName(), RecursiveResolveTypesI(), TypesEqual(), and llvm::Interpreter::visitAllocationInst().

virtual const Type* llvm::SequentialType::getTypeAtIndex const Value V  )  const [inline, virtual]
 

getTypeAtIndex - Given an index value into the type, return the type of the element. For sequential types, there is only one subtype...

Implements llvm::CompositeType.

Definition at line 258 of file DerivedTypes.h.

References llvm::Type::ContainedTys.

bool SequentialType::indexValid const Value V  )  const [virtual]
 

Implements llvm::CompositeType.

Definition at line 1290 of file Type.cpp.

References llvm::Value::getType(), llvm::Type::getTypeID(), llvm::Type::IntTyID, llvm::Type::LongTyID, llvm::Type::UIntTyID, and llvm::Type::ULongTyID.

Referenced by llvm::GetElementPtrInst::getIndexedType().


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