Revision f230a1cf deps/v8/tools/grokdump.py
deps/v8/tools/grokdump.py | ||
---|---|---|
1029 | 1029 |
|
1030 | 1030 |
class String(HeapObject): |
1031 | 1031 |
def LengthOffset(self): |
1032 |
return self.heap.PointerSize() |
|
1032 |
# First word after the map is the hash, the second is the length. |
|
1033 |
return self.heap.PointerSize() * 2 |
|
1033 | 1034 |
|
1034 | 1035 |
def __init__(self, heap, map, address): |
1035 | 1036 |
HeapObject.__init__(self, heap, map, address) |
... | ... | |
1215 | 1216 |
def Deleted(self, value): |
1216 | 1217 |
return self.Decode(6, 1, value) == 1 |
1217 | 1218 |
|
1218 |
def Storage(self, value):
|
|
1219 |
return self.Decode(7, 11, value)
|
|
1219 |
def FieldIndex(self, value):
|
|
1220 |
return self.Decode(20, 11, value)
|
|
1220 | 1221 |
|
1221 | 1222 |
def Pointer(self, value): |
1222 |
return self.Decode(18, 11, value)
|
|
1223 |
return self.Decode(6, 11, value)
|
|
1223 | 1224 |
|
1224 | 1225 |
def Details(self, di, value): |
1225 | 1226 |
return ( |
1226 | 1227 |
di, |
1227 | 1228 |
self.Type(value), |
1228 | 1229 |
self.Attributes(value), |
1229 |
self.Storage(value),
|
|
1230 |
self.FieldIndex(value),
|
|
1230 | 1231 |
self.Pointer(value) |
1231 | 1232 |
) |
1232 | 1233 |
|
... | ... | |
1242 | 1243 |
i = 2 + di * 3 |
1243 | 1244 |
p.Print("0x%x" % (array.address + array.MemberOffset(i))) |
1244 | 1245 |
p.Print("[%i] name: %s" % (di, array.Get(i + 0))) |
1245 |
p.Print("[%i] details: %s %s enum %i pointer %i" % \
|
|
1246 |
p.Print("[%i] details: %s %s field-index %i pointer %i" % \
|
|
1246 | 1247 |
self.Details(di, array.Get(i + 1))) |
1247 | 1248 |
p.Print("[%i] value: %s" % (di, array.Get(i + 2))) |
1248 | 1249 |
|
Also available in: Unified diff