LLVM API Documentation
#include <DerivedTypes.h>
Inheritance diagram for llvm::PackedType:
Public Member Functions | |
unsigned | getNumElements () const |
virtual void | refineAbstractType (const DerivedType *OldTy, const Type *NewTy) |
virtual void | typeBecameConcrete (const DerivedType *AbsTy) |
Static Public Member Functions | |
static PackedType * | get (const Type *ElementType, unsigned NumElements) |
static bool | classof (const PackedType *T) |
static bool | classof (const Type *T) |
Methods for support type inquiry through isa, cast, and dyn_cast:. | |
Protected Member Functions | |
PackedType (const Type *ElType, unsigned NumEl) | |
Friends | |
class | TypeMap< PackedValType, PackedType > |
Definition at line 281 of file DerivedTypes.h.
PackedType::PackedType | ( | const Type * | ElType, | |
unsigned | NumEl | |||
) | [protected] |
This should really be private, but it squelches a bogus warning from GCC to make them protected: warning: `class PackedType' only defines private constructors and has no friends
Private ctor - Only can be created by a static member...
Definition at line 469 of file Type.cpp.
References llvm::Type::isFloatingPoint(), and llvm::Type::isIntegral().
PackedType * PackedType::get | ( | const Type * | ElementType, | |
unsigned | NumElements | |||
) | [static] |
PackedType::get - This static method is the primary way to construct an PackedType
Definition at line 1104 of file Type.cpp.
References llvm::isPowerOf2_32(), and PackedTypes.
Referenced by llvm::ConstantPacked::get(), llvm::BytecodeReader::ParseInstruction(), and llvm::BytecodeReader::ParseType().
unsigned llvm::PackedType::getNumElements | ( | ) | const [inline] |
Definition at line 302 of file DerivedTypes.h.
Referenced by calcTypeName(), CastConstantPacked(), llvm::FunctionLoweringInfo::CreateRegForValue(), llvm::AsmPrinter::EmitGlobalConstant(), FindScalarElement(), llvm::PackedValType::get(), llvm::SelectionDAGLowering::getLoadFrom(), llvm::TargetLowering::getPackedTypeBreakdown(), getShuffleMask(), getTypeDescription(), getTypeInfo(), llvm::SelectionDAGLowering::getValue(), llvm::PackedValType::hashTypeStructure(), llvm::TargetLowering::LowerArguments(), llvm::TargetLowering::LowerCallTo(), llvm::BytecodeReader::ParseConstantPoolValue(), llvm::BytecodeReader::ParseInstruction(), TypesEqual(), llvm::SelectionDAGLowering::visitBinary(), llvm::SelectionDAGLowering::visitCast(), and llvm::SelectionDAGLowering::visitTargetIntrinsic().
void PackedType::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 1384 of file Type.cpp.
References PackedTypes.
void PackedType::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 1389 of file Type.cpp.
References PackedTypes.
static bool llvm::PackedType::classof | ( | const PackedType * | T | ) | [inline, static] |
Definition at line 309 of file DerivedTypes.h.
static bool llvm::PackedType::classof | ( | const Type * | T | ) | [inline, static] |
Methods for support type inquiry through isa, cast, and dyn_cast:.
Reimplemented from llvm::SequentialType.
Definition at line 310 of file DerivedTypes.h.
References llvm::Type::getTypeID(), llvm::Type::PackedTyID, and T.
friend class TypeMap< PackedValType, PackedType > [friend] |
Definition at line 282 of file DerivedTypes.h.