summaryrefslogtreecommitdiff
path: root/src/wasm/wasm-ir-builder.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/wasm/wasm-ir-builder.cpp')
-rw-r--r--src/wasm/wasm-ir-builder.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/wasm/wasm-ir-builder.cpp b/src/wasm/wasm-ir-builder.cpp
index bd3a3ad11..6676d1cb4 100644
--- a/src/wasm/wasm-ir-builder.cpp
+++ b/src/wasm/wasm-ir-builder.cpp
@@ -1783,6 +1783,17 @@ Result<> IRBuilder::makeStringSliceIter() {
return Ok{};
}
+Result<> IRBuilder::makeContNew(HeapType ct) {
+ if (!ct.isContinuation()) {
+ return Err{"expected continuation type"};
+ }
+ ContNew curr;
+ CHECK_ERR(visitContNew(&curr));
+
+ push(builder.makeContNew(ct, curr.func));
+ return Ok{};
+}
+
Result<> IRBuilder::makeResume(HeapType ct,
const std::vector<Name>& tags,
const std::vector<Index>& labels) {