Modified: trunk/Tools/ChangeLog (255779 => 255780)
--- trunk/Tools/ChangeLog 2020-02-05 01:30:56 UTC (rev 255779)
+++ trunk/Tools/ChangeLog 2020-02-05 01:46:59 UTC (rev 255780)
@@ -1,3 +1,18 @@
+2020-02-04 Alex Christensen <[email protected]>
+
+ REGRESSION: (r255611) [ Mac ] 3 lldb tests failing related to HashMap
+ https://bugs.webkit.org/show_bug.cgi?id=207204
+
+ Reviewed by Simon Fraser.
+
+ Remove support for HashSet and HashMap until we are able to do the equivalent of reinterpret_cast<unsigned*>(pointer)[-1]
+ in LLDB's python API.
+
+ * lldb/lldb_webkit_unittest.py:
+ (TestSummaryProviders.serial_test_WTFHashMap_tablesize_and_size):
+ (TestSummaryProviders.serial_test_WTFHashMap_of_vectors_tablesize_and_size):
+ (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
+
2020-02-04 Lauro Moura <[email protected]>
[EWS] Stop GTK/WPE build if jhbuild fails.
Modified: trunk/Tools/lldb/lldb_webkit.py (255779 => 255780)
--- trunk/Tools/lldb/lldb_webkit.py 2020-02-05 01:30:56 UTC (rev 255779)
+++ trunk/Tools/lldb/lldb_webkit.py 2020-02-05 01:46:59 UTC (rev 255780)
@@ -61,9 +61,6 @@
debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFStringView_SummaryProvider WTF::StringView')
debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFAtomString_SummaryProvider WTF::AtomString')
debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFVector_SummaryProvider -x "^WTF::Vector<.+>$"')
- debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFHashTable_SummaryProvider -x "^WTF::HashTable<.+>$"')
- debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFHashMap_SummaryProvider -x "^WTF::HashMap<.+>$"')
- debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFHashSet_SummaryProvider -x "^WTF::HashSet<.+>$"')
debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFMediaTime_SummaryProvider WTF::MediaTime')
debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFOptionSet_SummaryProvider -x "^WTF::OptionSet<.+>$"')
debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFCompactPointerTuple_SummaryProvider -x "^WTF::CompactPointerTuple<.+,.+>$"')
@@ -92,7 +89,6 @@
# synthetic types (see <https://lldb.llvm.org/varformats.html>)
debugger.HandleCommand('type synthetic add -x "^WTF::Vector<.+>$" --python-class lldb_webkit.WTFVectorProvider')
- debugger.HandleCommand('type synthetic add -x "^WTF::HashTable<.+>$" --python-class lldb_webkit.WTFHashTableProvider')
debugger.HandleCommand('type synthetic add -x "^WTF::OptionSet<.+>$" --python-class lldb_webkit.WTFOptionSetProvider')
debugger.HandleCommand('type synthetic add -x "^WTF::CompactPointerTuple<.+,.+>$" --python-class lldb_webkit.WTFCompactPointerTupleProvider')
@@ -135,21 +131,6 @@
return "{ size = %d, capacity = %d }" % (provider.size, provider.capacity)
-def WTFHashTable_SummaryProvider(valobj, dict):
- provider = WTFHashTableProvider(valobj, dict)
- return "{ tableSize = %d, keyCount = %d }" % (provider.tableSize(), provider.keyCount())
-
-
-def WTFHashMap_SummaryProvider(valobj, dict):
- provider = WTFHashMapProvider(valobj, dict)
- return "{ tableSize = %d, keyCount = %d }" % (provider.tableSize(), provider.keyCount())
-
-
-def WTFHashSet_SummaryProvider(valobj, dict):
- provider = WTFHashSetProvider(valobj, dict)
- return "{ tableSize = %d, keyCount = %d }" % (provider.tableSize(), provider.keyCount())
-
-
def WTFOptionSet_SummaryProvider(valobj, dict):
provider = WTFOptionSetProvider(valobj, dict)
return "{ size = %d }" % provider.size
@@ -976,86 +957,6 @@
return True
-class WTFHashMapProvider:
- def __init__(self, valobj, internal_dict):
- self.valobj = valobj
- impl_ptr = self.valobj.GetChildMemberWithName('m_impl')
- self._hash_table_provider = WTFHashTableProvider(impl_ptr, dict)
-
- def tableSize(self):
- return self._hash_table_provider.tableSize()
-
- def keyCount(self):
- return self._hash_table_provider.keyCount()
-
-
-class WTFHashSetProvider:
- def __init__(self, valobj, internal_dict):
- self.valobj = valobj
- impl_ptr = self.valobj.GetChildMemberWithName('m_impl')
- self._hash_table_provider = WTFHashTableProvider(impl_ptr, dict)
-
- def tableSize(self):
- return self._hash_table_provider.tableSize()
-
- def keyCount(self):
- return self._hash_table_provider.keyCount()
-
-
-class WTFHashTableProvider:
- def __init__(self, valobj, internal_dict):
- self.valobj = valobj
- self.update()
-
- def tableSize(self):
- return self.valobj.GetChildMemberWithName('m_tableSize').GetValueAsUnsigned(0)
-
- def keyCount(self):
- return self.valobj.GetChildMemberWithName('m_keyCount').GetValueAsUnsigned(0)
-
- # Synthetic children provider methods.
- def num_children(self):
- return self.tableSize() + 5
-
- def get_child_index(self, name):
- if name == "m_table":
- return self.tableSize()
- elif name == "m_tableSize":
- return self.tableSize() + 1
- elif name == "m_tableSizeMask":
- return self.tableSize() + 2
- elif name == "m_keyCount":
- return self.tableSize() + 3
- elif name == "m_deletedCount":
- return self.tableSize() + 4
- else:
- return int(name.lstrip('[').rstrip(']'))
-
- def get_child_at_index(self, index):
- if index == self.tableSize():
- return self.valobj.GetChildMemberWithName('m_table')
- elif index == self.tableSize() + 1:
- return self.valobj.GetChildMemberWithName('m_tableSize')
- elif index == self.tableSize() + 2:
- return self.valobj.GetChildMemberWithName('m_tableSizeMask')
- elif index == self.tableSize() + 3:
- return self.valobj.GetChildMemberWithName('m_keyCount')
- elif index == self.tableSize() + 4:
- return self.valobj.GetChildMemberWithName('m_deletedCount')
- elif index < self.tableSize():
- table = self.valobj.GetChildMemberWithName('m_table')
- return table.CreateChildAtOffset('[' + str(index) + ']', index * self.data_size, self.data_type)
- else:
- return None
-
- def update(self):
- self.data_type = self.valobj.GetType().GetTemplateArgumentType(1)
- self.data_size = self.data_type.GetByteSize()
-
- def has_children(self):
- return True
-
-
class WTFMediaTimeProvider:
def __init__(self, valobj, internal_dict):
self.valobj = valobj
Modified: trunk/Tools/lldb/lldb_webkit_unittest.py (255779 => 255780)
--- trunk/Tools/lldb/lldb_webkit_unittest.py 2020-02-05 01:30:56 UTC (rev 255779)
+++ trunk/Tools/lldb/lldb_webkit_unittest.py 2020-02-05 01:46:59 UTC (rev 255780)
@@ -151,23 +151,6 @@
summary = lldb_webkit.WTFVector_SummaryProvider(variable, {})
self.assertEqual(summary, "{ size = 1, capacity = 16 }")
- # MARK: WTFHashMap_SummaryProvider and WTFHashSet_SummaryProvider test cases
-
- def serial_test_WTFHashMap_tablesize_and_size(self):
- variable = self._sbFrame.FindVariable('hashMapOfInts')
- summary = lldb_webkit.WTFHashMap_SummaryProvider(variable, {})
- self.assertEqual(summary, "{ tableSize = 8, keyCount = 2 }")
-
- def serial_test_WTFHashMap_of_vectors_tablesize_and_size(self):
- variable = self._sbFrame.FindVariable('hashMapOfVectors')
- summary = lldb_webkit.WTFHashMap_SummaryProvider(variable, {})
- self.assertEqual(summary, "{ tableSize = 8, keyCount = 1 }")
-
- def serial_test_WTFHashSet_tablesize_and_size(self):
- variable = self._sbFrame.FindVariable('hashSetOfInts')
- summary = lldb_webkit.WTFHashSet_SummaryProvider(variable, {})
- self.assertEqual(summary, "{ tableSize = 8, keyCount = 1 }")
-
# MARK: WTFOptionSet_SummaryProvider test cases
def serial_test_WTFOptionSet_SummaryProvider_empty(self):