japhb ISTR brrt saying he didn't want to merge until he had a better register allocator in place and tested 00:09
TimToady ISTR the same 01:04
01:34 _longines joined 01:48 ilbot3 joined 05:59 domidumont joined 06:02 domidumont joined 06:53 domidumont joined
dalek arVM/even-moar-jit: 64af682 | brrt++ | src/m (2 files):
Enable the expression JIT by default

Currently the JIT is stable enough to permit dogfooding
07:07
arVM/even-moar-jit: b12afca | jnthn++ | VERSION:
Bump VERSION.
07:08
arVM/even-moar-jit: 176000d | jnthn++ | docs/ChangeLog:
Update ChangeLog.
arVM/even-moar-jit: 3460b8c | brrt++ | / (2 files):
Merge remote-tracking branch 'origin/master' into even-moar-jit
07:10 brrt joined
brrt TimToady, diakoter, japhb: you str correct :-) 07:11
nine brrt: that's the wrong way! You should have merged even-moar-jit into master... 07:26
07:28 brrt joined
nine brrt: will we have a chance at JITing NativeCall with even-moar-jit? Would we have had it with the old JIT? 07:28
07:29 zakharyas joined
brrt nine: that is the intention, yes, *but* it depends a bit on the knowledge we have at JIT time 07:30
I'm reasonably sure that it is easier now than it would have been with the old JIT 07:32
brrt looks at the nativecall implementation
07:32 sivoais joined
brrt but it would probably also have been possible to do with the old JIT 07:33
nine: the basic challenge, I think, with the way of the old JIT is that we'd need a 'special node' for everything we wanted to compile differently 07:34
nine Well, I'll probably have time to look closer at NativeCall in the near future. Also at even-moar-jit. So the timing may just be right 07:35
brrt e.g. like how we have the sp_p6oget_* ops, and special ops for MVMIter objects, and potentially special ops for array access, etc. 07:36
nine I've only started working at Inline::Perl5's performance a couple days ago. Yet I already find cases where we just need a faster NativeCall (or maybe just some fresh ideas).
brrt uhuh
moritz afaict, the big problem with NativeCall is that it interprets the signature on each call 07:37
it should really compile once
brrt so the idea is that we allow representations to insert specialized 'expression' code for ops.That would cover the nativecall case nicely
nine moritz: looking forward to find such LHF :) 07:39
Curiously I get the impression that actually callbacks are much slower than native calls. But that's just a feeling 07:40
07:40 sivoais joined 07:53 sivoais joined
jnthn We'll need to re-work nativecall a little to have a good shot at JITting it 08:12
(Re-work it on the inside, that is, no API changes)
nine jnthn: color me interested in working on that area :) 08:14
08:14 sivoais joined
jnthn I've been pondering whether a generalization of the multi-dispatch caching mechanism could help (that is, we install a configured NativeCall callsite into the cache, and the slow-path is what we do today) 08:14
Since spesh already knows how to do resolution there
The tricky part is figuring out where exactly to stick the decont of the incoming args 08:15
timotimo brrt: are you going to fix the broken nqp builds? the 50-jit-register-alloc.t dies with "no subtests run", "no plan found in TAP output" 08:27
timotimo is already on it 08:30
timotimo done 08:31
brrt heh, why does that break? 08:33
timotimo: that's… not right… it doesn't work as a canary anymore 08:35
timotimo it always outputs the same number
brrt (yeah, and that's not right somehow?) 08:36
timotimo it needs to output incrementing numbers
otherwise TAP will say "out of order tests"
brrt aha 08:37
okay
had no idea
timotimo we can move the numbers out of foo() into the outer loop
brrt yeah 08:38
done just that :-)
now the test works like intended again
timotimo good
er, i mean 08:39
ok 1
brrt :-) 08:40
had no idea about that though
09:29 brrt joined 09:56 zakharyas joined 10:00 brrt joined 12:12 zakharyas joined 12:51 brrt joined 15:19 domidumont joined 16:04 zakharyas joined 16:07 domidumont joined 16:38 domidumont joined 17:18 psch joined 20:22 Ven_ joined 20:37 Ven_ joined 20:41 zakharyas joined 21:05 Ven_ joined 21:27 Ven_ joined