From cb0b31a2d185f18662814c9f3c9158b2eea74760 Mon Sep 17 00:00:00 2001 From: Heejin Ahn Date: Tue, 27 Aug 2019 16:40:59 -0700 Subject: Add atomic.fence instruction (#2307) This adds `atomic.fence` instruction: https://github.com/WebAssembly/threads/blob/master/proposals/threads/Overview.md#fence-operator This also fix bugs in `atomic.wait` and `atomic.notify` instructions in binaryen.js and adds tests for them. --- src/passes/RemoveUnusedModuleElements.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'src/passes/RemoveUnusedModuleElements.cpp') diff --git a/src/passes/RemoveUnusedModuleElements.cpp b/src/passes/RemoveUnusedModuleElements.cpp index 20c30d271..d4c6d5a5d 100644 --- a/src/passes/RemoveUnusedModuleElements.cpp +++ b/src/passes/RemoveUnusedModuleElements.cpp @@ -106,6 +106,7 @@ struct ReachabilityAnalyzer : public PostWalker { void visitAtomicRMW(AtomicRMW* curr) { usesMemory = true; } void visitAtomicWait(AtomicWait* curr) { usesMemory = true; } void visitAtomicNotify(AtomicNotify* curr) { usesMemory = true; } + void visitAtomicFence(AtomicFence* curr) { usesMemory = true; } void visitMemoryInit(MemoryInit* curr) { usesMemory = true; } void visitDataDrop(DataDrop* curr) { usesMemory = true; } void visitMemoryCopy(MemoryCopy* curr) { usesMemory = true; } -- cgit v1.2.3