MCPcopy Index your code
hub / github.com/nodejs/node / FindObject

Method FindObject

deps/v8/tools/grokdump.py:1818–1840  ·  view source on GitHub ↗
(self, tagged_address)

Source from the content-addressed store, hash-verified

1816 return self.FindObject(tagged_address)
1817
1818 def FindObject(self, tagged_address):
1819 if tagged_address in self.objects:
1820 return self.objects[tagged_address]
1821 if not self.IsTaggedObjectAddress(tagged_address): return None
1822 address = tagged_address - 1
1823 if not self.reader.IsValidAddress(address): return None
1824 map_tagged_address = self.reader.ReadTagged(address)
1825 if tagged_address == map_tagged_address:
1826 # Meta map?
1827 meta_map = Map(self, None, address)
1828 instance_type_name = INSTANCE_TYPES.get(meta_map.instance_type)
1829 if instance_type_name != "MAP_TYPE": return None
1830 meta_map.map = meta_map
1831 object = meta_map
1832 else:
1833 map = self.FindMap(map_tagged_address)
1834 if map is None: return None
1835 instance_type_name = INSTANCE_TYPES.get(map.instance_type)
1836 if instance_type_name is None: return None
1837 cls = V8Heap.CLASS_MAP.get(instance_type_name, HeapObject)
1838 object = cls(self, map, address)
1839 self.objects[tagged_address] = object
1840 return object
1841
1842 def FindMap(self, tagged_address):
1843 address = self.FindMapAddress(tagged_address)

Callers 6

FindObjectOrSmiMethod · 0.95
dump_regionFunction · 0.45
AnnotateAddressesFunction · 0.45
__init__Method · 0.45
SenseObjectMethod · 0.45
InterpretMemoryMethod · 0.45

Calls 6

IsTaggedObjectAddressMethod · 0.95
FindMapMethod · 0.95
IsValidAddressMethod · 0.80
ReadTaggedMethod · 0.80
MapClass · 0.70
getMethod · 0.65

Tested by

no test coverage detected