-
-
Save timo/f00e026fa5c59ddc9ee9 to your computer and use it in GitHub Desktop.
dump moarvm's gen2 roots list (or rather: their respective REPR names)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/src/gc/collect.c b/src/gc/collect.c | |
index 208ec8c..dbd31f8 100644 | |
--- a/src/gc/collect.c | |
+++ b/src/gc/collect.c | |
@@ -19,6 +19,26 @@ static void pass_work_item(MVMThreadContext *tc, WorkToPass *wtp, MVMCollectable | |
static void pass_leftover_work(MVMThreadContext *tc, WorkToPass *wtp); | |
static void add_in_tray_to_worklist(MVMThreadContext *tc, MVMGCWorklist *worklist); | |
+static void analyze_worklist_REPRs(MVMThreadContext *tc, MVMGCWorklist *worklist) { | |
+ MVMuint32 index; | |
+ | |
+ fprintf(stderr, "worklist reprs:\n\n"); | |
+ | |
+ for (index = 0; index < worklist->items; index++) { | |
+ MVMObject *object = (MVMObject *)worklist->list[index][0]; | |
+ if (object->header.flags & MVM_CF_STABLE) { | |
+ fprintf(stderr, "STable\n"); | |
+ } else { | |
+ if (STABLE(object)->REPR->name) { | |
+ fprintf(stderr, "%s\n", STABLE(object)->REPR->name); | |
+ } | |
+ } | |
+ } | |
+ fprintf(stderr, "frames: %d\n", worklist->frames); | |
+ | |
+ fprintf(stderr, "\n\n"); | |
+} | |
+ | |
/* Does a garbage collection run. Exactly what it does is configured by the | |
* couple of arguments that it takes. | |
* | |
@@ -110,6 +130,11 @@ void MVM_gc_collect(MVMThreadContext *tc, MVMuint8 what_to_do, MVMuint8 gen) { | |
* collection anyway (in fact, we must not for correctness, otherwise | |
* the gen2 rooting keeps them alive forever). */ | |
if (gen == MVMGCGenerations_Nursery) { | |
+ MVMGCWorklist *debugworklist = MVM_gc_worklist_create(tc, gen != MVMGCGenerations_Nursery); | |
+ MVM_gc_root_add_gen2s_to_worklist(tc, debugworklist); | |
+ analyze_worklist_REPRs(tc, debugworklist); | |
+ MVM_gc_worklist_destroy(tc, debugworklist); | |
+ | |
MVM_gc_root_add_gen2s_to_worklist(tc, worklist); | |
GCDEBUG_LOG(tc, MVM_GC_DEBUG_COLLECT, "Thread %d run %d : processing %d items from gen2 \n", worklist->items); | |
process_worklist(tc, worklist, &wtp, gen); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
frames: 1441 | |
frames: 1369 | |
frames: 2641 | |
frames: 2639 | |
frames: 2584 | |
frames: 2584 | |
frames: 2584 | |
frames: 2584 | |
frames: 2663 | |
frames: 2584 | |
frames: 2584 | |
frames: 2584 | |
frames: 2584 | |
frames: 2642 | |
frames: 2585 | |
frames: 2640 | |
frames: 2664 | |
frames: 2585 | |
frames: 2585 | |
frames: 2640 | |
frames: 2664 | |
frames: 2640 | |
frames: 2237 | |
frames: 1973 | |
frames: 3731 | |
frames: 4045 | |
frames: 3523 | |
frames: 3660 | |
frames: 4278 | |
frames: 4381 | |
frames: 4107 | |
frames: 4267 | |
frames: 4276 | |
frames: 4448 | |
frames: 4913 | |
frames: 4949 | |
frames: 5194 | |
frames: 5041 | |
frames: 5003 | |
frames: 5040 | |
frames: 5610 | |
frames: 5363 | |
frames: 5306 | |
frames: 5859 | |
frames: 5682 | |
frames: 6280 | |
frames: 5972 | |
frames: 6542 | |
frames: 6626 | |
frames: 6777 | |
frames: 6427 | |
frames: 6650 | |
frames: 6648 | |
frames: 6838 | |
frames: 7133 | |
frames: 7118 | |
frames: 7275 | |
frames: 7651 | |
frames: 7590 | |
frames: 7809 | |
frames: 8251 | |
frames: 8073 | |
frames: 8189 | |
frames: 8266 | |
frames: 8737 | |
frames: 8853 | |
frames: 8358 | |
frames: 8742 | |
frames: 9195 | |
frames: 9307 | |
frames: 9041 | |
frames: 9381 | |
frames: 9059 | |
frames: 9562 | |
frames: 9280 | |
frames: 9747 | |
frames: 9834 | |
frames: 9978 | |
frames: 10244 | |
frames: 10240 | |
frames: 10029 | |
frames: 10580 | |
frames: 10647 | |
frames: 10211 | |
frames: 10961 | |
frames: 11074 | |
frames: 11233 | |
frames: 11353 | |
frames: 11124 | |
frames: 11314 | |
frames: 11517 | |
frames: 11518 | |
frames: 12313 | |
frames: 11896 | |
frames: 11951 | |
frames: 12268 | |
frames: 12637 | |
frames: 12299 | |
frames: 12575 | |
frames: 12714 | |
frames: 12722 | |
frames: 13290 | |
frames: 13422 | |
frames: 13638 | |
frames: 13247 | |
frames: 13387 | |
frames: 13515 | |
frames: 13471 | |
frames: 14185 | |
frames: 14199 | |
frames: 14418 | |
frames: 14527 | |
frames: 14113 | |
frames: 14176 | |
frames: 14496 | |
frames: 14260 | |
frames: 14691 | |
frames: 14653 | |
frames: 14387 | |
frames: 14954 | |
frames: 15045 | |
frames: 14958 | |
frames: 14787 | |
frames: 15086 | |
frames: 14738 | |
frames: 15040 | |
frames: 15134 | |
frames: 15200 | |
frames: 15230 | |
frames: 15693 | |
frames: 15448 | |
frames: 15615 | |
frames: 15713 | |
frames: 15919 | |
frames: 15864 | |
frames: 16056 | |
frames: 16633 | |
frames: 16580 | |
frames: 16314 | |
frames: 16398 | |
frames: 16464 | |
frames: 16434 | |
frames: 16502 | |
frames: 17004 | |
frames: 16704 | |
frames: 17120 | |
frames: 17310 | |
frames: 16898 | |
frames: 17020 | |
frames: 17168 | |
frames: 17355 | |
frames: 17430 | |
frames: 17550 | |
frames: 17644 | |
frames: 17741 | |
frames: 17866 | |
frames: 17938 | |
frames: 18068 | |
frames: 18180 | |
frames: 18239 | |
frames: 18369 | |
frames: 18467 | |
frames: 18574 | |
frames: 18575 | |
frames: 19180 | |
frames: 18837 | |
frames: 18940 | |
frames: 18963 | |
frames: 19051 | |
frames: 19507 | |
frames: 19223 | |
frames: 19367 | |
frames: 19539 | |
frames: 19661 | |
frames: 20195 | |
frames: 19909 | |
frames: 19981 | |
frames: 20186 | |
frames: 20225 | |
frames: 20295 | |
frames: 20146 | |
frames: 20342 | |
frames: 20404 | |
frames: 20541 | |
frames: 20444 | |
frames: 20596 | |
frames: 21231 | |
frames: 20767 | |
frames: 20823 | |
frames: 20858 | |
frames: 21101 | |
frames: 21381 | |
frames: 21429 | |
frames: 21870 | |
frames: 22052 | |
frames: 22556 | |
frames: 22863 | |
frames: 23516 | |
frames: 24239 | |
frames: 24658 | |
frames: 25294 | |
frames: 25812 | |
frames: 25849 | |
frames: 26447 | |
frames: 26701 | |
frames: 27042 | |
frames: 27212 | |
frames: 27482 | |
frames: 27560 | |
frames: 27701 | |
frames: 27828 | |
frames: 28153 | |
frames: 28487 | |
frames: 28568 | |
frames: 28651 | |
frames: 28269 | |
frames: 28228 | |
frames: 28519 | |
frames: 28669 | |
frames: 28698 | |
frames: 28838 | |
frames: 28968 | |
frames: 29062 | |
frames: 29226 | |
frames: 29316 | |
frames: 29182 | |
frames: 29907 | |
frames: 29704 | |
frames: 29864 | |
frames: 30311 | |
frames: 30375 | |
frames: 30166 | |
frames: 30153 | |
frames: 30313 | |
frames: 30923 | |
frames: 30910 | |
frames: 31078 | |
frames: 31161 | |
frames: 31216 | |
frames: 31425 | |
frames: 31203 | |
frames: 31568 | |
frames: 31776 | |
frames: 31412 | |
frames: 31581 | |
frames: 31962 | |
frames: 31780 | |
frames: 32341 | |
frames: 31916 | |
frames: 32063 | |
frames: 32153 | |
frames: 32317 | |
frames: 32263 | |
frames: 32305 | |
frames: 32311 | |
frames: 32571 | |
frames: 32923 | |
frames: 32863 | |
frames: 32567 | |
frames: 32678 | |
frames: 32877 | |
frames: 32910 | |
frames: 33147 | |
frames: 33105 | |
frames: 33157 | |
frames: 33414 | |
frames: 33539 | |
frames: 33578 | |
frames: 34250 | |
frames: 33794 | |
frames: 33890 | |
frames: 34309 | |
frames: 34309 | |
frames: 34493 | |
frames: 35116 | |
frames: 34740 | |
frames: 35114 | |
frames: 35138 | |
frames: 35731 | |
frames: 35404 | |
frames: 35478 | |
frames: 35617 | |
frames: 35827 | |
frames: 36323 | |
frames: 36432 | |
frames: 36524 | |
frames: 36631 | |
frames: 36256 | |
frames: 36471 | |
frames: 36883 | |
frames: 36923 | |
frames: 36281 | |
frames: 36369 | |
frames: 36827 | |
frames: 36872 | |
frames: 36994 | |
frames: 37105 | |
frames: 37376 | |
frames: 37119 | |
frames: 37376 | |
frames: 38087 | |
frames: 37872 | |
frames: 38007 | |
frames: 38159 | |
frames: 38697 | |
frames: 38838 | |
frames: 39037 | |
frames: 39190 | |
frames: 38803 | |
frames: 38840 | |
frames: 38993 | |
frames: 39049 | |
frames: 39198 | |
frames: 39245 | |
frames: 39344 | |
frames: 39678 | |
frames: 39823 | |
frames: 40134 | |
frames: 40918 | |
frames: 40542 | |
frames: 40948 | |
frames: 41147 | |
frames: 41222 | |
frames: 41321 | |
frames: 41275 | |
frames: 41407 | |
frames: 42259 | |
frames: 41486 | |
frames: 41967 | |
frames: 42162 | |
frames: 42091 | |
frames: 42674 | |
frames: 42884 | |
frames: 43161 | |
frames: 42827 | |
frames: 42935 | |
frames: 43025 | |
frames: 43507 | |
frames: 43291 | |
frames: 43333 | |
frames: 43458 | |
frames: 43385 | |
frames: 43643 | |
frames: 44044 | |
frames: 43890 | |
frames: 43817 | |
frames: 45049 | |
frames: 45341 | |
frames: 45344 | |
frames: 45308 | |
frames: 45366 | |
frames: 45365 | |
frames: 45313 | |
frames: 45368 | |
frames: 45313 | |
frames: 45341 | |
frames: 45378 | |
frames: 45330 | |
frames: 45360 | |
frames: 45380 | |
frames: 45360 | |
frames: 45380 | |
frames: 45382 | |
frames: 45364 | |
frames: 45378 | |
frames: 45348 | |
frames: 45374 | |
frames: 45385 | |
frames: 45365 | |
frames: 45375 | |
frames: 45371 | |
frames: 45394 | |
frames: 45286 | |
frames: 45279 | |
frames: 45286 | |
frames: 45261 | |
frames: 45263 | |
frames: 45253 | |
frames: 45284 | |
frames: 45252 | |
frames: 45276 | |
frames: 45279 | |
frames: 45277 | |
frames: 45267 | |
frames: 45248 | |
frames: 45261 | |
frames: 45254 | |
frames: 45250 | |
frames: 45254 | |
frames: 45292 | |
frames: 45308 | |
frames: 45259 | |
frames: 45299 | |
frames: 45277 | |
frames: 45285 | |
frames: 45278 | |
frames: 45272 | |
frames: 45256 | |
frames: 45285 | |
frames: 45307 | |
frames: 45269 | |
frames: 45308 | |
frames: 45308 | |
frames: 45314 | |
frames: 45289 | |
frames: 45322 | |
frames: 45269 | |
frames: 45322 | |
frames: 45322 | |
frames: 45320 | |
frames: 45322 | |
frames: 45248 | |
frames: 45287 | |
frames: 45270 | |
frames: 45328 | |
frames: 45304 | |
frames: 45295 | |
frames: 45328 | |
frames: 45321 | |
frames: 45327 | |
frames: 45327 | |
frames: 45334 | |
frames: 45327 | |
frames: 45304 | |
frames: 45340 | |
frames: 45315 | |
frames: 45308 | |
frames: 45338 | |
frames: 45318 | |
frames: 45333 | |
frames: 45271 | |
frames: 45320 | |
frames: 45296 | |
frames: 45307 | |
frames: 45259 | |
frames: 45308 | |
frames: 45329 | |
frames: 45304 | |
frames: 45307 | |
frames: 45299 | |
frames: 45302 | |
frames: 45282 | |
frames: 45344 | |
frames: 45335 | |
frames: 45293 | |
frames: 45346 | |
frames: 45344 | |
frames: 45290 | |
frames: 45333 | |
frames: 45322 | |
frames: 45311 | |
frames: 45345 | |
frames: 45288 | |
frames: 45325 | |
frames: 45354 | |
frames: 45358 | |
frames: 45358 | |
frames: 45315 | |
frames: 45358 | |
frames: 50827 | |
frames: 50807 | |
frames: 50807 | |
frames: 50821 | |
frames: 50817 | |
frames: 8402 | |
frames: 8471 | |
frames: 8145 | |
frames: 11875 | |
frames: 12182 | |
frames: 12539 | |
frames: 12425 | |
frames: 13221 | |
frames: 13534 | |
frames: 8387 | |
frames: 8128 | |
frames: 12609 | |
frames: 12723 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
489400 P6opaque | |
120608 SCRef | |
88251 MVMString | |
50395 VMArray | |
33546 MVMCode | |
30656 P6str | |
18943 P6num | |
14871 P6int | |
14556 VMHash | |
3483 STable | |
2330 Uninstantiable | |
1599 Lexotic | |
1489 NFA | |
1431 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment