Wasm: druntime with full GC

Sebastiaan Koppe mail at skoppe.eu
Wed Feb 7 20:55:16 UTC 2024


On Wednesday, 7 February 2024 at 03:52:15 UTC, H. S. Teoh wrote:
> So I've been working on my minimal druntime for wasm, and 
> discovered that LLVM actually uses a shadow stack for wasm, not 
> the native non-addressable wasm stack.

It does for debug, but then the optimisations push a lot of that 
to the wasm stack, see mem2reg step in llvm.

A possibility is to run the spill-pointers pass of binaryen, that 
should hoist the pointers back out to the shadow stack. With some 
perf hit of course.


More information about the Digitalmars-d mailing list