Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2015-04-28

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
01:56 ilbot3 joined #moarvm
01:56 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
03:42 vendethiel joined #moarvm
05:07 vendethiel joined #moarvm
05:36 vendethiel joined #moarvm
06:19 FROGGS joined #moarvm
06:26 colomon joined #moarvm
06:39 vendethiel joined #moarvm
07:08 Ven joined #moarvm
07:13 zakharyas joined #moarvm
07:19 brrt joined #moarvm
07:20 brrt \o
07:21 brrt i have a question with regards to tracing
07:21 brrt how to deal with invokish ops
07:21 brrt as in... they bring in some pain when we have the following
07:21 brrt (within a basic block):
07:22 brrt begin basic block -> foo -> bar -> invokish -> (enter frame) -> foo -> bar -> (leave frame) -> foo -> end of basic block
07:23 brrt or to be short, i think that invokish should be basic block boundaries for the purposes of inlining / tracing, even if they're not for the purposes of ssa calculations
07:23 ShimmerFairy left #moarvm
07:28 jnthn If we want to inline things the invokish ops would call then they'd need to be real BB boundaries.
07:31 brrt yes, i think so too
07:32 brrt (that took way more of my brain cycles this weekend than it should have :-))
08:11 donaldh joined #moarvm
08:23 colomon joined #moarvm
08:24 psch joined #moarvm
08:55 Ven joined #moarvm
10:43 rurban joined #moarvm
11:21 Ven joined #moarvm
11:23 vendethiel joined #moarvm
11:42 dalek MoarVM: d8ee582 | FROGGS++ | / (2 files):
11:42 dalek MoarVM: Revert "enforce C99 compliance"
11:42 dalek MoarVM:
11:42 dalek MoarVM: This reverts commit 56dcbaa08c928a578c98f79b24e849b52706bd1f.
11:42 dalek MoarVM: We try to be C89 compliant to not accidently break MSVC. This hopefully
11:42 dalek MoarVM: also fixes #211.
11:42 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/d8ee582560
11:58 colomon joined #moarvm
12:04 dalek joined #moarvm
12:10 nwc10 I CAN HAZ PRVLS UNKNWON BOOM! :-(
12:10 nwc10 Stage parse      : Internal error: invalid thread ID in GC work pass
12:10 nwc10 ASAN was quiet.
12:12 timotimo what's the right format specifier for a MVMuint32?
12:13 timotimo i'd just go with %d, to be honest
12:13 timotimo but it could be wrong
12:15 jnthn eeks
12:15 jnthn nwc10: Would really like to hunt that one down...
12:16 jnthn nwc10: If you've chane to investigate: in src/gc/worklist.h there is
12:16 jnthn #define MVM_GC_WORKLIST_DEBUG_ADD 0
12:16 nwc10 we got past it this time.
12:16 jnthn Flip that to a 1, breakpint MVM_panic, and see what's on the stack
12:16 nwc10 will finish this build, then change that thing
12:46 dalek MoarVM: f04b1d8 | timotimo++ | src/gc/collect.c:
12:46 dalek MoarVM: display exactly what thread ID was passed.
12:46 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f04b1d8ebb
12:47 nwc10 timotimo++
12:47 nwc10 oh yes, would like a 10+ year time machine
12:47 nwc10 fixed as many of these as I could in Perl 5 a few years back...
12:48 nwc10 if panincing/internal error/whatever, one has a printf() format - spew as much state as can be reliably sent through printf
12:48 nwc10 you won't get another chance to collect that info
12:48 nwc10 and, also, make the panic strings unique
12:48 nwc10 so that you know which line it was, unabigiously.
13:01 nwc10 joined #moarvm
13:11 nwc10 Stage mast       : ASAN:SIGSEGV
13:11 nwc10 =================================================================
13:11 nwc10 ==31581==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7fb99317b777 sp 0x7fff8f48b770 bp 0x7fff8f48b7b0 T0) #0 0x7fb99317b776 in MVM_serialization_write_ref src/6model/serialization.c:617 #1 0x7fb99317f6fc in serialize_stable src/6model/serialization.c:987 #2 0x7fb9931818db in serialize src/6model/serialization.c:1228
13:11 nwc10 #3 0x7fb99318287 in MVM_serialization_serialize src/6modela/serialization.c:1298 #4 0x7fb992fffa64 in MVM_interp_run src/core/interp.c:3447 #5 0x7fb99324f9f5 in MVM_vm_run_file src/moar.c:214 #6 0x401a1f in main src/main.c:189
13:11 nwc10 oh, terminals hate everyone.
13:12 nwc10 no further info on why
13:12 nwc10 no idea if it's repeatable
13:20 rurban joined #moarvm
13:23 nwc10 not repeatable first time
13:36 brrt joined #moarvm
13:44 brrt nwc10 - not entirely previously unknown, i have that one too
13:45 brrt but only on a specific branch of rakudo
13:46 brrt timotimo: PRIu32 i'd say
14:02 Ven joined #moarvm
14:06 vendethiel joined #moarvm
14:30 brrt` joined #moarvm
15:37 FROGGS joined #moarvm
15:44 moritz joined #moarvm
15:44 masak joined #moarvm
16:30 vendethiel joined #moarvm
16:37 rurban joined #moarvm
17:10 vendethiel joined #moarvm
18:22 zakharyas joined #moarvm
18:37 rurban joined #moarvm
19:57 * lizmat wonders whether http://blogs.perl.org/users/nick_wellnhofer/2015/04/branchless-utf-8-length.html could be an inspiration for jnthn, or just old new  :-)
20:24 jnthn lizmat: Cute :)
20:25 jnthn lizmat: Since we keep strings in NFG, we don't need to calculate the length for things like .chars. But I wonder if it's a way to make a faster UTF-8 decoder. Ours seems to cost some.
21:08 dlem joined #moarvm
21:08 dlem jnthn: http://bjoern.hoehrmann.de/utf-8/decoder/dfa/
21:09 jnthn dlem: That looks...familiar
21:10 dlem oookay?
21:10 jnthn dlem: The one we have is using some kind of automaton also
21:11 dlem Oh, I see. The fastest implementation is at the bottom of the page.
21:11 jnthn ohhh
21:11 jnthn Yeah, we have the one from that page already :)
21:11 jnthn No wonder it looked familiar :)
21:12 dlem He he, OK. I didn't know what you were using, I was just lurking and remembered this very nice implementation.
21:12 jnthn :)
21:13 dlem And you are hoping to make an even faster implementation. Hmmm...
21:13 jnthn Well, when you notice something is high in a profile then there can be two reasons: it's slow, or you're doing a lot of it.
21:13 jnthn And the second could certainly be true.
21:14 dlem Indeed.
21:14 jnthn It's only gotten worse now we NFG all the incoming things too.
21:16 dlem I can only imagine.
21:16 colomon joined #moarvm
21:17 * dlem goes to bed
21:17 dlem See you!
21:26 [Coke] jnthn: do you see any major blocks to porting your NFG work to Java?
21:26 jnthn [Coke]: No
21:26 [Coke] excellent.
21:28 [Coke] That seems like something I could make work eventually... will scope it out.
21:32 jnthn [Coke]: I think the main thing that will make it tolerable is that Java and the JVM support overloading
21:32 jnthn [Coke]: So for every method that takes a String you can add an overload taking an NFGString or so
21:52 FROGGS joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary