Skip to content

Instantly share code, notes, and snippets.

@dogbert17
Last active April 26, 2019 22:03
Show Gist options
  • Save dogbert17/035adc66bcaab452a3e8b312a8e71783 to your computer and use it in GitHub Desktop.
Save dogbert17/035adc66bcaab452a3e8b312a8e71783 to your computer and use it in GitHub Desktop.
Trying out a smaller version of the example posted in https://github.com/MoarVM/MoarVM/issues/1071
dogbert@dogbert-VirtualBox ~/repos/rakudo $ ./perl6-valgrind-m --profile -e 'for ^35 { my $cmd = run « cat CORE.setting.moarvm », :out; $cmd.out.close; }'
================================================================================================
This is Rakudo Perl 6 running in valgrind, a tool for debugging and profiling programs.
Running a program in valgrind usually takes *a lot* more time than running it directly,
so please be patient.
Valgrind options can be added with MVM_VALGRIND_OPTS environment variable.
This Rakudo version is 2019.03.1.245.g.07.b.4.f.74 built on MoarVM version 2019.03.97.g.8.fef.199,
running on linuxmint (18.3.Sylvia) / linux (42.16.04.1.Ubuntu.SMP.Tue.Oct.10.16.32.20.UTC.2017)
------------------------------------------------------------------------------------------------
==1640== Memcheck, a memory error detector
==1640== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==1640== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==1640== Command: /home/dogbert/repos/rakudo/nqp/MoarVM/../../install/bin/moar --execname=/home/dogbert/repos/rakudo/perl6-valgrind-m --libpath=/home/dogbert/repos/rakudo --libpath=/home/dogbert/repos/rakudo/blib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib /home/dogbert/repos/rakudo/perl6.moarvm --nqp-lib=/home/dogbert/repos/rakudo/blib --profile -e for\ ^35\ {\ my\ $cmd\ =\ run\ «\ cat\ CORE.setting.moarvm\ »,\ :out;\ $cmd.out.close;\ }
Writing profiler output to profile-1556312215.5791974.html
==1640== Thread 1:
==1640== Invalid read of size 8
==1640== at 0x50745E8: at_pos (VMArray.c:158)
==1640== by 0x5086107: shift (MVMIter.c:57)
==1640== by 0x5025E95: MVM_interp_run (interp.c:2351)
==1640== by 0x5128923: MVM_vm_run_file (moar.c:444)
==1640== by 0x4011DE: main (main.c:302)
==1640== Address 0x12a4f810 is 0 bytes inside a block of size 2,048 free'd
==1640== at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1640== by 0x505CE1B: MVM_gc_collect_free_gen2_unmarked (collect.c:763)
==1640== by 0x505837C: finish_gc (orchestrate.c:231)
==1640== by 0x505837C: run_gc (orchestrate.c:413)
==1640== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==1640== by 0x51212F4: dump_data (instrument.c:767)
==1640== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==1640== by 0x5021A99: MVM_interp_run (interp.c:4389)
==1640== by 0x5128923: MVM_vm_run_file (moar.c:444)
==1640== by 0x4011DE: main (main.c:302)
==1640== Block was alloc'd at
==1640== at 0x4C2FD5F: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1640== by 0x5077E8F: MVM_realloc (alloc.h:20)
==1640== by 0x5077E8F: set_size_internal (VMArray.c:365)
==1640== by 0x5077E8F: push (VMArray.c:475)
==1640== by 0x5070215: MVM_repr_push_o (reprconv.c:387)
==1640== by 0x511F297: insert_if_not_exists (instrument.c:381)
==1640== by 0x511F297: add_type_to_types_array (instrument.c:420)
==1640== by 0x51200EE: dump_thread_data.isra.2 (instrument.c:634)
==1640== by 0x51211FE: MVM_profile_dump_instrumented_data (instrument.c:747)
==1640== by 0x50581AA: finish_gc (orchestrate.c:189)
==1640== by 0x50581AA: run_gc (orchestrate.c:413)
==1640== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==1640== by 0x51212F4: dump_data (instrument.c:767)
==1640== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==1640== by 0x5021A99: MVM_interp_run (interp.c:4389)
==1640== by 0x5128923: MVM_vm_run_file (moar.c:444)
==1640== by 0x4011DE: main (main.c:302)
==1640==
==1640== Invalid read of size 8
==1640== at 0x50745E8: at_pos (VMArray.c:158)
==1640== by 0x502BEC6: MVM_interp_run (interp.c:2224)
==1640== by 0x5128923: MVM_vm_run_file (moar.c:444)
==1640== by 0x4011DE: main (main.c:302)
==1640== Address 0x1a631ce0 is 0 bytes inside a block of size 64 free'd
==1640== at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1640== by 0x505CE1B: MVM_gc_collect_free_gen2_unmarked (collect.c:763)
==1640== by 0x505837C: finish_gc (orchestrate.c:231)
==1640== by 0x505837C: run_gc (orchestrate.c:413)
==1640== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==1640== by 0x51212F4: dump_data (instrument.c:767)
==1640== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==1640== by 0x5021A99: MVM_interp_run (interp.c:4389)
==1640== by 0x5128923: MVM_vm_run_file (moar.c:444)
==1640== by 0x4011DE: main (main.c:302)
==1640== Block was alloc'd at
==1640== at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1640== by 0x5078BD9: MVM_malloc (alloc.h:2)
==1640== by 0x5078BD9: set_size_internal (VMArray.c:365)
==1640== by 0x5078BD9: bind_pos (VMArray.c:388)
==1640== by 0x506FD74: MVM_repr_bind_pos_o (reprconv.c:269)
==1640== by 0x511F276: insert_if_not_exists (instrument.c:379)
==1640== by 0x511F276: add_type_to_types_array (instrument.c:420)
==1640== by 0x511F94B: dump_call_graph_node (instrument.c:530)
==1640== by 0x511F94B: dump_call_graph_node_loop (instrument.c:395)
==1640== by 0x511F6C1: dump_call_graph_node_loop (instrument.c:403)
==1640== by 0x511FDD8: dump_thread_data.isra.2 (instrument.c:582)
==1640== by 0x5121142: MVM_profile_dump_instrumented_data (instrument.c:727)
==1640== by 0x50581AA: finish_gc (orchestrate.c:189)
==1640== by 0x50581AA: run_gc (orchestrate.c:413)
==1640== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==1640== by 0x51212F4: dump_data (instrument.c:767)
==1640== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==1640== by 0x5021A99: MVM_interp_run (interp.c:4389)
==1640==
==1640==
==1640== HEAP SUMMARY:
==1640== in use at exit: 255,199,774 bytes in 215,484 blocks
==1640== total heap usage: 590,059 allocs, 374,575 frees, 1,160,282,677 bytes allocated
==1640==
==1640== LEAK SUMMARY:
==1640== definitely lost: 11,040 bytes in 56 blocks
==1640== indirectly lost: 11,632 bytes in 71 blocks
==1640== possibly lost: 238,136 bytes in 4,240 blocks
==1640== still reachable: 254,938,966 bytes in 211,117 blocks
==1640== suppressed: 0 bytes in 0 blocks
==1640== Rerun with --leak-check=full to see details of leaked memory
==1640==
==1640== For counts of detected and suppressed errors, rerun with: -v
==1640== ERROR SUMMARY: 1904 errors from 3 contexts (suppressed: 0 from 0)
After the following change
dogbert@dogbert-VirtualBox ~/repos/rakudo/nqp/MoarVM $ git diff
diff --git a/src/profiler/instrument.c b/src/profiler/instrument.c
index 12f37fa..a92db33 100644
--- a/src/profiler/instrument.c
+++ b/src/profiler/instrument.c
@@ -823,10 +823,10 @@ void MVM_profile_instrumented_mark_data(MVMThreadContext *tc, MVMGCWorklist *wor
if (node)
mark_call_graph_node(tc, node, &nodelist, worklist);
}
-
- mark_gc_entries(tc, tc->prof_data, worklist);
-
+
MVM_gc_worklist_add(tc, worklist, &(tc->prof_data->collected_data));
+
+ mark_gc_entries(tc, tc->prof_data, worklist);
MVM_free(nodelist.list);
}
dogbert@dogbert-VirtualBox ~/repos/rakudo $ ./perl6-valgrind-m --profile -e 'for ^35 { my $cmd = run « cat CORE.setting.moarvm », :out; $cmd.out.close; }'
================================================================================================
This is Rakudo Perl 6 running in valgrind, a tool for debugging and profiling programs.
Running a program in valgrind usually takes *a lot* more time than running it directly,
so please be patient.
Valgrind options can be added with MVM_VALGRIND_OPTS environment variable.
This Rakudo version is 2019.03.1.245.g.07.b.4.f.74 built on MoarVM version 2019.03.97.g.8.fef.199,
running on linuxmint (18.3.Sylvia) / linux (42.16.04.1.Ubuntu.SMP.Tue.Oct.10.16.32.20.UTC.2017)
------------------------------------------------------------------------------------------------
==5252== Memcheck, a memory error detector
==5252== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==5252== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==5252== Command: /home/dogbert/repos/rakudo/nqp/MoarVM/../../install/bin/moar --execname=/home/dogbert/repos/rakudo/perl6-valgrind-m --libpath=/home/dogbert/repos/rakudo --libpath=/home/dogbert/repos/rakudo/blib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib /home/dogbert/repos/rakudo/perl6.moarvm --nqp-lib=/home/dogbert/repos/rakudo/blib --profile -e for\ ^35\ {\ my\ $cmd\ =\ run\ «\ cat\ CORE.setting.moarvm\ »,\ :out;\ $cmd.out.close;\ }
==5252==
==5252== Thread 5:
==5252== Syscall param epoll_pwait(sigmask) points to unaddressable byte(s)
==5252== at 0x5910627: epoll_pwait (epoll_pwait.c:42)
==5252== by 0x515C65E: uv__io_poll (linux-core.c:279)
==5252== by 0x51628CF: uv_run (core.c:361)
==5252== by 0x503ADC0: thread_initial_invoke (threads.c:59)
==5252== by 0x501470D: MVM_interp_run (interp.c:135)
==5252== by 0x503AE45: start_thread (threads.c:87)
==5252== by 0x5EE36B9: start_thread (pthread_create.c:333)
==5252== Address 0x0 is not stack'd, malloc'd or (recently) free'd
==5252==
Writing profiler output to profile-1556313523.7696471.html
==5252== Thread 1:
==5252== Invalid read of size 8
==5252== at 0x50745E8: at_pos (VMArray.c:158)
==5252== by 0x5086107: shift (MVMIter.c:57)
==5252== by 0x5025E95: MVM_interp_run (interp.c:2351)
==5252== by 0x5128923: MVM_vm_run_file (moar.c:444)
==5252== by 0x4011DE: main (main.c:302)
==5252== Address 0xc9369b0 is 0 bytes inside a block of size 2,048 free'd
==5252== at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==5252== by 0x505CE1B: MVM_gc_collect_free_gen2_unmarked (collect.c:763)
==5252== by 0x505837C: finish_gc (orchestrate.c:231)
==5252== by 0x505837C: run_gc (orchestrate.c:413)
==5252== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==5252== by 0x51212F4: dump_data (instrument.c:767)
==5252== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==5252== by 0x5021A99: MVM_interp_run (interp.c:4389)
==5252== by 0x5128923: MVM_vm_run_file (moar.c:444)
==5252== by 0x4011DE: main (main.c:302)
==5252== Block was alloc'd at
==5252== at 0x4C2FD5F: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==5252== by 0x5077E8F: MVM_realloc (alloc.h:20)
==5252== by 0x5077E8F: set_size_internal (VMArray.c:365)
==5252== by 0x5077E8F: push (VMArray.c:475)
==5252== by 0x5070215: MVM_repr_push_o (reprconv.c:387)
==5252== by 0x511F297: insert_if_not_exists (instrument.c:381)
==5252== by 0x511F297: add_type_to_types_array (instrument.c:420)
==5252== by 0x51200EE: dump_thread_data.isra.2 (instrument.c:634)
==5252== by 0x51211FE: MVM_profile_dump_instrumented_data (instrument.c:747)
==5252== by 0x50581AA: finish_gc (orchestrate.c:189)
==5252== by 0x50581AA: run_gc (orchestrate.c:413)
==5252== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==5252== by 0x51212F4: dump_data (instrument.c:767)
==5252== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==5252== by 0x5021A99: MVM_interp_run (interp.c:4389)
==5252== by 0x5128923: MVM_vm_run_file (moar.c:444)
==5252== by 0x4011DE: main (main.c:302)
==5252==
==5252== Invalid read of size 8
==5252== at 0x50745E8: at_pos (VMArray.c:158)
==5252== by 0x502BEC6: MVM_interp_run (interp.c:2224)
==5252== by 0x5128923: MVM_vm_run_file (moar.c:444)
==5252== by 0x4011DE: main (main.c:302)
==5252== Address 0xaf4d0a0 is 0 bytes inside a block of size 64 free'd
==5252== at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==5252== by 0x505CE1B: MVM_gc_collect_free_gen2_unmarked (collect.c:763)
==5252== by 0x505837C: finish_gc (orchestrate.c:231)
==5252== by 0x505837C: run_gc (orchestrate.c:413)
==5252== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==5252== by 0x51212F4: dump_data (instrument.c:767)
==5252== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==5252== by 0x5021A99: MVM_interp_run (interp.c:4389)
==5252== by 0x5128923: MVM_vm_run_file (moar.c:444)
==5252== by 0x4011DE: main (main.c:302)
==5252== Block was alloc'd at
==5252== at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==5252== by 0x5078BD9: MVM_malloc (alloc.h:2)
==5252== by 0x5078BD9: set_size_internal (VMArray.c:365)
==5252== by 0x5078BD9: bind_pos (VMArray.c:388)
==5252== by 0x506FD74: MVM_repr_bind_pos_o (reprconv.c:269)
==5252== by 0x511F276: insert_if_not_exists (instrument.c:379)
==5252== by 0x511F276: add_type_to_types_array (instrument.c:420)
==5252== by 0x511F94B: dump_call_graph_node (instrument.c:530)
==5252== by 0x511F94B: dump_call_graph_node_loop (instrument.c:395)
==5252== by 0x511F6C1: dump_call_graph_node_loop (instrument.c:403)
==5252== by 0x511FDD8: dump_thread_data.isra.2 (instrument.c:582)
==5252== by 0x5121142: MVM_profile_dump_instrumented_data (instrument.c:727)
==5252== by 0x50581AA: finish_gc (orchestrate.c:189)
==5252== by 0x50581AA: run_gc (orchestrate.c:413)
==5252== by 0x5058D7D: MVM_gc_enter_from_allocator (orchestrate.c:526)
==5252== by 0x51212F4: dump_data (instrument.c:767)
==5252== by 0x51212F4: MVM_profile_instrumented_end (instrument.c:787)
==5252== by 0x5021A99: MVM_interp_run (interp.c:4389)
==5252==
==5252==
==5252== HEAP SUMMARY:
==5252== in use at exit: 221,948,803 bytes in 215,808 blocks
==5252== total heap usage: 619,056 allocs, 403,248 frees, 1,188,337,458 bytes allocated
==5252==
==5252== LEAK SUMMARY:
==5252== definitely lost: 9,768 bytes in 59 blocks
==5252== indirectly lost: 12,320 bytes in 75 blocks
==5252== possibly lost: 237,296 bytes in 4,235 blocks
==5252== still reachable: 221,689,419 bytes in 211,439 blocks
==5252== suppressed: 0 bytes in 0 blocks
==5252== Rerun with --leak-check=full to see details of leaked memory
==5252==
==5252== For counts of detected and suppressed errors, rerun with: -v
==5252== ERROR SUMMARY: 2308 errors from 3 contexts (suppressed: 0 from 0)
Now also with fixes in orchestrate.c
dogbert@dogbert-VirtualBox ~/repos/rakudo $ MVM_SPESH_DISABLE=1 ./perl6-gdb-m --profile -e 'for ^35 { my $cmd = run « cat CORE.setting.moarvm », :out; $cmd.out.close; }'
================================================================================================
This is Rakudo Perl 6 running in the GNU debugger, which often allows the user to generate useful back-
traces to debug or report issues in Rakudo, the MoarVM backend or the currently running code.
This Rakudo version is 2019.03.1.245.g.07.b.4.f.74 built on MoarVM version 2019.03.97.g.8.fef.199,
running on linuxmint (18.3.Sylvia) / linux (42.16.04.1.Ubuntu.SMP.Tue.Oct.10.16.32.20.UTC.2017)
Type `bt full` to generate a backtrace if applicable, type `q` to quit or `help` for help.
------------------------------------------------------------------------------------------------
Reading symbols from /home/dogbert/repos/rakudo/nqp/MoarVM/../../install/bin/moar...done.
Starting program: /home/dogbert/repos/rakudo/install/bin/moar --execname=/home/dogbert/repos/rakudo/perl6-gdb-m --libpath=/home/dogbert/repos/rakudo --libpath=/home/dogbert/repos/rakudo/blib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib /home/dogbert/repos/rakudo/perl6.moarvm --nqp-lib=/home/dogbert/repos/rakudo/blib --profile -e for\ \^35\ \{\ my\ \$cmd\ =\ run\ «\ cat\ CORE.setting.moarvm\ »,\ :out\;\ \$cmd.out.close\;\ \}
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff468c700 (LWP 9403)]
[New Thread 0x7ffff3e8b700 (LWP 9404)]
[New Thread 0x7ffff368a700 (LWP 9405)]
[New Thread 0x7ffff2e89700 (LWP 9407)]
Writing profiler output to profile-1556316099.518122.html
Some exceptions were thrown in END blocks:
X::AdHoc: This representation (VMArray) does not support associative access (for type BOOTArray)
in any <main> at /home/dogbert/repos/rakudo/perl6.moarvm line 1
[Thread 0x7ffff2e89700 (LWP 9407) exited]
[Thread 0x7ffff3e8b700 (LWP 9404) exited]
[Thread 0x7ffff468c700 (LWP 9403) exited]
[Thread 0x7ffff7fdb700 (LWP 9399) exited]
[Inferior 1 (process 9399) exited normally]
(gdb) b src/6model/reprs.c:129
Breakpoint 1 at 0x7ffff758b59e: file src/6model/reprs.c, line 129.
(gdb) r
Starting program: /home/dogbert/repos/rakudo/install/bin/moar --execname=/home/dogbert/repos/rakudo/perl6-gdb-m --libpath=/home/dogbert/repos/rakudo --libpath=/home/dogbert/repos/rakudo/blib --libpath=/home/dogbert/repos/rakudo/install/share/nqp/lib /home/dogbert/repos/rakudo/perl6.moarvm --nqp-lib=/home/dogbert/repos/rakudo/blib --profile -e for\ \^35\ \{\ my\ \$cmd\ =\ run\ «\ cat\ CORE.setting.moarvm\ »,\ :out\;\ \$cmd.out.close\;\ \}
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff468c700 (LWP 9447)]
[New Thread 0x7ffff3e8b700 (LWP 9448)]
[New Thread 0x7ffff368a700 (LWP 9449)]
[New Thread 0x7ffff2e89700 (LWP 9451)]
Writing profiler output to profile-1556316107.60618.html
Thread 1 "moar" hit Breakpoint 1, die_no_ass (tc=0x604a60, repr_name=0x7ffff76ec129 "VMArray", debug_name=0x6891e0 "BOOTArray") at src/6model/reprs.c:130
130 MVM_exception_throw_adhoc(tc,
(gdb) bt
#0 die_no_ass (tc=0x604a60, repr_name=0x7ffff76ec129 "VMArray", debug_name=0x6891e0 "BOOTArray") at src/6model/reprs.c:130
#1 0x00007ffff758b6c4 in MVM_REPR_DEFAULT_EXISTS_KEY (tc=0x604a60, st=0x66e160, root=0x3be4800, data=0x3be4818, key=0x4d3ede0) at src/6model/reprs.c:141
#2 0x00007ffff750f1ae in MVM_interp_run (tc=0x604a60, initial_invoke=0x7ffff7680730 <toplevel_initial_invoke>, invoke_data=0x69ff68) at src/core/interp.c:2485
#3 0x00007ffff7680895 in MVM_vm_run_file (instance=0x604010, filename=0x7fffffffe202 "/home/dogbert/repos/rakudo/perl6.moarvm") at src/moar.c:444
#4 0x00000000004016b7 in main (argc=10, argv=0x7fffffffdd78) at src/main.c:302
(gdb) p MVM_dump_backtrace(tc)
at gen/moar/stage2/NQPHLL.nqp:512 (/home/dogbert/repos/rakudo/install/share/nqp/lib/NQPHLL.moarvm:dump_instrumented_profile_data)
from gen/moar/stage2/NQPHLL.nqp:92 (/home/dogbert/repos/rakudo/install/share/nqp/lib/NQPHLL.moarvm:dump_profile_data)
from gen/moar/stage2/NQPHLL.nqp:69 (/home/dogbert/repos/rakudo/install/share/nqp/lib/NQPHLL.moarvm:)
from SETTING::src/core/Rakudo/Internals.pm6:1732 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:)
from SETTING::src/core/Rakudo/Internals.pm6:1730 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:)
from SETTING::src/core/Rakudo/Internals.pm6:1739 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:)
from SETTING::src/core/Rakudo/Internals.pm6:1726 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:)
from SETTING::src/core/Lock.pm6:28 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:protect)
from SETTING::src/core/Rakudo/Internals.pm6:1725 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:)
from SETTING::src/core/Rakudo/Internals.pm6:1724 (/home/dogbert/repos/rakudo/CORE.setting.moarvm:)
from gen/moar/main.nqp:105 (/home/dogbert/repos/rakudo/perl6.moarvm:)
from gen/moar/main.nqp:96 (/home/dogbert/repos/rakudo/perl6.moarvm:MAIN)
from gen/moar/main.nqp:61 (/home/dogbert/repos/rakudo/perl6.moarvm:<mainline>)
from <unknown>:1 (/home/dogbert/repos/rakudo/perl6.moarvm:<main>)
from <unknown>:1 (/home/dogbert/repos/rakudo/perl6.moarvm:<entry>)
$1 = void
(gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment