diff options
author | Alexey Samsonov <samsonov@google.com> | 2013-08-06 10:49:15 +0000 |
---|---|---|
committer | Alexey Samsonov <samsonov@google.com> | 2013-08-06 10:49:15 +0000 |
commit | e664290ad6d988e0ae40f2461084f6adbababa47 (patch) | |
tree | 61ac2dc9fbd57bbfea16f43d2aa8afc7453db741 /lib/DebugInfo/DWARFDebugInfoEntry.h | |
parent | 7398c774f636f881166a73ff32275354b505d852 (diff) | |
download | llvm-e664290ad6d988e0ae40f2461084f6adbababa47.tar.gz llvm-e664290ad6d988e0ae40f2461084f6adbababa47.tar.bz2 llvm-e664290ad6d988e0ae40f2461084f6adbababa47.tar.xz |
Store compile unit corresponding to each chain of inlined debug info entries. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187792 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/DebugInfo/DWARFDebugInfoEntry.h')
-rw-r--r-- | lib/DebugInfo/DWARFDebugInfoEntry.h | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/lib/DebugInfo/DWARFDebugInfoEntry.h b/lib/DebugInfo/DWARFDebugInfoEntry.h index 9003591cbe..a69911f561 100644 --- a/lib/DebugInfo/DWARFDebugInfoEntry.h +++ b/lib/DebugInfo/DWARFDebugInfoEntry.h @@ -20,7 +20,7 @@ class DWARFDebugAranges; class DWARFCompileUnit; class DWARFContext; class DWARFFormValue; -class DWARFInlinedSubroutineChain; +struct DWARFDebugInfoEntryInlinedChain; /// DWARFDebugInfoEntryMinimal - A DIE with only the minimum required data. class DWARFDebugInfoEntryMinimal { @@ -162,18 +162,23 @@ public: void getCallerFrame(const DWARFCompileUnit *CU, uint32_t &CallFile, uint32_t &CallLine, uint32_t &CallColumn) const; - /// InlinedChain - represents a chain of inlined_subroutine - /// DIEs, (possibly ending with subprogram DIE), all of which are contained - /// in some concrete inlined instance tree. Address range for each DIE - /// (except the last DIE) in this chain is contained in address - /// range for next DIE in the chain. - typedef SmallVector<DWARFDebugInfoEntryMinimal, 4> InlinedChain; - /// Get inlined chain for a given address, rooted at the current DIE. /// Returns empty chain if address is not contained in address range /// of current DIE. - InlinedChain getInlinedChainForAddress(const DWARFCompileUnit *CU, - const uint64_t Address) const; + DWARFDebugInfoEntryInlinedChain + getInlinedChainForAddress(const DWARFCompileUnit *CU, + const uint64_t Address) const; +}; + +/// DWARFDebugInfoEntryInlinedChain - represents a chain of inlined_subroutine +/// DIEs, (possibly ending with subprogram DIE), all of which are contained +/// in some concrete inlined instance tree. Address range for each DIE +/// (except the last DIE) in this chain is contained in address +/// range for next DIE in the chain. +struct DWARFDebugInfoEntryInlinedChain { + DWARFDebugInfoEntryInlinedChain() : CU(0) {} + SmallVector<DWARFDebugInfoEntryMinimal, 4> DIEs; + const DWARFCompileUnit *CU; }; } |