01:19
tokuhiro_ joined
01:29
colomon joined
01:34
colomon joined
01:45
tokuhirom_ joined
02:15
tokuhiro_ joined
02:43
tokuhirom_ joined
02:44
colomon joined
02:57
colomon joined
03:13
dalek joined
05:29
tokuhirom_ joined
06:42
Ven joined
06:48
FROGGS joined
|
|||
dalek | arVM/even-moar-jit: 473f005 | brrt++ | 3rdparty/dynasm: Fix another miscompile Of OPTREX bytes there should also be just one. |
07:23 | |
07:51
ShimmerFairy joined
07:57
kjs_ joined
08:06
Ven joined
08:07
kjs_ joined
08:17
brrt joined
|
|||
brrt | good * | 08:17 | |
the previous commits should almost fix autocasting, but we still get a segv | |||
also | |||
timotimo | hey brrt | ||
i've recently had big integer arithmetic on my mind a little bit | |||
brrt | i don't really think we need to autocast consts; we may just propagate sizes | ||
tell me about it :-) | 08:18 | ||
timotimo | how's our plan currently looking? | 08:19 | |
i guess we can sort-of easily get to "only actually allocate an Int object at the very end" from where we are now | |||
just using spesh | |||
can we generate good fast-path code that just holds the smallbigints directly in integer registers and does computations on them with a lot of (probably cheap) checks to make it jump into a full-blown bigint computation path? | 08:20 | ||
does that even seem worthwhile? | |||
i may be a bit incoherent; sickness is keeping me on very little sleep - none in today's case :( | 08:21 | ||
brrt | that seems very worthwile | 08:27 | |
worthwhile | |||
timotimo | also, i really shouldn't have dropped work on deoptimization bridges instantly like i did when i last thought about that | 08:28 | |
brrt | however, the thing that makes it a jitty-thing, is that the c-languages don't export overflow flags | ||
timotimo | yeah | ||
brrt | i.e. there is no way to do a calculation and have it say 'oops this overflowed, need to switch to bigint semantics' | ||
timotimo | that's where the checks come in | ||
brrt | well, those checks are jit checks, is the thing | 08:29 | |
timotimo | we'd have to look-before-you-leap | ||
last i checked our smallbigints are 32bit integers, right? | |||
so addition and subtraction will give us easy overflow checks if we do the arithmetic itself in 64bit ints | |||
division shouldn't be able to underflow on int-int cases | 08:30 | ||
and for multiplication i think all you have to do is add up the most significant bit's position of both operands? | |||
modulus trivially works fine | |||
shifts are easy to check, too | 08:31 | ||
a good benchmark for this stuff would be interesting; there's also still the stepping-stone of directly emitting the smallbigint calculation code into the jitted code rather than calling to the C functions all the time | |||
we'd been planning to get that anyway | 08:32 | ||
i'll try to sleep again, hopefully getting a bit of rest now | 08:40 | ||
i also feel a bit frustrated from the even-moar-jit effort not really letting me contribute much any more :| | 08:43 | ||
brrt | sorry, was off for a bit | 08:52 | |
oh, well, *ahem* | |||
that is my fault, of course | |||
i've left it in a 'almost-working-but-broken-state' | |||
can you tell me how that would work, add up the msb of both operands..... | 08:53 | ||
08:53
Ven joined
|
|||
brrt | hmmmm | 08:53 | |
ok, i see what you mean | |||
i see how that is simpler than my naive plan | 09:01 | ||
(fwiw, my naive plan would be: clone the graph and rewrite bigint ops into int ops, and have them check for overflow *after* the calculations | 09:02 | ||
timotimo: if you want, i can probably figure out a way for you to contribute :-) | 09:07 | ||
have you seen the new tile-writing documentation | |||
i've been busy trying to rewrite / refactor the tiler-table-generator into Understandable Perl | |||
and one of the things i want to do is mark tiles with the 'parameters' that should be passed to the function | 09:17 | ||
the thing is, most of what needs to be done is currently plumbing | 09:20 | ||
09:22
Ven joined
09:24
kjs_ joined
|
|||
brrt | and debugging | 09:37 | |
(to the tune of ballmer: debuggers debuggers debuggers debuggers... xx 100) | |||
09:39
edehont joined
09:45
FROGGS joined
|
|||
brrt wonders if dynasm has turned into more of a loss than a gain now | 09:53 | ||
10:14
rarara_ joined
10:21
kjs_ joined
10:42
FROGGS joined
|
|||
FROGGS | :S | 11:15 | |
brrt | well, it's not that serious. it's just that we're using it in a pessimal case | 11:16 | |
11:19
Ven joined
|
|||
FROGGS | well, but you can always improve on it no? | 11:20 | |
brrt | no, that's not what i mean | ||
dynasm is basically ideal if you have long sequences and you fill in a few bits here and there | |||
FROGGS | I mean, sometimes it is important to get a good onramp effect before thinking about the most optimal solution | ||
brrt | we have all sorts of small, short sequences that have to be extensively modified in practice | ||
FROGGS | hmmm | ||
brrt | but yeah, i can see how we could create an interface-compatible clone some day in the feature | 11:21 | |
future | |||
FROGGS | so we are not dynasms target audience | ||
brrt | haha | ||
no | |||
not anymore | |||
FROGGS | I see :o) | ||
brrt | anyway, i hope to have even-moar-jit mergeable by Christmas | 11:27 | |
i'd hoped to have it mergable by halloween, but that seems unlikely | 11:28 | ||
11:30
tokuhirom_ joined
11:47
Ven joined
12:13
kjs_ joined
12:45
tokuhirom_ joined
13:05
zakharyas joined
13:13
Ven joined
13:59
tokuhirom_ joined
14:03
Ven joined
|
|||
hoelzro | o/ #moarvm | 14:32 | |
nwc10 | \o hoelzro | 14:33 | |
hoelzro | o/ nwc10 | 14:40 | |
14:57
ggoebel2 joined
15:00
diakopte1 joined
15:01
zakharyas joined
15:14
_longines_ joined
15:15
colomon joined
|
|||
[Coke] | Hey. Um. is there a moarvm release this month yet? | 15:26 | |
Can anyone other than jnthn++ do that? | |||
15:39
kjs_ joined
|
|||
lizmat | I think FROGGS can ? | 15:44 | |
15:46
tokuhiro_ joined
|
|||
[Coke] | ok. that's a blocker on a birthday release. | 15:48 | |
15:50
dalek joined,
colomon joined
|
|||
lizmat | if nobody can do a MoarVM release, then I guess we'll have to wait until next week :-( | 15:57 | |
16:11
Ven joined
16:47
synbot6 joined,
tokuhiro_ joined
16:56
zakharyas joined
17:03
tokuhirom_ joined
17:21
ggoebel joined
17:24
leont joined
17:27
FROGGS joined
18:17
vendethiel joined
18:34
kjs_ joined
|
|||
[Coke] | so, the instructions seem super easy; anyone have access to upload a tarball? | 18:34 | |
diakopter, do you have access for that? | 18:35 | ||
FROGGS | ohh ups | 18:47 | |
still nobody can AFAIK | 18:48 | ||
dalek | arVM: 4f9d381 | coke++ | docs/ChangeLog: Add changelog entries for last month |
||
[Coke] | SFAIK, the only thing that actually needs the uploaded tarball is macports. | 18:49 | |
18:49
tokuhiro_ joined
|
|||
[Coke] | NQP just needs a tag. | 18:49 | |
so, I'm just going to pull the trigger, we can get the tarball uploaded after the fact. | |||
dalek | arVM: 429ce74 | coke++ | VERSION: prep for 2015.10 release |
19:03 | |
FROGGS | [Coke]++ | 19:06 | |
19:19
tokuhirom_ joined
19:47
flussence joined
19:53
zakharyas joined
20:47
kjs_ joined
20:50
tokuhiro_ joined
21:50
tokuhirom_ joined
21:57
zakharyas joined
22:18
tokuhiro_ joined
23:10
tokuhirom_ joined
|