-
Notifications
You must be signed in to change notification settings - Fork 3.5k
[tsgen] Remove asyncify function exports assertions. #25899
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
Conversation
When using tsgen with -sASYNCIFY=1 and assertions enabled, an assertion failure occurs: `Assertion failed: missing Wasm export: asyncify_start_unwind`. This is due to emscripten-core#25541. This change disables assertions when running tsgen to resolve the issue.
Co-authored-by: Alon Zakai <alonzakai@gmail.com>
|
Looks like some AOT JS tests rely on the assertions being in the code. I'm thinking I'll just disable ASYNCIFY=1 during tsgen. |
Will it no change the possible shape of the API? At least the JS looks different with that option enabled vs disabled. The other option is to wait until post-asyncify to run the TS bindings generation? |
It will change the API, but we don't currently generate the correct definitions for async exported functions with JSPI or Asyncify. This is something we should probably fix at some point. FWIW, async embind exports have the correct definitions.
The issue with waiting until after binaryen is run, is that is also post optimization. After opt, AFAICT, the only special functions that binaryen adds are the |
When using
tsgenwith-sASYNCIFY=1and assertions enabled, an assertion failure occurs:Assertion failed: missing Wasm export: asyncify_start_unwind. This is due to #25541.This PR disables assertions for the
_asyncify_<x>exports when runningtsgento resolve the issue.Continuation of #25780