Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2017-08-19

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

All times shown according to UTC.

Time Nick Message
00:52 Geth ¦ MoarVM: MasterDuke17++ created pull request #652: Add error string to 'failed to resolve' exception
00:52 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/pull/652
01:52 ilbot3 joined #moarvm
01:52 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
05:43 dogbert17 joined #moarvm
06:44 lizmat joined #moarvm
08:05 domidumont joined #moarvm
08:10 domidumont joined #moarvm
08:44 dogbert17 joined #moarvm
09:36 samcv jnthn, I fixed the MVMROOT macro so it doesn't have that comma problem. turns out you were missing a semicolon
09:38 samcv well i added a semicolon to the MVMROOT macro which helps but didn't solve all the problems. and then adding parens around the { } fixes the rest. you need both changes to get it working
10:10 timotimo i'm not going to be here for today, but it'd be a good idea to merge the branch "refuse_dangerous_inlines" before the release (it might want a little bit of attention before a merge)
10:12 samcv what's it do?
10:13 samcv i think i have almost fixed the concat issue
10:13 samcv release blocker
10:14 samcv yay i fixed it!
10:14 samcv took me a long time to figure out wtf was going on. but it was increasing the repetitions since the last strand of a and first strand of b were the same
10:15 samcv even though it created the renormalized section, so it ended up not using it and just increasing repetitions
10:15 samcv which is why it was so damn hard to figure out
10:21 timotimo well, spesh isn't written in a way that'd let it work with the GC
10:22 timotimo i.e. if other threads want to do gc, spesh will finish up its stuff and let gc commence at a "safe spot"
10:22 timotimo i.e. where spesh isn't holding on to much memory
10:22 timotimo and when inlining, wval ops have to be fixed up because the inliner and inlinee may be from different compilation units, where each compilation unit could have a different target serialization context at the same index
10:23 timotimo the inlinee's CU will "disappear", so the object has to be "stolen", but if the object in the inlinee's CU's depended-on SC hasn't been deserialized yet, that'd cause an object to be allocated
10:23 timotimo and that can cause the GC to run, which currently is set up to panic moarvm
10:24 timotimo (so we shut down in an orderly fashion rather than corrupting memory and doing god-knows-what)
10:24 timotimo the "refuse dangerous inlines" branch simply checks if the object at that index is still to be deserialized and if it is it refuses to do the inline
10:24 timotimo that's far from optimal, but it's at least safe
10:25 * timotimo AFK for long time (but maybe available on phone)
10:44 Geth ¦ MoarVM: a8658127cd | (Samantha McVey)++ | src/strings/ops.c
10:44 Geth ¦ MoarVM: improvements to NFG_CHECK
10:44 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a8658127cd
10:44 Geth ¦ MoarVM: 5363a0742d | (Samantha McVey)++ | src/strings/ops.c
10:44 Geth ¦ MoarVM: Fix concatenation bug when renormalization needed
10:44 Geth ¦ MoarVM:
10:44 Geth ¦ MoarVM: This bug has only ever been seen in a precompiled module,
10:44 Geth ¦ MoarVM: because to trigger, you have to be concatenating string a
10:45 Geth ¦ MoarVM: and string b, where string a is a strand and string b
10:45 Geth ¦ MoarVM: are strands and the last strand of string a returns
10:45 Geth ¦ MoarVM: true with MVM_string_equal_at().
10:45 Geth ¦ MoarVM:
10:45 Geth ¦ MoarVM: With this change, it checks if it can increase the
10:45 Geth ¦ MoarVM: repetitions if concat_stable == 1
10:45 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/5363a0742d
11:03 nine Why oh why did I think that writing assembly was a good way to relax on a weekend?
11:05 samcv night everyone
11:06 jnthn 'night, samcv++
11:07 nine Actually assembly is innocent. It's really just the difficulty of finding non-confusing names for the operands of setcodeobj ;)
11:17 nine What the? So I added support for setcodeobj and captureinnerlex to the JIT as they were blocking JITing of Block.clone. But now according to the profiler this method is not even speshed anymore? How can that happen?
11:38 Geth ¦ MoarVM: f22f8d7c8b | (Stefan Seifert)++ | 2 files
11:38 Geth ¦ MoarVM: JIT setcodeobj and captureinnerlex
11:38 Geth ¦ MoarVM:
11:38 Geth ¦ MoarVM: These blocked JITing of Block.clone. JITing them may help closures.
11:38 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f22f8d7c8b
11:39 nine Apparently there are now fewer speshed and more JITed frames (to be expected) but also fewer inlined frames.
11:49 AlexDaniel is there any policy on pushing non-bugfix changes like this ? before the release?
11:51 AlexDaniel because toaster will run with versions specified in NQP/MOAR_REVISION, any commits after that have unknown status
11:51 jnthn "If you screw it up, you do the point release" :P
11:51 jnthn lunch; bbiab
12:14 robertle annika
12:16 robertle annika]z~TUJM7gfUH\\HJL\\\\\\\\\\\\\\
12:16 robertle ~5~]~~
12:17 robertle sorry, children got to my keyboard
12:42 domidumont joined #moarvm
13:51 domidumont joined #moarvm
16:59 [Coke] AlexDaniel: at some point, we probably want to switch to a develop/master branching strat, where develop is auto-promoted to master once sufficient testing occurs.
16:59 AlexDaniel yea, that'd be cool
17:07 domidumont joined #moarvm
18:16 zakharyas joined #moarvm
18:21 zakharyas joined #moarvm
18:53 jnthn AlexDaniel: At the point we want a release cut yet, or not?
18:54 AlexDaniel jnthn: there's only one thing that's worrying me: https://irclog.perlgeek.de/perl6-dev/2017-08-19#i_15042503
18:54 AlexDaniel jnthn: but I have no idea what to do with it
18:55 jnthn Me either, from that information
18:56 jnthn If it's some module and it's (mis)using NativeCall it might not even by on us to fix, for example...
18:56 jnthn And the error could be from anything
18:58 AlexDaniel I'm currently testing modules that are marked as “burnt”
18:58 AlexDaniel would be nice if I catch at least one segfault there
18:58 AlexDaniel if not, I guess we'll just ship as is, because what you gonna do?
18:59 AlexDaniel most of them failed for completely different reason though
18:59 jnthn I don't have time to do anything much this weekend besides cut the release
19:00 AlexDaniel jnthn: alright. Then go for it
19:00 jnthn And s/this weekend/for the rest of August/ is almost as true...vacation from Tuesday :)
19:00 jnthn Alright
19:01 jnthn $ git describe
19:01 jnthn 2017.07-467-gf22f8d7
19:01 jnthn ...this is gonna be some ChangeLog work :P
19:01 AlexDaniel oh, there's a changelog for that too… :)
19:13 MasterDuke jnthn: do you think you'll have time to look at https://github.com/MoarVM/MoarVM/pull/631 and https://github.com/MoarVM/MoarVM/pull/632 sometime ? or is there someone else who knows the relevant code well enough to review them?
19:44 Geth ¦ MoarVM: 28cb2cc6ae | (Jonathan Worthington)++ | docs/ChangeLog
19:44 Geth ¦ MoarVM: ChangeLog for 2017.08.
19:44 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/28cb2cc6ae
19:44 jnthn Review of that welcome
19:45 MasterDuke "thershold"
19:47 MasterDuke a couple one-line entries have a period, but most don't
19:47 AlexDaniel jnthn: ping me before making the final step
19:50 Geth ¦ MoarVM: 8f4f338cab | (Jonathan Worthington)++ | docs/ChangeLog
19:50 Geth ¦ MoarVM: ChangeLog fixes; MasterDuke++.
19:50 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/8f4f338cab
19:51 AlexDaniel errr
19:51 AlexDaniel c: 1599873d1420f https://gist.githubusercontent.com/AlexDaniel/95734b0e5e28af1dcb8232408ea5dfee/raw/675efbcc1b15add845c837b474af7259de7dec1d/gistfile1.txt
19:51 committable6 AlexDaniel, Successfully fetched the code from the provided URL.
19:51 committable6 AlexDaniel, https://gist.github.com/d8330f3c8a56f1aac0b6d1bee4cac220
19:51 AlexDaniel c: 1599873d1420f^ https://gist.githubusercontent.com/AlexDaniel/95734b0e5e28af1dcb8232408ea5dfee/raw/675efbcc1b15add845c837b474af7259de7dec1d/gistfile1.txt
19:52 committable6 AlexDaniel, Successfully fetched the code from the provided URL.
19:52 committable6 AlexDaniel, https://gist.github.com/066ba7691fc60e83ec018e7b2ccdb87e
19:52 AlexDaniel Geth: ver 1599873d1420f
19:52 AlexDaniel Geth: ver https://github.com/rakudo/rakudo/commit/1599873d1420fd5c06a10f8b134213866cbfd87e
19:52 Geth AlexDaniel, version bump brought in these changes: https://github.com/perl6/nqp/compare/2017.07-48-gb084530...2017.07-54-gf34562f
19:53 AlexDaniel alright, not a moarvm thing it seems!
19:53 AlexDaniel back to #perl6-dev then :)
19:53 Geth ¦ MoarVM: d1fc3a6bb1 | (Jonathan Worthington)++ | VERSION
19:53 Geth ¦ MoarVM: Bump VERSION.
19:53 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/d1fc3a6bb1
19:54 jnthn AlexDaniel: I've largely got things prepared.
19:54 AlexDaniel jnthn: I think there's an issue with https://github.com/perl6/nqp/commit/f34562f5fb5bcf48dbf31c390ef57627706b9b66
19:54 AlexDaniel jnthn: it shouldn't really matter to you
19:54 jnthn Hmmm
19:55 jnthn Yeah, that's up in NQP
19:55 jnthn Also apparently the JVM build mighta gotten busted by the atomics stuff, but I thought I stuck #?if moar around the lot of it :S
19:55 jnthn That's also NQP level though
19:55 jnthn In theory just copy-pasting a constant
19:55 jnthn Oh, maybe I know why it wasn't enough to just #?if moar the stuff I did
19:56 jnthn Anyway, will cut the MoarVM releae in an hour-ish :)
19:56 jnthn afk until then
20:19 AlexDaniel jnthn: “optimazation”
21:18 Geth ¦ MoarVM: a425903282 | (Jonathan Worthington)++ | docs/ChangeLog
21:18 Geth ¦ MoarVM: Fix typo; AlexDaniel++.
21:18 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a425903282
21:26 jnthn AlexDaniel: Doing release now
21:27 AlexDaniel jnthn: ?
21:31 jnthn https://www.moarvm.org/releases/MoarVM-2017.08.tar.gz
21:31 jnthn And tagged
21:32 geekosaur joined #moarvm
21:32 AlexDaniel great. jnthn++
21:34 jnthn AlexDaniel++ for the rest of the release stuff :)
22:09 nine Now THAT is a long changelog
22:12 jnthn Ain't it just!
22:42 timotimo "Move annotations multiple basic blocks if needed"
22:42 timotimo ?
22:42 timotimo oh, like, move it "across" multiple basic blocks?
22:44 timotimo JIT of the new atomic ops - wants to perhaps have an "all"?
22:46 timotimo well, the release is already done
22:46 timotimo a pretty good-looking release this time :)
23:19 timotimo i regret that i didn't manage to merge the refuse_dangerous_inline branch before release
23:19 timotimo especially since dogbert was able to trip it in the spec test suite
23:19 timotimo anyway, i'll try to go a sleep

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