[Lldb-commits] [lldb] r297496 - Simplify & correct the patch I wrote in r297441, after thinking

Jason Molenda via lldb-commits lldb-commits at lists.llvm.org
Fri Mar 10 11:31:54 PST 2017


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();
   }
 }
 




More information about the lldb-commits mailing list