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.
timo what does "Cannot get template for:" in the spesh log look like with that last commit? 00:03
jnthnwrthngtn timo: Don't think it will have changed; it's BAIL that adds that, and all I did was move it a little earlier. 00:08
timo right
and get_template_for_opcode wouldn't depend on the annotations in the middle or anything like that 00:09
jnthnwrthngtn Don't believe so, no 00:10
timo then i'm not sure why disabling exprjit for liz doesn't change the value noticeably 00:11
jnthnwrthngtn Just means the expr JIT isn't able to produce significantly better code for the program in question 00:14
Our template coverge still misses some rather common things
timo well, it's good that it doesn't generate much slower code at least :) 00:15
maybe i can put ore effort into the "have templates for reprs" thing
i'll want to have the teplate copiler look at more files and it'd not be based on opcode numbers, but on some custo name so you can have as many templates as you want from the same moar op 00:16
Nicholas It's very confusing :-) t/spec/S06-advanced/dispatching.rakudo.moar is making noise. But the noise it makes is "TODO passed: 1-2" 08:01
nine Just seen that as well 08:02
MasterDuke same 08:18
anybody have an opinion on github.com/MoarVM/MoarVM/pull/1550 ? 08:21
Geth MoarVM/new-disp: 5b570c1122 | (Stefan Seifert)++ | 2 files
Fix failing return type check in load-precompilation-file

The loadbytecode* ops do not just load the bytecode, but also run the deserialization frames of the loaded comp units. These frames may trigger a global deoptimization. In this case, the frame with the loadbytecode* op will be marked for lazy deopt. This means that it will be deopted, when we return to it (i.e. when loadbytecode* finishes). ... (18 more lines)
08:44
nine jnthnwrthngtn: can you please test agrammon with github.com/MoarVM/MoarVM/commit/5b570c1122 Our application loads just fine with that fix. 08:45
Geth MoarVM: b75d00478a | (Daniel Green)++ | 2 files
Add '.new()' suggestion to type object errors

Just for attribute binding and lookup though, since I believe those are more likely arise from something like
  ```
class A {
   has $.b = 4;
... (5 more lines)
08:55
MoarVM: 7e9f25de39 | MasterDuke17++ (committed using GitHub Web editor) | 2 files
Merge pull request #1550 from MasterDuke17/add_.new_suggestion_to_cannot_look_up_attribute_error
MoarVM: 665ab93785 | dyknon++ | src/strings/decode_stream.c
Stream Decoder: Disallow incomplete code at EOF

Break unwanted infinite loop caused by
  $ echo 0: c2 | xxd -r | rakudo -ne ''
Related to: MoarVM/MoarVM#821
08:57
MoarVM: 3d478190b5 | dyknon++ | src/strings/decode_stream.c
Better error message
MoarVM: 919a034a1c | MasterDuke17++ (committed using GitHub Web editor) | src/strings/decode_stream.c
Merge pull request #1519 from dyknon/master
MasterDuke think github.com/MoarVM/MoarVM/blob/mast...3141-L3169 are too big to do as primitives? should they be pulled out into a function for the interpreter and jit to call? 18:29
oh interesting. there is an `MVM_sc_set_object()`, but its implementation is not the same as the `scsetobj` op... 18:38
doh. the op calls that function as part of the implementation 18:39
jnthnwrthngtn nine: Yes, it fixes Agrammon. Thanks! 20:23
nine \o/ 20:24
timo n'evening 20:32
[Coke] Cheers. 23:28
timo sreehc 23:34