summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2013-03-04 21:46:16 +0000
committerGreg Clayton <gclayton@apple.com>2013-03-04 21:46:16 +0000
commit9422dd64f870dd3344ca0e5909872765b517fc11 (patch)
tree24664b0ee18b5f597f8b8a0f7f18bfe14487adee /lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
parent427b404d0a456953d31d4f5d8abc5b3ac112036b (diff)
downloadbcm5719-llvm-9422dd64f870dd3344ca0e5909872765b517fc11.tar.gz
bcm5719-llvm-9422dd64f870dd3344ca0e5909872765b517fc11.zip
<rdar://problem/13338643>
DWARF with .o files now uses 40-60% less memory! Big fixes include: - Change line table internal representation to contain "file addresses". Since each line table is owned by a compile unit that is owned by a module, it makes address translation into lldb_private::Address easy to do when needed. - Removed linked address members/methods from lldb_private::Section and lldb_private::Address - lldb_private::LineTable can now relink itself using a FileRangeMap to make it easier to re-link line tables in the future - Added ObjectFile::ClearSymtab() so that we can get rid of the object file symbol tables after we parse them once since they are not needed and kept memory allocated for no reason - Moved the m_sections_ap (std::auto_ptr to section list) and m_symtab_ap (std::auto_ptr to the lldb_private::Symtab) out of each of the ObjectFile subclasses and put it into lldb_private::ObjectFile. - Changed how the debug map is parsed and stored to be able to: - Lazily parse the debug map for each object file - not require the address map for a .o file until debug information is linked for a .o file llvm-svn: 176454
Diffstat (limited to 'lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp')
-rw-r--r--lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp2
1 files changed, 0 insertions, 2 deletions
diff --git a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
index 42bfefe8d62..37434beac43 100644
--- a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
+++ b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
@@ -254,8 +254,6 @@ ObjectFileELF::ObjectFileELF (const lldb::ModuleSP &module_sp,
m_header(),
m_program_headers(),
m_section_headers(),
- m_sections_ap(),
- m_symtab_ap(),
m_filespec_ap(),
m_shstr_data()
{
OpenPOWER on IntegriCloud