[PATCH] D77566: [WebAssembly] Handle event exports

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 6 09:44:47 PDT 2020


aheejin created this revision.
aheejin added a reviewer: sbc100.
Herald added subscribers: llvm-commits, sunfish, jgravelle-google, dschuff.
Herald added a project: LLVM.

This handles exports of events, which was missing.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D77566

Files:
  lld/test/wasm/event-section.ll
  lld/wasm/WriterUtils.cpp


Index: lld/wasm/WriterUtils.cpp
===================================================================
--- lld/wasm/WriterUtils.cpp
+++ lld/wasm/WriterUtils.cpp
@@ -217,6 +217,9 @@
   case WASM_EXTERNAL_GLOBAL:
     writeUleb128(os, export_.Index, "global index");
     break;
+  case WASM_EXTERNAL_EVENT:
+    writeUleb128(os, export_.Index, "event index");
+    break;
   case WASM_EXTERNAL_MEMORY:
     writeUleb128(os, export_.Index, "memory index");
     break;
Index: lld/test/wasm/event-section.ll
===================================================================
--- lld/test/wasm/event-section.ll
+++ lld/test/wasm/event-section.ll
@@ -2,7 +2,9 @@
 ; RUN: llc -filetype=obj -exception-model=wasm -mattr=+exception-handling %p/Inputs/event-section2.ll -o %t2.o
 ; RUN: llc -filetype=obj -exception-model=wasm -mattr=+exception-handling %s -o %t.o
 ; RUN: wasm-ld -o %t.wasm %t.o %t1.o %t2.o
+; RUN: wasm-ld --export-all -o %t-export-all.wasm %t.o %t1.o %t2.o
 ; RUN: obj2yaml %t.wasm | FileCheck %s
+; RUN: obj2yaml %t-export-all.wasm | FileCheck %s --check-prefix=EXPORT-ALL
 
 target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
 target triple = "wasm32-unknown-unknown"
@@ -35,3 +37,9 @@
 
 ; Global section has to come after event section
 ; CHECK:        - Type:            GLOBAL
+
+; EXPORT-ALL:   - Type:            EXPORT
+; EXPORT-ALL-NEXT Exports:
+; EXPORT-ALL:       - Name:            __cpp_exception
+; EXPORT-ALL:         Kind:            EVENT
+; EXPORT-ALL:         Index:           0


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D77566.255376.patch
Type: text/x-patch
Size: 1513 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200406/9030d4b5/attachment.bin>


More information about the llvm-commits mailing list