Camelia, the Perl 6 bug

IRC log for #moarvm, 2013-07-07

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

All times shown according to UTC.

Time Nick Message
01:00 FROGGS_ joined #moarvm
02:00 FROGGS__ joined #moarvm
06:15 dwoldrich joined #moarvm
06:52 FROGGS__ joined #moarvm
08:47 colomon joined #moarvm
11:12 FROGGS joined #moarvm
11:49 jlaire joined #moarvm
12:31 dalek MoarVM/container: 18e62b3 | jnthn++ | src/6model/serialization.h:
12:31 dalek MoarVM/container: Fix a thinko.
12:31 dalek MoarVM/container: review: https://github.com/MoarVM/MoarVM/commit/18e62b3ecd
12:31 dalek MoarVM/container: 67ddc77 | jnthn++ | src/core/coerce.c:
12:31 dalek MoarVM/container: Revert "small refactor in coerce.c"
12:31 dalek MoarVM/container:
12:31 dalek MoarVM/container: This reverts commit 15a1e63c0c49208011869365168e5c5b41a4c4cc. The
12:31 dalek MoarVM/container: original was correct. The refactor takes a pointer into the C stack
12:31 dalek MoarVM/container: and keeps hold of it beyond the function returning, which means junk
12:31 dalek MoarVM/container: will be found there in the future.
12:31 dalek MoarVM/container: review: https://github.com/MoarVM/MoarVM/commit/67ddc77ab4
12:32 birdwindupbird joined #moarvm
12:49 JimmyZ \o/ MoarVM stuff!
12:53 jnthn :)
12:53 benabik joined #moarvm
12:54 * JimmyZ can't understand 67ddc77ab4 :(
12:55 JimmyZ C pitfalls?
12:55 jnthn static int *x; void bar() { int foo; x = &foo; }
12:55 jnthn The patch did that, basically.
12:56 jnthn & means "address of"
12:56 jnthn If you take the address of a local variable, you get a pointer into the system stack
12:56 JimmyZ oh oh
12:56 jnthn Which is OK provided that pointer is never used beyond the point the function returns.
12:56 jnthn But here it was being stored.
12:56 jnthn So you point to whatever value happens to be on the stack.
13:00 jnthn JimmyZ: Did you test the container stuff?
13:01 dalek Heuristic branch merge: pushed 37 commits to MoarVM/container by jnthn
13:01 * jnthn just brought the branch up to date with latest
13:02 jnthn hm, I guess not given we're missing a setcontspec op :)
13:06 JimmyZ jnthn: nope, and mutex_container_registry lacks init_mutex, and it may be better to put it to tc->instance, as diakopter said
13:06 jnthn ok
13:10 JimmyZ hmm, so init_code_pair_arg_callsite in container  should be refacted, just like 67ddc77ab4?
13:10 jnthn yes, just noticed that is wrong too
13:11 jnthn Hm, various things are wrong in here, though...
13:12 JimmyZ jnthn, how do you think about https://github.com/MoarVM/MoarVM/c​ommit/15a1e63c0c49208011869365168e​5c5b41a4c4cc#commitcomment-3427470
13:15 jnthn I guess it's correct-ish, apart from I can't think of any way for that to actually go wrong even if two threads do race there.
13:15 jnthn I mean, they're writing the same values to the same places in the same order.
13:16 dalek MoarVM/container: 030d73b | jnthn++ | src/6model/containers.c:
13:16 dalek MoarVM/container: Missing write barriering of assigns.
13:16 dalek MoarVM/container: review: https://github.com/MoarVM/MoarVM/commit/030d73bf22
13:17 jnthn oops
13:17 dalek MoarVM/container: 7895902 | jnthn++ | src/6model/containers.c:
13:17 dalek MoarVM/container: Missing write barriering of assigns.
13:17 dalek MoarVM/container: review: https://github.com/MoarVM/MoarVM/commit/7895902955
13:18 jnthn :)
13:21 JimmyZ jnthn: I still can't find where gc_free_data or code_pair_gc_free_data be called, am I lost? :P
13:21 jnthn JimmyZ: Just that freeing STables ins't implemented in the gc yet
13:21 JimmyZ ah
13:22 jnthn But comments like that end up outlasting such things, then causing confusion in the future. So it's better not to write them :)
13:22 tadzik so, gc is unSTable? :P
13:22 jnthn yes :P
13:23 dalek MoarVM/container: 5ea5ff6 | jnthn++ | src/6model/ (2 files):
13:23 dalek MoarVM/container: Container fetch should receive target register.
13:23 dalek MoarVM/container:
13:23 dalek MoarVM/container: This should fix the code pair fetch, at least once the decont op is
13:23 dalek MoarVM/container: implemented properly.
13:23 dalek MoarVM/container: review: https://github.com/MoarVM/MoarVM/commit/5ea5ff6742
13:25 jnthn Yes, diakopter++ is right about the cont registry wanting to hang off instance.
13:25 JimmyZ diakopter++
13:37 jnthn Will try and sort that out a bit later... :)
13:53 diakopter hi
14:02 JimmyZ hi
14:02 JimmyZ yeah, it's a C pitfalls!
14:06 ggoebel joined #moarvm
14:32 jnthn o/ diakopter
15:21 itz_ joined #moarvm
16:18 birdwindupbird joined #moarvm
16:26 FROGGS joined #moarvm
19:58 diakopter o
20:00 sorear /
20:02 diakopter sorear: :)
20:15 colomon joined #moarvm
20:27 * diakopter considers caching function pointer offsets o_O
20:28 diakopter nm. ASLR.
20:28 diakopter duh.
20:29 diakopter well now wait a second. the compiler can do it for us.
20:37 colomon joined #moarvm
21:02 itz joined #moarvm
21:06 diakopter jnthn: you still around?
21:30 masak I expect he'll be back soonish.
21:35 lizmat_ joined #moarvm
22:08 * jnthn expected soonisher, but...Swedish railways :)
22:10 diakopter jnthn: howdy
22:11 jnthn o/
22:13 sorear What about Swedish railways?
22:14 jnthn sorear: My 10 minute journey home became a rather longer one.
23:02 dalek MoarVM/extops: dac61b4 | diakopter++ | docs/extops.markdown:
23:02 dalek MoarVM/extops: incorporate changes/simplifications based on discussion with jnthn++ last week
23:02 dalek MoarVM/extops: review: https://github.com/MoarVM/MoarVM/commit/dac61b4f33
23:02 diakopter jnthn: ^
23:05 diakopter er. two weeks ago..   !
23:27 jnthn Doesn't time fly...
23:28 jnthn wow, big diff
23:28 jnthn It's probably easier to read the whole thing again :)
23:28 diakopter :D
23:28 * diakopter decommutes&
23:28 jnthn It's late her now, will do that tomorrow
23:28 jnthn *here
23:50 cognominal joined #moarvm

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