LLVM API Documentation

llvm::PointerType Class Reference

#include <DerivedTypes.h>

Inheritance diagram for llvm::PointerType:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual void refineAbstractType (const DerivedType *OldTy, const Type *NewTy)
virtual void typeBecameConcrete (const DerivedType *AbsTy)

Static Public Member Functions

static PointerTypeget (const Type *ElementType)
 PointerType::get - This is the only way to construct a new pointer type.
static bool classof (const PointerType *T)
static bool classof (const Type *T)
 Methods for support type inquiry through isa, cast, and dyn_cast:.

Protected Member Functions

 PointerType (const Type *ElType)

Friends

class TypeMap< PointerValType, PointerType >

Detailed Description

PointerType - Class to represent pointers

Definition at line 318 of file DerivedTypes.h.


Constructor & Destructor Documentation

PointerType::PointerType ( const Type ElType  )  [protected]

Definition at line 462 of file Type.cpp.

References E, and llvm::Type::setAbstract().


Member Function Documentation

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

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

Reimplemented from llvm::SequentialType.

Definition at line 340 of file DerivedTypes.h.

References llvm::Type::getTypeID(), llvm::Type::PointerTyID, and T.

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

Definition at line 339 of file DerivedTypes.h.

PointerType * PointerType::get ( const Type ElementType  )  [static]

PointerType::get - This is the only way to construct a new pointer type.

Definition at line 1193 of file Type.cpp.

References PointerTypes.

Referenced by llvm::DefaultIntrinsicLowering::AddPrototypes(), llvm::ConstantFoldGetElementPtr(), llvm::ConvertExpressionToType(), CreateArgv(), llvm::ExpressionConvertibleToType(), llvm::DISerializer::getEmptyStructPtrType(), llvm::Module::getFunction(), llvm::ConstantExpr::getGetElementPtr(), llvm::Module::getGlobalVariable(), llvm::Module::getMainFunction(), llvm::Module::getOrInsertFunction(), llvm::ConstantExpr::getSizeOf(), llvm::DISerializer::getStrPtrType(), llvm::InlineFunction(), llvm::InsertProfilingInitCall(), and llvm::BytecodeReader::ParseType().

void PointerType::refineAbstractType ( const DerivedType OldTy,
const Type NewTy 
) [virtual]

refineAbstractType - The callback method invoked when an abstract type is resolved to another type. An object must override this method to update its internal state to reference NewType instead of OldType.

Reimplemented from llvm::Type.

Definition at line 1395 of file Type.cpp.

References PointerTypes.

void PointerType::typeBecameConcrete ( const DerivedType AbsTy  )  [virtual]

The other case which AbstractTypeUsers must be aware of is when a type makes the transition from being abstract (where it has clients on it's AbstractTypeUsers list) to concrete (where it does not). This method notifies ATU's when this occurs for a type.

Reimplemented from llvm::Type.

Definition at line 1400 of file Type.cpp.

References PointerTypes.


Friends And Related Function Documentation

friend class TypeMap< PointerValType, PointerType > [friend]

Definition at line 319 of file DerivedTypes.h.


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