class DIType
Declaration
class DIType : public DIScope { /* full declaration omitted */ };
Description
Base class for types. TODO: Remove the hardcoded name and context, since many types don't use them. TODO: Split up flags.
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:583
Inherits from: DIScope
Member Variables
Inherited from Metadata:
Method Overview
- protected DIType(llvm::LLVMContext & C, unsigned int ID, llvm::Metadata::StorageType Storage, unsigned int Tag, unsigned int Line, uint64_t SizeInBits, uint32_t AlignInBits, uint64_t OffsetInBits, llvm::DINode::DIFlags Flags, ArrayRef<llvm::Metadata *> Ops)
- public static bool classof(const llvm::Metadata * MD)
- public llvm::TempDIType clone() const
- public llvm::TempDIType cloneWithFlags(llvm::DINode::DIFlags NewFlags) const
- public uint32_t getAlignInBits() const
- public uint32_t getAlignInBytes() const
- public bool getExportSymbols() const
- public llvm::DINode::DIFlags getFlags() const
- public unsigned int getLine() const
- public llvm::StringRef getName() const
- public uint64_t getOffsetInBits() const
- public llvm::MDString * getRawName() const
- public llvm::Metadata * getRawScope() const
- public llvm::DIScope * getScope() const
- public uint64_t getSizeInBits() const
- protected void init(unsigned int Line, uint64_t SizeInBits, uint32_t AlignInBits, uint64_t OffsetInBits, llvm::DINode::DIFlags Flags)
- public bool isAppleBlockExtension() const
- public bool isArtificial() const
- public bool isBigEndian() const
- public bool isBitField() const
- public bool isForwardDecl() const
- public bool isLValueReference() const
- public bool isLittleEndian() const
- public bool isObjcClassComplete() const
- public bool isObjectPointer() const
- public bool isPrivate() const
- public bool isProtected() const
- public bool isPublic() const
- public bool isRValueReference() const
- public bool isStaticMember() const
- public bool isTypePassByReference() const
- public bool isTypePassByValue() const
- public bool isVector() const
- public bool isVirtual() const
- protected void mutate(unsigned int Tag, unsigned int Line, uint64_t SizeInBits, uint32_t AlignInBits, uint64_t OffsetInBits, llvm::DINode::DIFlags Flags)
- protected ~DIType()
Inherited from DIScope:
- public classof
- public getDirectory
- public getFile
- public getFilename
- public getName
- public getRawFile
- public getScope
- public getSource
Inherited from DINode:
- public classof
- protected getCanonicalMDString
- public getFlag
- public getFlagString
- protected getOperandAs
- protected getStringOperand
- public getTag
- protected setTag
- public splitFlags
Inherited from MDNode:
- public classof
- public clone
- public concatenate
- public deleteTemporary
- protected dropAllReferences
- public get
- public getContext
- public getDistinct
- public getIfExists
- public getMostGenericAliasScope
- public getMostGenericAlignmentOrDereferenceable
- public getMostGenericFPMath
- public getMostGenericRange
- public getMostGenericTBAA
- public getNumOperands
- public getOperand
- public getTemporary
- public intersect
- public isDistinct
- public isResolved
- public isTBAAVtableAccess
- public isTemporary
- public isUniqued
- protected mutable_begin
- protected mutable_end
- public mutable_operands
- public op_begin
- public op_end
- public operands
- public replaceAllUsesWith
- public replaceOperandWith
- public replaceWithDistinct
- public replaceWithPermanent
- public replaceWithUniqued
- public resolve
- public resolveCycles
- protected setOperand
- protected storeDistinctInContext
- protected storeImpl
- protected storeImpl
Inherited from Metadata:
- public dump
- public dump
- public getMetadataID
- protected handleChangedOperand
- public print
- public print
- public printAsOperand
- public printAsOperand
Methods
¶DIType(llvm::LLVMContext& C,
unsigned int ID,
llvm::Metadata::StorageType Storage,
unsigned int Tag,
unsigned int Line,
uint64_t SizeInBits,
uint32_t AlignInBits,
uint64_t OffsetInBits,
llvm::DINode::DIFlags Flags,
ArrayRef<llvm::Metadata*> Ops)
DIType(llvm::LLVMContext& C,
unsigned int ID,
llvm::Metadata::StorageType Storage,
unsigned int Tag,
unsigned int Line,
uint64_t SizeInBits,
uint32_t AlignInBits,
uint64_t OffsetInBits,
llvm::DINode::DIFlags Flags,
ArrayRef<llvm::Metadata*> Ops)
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:591
Parameters
- llvm::LLVMContext& C
- unsigned int ID
- llvm::Metadata::StorageType Storage
- unsigned int Tag
- unsigned int Line
- uint64_t SizeInBits
- uint32_t AlignInBits
- uint64_t OffsetInBits
- llvm::DINode::DIFlags Flags
- ArrayRef<llvm::Metadata*> Ops
¶static bool classof(const llvm::Metadata* MD)
static bool classof(const llvm::Metadata* MD)
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:672
Parameters
- const llvm::Metadata* MD
¶llvm::TempDIType clone() const
llvm::TempDIType clone() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:617
¶llvm::TempDIType cloneWithFlags(
llvm::DINode::DIFlags NewFlags) const
llvm::TempDIType cloneWithFlags(
llvm::DINode::DIFlags NewFlags) const
Description
Returns a new temporary DIType with updated Flags
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:636
Parameters
- llvm::DINode::DIFlags NewFlags
¶uint32_t getAlignInBits() const
uint32_t getAlignInBits() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:623
¶uint32_t getAlignInBytes() const
uint32_t getAlignInBytes() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:624
¶bool getExportSymbols() const
bool getExportSymbols() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:670
¶llvm::DINode::DIFlags getFlags() const
llvm::DINode::DIFlags getFlags() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:626
¶unsigned int getLine() const
unsigned int getLine() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:621
¶llvm::StringRef getName() const
llvm::StringRef getName() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:629
¶uint64_t getOffsetInBits() const
uint64_t getOffsetInBits() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:625
¶llvm::MDString* getRawName() const
llvm::MDString* getRawName() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:633
¶llvm::Metadata* getRawScope() const
llvm::Metadata* getRawScope() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:632
¶llvm::DIScope* getScope() const
llvm::DIScope* getScope() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:628
¶uint64_t getSizeInBits() const
uint64_t getSizeInBits() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:622
¶void init(unsigned int Line,
uint64_t SizeInBits,
uint32_t AlignInBits,
uint64_t OffsetInBits,
llvm::DINode::DIFlags Flags)
void init(unsigned int Line,
uint64_t SizeInBits,
uint32_t AlignInBits,
uint64_t OffsetInBits,
llvm::DINode::DIFlags Flags)
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:599
Parameters
- unsigned int Line
- uint64_t SizeInBits
- uint32_t AlignInBits
- uint64_t OffsetInBits
- llvm::DINode::DIFlags Flags
¶bool isAppleBlockExtension() const
bool isAppleBlockExtension() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:652
¶bool isArtificial() const
bool isArtificial() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:654
¶bool isBigEndian() const
bool isBigEndian() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:668
¶bool isBitField() const
bool isBitField() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:660
¶bool isForwardDecl() const
bool isForwardDecl() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:651
¶bool isLValueReference() const
bool isLValueReference() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:662
¶bool isLittleEndian() const
bool isLittleEndian() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:669
¶bool isObjcClassComplete() const
bool isObjcClassComplete() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:656
¶bool isObjectPointer() const
bool isObjectPointer() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:655
¶bool isPrivate() const
bool isPrivate() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:642
¶bool isProtected() const
bool isProtected() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:645
¶bool isPublic() const
bool isPublic() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:648
¶bool isRValueReference() const
bool isRValueReference() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:663
¶bool isStaticMember() const
bool isStaticMember() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:661
¶bool isTypePassByReference() const
bool isTypePassByReference() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:665
¶bool isTypePassByValue() const
bool isTypePassByValue() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:664
¶bool isVector() const
bool isVector() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:659
¶bool isVirtual() const
bool isVirtual() const
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:653
¶void mutate(unsigned int Tag,
unsigned int Line,
uint64_t SizeInBits,
uint32_t AlignInBits,
uint64_t OffsetInBits,
llvm::DINode::DIFlags Flags)
void mutate(unsigned int Tag,
unsigned int Line,
uint64_t SizeInBits,
uint32_t AlignInBits,
uint64_t OffsetInBits,
llvm::DINode::DIFlags Flags)
Description
Change fields in place.
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:609
Parameters
- unsigned int Tag
- unsigned int Line
- uint64_t SizeInBits
- uint32_t AlignInBits
- uint64_t OffsetInBits
- llvm::DINode::DIFlags Flags
¶~DIType()
~DIType()
Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:597