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

feat: dwarf code address mapping #244

Merged
merged 1 commit into from
Jun 15, 2023
Merged

Conversation

guybedford
Copy link
Collaborator

This is a rebase of the PR at #231 to the current main branch, created by @nokotan.

I didn't want to push over that branch, especially since it seems to be in use in various integration attempts. From the description there -

This is experiment implementation of transforming DWARF debug entries in WebAssembly binaries.

It seems to require more difficult implementation that using intermediate DWARF expression with gimli.rs, does not have direct access DWARF entries to be written.
This PR contains simpler way to transform code address:

  • Instruction mapped address conversion
  • Function code range based address conversion

Milestones

  • Function code range based address conversion
  • Implement instruction mapped address conversion
  • Better expression of code address that does not exactly match to instruction
    • beginning or end of function
  • Implement test cases

@guybedford guybedford merged commit 729e226 into main Jun 15, 2023
16 checks passed
@guybedford guybedford deleted the dwarf-code-address-mapping branch June 15, 2023 00:27
@guybedford guybedford mentioned this pull request Jun 15, 2023
4 tasks
@daxpedda
Copy link
Contributor

Cc rustwasm/wasm-bindgen#3483 (comment).
We hit some debug_assert!s in wasm-bindgen when trying out walrus v0.20.

@guybedford
Copy link
Collaborator Author

Thanks for the report, I can try and take a look in the next few days.

@guybedford
Copy link
Collaborator Author

Hey @daxpedda I had a brief look at this today and can confirm it seems an important offset issue that was also present in the original PR. I've posted #247 from some very initial debugging. My hope in shipping was exactly to find bugs... the next hope is to find contributors interested in solving them! If I have time, I'll definitely investigate further too, but can't guarantee anything soon unfortunately.

@daxpedda
Copy link
Contributor

My hope in shipping was exactly to find bugs... the next hope is to find contributors interested in solving them!

Unfortunately I already have a tower of things I have to chew through right now, so as much as I would like to contribute I probably won't get to it.

If I have time, I'll definitely investigate further too, but can't guarantee anything soon unfortunately.

Thank you for your amazing work, I appreciate that you have found time for this so far, no guarantees necessary ❤️.

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 this pull request may close these issues.

None yet

3 participants