February 09
On Wed, Feb 07, 2024 at 08:55:16PM +0000, Sebastiaan Koppe via Digitalmars-d wrote:
> 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.

Unfortunately, looks like my distro's version of binaryen doesn't support --spill-pointers.


T

-- 
English is useful because it is a mess. Since English is a mess, it maps well onto the problem space, which is also a mess, which we call reality. Similarly, Perl was designed to be a mess, though in the nicest of all possible ways. -- Larry Wall
February 09
On Friday, 9 February 2024 at 17:23:17 UTC, H. S. Teoh wrote:
> Unfortunately, looks like my distro's version of binaryen doesn't support --spill-pointers.
>
>
> T

Then install manually. I am sure they have releases or, if that fails, build instructions.