summaryrefslogtreecommitdiff
path: root/src/ir/possible-contents.cpp
diff options
context:
space:
mode:
authorFrank Emrich <git@emrich.io>2024-01-11 21:22:43 +0000
committerGitHub <noreply@github.com>2024-01-11 13:22:43 -0800
commitb4dee3dc05834ada8bf94e3e925186bc8b430c30 (patch)
tree19d3150e7438803274c1dfc03be56dff83309fe7 /src/ir/possible-contents.cpp
parente5948a939eb6610f1cb7742df8c54f6d17389b83 (diff)
downloadbinaryen-b4dee3dc05834ada8bf94e3e925186bc8b430c30.tar.gz
binaryen-b4dee3dc05834ada8bf94e3e925186bc8b430c30.tar.bz2
binaryen-b4dee3dc05834ada8bf94e3e925186bc8b430c30.zip
Typed continuations: resume instructions (#6083)
This PR is part of a series that adds basic support for the [typed continuations proposal](https://github.com/wasmfx/specfx). This particular PR adds support for the `resume` instruction. The most notable missing feature is validation, which is not implemented, yet.
Diffstat (limited to 'src/ir/possible-contents.cpp')
-rw-r--r--src/ir/possible-contents.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/ir/possible-contents.cpp b/src/ir/possible-contents.cpp
index 67b33553d..2f900f0ed 100644
--- a/src/ir/possible-contents.cpp
+++ b/src/ir/possible-contents.cpp
@@ -1199,6 +1199,11 @@ struct InfoCollector
void visitReturn(Return* curr) { addResult(curr->value); }
+ void visitResume(Resume* curr) {
+ // TODO: optimize when possible
+ addRoot(curr);
+ }
+
void visitFunction(Function* func) {
// Functions with a result can flow a value out from their body.
addResult(func->body);