[PATCH] D60232: [WebAssembly] EmscriptenEHSjLj: Don't abort if __THREW__ is defined

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 3 14:10:15 PDT 2019


efriedma added inline comments.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp:625
   // exception handling and setjmp/longjmp handling
-  ThrewGV = getGlobalVariableI32(M, IRB, "__THREW__");
-  ThrewValueGV = getGlobalVariableI32(M, IRB, "__threwValue");
+  ThrewGV = cast<GlobalVariable>(M.getOrInsertGlobal("__THREW__", IRB.getInt32Ty()));
+  ThrewValueGV = cast<GlobalVariable>(M.getOrInsertGlobal("__threwValue", IRB.getInt32Ty()));
----------------
It's not a good idea to use cast<> if you can't prove it will succeed.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D60232





More information about the llvm-commits mailing list