I asked and there is currently an arbitrary limit in firefox for the table
size, of 128K. I guess your codebase might have a large number of functions
in the table (that is, functions that can be indirectly called), or is
built with an option that increases that size (like exceptions, for
example)? You can look at the table size by looking at the wast, you'll see
(table $name0 $name1 ...) and the number of space-delimited names is the
size.

If indeed the table size is large (which seems most likely) then this is
that temporary firefox limitation (that needs to be fixed).

On Thu, Jul 28, 2016 at 7:23 AM, Gaurav Dewan <[email protected]>
wrote:

> Using 1.36.5 emscripten.
> em++ -O3 -s TOTAL_MEMORY=201326592 -s ALIASING_FUNCTION_POINTERS=0 -s
> BINARYEN=1 -s 'BINARYEN_METHOD="native-wasm"' -s
> 'BINARYEN_SCRIPTS="spidermonkify.py"' -s GLOBAL_BASE=1000 -s
> ALIASING_FUNCTION_POINTERS=0
>
> Updating JS-shell used for compilation and recompiling wasm did not same
>> to change any behavior in both the browsers (latest Firefox Nightly and
>> Chrome Canary)
>>
> Then I Updated binaryen used for compilation and recompiled binaryen and
> wasm -
> Chrome Canary also started showing the error(on updating binaryen !) -
> out-of-bounds memory access.
> Firefox Nightly showed the same error for native wasm method. I tried
> interpret-binary fallback and changed total memory to 128mb. Got following
> console output
>
> trying binaryen method: native-wasm
> failed to compile wasm module: TypeError wasm error: compile error at
> offset 10051: too many table elements
> trying binaryen method: interpret-binary
> wasm trap: highest > memory: 134217728 > 134217724
>
> -s SAFE_HEAP =1 test is green in asm.js build
> Changing total memory allocation in wasm build does not help
> My initial thought is that some "new C++ application source code" is
> causing emscripten to generate WASM which firefox js engine parse as
> invalid.
> This "new C++ application source code" when compiled with older binaryen
>  works fine on chrome.
> And older builds (with older application source code and older binaryen)
> continue to work well in both the browsers today.
>
> Is there any wasm-validator tool or tool from which I can map wasm
> offset/s-expression-functions to C source code/function names ?
>
> --
> You received this message because you are subscribed to the Google Groups
> "emscripten-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to