Skip to content
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

Warn when using -g in combination with -sASYNCIFY #13288

Closed
bmeurer opened this issue Jan 20, 2021 · 1 comment · Fixed by WebAssembly/binaryen#3506
Closed

Warn when using -g in combination with -sASYNCIFY #13288

bmeurer opened this issue Jan 20, 2021 · 1 comment · Fixed by WebAssembly/binaryen#3506

Comments

@bmeurer
Copy link
Contributor

bmeurer commented Jan 20, 2021

When using -sASYNCIFY (or any other feature that involves complex program rewriting / optimizations via Binaryen) combined with -g, it'd be great to have emcc spit out a warning to let the developer know that what they are trying to do might not work, since the DWARF data is not updated correctly.

@sbc100
Copy link
Collaborator

sbc100 commented Jan 20, 2021

@kripken is this true? If it is then I guess that is a binaryen bug.. is it fixable? If not, should we just ban that combination completely for now?

kripken added a commit to WebAssembly/binaryen that referenced this issue Jan 20, 2021
kripken added a commit to WebAssembly/binaryen that referenced this issue Jan 26, 2021
Previously the addDefault* methods would avoid adding opt passes that we
know are incompatible with DWARF. However, that didn't handle the case of
passes that are added in other ways. For example, when running Asyncify,
emcc will run --flatten before, and that pass is not compatible with DWARF.
This PR lets us warn on that by annotating the passes themselves. Then we
use those annotation to either not run a pass at all (matching the previous
behavior) or to show a warning when necessary.

Fixes emscripten-core/emscripten#13288 . That is, concretely
after this PR running asyncify + DWARF will show a warning to the user.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants