01:56 ilbot3 joined 03:42 vendethiel joined 05:07 vendethiel joined 05:36 vendethiel joined 06:19 FROGGS joined 06:26 colomon joined 06:39 vendethiel joined 07:08 Ven joined 07:13 zakharyas joined 07:19 brrt joined
brrt \o 07:20
i have a question with regards to tracing 07:21
how to deal with invokish ops
as in... they bring in some pain when we have the following
(within a basic block):
begin basic block -> foo -> bar -> invokish -> (enter frame) -> foo -> bar -> (leave frame) -> foo -> end of basic block 07:22
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
07:23 ShimmerFairy left
jnthn If we want to inline things the invokish ops would call then they'd need to be real BB boundaries. 07:28
brrt yes, i think so too 07:31
(that took way more of my brain cycles this weekend than it should have :-)) 07:32
08:11 donaldh joined 08:23 colomon joined 08:24 psch joined 08:55 Ven joined 10:43 rurban joined 11:21 Ven joined 11:23 vendethiel joined
dalek arVM: d8ee582 | FROGGS++ | / (2 files):
Revert "enforce C99 compliance"

This reverts commit 56dcbaa08c928a578c98f79b24e849b52706bd1f. We try to be C89 compliant to not accidently break MSVC. This hopefully also fixes #211.
11:42
11:58 colomon joined 12:04 dalek joined
nwc10 I CAN HAZ PRVLS UNKNWON BOOM! :-( 12:10
Stage parse : Internal error: invalid thread ID in GC work pass
ASAN was quiet.
timotimo what's the right format specifier for a MVMuint32? 12:12
i'd just go with %d, to be honest 12:13
but it could be wrong
jnthn eeks 12:15
nwc10: Would really like to hunt that one down...
nwc10: If you've chane to investigate: in src/gc/worklist.h there is 12:16
#define MVM_GC_WORKLIST_DEBUG_ADD 0
nwc10 we got past it this time.
jnthn Flip that to a 1, breakpint MVM_panic, and see what's on the stack
nwc10 will finish this build, then change that thing
dalek arVM: f04b1d8 | timotimo++ | src/gc/collect.c:
display exactly what thread ID was passed.
12:46
nwc10 timotimo++ 12:47
oh yes, would like a 10+ year time machine
fixed as many of these as I could in Perl 5 a few years back...
if panincing/internal error/whatever, one has a printf() format - spew as much state as can be reliably sent through printf 12:48
you won't get another chance to collect that info
and, also, make the panic strings unique
so that you know which line it was, unabigiously.
13:01 nwc10 joined
nwc10 Stage mast : ASAN:SIGSEGV 13:11
=================================================================
==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
#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
oh, terminals hate everyone.
no further info on why 13:12
no idea if it's repeatable
13:20 rurban joined
nwc10 not repeatable first time 13:23
13:36 brrt joined
brrt nwc10 - not entirely previously unknown, i have that one too 13:44
but only on a specific branch of rakudo 13:45
timotimo: PRIu32 i'd say 13:46
14:02 Ven joined 14:06 vendethiel joined 14:30 brrt` joined 15:37 FROGGS joined 15:44 moritz joined, masak joined 16:30 vendethiel joined 16:37 rurban joined 17:10 vendethiel joined 18:22 zakharyas joined 18:37 rurban joined
lizmat wonders whether blogs.perl.org/users/nick_wellnhofe...ength.html could be an inspiration for jnthn, or just old new :-) 19:57
jnthn lizmat: Cute :) 20:24
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. 20:25
21:08 dlem joined
dlem jnthn: bjoern.hoehrmann.de/utf-8/decoder/dfa/ 21:08
jnthn dlem: That looks...familiar 21:09
dlem oookay? 21:10
jnthn dlem: The one we have is using some kind of automaton also
dlem Oh, I see. The fastest implementation is at the bottom of the page. 21:11
jnthn ohhh
Yeah, we have the one from that page already :)
No wonder it looked familiar :)
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 :)
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.
And the second could certainly be true.
dlem Indeed. 21:14
jnthn It's only gotten worse now we NFG all the incoming things too.
dlem I can only imagine. 21:16
21:16 colomon joined
dlem goes to bed 21:17
See you!
[Coke] jnthn: do you see any major blocks to porting your NFG work to Java? 21:26
jnthn [Coke]: No
[Coke] excellent.
That seems like something I could make work eventually... will scope it out. 21:28
jnthn [Coke]: I think the main thing that will make it tolerable is that Java and the JVM support overloading 21:32
[Coke]: So for every method that takes a String you can add an overload taking an NFGString or so
21:52 FROGGS joined