[PATCH] D48273: [WebAssembly] CFG stackify support for exception handling

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 18 04:16:29 PDT 2018


aheejin created this revision.
aheejin added reviewers: dschuff, sunfish.
Herald added subscribers: llvm-commits, jgravelle-google, sbc100.

This adds support for exception handling to CFGStackify pass. This only
adds TRY / END_TRY markers and DOES NOT yet fix unwind mismatches that
can be created by the linearization of the CFG into the structural wasm
format. The mismatch fix will be added by following patches.

In detail, this patch

- Added support for TRY / END_TRY markers to support EH
- Changed many static functions into class member functions as they take

too many arguments now

- Added several more bookeeping data structures
- Refactored routines that decide where to insert markers. This got too

complicated as we add support for new kinds of markers (TRY/END_TRY).


Repository:
  rL LLVM

https://reviews.llvm.org/D48273

Files:
  lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
  test/CodeGen/WebAssembly/cfg-stackify-eh.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D48273.151684.patch
Type: text/x-patch
Size: 44745 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180618/11dce6a2/attachment.bin>


More information about the llvm-commits mailing list