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

[EH] Add translator from old to new EH instructions #6210

Merged
merged 19 commits into from
Jan 24, 2024

Commits on Jan 8, 2024

  1. [EH] Add translator from old to new EH instructions

    This translates the old Phase 3 EH instructions, which include `try`,
    `catch`, `catch_all`, `delegate`, and `rethrow`, into the new EH
    instructions, which include `try_table` (with `catch` / `catch_ref` /
    `catch_all` / `catch_all_ref`) and `throw_ref`, passed at the Oct 2023
    CG meeting.
    
    This translator can be used as a standalone tool by users of the
    previous EH toolchain to generate binaries for the new spec without
    recompiling, and also can be used at the end of the Binaryen pipeline to
    produce binaries for the new spec while the end-to-end toolchain
    implementation for the new spec is in progress.
    
    While the goal of this pass is not optimization, this tries to a little
    better than the most naive implementation, namely by omitting a few
    instructions where possible and trying to minimize the number of
    additional locals, because this can be used as a standalone translator
    or the last stage of the pipeline while we can't post-optimize the
    results because the whole pipeline (-On) is not ready for the new EH.
    aheejin committed Jan 8, 2024
    Configuration menu
    Copy the full SHA
    046ebef View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9eb535b View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2024

  1. Fix blockifyWithName

    aheejin committed Jan 9, 2024
    Configuration menu
    Copy the full SHA
    b13aeae View commit details
    Browse the repository at this point in the history
  2. Apply suggestions from code review

    Co-authored-by: Thomas Lively <[email protected]>
    aheejin and tlively authored Jan 9, 2024
    Configuration menu
    Copy the full SHA
    6c4d17f View commit details
    Browse the repository at this point in the history
  3. Fix typo

    aheejin committed Jan 9, 2024
    Configuration menu
    Copy the full SHA
    76978f4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c44a66d View commit details
    Browse the repository at this point in the history
  5. clang-format

    aheejin committed Jan 9, 2024
    Configuration menu
    Copy the full SHA
    69e7895 View commit details
    Browse the repository at this point in the history

Commits on Jan 12, 2024

  1. Configuration menu
    Copy the full SHA
    5ef3db8 View commit details
    Browse the repository at this point in the history

Commits on Jan 13, 2024

  1. unique_ptr -> optional

    aheejin committed Jan 13, 2024
    Configuration menu
    Copy the full SHA
    87f65d3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0460656 View commit details
    Browse the repository at this point in the history
  3. cast comment

    aheejin committed Jan 13, 2024
    Configuration menu
    Copy the full SHA
    3412caa View commit details
    Browse the repository at this point in the history
  4. Remove stale comments

    aheejin committed Jan 13, 2024
    Configuration menu
    Copy the full SHA
    8659480 View commit details
    Browse the repository at this point in the history

Commits on Jan 16, 2024

  1. Configuration menu
    Copy the full SHA
    6ba7e63 View commit details
    Browse the repository at this point in the history
  2. Update src/passes/TranslateEH.cpp

    Co-authored-by: Alon Zakai <[email protected]>
    aheejin and kripken authored Jan 16, 2024
    Configuration menu
    Copy the full SHA
    7749560 View commit details
    Browse the repository at this point in the history
  3. Remove unnecessary cast

    aheejin committed Jan 16, 2024
    Configuration menu
    Copy the full SHA
    a707ba7 View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2024

  1. Configuration menu
    Copy the full SHA
    4fbdf13 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2024

  1. Configuration menu
    Copy the full SHA
    97327b5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ad35e5a View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2024

  1. Configuration menu
    Copy the full SHA
    47f9952 View commit details
    Browse the repository at this point in the history