summaryrefslogtreecommitdiff
path: root/tools/gdb_ocamlrun.py
diff options
context:
space:
mode:
authorStephen Dolan <stephen.dolan@cl.cam.ac.uk>2018-07-19 13:32:30 +0100
committerStephen Dolan <stephen.dolan@cl.cam.ac.uk>2018-08-01 11:22:14 +0100
commit0ba44c1349f235f194722d72690f2ebd7cd63a14 (patch)
treea9c59002612c202951e30d7830adfd0fdaa61b3e /tools/gdb_ocamlrun.py
parent496cf9f43d69f25bdc6f7d2373d7a421ca283e87 (diff)
downloadocaml-0ba44c1349f235f194722d72690f2ebd7cd63a14.tar.gz
Cont_tag refactor.
Add continuations as a primitive in the runtime, instead of using bvars. This simplifies many GC invariants, removing Stack_tag, dirty_domain and fiber_ref. Bytecode-only for the moment.
Diffstat (limited to 'tools/gdb_ocamlrun.py')
-rw-r--r--tools/gdb_ocamlrun.py22
1 files changed, 12 insertions, 10 deletions
diff --git a/tools/gdb_ocamlrun.py b/tools/gdb_ocamlrun.py
index e5b100beef..0934803cc1 100644
--- a/tools/gdb_ocamlrun.py
+++ b/tools/gdb_ocamlrun.py
@@ -61,16 +61,18 @@ class BlockPrinter:
self.tagname = TAGS.get(self.tag, 'Block')
def children(self):
- if self.tag < No_scan_tag:
- fields = self.p.cast(gdb.lookup_type('value').pointer())
- for i in range(self.length):
- yield '[%d]' % i, (fields + i).dereference()
- elif self.tagname == 'Double_array_tag':
- words_per_double = \
- gdb.lookup_type('double').sizeof / gdb.lookup_type('value').sizeof
- fields = self.p.cast(gdb.lookup_type('double').pointer())
- for i in range(int(self.length / words_per_double)):
- yield '[%d]' % i, (fields + i).dereference()
+# if self.tag < No_scan_tag:
+# fields = self.p.cast(gdb.lookup_type('value').pointer())
+# for i in range(self.length):
+# yield '[%d]' % i, (fields + i).dereference()
+# elif self.tagname == 'Double_array_tag':
+# words_per_double = \
+# gdb.lookup_type('double').sizeof / gdb.lookup_type('value').sizeof
+# fields = self.p.cast(gdb.lookup_type('double').pointer())
+# for i in range(int(self.length / words_per_double)):
+# yield '[%d]' % i, (fields + i).dereference()
+#
+ return []
def to_string(self):
if self.tag == 1000: