08:27
dalek joined
08:28
zakharyas joined
09:13
rurban joined
|
|||
JimmyZ | morning, jnthn | 09:21 | |
jnthn: gist.github.com/zhuomingliang/78fa...16d2d5a890 is it right? added 3 MVM_ASSIGN_REF | 09:22 | ||
jnthn | Certainly ot. | 09:24 | |
*not | |||
Well, the first one you added is obviously wrong | |||
Just by looking at the pointer type. | 09:25 | ||
JimmyZ | oh, yes | ||
jnthn | MVMObject ** is not a GC-able thing, it's a C array of GC-able things. | ||
And I'm not sure the extra whitespace is warranted. | |||
JimmyZ | and how about the other two? | ||
09:26
kjs_ joined
|
|||
jnthn | The lifting of the STABLE(obj) is OK, though, but elsewhere in the code we normally just call such vars "st" | 09:26 | |
Second one is certainly wrong too | 09:27 | ||
MVMFrame * is *not* a GC-able thing either. | |||
The static_info one is correct, however. | |||
Though note the cast to MVMObject* could go away in favor of something more like sf->common.header | 09:28 | ||
JimmyZ | oh, it's MVMStaticFrame! | ||
jnthn | Yes, MVMStaticFrame is an MVMObject. | 09:29 | |
But MVMFrame is not. | |||
JimmyZ | yeah | ||
jnthn | So anyway, only one out of three of these should be added. :) | ||
JimmyZ | I still don't why sf->common.header is better? | 09:30 | |
jnthn | Because it avoids a cast. | ||
JimmyZ | jnthn: irclog.perlgeek.de/moarvm/2015-01-01 I added some explaintion | 09:31 | |
jnthn | Yeah, I'm still uncomfortable with the idea. I think partly because it makes termination harder to reason about... | 09:35 | |
JimmyZ | but call something like optimize_set etc is not good too :( | 09:39 | |
everywhere... | 09:40 | ||
jnthn | I'm not sure we should be doing that. | 09:41 | |
dalek | arVM: 5149e5d | (Jimmy Zhuo)++ | src/core/interp.c: small refactor, and add a missing MVM_ASSIGN_REF |
10:07 | |
jnthn | JimmyZ: Oh, that patch does something bad. | 10:09 | |
You can't lift the dereferences of obj and ctx above the things thta check for type and concreteness. | 10:10 | ||
Otherwise we can get segfaults. | |||
(that's in the forceouterctx bit) | 10:11 | ||
JimmyZ | hmm, I did make spectest, maybe we have not test to cover it | 10:13 | |
you mean ((MVMCode *)obj)->body.outer = context; ? I tought it's safe if there were eqv | 10:15 | ||
*thought | 10:16 | ||
jnthn | No | ||
MVMFrame *orig = ((MVMCode *)obj)->body.outer; | |||
That | 10:17 | ||
You can't deref obj until *AFTER* if (REPR(obj)->ID != MVM_REPR_ID_MVMCode || !IS_CONCRETE(obj)) { | |||
Otherwise heck knows what memory you're going to be trying to access. | |||
JimmyZ | ah, I didn't seee it .. | ||
jnthn | You've fixed one bug and introduced 2 new ones :/ | ||
We were better off before. | |||
JimmyZ | 2 ? | 10:18 | |
jnthn | Well, 3 if we're going to count all 3 memory accesses you lifted above the if statements :P | 10:19 | |
JimmyZ | yeah | ||
nwc10 | hat trick! | 10:20 | |
jnthn | Anyway, please be careful when re-ordering things. It's nice when we can get things intialized at their point of declaration, and certainly I structure code that way when it's possible, but often correctness doesn't allow it. | 10:21 | |
dalek | arVM: a112b47 | (Jimmy Zhuo)++ | src/core/interp.c: fix potential segfault |
10:23 | |
jnthn | Looks better. JimmyZ++ | ||
JimmyZ | Thanks | 10:26 | |
FROGGS_ | jnthn: when do you think you'll have some time to review and discuss a moarvm branch? | 10:29 | |
jnthn | FROGGS_: Next week. | ||
FROGGS_ | jnthn: will perhaps take 15 to 30 minutes in total I guess | ||
jnthn | (Will have time on Mon or Tue.) | 10:30 | |
FROGGS_ | jnthn: what's your timezone offset these days? | ||
jnthn | Yours + 1. | ||
FROGGS_ | ahh, that's quite nice :o) | ||
jnthn | Yeah, and back to same as you from Mon :) | 10:31 | |
Well, very late Sun, but I'll probably only be useful for sleeping by then :) | |||
FROGGS_ | :o) | ||
okay, then I'll ping you monday afternoon/evening... it is about IO/open/separators | 10:32 | ||
jnthn | OK :) | 10:33 | |
Gone for most of day & | 10:44 | ||
FROGGS_ .oO( enjoying the Most of the day ) | 12:01 | ||
12:56
zakharyas joined
13:46
kjs_ joined
13:47
donaldh joined
14:12
zakharyas joined
15:09
zakharyas1 joined
17:21
pyrimidine joined
18:13
FROGGS__ joined
18:17
kjs_ joined
18:36
tgt joined
18:39
tgt joined
18:43
rurban joined
19:20
kjs_ joined
20:01
tgt joined
|
|||
jnthn | FROGGS__: That comment was a bridge too far... :P | 20:20 | |
FROGGS__ | but I'd do it again :o) | 20:28 | |
TimToady | this is going to be the longest day... | 20:55 | |
jnthn | Gee, the shortest was only a few weeks ago... | 20:56 | |
lizmat wonders how she can sneak in "battle of the bulge" in this conversation | |||
TimToady | Nuts! | 20:57 | |
lizmat | hmmm.... the order is wrong: first the longest day, then a bridge too far, then the battle of the bulge | ||
TimToady | some company probably holds a patton on the correct order | 21:00 | |
jnthn | That sounds overly general... | 21:01 | |
TimToady | I thought that was, like, Ike... | 21:02 | |
21:24
kjs_ joined
22:23
donaldh joined
|