diff options
Diffstat (limited to 'src/wasm-ir-builder.h')
-rw-r--r-- | src/wasm-ir-builder.h | 9 |
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; |