diff options
author | Greg Clayton <gclayton@apple.com> | 2010-09-15 08:33:30 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2010-09-15 08:33:30 +0000 |
commit | d88d759a74f1b79cdd45b27f5c1c56cf2d0a472e (patch) | |
tree | fe6ab655ca6d1f73ed87749b6b97a65bb5e3e9e0 /lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h | |
parent | c288cda3d5259e5c73e29fdbc5d2499c37427364 (diff) | |
download | bcm5719-llvm-d88d759a74f1b79cdd45b27f5c1c56cf2d0a472e.tar.gz bcm5719-llvm-d88d759a74f1b79cdd45b27f5c1c56cf2d0a472e.zip |
15-20% speed improvement when parsing DWARF. I used instruments to
find the hotspots in our code when indexing the DWARF. A combination of
using SmallVector to avoid collection allocations, using fixed form
sizes when possible, and optimizing the hot loops contributed to the
speedup.
llvm-svn: 113961
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h')
-rw-r--r-- | lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h index 72dedaee776..49fabdcbd94 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h +++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h @@ -70,7 +70,7 @@ public: // static bool PutUnsigned(dw_form_t form, dw_offset_t offset, uint64_t value, BinaryStreamBuf& out_buff, const DWARFCompileUnit* cu, bool fixup_cu_relative_refs); static bool IsBlockForm(const dw_form_t form); static bool IsDataForm(const dw_form_t form); - + static const uint8_t * GetFixedFormSizesForAddressSize (uint8_t addr_size); static int Compare (const DWARFFormValue& a, const DWARFFormValue& b, const DWARFCompileUnit* a_cu, const DWARFCompileUnit* b_cu, const lldb_private::DataExtractor* debug_str_data_ptr); protected: dw_form_t m_form; // Form for this value |