01:31 MasterDuke joined 02:28 Kaiepi joined
MasterDuke .tell brrt i spun up an ubuntu 14.04 vm and built my branch, but nqp and rakudo both built just fine 02:40
yoleaux MasterDuke: I'll pass your message to brrt.
MasterDuke .tell brrt i take that back. if i do `--optimize=0` i get the same failure 02:54
yoleaux MasterDuke: I'll pass your message to brrt.
02:56 ilbot3 joined
MasterDuke .tell brrt don't need the vm, i get the failure on my laptop and desktop with --optimize=0. some debug info and the jit-bisect data here gist.github.com/MasterDuke17/27feb...15f1af9b17 02:56
yoleaux MasterDuke: I'll pass your message to brrt.
samcv .ask jnthn where do I need to set gc mark? not sure where it is github.com/MoarVM/MoarVM/pull/815#...3675573R40 04:04
yoleaux samcv: I'll pass your message to jnthn.
06:18 domidumont joined 06:27 domidumont joined 06:59 quotable6 joined 07:01 domidumont joined 07:37 domidumont joined, brrt joined
brrt good * 07:38
yoleaux 02:40Z <MasterDuke> brrt: i spun up an ubuntu 14.04 vm and built my branch, but nqp and rakudo both built just fine
02:43Z <MasterDuke> brrt: i take that back. if i do `--optimize=0` i get the same failure
02:56Z <MasterDuke> brrt: don't need the vm, i get the failure on my laptop and desktop with --optimize=0. some debug info and the jit-bisect data here gist.github.com/MasterDuke17/27feb...15f1af9b17
brrt MasterDuke++
nine So it's an inverse-Heisenberg bug? It appears only when debugging?
brrt hehe, that's better right :-) 07:43
07:52 robertle joined
brrt also nice, is that it breaks quite fast 07:53
08:35 FROGGS joined 08:42 lizmat joined 08:46 brrt joined
Kaiepi how would you force moar to crash instead of allowing MVM_panic to bubble back up to rakudo? 08:58
er, MVM_throw_exception_throw_addhoc` 08:59
*MVM_throw_exception_adhoc 09:00
agh **MVM_exception_throw_adhoc 09:01
there are some errors in IO::Socket::Async that look like they could be a problem, but i don't know how to force it to coredump 09:02
09:19 FROGGS joined
brrt Kaiepi: MVM_oops 09:44
or
MVM_panic
MVM_oops is for when the stack is not corrupted, but there's still an unrecoverable error 09:45
MVM_panic is when you might expect a memory corruption and theres no hope of recovering
Kaiepi thanks 09:49
brrt np 09:50
12:02 domidumont joined 12:25 dogbert17 joined 12:43 domidumont joined 12:46 domidumont joined 13:43 greppable6 joined, brrt joined 14:05 brrt joined
brrt i think i found the bug uncovered by MasterDuke++ 14:25
well, or at least, the proximate cause; there's nothing emitted for the ZR test 14:26
Geth MoarVM: ee83e78b68 | (Bart Wiegmans)++ | src/jit/x64/tiles.dasc
[JIT] Test with default size of 8

We'd skip on emitting a test if the size of the operand was not given, which would happen whenever we'd have the result of a CALL node.
The real bug is that CALL nodes can introduce zero-sized values into the tree, which we should fix.
14:32
brrt anyway, MasterDuke++, pls try travis again on your pull request
14:53 releasable6 joined 15:09 AlexDaniel joined 15:32 Kaiepi joined 15:50 Kaiepi joined 15:56 Kaypie joined 16:03 FROGGS joined 16:33 bisectable6 joined 16:43 Kaiepi joined 17:15 Kaiepi joined 18:00 domidumont joined 18:03 domidumont joined 19:12 greppable6 joined 19:21 Kaiepi joined 19:22 Ven`` joined 19:31 Ven`` joined
Geth MoarVM: timo++ created pull request #817:
MoarVM Remote Debugging Support
22:27
timotimo oh look what's this 22:29
jnthn Oh my goodness, look at that :) 22:30
6guts.wordpress.com/2018/03/13/rem...or-moarvm/ :)
lizmat wow! :-) 22:33
yoleaux 15:32Z <Zoffix> lizmat: FYI, I listed you as stakeholder (github.com/perl6/6.d-prep/commit/ce7fab350a) for nixing Pair.freeze in 6.d (per github.com/rakudo/rakudo/commit/c229022cb0941). Implementing that is currently blocked by R#1289 tho
synopsebot R#1289 [open]: github.com/rakudo/rakudo/issues/1289 [6.d][severe] [6.d BLOCKER] Implement a Way to Know Caller's Language
jnthn Blog post about it here: 6guts.wordpress.com/2018/03/13/rem...or-moarvm/
oh, I already linked it :D
Clearly too execited :)
To type, even :)
lizmat :-) 22:43
jnthn: I was looking at the ThreadPoolScheduler code wrt to number of worker threads
I found that test-t --race typically uses 3 workers only 22:44
that's because at each interval at least 1 worker finished something, afaics
MasterDuke brrt++ looks like his commit fixed my PR 22:45
and timotimo++, jnthn++ for remote debugging 22:46
lizmat jnthn: that feels like a wrong heuristic to me, is there a reason for that? 22:47
jnthn: fwiw, blog post now also mentioned on Perl 6 FB group
courtesy of woolfy
timotimo MasterDuke: couldn't have done it without jnthn's guidance :) 22:51
timotimo does the GUI dance
lizmat whee!
jnthn timotimo: so when will the PR be merged and revisions bumped ? 22:53
MasterDuke timotimo: are you working at/for Edument now? 23:01
23:01 robertle joined
jnthn lizmat: Are you sure that's not because :$degree defaults to 4? 23:06
lizmat wouldn't that imply 4 workers then ?
jnthn lizmat: Hmm, good point 23:18
Did you try passing :degree to see what happens?
lizmat will do so tomorrow
samcv jnthn: how do I gc mark this? github.com/MoarVM/MoarVM/pull/815#...3675573R40
lizmat jnthn: and get back to you
jnthn As to the heuristic not making perfect decisions - of course, it's a heuristic. ;) We can explore better ones though :)
samcv: Well, directly or indirectly from gc_mark of the Decoder REPR 23:19
lizmat ok, I will do that... have had some interesting effects with increasing the sleep gradually to .1 second
jnthn Yeah, the 0.01 was picked for a reason :)
lizmat well, the thing is that for test-t --race 20, it only made a small difference for total wallclock, but 10% less overall CPU 23:20
jnthn samcv: github.com/MoarVM/MoarVM/blob/mast...oder.c#L26 is currently empty 23:21
samcv: But it'd want to be handled in there
samcv so i do MVM_gc_worklist_add then?
jnthn Yup
But also
Make sure you use MVM_ASSIGN_REF when storing the replacement too 23:22
To make sure we don't violate the inter-gen constraint
samcv ok thanks
timotimo lizmat: i'd like it to be in the upcoming release, which is Real Soon Now 23:41
samcv doing this makes MoarVM segfault. not sure if i'm doing it right? gist.github.com/42b9e67a199316656b...c0431dd5a4 23:47
in Decoder.c
timotimo hm, i assume gc_mark is also called for non-concrete objects
jnthn samcv: Cast to MVMDecoderbody 23:48
*MVMDecoderBody
samcv ah ok thanks 23:49
jnthn Also maybe guard against ds being null
About the remote debug PR - I can merge it tomorrow (I already gave it a good reviewing), if there aren't any comments against that from others. 23:50
timotimo Undefined symbols for architecture x86_64: 23:56
"_htobe16", referenced from:
_send_greeting in debugserver.o
ld: symbol(s) not found for architecture x86_64
what fun!