-
Notifications
You must be signed in to change notification settings - Fork 753
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
crash in wasm-opt at -O2 #3697
Comments
I don't see this locally. Perhaps it is running out of memory. I don't think we've changed anything on the Binaryen side that could explain it. Perhaps an LLVM change is causing more code or locals to be emitted? |
I can't repro it locally either. Strange. I wonder if its circleci change? |
Actually I can repro locally if I do |
Seems to be related to the binaryen binaryen built on the waterfall. |
@aheejin Actually I just tried this again before I saw you self-assigned this and I can get this to reproduce locally. From the stack trace it is in debug info code, so likely my fault or wouter - I can verify shortly. |
This was actually LLVM's "fault" for emitting different DWARF now. So this was a crash in all opt levels actually, whenever we rewrote DWARF. Fix in #3700 |
A recent change in LLVM causes it to sometimes end up with a thing with no parent. That is, a debug_line or a debug_loc that has no CU that refers to it. This is perhaps LLVM DCEing CUs, or something else that changed - not sure. But it seems like valid DWARF we should handle. This PR handles that in our code. Two things broke here. First, locs must be simply ignored when there is no CU. Second, lines are trickier as we used to compute their position by scanning them, and that list contained only ones with a CU. So we missed some and ended up with wrong offsets. To make things simpler and more robust, just track the position of each line table on itself. Fixes #3697
Do you want to make a PR to re-enable the poppler test? (or I can if you like) |
I will. Still waiting on the binaryen roll. |
WebAssembly/binaryen#3697 has been fixed.
The wasm2.test_poppler test is failing consistenly with recent builds of wasm-opt:
https://app.circleci.com/pipelines/github/emscripten-core/emscripten/11775/workflows/4dd05dca-592a-47f3-9e74-671debdfd795/jobs/404629
I have not yet bisected to a particular binaryen commit but I suspect its something in the last 24 hours.
The text was updated successfully, but these errors were encountered: