01:48
evalable6 joined
02:58
ilbot3 joined
06:40
domidumont joined
07:26
domidumont joined
07:32
robertle joined
07:40
brrt joined
|
|||
brrt | good . | 07:40 | |
yoleaux | 3 Mar 2018 12:50Z <MasterDuke> brrt: i did actually try re-writing it to `(template: ishash (if (all (nz $1) (eq (^getf (^repr $1) MVMREPROps ID) (const ("E MVM_REPR_ID_MVMHash) int_sz))) (const 1 int_sz) (const 0 int_sz)))`, but it still give an MVM_oops in the same spot | ||
3 Mar 2018 17:03Z <nine> brrt: in general, higher level semantics (like a STORE_WRITE_BARRIER) make it easier for a compiler to apply optimizations, so I'd favor that. | |||
brrt | .tell MasterDuke yeah I'm seeing it. I really wonder how you're getting a CAST_LOAD_ADDR from that | 07:41 | |
yoleaux | brrt: I'll pass your message to MasterDuke. | ||
brrt | nine: I've swung back on that, mostly because a STORE_WRITE_BARRIER operator node needs an associated tile | ||
and that associated tile needs the same kind of handling that CALL/CALLV does, except 'magical' | 07:42 | ||
which is a pain, currently | |||
I kind of want to generalize that but it's not easy | |||
on the other hand, having 'named partial templates' isn't exactly hard to do, and it is a nice generalization from the macro concept, I think | 07:43 | ||
07:54
AlexDaniel joined
|
|||
samcv | jnthn: it seems that MVM_string_decode is not used once in our codebase except in io/dirops.c | 08:00 | |
though i don't think it can be triggered unless you try and decode a directory as windows-1252, there is a bug where \r\n won't decode into a single grapheme. at least from reading the code it doesn't do anything with that | 08:01 | ||
ok well it actually may working looking at it closer. but regardless it isn't tested | 08:05 | ||
anyway i will see if i can unify some of the code there | 08:09 | ||
08:13
brrt joined
08:17
zakharyas joined
08:19
brrt joined
08:22
zakharyas joined
08:27
domidumont joined
|
|||
samcv | ah oops i guess i missed where it was being called. it's getting late | 08:36 | |
nwc10 | "insufficiently morning"? | 08:38 | |
They respawn daily | |||
brrt | good hi :-) | 08:43 | |
nwc10 | there's this strange cross symbol appeared at the start of temperatures - does anyone know what it means? :-) | 08:44 | |
(this joke is somewhat Euro-centric) | 08:45 | ||
and might not be funny :-) | |||
brrt | a symbol like '+' ? | 08:48 | |
nwc10 | yes, that's the one. | 08:50 | |
most unusual | |||
09:17
AlexDani` joined
09:54
Geth joined
10:16
quotable6 joined,
nativecallable6 joined,
bisectable6 joined,
greppable6 joined,
evalable6 joined,
benchable6 joined,
reportable6 joined
11:13
yoleaux joined
11:45
shareable6 joined
11:59
brrt joined
12:23
brrt joined
12:33
buggable joined
13:46
Ven`` joined,
zakharyas joined
13:58
domidumont joined
14:04
AlexDaniel joined
14:18
zakharyas joined
14:37
zakharyas joined
14:48
domidumont joined
14:55
zakharyas joined
14:57
TimToady joined
15:01
greppable6 joined
15:32
bisectable6 joined
15:33
zakharyas joined
15:55
reportable6 joined
15:57
reportable6 joined,
quotable6 joined
15:59
reportable6 joined
16:05
nativecallable6 joined
16:08
brrt joined
16:13
releasable6 joined
16:40
Kaiepi joined
17:06
bisectable6 joined
17:23
Kaiepi joined
17:31
domidumont joined
18:15
zakharyas joined
18:45
Ven`` joined
19:05
Ven`` joined
19:16
Kaiepi joined
19:17
Ven`` joined,
reportable6 joined
19:30
zakharyas joined
19:34
zakharyas joined
19:57
Ven`` joined
20:04
zakharyas joined
20:17
Ven`` joined,
brrt joined
|
|||
brrt | ohai #moarvm | 20:19 | |
interestingly, changing the order of the store and the write barrier breaks NQP compilation, even though it really shouldn't | 20:20 | ||
nwc10 | does valgrind have anything to say about this? | 20:24 | |
brrt | good question | 20:30 | |
lizmat | and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2018/03/05/...atic-perl/ | 20:36 | |
20:37
Ven`` joined
20:42
Ven`` joined
21:01
Ven`` joined
21:11
Kaiepi joined
21:21
Ven`` joined
21:24
brrt joined
21:27
evalable6 joined
|
|||
brrt | good * | 21:30 | |
lizmat++ weekly | |||
timotimo | lizmat++ # weekly | 21:47 | |
21:49
robertle joined
|
|||
brrt | the bug with changing the order of the write barrier manifests in a gigantic jit file | 22:03 | |
timotimo | do we perhaps want an env var JIT_MAX_SIZE :) | 22:05 | |
so perhaps it takes a bit longer to trigger the bug, but then at least the jit code will not be huge | 22:06 | ||
brrt | hehe | 22:07 | |
let a million env vars bloom | |||
I see a set that's eliminated o.O | 22:17 | ||
timotimo | so the set operation doesn't exist any more but it's in the jit output? | ||
brrt | (i was also wondering if we could, maybe, compile 'happy paths' through the frame, if we can't compile it all; then I figured that would be reinvention of tracing) | 22:18 | |
no, there should be a 'set', but it was eliminated entirely by the expression compiler | |||
timotimo | ah | 22:19 | |
22:24
releasable6 joined
|
|||
brrt | we're having a sp_p6ogetvt_o of a VMNull object. curious | 22:32 | |
oh, and another case of double restoring | 22:33 | ||
i'm surprised by how much inefficiency is generated by the spilling of the allocator | 22:45 | ||
and surprised how correctly it all works | |||
(except for where it's broken, of course) | |||
xb | |||
timotimo | is it much worse than the lego jit? | ||
brrt | it's different worse | 22:46 | |
timotimo | interesting | ||
can you elaborate a little bit? | |||
brrt | well, the lego jit just endlessly, mindlessly loads the same things to and fro memory | ||
timotimo | right | ||
brrt | the expr jit can end up spilling, then restoring just after | ||
that's a case of a known optimization that i haven't applied yet | 22:47 | ||
see you tomorrow | 22:48 | ||
timotimo | OK :) | ||
23:11
Ven`` joined
|