|
LLVM
4.0.0
|
LexicalScope - This class is used to track scope information. More...
#include <LexicalScopes.h>
Public Member Functions | |
| LexicalScope (LexicalScope *P, const DILocalScope *D, const DILocation *I, bool A) | |
| LexicalScope * | getParent () const |
| const MDNode * | getDesc () const |
| const DILocation * | getInlinedAt () const |
| const DILocalScope * | getScopeNode () const |
| bool | isAbstractScope () const |
| SmallVectorImpl< LexicalScope * > & | getChildren () |
| SmallVectorImpl< InsnRange > & | getRanges () |
| void | addChild (LexicalScope *S) |
| addChild - Add a child scope. More... | |
| void | openInsnRange (const MachineInstr *MI) |
| openInsnRange - This scope covers instruction range starting from MI. More... | |
| void | extendInsnRange (const MachineInstr *MI) |
| extendInsnRange - Extend the current instruction range covered by this scope. More... | |
| void | closeInsnRange (LexicalScope *NewScope=nullptr) |
| closeInsnRange - Create a range based on FirstInsn and LastInsn collected until now. More... | |
| bool | dominates (const LexicalScope *S) const |
| dominates - Return true if current scope dominates given lexical scope. More... | |
| unsigned | getDFSOut () const |
| void | setDFSOut (unsigned O) |
| unsigned | getDFSIn () const |
| void | setDFSIn (unsigned I) |
| void | dump (unsigned Indent=0) const |
| dump - print lexical scope. More... | |
LexicalScope - This class is used to track scope information.
Definition at line 45 of file LexicalScopes.h.
|
inline |
Definition at line 48 of file LexicalScopes.h.
References addChild(), assert(), and llvm::MDNode::isResolved().
|
inline |
addChild - Add a child scope.
Definition at line 68 of file LexicalScopes.h.
Referenced by LexicalScope().
|
inline |
closeInsnRange - Create a range based on FirstInsn and LastInsn collected until now.
This is used when a new scope is encountered while walking machine instructions.
Definition at line 91 of file LexicalScopes.h.
References assert(), closeInsnRange(), dominates(), and llvm::SmallVectorTemplateBase< T, isPodLike >::push_back().
Referenced by closeInsnRange().
|
inline |
dominates - Return true if current scope dominates given lexical scope.
Definition at line 103 of file LexicalScopes.h.
References getDFSIn(), and getDFSOut().
Referenced by closeInsnRange(), and llvm::LexicalScopes::dominates().
| void LexicalScope::dump | ( | unsigned | Indent = 0 | ) | const |
dump - print lexical scope.
dump - Print data structures.
Definition at line 303 of file LexicalScopes.cpp.
References llvm::dbgs(), llvm::Metadata::dump(), i, llvm::raw_ostream::indent(), and N.
|
inline |
extendInsnRange - Extend the current instruction range covered by this scope.
Definition at line 81 of file LexicalScopes.h.
References assert(), extendInsnRange(), and MI.
Referenced by extendInsnRange().
|
inline |
Definition at line 64 of file LexicalScopes.h.
Referenced by llvm::DwarfCompileUnit::createScopeChildrenDIE(), and llvm::DebugHandlerBase::identifyScopeMarkers().
Definition at line 60 of file LexicalScopes.h.
|
inline |
Definition at line 114 of file LexicalScopes.h.
Referenced by dominates().
|
inline |
Definition at line 112 of file LexicalScopes.h.
Referenced by dominates().
|
inline |
Definition at line 61 of file LexicalScopes.h.
Referenced by llvm::DwarfCompileUnit::constructInlinedScopeDIE(), llvm::DwarfCompileUnit::constructScopeDIE(), and llvm::DwarfCompileUnit::constructSubprogramScopeDIE().
|
inline |
Definition at line 59 of file LexicalScopes.h.
Referenced by llvm::DwarfCompileUnit::constructScopeDIE().
|
inline |
Definition at line 65 of file LexicalScopes.h.
Referenced by llvm::DwarfCompileUnit::constructInlinedScopeDIE(), llvm::DwarfCompileUnit::constructLexicalScopeDIE(), llvm::LexicalScopes::getMachineBasicBlocks(), llvm::DebugHandlerBase::identifyScopeMarkers(), and llvm::DwarfDebug::isLexicalScopeDIENull().
|
inline |
|
inline |
Definition at line 63 of file LexicalScopes.h.
Referenced by llvm::DwarfCompileUnit::constructLexicalScopeDIE(), llvm::DwarfCompileUnit::constructSubprogramScopeDIE(), llvm::DwarfCompileUnit::constructVariableDIE(), llvm::DebugHandlerBase::identifyScopeMarkers(), and llvm::DwarfDebug::isLexicalScopeDIENull().
|
inline |
openInsnRange - This scope covers instruction range starting from MI.
Definition at line 71 of file LexicalScopes.h.
References MI, and openInsnRange().
Referenced by openInsnRange().
|
inline |
Definition at line 115 of file LexicalScopes.h.
References I.
|
inline |
Definition at line 113 of file LexicalScopes.h.
1.8.6