3 Jan 2026
timo > Last Build Status: In-queue. Your build is in the queue to be analyzed. There are 2 builds ahead of it. 15:27
> Sep 07, 2022 Last Analyzed 15:28
scan.coverity.com/projects/paultcochrane-moarvm - i'm not sure if just anybody can open the defects viewer or if you need to log in to this site with an account first 15:34
Geth MoarVM/event_loop_started_status_without_mutex: f4e5a0a78f | (Timo Paulssen)++ | 6 files
Use atomic instead of mutex for "is event loop started"

The theory is that reading an atomic that only very rarely changes is cheaper than locking and unlocking a mutex for reading.
Coverity Scan pointed out in CID 501093 that another thread could see instance->event_loop_thread become nonzero before the other field writes would be complete, thus causing a data race. ... (6 more lines)
17:18
MoarVM/event_loop_started_status_without_mutex: f8c251c6d3 | (Timo Paulssen)++ | 6 files
Use atomic instead of mutex for "is event loop started"

The theory is that reading an atomic that only very rarely changes is cheaper than locking and unlocking a mutex for reading.
Coverity Scan pointed out in CID 501093 that another thread could see instance->event_loop_thread become nonzero before the other field writes ... (11 more lines)
17:19
MoarVM/event_loop_started_status_without_mutex: 30c938d96c | (Timo Paulssen)++ | 4 files
telemeh: make forks visible, continue working after fork
19:20
MoarVM/timo_january_2026_coverityscan: 5 commits pushed by (Timo Paulssen)++ 19:21
4 Jan 2026
MoarVM/perf_jitdump_support: 5 commits pushed by (Timo Paulssen)++ 02:13
5 Jan 2026
librasteve_ rakudoweekly.blog/2026/01/05/2026-...happy-new/ 15:28
7 Jan 2026
Geth MoarVM/region_allocator_always_align_eight: 2d27f825f1 | (Timo Paulssen)++ | src/core/regionalloc.c
Always align region allocator allocations to multiples of 8

GCC 15.1 on OpenSuse Leap 16 mysteriously started using SIMD to optimize functions working with the succ, pred, or child arrays of BBs in spesh, causing a segfault when the allocation behaviour of the program caused one of these arrays to land on an address divisible by 4 but not by 8.
Hopefully it's not a huge penalty to always align to 8 here.
Shout-out to denizens of the Compiler Explorer Discord server for helping me diagnose what the compiler was up to.
17:19
MoarVM: timo++ created pull request #1984:
Always align region allocator allocations to multiples of 8
8 Jan 2026
MoarVM/main: 1aa273fd90 | timo++ (committed using GitHub Web editor) | src/core/regionalloc.c
Always align region allocator allocations to multiples of 8 (#1984)

GCC 15.1 on OpenSuse Leap 16 mysteriously started using SIMD to optimize functions working with the succ, pred, or child arrays of BBs in spesh, causing a segfault when the allocation behaviour of the program caused one of these arrays to land on an address divisible by 4 but not by 8.
Hopefully it's not a huge penalty to always align to 8 here.
Shout-out to denizens of the Compiler Explorer Discord server for helping me diagnose what the compiler was up to.
13:25
9 Jan 2026
MoarVM/fewer_unneeded_prof_allocated_calls: 059151e703 | (Timo Paulssen)++ | src/spesh/disp.c
profiler: eliminate prof_allocated at end of disp program translation

When a disp program gets compiled from a dispatch_o to spesh ops and the result of the program comes from a temporary, then it will result in a simple "set" op, which means we doesn't need a prof_allocated check after what used to be the dispatch_o op.
08:46
MoarVM/fewer_unneeded_prof_allocated_calls: 28105e18ee | (Timo Paulssen)++ | src/spesh/inline.c
profiler: eliminate prof_allocated for getarg in inlined code

When we rewrite a sp_getarg_o op to just be a set, then there is no reason to keep the prof_allocated check on the value
MoarVM/fewer_unneeded_prof_allocated_calls: 893361b14c | (Timo Paulssen)++ | src/spesh/optimize.c
profiler: eliminate prof_allocated for some cases of getlex

When a getlexstatic or getlexperinvtype is translated into a spesh slot lookup, there is no need for a prof_allocated check of the value.
MoarVM: timo++ created pull request #1985:
Fewer unneeded prof allocated calls
08:48
10 Jan 2026
MoarVM/main: 5eb2ccf336 | timo++ (committed using GitHub Web editor) | 3 files
Fewer unneeded prof allocated calls (#1985)

  * profiler: eliminate prof_allocated at end of disp program translation
When a disp program gets compiled from a dispatch_o to spesh ops and the result of the program comes from a temporary, then it will result in a simple "set" op, which means we doesn't need a prof_allocated ... (11 more lines)
09:53
lizmat timo: most definitely improvement: 152ms -> 139ms for the sub foo($a) { $a * $a }; foo($_) for ^1000000 benchmark 10:03
Geth MoarVM: MasterDuke17++ created pull request #1986:
Switch from Ryu to Żmij for our double-to-ascii implementation
13:52
12 Jan 2026
librasteve_ rakudoweekly.blog/2026/01/12/2026-...solutions/ 17:18
19 Jan 2026
rakudoweekly.blog/2026/01/19/2026-...amentable/ 18:46
20 Jan 2026
korvo Redirect from #raku: Is it known whether Rakudo can be compiled statically with e.g. musl libc? I see that Alpine has a community port (pkgs.alpinelinux.org/package/edge/...86/rakudo) but that still uses DSOs. 20:21
japhb I think the answer to that may well be that it is *not* known. I think some attempt was made at this in the past, but I don't recall anybody claiming success. 20:49
lizmat [21:47:28] <patrickb> I seem to recall, that moar offers a build tool target to create a static library, but it never worked. I don't know what the blocker was though. 20:52
Voldenet moarvm uses libuv, so there might be some problems regarding that 21:05
24 Jan 2026
Geth MoarVM/2026.010: 2a8adc80cf | (Justin DeVuyst)++ | 2 files
Update changelog and version
17:02
MoarVM: jdv++ created pull request #1987:
Update changelog and version
17:03
MoarVM/main: 2a8adc80cf | (Justin DeVuyst)++ | 2 files
Update changelog and version
17:08
MoarVM/main: 6a80a5d43c | (Justin DeVuyst)++ (committed using GitHub Web editor) | 2 files
Merge pull request #1987 from MoarVM/2026.010

Update changelog and version
jdv this release done 17:11
26 Jan 2026
librasteve_ rakudoweekly.blog/2026/01/26/2026-...o-goodbye/ 19:15