[PATCH] D108960: [WebAssembly] Add Wasm SjLj support

Derek Schuff via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 31 11:41:15 PDT 2021


dschuff accepted this revision.
dschuff added inline comments.
This revision is now accepted and ready to land.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp:11
+/// This file lowers exception-related instructions and setjmp/longjmp function
+/// calls to use Emscripten's library functions. The pass uses JavaScript's try
+/// and catch mechanism in case of Emscripten EH/SjLj and Wasm EH intrinsics in
----------------
Eventually it might be nice to make it possible to use wasm SJLJ without needing emscripten, which should be feasible since it doesn't need JS. I guess that would mean moving or copying some library functions out of emscripten proper, and maybe refactoring the code or something. It doesn't have to be soon though.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp:192
+///
+/// In case calls to longjmp() exists
+///
----------------
or perhaps just "If there are calls to longjmp()"


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp:199
+///
+/// In case calls to setjmp() exists
+///
----------------



================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp:240
+/// entry:
+///   Initialize setjmpTable and setjmpTable
+///
----------------



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D108960



More information about the llvm-commits mailing list