github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
nine How on earth is my spesh plugin state refactor breaking the UTF-8 stream decoder?! 10:39
dogbert17 is it the 'Decoder may not be used concurrently' message? 13:17
nine No, more obscure things like .lines on a precomp file not stopping at the line end and then running into a \0 13:21
There's also t/01-sanity/17-isa.t which fails this test: if $code.isa("Code") { say "ok 3" } else { say "not ok 3" } 13:24
My only guess is: spesh plugins just giving wrong results will create all sorts of inexplicable errors 13:25
Could even be that nqp's t/moar/52-pluggable-spesh.t 13:26
show those wrong results. But the test has been running for > 5 hours already :)
It does its loops for millions of iterations. Not sure this will ever finish will all the GC debug checks turned on 13:27
MasterDuke nine: my example from yesterday had a segv into the middle of sp_guardconc in interp.c, think it's related?
nine doesn't sound like spesh plugins 13:29
dogbert17 and valgrind and asan are completely silent I guess 13:30
nine of course 13:35
dogbert17 annoying 13:37
stupid question but are you running with the JIT disabled? 13:40
timotimo probably because backtraces? 13:42
dogbert17 oh, it's timotimo 13:43
MasterDuke has anybody tried ThreadSanitizer? is it of any use? 13:44
dogbert17 has not tried it 13:45
MasterDuke or any of the others? memorysanitizer, leaksanitizer 13:46
dogbert17 I believe I have tried somthing called ubsan 13:47
guess that doesn't do the things you're looking for though
nine Ouch.... git checkout . on the wrong machine is...bad 15:38
Kaiepi if i'm looping over a linked list but can't assign the pointer to the current element to the start of the linked list in the loop itself, is it better written like `for (foo; foo != NULL; foo = foo->next)` or `for (; foo != NULL; foo = foo->next)`? 16:47
nine That foo; there won't do anything 16:50
Kaiepi ik 16:52
AlexDaniel Kaiepi: I'd prefer to read the second one because then I wouldn't need to wonder why someone put foo there 17:05
MasterDuke well, i got moarvm to build with threadsanitizer, but the segv i get after doesn't seem all that helpful 18:15
gist.github.com/MasterDuke17/672fd...c5591b8c47 if anybody is curious 18:16
i get that just running `perl6 -e ''` 18:17
MasterDuke think this would be useful for moarvm lemire.me/blog/2019/06/06/nearly-d...s-systems/ ? 20:03
nine Ah, I see it now. It's an ordering issue. In add_resolution_to_guard_set the frame's special return data is already cleared, thus srd is no longer anchored and allocating the new plugin state can trigger GC 20:08