|
LLVM
3.7.0
|
Base class for scope-like contexts. More...
#include <DebugInfoMetadata.h>
Static Public Member Functions | |
| static bool | classof (const Metadata *MD) |
Static Public Member Functions inherited from llvm::DINode | |
| static unsigned | getFlag (StringRef Flag) |
| static const char * | getFlagString (unsigned Flag) |
| static unsigned | splitFlags (unsigned Flags, SmallVectorImpl< unsigned > &SplitFlags) |
| Split up a flags bitfield. More... | |
| static bool | classof (const Metadata *MD) |
Static Public Member Functions inherited from llvm::MDNode | |
| static MDTuple * | get (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
| static MDTuple * | getIfExists (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
| static MDTuple * | getDistinct (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
| static TempMDTuple | getTemporary (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
| static void | deleteTemporary (MDNode *N) |
| Deallocate a node created by getTemporary. More... | |
| template<class T > | |
| static std::enable_if < std::is_base_of< MDNode, T > ::value, T * >::type | replaceWithPermanent (std::unique_ptr< T, TempMDNodeDeleter > N) |
| Replace a temporary node with a permanent one. More... | |
| template<class T > | |
| static std::enable_if < std::is_base_of< MDNode, T > ::value, T * >::type | replaceWithUniqued (std::unique_ptr< T, TempMDNodeDeleter > N) |
| Replace a temporary node with a uniqued one. More... | |
| template<class T > | |
| static std::enable_if < std::is_base_of< MDNode, T > ::value, T * >::type | replaceWithDistinct (std::unique_ptr< T, TempMDNodeDeleter > N) |
| Replace a temporary node with a distinct one. More... | |
| static bool | classof (const Metadata *MD) |
| Methods for support type inquiry through isa, cast, and dyn_cast: More... | |
| static MDNode * | concatenate (MDNode *A, MDNode *B) |
| Methods for metadata merging. More... | |
| static MDNode * | intersect (MDNode *A, MDNode *B) |
| static MDNode * | getMostGenericTBAA (MDNode *A, MDNode *B) |
| static MDNode * | getMostGenericFPMath (MDNode *A, MDNode *B) |
| static MDNode * | getMostGenericRange (MDNode *A, MDNode *B) |
| static MDNode * | getMostGenericAliasScope (MDNode *A, MDNode *B) |
Base class for scope-like contexts.
Base class for lexical scopes and types (which are also declaration contexts).
TODO: Separate the concepts of declaration contexts and lexical scopes.
Definition at line 404 of file DebugInfoMetadata.h.
|
inlineprotected |
Definition at line 406 of file DebugInfoMetadata.h.
|
protecteddefault |
Definition at line 433 of file DebugInfoMetadata.h.
References llvm::Metadata::DIBasicTypeKind, llvm::Metadata::DICompileUnitKind, llvm::Metadata::DICompositeTypeKind, llvm::Metadata::DIDerivedTypeKind, llvm::Metadata::DIFileKind, llvm::Metadata::DILexicalBlockFileKind, llvm::Metadata::DILexicalBlockKind, llvm::Metadata::DIModuleKind, llvm::Metadata::DINamespaceKind, llvm::Metadata::DISubprogramKind, llvm::Metadata::DISubroutineTypeKind, and llvm::Metadata::getMetadataID().
|
inline |
Definition at line 505 of file DebugInfoMetadata.h.
References F(), and getFile().
Referenced by llvm::DwarfUnit::addSourceLine(), and llvm::DwarfCompileUnit::constructImportedEntityDIE().
|
inline |
Definition at line 412 of file DebugInfoMetadata.h.
References getRawFile().
Referenced by getDirectory(), getFilename(), WriteDICompileUnit(), WriteDICompositeType(), WriteDIDerivedType(), WriteDILexicalBlock(), WriteDILexicalBlockFile(), WriteDINamespace(), and WriteDISubprogram().
|
inline |
Definition at line 499 of file DebugInfoMetadata.h.
References F(), and getFile().
Referenced by llvm::DwarfUnit::addSourceLine(), and llvm::DwarfCompileUnit::constructImportedEntityDIE().
| StringRef DIScope::getName | ( | ) | const |
Definition at line 149 of file DebugInfoMetadata.cpp.
References llvm::SP.
Referenced by llvm::DwarfDebug::addSubprogramNames(), llvm::DwarfUnit::applySubprogramAttributes(), llvm::DwarfCompileUnit::applySubprogramAttributesToDefinition(), llvm::DISubprogram::describes(), getFunctionName(), llvm::DwarfUnit::getParentContextString(), and llvm::MDNodeKeyImpl< DISubprogram >::isKeyOf().
|
inline |
Return the raw underlying file.
An DIFile is an DIScope, but it doesn't point at a separate file (itis the file). If this is an DIFile, we need to return this. Otherwise, return the first operand, which is where all other subclasses store their file pointer.
Definition at line 426 of file DebugInfoMetadata.h.
References llvm::MDNode::getOperand().
Referenced by getFile(), llvm::MDNodeKeyImpl< DIDerivedType >::isKeyOf(), llvm::MDNodeKeyImpl< DICompositeType >::isKeyOf(), llvm::MDNodeKeyImpl< DICompileUnit >::isKeyOf(), llvm::MDNodeKeyImpl< DISubprogram >::isKeyOf(), llvm::MDNodeKeyImpl< DILexicalBlock >::isKeyOf(), llvm::MDNodeKeyImpl< DILexicalBlockFile >::isKeyOf(), and llvm::MDNodeKeyImpl< DINamespace >::isKeyOf().
|
inline |
Definition at line 431 of file DebugInfoMetadata.h.
References llvm::TypedDINodeRef< T >::get().
| DIScopeRef DIScope::getScope | ( | ) | const |
Definition at line 128 of file DebugInfoMetadata.cpp.
References llvm::SP.
Referenced by llvm::DwarfCompileUnit::applySubprogramAttributesToDefinition(), llvm::DwarfUnit::getOrCreateSubprogramDIE(), llvm::DwarfUnit::getParentContextString(), and WriteDISubprogram().
1.8.6