-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Update emscripten-llvm to version 7 #52323
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I've tried updating to emscripten 1.38.15 locally. There were some test failures related to exported symbols. E.g.
results in
emcc is called with Possibly EXPORTED_FUNCTIONS previously also worked with non-function symbols but now no longer does? My current state: master...nikic:update-emscripten |
Emscripten recently changed to error on undefined symbols, instead of just warn, that might be the cause of that error. You can disable that with |
@kripken Rust explicitly passes |
Oh, sorry, then my previous comment is irrelevant then. Does "statics" mean global variables? It's possible to export both functions and global variables in emscripten, but i think it's extremely rare that globals are needed to be exported (when a global variable is exported, its address is exported). |
@kripken Yeah, by statics I mean global variables. How does one specify globals that should be exported? Should they be part of |
@nikic we export them in shared modules (MAIN_MODULE etc. flags), but there isn't a way to export specific ones, I believe. |
Update emscripten This updates emscripten to 1.38.15, which is based on LLVM 6.0.1 and would allow us to drop code for handling LLVM 4. The main issue I ran into is that exporting statics through `EXPORTED_FUNCTIONS` no longer works. As far as I understand exporting non-functions doesn't really make sense under emscripten anyway, so I've modified the symbol export code to not even try. Closes #52323.
Update emscripten This updates emscripten to 1.38.15, which is based on LLVM 6.0.1 and would allow us to drop code for handling LLVM 4. The main issue I ran into is that exporting statics through `EXPORTED_FUNCTIONS` no longer works. As far as I understand exporting non-functions doesn't really make sense under emscripten anyway, so I've modified the symbol export code to not even try. Closes #52323.
See emscripten-core/emscripten-fastcomp#193 (comment)
emscripten already supports the wasm backend in LLVM7, so we should move the current emscripten-llvm from version 4.0 to that, so that we can remove all the workarounds lying around for LLVM < 5.0 (LLVM 5 is the new minimum supported version).
The text was updated successfully, but these errors were encountered: