github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm Set by AlexDaniel on 12 June 2018. |
|||
00:06
dalek left
01:40
Kaiepi left
01:59
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke,
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
04:37
lizmat left
05:20
lizmat joined,
p6bannerbot sets mode: +v lizmat
06:32
robertle joined,
p6bannerbot sets mode: +v robertle
07:42
robertle left
09:05
AlexDaniel left
09:27
brrt joined
09:28
p6bannerbot sets mode: +v brrt
09:35
domidumont joined,
p6bannerbot sets mode: +v domidumont
09:56
Geth left
|
|||
brrt | \o | 10:21 | |
I now think most of the issues we're having may be related to signs | 10:22 | ||
10:28
brrt left,
brrt joined
10:29
p6bannerbot sets mode: +v brrt
|
|||
dogbert11 | hello brrt | 10:35 | |
10:35
brrt left
11:53
squashable6 left,
releasable6 left,
statisfiable6 left,
reportable6 left,
bisectable6 left,
unicodable6 left,
bloatable6 left,
undersightable6 left,
shareable6 left,
greppable6 left,
nativecallable6 left,
evalable6 left,
committable6 left,
notable6 left,
quotable6 left,
benchable6 left,
coverable6 left,
nativecallable6 joined,
quotable6 joined,
notable6 joined,
greppable6 joined,
committable6 joined,
evalable6 joined,
coverable6 joined,
bloatable6 joined,
bisectable6 joined,
benchable6 joined,
benchable6 left,
bisectable6 left,
committable6 left,
evalable6 left,
quotable6 left,
releasable6 joined,
reportable6 joined,
unicodable6 joined,
releasable6 left,
reportable6 left,
unicodable6 left,
coverable6 left,
bloatable6 left,
notable6 left,
greppable6 left,
nativecallable6 left
11:54
p6bannerbot left,
p6bannerbot joined,
ChanServ sets mode: +o p6bannerbot
12:40
Kaiepi joined
12:41
p6bannerbot sets mode: +v Kaiepi
13:23
dogbert2_ left
|
|||
timotimo | that's a bad sign? | 13:43 | |
dogbert11 | it's a sign of the times | 13:46 | |
14:13
brrt joined,
p6bannerbot sets mode: +v brrt
14:21
brrt` joined
14:22
p6bannerbot sets mode: +v brrt`
14:23
brrt left,
dogbert2_ joined
14:24
p6bannerbot sets mode: +v dogbert2_,
brrt` is now known as brrt
|
|||
brrt | test case; trunc is dead | 14:44 | |
gist.github.com/bdw/0dd3ece19d8771...2fb7ce1216 | |||
timotimo | nqp-m: gist.github.com/bdw/0dd3ece19d8771...2fb7ce1216 | 14:45 | |
camelia | ERROR at <tmp>:12 (<ephemeral file>:<mainline>) from gen/moar/stage2/NQPHLL.nqp:1685 (/home/camelia/rakudo-m-inst-1/share/nqp/lib/NQPHLL.moarvm:eval) from gen/moar/stage2/NQPHLL.nqp:1928 (/home/camelia/rakudo-m-inst-1/share/nqp/lib/NQPHLL.moarvm:evā¦ |
||
15:09
brrt left
15:10
robertle joined
15:11
p6bannerbot sets mode: +v robertle
|
|||
dogbert11 | hmm, that doesn't look very good | 15:57 | |
dogbert11 tries to figure out when this happened ... | 16:01 | ||
timotimo | use bisectable with a "run" command to invoke nqp-m | 16:03 | |
dogbert11 | is that the way to do it? | 16:08 | |
16:19
zakharyas joined
16:20
p6bannerbot sets mode: +v zakharyas
|
|||
timotimo | it's *a* way to do it :) | 16:21 | |
you could of course do it manually if you like | |||
i wouldn't like it ;) | |||
16:21
zakharyas left
16:22
zakharyas joined
16:23
p6bannerbot sets mode: +v zakharyas
|
|||
dogbert11 | I'm trying manueal ATM and as you write it's not very fun :) | 16:37 | |
16:44
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
|
|||
dogbert11 | perhaps AlexDaniel will solve this quicker but here's what we have so far | 16:45 | |
nqp commit github.com/perl6/nqp/commit/8476ec...9948ca6c67 is broken | 16:46 | ||
I got it wrong immediately github.com/perl6/nqp/commit/8476ec...9948ca6c67 is working but github.com/perl6/nqp/commit/4acf85...2272c3cc7f does not | 16:47 | ||
AlexDaniel | e: chdir āsandboxā; run āwgetā, āgist.githubusercontent.com/bdw/0dd...trunc.nqpā | 16:52 | |
dogbert11 | between the two we have nine's recent work in nqp and MoarVM which doesn't lend itself to bisection | ||
AlexDaniel | c: HEAD chdir āsandboxā; run āwgetā, āgist.githubusercontent.com/bdw/0dd...trunc.nqpā | ||
where are the bots O_o | |||
dogbert11 | perhaps they ran away :) | ||
AlexDaniel | dogbert11: banned | 16:54 | |
dogbert11 | how come | 16:55 | |
MVM_JIT_EXPR_DISABLE=1 seems to resolve the problem | 16:56 | ||
AlexDaniel | timotimo: btw do you know about this? gist.github.com/AlexDaniel/88b38af...3df31dd431 | 16:57 | |
basically it bisects with builds from whateverable, but locally | 16:58 | ||
so you can run any code you need | |||
timotimo | cool, thanks | 16:59 | |
bookmarked | |||
AlexDaniel | I wish somebody turned it into App::Bisect module, or something like that | 17:00 | |
timotimo | CoreHackers may be the right namespace for that | 17:02 | |
AlexDaniel | or that, ya | 17:03 | |
yoleaux | 17:01Z <lizmat> AlexDaniel: I've documented all of my commits for this release (I think) | ||
AlexDaniel | timotimo: ah, also you'll need to read some comments in this file if you decide to use it github.com/perl6/whateverable/blob...on.pm6#L29 | 17:17 | |
lizmat | .ask samcv how hard would it be to create a "nqp::iterleft" op on an nqp::iterator object that would tell you how many elements can still be produced by the iterator | 17:23 | |
yoleaux | lizmat: I'll pass your message to samcv. | ||
lizmat | that would allow us to make all Mappy iterators to easily become PredictiveIterators | 17:24 | |
samcv | lizmat, for hashes specifically? | ||
yoleaux | 17:23Z <lizmat> samcv: how hard would it be to create a "nqp::iterleft" op on an nqp::iterator object that would tell you how many elements can still be produced by the iterator | ||
timotimo | how should it behave when the count is unknown? | 17:25 | |
we could have different "modes" of iterators in the future | |||
lizmat | return -1 ? | 17:26 | |
samcv | lizmat, also i can do that for hashes | ||
yes | 17:27 | ||
lizmat | I mean, if it can be done as a cheap operation... | ||
(very) cheap | |||
samcv | well actually. hmm | ||
lizmat | if not, then just scratch the idea :-) | 17:28 | |
what happens if you do nqp::elems on an nqp hash ? | |||
samcv | we can quickly know how many are in the other buckets but i don't think we know where in the current bucket we are | ||
timotimo | for a hash it might have to count how often it has been iterated so far | ||
samcv | lizmat, that is very fast. it just returns the hash's count in the hash struct | ||
timotimo | because, yeah, you can't easily tell what you're pointing at at the moment | ||
you can, however, just iterate the iterator to the finish line to figure out how long it takes, lol | |||
lizmat | samcv: so maybe an 'nqp::iterdone' op that produces the number values produced ? | 17:30 | |
but I guess you're not keeping that now, are you ? | |||
timotimo | well | 17:31 | |
the first entry in MVMIter is uint32 mode; there's a 32bit wide gap after that before the pointer to the target | |||
and we only have two different modes at the moment anyway :) | |||
oh | |||
fourm odes | |||
samcv | yeah no we don't keep how far we've gone | 17:32 | |
timotimo | in arrays we do, though, because that's how we go from one to the next there :) | ||
"unsigned", is that a 32bit int? | 17:33 | ||
lizmat | gotcha... :-) | ||
samcv: ok, so scratch the idea, it's probably not worth it | |||
timotimo | fwiw, just unbox_i on the iterator could give the number of iterations so far | 17:34 | |
so there doesn't even have to be a new op | |||
17:34
zakharyas left
|
|||
lizmat | hmmm... I don't think we use nqp::iterator on arrays in core | 17:35 | |
it's all based on atpos | |||
timotimo | we probably do if we "for @foo" in nqp code | ||
17:46
virtualsue joined
17:47
p6bannerbot sets mode: +v virtualsue,
virtualsue left
17:50
bisectable6 joined
17:51
p6bannerbot sets mode: +v bisectable6,
committable6 joined,
evalable6 joined,
p6bannerbot sets mode: +v committable6
17:52
p6bannerbot sets mode: +v evalable6,
notable6 joined
17:53
reportable6 joined,
p6bannerbot sets mode: +v notable6,
p6bannerbot sets mode: +v reportable6,
unicodable6 joined
17:54
releasable6 joined,
p6bannerbot sets mode: +v unicodable6,
p6bannerbot sets mode: +v releasable6
|
|||
lizmat | m: my @a = ^10; use nqp; my $i := nqp::iterator(nqp::getattr(@a,List,q/$!reified/)); nqp::while($i,nqp::say(nqp::iterval(nqp::shift($i)))) | 17:55 | |
camelia | This is not an iterator, it's a P6opaque (Scalar) in block <unit> at <tmp> line 1 |
||
lizmat | timotimo: ^^^ what am I doing wrong ? | ||
timotimo | forgot a decont | 17:56 | |
also | |||
i'm not sure nqp::shift($i) returns the iterator itself | |||
17:58
quotable6 joined
|
|||
lizmat | m: my @a = ^10; use nqp; my $i := nqp::iterator(nqp::getattr(@a,List,q/$!reified/)); nqp::while($i,nqp::stmts(nqp::shift($i),nqp::say(~nqp::iterval($i)))) | 17:58 | |
camelia | 0 1 2 3 4 5 6 7 8 9 |
||
lizmat | whee | 17:59 | |
17:59
p6bannerbot sets mode: +v quotable6
|
|||
AlexDaniel | c: HEAD chdir āsandboxā; run āwgetā, āgist.githubusercontent.com/bdw/0dd...trunc.nqpā | 18:00 | |
committable6 | AlexDaniel, gist.github.com/9fc76730444284fcad...221d5f5531 | ||
lizmat | m: my @a = ^10 .reverse; use nqp; my $i := nqp::iterator(nqp::getattr(@a,List,q/$!reified/)); nqp::while($i,nqp::say(~nqp::shift($i))) | ||
camelia | 9 8 7 6 5 4 3 2 1 0 |
||
lizmat | looks like nqp::shift already returns the next value | ||
AlexDaniel | c: HEAD run <nqp-m sandbox/trunc.nqp> | ||
committable6 | AlexDaniel, gist.github.com/accf0a11a05cfa166a...e6e6d09e72 | ||
timotimo | cool | 18:01 | |
in that case, it's probably only necessary for hashes | |||
or maybe even in that case you just need iterkey | 18:02 | ||
18:02
benchable6 joined,
p6bannerbot sets mode: +v benchable6
|
|||
AlexDaniel | c: 2018.10 run <nqp-m sandbox/trunc.nqp> | 18:02 | |
committable6 | AlexDaniel, Ā¦2018.10: Ā«Ā» | ||
AlexDaniel | bisect: old=2018.10 run <nqp-m sandbox/trunc.nqp> | ||
bisectable6 | AlexDaniel, Bisecting by exit code (old=2018.10 new=86ce4f4). Old exit code: 0 | 18:03 | |
AlexDaniel | hey that was easy? | ||
bisectable6 | AlexDaniel, bisect log: gist.github.com/65bb18fee0661dcfb5...18f124e6f8 | ||
AlexDaniel, (2018-10-30) github.com/rakudo/rakudo/commit/b8...08b1c37fe8 | |||
AlexDaniel | c: b8176dc5bf^,b8176dc5bf run <nqp-m sandbox/trunc.nqp> | ||
committable6 | AlexDaniel, gist.github.com/92fc2e97799fc869f8...79930c606b | ||
AlexDaniel | who was looking for it? dogbert11? timotimo? | ||
timotimo | dogbert i think | ||
AlexDaniel | brrt? | ||
.tell brrt bisected: colabti.org/irclogger/irclogger_lo...11-17#l196 | 18:04 | ||
yoleaux | AlexDaniel: I'll pass your message to brrt. | ||
AlexDaniel | is there a ticket for it? | ||
timotimo | probably not yet | ||
dogbert11 | well that commit does quite a lot :) | 18:06 | |
timotimo | yeah, we can't really bisect in between bumps yet | 18:07 | |
since whateverable builds rakudos up front, and it'd be immense to build them with every in-between commit up front | |||
AlexDaniel | no, I almost did it actually | ||
the code started to get very hairy though, so I abandoned my attemptā¦ | 18:08 | ||
so yeah, it's not an issue and we can and should do it | |||
someone just has to write some nice code for it :) | |||
btw it's not M Ć N Ć R, it's just M + N | 18:12 | ||
as in we don't have to try all combinations, just shift the *_VERSION a bit on bumps | 18:13 | ||
github.com/perl6/whateverable/issues/40 | |||
18:14
bloatable6 joined
18:15
p6bannerbot sets mode: +v bloatable6
18:16
coverable6 joined
18:17
p6bannerbot sets mode: +v coverable6
18:18
greppable6 joined
18:19
p6bannerbot sets mode: +v greppable6
18:20
zakharyas joined,
squashable6 joined
|
|||
dogbert11 | holy shit, I think I found it | 18:20 | |
18:20
p6bannerbot sets mode: +v zakharyas
|
|||
lizmat | dogbert11++ | 18:20 | |
dogbert11 | it seems to be this one github.com/MoarVM/MoarVM/commit/2c...2b4b131976 | ||
18:21
p6bannerbot sets mode: +v squashable6
|
|||
dogbert11 haven't done assembler since the 68000 days | 18:21 | ||
18:21
shareable6 joined
|
|||
dogbert11 | something for nine or brrt or timotimo I guess | 18:22 | |
18:22
p6bannerbot sets mode: +v shareable6
18:24
Kaiepi left,
zakharyas left
18:25
Kaiepi joined
18:26
p6bannerbot sets mode: +v Kaiepi
18:27
zakharyas joined
18:28
p6bannerbot sets mode: +v zakharyas
18:33
statisfiable6 joined
|
|||
AlexDaniel | I'm very tired today so I'll go to bed soon. See you all tomorrow! | 18:33 | |
18:34
p6bannerbot sets mode: +v statisfiable6
|
|||
lizmat | good night, AlexDaniel++ | 18:35 | |
18:37
nativecallable6 joined
18:38
p6bannerbot sets mode: +v nativecallable6
18:50
undersightable6 joined
18:51
p6bannerbot sets mode: +v undersightable6
|
|||
lizmat | timotimo samcv did some benchmarks, but any different between an atpos based iterator and one based one nqp::iterator is lost in the noise | 19:14 | |
so I'm not going to pursue that atm | |||
(as somehow it also breaks the install process when I do that change) | 19:15 | ||
19:34
zakharyas left
|
|||
timotimo | OK | 19:34 | |
19:35
MasterDuke left
19:41
domidumont left
20:11
lizmat left
20:13
lizmat joined,
p6bannerbot sets mode: +v lizmat
21:03
domidumont joined,
p6bannerbot sets mode: +v domidumont
21:20
domidumont left
22:35
Kaiepi left,
Kaiepi joined
22:36
p6bannerbot sets mode: +v Kaiepi
|
|||
nine | dogbert11: how did you end up with that commit? With the expr JIT disabled brrt++'s testcase works fine. Same when I just comment out the expr JIT template for trunc_i16. | 22:37 | |
22:40
patrickb joined
|
|||
nine | dogbert11: now the weird thing is that I think, my lego JIT implementation of trunc_i16 is just as wrong. It does exactly what the expr JIT template claims to do. I think, trunc_i16 should actually be exactly the same as extend_i16. We probably just emit a trunc_i16 in places where we really do use only the lower 16 bits. | 22:40 | |
22:40
p6bannerbot sets mode: +v patrickb
|
|||
dogbert11 | hello nine | 22:52 | |
there are three files changed in that commit. I took the ones from the provious commit anf copied them to master. Real shady :) | 22:54 | ||
*previous | |||
I then wiped the rakudo install dir and rebuilt everything | 22:56 | ||
probably not the best way to go about things | 23:00 | ||
23:02
patrickb left
|