github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
nwc10 good *, #moarvm 06:29
nine Turns out, MoarVM kinda assumes in some places that we're only serializing once in a program run. E.g. when serializing closures we may encounter outer contexts that are not claimed by any SC and claim them for the current one. But if the same outer context is reference by another compilation, it's already claimed and we fail with "reference to context outside of SC for" 12:28
The context in question is Hash::^parameterize's outer, i.e. the Hash class' block, triggered by precompiling two modules that are using parameterized Hashes in the same process. 12:29
With the reference to the method coming from the method cache. 12:30
nwc10 does anything use HashAttrStore any more? 13:20
jnthn No, I don't believe so 13:26
nine: Parameterize is interesting also because 6pe merges them on deserialize...at least, if that's involved here 13:27
jnthn Hm, curious, I'm seeing a load of `MVMArray: atpos expected int register` on my new-disp branch... 13:59
jnthn bah, my own silly fault, it seems 14:07
nwc10 insufficient coffee? 14:08
jnthn I had quite a bit of that today... 14:09
Already onto tea
Geth_ MoarVM/new-disp: b58a201743 | (Jonathan Worthington)++ | 32 files
Remove spesh plugin mechanism

All usages of it in the Rakudo new-disp branch have now been replaced with usages of the new dispatcher mechanism.
15:25
MoarVM/new-disp: b079a52e8b | (Jonathan Worthington)++ | 7 files
Rename repurposed plugin guard spesh stats

These were used for both spesh plugins and dispatch results for a while, and now are just about dispatch results, so rename them as such.
15:40
jnthn Well, that's the first victim of new-disp... :) 15:53
jnthn
.oO( My brain was the zeroth... )
15:54
timotimo oof 15:55
"of all the things i've lost
i've missed my brain the most"
[Coke] ... remove enough of your brain, and that'll even rhyme. 15:57
timotimo your line also almost rhymes 15:59
jnthn
.oO( The bridge I've crossed the most... )
16:00
Turns out the update_ops script manages to segfault on the new-disp branch wish spesh enabled. Guess I'll go debug that... 16:02
0x00007ffff74ae180 in mark (tc=0x603d70, from_record=0x49b9928, worklist=0x49fc720, snapshot=0x0) at src/core/callstack.c:479
479 add_collectable(tc, worklist, snapshot, f_record->arg_info.source[f_record->arg_info.map[flagi]].o,
hmm
Geth_ MoarVM/new-disp: fea9b14ddc | (Jonathan Worthington)++ | src/core/callstack.c
Use correct callsite field for loop

arg_count is going away as part of the calling convention changes, and so is not even set by the dispatch path.
16:25
jnthn Was a silly one :)
timotimo oops i think that may have been my mistake :D 16:29
saved you five minutes by implementing it for you, then cost you half an hour to fix it :)
jnthn ah, I found it quicker than that, was just distracted looking at something else along the way :) 16:32
timotimo phew
nwc10 jnthn: ASAN is excited by t/04-nativecall/21-callback-other-thread.t on new-disp 19:08
timotimo i think splitting our flags into "stuff useful for building moarvm on this system" and "stuff useful for building anything on this system" so that modules like LibraryMake and Distributin-Builder-MakeFromJSON can re-use the useful stuff and skip tommath, uv, etc 22:38