aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorHeejin Ahn <aheejin@gmail.com>2024-09-17 14:58:19 -0700
committerGitHub <noreply@github.com>2024-09-17 14:58:19 -0700
commit08bba6503b918c97d9d1a0cde97f4b3c64d5f2c3 (patch)
treefa70c69f1da07e0ed1e8bcd8afc4ff7a0c72043e /clang/lib/CodeGen
parent38333f4161037d2587157e36b5cb994d1b2c36e5 (diff)
downloadllvm-08bba6503b918c97d9d1a0cde97f4b3c64d5f2c3.zip
llvm-08bba6503b918c97d9d1a0cde97f4b3c64d5f2c3.tar.gz
llvm-08bba6503b918c97d9d1a0cde97f4b3c64d5f2c3.tar.bz2
[WebAssembly] Support binary generation for new EH (#109027)
This adds support for binary generation for the new EH proposal. So far the only case that we emitted variable immediate operands in binary has been `br_table`'s destinations. (Other `variable_ops` uses in TableGen files are register operands, such as the operands of `call`, so they don't get emitted in binary as a part of the same instruction.) With this PR, variable immediate operands can include `try_table`'s operands: - The number of of catch clauses - catch clauses sub-opcodes - `catch`: 0x00 - `catch_ref`: 0x01 - `catch_all`: 0x02 - `catch_all_ref`: 0x03 - catch clauses' destinations With `try_table`, we now have variable expr operands for `try_table`'s catch clauses' tags. We treat their fixups in the same way we do for tags in other instructions such as in `throw`. Diff without whitespace will be easier to view.
Diffstat (limited to 'clang/lib/CodeGen')
0 files changed, 0 insertions, 0 deletions