-
-
Save MasterDuke17/1e77c5c77c47802b28143e979c317e69 to your computer and use it in GitHub Desktop.
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
[dan@alexandria perl6]$ gdb --args ./install/bin/raku --profile -e 'my $r := "a" .. "za"; my @a = $r[^$r.elems]; say now - INIT now' | |
GNU gdb (GDB) 10.1 | |
Copyright (C) 2020 Free Software Foundation, Inc. | |
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> | |
This is free software: you are free to change and redistribute it. | |
There is NO WARRANTY, to the extent permitted by law. | |
Type "show copying" and "show warranty" for details. | |
This GDB was configured as "x86_64-pc-linux-gnu". | |
Type "show configuration" for configuration details. | |
For bug reporting instructions, please see: | |
<https://www.gnu.org/software/gdb/bugs/>. | |
Find the GDB manual and other documentation resources online at: | |
<http://www.gnu.org/software/gdb/documentation/>. | |
For help, type "help". | |
Type "apropos word" to search for commands related to "word"... | |
Reading symbols from ./install/bin/raku... | |
(gdb) r | |
Starting program: /home/dan/Source/perl6/install/bin/raku --profile -e my\ \$r\ :=\ \"a\"\ ..\ \"za\"\;\ my\ @a\ =\ \$r\[\^\$r.elems\]\;\ say\ now\ -\ INIT\ now | |
[Thread debugging using libthread_db enabled] | |
Using host libthread_db library "/usr/lib/libthread_db.so.1". | |
[New Thread 0x7ffff6de3640 (LWP 3303315)] | |
4.8307183 | |
Writing profiler output to profile-1613645513.2690067.html | |
Thread 1 "raku" received signal SIGSEGV, Segmentation fault. | |
MVM_spesh_log_decont (tc=0x55555555a0b0, prev_op=0x7ffff64827d8 "\017", value=0x0) at src/spesh/log.c:195 | |
195 entry->kind = MVM_SPESH_LOG_TYPE; | |
(gdb) bt | |
#0 MVM_spesh_log_decont (tc=0x55555555a0b0, prev_op=0x7ffff64827d8 "\017", value=0x0) at src/spesh/log.c:195 | |
#1 0x00007ffff78a10bb in MVM_interp_run (tc=0x55555555a0b0, initial_invoke=0x7ffff51cb010, initial_invoke@entry=0x7ffff79a0f00 <toplevel_initial_invoke>, invoke_data=0x7ffff51cb010, | |
invoke_data@entry=0x7ffff79a0f00 <toplevel_initial_invoke>, outer_runloop=0xba6, outer_runloop@entry=0x0) at src/core/interp.c:3078 | |
#2 0x00007ffff79a2064 in MVM_vm_run_file (instance=instance@entry=0x555555559590, filename=filename@entry=0x555555559520 "/home/dan/Source/perl6/install/share/perl6/runtime/perl6.moarvm") at src/moar.c:504 | |
#3 0x00005555555557c4 in main (argc=<optimized out>, argv=0x7fffffffe348) at src/vm/moar/runner/main.c:472 | |
(gdb) p entry | |
$1 = (MVMSpeshLogEntry *) 0x55555e647fa0 | |
(gdb) p *entry | |
$2 = {kind = 0, id = 0, {entry = {sf = 0x0, cs = 0x0}, param = {type = 0x0, flags = 0, arg_idx = 0}, type = {type = 0x0, flags = 0, bytecode_offset = 0}, value = {value = 0x0, bytecode_offset = 0}, invoke = {sf = 0x0, caller_is_outer = 0, | |
was_multi = 0, bytecode_offset = 0}, osr = {bytecode_offset = 0}, plugin = {bytecode_offset = 0, guard_index = 0}, deopt = {sf = 0x0, spesh_cand = 0x0}}} | |
(gdb) f 1 | |
#1 0x00007ffff78a10bb in MVM_interp_run (tc=0x55555555a0b0, initial_invoke=0x7ffff51cb010, initial_invoke@entry=0x7ffff79a0f00 <toplevel_initial_invoke>, invoke_data=0x7ffff51cb010, | |
invoke_data@entry=0x7ffff79a0f00 <toplevel_initial_invoke>, outer_runloop=0xba6, outer_runloop@entry=0x0) at src/core/interp.c:3078 | |
3078 MVM_spesh_log_decont(tc, prev_op, r->o); | |
(gdb) p r | |
$3 = (MVMRegister *) 0x55555e5a0d20 | |
(gdb) p *r | |
$4 = {o = 0x0, s = 0x0, i8 = 0 '\000', u8 = 0 '\000', i16 = 0, u16 = 0, i32 = 0, u32 = 0, i64 = 0, u64 = 0, n32 = 0, n64 = 0} | |
(gdb) f 0 | |
#0 MVM_spesh_log_decont (tc=0x55555555a0b0, prev_op=0x7ffff64827d8 "\017", value=0x0) at src/spesh/log.c:195 | |
195 entry->kind = MVM_SPESH_LOG_TYPE; | |
(gdb) call MVM_dump_backtrace(tc) | |
at gen/moar/stage2/NQPHLL.nqp:253 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:get_remapped_type_id) | |
from gen/moar/stage2/NQPHLL.nqp:286 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:303 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:post_process_call_graph_node) | |
from gen/moar/stage2/NQPHLL.nqp:687 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:dump_instrumented_profile_data) | |
from gen/moar/stage2/NQPHLL.nqp:187 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:dump_profile_data) | |
from gen/moar/stage2/NQPHLL.nqp:166 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:run_profiled) | |
from gen/moar/stage2/NQPHLL.nqp:1938 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:eval) | |
from gen/moar/stage2/NQPHLL.nqp:2056 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:) | |
from gen/moar/stage2/NQPHLL.nqp:2055 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:command_eval) | |
from gen/moar/Compiler.nqp:109 (/home/dan/Source/perl6/install/share/perl6/lib/Perl6/Compiler.moarvm:command_eval) | |
from gen/moar/stage2/NQPHLL.nqp:2036 (/home/dan/Source/perl6/install/share/nqp/lib/NQPHLL.moarvm:command_line) | |
from gen/moar/rakudo.nqp:127 (/home/dan/Source/perl6/install/share/perl6/runtime/perl6.moarvm:MAIN) | |
from gen/moar/rakudo.nqp:1 (/home/dan/Source/perl6/install/share/perl6/runtime/perl6.moarvm:<mainline>) | |
from <unknown>:1 (/home/dan/Source/perl6/install/share/perl6/runtime/perl6.moarvm:<main>) | |
from <unknown>:1 (/home/dan/Source/perl6/install/share/perl6/runtime/perl6.moarvm:<entry>) | |
(gdb) call MVM_dump_bytecode(tc) | |
00000 getcode loc_17_obj, Frame_25 | |
00001 takeclosure loc_17_obj, loc_17_obj | |
00002 getcode loc_12_obj, Frame_24 | |
00003 takeclosure loc_12_obj, loc_12_obj | |
00004 checkarity 1, 1 | |
00005 param_rp_o loc_0_obj, 0 | |
00006 paramnamesused | |
00007 const_s loc_2_str, '' | |
00008 set loc_1_str, loc_2_str | |
annotation: gen/moar/stage2/NQPHLL.nqp:233 | |
00009 getlex loc_3_obj, lex_Frame_22_lex6_obj | |
00010 decont loc_4_obj, loc_0_obj | |
00011 smrt_strify loc_2_str, loc_4_obj | |
00012 existskey loc_5_int, loc_3_obj, loc_2_str | |
00013 unless_i loc_5_int, label_3(00027) | |
annotation: gen/moar/stage2/NQPHLL.nqp:236 | |
00014 getlex loc_3_obj, lex_Frame_22_lex6_obj | |
00015 decont loc_4_obj, loc_0_obj | |
00016 smrt_strify loc_2_str, loc_4_obj | |
00017 atkey_o loc_3_obj, loc_3_obj, loc_2_str | |
00018 ifnonnull loc_3_obj, label_1(00022) | |
00019 wval loc_6_obj, 1, 44 | |
00020 set loc_4_obj, loc_6_obj | |
00021 goto label_2(00023) | |
label_1: | |
00022 set loc_4_obj, loc_3_obj | |
label_2: | |
00023 decont loc_4_obj, loc_4_obj | |
00024 smrt_strify loc_2_str, loc_4_obj | |
00025 set loc_1_str, loc_2_str | |
00026 goto label_4(00039) | |
annotation: gen/moar/stage2/NQPHLL.nqp:238 | |
label_3: | |
00027 getlex loc_7_int, lex_Frame_22_lex5_int | |
00028 const_i64_16 loc_8_int, 1 | |
00029 add_i loc_8_int, loc_7_int, loc_8_int | |
00030 bindlex lex_Frame_22_lex5_int, loc_8_int | |
00031 coerce_is loc_2_str, loc_8_int | |
00032 set loc_1_str, loc_2_str | |
00033 getlex loc_4_obj, lex_Frame_22_lex6_obj | |
00034 decont loc_6_obj, loc_0_obj | |
00035 smrt_strify loc_2_str, loc_6_obj | |
00036 hllboxtype_s loc_6_obj | |
00037 box_s loc_6_obj, loc_1_str, loc_6_obj | |
00038 bindkey_o loc_4_obj, loc_2_str, loc_6_obj | |
label_4: | |
00039 getlex loc_4_obj, lex_Frame_22_lex7_obj | |
00040 existskey loc_5_int, loc_4_obj, loc_1_str | |
00041 if_i loc_5_int, label_37(00203) | |
00042 wval loc_4_obj, 1, 44 | |
00043 set loc_9_obj, loc_4_obj | |
00044 wval loc_4_obj, 1, 44 | |
00045 set loc_10_obj, loc_4_obj | |
annotation: gen/moar/stage2/NQPHLL.nqp:243 | |
00046 set loc_11_obj, loc_12_obj | |
annotation: gen/moar/stage2/NQPHLL.nqp:246 | |
00047 getlex loc_3_obj, lex_Frame_22_lex8_obj | |
00048 decont loc_14_obj, loc_0_obj | |
00049 smrt_strify loc_2_str, loc_14_obj | |
00050 atkey_o loc_3_obj, loc_3_obj, loc_2_str | |
00051 ifnonnull loc_3_obj, label_5(00055) | |
00052 wval loc_15_obj, 1, 44 | |
00053 set loc_14_obj, loc_15_obj | |
00054 goto label_6(00056) | |
label_5: | |
00055 set loc_14_obj, loc_3_obj | |
label_6: | |
00056 const_i64_16 loc_8_int, 1 | |
00057 atpos_o loc_14_obj, loc_14_obj, loc_8_int | |
00058 ifnonnull loc_14_obj, label_7(00062) | |
00059 wval loc_3_obj, 1, 44 | |
00060 set loc_15_obj, loc_3_obj | |
00061 goto label_8(00063) | |
label_7: | |
00062 set loc_15_obj, loc_14_obj | |
label_8: | |
00063 const_s loc_2_str, 'type' | |
00064 atkey_o loc_15_obj, loc_15_obj, loc_2_str | |
00065 ifnonnull loc_15_obj, label_9(00069) | |
00066 wval loc_14_obj, 1, 44 | |
00067 set loc_3_obj, loc_14_obj | |
00068 goto label_10(00070) | |
label_9: | |
00069 set loc_3_obj, loc_15_obj | |
label_10: | |
00070 set loc_13_obj, loc_3_obj | |
00071 decont loc_3_obj, loc_13_obj | |
00072 gethow loc_3_obj, loc_3_obj | |
00073 decont loc_15_obj, loc_3_obj | |
00074 findmeth loc_14_obj, loc_15_obj, 'name' | |
00075 prepargs Callsite_2 | |
00076 arg_o 0, loc_3_obj | |
00077 arg_o 1, loc_13_obj | |
00078 invoke_o loc_14_obj, loc_14_obj | |
00079 -> set loc_9_obj, loc_14_obj | |
00080 set loc_4_obj, loc_9_obj | |
00081 goto label_11(00083) | |
00082 takehandlerresult loc_4_obj | |
label_11: | |
00083 decont loc_14_obj, loc_9_obj | |
00084 if_o loc_14_obj, label_12(00089) | |
annotation: gen/moar/stage2/NQPHLL.nqp:250 | |
00085 const_s loc_2_str, '<unknown type>' | |
00086 hllboxtype_s loc_14_obj | |
00087 box_s loc_14_obj, loc_2_str, loc_14_obj | |
00088 set loc_9_obj, loc_14_obj | |
label_12: | |
00089 set loc_16_obj, loc_17_obj | |
annotation: gen/moar/stage2/NQPHLL.nqp:253 | |
00090 getlex loc_3_obj, lex_Frame_22_lex8_obj | |
00091 decont loc_15_obj, loc_0_obj | |
00092 smrt_strify loc_2_str, loc_15_obj | |
00093 atkey_o loc_3_obj, loc_3_obj, loc_2_str | |
00094 ifnonnull loc_3_obj, label_13(00098) | |
00095 wval loc_20_obj, 1, 44 | |
00096 set loc_15_obj, loc_20_obj | |
00097 goto label_14(00099) | |
label_13: | |
00098 set loc_15_obj, loc_3_obj | |
label_14: | |
00099 const_i64_16 loc_8_int, 1 | |
00100 atpos_o loc_15_obj, loc_15_obj, loc_8_int | |
00101 ifnonnull loc_15_obj, label_15(00105) | |
00102 wval loc_3_obj, 1, 44 | |
00103 set loc_20_obj, loc_3_obj | |
00104 goto label_16(00106) | |
label_15: | |
00105 set loc_20_obj, loc_15_obj | |
label_16: | |
00106 const_s loc_2_str, 'type' | |
00107 atkey_o loc_20_obj, loc_20_obj, loc_2_str | |
00108 ifnonnull loc_20_obj, label_17(00112) | |
00109 wval loc_15_obj, 1, 44 | |
00110 set loc_3_obj, loc_15_obj | |
00111 goto label_18(00113) | |
label_17: | |
00112 set loc_3_obj, loc_20_obj | |
label_18: | |
00113 set loc_18_obj, loc_3_obj | |
00114 getobjsc loc_3_obj, loc_18_obj | |
00115 set loc_19_obj, loc_3_obj | |
00116 set loc_3_obj, loc_19_obj | |
00117 decont loc_15_obj, loc_19_obj | |
00118 unless_o loc_15_obj, label_19(00124) | |
annotation: gen/moar/stage2/NQPHLL.nqp:256 | |
00119 scgetdesc loc_2_str, loc_19_obj | |
00120 hllboxtype_s loc_3_obj | |
00121 box_s loc_3_obj, loc_2_str, loc_3_obj | |
00122 set loc_10_obj, loc_3_obj | |
00123 set loc_3_obj, loc_10_obj | |
label_19: | |
00124 set loc_14_obj, loc_3_obj | |
00125 goto label_20(00127) | |
00126 takehandlerresult loc_14_obj | |
label_20: | |
00127 decont loc_3_obj, loc_10_obj | |
00128 if_o loc_3_obj, label_21(00133) | |
annotation: gen/moar/stage2/NQPHLL.nqp:260 | |
00129 const_s loc_2_str, '' | |
00130 hllboxtype_s loc_3_obj | |
00131 box_s loc_3_obj, loc_2_str, loc_3_obj | |
00132 set loc_10_obj, loc_3_obj | |
label_21: | |
00133 getlex loc_3_obj, lex_Frame_22_lex8_obj | |
00134 decont loc_15_obj, loc_0_obj | |
00135 smrt_strify loc_2_str, loc_15_obj | |
00136 atkey_o loc_3_obj, loc_3_obj, loc_2_str | |
00137 ifnonnull loc_3_obj, label_22(00141) | |
00138 wval loc_20_obj, 1, 44 | |
00139 set loc_15_obj, loc_20_obj | |
00140 goto label_23(00142) | |
label_22: | |
00141 set loc_15_obj, loc_3_obj | |
label_23: | |
00142 const_i64_16 loc_8_int, 1 | |
00143 atpos_o loc_15_obj, loc_15_obj, loc_8_int | |
00144 ifnonnull loc_15_obj, label_24(00148) | |
00145 wval loc_3_obj, 1, 44 | |
00146 set loc_20_obj, loc_3_obj | |
00147 goto label_25(00149) | |
label_24: | |
00148 set loc_20_obj, loc_15_obj | |
label_25: | |
00149 const_s loc_2_str, 'typename' | |
00150 bindkey_o loc_20_obj, loc_2_str, loc_9_obj | |
00151 getlex loc_20_obj, lex_Frame_22_lex8_obj | |
00152 decont loc_3_obj, loc_0_obj | |
00153 smrt_strify loc_2_str, loc_3_obj | |
00154 atkey_o loc_20_obj, loc_20_obj, loc_2_str | |
00155 ifnonnull loc_20_obj, label_26(00159) | |
00156 wval loc_15_obj, 1, 44 | |
00157 set loc_3_obj, loc_15_obj | |
00158 goto label_27(00160) | |
label_26: | |
00159 set loc_3_obj, loc_20_obj | |
label_27: | |
00160 const_i64_16 loc_8_int, 1 | |
00161 atpos_o loc_3_obj, loc_3_obj, loc_8_int | |
00162 ifnonnull loc_3_obj, label_28(00166) | |
00163 wval loc_20_obj, 1, 44 | |
00164 set loc_15_obj, loc_20_obj | |
00165 goto label_29(00167) | |
label_28: | |
00166 set loc_15_obj, loc_3_obj | |
label_29: | |
00167 const_s loc_2_str, 'scdesc' | |
00168 bindkey_o loc_15_obj, loc_2_str, loc_10_obj | |
00169 getlex loc_15_obj, lex_Frame_22_lex7_obj | |
00170 bindkey_o loc_15_obj, loc_1_str, loc_9_obj | |
00171 getlex loc_15_obj, lex_Frame_22_lex8_obj | |
00172 existskey loc_8_int, loc_15_obj, loc_1_str | |
00173 if_i loc_8_int, label_30(00178) | |
annotation: gen/moar/stage2/NQPHLL.nqp:266 | |
00174 getlex loc_15_obj, lex_Frame_22_lex8_obj | |
00175 hlllist loc_20_obj | |
00176 create loc_20_obj, loc_20_obj | |
00177 bindkey_o loc_15_obj, loc_1_str, loc_20_obj | |
label_30: | |
00178 getlex loc_15_obj, lex_Frame_22_lex8_obj | |
00179 atkey_o loc_15_obj, loc_15_obj, loc_1_str | |
00180 ifnonnull loc_15_obj, label_31(00184) | |
00181 wval loc_21_obj, 1, 44 | |
00182 set loc_3_obj, loc_21_obj | |
00183 goto label_32(00185) | |
label_31: | |
00184 set loc_3_obj, loc_15_obj | |
label_32: | |
00185 const_i64_16 loc_8_int, 1 | |
00186 getlex loc_21_obj, lex_Frame_22_lex8_obj | |
00187 decont loc_15_obj, loc_0_obj | |
00188 smrt_strify loc_2_str, loc_15_obj | |
00189 atkey_o loc_21_obj, loc_21_obj, loc_2_str | |
00190 ifnonnull loc_21_obj, label_33(00194) | |
00191 wval loc_22_obj, 1, 44 | |
00192 set loc_15_obj, loc_22_obj | |
00193 goto label_34(00195) | |
label_33: | |
00194 set loc_15_obj, loc_21_obj | |
label_34: | |
00195 const_i64_16 loc_7_int, 1 | |
00196 atpos_o loc_15_obj, loc_15_obj, loc_7_int | |
00197 ifnonnull loc_15_obj, label_35(00201) | |
00198 wval loc_21_obj, 1, 44 | |
00199 set loc_22_obj, loc_21_obj | |
00200 goto label_36(00202) | |
label_35: | |
00201 set loc_22_obj, loc_15_obj | |
label_36: | |
00202 bindpos_o loc_3_obj, loc_8_int, loc_22_obj | |
label_37: | |
00203 return_s loc_1_str | |
(gdb) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment