-
Notifications
You must be signed in to change notification settings - Fork 790
Remove signature mangling from wasm2c output #1896
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
8e6fb55 to
0ed29c8
Compare
This effectively means that we no longer support imports that are overloaded by signature only, which is not something that we need to support in order to support the core wasm spec. This feature is available in the JS embedding but there is no good reason (AFAICT) to support it in wasm2c, and this simplifies the generated code. Fixes #1858
0ed29c8 to
44bddf0
Compare
|
In principle this is good by us, and we'll conform to whatever you want, but, @angelamontemayor and @yhdengh had already done a version of this in #1814 (including the name of the module in the name of an exported function -- e.g. "Z_caesar_Z_rot13" for a module named "caesar" that exports a function named "rot13"), with #1877 and #1887 stacked behind it. We added some checking for clearly erroneous duplicate imports (https://github.com/fixpointOS/wabt/blob/module_instancing/src/c-writer.cc#L953-L962) in response to @binji's review at #1877 (comment) , which might be a good idea in any case. Bottom line, if it were up to us, our preference would be to do this as part of #1814 (after working through a review), rather than trying to rebase our PRs later. In the end, though, obviously it's your call and we'll work with whatever you prefer. |
I like the idea to doing it stages:
These all seems like logically separate things and should make #1814 a lot smaller and more precise. I'm also looking to ways to remove the |
|
Ok, fine with us. On #2 (remove optional prefixing) after #3, we think it's simplest if instance naming dictates the prefixing:
But we can cross that bridge when we come to it. We'd love to get rid of "Z"; I think what we'd have to do at that point would be to escape |
keithw
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
This effectively means that we no longer support imports that are
overloaded by signature only, which is not something that we need to
support in order to support the core wasm spec.
This feature is available in the JS embedding but there is no good
reason (AFAICT) to support it in wasm2c, and this simplifies the
generated code.
Fixes #1858