summaryrefslogtreecommitdiff
path: root/src/wasm-ir-builder.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/wasm-ir-builder.h')
-rw-r--r--src/wasm-ir-builder.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/wasm-ir-builder.h b/src/wasm-ir-builder.h
index e1d2ce1fd..398cd4f9a 100644
--- a/src/wasm-ir-builder.h
+++ b/src/wasm-ir-builder.h
@@ -157,8 +157,9 @@ public:
[[nodiscard]] Result<> makeTry(Name label, Type type);
[[nodiscard]] Result<> makeThrow(Name tag);
[[nodiscard]] Result<> makeRethrow(Index label);
- // [[nodiscard]] Result<> makeTupleMake();
- // [[nodiscard]] Result<> makeTupleExtract();
+ [[nodiscard]] Result<> makeTupleMake(uint32_t arity);
+ [[nodiscard]] Result<> makeTupleExtract(uint32_t arity, uint32_t index);
+ [[nodiscard]] Result<> makeTupleDrop(uint32_t arity);
[[nodiscard]] Result<> makeRefI31();
[[nodiscard]] Result<> makeI31Get(bool signed_);
[[nodiscard]] Result<> makeCallRef(HeapType type, bool isReturn);
@@ -217,6 +218,10 @@ public:
[[nodiscard]] Result<> visitThrow(Throw*);
[[nodiscard]] Result<> visitStringNew(StringNew*);
[[nodiscard]] Result<> visitStringEncode(StringEncode*);
+ [[nodiscard]] Result<> visitTupleMake(TupleMake*);
+ [[nodiscard]] Result<>
+ visitTupleExtract(TupleExtract*,
+ std::optional<uint32_t> arity = std::nullopt);
private:
Module& wasm;