Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
Nicholas * good * 08:00
nine It is a good * to * 08:20
Nicholas aargh, flashbacks. [* TO *] 08:39
timo [* TOTO *] Africa 09:35
MasterDuke i don't recognize that syntax, what's it from? 14:10
Nicholas I met [* TO *] in kibana, but I think that ultimately it's from Lucene 14:23
Voldenet (makes sense, since kibana is using lucene) 14:25
MasterDuke huh, i've used lucene a bunch, but remember that 14:28
MasterDuke ugh, problems in something like that itoa change were pretty easy to debug. e.g., "123" becomes 12...off-by-one. but this remove-spesh-candidate-if-too-many-deopts rebase... 14:50
(rr) p spesh_cand->body.jitcode 15:07
$1 = (MVMJitCode *) 0xffffffff00000007
nine That...doesn't look right 15:08
who wrote that value?
MasterDuke so that's obviously not good. but then i do `watch -l spesh_cand->body.jitcode`, and `reverse-continue`
Old value = (MVMJitCode *) 0xffffffff00000007
New value = (MVMJitCode *) 0x7
0x00007f91ff584060 in MVM_sc_set_collectable_sc (tc=0x559630c41e60, col=0x559630eb6d90, sc=0x7f91fe969d98) at src/6model/sc.h:125
125                 col->sc_forward_u.sc.idx    = MVM_DIRECT_SC_IDX_SENTINEL;
nine Looks like a GC issue then? 15:09
MasterDuke yeah. which is annoying, because i thought i'd found all those with the original version of the branch 15:10
MasterDuke and it's been a while since i've debugged those. missing MVMROOT perhaps? 15:14
nine That or a missing MVM_ASSIGN_REF
You may want to go back to the place where that spesh cand was created or assigned to a frame 15:15
MasterDuke hm, could MVM_callstack_unwind_frame cause problems? 15:30
hm, i thought adding spesh_cand to the MVMROOT here github.com/MoarVM/MoarVM/blame/mas...opt.c#L413 might help, but that by itself didn't. afk for a bit, but maybe something to investigate further when i get back 15:34
nine Well it's definitely missing there 15:42
Or access to spesh_cand replaced with frame->spesh_cand 15:44
MasterDuke nine: hm, but then i'm confused by github.com/MoarVM/MoarVM/commit/74...aca30b95b5 21:16
nine Oooh...well yes, then MVMROOT is indeed the only option. And that local variable should have gotten a comment 21:47
MasterDuke i added spesh_cand to the MVMROOT (now MVMROOT2 of course), but still get the exact same error. i looked through the rest of deopt.c, but didn't notice any others obviously missing 21:59