Comments (5)
That source code works for me with both llvm-gcc and clang with various emscripten settings.
Can you paste the generated .ll and .js files?
from emscripten.
Here is the .ll file: http://pastebin.com/gtfAshzZ
and the .js file: http://pastebin.com/KrU6QYve
from emscripten.
Looks like that is compiled as 64-bit? (target triple = "x86_64-unknown-linux-gnu" and many appearances of i64)
Emscripten doesn't support 64-bit code well, because it is a poor fit for JavaScript (JS integers are 32-bit, and while floats are 64-bit, the actual integers they can contain are only up to 53 bits or so).
Compiling the source with -m32 should make it work properly (you may need to install some 32-bit headers on your system).
Long-term, the solution for emscripten is to bundle our own headers and build only against them. We have an issue open for that.
from emscripten.
Thanks for the tip, it does work fine.
I changed the issue to reflect that it only affects 64-bit compliation.
from emscripten.
I added a FAQ entry for this. Marking as closed since I don't think there is a way to properly fix this. 32-bit compilation is the way to go for now.
from emscripten.
Related Issues (20)
- Emscripten does not read values from C properly HOT 9
- Lets work together on source maps standardization HOT 1
- Stack overflow in AudioWorkletNode when -O0 HOT 3
- Any way to set the ENV enviroment variables during compilation? HOT 1
- How to export emscriptenRegisterAudioObject? HOT 1
- Duplicate symbol: emscripten_webgl_init_context_attributes HOT 1
- run emrun on localhost / 127.0.0.1 by default HOT 1
- Since PR #21775, additional file packages error on load in modularize build when registered for preRun
- Wasm validator error HOT 6
- symbol exported via --export not found: __wasm_init_memory_flag HOT 9
- mimalloc adds >60kb into output artifacts HOT 3
- Are we allowed to pass null as options to navigator_gpu_request_adapter_sync()? HOT 3
- Impossible to run multithread functions without blocking the UI thread. HOT 2
- --preload-file works when running locally but not when deployed as a github page HOT 5
- How to re-generate libdlmalloc.a after changed dlmalloc (system/lib/dlmalloc.c)? HOT 2
- PRINTF_LONG_DOUBLE is not compatible with MAIN_MODULE HOT 6
- Compilation error when binding custom types as field in a value_object HOT 2
- Unable to add _emscripten_thread_exit_joinable to EXPORTED_FUNCTIONS HOT 13
- There are no definitions of functions for working with std::complex and boost::multiprecision::number HOT 1
- Unable to reliably determine memory usage at runtime HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from emscripten.