Description
I've been having issues getting AOT code to run on a WAMR runtime built for Win32. I'm not sure if there's something I'm missing or if there is an actual issue with windows 32 bit iwasm/wamrc.
When I take an example .wasm binary and compile it with wamrc and run on my win32-built iwasm, I get this error:
AOT module load failed: resolve symbol _aot_stack_sizes failed
I compiled my wasm file for i386, since compiling for x86_64 throws an error in my 32-bit iwasm:
AOT module load failed: invalid target bit width, expected 32-bit but got 64-bit
I noticed _aot_stack_sizes does not exist on the x86_64 compilation, which works fine in iwasm built for x64 windows. The symbol aot_func_internal also seems to exist on the 32 bit compilation where it does not on my x64.
If I compile my wasm code with --bounds-checks=0 (default in x64) then everything seems to work, but bounds checks is enabled by default for x86 so why does this not work with this default setting on?