|
LLVM
3.7.0
|
Local variable. More...
#include <DebugInfoMetadata.h>
Static Public Member Functions | |
| static bool | classof (const Metadata *MD) |
Static Public Member Functions inherited from llvm::DIVariable | |
| 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) |
Friends | |
| class | LLVMContextImpl |
| class | MDNode |
Local variable.
TODO: Split between arguments and otherwise. TODO: Use DW_TAG_variable instead of fake tags. TODO: Split up flags.
Definition at line 1929 of file DebugInfoMetadata.h.
Definition at line 1997 of file DebugInfoMetadata.h.
References llvm::Metadata::DILocalVariableKind, and llvm::Metadata::getMetadataID().
|
inline |
Definition at line 1973 of file DebugInfoMetadata.h.
| llvm::DILocalVariable::DEFINE_MDNODE_GET | ( | DILocalVariable | , |
| (unsigned Tag, DILocalScope *Scope, StringRef Name,DIFile *File, unsigned Line, DITypeRef Type, unsigned Arg,unsigned Flags) | , | ||
| (Tag, Scope, Name, File, Line, Type, Arg, Flags) | |||
| ) |
|
inline |
Definition at line 1982 of file DebugInfoMetadata.h.
Referenced by llvm::DwarfFile::addScopeVariable(), llvm::MDNodeKeyImpl< DILocalVariable >::isKeyOf(), and WriteDILocalVariable().
|
inline |
Definition at line 1983 of file DebugInfoMetadata.h.
Referenced by isArtificial(), llvm::MDNodeKeyImpl< DILocalVariable >::isKeyOf(), isObjectPointer(), and WriteDILocalVariable().
|
inline |
Get the local scope for this variable.
Variables must be defined in a local scope.
Definition at line 1978 of file DebugInfoMetadata.h.
References llvm::DIVariable::getScope().
Referenced by llvm::DwarfUnit::addSourceLine(), llvm::DwarfDebug::beginFunction(), emitDebugValueComment(), llvm::DIBuilder::insertDbgValueIntrinsic(), llvm::DIBuilder::insertDeclare(), isValidLocationForIntrinsic(), and WriteDILocalVariable().
|
inline |
Definition at line 1985 of file DebugInfoMetadata.h.
References getFlags().
Referenced by llvm::DbgVariable::isArtificial().
|
inline |
Definition at line 1986 of file DebugInfoMetadata.h.
References getFlags().
Referenced by llvm::DbgVariable::isObjectPointer().
|
inline |
Check that a location is valid for this variable.
Check that DL exists, is in the same subprogram, and has the same inlined-at location as this. (Otherwise, it's not a valid attachemnt to a DbgInfoIntrinsic.)
Definition at line 1993 of file DebugInfoMetadata.h.
References getScope(), and llvm::DILocalScope::getSubprogram().
Referenced by llvm::SelectionDAGBuilder::resolveDanglingDebugInfo(), and llvm::FastISel::selectIntrinsicCall().
|
friend |
Definition at line 1930 of file DebugInfoMetadata.h.
|
friend |
Definition at line 1931 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
| unsigned Metadata MDString Metadata unsigned Metadata unsigned unsigned llvm::DILocalVariable::Flags |
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
| unsigned Metadata MDString Metadata unsigned Metadata unsigned unsigned llvm::DILocalVariable::Scope |
Definition at line 1968 of file DebugInfoMetadata.h.
| unsigned llvm::DILocalVariable::Tag |
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
Definition at line 1968 of file DebugInfoMetadata.h.
1.8.6