[PATCH] D88697: [WebAssembly] Rename Emscripten EH functions

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 2 11:55:19 PDT 2020


aheejin added a comment.

In D88697#2307808 <https://reviews.llvm.org/D88697#2307808>, @tlively wrote:

>> There are two occasions that we add a call to `emscripten_longjmp`, but one of them is calling it with an argument type `jmp_buf`. So we need two different signatures, and thus two different functions there.
>
> Would it also work to emit a bitcast of some sort from `jmp_buf` to i32 where that second kind of `emscripten_longjmp` call is generated? If so, would that be simpler overall?

That's a good idea! `bitcast` doesn't work here, but I was able to use `ptrtoint`. Yeah, it looks simpler, and we only need to rename invokes at the end. Changed LowerEmscriptenEHSjLj pass to do that and deleted all jmp_buf related stuff.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88697/new/

https://reviews.llvm.org/D88697



More information about the llvm-commits mailing list