]> granicus.if.org Git - llvm/commit
[WebAssembly] Forbid use of EM_ASM with setjmp/longjmp
authorGuanzhong Chen <gzchen@google.com>
Fri, 16 Aug 2019 18:21:08 +0000 (18:21 +0000)
committerGuanzhong Chen <gzchen@google.com>
Fri, 16 Aug 2019 18:21:08 +0000 (18:21 +0000)
commit7bac9261ce8a1735828af1b3d593f2438e813224
treedf3e9fca9fb5d172dbf0dd39bd1b038514d90a8e
parentf4cd64f24682e362d561d2f9e2ed00db187f5202
[WebAssembly] Forbid use of EM_ASM with setjmp/longjmp

Summary:
We tried to support EM_ASM with setjmp/longjmp in binaryen. But with dynamic
linking thrown into the mix, the code is no longer understandable and cannot
be maintained. We also discovered more bugs in the EM_ASM handling code.

To ensure maintainability and correctness of the binaryen code, EM_ASM will
no longer be supported with setjmp/longjmp. This is probably fine since the
support was added recently and haven't be published.

Reviewers: tlively, sbc100, jgravelle-google, kripken

Reviewed By: tlively, kripken

Subscribers: dschuff, hiraditya, aheejin, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D66356

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@369137 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp