Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
00:04 evalable6 joined 00:07 reportable6 left 01:02 linkable6 joined 01:09 reportable6 joined 02:12 Kaiepi joined 03:30 benchable6 left, linkable6 left, statisfiable6 left, notable6 left, bloatable6 left, sourceable6 left, committable6 left, unicodable6 left, reportable6 left, greppable6 left, tellable6 left, nativecallable6 left, bisectable6 left, quotable6 left, releasable6 left, evalable6 left, coverable6 left, squashable6 left, shareable6 left 03:31 linkable6 joined, quotable6 joined 03:32 statisfiable6 joined, coverable6 joined 03:33 greppable6 joined, reportable6 joined, squashable6 joined, nativecallable6 joined 03:43 [Coke]_ joined 03:46 [Coke] left 04:31 committable6 joined, shareable6 joined 04:32 benchable6 joined, sourceable6 joined 04:33 tellable6 joined, bisectable6 joined, evalable6 joined 04:34 bloatable6 joined 05:31 unicodable6 joined 05:32 releasable6 joined 05:33 notable6 joined 06:07 reportable6 left 08:08 linkable6 left 08:11 linkable6 joined 08:40 linkable6 left 08:43 linkable6 joined
nine I usually inject nqp::sin_i(1e0) to have something to break on :) 09:38
10:08 reportable6 joined
nine Plot twist! This _is_ actually correct: 10:09
m: my uint @a; note(@a[0] = -1);
camelia -1
nine Because assignment is supposed to return the assignee unmodified. The test failed due to a bug in the native array postcircumfix candidate for assignment: github.com/rakudo/rakudo/blob/mast....pm6#L3751 10:11
The last expression (and thus return value) is the nqp::bindpos_* op. But this op doesn't actually have a return value! So the thing we return is the last evaluated expression with an actual return value, which happens to be the assignee we pass to the bindpos op. 10:13
So all good then? Unfortunately not. Because we don't pass assignee entirely unmodified. Instead it is unboxed to what the bindpos op wants as an argument. And this is how -1 gets turned into 18446744073709551615 which is then returned 10:14
lizmat ok, so does this need fixing in Rakudo or in MoarVM ?>
nine Fix is trivial in rakudo. Just need to return assignee explicitly
lizmat ok, will do that
nine And withthat: All tests successful!
lizmat: I already did locally
lizmat in the generator ?
nine yes 10:15
lizmat ok
nine++
10:15 linkable6 left
nine Finally a working state that treats unsigneds as unsigneds (mostly). There are a few unsigned op variants missing and still a quite a few bugs in unsigned handling, but we now have a basis for actually fixing them, since Rakudo now usually knows whether something is supposed to be signed or not. 10:16
MasterDuke up to new-disp-level amount of code changes? 10:17
nine It's probably gonna take me another week to untangle my local changes and put them into proper commits though :( Unfortunately there's no easy step by step conversion. Even getting rakudo to build required loads of changes.
Rakudo: 34 files changed, 3138 insertions(+), 778 deletions(-), NQP: 28 files changed, 263 insertions(+), 108 deletions(-), MoarVM: 43 files changed, 1169 insertions(+), 469 deletions(-) 10:18
MasterDuke huh. usually for such a simple script, holding down enter to `next` through rr gets somewhere pretty quickly. maybe because i have profiling active, but i broke on my syscall and still haven't hit that BOOTTrack error 10:19
nine Total: 105 files changed, 4620 insertions(+), 1355 deletions(-)
MasterDuke oof
nine Just to fix a single test in a single ecosystem module :D
10:20 sena_kun left
MasterDuke bonus though, get a bunch of nyi spectests to pass also? 10:20
i wonder if it would be quicker if i disabled spesh 10:21
10:25 sena_kun joined
nine Yes, a few todos now pass. And more should now be easy to fix 10:27
10:29 sena_kun left 10:30 sena_kun joined 10:36 sena_kun left 10:37 sena_kun joined
lizmat nine: would it help if I already fixed the nqp::bindpos_* issue ? 10:41
Geth MoarVM/fix_unsigned: 33 commits pushed by (Stefan Seifert)++
review: github.com/MoarVM/MoarVM/compare/f...b4057d1053
11:23
lizmat I'll take that as a no :-) 11:33
nine Well, err...no :)
lizmat well, it looks like returning an atposref_x breaks a few spectest I just saw 11:35
but first /me is going for the last bicycle ride of the year: must make it to 10500+ km :-)
afk& 11:36
11:52 Altai-man joined 12:08 reportable6 left 13:10 reportable6 joined 13:16 linkable6 joined 15:07 reportable6 left, benchable6 left, bisectable6 left, notable6 left, linkable6 left, releasable6 left, bloatable6 left, committable6 left, coverable6 left, quotable6 left, statisfiable6 left, squashable6 left, greppable6 left, nativecallable6 left, sourceable6 left, tellable6 left, shareable6 left, evalable6 left, unicodable6 left 15:08 squashable6 joined, bloatable6 joined, frost left, quotable6 joined, greppable6 joined 15:09 releasable6 joined, bisectable6 joined 15:10 evalable6 joined, coverable6 joined, benchable6 joined, committable6 joined 15:18 Kaiepi left 15:19 Kaiepi joined 15:24 Kaiepi left 15:53 Kaiepi joined 16:08 unicodable6 joined, tellable6 joined, nativecallable6 joined 16:09 linkable6 joined
nine wait....10500? I thought the goal was 10000? :) 16:16
lizmat ah... that was already reached a few weeks ago :-) 16:17
Nicholas nine: NQP passes tests with your branch on ppc64. If you have endian-related bugs, you've hidden them well... 16:34
Guten Rutsch, #moarvm 16:35
(I believe that this conformes to the good,* * template)
nine Ebenfalls!
lizmat "een goeien roetsj" it's called in local plat :-) 16:36
Nicholas "tsj" is not a combination of letters that I am familar with 16:37
lizmat the "roetsj" is pronounced the same way as "Rutsch" :-) maybe just a tiny bit longer... 16:39
16:40 Kaiepi left
nine I figured it was just a different way to spell the same sound 16:40
16:50 Kaiepi joined 17:08 notable6 joined 17:09 sourceable6 joined 17:55 Altai-man left 18:08 shareable6 joined 18:09 reportable6 joined 19:38 shareable6 left, releasable6 left, bisectable6 left, bloatable6 left, reportable6 left, squashable6 left, nativecallable6 left, tellable6 left, linkable6 left, unicodable6 left, notable6 left, sourceable6 left, committable6 left, benchable6 left, coverable6 left, greppable6 left, evalable6 left, quotable6 left 19:40 greppable6 joined, bisectable6 joined, committable6 joined, shareable6 joined 19:41 releasable6 joined, unicodable6 joined, tellable6 joined, squashable6 joined
MasterDuke hm. i'm now stopped right before the exception message is printed, but i still have no idea why it's being thrown 20:10
20:39 notable6 joined, sourceable6 joined 20:40 nativecallable6 joined 20:41 quotable6 joined, coverable6 joined 21:08 statisfiable6 joined 21:39 bloatable6 joined 21:40 reportable6 joined, evalable6 joined 21:50 [Coke]_ is now known as [Coke]
[Coke] lizmat++ #goals 22:03
my goal has been: make it to the new year. Almost there.
need to set sights higher in 2022. 22:04
vrurg "Today's agenda: 1. Make a TODO list – done!" 22:20
[Coke] :) 22:21
japhb Technically, making it to the new year is a much bigger goal on January 1 than it is on December 31, so you can reuse the wording and just change the target year. :-) 22:35
22:41 benchable6 joined 23:08 dogbert11 joined 23:12 gfldex_ joined 23:17 [Coke] left, MasterDuke left, japhb left, gfldex left, dogbert17 left, bartolin left 23:19 gfldex_ is now known as gfldex 23:20 [Coke]_ joined, MasterDuke joined, japhb joined, bartolin joined 23:40 linkable6 joined