[PATCH] D54096: [WebAssembly] Add support for the event section

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 7 17:02:54 PST 2018


aheejin added a comment.

As suggested by people in the meeting, I checked the multi-value proposal <https://github.com/WebAssembly/multi-value/blob/master/proposals/multi-value/Overview.md#binary-format> to see if the current way of specifying event types should be more like that of multi-values. Turns out the way `block_type` can be specified in the multi-value spec is rather complicated; there are three ways to do this:

  blocktype ::= 0x40       => [] -> []
             |  t:valtype  => [] -> [t]
             |  ft:typeidx => ft

I'm not sure if three-way representation is ideal because the first two actually can be represented as the third one (function type index), if we assume the return types to be void as we did with the event types here. So anyway, what I confirmed is `block_type` is gonna be extended to be able to take a type index as well, so I guess we should keep the current event section implementation (and thus the spec), which shares type indices with functions in the type section.


Repository:
  rL LLVM

https://reviews.llvm.org/D54096





More information about the llvm-commits mailing list