timotimo | we need something clever so that we can spesh native routines | 01:35 | |
the postcircumfix:<( )> method mixed in by the Native role has |args, which spesh does not like (interning of callsites, that is) | 01:36 | ||
01:37
colomon joined
|
|||
timotimo | but all it does is grab the $!list from the capture and pass it on to nqp::nativecall | 01:38 | |
is there something very difficult keeping us from supporting signatures that have only one |foo argument in spesh? | 01:41 | ||
oh, i've derped | 02:05 | ||
the flattening that would prevent postcircumfix:<( )> to be spesh'd (or rather: interned) has to be on the callsite, not the signature | 02:06 | ||
so the signature can be whatever it wants to be, important is only how we call it | |||
and the ways we call that are almost all without flattening, usually | |||
so how come it doesn't show up ... | |||
um ... maybe because we're getlexstatic'ing all the SDL_* functions? | 02:10 | ||
even in post-spesh code | |||
... did i misread? | 02:15 | ||
i notice my brain isn't totally up to speed tonight | 02:19 | ||
02:24
Peter_R joined
|
|||
timotimo | ugh, the post-spesh result of infix:<+> for two Complex numbers is .. dumb | 02:30 | |
gist.github.com/timo/b7cc8284db472e35c255 | 02:31 | ||
02:49
ilbot3 joined
03:06
colomon joined
|
|||
timotimo | i'll look into this tomorrow, now is way past my bedtime | 03:28 | |
07:54
FROGGS joined
08:14
rurban joined
08:19
kjs_ joined
08:49
zakharyas joined
09:41
FROGGS joined
09:51
kjs_ joined
10:43
kjs_ joined
11:28
kjs_ joined
12:15
Ven joined
12:58
ggoebel111111114 joined,
Ven joined
|
|||
timotimo | the lines to fix up the usages were commented out in the p6opaque.c code, i'm going to spectest with these lines reactivated and it seems like i'll have to add a usage-decrease-line for the name of the attribute, too for some instance | 13:34 | |
instances | |||
13:46
Ven joined
13:48
Ven joined
|
|||
timotimo | my set removal seems to make a little mistake here | 13:55 | |
the set removal i made may reduce the number of superfluous set instructions, but since it doesn't handle fact transfer correctly yet (and i'm too lazy to fix that), i'd be inclined to throw it out until someone writes something better (maybe even me) | 14:06 | ||
(another way would be to do set removal as a second pass over each BB or over the whole graph) | 14:07 | ||
jnthn | timotimo: I was pondering it in the same pass we will do ref elimination and box/unbox sequence elimination. | 14:08 | |
Which will be post-inline | |||
And set elim will help us more post-inline too. | 14:09 | ||
gotta go for a bit | |||
14:10
colomon joined
|
|||
timotimo | gist.github.com/timo/b7cc8284db472e35c255 ā now has (at the top, surprisingly) the result of not doing set elimination, but adding more usage reduction to p6opaque | 14:13 | |
14:20
colomon joined
14:22
dalek joined
|
|||
dalek | arVM: e929224 | timotimo++ | src/6model/reprs/P6opaque.c: re-enable usage decrements for get/bindattr in P6opaque |
14:28 | |
arVM: 4d546bc | timotimo++ | src/spesh/optimize.c: currently, set removal hurts more than it helps. ideally, there'd be a second pass over the spesh graph that would do set removal, unbox tracking and other post-inline optimizations. |
|||
arVM: e5cc1b3 | timotimo++ | src/6model/reprs/P6opaque.c: another opportunity to reduce usage counts |
14:42 | ||
timotimo | (note the wval and const_s that are left over, probably because the deopt one point in BB 7 requires the registers to have the same values in them regardless of spesh'd version or not | 14:51 | |
) | 14:52 | ||
15:20
Ven joined
15:50
Ven joined
|
|||
dalek | arVM: 323400c | timotimo++ | docs/ChangeLog: Draft a changelog for 2015.02 |
15:59 | |
timotimo | the biggest chunk of work only ended up as a single changelog entry; we may want to elaborate on that a lot more | ||
jnthn | timotimo: I normally do git log --oneline --reverse 2015.01.. | 16:05 | |
And hack it down from that. | |||
timotimo: I want to work on the native ref elimination over inlines in the next week or two, so maybe I'll look at a new set elimination pass at that point. | 16:07 | ||
timotimo | cool :) | 16:08 | |
jnthn | And box/unbox too | ||
My gut tells me the 3 want a similar algorithmic approach. | |||
timotimo | if there's simple but annoying footwork i could prepare for you, feel free to outline it | 16:09 | |
17:18
kjs_ joined
17:34
camelia joined
17:36
kjs_ joined
17:47
rurban joined
18:03
tgt joined
18:06
Ven joined
18:20
FROGGS joined
18:55
kjs_ joined
19:37
zakharyas joined
|
|||
dalek | arVM: 5121acd | jnthn++ | docs/ChangeLog: Flesh out ChangeLog some more. timotimo++ for getting this started. |
20:05 | |
jnthn | timotimo: There really ain't much to do :) | 20:06 | |
timotimo: It's just bump the VERSION file, do make release, and check the resulting tarball | |||
(Instructions in docs/release_guide.md) | |||
Also, yeah, apparently * is the changelog char for 2015 :P | 20:11 | ||
20:20
camelia joined
|
|||
timotimo | i didn't even notice the memory leak with bigints | 20:24 | |
but i don't use bigints very often | |||
(especially since the smallbigint stuff) | |||
jnthn | iirc it was only a deserialization time one | ||
And only for big ones | |||
So it wasn't likely to hurt much. | |||
timotimo | oh, OK | 20:26 | |
jnthn | Still, good to nail 'em all | 20:27 | |
timotimo | yes | ||
very much so | |||
jnthn | Will be back tomorrow morning to work on relesae stuff if nobody beats me to following the release guid :) | ||
*guide | |||
o/ | |||
timotimo | i can do that | ||
good night! | |||
20:33
dalek joined
21:02
dalek joined
21:09
camelia joined
|
|||
FROGGS | reprs.obj : error LNK2001: unresolved external symbol MVMCPPStruct_initialize | 21:10 | |
moar.dll : fatal error LNK1120: 1 unresolved externals | |||
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\x86_amd64\link.EXE"' : return code '0x460' | |||
sad, I wanted to test it on windows "quickly" | |||
21:14
rurban joined
|
|||
dalek | arVM: f67647f | timotimo++ | VERSION: we have a release! 2015.02 |
21:24 | |
timotimo | i hope i didn't wrong | 21:25 | |
moritz | YOU BORKDED IT! | 21:26 | |
erm, just kidding :-) | |||
timotimo++ | 21:27 | ||
timotimo | i'm not sure i have an ssh access to moarvm.com | 21:29 | |
lizmat neither | 21:30 | ||
21:33
colomon joined
22:05
FROGGS_ joined
22:38
colomon joined
22:57
kjs_ joined
|
|||
timotimo | jnthn: here's the tarball in case you've missed it in #perl6 or just want to spend less time hunting for it: t.h8.lv/MoarVM-2015.02.tar.gz | 23:10 | |
23:31
kjs_ joined
|