Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2015-04-04

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

All times shown according to UTC.

Time Nick Message
01:07 dalek MoarVM: bd99dab | timotimo++ | src/spesh/dump.c:
01:07 dalek MoarVM: output callsites in spesh log
01:07 dalek MoarVM:
01:07 dalek MoarVM: with its address, num of args and positionals as well
01:07 dalek MoarVM: as the flattening flag and the internedness flag
01:07 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/bd99daba88
07:46 FROGGS joined #moarvm
07:48 FROGGS timotimo: I am attempting to moving the logic of decont_all to native_call_invoke in *MoarVM*, because we walk the args there anyway
07:48 rurban_ joined #moarvm
07:48 FROGGS though, when I try to print the result of my translation of .can('cstr'), then I get:
07:48 FROGGS Cannot call method 'mro' on a null object
07:48 FROGGS in any find_method at src/gen/m-Metamodel.nqp:1041
07:49 Ven joined #moarvm
07:49 FROGGS actually, that happens after I got the result of can
07:49 FROGGS perhaps I have to MVMROOT more than value... will look at that later
07:50 FROGGS but maybe I shall not call into things while we are making a call... jnthn might give me a hint about that please :o)
07:51 jnthn FROGGS: Tht's going to be a horrible thing to do.
07:51 jnthn 'cus you'll need to create a state machine
07:52 FROGGS yeah, I thought so after attempting it
07:52 jnthn And CPS-transform the code by hand.
07:52 jnthn I'd be inclined to leave it in decont_all
07:52 jnthn For now
07:52 FROGGS hmmm...
07:52 jnthn Because we know we'll need a larger re-organization of this at some point to support JIT-compiling the calls
07:55 jnthn And it'd suck to do such a tedious task only to have to re-do it in a couple of months.
08:17 dalek MoarVM: e0f1cb0 | jnthn++ | src/core/nativecall. (2 files):
08:17 dalek MoarVM: Implement unsigned int types for native calls.
08:17 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e0f1cb006d
08:47 Ven joined #moarvm
09:14 camelia joined #moarvm
10:06 camelia joined #moarvm
10:22 dalek MoarVM: fca699b | jnthn++ | src/strings/unicode_ (2 files):
10:22 dalek MoarVM: Upgrade Unicode DB to Unicode 7.0.
10:22 dalek MoarVM:
10:22 dalek MoarVM: No regressions in NQP or Rakudo tests/spectests from doing this.
10:22 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/fca699ba1c
10:30 Ven joined #moarvm
10:40 harrow joined #moarvm
11:11 Ven joined #moarvm
15:13 dalek MoarVM: d1b3b9e | moritz++ | src/6model/serialization.c:
15:13 dalek MoarVM: Include module that asked for stale dependency in error message, skids++
15:13 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/d1b3b9e186
15:13 timotimo huh? it was that easy? god damn it
15:13 timotimo i've tried to build that exact feature long ago and had a really hard time
15:13 timotimo moritz++
15:14 moritz timotimo: skids++ did the patch, I merely applied it
15:15 timotimo oh!
15:15 timotimo skids++ indeed!
15:28 dalek MoarVM/param-is-rw: 6ecb161 | FROGGS++ | src/core/nativecall.c:
15:28 dalek MoarVM/param-is-rw: move decont for non-NativeRefs from nqp to moar
15:28 dalek MoarVM/param-is-rw: review: https://github.com/MoarVM/MoarVM/commit/6ecb1618b6
15:30 jnthn FROGGS: That'll get you some wonderfully corrupt VM state if anybody passes a Proxy along, I'm afraid.
15:31 FROGGS :o(
15:31 jnthn FROGGS: You can guard it with fetch_never_invokes, which will get you a cleaner failure mode if a Proxy is passed in
15:31 FROGGS then I need to leave it in nqp and have a better check there
15:32 jnthn Yeah, writing it all out in C is...a pain.
15:32 FROGGS yeah, I thought this was a sane choice, but yeah, did not thought of proxies
15:33 jnthn *nod*
15:33 jnthn And I think we use Proxy in some places in NativeCall
15:33 FROGGS what could I do here? https://github.com/perl6/nqp/compare/param-is-rw
15:34 FROGGS I wanna say: unless $obj is NativeRef { ...
15:34 jnthn nqp::iscont_[ins]
15:34 jnthn You'd have to check against the three
15:35 jnthn But they're pretty cheap
15:35 FROGGS ahh, that's what I (under wrong assumptions) did in moar
15:35 FROGGS silly me :o)
15:37 FROGGS okay, with the changes I am doing now I'll probably be happy
15:38 FROGGS I'll add more tests then and handling for all types
15:38 Ven joined #moarvm
15:39 FROGGS hmpf, I'd need a new stage0 for iscont_[ins] :/
15:40 jnthn We haven't rebootstraught for a while, so... :)
15:40 FROGGS troo
15:41 FROGGS bbiab
15:52 Ven joined #moarvm
15:54 timotimo quick, put in a few more optimizations before the stage0 update!
15:56 FROGGS :P
15:56 FROGGS nice, everything passes still
15:57 FROGGS need to add more tests :o)
16:10 zakharyas joined #moarvm
16:19 Ven joined #moarvm
16:29 Ven joined #moarvm
17:08 Ven joined #moarvm
18:41 dalek MoarVM: 3eac8ba | FROGGS++ | src/ (4 files):
18:41 dalek MoarVM: handle 'is rw' params in native calls
18:41 dalek MoarVM:
18:41 dalek MoarVM: We pass these arguments off as pointers to their given type, and therefore
18:41 dalek MoarVM: allocate, let the C function write to it, fetch the written value and store
18:41 dalek MoarVM: it in our variable after the call was made.
18:41 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/3eac8ba2c5
19:03 vendethiel joined #moarvm
19:08 brrt joined #moarvm
19:08 brrt \o
19:09 jnthn o/ brrrt
19:09 jnthn uh, brrt
19:09 brrt :-)
19:09 brrt how are things going? i'll be here only shortly
19:09 * jnthn stashes that one away for "speak like a pirate" day
19:10 jnthn Fine here. :) And you?
19:10 brrt alright. finally getting some rest with the easter weekend
19:11 jnthn Sounds good :)
19:12 brrt just in time too
19:12 brrt speaking of which
19:12 brrt also, speaking of the many-mmaps-issue
19:13 brrt there is also the possibility of just allocating a whole bunch of +wx frames ahead of time
19:13 brrt however....
19:14 brrt (and then using atomic updates to get an entire block at a time)
19:14 brrt we do have to note that mprotect() ing only works with whole pages
19:15 brrt bascially, insofar as we can live with rwx memory, this is simple
19:15 brrt otherwise you need to know the page size in use
19:24 brrt i wonder if timotimo ever got anywhere with the devirt-repr-ops branch
19:25 jnthn About the allocate a whole bunch ahead of time - the allocator gets messy
19:25 jnthn 'cus JITted code can be GC#d.
19:28 brrt right... i didn't even have a destroy function onceupon a a time
19:28 brrt i'm off now
19:28 brrt rats demand attention
19:29 jnthn Rats!
19:29 jnthn Have a nice easter :)
20:02 timotimo devirt-repr-ops was held still by the mysterious build failure that came up when i had that one compilation for that one op enabled
20:03 jnthn Was that after you fixed the bad gurad removal thing we discussed?
22:15 ggoebel joined #moarvm

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