Author: jmolenda Date: Fri Mar 10 13:31:54 2017 New Revision: 297496 URL: http://llvm.org/viewvc/llvm-project?rev=297496&view=rev Log: Simplify & correct the patch I wrote in r297441, after thinking about this more I realized I could make the change isolated to whether we decide an empty accelerator table is valid or not. <rdar://problem/30867462>
Modified: lldb/trunk/include/lldb/Core/MappedHash.h lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp Modified: lldb/trunk/include/lldb/Core/MappedHash.h URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/MappedHash.h?rev=297496&r1=297495&r2=297496&view=diff ============================================================================== --- lldb/trunk/include/lldb/Core/MappedHash.h (original) +++ lldb/trunk/include/lldb/Core/MappedHash.h Fri Mar 10 13:31:54 2017 @@ -356,10 +356,6 @@ public: m_header.bucket_count > 0; } - bool HasContent() const { - return IsValid() && m_header.hashes_count > 0; - } - uint32_t GetHashIndex(uint32_t bucket_idx) const { if (m_hash_indexes && bucket_idx < m_header.bucket_count) return m_hash_indexes[bucket_idx]; Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp?rev=297496&r1=297495&r2=297496&view=diff ============================================================================== --- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (original) +++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp Fri Mar 10 13:31:54 2017 @@ -448,19 +448,19 @@ void SymbolFileDWARF::InitializeObject() if (m_data_apple_names.m_data.GetByteSize() > 0) { m_apple_names_ap.reset(new DWARFMappedHash::MemoryTable( m_data_apple_names.m_data, get_debug_str_data(), ".apple_names")); - if (!m_apple_names_ap->IsValid()) - m_apple_names_ap.reset(); - if (m_apple_names_ap->HasContent()) + if (m_apple_names_ap->IsValid()) m_using_apple_tables = true; + else + m_apple_names_ap.reset(); } get_apple_types_data(); if (m_data_apple_types.m_data.GetByteSize() > 0) { m_apple_types_ap.reset(new DWARFMappedHash::MemoryTable( m_data_apple_types.m_data, get_debug_str_data(), ".apple_types")); - if (!m_apple_types_ap->IsValid()) - m_apple_types_ap.reset(); - if (m_apple_types_ap->HasContent()) + if (m_apple_types_ap->IsValid()) m_using_apple_tables = true; + else + m_apple_types_ap.reset(); } get_apple_namespaces_data(); @@ -468,20 +468,20 @@ void SymbolFileDWARF::InitializeObject() m_apple_namespaces_ap.reset(new DWARFMappedHash::MemoryTable( m_data_apple_namespaces.m_data, get_debug_str_data(), ".apple_namespaces")); - if (!m_apple_namespaces_ap->IsValid()) - m_apple_namespaces_ap.reset(); - if (m_apple_namespaces_ap->HasContent()) + if (m_apple_namespaces_ap->IsValid()) m_using_apple_tables = true; + else + m_apple_namespaces_ap.reset(); } get_apple_objc_data(); if (m_data_apple_objc.m_data.GetByteSize() > 0) { m_apple_objc_ap.reset(new DWARFMappedHash::MemoryTable( m_data_apple_objc.m_data, get_debug_str_data(), ".apple_objc")); - if (!m_apple_objc_ap->IsValid()) - m_apple_objc_ap.reset(); - if (m_apple_objc_ap->HasContent()) + if (m_apple_objc_ap->IsValid()) m_using_apple_tables = true; + else + m_apple_objc_ap.reset(); } } _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits