00:05
tadzik joined
|
|||
jnthn | timotimo: There will be a way, but I don't have a design I'm happy with yet. I have to figure it out for inlining. It'll get figured out when that's near the top of the task list. | 00:09 | |
timotimo: On the boxing instructions, yes, makes sense. | |||
00:31
lizmat joined
01:06
btyler joined
01:23
FROGGS_ joined
02:06
woosley joined
06:52
zakharyas joined
08:54
FROGGS joined
10:06
cognominal joined
|
|||
dalek | arVM/optimize_isreprid: a6205ef | (Timo Paulssen)++ | src/spesh/optimize.c: try to optimize islist/isnum/... (not helpful yet) the problem is that islist and friends also include a null check on their argument. At best, we could - if we only know the type - turn these ops into a negated "isnull" op, but that doesn't exist. So we have to wait for spesh's ability to allocate new registers and add new operations on those. |
13:30 | |
arVM: c34942c | (Timo Paulssen)++ | src/spesh/facts.c: boxing ops carry their types and result in concrete objects |
13:39 | ||
timotimo | this ought to get rid of a few decont ops, too. | ||
they are not that expensive, but better is better. | 13:40 | ||
moritz | ... unless you spend more time rewriting the bytecode than executing the original bytecode | ||
timotimo | hehe. | ||
in our experience, the specializer seems to be blazing fast | 13:41 | ||
i'm not expecting us to gain good performance just by removing lots of decont ops :) | 13:42 | ||
especially since currently we turn them into set ops instead of renaming the registers | |||
which i would prefer if it weren't complicated to do :) | |||
JimmyZ | :) | 13:43 | |
13:44
btyler joined
|
|||
timotimo | maybe we should introduce a KNOWN_NOT_NULL fact? | 13:44 | |
after object creation, we should know it's not null, for example | 13:46 | ||
hmm. in theory, with a KNOWN_TYPE, we should be able to turn a getwhat into a wval or something like that; i wonder if that'd be more efficient? | 13:50 | ||
(but if we do turn it into a wval, we also have its known object value available in the specializer) | |||
gethow should be specializable, too, shouldn't it? | 13:55 | ||
[Annotation: INS Deopt (idx 0 -> pc 170)] | 14:17 | ||
dalek | arVM: eadd2c8 | (Timo Paulssen)++ | src/spesh/dump.c: dump deopt instruction annotations, too. |
14:18 | |
timotimo | not sure what to do next. somehow i still don't feel up to the task of making nameds work properly :| | 14:33 | |
with interned callsites and spesh, that is | 14:34 | ||
FROGGS | timotimo: implement LABLEs \o/ | 14:35 | |
err, LABELs, even | |||
timotimo | oh, look at my wrist! i gotta go! | 14:38 | |
how about something easy that'll result in a dramatic speed improvement in common cases? | |||
oh ... right ... those things aren't easy :| | |||
moritz | FROGGS: now you've scared him away :-) | ||
FROGGS | timotimo: these things are perhaps just wishes and dreams :o) | 14:39 | |
at least I merged master into nqp/loop_labels, so if someone wants to play with it, nqp-p supports loop labels :o) | 14:40 | ||
timotimo | what's the exact significance of 512, 513 and 514? | 14:48 | |
FROGGS | these are just IDs of exception handlers | 14:51 | |
(next/last/redo) | |||
moritz | feels like they could go into pir::const thingy | ||
FROGGS | moritz: and then I can use such a const in pir code? | 14:52 | |
moritz | FROGGS: in the NQP that generates the pir code | 14:53 | |
FROGGS | moritz: well, then I can stick to my hash: github.com/perl6/nqp/compare/loop_...9b29f1R552 | 14:54 | |
moritz | ah, right | 14:55 | |
15:26
FROGGS[mobile] joined
16:06
FROGGS joined
17:59
benabik joined
18:58
zakharyas joined
19:10
woolfy1 joined
|
|||
moritz | FROGGS: rt.perl.org/Ticket/Display.html?id=121720 you recently fixed a bug with the same symptoms. HALP? | 19:44 | |
FROGGS | moritz: last time it thought it never hit eof | 19:45 | |
moritz was hoping for a patch :-) | 19:49 | ||
19:50
woolfy joined
|
|||
FROGGS | moritz: *g* | 19:51 | |
let me take a sip on my beer first | |||
btw, working on loop labels again on nqp-m feels like wearing that old good jacket that fits so well... | 19:53 | ||
it feels right somehow | |||
timotimo | there's not as many weird gotchas everywhere :) | 20:00 | |
20:12
woolfy joined
20:31
brrt joined
|
|||
brrt | hey #moarvm | 20:31 | |
FROGGS | ho brrt | 20:32 | |
brrt | much progress for me to catch up with | 20:33 | |
jnthn | well, not in Moar | 20:34 | |
Since weekend, anyway | |||
timotimo | aye, mostly cool supply methods | 20:39 | |
jnthn: comments about the things i wrote about spesh before? | 20:40 | ||
brrt | jnthn: github.com/MoarVM/MoarVM/blob/mast...loop.c#L38 - shouldn't this be += ? | 20:42 | |
jnthn | brrt: The code using the return value only cares about it in boolean sense. | 20:51 | |
brrt | ok | ||
:-) | |||
jnthn | timotimo: Not at the moment...busy trying to write my talk and debug code for it... :) | 20:52 | |
Turns out we have some issue involving continuations when multiple threads are involved :( | |||
FROGGS | :{ | 20:54 | |
brrt | jnthn - btw, i'm sorry to say i won't make it to the dutch perl workshop this friday | ||
jnthn | brrt: ok, no worries | 20:55 | |
brrt | its just a shame | ||
jnthn | aye | ||
brrt | hopefully you'll visit our pretty country another time | ||
jnthn | probably :) | ||
brrt | or, i'll go to sweden | ||
jnthn | or that :) | 20:56 | |
timotimo | that's fair :) | 20:57 | |
(re: my spesh things) | |||
brrt is off to sleep again, see you tomorrow | 21:19 | ||
21:19
brrt left
|
|||
FROGGS | moritz: I have a patch | 21:27 | |
dalek | arVM: a109e8d | (Tobias Leich)++ | src/io/syncfile.c: stat file descriptor in eof() when filename is unset This can happen when we get a file redirected, and therefor open it via MVM_file_handle_from_fd instead of MVM_file_open_fh. |
21:32 | |
timotimo | cool | 21:38 | |
what was the gsoc irc channel for perl again? | 21:43 | ||
tadzik | soc-help | 21:45 | |
timotimo | oh | ||
22:06
donaldh joined
22:43
cognominal joined
23:05
benabik joined
23:41
benabik joined
23:48
woolfy joined
23:57
benabik joined
|