01:48
ilbot3 joined
06:16
colomon_ joined
07:28
zakharyas joined
07:31
Ven joined
07:34
FROGGS joined
07:36
brrt joined
|
|||
dalek | arVM/even-moar-jit: 4a3e2cf | brrt++ | src/jit/ (2 files): Copy is not a regular tile And even if it where, it should use a proper copy of the selected value. |
07:37 | |
07:39
lizmat joined
|
|||
brrt | that fixes one crash at least | 07:41 | |
(we can now actually run JIT code, a bit) | 07:42 | ||
JimmyZ | brrt++ | ||
07:47
lizmat joined
07:48
colomon joined
07:51
lizmat joined
08:34
Ven joined
08:42
lizmat joined
|
|||
JimmyZ | timotimo: do you mind if I do s/push/push_i/g of from_to in your branch? | 08:54 | |
08:55
colomon joined
09:14
brrt joined
|
|||
timotimo | please feel free :) | 09:47 | |
though ... where does the type of the list_i come from? | 09:53 | ||
09:56
lizmat joined
|
|||
JimmyZ | timotimo: looks like you branch is based on even_moar_jit branch | 09:59 | |
09:59
colomon joined
10:13
lizmat joined
|
|||
timotimo | yes | 10:14 | |
10:28
colomon joined
10:29
zakharyas joined,
Peter_R joined,
JimmyZ joined,
psch joined
10:30
dalek joined,
synbot6 joined,
camelia joined,
_longines joined
10:32
synbot6 joined,
camelia joined,
_longines joined
10:33
dalek joined
|
|||
JimmyZ | timotimo: pushed | 10:44 | |
timotimo | it looks like you moved some variable definitions away from the beginning of the block | 10:46 | |
er | |||
no, i read the colors wrong | |||
i wonder if we should keep the argument to the op that selects the type of list to initialize | 10:47 | ||
JimmyZ | not sure ,the type in nqp is repr NFA | 10:49 | |
well, from the code, i think is no | 10:50 | ||
oh, it is yes | 10:52 | ||
timotimo: after look at it again, I 'd say no, we don't need it | 10:56 | ||
it only for from_statelist | 10:57 | ||
timotimo | yeah | 10:59 | |
if you want to, you can patch that, too :) | |||
11:21
lizmat joined
|
|||
dalek | arVM/nfa_to_statelist: bd8bd41 | (Jimmy Zhuo)++ | / (6 files): remove a useless arg |
11:22 | |
11:29
Ven joined
11:31
FROGGS joined
|
|||
timotimo | only the difficult part remains :| | 11:44 | |
figuring out where to put the "throw out statelist" and "recreate statelist" operations | |||
11:49
lizmat joined
|
|||
timotimo | src/jit/x64/tiles.dasc:128:57: warning: format specifies type 'int' but the argument has type 'MVMJitExprNode' | 11:58 | |
(aka 'long') [-Wformat] | |||
MVM_oops(tc, "Unsupported load size: %d\n", args[0]); | |||
should we change something here? | |||
it potentially wants to be ->size? | |||
hm, it seems like we expect those numbers to be 1, 2, 4 or 8 | 11:59 | ||
so it won't be a big problem | |||
12:34
lizmat joined
12:36
brrt joined,
Ven joined
|
|||
brrt is going to do some union-busting next | 12:36 | ||
timotimo | o/ | 12:37 | |
dalek | arVM/nfa_to_statelist: ffad694 | timotimo++ | src/jit/core.expr: implement if_i |
12:38 | |
arVM/nfa_to_statelist: 3d2f0f3 | timotimo++ | src/jit/x64/tile (3 files): have tiles for (n)equal (g/l)(than/equal) |
|||
timotimo | ^- hoping this isn't wrong :) | ||
12:44
Ven joined
|
|||
timotimo | brrt: do you think it'll be a good idea to throw out all the c function calls from graph.c if they've been translated to the expr list? | 12:52 | |
brrt | not yet | ||
eventually, yes | |||
timotimo | will it reduce moarvm's binary size? | 12:53 | |
brrt | i am one dumb son of a .... feminine canine | 12:54 | |
yes, removing it will reduce the memory size. i'm not sure if it will be a net benefit, since we'll offset it with the memory for templates | 12:55 | ||
but we're talking kilobytes, at best | |||
or worst | 12:56 | ||
i do hope it'll be a bit more hackable, less limited | 12:57 | ||
timotimo | OK | 12:58 | |
but this is code size, so we measure it against the instruction cache, which is small | 12:59 | ||
brrt | that is true | ||
timotimo | and templates are data which a small-ish bit of code works on | ||
brrt | yes | ||
i do hope that offsets the added complexity | |||
timotimo | i hope so, too | ||
brrt | actually, algorithmically the complexity is quite limited | ||
i've intentionally used only very simple data structures :-) | |||
timotimo | that does sound nice, yeah | 13:03 | |
brrt | off, by, one | 13:11 | |
i'm a dumbass :-) | 13:14 | ||
dalek | arVM/even-moar-jit: 7708b8d | brrt++ | src/jit/ (3 files): Malloc GPR buffer This caused an off-by-one because in POSIX ABI there are 9, not 8, volatile registers we use. |
13:19 | |
timotimo | do we still crash when compiling and running some of the generated code? | 13:28 | |
oh | |||
i pushed the tiles and stuff to the wrong branch | 13:29 | ||
dalek | arVM/even-moar-jit: c7047ea | timotimo++ | src/jit/core.expr: implement if_i |
13:32 | |
arVM/even-moar-jit: 966b091 | timotimo++ | src/jit/x64/tile (3 files): have tiles for (n)equal (g/l)(than/equal) |
|||
13:37
lizmat joined
|
|||
timotimo | "Could not take register even after spilling" | 13:42 | |
13:44
Ven joined
|
|||
brrt | working on it | 13:46 | |
:-) | |||
timotimo | cool! | ||
brrt | yeah, that's not the same as 'it has been fixed', though :-) | 13:47 | |
timotimo | right | 13:49 | |
dalek | arVM/nfa_to_statelist: 134a35b | (Jimmy Zhuo)++ | src/6model/reprs/NFA.c: only pop 2 |
13:59 | |
timotimo | good catch | 14:07 | |
JimmyZ: mind if i rebase nfa_to_statelist onto even-moar-jit or perhaps master? | 14:11 | ||
JimmyZ | timotimo: go ahead :) | 14:13 | |
dalek | arVM/nfa_to_statelist: c9280de | timotimo++ | / (8 files): implement nfatostatelist isn't correct yet; something about temp roots is wrong |
14:17 | |
arVM/nfa_to_statelist: 36c420e | (Jimmy Zhuo)++ | src/6model/reprs/NFA.c: allocate intarray instead of array |
|||
arVM/nfa_to_statelist: 4f585f7 | (Jimmy Zhuo)++ | / (6 files): remove a useless arg |
|||
MoarVM/nfa_to_statelist: 1d13ec4 | (Jimmy Zhuo)++ | src/6model/reprs/NFA.c: | |||
timotimo | i git push -f'd this to make things a bit simpler | ||
14:19
lizmat joined
|
|||
brrt | you can rebase if you want | 14:22 | |
timotimo | too late, i already did :) | 14:23 | |
but only the nfa_to_statelist branch | |||
which i don't expect you're working with at all, except when i asked you to help me with it :) | |||
brrt | yes, and by the time i was back, jnthn and JimmyZ had already fixed it :-) | ||
timotimo | right | 14:24 | |
JimmyZ | what did I fix...? | ||
timotimo | you fixed that i forgot to put the & in front of the things i pushed onto the temp roots | 14:25 | |
or was that jnthn? i think it was you | |||
JimmyZ | he said, and I pushed :P | 14:26 | |
timotimo | tthat's good enough for me ;) | 14:27 | |
14:44
lizmat joined
14:48
colomon joined
15:14
Ven joined
|
|||
brrt | damnit, somehow i'm trying to free an unassigned register | 15:22 | |
timotimo | i'm trying to take a localref of an object register :| | 15:27 | |
brrt | wohoooooow, no crashes so far, just an infinite loop :-) | 15:31 | |
oh, i see | 15:32 | ||
hmm | |||
oh, damn, i see now | 15:33 | ||
FROGGS | m: for 1..3 { last; FIRST { say "hello $_" }; say "ohh $_" } | 15:36 | |
camelia | rakudo-moar eb6de6: OUTPUT«hello 1» | ||
FROGGS | ww | ||
15:59
Ven joined
16:11
lizmat_ joined
16:34
TimToady joined
16:47
FROGGS joined
17:20
lizmat joined
17:31
FROGGS joined
18:56
Ven joined
20:16
FROGGS joined
20:26
colomon joined
|
|||
dalek | arVM: 09039bb | hoelzro++ | src/io/procops.c: Make sure we clean up the stdin handle when a process dies If I spawn a process with an open stdin handle, I don't explicitly close its stdin, and that process exits, that handle is never closed. This can result in a program exceeding its file descriptor limit |
21:37 | |
hoelzro | i1.kym-cdn.com/photos/images/origin.../2vA1a.png | ||
timotimo | excellent, you found the mutex you need | 21:39 | |
japhb | Woah, 09039bb might actually explain at least one of my crash modes | 21:41 | |
timotimo | \o/ | ||
hoelzro | yaaaay | 21:42 | |
I'm helping! | |||
japhb | There was any doubt? :-) | 21:45 | |
22:42
TEttinger joined,
rarara joined
|
|||
[Coke] | brrt: Your name came up in the Q and A today. | 22:58 |