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)
- Compilation result is not minified with -O3 and LEGACY_VM_SUPPORT
- [emrun] emrun replaces `_` with `-` for the arguments that should be passed to the program
- GLFW.cursorPosFunc (no such functions have gotten exported) HOT 2
- C++ object to JS ClassHandle HOT 2
- WASM builds crash in firefox when console is opened. HOT 1
- Unity webgl build error: [parse exception: attempted pop from empty stack / beyond block start boundary] HOT 8
- SDL Audio: playing audio in strict mode using audio element results in error when ended
- [Feature Request] Support building for both UMD/ESM HOT 4
- Sourcemap absolute path issue HOT 12
- emcc hello.c -o hello.js error in nodejs v18.20.2 HOT 2
- Issue compiling a big library
- AUDIO_WORKLET + MODULARIZE broken in 3.1.59
- Please provide an example of creating a WebGPU program using offscreen canvas and webgpu_cpp.h? HOT 1
- MODULARIZE=1 adds code incompatible with MIN_NODE_VERSION=101900
- "-sNODERAWFS" and "-lnodefs.js -lnoderawfs.js" produce different output
- When targeting NodeJS with NODERAWFS, why no use process.stdout.write and process.stderr.write? HOT 2
- Enable a runtime function without exporting it to Module HOT 5
- library_webgl.js wrong(?) assumption HOT 2
- unable to get local issuer certificate HOT 3
- Wrong version of cLang? 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.