summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/binary-reader-interpreter.cc30
-rw-r--r--src/binary-reader-ir.cc18
-rw-r--r--src/binary-reader-logging.cc2
-rw-r--r--src/binary-reader-logging.h6
-rw-r--r--src/binary-reader-nop.h2
-rw-r--r--src/binary-reader.cc23
-rw-r--r--src/binary-reader.h6
-rw-r--r--src/binary-writer.cc7
-rw-r--r--src/expr-visitor.cc8
-rw-r--r--src/expr-visitor.h4
-rw-r--r--src/interpreter.cc20
-rw-r--r--src/ir.cc4
-rw-r--r--src/ir.h7
-rw-r--r--src/opcode.cc3
-rw-r--r--src/opcode.def3
-rw-r--r--src/prebuilt/wast-lexer-gen.cc6236
-rw-r--r--src/token.cc2
-rw-r--r--src/token.h4
-rw-r--r--src/type-checker.cc8
-rw-r--r--src/type-checker.h2
-rw-r--r--src/validator.cc56
-rw-r--r--src/wast-lexer.cc3
-rw-r--r--src/wast-parser.cc16
-rw-r--r--src/wat-writer.cc10
-rw-r--r--test/dump/atomic.txt488
-rw-r--r--test/interp/logging-all-opcodes.txt8207
-rw-r--r--test/interp/tracing-all-opcodes.txt636
-rw-r--r--test/parse/expr/atomic-align.txt4
-rw-r--r--test/parse/expr/atomic-disabled.txt139
-rw-r--r--test/parse/expr/atomic.txt4
-rw-r--r--test/parse/expr/bad-atomic-unnatural-align.txt135
-rw-r--r--test/roundtrip/fold-atomic.txt18
-rw-r--r--test/typecheck/bad-atomic-no-shared-memory.txt139
-rw-r--r--test/typecheck/bad-atomic-type-mismatch.txt408
34 files changed, 8580 insertions, 8078 deletions
diff --git a/src/binary-reader-interpreter.cc b/src/binary-reader-interpreter.cc
index 258ffc5f..ec468c06 100644
--- a/src/binary-reader-interpreter.cc
+++ b/src/binary-reader-interpreter.cc
@@ -186,6 +186,12 @@ class BinaryReaderInterpreter : public BinaryReaderNop {
wabt::Result OnTeeLocalExpr(Index local_index) override;
wabt::Result OnUnaryExpr(wabt::Opcode opcode) override;
wabt::Result OnUnreachableExpr() override;
+ wabt::Result OnWaitExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) override;
+ wabt::Result OnWakeExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) override;
wabt::Result EndFunctionBody(Index index) override;
wabt::Result EndElemSegmentInitExpr(Index index) override;
@@ -1501,6 +1507,30 @@ wabt::Result BinaryReaderInterpreter::OnUnreachableExpr() {
return wabt::Result::Ok;
}
+wabt::Result BinaryReaderInterpreter::OnWaitExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) {
+ CHECK_RESULT(CheckHasMemory(opcode));
+ CHECK_RESULT(CheckAtomicAlign(alignment_log2, opcode.GetMemorySize()));
+ CHECK_RESULT(typechecker_.OnWait(opcode));
+ CHECK_RESULT(EmitOpcode(opcode));
+ CHECK_RESULT(EmitI32(module_->memory_index));
+ CHECK_RESULT(EmitI32(offset));
+ return wabt::Result::Ok;
+}
+
+wabt::Result BinaryReaderInterpreter::OnWakeExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) {
+ CHECK_RESULT(CheckHasMemory(opcode));
+ CHECK_RESULT(CheckAtomicAlign(alignment_log2, opcode.GetMemorySize()));
+ CHECK_RESULT(typechecker_.OnWake(opcode));
+ CHECK_RESULT(EmitOpcode(opcode));
+ CHECK_RESULT(EmitI32(module_->memory_index));
+ CHECK_RESULT(EmitI32(offset));
+ return wabt::Result::Ok;
+}
+
wabt::Result BinaryReaderInterpreter::EndModule() {
for (ElemSegmentInfo& info : elem_segment_infos_) {
*info.dst = info.func_index;
diff --git a/src/binary-reader-ir.cc b/src/binary-reader-ir.cc
index f37b4ddb..5e4dd9f3 100644
--- a/src/binary-reader-ir.cc
+++ b/src/binary-reader-ir.cc
@@ -171,6 +171,12 @@ class BinaryReaderIR : public BinaryReaderNop {
Result OnTryExpr(Index num_types, Type* sig_types) override;
Result OnUnaryExpr(Opcode opcode) override;
Result OnUnreachableExpr() override;
+ wabt::Result OnWaitExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) override;
+ wabt::Result OnWakeExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) override;
Result EndFunctionBody(Index index) override;
Result OnElemSegmentCount(Index count) override;
@@ -765,6 +771,18 @@ Result BinaryReaderIR::OnUnreachableExpr() {
return AppendExpr(MakeUnique<UnreachableExpr>());
}
+wabt::Result BinaryReaderIR::OnWaitExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) {
+ return AppendExpr(MakeUnique<WaitExpr>(opcode, 1 << alignment_log2, offset));
+}
+
+wabt::Result BinaryReaderIR::OnWakeExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) {
+ return AppendExpr(MakeUnique<WakeExpr>(opcode, 1 << alignment_log2, offset));
+}
+
Result BinaryReaderIR::EndFunctionBody(Index index) {
CHECK_RESULT(PopLabel());
current_func_ = nullptr;
diff --git a/src/binary-reader-logging.cc b/src/binary-reader-logging.cc
index 7e4e19b3..b167e63d 100644
--- a/src/binary-reader-logging.cc
+++ b/src/binary-reader-logging.cc
@@ -566,6 +566,8 @@ DEFINE_INDEX_DESC(OnTeeLocalExpr, "index")
DEFINE_INDEX_DESC(OnThrowExpr, "except_index")
DEFINE0(OnUnreachableExpr)
DEFINE_OPCODE(OnUnaryExpr)
+DEFINE_LOAD_STORE_OPCODE(OnWaitExpr);
+DEFINE_LOAD_STORE_OPCODE(OnWakeExpr);
DEFINE_END(EndCodeSection)
DEFINE_BEGIN(BeginElemSection)
diff --git a/src/binary-reader-logging.h b/src/binary-reader-logging.h
index fe80843e..4fc95efb 100644
--- a/src/binary-reader-logging.h
+++ b/src/binary-reader-logging.h
@@ -189,6 +189,12 @@ class BinaryReaderLogging : public BinaryReaderDelegate {
Result OnTryExpr(Index num_types, Type* sig_types) override;
Result OnUnaryExpr(Opcode opcode) override;
Result OnUnreachableExpr() override;
+ Result OnWaitExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) override;
+ Result OnWakeExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) override;
Result EndFunctionBody(Index index) override;
Result EndCodeSection() override;
diff --git a/src/binary-reader-nop.h b/src/binary-reader-nop.h
index 90b91d2c..b3a24458 100644
--- a/src/binary-reader-nop.h
+++ b/src/binary-reader-nop.h
@@ -253,6 +253,8 @@ class BinaryReaderNop : public BinaryReaderDelegate {
}
Result OnUnaryExpr(Opcode opcode) override { return Result::Ok; }
Result OnUnreachableExpr() override { return Result::Ok; }
+ Result OnWaitExpr(Opcode, uint32_t, Address) override { return Result::Ok; }
+ Result OnWakeExpr(Opcode, uint32_t, Address) override { return Result::Ok; }
Result EndFunctionBody(Index index) override { return Result::Ok; }
Result EndCodeSection() override { return Result::Ok; }
diff --git a/src/binary-reader.cc b/src/binary-reader.cc
index faeea4e9..2ba930e1 100644
--- a/src/binary-reader.cc
+++ b/src/binary-reader.cc
@@ -959,6 +959,29 @@ Result BinaryReader::ReadFunctionBody(Offset end_offset) {
CALLBACK0(OnOpcodeBare);
break;
+ case Opcode::Wake: {
+ uint32_t alignment_log2;
+ CHECK_RESULT(ReadU32Leb128(&alignment_log2, "load alignment"));
+ Address offset;
+ CHECK_RESULT(ReadU32Leb128(&offset, "load offset"));
+
+ CALLBACK(OnWakeExpr, opcode, alignment_log2, offset);
+ CALLBACK(OnOpcodeUint32Uint32, alignment_log2, offset);
+ break;
+ }
+
+ case Opcode::I32Wait:
+ case Opcode::I64Wait: {
+ uint32_t alignment_log2;
+ CHECK_RESULT(ReadU32Leb128(&alignment_log2, "load alignment"));
+ Address offset;
+ CHECK_RESULT(ReadU32Leb128(&offset, "load offset"));
+
+ CALLBACK(OnWaitExpr, opcode, alignment_log2, offset);
+ CALLBACK(OnOpcodeUint32Uint32, alignment_log2, offset);
+ break;
+ }
+
case Opcode::I32AtomicLoad8U:
case Opcode::I32AtomicLoad16U:
case Opcode::I64AtomicLoad8U:
diff --git a/src/binary-reader.h b/src/binary-reader.h
index 907674f6..c0b32393 100644
--- a/src/binary-reader.h
+++ b/src/binary-reader.h
@@ -236,6 +236,12 @@ class BinaryReaderDelegate {
virtual Result OnUnaryExpr(Opcode opcode) = 0;
virtual Result OnUnreachableExpr() = 0;
+ virtual Result OnWaitExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) = 0;
+ virtual Result OnWakeExpr(Opcode opcode,
+ uint32_t alignment_log2,
+ Address offset) = 0;
virtual Result EndFunctionBody(Index index) = 0;
virtual Result EndCodeSection() = 0;
diff --git a/src/binary-writer.cc b/src/binary-writer.cc
index ad039677..54ba2fcb 100644
--- a/src/binary-writer.cc
+++ b/src/binary-writer.cc
@@ -329,6 +329,7 @@ Index BinaryWriter::GetLocalIndex(const Func* func, const Var& var) {
}
}
+// TODO(binji): Rename this, it is used for more than loads/stores now.
template <typename T>
void BinaryWriter::WriteLoadStoreExpr(const Module* module,
const Func* func,
@@ -543,6 +544,12 @@ void BinaryWriter::WriteExpr(const Module* module,
case ExprType::Unreachable:
WriteOpcode(stream_, Opcode::Unreachable);
break;
+ case ExprType::Wait:
+ WriteLoadStoreExpr<WaitExpr>(module, func, expr, "memory offset");
+ break;
+ case ExprType::Wake:
+ WriteLoadStoreExpr<WakeExpr>(module, func, expr, "memory offset");
+ break;
}
}
diff --git a/src/expr-visitor.cc b/src/expr-visitor.cc
index 8975a43d..27ffed09 100644
--- a/src/expr-visitor.cc
+++ b/src/expr-visitor.cc
@@ -184,6 +184,14 @@ Result ExprVisitor::VisitExpr(Expr* expr) {
case ExprType::Unreachable:
CHECK_RESULT(delegate_->OnUnreachableExpr(cast<UnreachableExpr>(expr)));
break;
+
+ case ExprType::Wait:
+ CHECK_RESULT(delegate_->OnWaitExpr(cast<WaitExpr>(expr)));
+ break;
+
+ case ExprType::Wake:
+ CHECK_RESULT(delegate_->OnWakeExpr(cast<WakeExpr>(expr)));
+ break;
}
return Result::Ok;
diff --git a/src/expr-visitor.h b/src/expr-visitor.h
index 2c110cd8..43db7dc3 100644
--- a/src/expr-visitor.h
+++ b/src/expr-visitor.h
@@ -77,6 +77,8 @@ class ExprVisitor::Delegate {
virtual Result OnCatchExpr(TryExpr*, Catch*) = 0;
virtual Result OnThrowExpr(ThrowExpr*) = 0;
virtual Result OnRethrowExpr(RethrowExpr*) = 0;
+ virtual Result OnWaitExpr(WaitExpr*) = 0;
+ virtual Result OnWakeExpr(WakeExpr*) = 0;
virtual Result OnAtomicLoadExpr(AtomicLoadExpr*) = 0;
virtual Result OnAtomicStoreExpr(AtomicStoreExpr*) = 0;
virtual Result OnAtomicRmwExpr(AtomicRmwExpr*) = 0;
@@ -121,6 +123,8 @@ class ExprVisitor::DelegateNop : public ExprVisitor::Delegate {
Result OnCatchExpr(TryExpr*, Catch*) override { return Result::Ok; }
Result OnThrowExpr(ThrowExpr*) override { return Result::Ok; }
Result OnRethrowExpr(RethrowExpr*) override { return Result::Ok; }
+ Result OnWaitExpr(WaitExpr*) override { return Result::Ok; }
+ Result OnWakeExpr(WakeExpr*) override { return Result::Ok; }
Result OnAtomicLoadExpr(AtomicLoadExpr*) override { return Result::Ok; }
Result OnAtomicStoreExpr(AtomicStoreExpr*) override { return Result::Ok; }
Result OnAtomicRmwExpr(AtomicRmwExpr*) override { return Result::Ok; }
diff --git a/src/interpreter.cc b/src/interpreter.cc
index 83cb69fb..0205e331 100644
--- a/src/interpreter.cc
+++ b/src/interpreter.cc
@@ -2300,6 +2300,13 @@ Result Thread::Run(int num_instructions, IstreamOffset* call_stack_return_top) {
case Opcode::Nop:
break;
+ case Opcode::I32Wait:
+ case Opcode::I64Wait:
+ case Opcode::Wake:
+ // TODO(binji): Implement.
+ TRAP(Unreachable);
+ break;
+
// The following opcodes are either never generated or should never be
// executed.
case Opcode::Block:
@@ -2444,6 +2451,7 @@ void Thread::Trace(Stream* stream) {
break;
}
+ case Opcode::Wake:
case Opcode::I32AtomicStore:
case Opcode::I32AtomicStore8:
case Opcode::I32AtomicStore16:
@@ -2523,6 +2531,15 @@ void Thread::Trace(Stream* stream) {
break;
}
+ case Opcode::I32Wait:{
+ Index memory_index = ReadU32(&pc);
+ stream->Writef("%s $%" PRIindex ":%u+$%u, %u, %" PRIu64 "\n",
+ opcode.GetName(), memory_index, Pick(3).i32, ReadU32At(pc),
+ Pick(2).i32, Pick(1).i64);
+ break;
+ }
+
+ case Opcode::I64Wait:
case Opcode::I64AtomicRmwCmpxchg:
case Opcode::I64AtomicRmw8UCmpxchg:
case Opcode::I64AtomicRmw16UCmpxchg:
@@ -2887,6 +2904,7 @@ void Environment::Disassemble(Stream* stream,
break;
}
+ case Opcode::Wake:
case Opcode::I32AtomicStore:
case Opcode::I64AtomicStore:
case Opcode::I32AtomicStore8:
@@ -2951,6 +2969,8 @@ void Environment::Disassemble(Stream* stream,
break;
}
+ case Opcode::I32Wait:
+ case Opcode::I64Wait:
case Opcode::I32AtomicRmwCmpxchg:
case Opcode::I64AtomicRmwCmpxchg:
case Opcode::I32AtomicRmw8UCmpxchg:
diff --git a/src/ir.cc b/src/ir.cc
index 685ee1b5..7522e511 100644
--- a/src/ir.cc
+++ b/src/ir.cc
@@ -53,7 +53,9 @@ const char* ExprTypeName[] = {
"Throw",
"TryBlock",
"Unary",
- "Unreachable"
+ "Unreachable",
+ "Wait",
+ "Wake"
};
} // end of anonymous namespace
diff --git a/src/ir.h b/src/ir.h
index d2646c03..2ad56379 100644
--- a/src/ir.h
+++ b/src/ir.h
@@ -148,9 +148,11 @@ enum class ExprType {
TryBlock,
Unary,
Unreachable,
+ Wait,
+ Wake,
First = Binary,
- Last = Unreachable
+ Last = Wake
};
const char* GetExprTypeName(ExprType type);
@@ -300,6 +302,7 @@ class ConstExpr : public ExprMixin<ExprType::Const> {
Const const_;
};
+// TODO(binji): Rename this, it is used for more than loads/stores now.
template <ExprType TypeEnum>
class LoadStoreExpr : public ExprMixin<TypeEnum> {
public:
@@ -323,6 +326,8 @@ typedef LoadStoreExpr<ExprType::AtomicLoad> AtomicLoadExpr;
typedef LoadStoreExpr<ExprType::AtomicStore> AtomicStoreExpr;
typedef LoadStoreExpr<ExprType::AtomicRmw> AtomicRmwExpr;
typedef LoadStoreExpr<ExprType::AtomicRmwCmpxchg> AtomicRmwCmpxchgExpr;
+typedef LoadStoreExpr<ExprType::Wait> WaitExpr;
+typedef LoadStoreExpr<ExprType::Wake> WakeExpr;
struct Exception {
Exception() = default;
diff --git a/src/opcode.cc b/src/opcode.cc
index cadb4987..a03815ac 100644
--- a/src/opcode.cc
+++ b/src/opcode.cc
@@ -111,6 +111,9 @@ bool Opcode::IsEnabled(const Features& features) const {
case Opcode::I64Extend8S:
case Opcode::I64Extend16S:
case Opcode::I64Extend32S:
+ case Opcode::Wake:
+ case Opcode::I32Wait:
+ case Opcode::I64Wait:
case Opcode::I32AtomicLoad:
case Opcode::I64AtomicLoad:
case Opcode::I32AtomicLoad8U:
diff --git a/src/opcode.def b/src/opcode.def
index a263f21b..28c0a804 100644
--- a/src/opcode.def
+++ b/src/opcode.def
@@ -234,6 +234,9 @@ WABT_OPCODE(I64, F32, ___, ___, 0, 0xfc, 0x05, I64TruncUSatF32, "i64.trunc_u:sa
WABT_OPCODE(I64, F64, ___, ___, 0, 0xfc, 0x06, I64TruncSSatF64, "i64.trunc_s:sat/f64")
WABT_OPCODE(I64, F64, ___, ___, 0, 0xfc, 0x07, I64TruncUSatF64, "i64.trunc_u:sat/f64")
+WABT_OPCODE(I32, I32, I32, ___, 4, 0xfe, 0x00, Wake, "wake")
+WABT_OPCODE(I32, I32, I32, I64, 4, 0xfe, 0x01, I32Wait, "i32.wait")
+WABT_OPCODE(I32, I32, I64, I64, 8, 0xfe, 0x02, I64Wait, "i64.wait")
WABT_OPCODE(I32, I32, ___, ___, 4, 0xfe, 0x10, I32AtomicLoad, "i32.atomic.load")
WABT_OPCODE(I64, I32, ___, ___, 8, 0xfe, 0x11, I64AtomicLoad, "i64.atomic.load")
WABT_OPCODE(I32, I32, ___, ___, 1, 0xfe, 0x12, I32AtomicLoad8U, "i32.atomic.load8_u")
diff --git a/src/prebuilt/wast-lexer-gen.cc b/src/prebuilt/wast-lexer-gen.cc
index c05fa791..357f31c0 100644
--- a/src/prebuilt/wast-lexer-gen.cc
+++ b/src/prebuilt/wast-lexer-gen.cc
@@ -450,12 +450,12 @@ YYCOND_BLOCK_COMMENT:
yy34:
++cursor_;
yy35:
-#line 556 "src/wast-lexer.cc"
+#line 559 "src/wast-lexer.cc"
{ continue; }
#line 456 "src/prebuilt/wast-lexer-gen.cc"
yy36:
++cursor_;
-#line 555 "src/wast-lexer.cc"
+#line 558 "src/wast-lexer.cc"
{ NEWLINE; continue; }
#line 461 "src/prebuilt/wast-lexer-gen.cc"
yy38:
@@ -469,7 +469,7 @@ yy39:
yy40:
++cursor_;
yy41:
-#line 557 "src/wast-lexer.cc"
+#line 560 "src/wast-lexer.cc"
{ MAYBE_MALFORMED_UTF8(" in block comment"); }
#line 475 "src/prebuilt/wast-lexer-gen.cc"
yy42:
@@ -504,12 +504,12 @@ yy47:
goto yy41;
yy48:
++cursor_;
-#line 551 "src/wast-lexer.cc"
+#line 554 "src/wast-lexer.cc"
{ COMMENT_NESTING++; continue; }
#line 510 "src/prebuilt/wast-lexer-gen.cc"
yy50:
++cursor_;
-#line 552 "src/wast-lexer.cc"
+#line 555 "src/wast-lexer.cc"
{ if (--COMMENT_NESTING == 0)
BEGIN(YYCOND_i);
continue; }
@@ -602,19 +602,19 @@ yy57:
if (yych <= 0xF4) goto yy76;
}
yy59:
-#line 549 "src/wast-lexer.cc"
+#line 552 "src/wast-lexer.cc"
{ continue; }
#line 608 "src/prebuilt/wast-lexer-gen.cc"
yy60:
++cursor_;
BEGIN(YYCOND_i);
-#line 548 "src/wast-lexer.cc"
+#line 551 "src/wast-lexer.cc"
{ NEWLINE; continue; }
#line 614 "src/prebuilt/wast-lexer-gen.cc"
yy62:
++cursor_;
yy63:
-#line 562 "src/wast-lexer.cc"
+#line 565 "src/wast-lexer.cc"
{ MAYBE_MALFORMED_UTF8(""); }
#line 620 "src/prebuilt/wast-lexer-gen.cc"
yy64:
@@ -743,8 +743,8 @@ YYCOND_i:
if (yybm[0+yych] & 4) {
goto yy81;
}
- if (yych <= 'e') {
- if (yych <= '+') {
+ if (yych <= 'f') {
+ if (yych <= ',') {
if (yych <= '#') {
if (yych <= 0x1F) {
if (yych <= 0x08) goto yy79;
@@ -760,76 +760,78 @@ YYCOND_i:
goto yy92;
} else {
if (yych <= ')') goto yy94;
- if (yych <= '*') goto yy86;
- goto yy96;
+ if (yych == '+') goto yy96;
+ goto yy86;
}
}
} else {
- if (yych <= ':') {
- if (yych <= '/') {
- if (yych == '-') goto yy96;
- goto yy86;
+ if (yych <= ';') {
+ if (yych <= '0') {
+ if (yych <= '-') goto yy96;
+ if (yych <= '/') goto yy86;
+ goto yy97;
} else {
- if (yych <= '0') goto yy97;
if (yych <= '9') goto yy99;
- goto yy86;
+ if (yych <= ':') goto yy86;
+ goto yy101;
}
} else {
- if (yych <= 'a') {
- if (yych <= ';') goto yy101;
+ if (yych <= 'b') {
if (yych <= '`') goto yy86;
- goto yy102;
+ if (yych <= 'a') goto yy102;
+ goto yy103;
} else {
- if (yych <= 'b') goto yy103;
if (yych <= 'c') goto yy104;
if (yych <= 'd') goto yy105;
- goto yy106;
+ if (yych <= 'e') goto yy106;
+ goto yy107;
}
}
}
} else {
- if (yych <= 'r') {
- if (yych <= 'l') {
- if (yych <= 'h') {
- if (yych <= 'f') goto yy107;
+ if (yych <= 't') {
+ if (yych <= 'm') {
+ if (yych <= 'i') {
if (yych <= 'g') goto yy108;
- goto yy86;
+ if (yych <= 'h') goto yy86;
+ goto yy109;
} else {
- if (yych <= 'i') goto yy109;
if (yych <= 'k') goto yy86;
- goto yy110;
+ if (yych <= 'l') goto yy110;
+ goto yy111;
}
} else {
- if (yych <= 'o') {
- if (yych <= 'm') goto yy111;
+ if (yych <= 'p') {
if (yych <= 'n') goto yy112;
- goto yy113;
+ if (yych <= 'o') goto yy113;
+ goto yy114;
} else {
- if (yych <= 'p') goto yy114;
if (yych <= 'q') goto yy115;
- goto yy116;
+ if (yych <= 'r') goto yy116;
+ if (yych <= 's') goto yy117;
+ goto yy118;
}
}
} else {
if (yych <= 0xC1) {
- if (yych <= 'u') {
- if (yych <= 's') goto yy117;
- if (yych <= 't') goto yy118;
- goto yy119;
+ if (yych <= 'w') {
+ if (yych <= 'u') goto yy119;
+ if (yych <= 'v') goto yy86;
+ goto yy120;
} else {
if (yych <= '~') goto yy86;
- if (yych >= 0x80) goto yy120;
+ if (yych >= 0x80) goto yy121;
}
} else {
if (yych <= 0xEF) {
- if (yych <= 0xDF) goto yy122;
- if (yych <= 0xE0) goto yy123;
- goto yy124;
+ if (yych <= 0xDF) goto yy123;
+ if (yych <= 0xE0) goto yy124;
+ goto yy125;
} else {
- if (yych <= 0xF0) goto yy125;
- if (yych <= 0xF3) goto yy126;
- if (yych <= 0xF4) goto yy127;
- goto yy120;
+ if (yych <= 0xF0) goto yy126;
+ if (yych <= 0xF3) goto yy127;
+ if (yych <= 0xF4) goto yy128;
+ goto yy121;
}
}
}
@@ -837,9 +839,9 @@ YYCOND_i:
yy79:
++cursor_;
yy80:
-#line 561 "src/wast-lexer.cc"
+#line 564 "src/wast-lexer.cc"
{ ERROR("unexpected char"); continue; }
-#line 843 "src/prebuilt/wast-lexer-gen.cc"
+#line 845 "src/prebuilt/wast-lexer-gen.cc"
yy81:
++cursor_;
if (limit_ <= cursor_) FILL(1);
@@ -847,14 +849,14 @@ yy81:
if (yybm[0+yych] & 4) {
goto yy81;
}
-#line 559 "src/wast-lexer.cc"
+#line 562 "src/wast-lexer.cc"
{ continue; }
-#line 853 "src/prebuilt/wast-lexer-gen.cc"
+#line 855 "src/prebuilt/wast-lexer-gen.cc"
yy84:
++cursor_;
-#line 558 "src/wast-lexer.cc"
+#line 561 "src/wast-lexer.cc"
{ NEWLINE; continue; }
-#line 858 "src/prebuilt/wast-lexer-gen.cc"
+#line 860 "src/prebuilt/wast-lexer-gen.cc"
yy86:
++cursor_;
if (limit_ <= cursor_) FILL(1);
@@ -864,58 +866,58 @@ yy87:
goto yy86;
}
yy88:
-#line 560 "src/wast-lexer.cc"
+#line 563 "src/wast-lexer.cc"
{ RETURN_TEXT(Reserved); }
-#line 870 "src/prebuilt/wast-lexer-gen.cc"
+#line 872 "src/prebuilt/wast-lexer-gen.cc"
yy89:
yyaccept = 0;
yych = *(marker_ = ++cursor_);
if (yych <= 0x1F) goto yy90;
- if (yych <= 0x7F) goto yy129;
+ if (yych <= 0x7F) goto yy130;
if (yych <= 0xC1) goto yy90;
- if (yych <= 0xF4) goto yy129;
+ if (yych <= 0xF4) goto yy130;
yy90:
BEGIN(YYCOND_BAD_TEXT);
#line 239 "src/wast-lexer.cc"
{ continue; }
-#line 882 "src/prebuilt/wast-lexer-gen.cc"
+#line 884 "src/prebuilt/wast-lexer-gen.cc"
yy91:
yych = *++cursor_;
if (yych <= '\'') {
- if (yych == '!') goto yy141;
+ if (yych == '!') goto yy142;
if (yych <= '"') goto yy88;
- goto yy141;
+ goto yy142;
} else {
if (yych <= ':') {
if (yych <= ')') goto yy88;
- goto yy141;
+ goto yy142;
} else {
if (yych <= ';') goto yy88;
- if (yych <= '~') goto yy141;
+ if (yych <= '~') goto yy142;
goto yy88;
}
}
yy92:
++cursor_;
- if ((yych = *cursor_) == ';') goto yy143;
+ if ((yych = *cursor_) == ';') goto yy144;
#line 230 "src/wast-lexer.cc"
{ RETURN(Lpar); }
-#line 904 "src/prebuilt/wast-lexer-gen.cc"
+#line 906 "src/prebuilt/wast-lexer-gen.cc"
yy94:
++cursor_;
#line 231 "src/wast-lexer.cc"
{ RETURN(Rpar); }
-#line 909 "src/prebuilt/wast-lexer-gen.cc"
+#line 911 "src/prebuilt/wast-lexer-gen.cc"
yy96:
yych = *++cursor_;
if (yych <= 'h') {
if (yych <= '/') goto yy87;
- if (yych <= '0') goto yy145;
- if (yych <= '9') goto yy147;
+ if (yych <= '0') goto yy146;
+ if (yych <= '9') goto yy148;
goto yy87;
} else {
- if (yych <= 'i') goto yy149;
- if (yych == 'n') goto yy150;
+ if (yych <= 'i') goto yy150;
+ if (yych == 'n') goto yy151;
goto yy87;
}
yy97:
@@ -931,7 +933,7 @@ yy97:
if (yych <= '-') {
if (yych >= '*') goto yy86;
} else {
- if (yych <= '.') goto yy151;
+ if (yych <= '.') goto yy152;
if (yych <= ':') goto yy86;
}
}
@@ -939,17 +941,17 @@ yy97:
if (yych <= 'd') {
if (yych <= 'E') {
if (yych <= 'D') goto yy86;
- goto yy153;
+ goto yy154;
} else {
- if (yych == '_') goto yy154;
+ if (yych == '_') goto yy155;
goto yy86;
}
} else {
if (yych <= 'w') {
- if (yych <= 'e') goto yy153;
+ if (yych <= 'e') goto yy154;
goto yy86;
} else {
- if (yych <= 'x') goto yy155;
+ if (yych <= 'x') goto yy156;
if (yych <= '~') goto yy86;
}
}
@@ -957,7 +959,7 @@ yy97:
yy98:
#line 232 "src/wast-lexer.cc"
{ RETURN_LITERAL(Nat, Int); }
-#line 961 "src/prebuilt/wast-lexer-gen.cc"
+#line 963 "src/prebuilt/wast-lexer-gen.cc"
yy99:
++cursor_;
if ((limit_ - cursor_) < 3) FILL(3);
@@ -972,20 +974,20 @@ yy99:
goto yy86;
} else {
if (yych <= ')') goto yy98;
- if (yych == '.') goto yy151;
+ if (yych == '.') goto yy152;
goto yy86;
}
} else {
if (yych <= '^') {
if (yych <= ';') goto yy98;
- if (yych == 'E') goto yy153;
+ if (yych == 'E') goto yy154;
goto yy86;
} else {
if (yych <= 'd') {
- if (yych <= '_') goto yy154;
+ if (yych <= '_') goto yy155;
goto yy86;
} else {
- if (yych <= 'e') goto yy153;
+ if (yych <= 'e') goto yy154;
if (yych <= '~') goto yy86;
goto yy98;
}
@@ -993,66 +995,66 @@ yy99:
}
yy101:
yych = *++cursor_;
- if (yych == ';') goto yy156;
+ if (yych == ';') goto yy157;
goto yy80;
yy102:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'l') goto yy158;
+ if (yych == 'l') goto yy159;
goto yy87;
} else {
- if (yych <= 'n') goto yy159;
- if (yych == 's') goto yy160;
+ if (yych <= 'n') goto yy160;
+ if (yych == 's') goto yy161;
goto yy87;
}
yy103:
yych = *++cursor_;
if (yych <= 'k') {
- if (yych == 'i') goto yy161;
+ if (yych == 'i') goto yy162;
goto yy87;
} else {
- if (yych <= 'l') goto yy162;
- if (yych == 'r') goto yy163;
+ if (yych <= 'l') goto yy163;
+ if (yych == 'r') goto yy164;
goto yy87;
}
yy104:
yych = *++cursor_;
- if (yych == 'a') goto yy165;
- if (yych == 'u') goto yy166;
+ if (yych == 'a') goto yy166;
+ if (yych == 'u') goto yy167;
goto yy87;
yy105:
yych = *++cursor_;
- if (yych == 'a') goto yy167;
- if (yych == 'r') goto yy168;
+ if (yych == 'a') goto yy168;
+ if (yych == 'r') goto yy169;
goto yy87;
yy106:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'l') goto yy169;
+ if (yych == 'l') goto yy170;
goto yy87;
} else {
- if (yych <= 'n') goto yy170;
- if (yych == 'x') goto yy171;
+ if (yych <= 'n') goto yy171;
+ if (yych == 'x') goto yy172;
goto yy87;
}
yy107:
yych = *++cursor_;
if (yych <= '5') {
- if (yych == '3') goto yy172;
+ if (yych == '3') goto yy173;
goto yy87;
} else {
- if (yych <= '6') goto yy173;
- if (yych == 'u') goto yy174;
+ if (yych <= '6') goto yy174;
+ if (yych == 'u') goto yy175;
goto yy87;
}
yy108:
yych = *++cursor_;
if (yych <= 'k') {
- if (yych == 'e') goto yy175;
+ if (yych == 'e') goto yy176;
goto yy87;
} else {
- if (yych <= 'l') goto yy176;
- if (yych == 'r') goto yy177;
+ if (yych <= 'l') goto yy177;
+ if (yych == 'r') goto yy178;
goto yy87;
}
yy109:
@@ -1060,278 +1062,282 @@ yy109:
if (yych <= 'e') {
if (yych <= '3') {
if (yych <= '2') goto yy87;
- goto yy178;
+ goto yy179;
} else {
- if (yych == '6') goto yy179;
+ if (yych == '6') goto yy180;
goto yy87;
}
} else {
if (yych <= 'l') {
- if (yych <= 'f') goto yy180;
+ if (yych <= 'f') goto yy181;
goto yy87;
} else {
- if (yych <= 'm') goto yy182;
- if (yych <= 'n') goto yy183;
+ if (yych <= 'm') goto yy183;
+ if (yych <= 'n') goto yy184;
goto yy87;
}
}
yy110:
yych = *++cursor_;
- if (yych == 'o') goto yy184;
+ if (yych == 'o') goto yy185;
goto yy87;
yy111:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy185;
+ if (yych == 'e') goto yy186;
goto yy87;
} else {
- if (yych <= 'o') goto yy186;
- if (yych == 'u') goto yy187;
+ if (yych <= 'o') goto yy187;
+ if (yych == 'u') goto yy188;
goto yy87;
}
yy112:
yych = *++cursor_;
- if (yych == 'a') goto yy188;
- if (yych == 'o') goto yy189;
+ if (yych == 'a') goto yy189;
+ if (yych == 'o') goto yy190;
goto yy87;
yy113:
yych = *++cursor_;
- if (yych == 'f') goto yy190;
+ if (yych == 'f') goto yy191;
goto yy87;
yy114:
yych = *++cursor_;
- if (yych == 'a') goto yy191;
+ if (yych == 'a') goto yy192;
goto yy87;
yy115:
yych = *++cursor_;
- if (yych == 'u') goto yy192;
+ if (yych == 'u') goto yy193;
goto yy87;
yy116:
yych = *++cursor_;
- if (yych == 'e') goto yy193;
+ if (yych == 'e') goto yy194;
goto yy87;
yy117:
yych = *++cursor_;
if (yych <= 'g') {
- if (yych == 'e') goto yy194;
+ if (yych == 'e') goto yy195;
goto yy87;
} else {
- if (yych <= 'h') goto yy195;
- if (yych == 't') goto yy196;
+ if (yych <= 'h') goto yy196;
+ if (yych == 't') goto yy197;
goto yy87;
}
yy118:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy197;
- case 'e': goto yy198;
- case 'h': goto yy199;
- case 'r': goto yy200;
- case 'y': goto yy201;
+ case 'a': goto yy198;
+ case 'e': goto yy199;
+ case 'h': goto yy200;
+ case 'r': goto yy201;
+ case 'y': goto yy202;
default: goto yy87;
}
yy119:
yych = *++cursor_;
- if (yych == 'n') goto yy202;
+ if (yych == 'n') goto yy203;
goto yy87;
yy120:
- ++cursor_;
+ yych = *++cursor_;
+ if (yych == 'a') goto yy204;
+ goto yy87;
yy121:
-#line 562 "src/wast-lexer.cc"
- { MAYBE_MALFORMED_UTF8(""); }
-#line 1143 "src/prebuilt/wast-lexer-gen.cc"
+ ++cursor_;
yy122:
+#line 565 "src/wast-lexer.cc"
+ { MAYBE_MALFORMED_UTF8(""); }
+#line 1149 "src/prebuilt/wast-lexer-gen.cc"
+yy123:
yych = *++cursor_;
- if (yych <= 0x7F) goto yy121;
+ if (yych <= 0x7F) goto yy122;
if (yych <= 0xBF) goto yy79;
- goto yy121;
-yy123:
- yyaccept = 1;
- yych = *(marker_ = ++cursor_);
- if (yych <= 0x9F) goto yy121;
- if (yych <= 0xBF) goto yy203;
- goto yy121;
+ goto yy122;
yy124:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x7F) goto yy121;
- if (yych <= 0xBF) goto yy203;
- goto yy121;
+ if (yych <= 0x9F) goto yy122;
+ if (yych <= 0xBF) goto yy205;
+ goto yy122;
yy125:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x8F) goto yy121;
- if (yych <= 0xBF) goto yy204;
- goto yy121;
+ if (yych <= 0x7F) goto yy122;
+ if (yych <= 0xBF) goto yy205;
+ goto yy122;
yy126:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x7F) goto yy121;
- if (yych <= 0xBF) goto yy204;
- goto yy121;
+ if (yych <= 0x8F) goto yy122;
+ if (yych <= 0xBF) goto yy206;
+ goto yy122;
yy127:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x7F) goto yy121;
- if (yych <= 0x8F) goto yy204;
- goto yy121;
+ if (yych <= 0x7F) goto yy122;
+ if (yych <= 0xBF) goto yy206;
+ goto yy122;
yy128:
+ yyaccept = 1;
+ yych = *(marker_ = ++cursor_);
+ if (yych <= 0x7F) goto yy122;
+ if (yych <= 0x8F) goto yy206;
+ goto yy122;
+yy129:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
-yy129:
+yy130:
if (yybm[0+yych] & 32) {
- goto yy128;
+ goto yy129;
}
if (yych <= 0xDF) {
if (yych <= '"') {
- if (yych >= ' ') goto yy131;
+ if (yych >= ' ') goto yy132;
} else {
- if (yych <= '\\') goto yy133;
- if (yych >= 0xC2) goto yy134;
+ if (yych <= '\\') goto yy134;
+ if (yych >= 0xC2) goto yy135;
}
} else {
if (yych <= 0xF0) {
- if (yych <= 0xE0) goto yy135;
- if (yych <= 0xEF) goto yy136;
- goto yy137;
+ if (yych <= 0xE0) goto yy136;
+ if (yych <= 0xEF) goto yy137;
+ goto yy138;
} else {
- if (yych <= 0xF3) goto yy138;
- if (yych <= 0xF4) goto yy139;
+ if (yych <= 0xF3) goto yy139;
+ if (yych <= 0xF4) goto yy140;
}
}
-yy130:
+yy131:
cursor_ = marker_;
if (yyaccept == 0) {
goto yy90;
} else {
- goto yy121;
+ goto yy122;
}
-yy131:
+yy132:
++cursor_;
#line 238 "src/wast-lexer.cc"
{ RETURN_TEXT(Text); }
-#line 1215 "src/prebuilt/wast-lexer-gen.cc"
-yy133:
+#line 1221 "src/prebuilt/wast-lexer-gen.cc"
+yy134:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '[') {
if (yych <= '\'') {
- if (yych == '"') goto yy128;
- if (yych <= '&') goto yy130;
- goto yy128;
+ if (yych == '"') goto yy129;
+ if (yych <= '&') goto yy131;
+ goto yy129;
} else {
if (yych <= '9') {
- if (yych <= '/') goto yy130;
- goto yy205;
+ if (yych <= '/') goto yy131;
+ goto yy207;
} else {
- if (yych <= '@') goto yy130;
- if (yych <= 'F') goto yy205;
- goto yy130;
+ if (yych <= '@') goto yy131;
+ if (yych <= 'F') goto yy207;
+ goto yy131;
}
}
} else {
if (yych <= 'n') {
if (yych <= '`') {
- if (yych <= '\\') goto yy128;
- goto yy130;
+ if (yych <= '\\') goto yy129;
+ goto yy131;
} else {
- if (yych <= 'f') goto yy205;
- if (yych <= 'm') goto yy130;
- goto yy128;
+ if (yych <= 'f') goto yy207;
+ if (yych <= 'm') goto yy131;
+ goto yy129;
}
} else {
if (yych <= 'r') {
- if (yych <= 'q') goto yy130;
- goto yy128;
+ if (yych <= 'q') goto yy131;
+ goto yy129;
} else {
- if (yych == 't') goto yy128;
- goto yy130;
+ if (yych == 't') goto yy129;
+ goto yy131;
}
}
}
-yy134:
- ++cursor_;
- if (limit_ <= cursor_) FILL(1);
- yych = *cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy128;
- goto yy130;
yy135:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
- if (yych <= 0x9F) goto yy130;
- if (yych <= 0xBF) goto yy134;
- goto yy130;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy129;
+ goto yy131;
yy136:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy134;
- goto yy130;
+ if (yych <= 0x9F) goto yy131;
+ if (yych <= 0xBF) goto yy135;
+ goto yy131;
yy137:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
- if (yych <= 0x8F) goto yy130;
- if (yych <= 0xBF) goto yy136;
- goto yy130;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy135;
+ goto yy131;
yy138:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy136;
- goto yy130;
+ if (yych <= 0x8F) goto yy131;
+ if (yych <= 0xBF) goto yy137;
+ goto yy131;
yy139:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0x8F) goto yy136;
- goto yy130;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy137;
+ goto yy131;
yy140:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0x8F) goto yy137;
+ goto yy131;
yy141:
+ ++cursor_;
+ if (limit_ <= cursor_) FILL(1);
+ yych = *cursor_;
+yy142:
if (yybm[0+yych] & 64) {
- goto yy140;
+ goto yy141;
}
- if (yych <= ')') goto yy142;
+ if (yych <= ')') goto yy143;
if (yych <= ',') goto yy86;
- if (yych <= ';') goto yy142;
+ if (yych <= ';') goto yy143;
if (yych <= '}') goto yy86;
-yy142:
-#line 544 "src/wast-lexer.cc"
- { RETURN_TEXT(Var); }
-#line 1312 "src/prebuilt/wast-lexer-gen.cc"
yy143:
+#line 547 "src/wast-lexer.cc"
+ { RETURN_TEXT(Var); }
+#line 1318 "src/prebuilt/wast-lexer-gen.cc"
+yy144:
++cursor_;
BEGIN(YYCOND_BLOCK_COMMENT);
-#line 550 "src/wast-lexer.cc"
+#line 553 "src/wast-lexer.cc"
{ COMMENT_NESTING = 1; continue; }
-#line 1318 "src/prebuilt/wast-lexer-gen.cc"
-yy145:
+#line 1324 "src/prebuilt/wast-lexer-gen.cc"
+yy146:
++cursor_;
if ((yych = *cursor_) <= ':') {
if (yych <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy146;
+ if (yych <= '"') goto yy147;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '.') {
if (yych <= '-') goto yy86;
- goto yy151;
+ goto yy152;
} else {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy147;
+ if (yych <= '9') goto yy148;
goto yy86;
}
}
@@ -1340,108 +1346,108 @@ yy145:
if (yych <= 'D') {
if (yych >= '<') goto yy86;
} else {
- if (yych <= 'E') goto yy153;
+ if (yych <= 'E') goto yy154;
if (yych <= '^') goto yy86;
- goto yy206;
+ goto yy208;
}
} else {
if (yych <= 'w') {
- if (yych == 'e') goto yy153;
+ if (yych == 'e') goto yy154;
goto yy86;
} else {
- if (yych <= 'x') goto yy207;
+ if (yych <= 'x') goto yy209;
if (yych <= '~') goto yy86;
}
}
}
-yy146:
+yy147:
#line 233 "src/wast-lexer.cc"
{ RETURN_LITERAL(Int, Int); }
-#line 1361 "src/prebuilt/wast-lexer-gen.cc"
-yy147:
+#line 1367 "src/prebuilt/wast-lexer-gen.cc"
+yy148:
++cursor_;
if ((limit_ - cursor_) < 3) FILL(3);
yych = *cursor_;
if (yych <= '9') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy146;
+ if (yych <= '"') goto yy147;
goto yy86;
} else {
if (yych <= '-') {
- if (yych <= ')') goto yy146;
+ if (yych <= ')') goto yy147;
goto yy86;
} else {
- if (yych <= '.') goto yy151;
+ if (yych <= '.') goto yy152;
if (yych <= '/') goto yy86;
- goto yy147;
+ goto yy148;
}
}
} else {
if (yych <= '^') {
if (yych <= ';') {
if (yych <= ':') goto yy86;
- goto yy146;
+ goto yy147;
} else {
- if (yych == 'E') goto yy153;
+ if (yych == 'E') goto yy154;
goto yy86;
}
} else {
if (yych <= 'd') {
- if (yych <= '_') goto yy206;
+ if (yych <= '_') goto yy208;
goto yy86;
} else {
- if (yych <= 'e') goto yy153;
+ if (yych <= 'e') goto yy154;
if (yych <= '~') goto yy86;
- goto yy146;
+ goto yy147;
}
}
}
-yy149:
- yych = *++cursor_;
- if (yych == 'n') goto yy208;
- goto yy87;
yy150:
yych = *++cursor_;
- if (yych == 'a') goto yy188;
+ if (yych == 'n') goto yy210;
goto yy87;
yy151:
+ yych = *++cursor_;
+ if (yych == 'a') goto yy189;
+ goto yy87;
+yy152:
++cursor_;
if ((yych = *cursor_) <= '9') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy152;
+ if (yych <= ')') goto yy153;
if (yych <= '/') goto yy86;
- goto yy209;
+ goto yy211;
}
} else {
if (yych <= 'E') {
- if (yych == ';') goto yy152;
+ if (yych == ';') goto yy153;
if (yych <= 'D') goto yy86;
- goto yy153;
+ goto yy154;
} else {
- if (yych == 'e') goto yy153;
+ if (yych == 'e') goto yy154;
if (yych <= '~') goto yy86;
}
}
-yy152:
+yy153:
#line 234 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Float); }
-#line 1433 "src/prebuilt/wast-lexer-gen.cc"
-yy153:
+#line 1439 "src/prebuilt/wast-lexer-gen.cc"
+yy154:
yych = *++cursor_;
if (yych <= ',') {
- if (yych == '+') goto yy211;
+ if (yych == '+') goto yy213;
goto yy87;
} else {
- if (yych <= '-') goto yy211;
+ if (yych <= '-') goto yy213;
if (yych <= '/') goto yy87;
- if (yych <= '9') goto yy212;
+ if (yych <= '9') goto yy214;
goto yy87;
}
-yy154:
+yy155:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1462,12 +1468,12 @@ yy154:
goto yy88;
}
}
-yy155:
+yy156:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yybm[0+yych] & 128) {
- goto yy214;
+ goto yy216;
}
if (yych <= '\'') {
if (yych == '!') goto yy86;
@@ -1483,243 +1489,247 @@ yy155:
goto yy88;
}
}
-yy156:
+yy157:
++cursor_;
BEGIN(YYCOND_LINE_COMMENT);
-#line 547 "src/wast-lexer.cc"
+#line 550 "src/wast-lexer.cc"
{ continue; }
-#line 1492 "src/prebuilt/wast-lexer-gen.cc"
-yy158:
- yych = *++cursor_;
- if (yych == 'i') goto yy216;
- goto yy87;
+#line 1498 "src/prebuilt/wast-lexer-gen.cc"
yy159:
yych = *++cursor_;
- if (yych == 'y') goto yy217;
+ if (yych == 'i') goto yy218;
goto yy87;
yy160:
yych = *++cursor_;
- if (yych == 's') goto yy218;
+ if (yych == 'y') goto yy219;
goto yy87;
yy161:
yych = *++cursor_;
- if (yych == 'n') goto yy219;
+ if (yych == 's') goto yy220;
goto yy87;
yy162:
yych = *++cursor_;
- if (yych == 'o') goto yy220;
+ if (yych == 'n') goto yy221;
goto yy87;
yy163:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy222;
+ goto yy87;
+yy164:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy164;
+ if (yych <= '"') goto yy165;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy221;
+ if (yych <= '_') goto yy223;
if (yych <= '~') goto yy86;
}
}
-yy164:
+yy165:
#line 263 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Br); }
-#line 1533 "src/prebuilt/wast-lexer-gen.cc"
-yy165:
- yych = *++cursor_;
- if (yych == 'l') goto yy222;
- if (yych == 't') goto yy223;
- goto yy87;
+#line 1539 "src/prebuilt/wast-lexer-gen.cc"
yy166:
yych = *++cursor_;
- if (yych == 'r') goto yy224;
+ if (yych == 'l') goto yy224;
+ if (yych == 't') goto yy225;
goto yy87;
yy167:
yych = *++cursor_;
- if (yych == 't') goto yy225;
+ if (yych == 'r') goto yy226;
goto yy87;
yy168:
yych = *++cursor_;
- if (yych == 'o') goto yy226;
+ if (yych == 't') goto yy227;
goto yy87;
yy169:
yych = *++cursor_;
- if (yych == 'e') goto yy227;
- if (yych == 's') goto yy228;
+ if (yych == 'o') goto yy228;
goto yy87;
yy170:
yych = *++cursor_;
- if (yych == 'd') goto yy229;
+ if (yych == 'e') goto yy229;
+ if (yych == 's') goto yy230;
goto yy87;
yy171:
yych = *++cursor_;
- if (yych == 'c') goto yy231;
- if (yych == 'p') goto yy232;
+ if (yych == 'd') goto yy231;
goto yy87;
yy172:
yych = *++cursor_;
- if (yych == '2') goto yy233;
+ if (yych == 'c') goto yy233;
+ if (yych == 'p') goto yy234;
goto yy87;
yy173:
yych = *++cursor_;
- if (yych == '4') goto yy235;
+ if (yych == '2') goto yy235;
goto yy87;
yy174:
yych = *++cursor_;
- if (yych == 'n') goto yy237;
+ if (yych == '4') goto yy237;
goto yy87;
yy175:
yych = *++cursor_;
- if (yych == 't') goto yy238;
+ if (yych == 'n') goto yy239;
goto yy87;
yy176:
yych = *++cursor_;
- if (yych == 'o') goto yy240;
+ if (yych == 't') goto yy240;
goto yy87;
yy177:
yych = *++cursor_;
- if (yych == 'o') goto yy241;
+ if (yych == 'o') goto yy242;
goto yy87;
yy178:
yych = *++cursor_;
- if (yych == '2') goto yy242;
+ if (yych == 'o') goto yy243;
goto yy87;
yy179:
yych = *++cursor_;
- if (yych == '4') goto yy244;
+ if (yych == '2') goto yy244;
goto yy87;
yy180:
+ yych = *++cursor_;
+ if (yych == '4') goto yy246;
+ goto yy87;
+yy181:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 259 "src/wast-lexer.cc"
{ RETURN_OPCODE0(If); }
-#line 1604 "src/prebuilt/wast-lexer-gen.cc"
-yy182:
- yych = *++cursor_;
- if (yych == 'p') goto yy246;
- goto yy87;
+#line 1610 "src/prebuilt/wast-lexer-gen.cc"
yy183:
yych = *++cursor_;
- if (yych == 'f') goto yy247;
- if (yych == 'v') goto yy249;
+ if (yych == 'p') goto yy248;
goto yy87;
yy184:
yych = *++cursor_;
- if (yych == 'c') goto yy250;
- if (yych == 'o') goto yy251;
+ if (yych == 'f') goto yy249;
+ if (yych == 'v') goto yy251;
goto yy87;
yy185:
yych = *++cursor_;
- if (yych == 'm') goto yy252;
+ if (yych == 'c') goto yy252;
+ if (yych == 'o') goto yy253;
goto yy87;
yy186:
yych = *++cursor_;
- if (yych == 'd') goto yy253;
+ if (yych == 'm') goto yy254;
goto yy87;
yy187:
yych = *++cursor_;
- if (yych == 't') goto yy254;
+ if (yych == 'd') goto yy255;
goto yy87;
yy188:
yych = *++cursor_;
- if (yych == 'n') goto yy256;
+ if (yych == 't') goto yy256;
goto yy87;
yy189:
yych = *++cursor_;
- if (yych == 'p') goto yy258;
+ if (yych == 'n') goto yy258;
goto yy87;
yy190:
yych = *++cursor_;
- if (yych == 'f') goto yy260;
+ if (yych == 'p') goto yy260;
goto yy87;
yy191:
yych = *++cursor_;
- if (yych == 'r') goto yy261;
+ if (yych == 'f') goto yy262;
goto yy87;
yy192:
yych = *++cursor_;
- if (yych == 'o') goto yy262;
+ if (yych == 'r') goto yy263;
goto yy87;
yy193:
yych = *++cursor_;
+ if (yych == 'o') goto yy264;
+ goto yy87;
+yy194:
+ yych = *++cursor_;
if (yych <= 'r') {
- if (yych == 'g') goto yy263;
+ if (yych == 'g') goto yy265;
goto yy87;
} else {
- if (yych <= 's') goto yy264;
- if (yych <= 't') goto yy265;
+ if (yych <= 's') goto yy266;
+ if (yych <= 't') goto yy267;
goto yy87;
}
-yy194:
- yych = *++cursor_;
- if (yych == 'l') goto yy266;
- if (yych == 't') goto yy267;
- goto yy87;
yy195:
yych = *++cursor_;
- if (yych == 'a') goto yy268;
+ if (yych == 'l') goto yy268;
+ if (yych == 't') goto yy269;
goto yy87;
yy196:
yych = *++cursor_;
- if (yych == 'a') goto yy269;
+ if (yych == 'a') goto yy270;
goto yy87;
yy197:
yych = *++cursor_;
- if (yych == 'b') goto yy270;
+ if (yych == 'a') goto yy271;
goto yy87;
yy198:
yych = *++cursor_;
- if (yych == 'e') goto yy271;
+ if (yych == 'b') goto yy272;
goto yy87;
yy199:
yych = *++cursor_;
- if (yych == 'e') goto yy272;
- if (yych == 'r') goto yy273;
+ if (yych == 'e') goto yy273;
goto yy87;
yy200:
yych = *++cursor_;
- if (yych == 'y') goto yy274;
+ if (yych == 'e') goto yy274;
+ if (yych == 'r') goto yy275;
goto yy87;
yy201:
yych = *++cursor_;
- if (yych == 'p') goto yy276;
+ if (yych == 'y') goto yy276;
goto yy87;
yy202:
yych = *++cursor_;
- if (yych == 'r') goto yy277;
+ if (yych == 'p') goto yy278;
goto yy87;
yy203:
yych = *++cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy79;
- goto yy130;
+ if (yych == 'r') goto yy279;
+ goto yy87;
yy204:
yych = *++cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy203;
- goto yy130;
+ if (yych == 'k') goto yy280;
+ goto yy87;
yy205:
+ yych = *++cursor_;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy79;
+ goto yy131;
+yy206:
+ yych = *++cursor_;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy205;
+ goto yy131;
+yy207:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '@') {
- if (yych <= '/') goto yy130;
- if (yych <= '9') goto yy128;
- goto yy130;
+ if (yych <= '/') goto yy131;
+ if (yych <= '9') goto yy129;
+ goto yy131;
} else {
- if (yych <= 'F') goto yy128;
- if (yych <= '`') goto yy130;
- if (yych <= 'f') goto yy128;
- goto yy130;
+ if (yych <= 'F') goto yy129;
+ if (yych <= '`') goto yy131;
+ if (yych <= 'f') goto yy129;
+ goto yy131;
}
-yy206:
+yy208:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1735,7 +1745,7 @@ yy206:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy147;
+ if (yych <= '9') goto yy148;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -1743,7 +1753,7 @@ yy206:
goto yy88;
}
}
-yy207:
+yy209:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1755,56 +1765,56 @@ yy207:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy278;
+ goto yy281;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy278;
+ goto yy281;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy278;
+ if (yych <= 'f') goto yy281;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy208:
+yy210:
yych = *++cursor_;
- if (yych == 'f') goto yy247;
+ if (yych == 'f') goto yy249;
goto yy87;
-yy209:
+yy211:
++cursor_;
if ((limit_ - cursor_) < 2) FILL(2);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy152;
+ if (yych <= '"') goto yy153;
goto yy86;
} else {
- if (yych <= ')') goto yy152;
+ if (yych <= ')') goto yy153;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy209;
+ if (yych <= '9') goto yy211;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy152;
- if (yych == 'E') goto yy153;
+ if (yych <= ';') goto yy153;
+ if (yych == 'E') goto yy154;
goto yy86;
} else {
if (yych <= 'd') {
- if (yych <= '_') goto yy280;
+ if (yych <= '_') goto yy283;
goto yy86;
} else {
- if (yych <= 'e') goto yy153;
+ if (yych <= 'e') goto yy154;
if (yych <= '~') goto yy86;
- goto yy152;
+ goto yy153;
}
}
}
-yy211:
+yy213:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1827,36 +1837,36 @@ yy211:
goto yy88;
}
}
-yy212:
+yy214:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy152;
+ goto yy153;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy152;
+ if (yych <= ')') goto yy153;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy212;
+ if (yych <= '9') goto yy214;
if (yych <= ':') goto yy86;
- goto yy152;
+ goto yy153;
} else {
- if (yych == '_') goto yy211;
+ if (yych == '_') goto yy213;
if (yych <= '~') goto yy86;
- goto yy152;
+ goto yy153;
}
}
-yy214:
+yy216:
++cursor_;
if ((limit_ - cursor_) < 3) FILL(3);
yych = *cursor_;
if (yybm[0+yych] & 128) {
- goto yy214;
+ goto yy216;
}
if (yych <= ':') {
if (yych <= '\'') {
@@ -1865,406 +1875,410 @@ yy214:
goto yy86;
} else {
if (yych <= ')') goto yy98;
- if (yych == '.') goto yy281;
+ if (yych == '.') goto yy284;
goto yy86;
}
} else {
if (yych <= '^') {
if (yych <= ';') goto yy98;
- if (yych == 'P') goto yy283;
+ if (yych == 'P') goto yy286;
goto yy86;
} else {
if (yych <= 'o') {
- if (yych <= '_') goto yy155;
+ if (yych <= '_') goto yy156;
goto yy86;
} else {
- if (yych <= 'p') goto yy283;
+ if (yych <= 'p') goto yy286;
if (yych <= '~') goto yy86;
goto yy98;
}
}
}
-yy216:
- yych = *++cursor_;
- if (yych == 'g') goto yy284;
- goto yy87;
-yy217:
- yych = *++cursor_;
- if (yych == 'f') goto yy285;
- goto yy87;
yy218:
yych = *++cursor_;
- if (yych == 'e') goto yy286;
+ if (yych == 'g') goto yy287;
goto yy87;
yy219:
yych = *++cursor_;
- if (yych == 'a') goto yy287;
+ if (yych == 'f') goto yy288;
goto yy87;
yy220:
yych = *++cursor_;
- if (yych == 'c') goto yy288;
+ if (yych == 'e') goto yy289;
goto yy87;
yy221:
yych = *++cursor_;
- if (yych == 'i') goto yy289;
- if (yych == 't') goto yy290;
+ if (yych == 'a') goto yy290;
goto yy87;
yy222:
yych = *++cursor_;
- if (yych == 'l') goto yy291;
+ if (yych == 'c') goto yy291;
goto yy87;
yy223:
yych = *++cursor_;
- if (yych == 'c') goto yy293;
+ if (yych == 'i') goto yy292;
+ if (yych == 't') goto yy293;
goto yy87;
yy224:
yych = *++cursor_;
- if (yych == 'r') goto yy294;
+ if (yych == 'l') goto yy294;
goto yy87;
yy225:
yych = *++cursor_;
- if (yych == 'a') goto yy295;
+ if (yych == 'c') goto yy296;
goto yy87;
yy226:
yych = *++cursor_;
- if (yych == 'p') goto yy297;
+ if (yych == 'r') goto yy297;
goto yy87;
yy227:
yych = *++cursor_;
- if (yych == 'm') goto yy299;
+ if (yych == 'a') goto yy298;
goto yy87;
yy228:
yych = *++cursor_;
- if (yych == 'e') goto yy301;
+ if (yych == 'p') goto yy300;
goto yy87;
yy229:
+ yych = *++cursor_;
+ if (yych == 'm') goto yy302;
+ goto yy87;
+yy230:
+ yych = *++cursor_;
+ if (yych == 'e') goto yy304;
+ goto yy87;
+yy231:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 269 "src/wast-lexer.cc"
{ RETURN_OPCODE0(End); }
-#line 1948 "src/prebuilt/wast-lexer-gen.cc"
-yy231:
+#line 1958 "src/prebuilt/wast-lexer-gen.cc"
+yy233:
yych = *++cursor_;
- if (yych == 'e') goto yy303;
+ if (yych == 'e') goto yy306;
goto yy87;
-yy232:
+yy234:
yych = *++cursor_;
- if (yych == 'o') goto yy304;
+ if (yych == 'o') goto yy307;
goto yy87;
-yy233:
+yy235:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy234;
+ if (yych <= '"') goto yy236;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
- if (yych == '.') goto yy305;
+ if (yych == '.') goto yy308;
goto yy86;
} else {
- if (yych <= ';') goto yy234;
+ if (yych <= ';') goto yy236;
if (yych <= '~') goto yy86;
}
}
-yy234:
+yy236:
#line 253 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, F32); }
-#line 1978 "src/prebuilt/wast-lexer-gen.cc"
-yy235:
+#line 1988 "src/prebuilt/wast-lexer-gen.cc"
+yy237:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy236;
+ if (yych <= '"') goto yy238;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
- if (yych == '.') goto yy306;
+ if (yych == '.') goto yy309;
goto yy86;
} else {
- if (yych <= ';') goto yy236;
+ if (yych <= ';') goto yy238;
if (yych <= '~') goto yy86;
}
}
-yy236:
+yy238:
#line 254 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, F64); }
-#line 2000 "src/prebuilt/wast-lexer-gen.cc"
-yy237:
+#line 2010 "src/prebuilt/wast-lexer-gen.cc"
+yy239:
yych = *++cursor_;
- if (yych == 'c') goto yy307;
+ if (yych == 'c') goto yy310;
goto yy87;
-yy238:
+yy240:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy239;
+ if (yych <= '"') goto yy241;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy309;
+ if (yych <= '_') goto yy312;
if (yych <= '~') goto yy86;
}
}
-yy239:
-#line 530 "src/wast-lexer.cc"
+yy241:
+#line 533 "src/wast-lexer.cc"
{ RETURN(Get); }
-#line 2025 "src/prebuilt/wast-lexer-gen.cc"
-yy240:
+#line 2035 "src/prebuilt/wast-lexer-gen.cc"
+yy242:
yych = *++cursor_;
- if (yych == 'b') goto yy310;
+ if (yych == 'b') goto yy313;
goto yy87;
-yy241:
+yy243:
yych = *++cursor_;
- if (yych == 'w') goto yy311;
+ if (yych == 'w') goto yy314;
goto yy87;
-yy242:
+yy244:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy243;
+ if (yych <= '"') goto yy245;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
- if (yych == '.') goto yy312;
+ if (yych == '.') goto yy315;
goto yy86;
} else {
- if (yych <= ';') goto yy243;
+ if (yych <= ';') goto yy245;
if (yych <= '~') goto yy86;
}
}
-yy243:
+yy245:
#line 251 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, I32); }
-#line 2055 "src/prebuilt/wast-lexer-gen.cc"
-yy244:
+#line 2065 "src/prebuilt/wast-lexer-gen.cc"
+yy246:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy245;
+ if (yych <= '"') goto yy247;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
- if (yych == '.') goto yy313;
+ if (yych == '.') goto yy316;
goto yy86;
} else {
- if (yych <= ';') goto yy245;
+ if (yych <= ';') goto yy247;
if (yych <= '~') goto yy86;
}
}
-yy245:
+yy247:
#line 252 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, I64); }
-#line 2077 "src/prebuilt/wast-lexer-gen.cc"
-yy246:
+#line 2087 "src/prebuilt/wast-lexer-gen.cc"
+yy248:
yych = *++cursor_;
- if (yych == 'o') goto yy314;
+ if (yych == 'o') goto yy317;
goto yy87;
-yy247:
+yy249:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 236 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Infinity); }
-#line 2089 "src/prebuilt/wast-lexer-gen.cc"
-yy249:
- yych = *++cursor_;
- if (yych == 'o') goto yy315;
- goto yy87;
-yy250:
- yych = *++cursor_;
- if (yych == 'a') goto yy316;
- goto yy87;
+#line 2099 "src/prebuilt/wast-lexer-gen.cc"
yy251:
yych = *++cursor_;
- if (yych == 'p') goto yy317;
+ if (yych == 'o') goto yy318;
goto yy87;
yy252:
yych = *++cursor_;
- if (yych == 'o') goto yy319;
+ if (yych == 'a') goto yy319;
goto yy87;
yy253:
yych = *++cursor_;
- if (yych == 'u') goto yy320;
+ if (yych == 'p') goto yy320;
goto yy87;
yy254:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy322;
+ goto yy87;
+yy255:
+ yych = *++cursor_;
+ if (yych == 'u') goto yy323;
+ goto yy87;
+yy256:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 256 "src/wast-lexer.cc"
{ RETURN(Mut); }
-#line 2117 "src/prebuilt/wast-lexer-gen.cc"
-yy256:
+#line 2127 "src/prebuilt/wast-lexer-gen.cc"
+yy258:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy257;
+ if (yych <= '"') goto yy259;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
if (yych <= '9') goto yy86;
- goto yy321;
+ goto yy324;
} else {
- if (yych <= ';') goto yy257;
+ if (yych <= ';') goto yy259;
if (yych <= '~') goto yy86;
}
}
-yy257:
+yy259:
#line 237 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Nan); }
-#line 2139 "src/prebuilt/wast-lexer-gen.cc"
-yy258:
+#line 2149 "src/prebuilt/wast-lexer-gen.cc"
+yy260:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 257 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Nop); }
-#line 2147 "src/prebuilt/wast-lexer-gen.cc"
-yy260:
- yych = *++cursor_;
- if (yych == 's') goto yy322;
- goto yy87;
-yy261:
- yych = *++cursor_;
- if (yych == 'a') goto yy323;
- goto yy87;
+#line 2157 "src/prebuilt/wast-lexer-gen.cc"
yy262:
yych = *++cursor_;
- if (yych == 't') goto yy324;
+ if (yych == 's') goto yy325;
goto yy87;
yy263:
yych = *++cursor_;
- if (yych == 'i') goto yy325;
+ if (yych == 'a') goto yy326;
goto yy87;
yy264:
yych = *++cursor_;
- if (yych == 'u') goto yy326;
+ if (yych == 't') goto yy327;
goto yy87;
yy265:
yych = *++cursor_;
- if (yych == 'h') goto yy327;
- if (yych == 'u') goto yy328;
+ if (yych == 'i') goto yy328;
goto yy87;
yy266:
yych = *++cursor_;
- if (yych == 'e') goto yy329;
+ if (yych == 'u') goto yy329;
goto yy87;
yy267:
yych = *++cursor_;
- if (yych == '_') goto yy330;
+ if (yych == 'h') goto yy330;
+ if (yych == 'u') goto yy331;
goto yy87;
yy268:
yych = *++cursor_;
- if (yych == 'r') goto yy331;
+ if (yych == 'e') goto yy332;
goto yy87;
yy269:
yych = *++cursor_;
- if (yych == 'r') goto yy332;
+ if (yych == '_') goto yy333;
goto yy87;
yy270:
yych = *++cursor_;
- if (yych == 'l') goto yy333;
+ if (yych == 'r') goto yy334;
goto yy87;
yy271:
yych = *++cursor_;
- if (yych == '_') goto yy334;
+ if (yych == 'r') goto yy335;
goto yy87;
yy272:
yych = *++cursor_;
- if (yych == 'n') goto yy335;
+ if (yych == 'l') goto yy336;
goto yy87;
yy273:
yych = *++cursor_;
- if (yych == 'o') goto yy337;
+ if (yych == '_') goto yy337;
goto yy87;
yy274:
+ yych = *++cursor_;
+ if (yych == 'n') goto yy338;
+ goto yy87;
+yy275:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy340;
+ goto yy87;
+yy276:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 539 "src/wast-lexer.cc"
+#line 542 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Try); }
-#line 2212 "src/prebuilt/wast-lexer-gen.cc"
-yy276:
+#line 2222 "src/prebuilt/wast-lexer-gen.cc"
+yy278:
yych = *++cursor_;
- if (yych == 'e') goto yy338;
+ if (yych == 'e') goto yy341;
goto yy87;
-yy277:
+yy279:
yych = *++cursor_;
- if (yych == 'e') goto yy340;
+ if (yych == 'e') goto yy343;
goto yy87;
-yy278:
+yy280:
+ yych = *++cursor_;
+ if (yych == 'e') goto yy344;
+ goto yy87;
+yy281:
++cursor_;
if ((limit_ - cursor_) < 3) FILL(3);
yych = *cursor_;
if (yych <= ';') {
if (yych <= ')') {
if (yych <= '!') {
- if (yych <= ' ') goto yy146;
+ if (yych <= ' ') goto yy147;
goto yy86;
} else {
- if (yych <= '"') goto yy146;
+ if (yych <= '"') goto yy147;
if (yych <= '\'') goto yy86;
- goto yy146;
+ goto yy147;
}
} else {
if (yych <= '/') {
- if (yych == '.') goto yy281;
+ if (yych == '.') goto yy284;
goto yy86;
} else {
- if (yych <= '9') goto yy278;
+ if (yych <= '9') goto yy281;
if (yych <= ':') goto yy86;
- goto yy146;
+ goto yy147;
}
}
} else {
if (yych <= '_') {
if (yych <= 'O') {
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy278;
+ if (yych <= 'F') goto yy281;
goto yy86;
} else {
- if (yych <= 'P') goto yy283;
+ if (yych <= 'P') goto yy286;
if (yych <= '^') goto yy86;
- goto yy207;
+ goto yy209;
}
} else {
if (yych <= 'o') {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy278;
+ if (yych <= 'f') goto yy281;
goto yy86;
} else {
- if (yych <= 'p') goto yy283;
+ if (yych <= 'p') goto yy286;
if (yych <= '~') goto yy86;
- goto yy146;
+ goto yy147;
}
}
}
-yy280:
+yy283:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -2280,7 +2294,7 @@ yy280:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy209;
+ if (yych <= '9') goto yy211;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -2288,7 +2302,7 @@ yy280:
goto yy88;
}
}
-yy281:
+yy284:
++cursor_;
if ((yych = *cursor_) <= ';') {
if (yych <= '\'') {
@@ -2298,7 +2312,7 @@ yy281:
if (yych <= '/') {
if (yych >= '*') goto yy86;
} else {
- if (yych <= '9') goto yy341;
+ if (yych <= '9') goto yy346;
if (yych <= ':') goto yy86;
}
}
@@ -2306,383 +2320,392 @@ yy281:
if (yych <= '`') {
if (yych <= 'F') {
if (yych <= '@') goto yy86;
- goto yy341;
+ goto yy346;
} else {
- if (yych == 'P') goto yy283;
+ if (yych == 'P') goto yy286;
goto yy86;
}
} else {
if (yych <= 'o') {
- if (yych <= 'f') goto yy341;
+ if (yych <= 'f') goto yy346;
goto yy86;
} else {
- if (yych <= 'p') goto yy283;
+ if (yych <= 'p') goto yy286;
if (yych <= '~') goto yy86;
}
}
}
-yy282:
+yy285:
#line 235 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Hexfloat); }
-#line 2328 "src/prebuilt/wast-lexer-gen.cc"
-yy283:
+#line 2342 "src/prebuilt/wast-lexer-gen.cc"
+yy286:
yych = *++cursor_;
if (yych <= ',') {
- if (yych == '+') goto yy343;
+ if (yych == '+') goto yy348;
goto yy87;
} else {
- if (yych <= '-') goto yy343;
+ if (yych <= '-') goto yy348;
if (yych <= '/') goto yy87;
- if (yych <= '9') goto yy344;
+ if (yych <= '9') goto yy349;
goto yy87;
}
-yy284:
+yy287:
yych = *++cursor_;
- if (yych == 'n') goto yy346;
+ if (yych == 'n') goto yy351;
goto yy87;
-yy285:
+yy288:
yych = *++cursor_;
- if (yych == 'u') goto yy347;
+ if (yych == 'u') goto yy352;
goto yy87;
-yy286:
+yy289:
yych = *++cursor_;
- if (yych == 'r') goto yy348;
+ if (yych == 'r') goto yy353;
goto yy87;
-yy287:
+yy290:
yych = *++cursor_;
- if (yych == 'r') goto yy349;
+ if (yych == 'r') goto yy354;
goto yy87;
-yy288:
+yy291:
yych = *++cursor_;
- if (yych == 'k') goto yy350;
+ if (yych == 'k') goto yy355;
goto yy87;
-yy289:
+yy292:
yych = *++cursor_;
- if (yych == 'f') goto yy352;
+ if (yych == 'f') goto yy357;
goto yy87;
-yy290:
+yy293:
yych = *++cursor_;
- if (yych == 'a') goto yy354;
+ if (yych == 'a') goto yy359;
goto yy87;
-yy291:
+yy294:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy292;
+ if (yych <= '"') goto yy295;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy355;
+ if (yych <= '_') goto yy360;
if (yych <= '~') goto yy86;
}
}
-yy292:
+yy295:
#line 266 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Call); }
-#line 2388 "src/prebuilt/wast-lexer-gen.cc"
-yy293:
+#line 2402 "src/prebuilt/wast-lexer-gen.cc"
+yy296:
yych = *++cursor_;
- if (yych == 'h') goto yy356;
+ if (yych == 'h') goto yy361;
goto yy87;
-yy294:
+yy297:
yych = *++cursor_;
- if (yych == 'e') goto yy358;
+ if (yych == 'e') goto yy363;
goto yy87;
-yy295:
+yy298:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 523 "src/wast-lexer.cc"
+#line 526 "src/wast-lexer.cc"
{ RETURN(Data); }
-#line 2404 "src/prebuilt/wast-lexer-gen.cc"
-yy297:
+#line 2418 "src/prebuilt/wast-lexer-gen.cc"
+yy300:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 268 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Drop); }
-#line 2412 "src/prebuilt/wast-lexer-gen.cc"
-yy299:
+#line 2426 "src/prebuilt/wast-lexer-gen.cc"
+yy302:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 522 "src/wast-lexer.cc"
+#line 525 "src/wast-lexer.cc"
{ RETURN(Elem); }
-#line 2420 "src/prebuilt/wast-lexer-gen.cc"
-yy301:
+#line 2434 "src/prebuilt/wast-lexer-gen.cc"
+yy304:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 261 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Else); }
-#line 2428 "src/prebuilt/wast-lexer-gen.cc"
-yy303:
+#line 2442 "src/prebuilt/wast-lexer-gen.cc"
+yy306:
yych = *++cursor_;
- if (yych == 'p') goto yy359;
+ if (yych == 'p') goto yy364;
goto yy87;
-yy304:
+yy307:
yych = *++cursor_;
- if (yych == 'r') goto yy360;
+ if (yych == 'r') goto yy365;
goto yy87;
-yy305:
+yy308:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy361;
- case 'c': goto yy362;
- case 'd': goto yy363;
- case 'e': goto yy364;
- case 'f': goto yy365;
- case 'g': goto yy366;
- case 'l': goto yy367;
- case 'm': goto yy368;
- case 'n': goto yy369;
- case 'r': goto yy370;
- case 's': goto yy371;
- case 't': goto yy372;
+ case 'a': goto yy366;
+ case 'c': goto yy367;
+ case 'd': goto yy368;
+ case 'e': goto yy369;
+ case 'f': goto yy370;
+ case 'g': goto yy371;
+ case 'l': goto yy372;
+ case 'm': goto yy373;
+ case 'n': goto yy374;
+ case 'r': goto yy375;
+ case 's': goto yy376;
+ case 't': goto yy377;
default: goto yy87;
}
-yy306:
+yy309:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy373;
- case 'c': goto yy374;
- case 'd': goto yy375;
- case 'e': goto yy376;
- case 'f': goto yy377;
- case 'g': goto yy378;
- case 'l': goto yy379;
- case 'm': goto yy380;
- case 'n': goto yy381;
- case 'p': goto yy382;
- case 'r': goto yy383;
- case 's': goto yy384;
- case 't': goto yy385;
+ case 'a': goto yy378;
+ case 'c': goto yy379;
+ case 'd': goto yy380;
+ case 'e': goto yy381;
+ case 'f': goto yy382;
+ case 'g': goto yy383;
+ case 'l': goto yy384;
+ case 'm': goto yy385;
+ case 'n': goto yy386;
+ case 'p': goto yy387;
+ case 'r': goto yy388;
+ case 's': goto yy389;
+ case 't': goto yy390;
default: goto yy87;
}
-yy307:
+yy310:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 511 "src/wast-lexer.cc"
+#line 514 "src/wast-lexer.cc"
{ RETURN(Func); }
-#line 2479 "src/prebuilt/wast-lexer-gen.cc"
-yy309:
+#line 2493 "src/prebuilt/wast-lexer-gen.cc"
+yy312:
yych = *++cursor_;
- if (yych == 'g') goto yy386;
- if (yych == 'l') goto yy387;
+ if (yych == 'g') goto yy391;
+ if (yych == 'l') goto yy392;
goto yy87;
-yy310:
+yy313:
yych = *++cursor_;
- if (yych == 'a') goto yy388;
+ if (yych == 'a') goto yy393;
goto yy87;
-yy311:
+yy314:
yych = *++cursor_;
- if (yych == '_') goto yy389;
+ if (yych == '_') goto yy394;
goto yy87;
-yy312:
+yy315:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy390;
- case 'c': goto yy391;
- case 'd': goto yy392;
- case 'e': goto yy393;
- case 'g': goto yy394;
- case 'l': goto yy395;
- case 'm': goto yy396;
- case 'n': goto yy397;
- case 'o': goto yy398;
- case 'p': goto yy399;
- case 'r': goto yy400;
- case 's': goto yy401;
- case 't': goto yy402;
- case 'w': goto yy403;
- case 'x': goto yy404;
+ case 'a': goto yy395;
+ case 'c': goto yy396;
+ case 'd': goto yy397;
+ case 'e': goto yy398;
+ case 'g': goto yy399;
+ case 'l': goto yy400;
+ case 'm': goto yy401;
+ case 'n': goto yy402;
+ case 'o': goto yy403;
+ case 'p': goto yy404;
+ case 'r': goto yy405;
+ case 's': goto yy406;
+ case 't': goto yy407;
+ case 'w': goto yy408;
+ case 'x': goto yy409;
default: goto yy87;
}
-yy313:
+yy316:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy405;
- case 'c': goto yy406;
- case 'd': goto yy407;
- case 'e': goto yy408;
- case 'g': goto yy409;
- case 'l': goto yy410;
- case 'm': goto yy411;
- case 'n': goto yy412;
- case 'o': goto yy413;
- case 'p': goto yy414;
- case 'r': goto yy415;
- case 's': goto yy416;
- case 't': goto yy417;
- case 'x': goto yy418;
+ case 'a': goto yy410;
+ case 'c': goto yy411;
+ case 'd': goto yy412;
+ case 'e': goto yy413;
+ case 'g': goto yy414;
+ case 'l': goto yy415;
+ case 'm': goto yy416;
+ case 'n': goto yy417;
+ case 'o': goto yy418;
+ case 'p': goto yy419;
+ case 'r': goto yy420;
+ case 's': goto yy421;
+ case 't': goto yy422;
+ case 'w': goto yy423;
+ case 'x': goto yy424;
default: goto yy87;
}
-yy314:
+yy317:
yych = *++cursor_;
- if (yych == 'r') goto yy419;
+ if (yych == 'r') goto yy425;
goto yy87;
-yy315:
+yy318:
yych = *++cursor_;
- if (yych == 'k') goto yy420;
+ if (yych == 'k') goto yy426;
goto yy87;
-yy316:
+yy319:
yych = *++cursor_;
- if (yych == 'l') goto yy421;
+ if (yych == 'l') goto yy427;
goto yy87;
-yy317:
+yy320:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 262 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Loop); }
-#line 2551 "src/prebuilt/wast-lexer-gen.cc"
-yy319:
- yych = *++cursor_;
- if (yych == 'r') goto yy423;
- goto yy87;
-yy320:
- yych = *++cursor_;
- if (yych == 'l') goto yy424;
- goto yy87;
-yy321:
- yych = *++cursor_;
- if (yych == '0') goto yy425;
- goto yy87;
+#line 2566 "src/prebuilt/wast-lexer-gen.cc"
yy322:
yych = *++cursor_;
- if (yych == 'e') goto yy426;
+ if (yych == 'r') goto yy429;
goto yy87;
yy323:
yych = *++cursor_;
- if (yych == 'm') goto yy427;
+ if (yych == 'l') goto yy430;
goto yy87;
yy324:
yych = *++cursor_;
- if (yych == 'e') goto yy429;
+ if (yych == '0') goto yy431;
goto yy87;
yy325:
yych = *++cursor_;
- if (yych == 's') goto yy431;
+ if (yych == 'e') goto yy432;
goto yy87;
yy326:
yych = *++cursor_;
- if (yych == 'l') goto yy432;
+ if (yych == 'm') goto yy433;
goto yy87;
yy327:
yych = *++cursor_;
- if (yych == 'r') goto yy433;
+ if (yych == 'e') goto yy435;
goto yy87;
yy328:
yych = *++cursor_;
- if (yych == 'r') goto yy434;
+ if (yych == 's') goto yy437;
goto yy87;
yy329:
yych = *++cursor_;
- if (yych == 'c') goto yy435;
+ if (yych == 'l') goto yy438;
goto yy87;
yy330:
yych = *++cursor_;
- if (yych == 'g') goto yy436;
- if (yych == 'l') goto yy437;
+ if (yych == 'r') goto yy439;
goto yy87;
yy331:
yych = *++cursor_;
- if (yych == 'e') goto yy438;
+ if (yych == 'r') goto yy440;
goto yy87;
yy332:
yych = *++cursor_;
- if (yych == 't') goto yy439;
+ if (yych == 'c') goto yy441;
goto yy87;
yy333:
yych = *++cursor_;
- if (yych == 'e') goto yy441;
+ if (yych == 'g') goto yy442;
+ if (yych == 'l') goto yy443;
goto yy87;
yy334:
yych = *++cursor_;
- if (yych == 'l') goto yy443;
+ if (yych == 'e') goto yy444;
goto yy87;
yy335:
+ yych = *++cursor_;
+ if (yych == 't') goto yy445;
+ goto yy87;
+yy336:
+ yych = *++cursor_;
+ if (yych == 'e') goto yy447;
+ goto yy87;
+yy337:
+ yych = *++cursor_;
+ if (yych == 'l') goto yy449;
+ goto yy87;
+yy338:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 260 "src/wast-lexer.cc"
{ RETURN(Then); }
-#line 2624 "src/prebuilt/wast-lexer-gen.cc"
-yy337:
+#line 2639 "src/prebuilt/wast-lexer-gen.cc"
+yy340:
yych = *++cursor_;
- if (yych == 'w') goto yy444;
+ if (yych == 'w') goto yy450;
goto yy87;
-yy338:
+yy341:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 510 "src/wast-lexer.cc"
+#line 513 "src/wast-lexer.cc"
{ RETURN(Type); }
-#line 2636 "src/prebuilt/wast-lexer-gen.cc"
-yy340:
+#line 2651 "src/prebuilt/wast-lexer-gen.cc"
+yy343:
yych = *++cursor_;
- if (yych == 'a') goto yy446;
+ if (yych == 'a') goto yy452;
goto yy87;
-yy341:
+yy344:
+ ++cursor_;
+ if (yybm[0+(yych = *cursor_)] & 8) {
+ goto yy86;
+ }
+#line 448 "src/wast-lexer.cc"
+ { RETURN_OPCODE0(Wake); }
+#line 2663 "src/prebuilt/wast-lexer-gen.cc"
+yy346:
++cursor_;
if ((limit_ - cursor_) < 2) FILL(2);
yych = *cursor_;
if (yych <= '@') {
if (yych <= ')') {
if (yych <= '!') {
- if (yych <= ' ') goto yy282;
+ if (yych <= ' ') goto yy285;
goto yy86;
} else {
- if (yych <= '"') goto yy282;
+ if (yych <= '"') goto yy285;
if (yych <= '\'') goto yy86;
- goto yy282;
+ goto yy285;
}
} else {
if (yych <= '9') {
if (yych <= '/') goto yy86;
- goto yy341;
+ goto yy346;
} else {
- if (yych == ';') goto yy282;
+ if (yych == ';') goto yy285;
goto yy86;
}
}
} else {
if (yych <= '_') {
if (yych <= 'O') {
- if (yych <= 'F') goto yy341;
+ if (yych <= 'F') goto yy346;
goto yy86;
} else {
- if (yych <= 'P') goto yy283;
+ if (yych <= 'P') goto yy286;
if (yych <= '^') goto yy86;
- goto yy447;
+ goto yy453;
}
} else {
if (yych <= 'o') {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy341;
+ if (yych <= 'f') goto yy346;
goto yy86;
} else {
- if (yych <= 'p') goto yy283;
+ if (yych <= 'p') goto yy286;
if (yych <= '~') goto yy86;
- goto yy282;
+ goto yy285;
}
}
}
-yy343:
+yy348:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -2705,545 +2728,550 @@ yy343:
goto yy88;
}
}
-yy344:
+yy349:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy282;
+ goto yy285;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy282;
+ if (yych <= ')') goto yy285;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy344;
+ if (yych <= '9') goto yy349;
if (yych <= ':') goto yy86;
- goto yy282;
+ goto yy285;
} else {
- if (yych == '_') goto yy343;
+ if (yych == '_') goto yy348;
if (yych <= '~') goto yy86;
- goto yy282;
+ goto yy285;
}
}
-yy346:
+yy351:
yych = *++cursor_;
- if (yych == '=') goto yy448;
+ if (yych == '=') goto yy454;
goto yy87;
-yy347:
+yy352:
yych = *++cursor_;
- if (yych == 'n') goto yy449;
+ if (yych == 'n') goto yy455;
goto yy87;
-yy348:
+yy353:
yych = *++cursor_;
- if (yych == 't') goto yy450;
+ if (yych == 't') goto yy456;
goto yy87;
-yy349:
+yy354:
yych = *++cursor_;
- if (yych == 'y') goto yy451;
+ if (yych == 'y') goto yy457;
goto yy87;
-yy350:
+yy355:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 258 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Block); }
-#line 2756 "src/prebuilt/wast-lexer-gen.cc"
-yy352:
+#line 2779 "src/prebuilt/wast-lexer-gen.cc"
+yy357:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 264 "src/wast-lexer.cc"
{ RETURN_OPCODE0(BrIf); }
-#line 2764 "src/prebuilt/wast-lexer-gen.cc"
-yy354:
+#line 2787 "src/prebuilt/wast-lexer-gen.cc"
+yy359:
yych = *++cursor_;
- if (yych == 'b') goto yy453;
+ if (yych == 'b') goto yy459;
goto yy87;
-yy355:
+yy360:
yych = *++cursor_;
- if (yych == 'i') goto yy454;
+ if (yych == 'i') goto yy460;
goto yy87;
-yy356:
+yy361:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy357;
+ if (yych <= '"') goto yy362;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy455;
+ if (yych <= '_') goto yy461;
if (yych <= '~') goto yy86;
}
}
-yy357:
-#line 540 "src/wast-lexer.cc"
+yy362:
+#line 543 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Catch); }
-#line 2793 "src/prebuilt/wast-lexer-gen.cc"
-yy358:
+#line 2816 "src/prebuilt/wast-lexer-gen.cc"
+yy363:
yych = *++cursor_;
- if (yych == 'n') goto yy456;
+ if (yych == 'n') goto yy462;
goto yy87;
-yy359:
+yy364:
yych = *++cursor_;
- if (yych == 't') goto yy457;
+ if (yych == 't') goto yy463;
goto yy87;
-yy360:
+yy365:
yych = *++cursor_;
- if (yych == 't') goto yy459;
+ if (yych == 't') goto yy465;
goto yy87;
-yy361:
+yy366:
yych = *++cursor_;
- if (yych == 'b') goto yy461;
- if (yych == 'd') goto yy462;
+ if (yych == 'b') goto yy467;
+ if (yych == 'd') goto yy468;
goto yy87;
-yy362:
+yy367:
yych = *++cursor_;
- if (yych == 'e') goto yy463;
- if (yych == 'o') goto yy464;
+ if (yych == 'e') goto yy469;
+ if (yych == 'o') goto yy470;
goto yy87;
-yy363:
+yy368:
yych = *++cursor_;
- if (yych == 'e') goto yy465;
- if (yych == 'i') goto yy466;
+ if (yych == 'e') goto yy471;
+ if (yych == 'i') goto yy472;
goto yy87;
-yy364:
+yy369:
yych = *++cursor_;
- if (yych == 'q') goto yy467;
+ if (yych == 'q') goto yy473;
goto yy87;
-yy365:
+yy370:
yych = *++cursor_;
- if (yych == 'l') goto yy469;
+ if (yych == 'l') goto yy475;
goto yy87;
-yy366:
+yy371:
yych = *++cursor_;
- if (yych == 'e') goto yy470;
- if (yych == 't') goto yy472;
+ if (yych == 'e') goto yy476;
+ if (yych == 't') goto yy478;
goto yy87;
-yy367:
+yy372:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy474;
+ if (yych == 'e') goto yy480;
goto yy87;
} else {
- if (yych <= 'o') goto yy476;
- if (yych == 't') goto yy477;
+ if (yych <= 'o') goto yy482;
+ if (yych == 't') goto yy483;
goto yy87;
}
-yy368:
+yy373:
yych = *++cursor_;
if (yych <= 'h') {
- if (yych == 'a') goto yy479;
+ if (yych == 'a') goto yy485;
goto yy87;
} else {
- if (yych <= 'i') goto yy480;
- if (yych == 'u') goto yy481;
+ if (yych <= 'i') goto yy486;
+ if (yych == 'u') goto yy487;
goto yy87;
}
-yy369:
+yy374:
yych = *++cursor_;
- if (yych == 'e') goto yy482;
+ if (yych == 'e') goto yy488;
goto yy87;
-yy370:
+yy375:
yych = *++cursor_;
- if (yych == 'e') goto yy484;
+ if (yych == 'e') goto yy490;
goto yy87;
-yy371:
+yy376:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'q') goto yy485;
+ if (yych == 'q') goto yy491;
goto yy87;
} else {
- if (yych <= 't') goto yy486;
- if (yych <= 'u') goto yy487;
+ if (yych <= 't') goto yy492;
+ if (yych <= 'u') goto yy493;
goto yy87;
}
-yy372:
+yy377:
yych = *++cursor_;
- if (yych == 'r') goto yy488;
+ if (yych == 'r') goto yy494;
goto yy87;
-yy373:
+yy378:
yych = *++cursor_;
- if (yych == 'b') goto yy489;
- if (yych == 'd') goto yy490;
+ if (yych == 'b') goto yy495;
+ if (yych == 'd') goto yy496;
goto yy87;
-yy374:
+yy379:
yych = *++cursor_;
- if (yych == 'e') goto yy491;
- if (yych == 'o') goto yy492;
+ if (yych == 'e') goto yy497;
+ if (yych == 'o') goto yy498;
goto yy87;
-yy375:
+yy380:
yych = *++cursor_;
- if (yych == 'i') goto yy493;
+ if (yych == 'i') goto yy499;
goto yy87;
-yy376:
+yy381:
yych = *++cursor_;
- if (yych == 'q') goto yy494;
+ if (yych == 'q') goto yy500;
goto yy87;
-yy377:
+yy382:
yych = *++cursor_;
- if (yych == 'l') goto yy496;
+ if (yych == 'l') goto yy502;
goto yy87;
-yy378:
+yy383:
yych = *++cursor_;
- if (yych == 'e') goto yy497;
- if (yych == 't') goto yy499;
+ if (yych == 'e') goto yy503;
+ if (yych == 't') goto yy505;
goto yy87;
-yy379:
+yy384:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy501;
+ if (yych == 'e') goto yy507;
goto yy87;
} else {
- if (yych <= 'o') goto yy503;
- if (yych == 't') goto yy504;
+ if (yych <= 'o') goto yy509;
+ if (yych == 't') goto yy510;
goto yy87;
}
-yy380:
+yy385:
yych = *++cursor_;
if (yych <= 'h') {
- if (yych == 'a') goto yy506;
+ if (yych == 'a') goto yy512;
goto yy87;
} else {
- if (yych <= 'i') goto yy507;
- if (yych == 'u') goto yy508;
+ if (yych <= 'i') goto yy513;
+ if (yych == 'u') goto yy514;
goto yy87;
}
-yy381:
+yy386:
yych = *++cursor_;
- if (yych == 'e') goto yy509;
+ if (yych == 'e') goto yy515;
goto yy87;
-yy382:
+yy387:
yych = *++cursor_;
- if (yych == 'r') goto yy511;
+ if (yych == 'r') goto yy517;
goto yy87;
-yy383:
+yy388:
yych = *++cursor_;
- if (yych == 'e') goto yy512;
+ if (yych == 'e') goto yy518;
goto yy87;
-yy384:
+yy389:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'q') goto yy513;
+ if (yych == 'q') goto yy519;
goto yy87;
} else {
- if (yych <= 't') goto yy514;
- if (yych <= 'u') goto yy515;
+ if (yych <= 't') goto yy520;
+ if (yych <= 'u') goto yy521;
goto yy87;
}
-yy385:
+yy390:
yych = *++cursor_;
- if (yych == 'r') goto yy516;
+ if (yych == 'r') goto yy522;
goto yy87;
-yy386:
+yy391:
yych = *++cursor_;
- if (yych == 'l') goto yy517;
+ if (yych == 'l') goto yy523;
goto yy87;
-yy387:
+yy392:
yych = *++cursor_;
- if (yych == 'o') goto yy518;
+ if (yych == 'o') goto yy524;
goto yy87;
-yy388:
+yy393:
yych = *++cursor_;
- if (yych == 'l') goto yy519;
+ if (yych == 'l') goto yy525;
goto yy87;
-yy389:
+yy394:
yych = *++cursor_;
- if (yych == 'm') goto yy521;
+ if (yych == 'm') goto yy527;
goto yy87;
-yy390:
+yy395:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'd') goto yy522;
+ if (yych == 'd') goto yy528;
goto yy87;
} else {
- if (yych <= 'n') goto yy523;
- if (yych == 't') goto yy524;
+ if (yych <= 'n') goto yy529;
+ if (yych == 't') goto yy530;
goto yy87;
}
-yy391:
+yy396:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'l') goto yy525;
+ if (yych == 'l') goto yy531;
goto yy87;
} else {
- if (yych <= 'o') goto yy526;
- if (yych == 't') goto yy527;
+ if (yych <= 'o') goto yy532;
+ if (yych == 't') goto yy533;
goto yy87;
}
-yy392:
+yy397:
yych = *++cursor_;
- if (yych == 'i') goto yy528;
+ if (yych == 'i') goto yy534;
goto yy87;
-yy393:
+yy398:
yych = *++cursor_;
- if (yych == 'q') goto yy529;
- if (yych == 'x') goto yy531;
+ if (yych == 'q') goto yy535;
+ if (yych == 'x') goto yy537;
goto yy87;
-yy394:
+yy399:
yych = *++cursor_;
- if (yych == 'e') goto yy532;
- if (yych == 't') goto yy533;
+ if (yych == 'e') goto yy538;
+ if (yych == 't') goto yy539;
goto yy87;
-yy395:
+yy400:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy534;
+ if (yych == 'e') goto yy540;
goto yy87;
} else {
- if (yych <= 'o') goto yy535;
- if (yych == 't') goto yy536;
+ if (yych <= 'o') goto yy541;
+ if (yych == 't') goto yy542;
goto yy87;
}
-yy396:
+yy401:
yych = *++cursor_;
- if (yych == 'u') goto yy537;
+ if (yych == 'u') goto yy543;
goto yy87;
-yy397:
+yy402:
yych = *++cursor_;
- if (yych == 'e') goto yy538;
+ if (yych == 'e') goto yy544;
goto yy87;
-yy398:
+yy403:
yych = *++cursor_;
- if (yych == 'r') goto yy540;
+ if (yych == 'r') goto yy546;
goto yy87;
-yy399:
+yy404:
yych = *++cursor_;
- if (yych == 'o') goto yy542;
+ if (yych == 'o') goto yy548;
goto yy87;
-yy400:
+yy405:
yych = *++cursor_;
- if (yych == 'e') goto yy543;
- if (yych == 'o') goto yy544;
+ if (yych == 'e') goto yy549;
+ if (yych == 'o') goto yy550;
goto yy87;
-yy401:
+yy406:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'h') goto yy545;
+ if (yych == 'h') goto yy551;
goto yy87;
} else {
- if (yych <= 't') goto yy546;
- if (yych <= 'u') goto yy547;
+ if (yych <= 't') goto yy552;
+ if (yych <= 'u') goto yy553;
goto yy87;
}
-yy402:
+yy407:
yych = *++cursor_;
- if (yych == 'r') goto yy548;
+ if (yych == 'r') goto yy554;
goto yy87;
-yy403:
+yy408:
yych = *++cursor_;
- if (yych == 'r') goto yy549;
+ if (yych == 'a') goto yy555;
+ if (yych == 'r') goto yy556;
goto yy87;
-yy404:
+yy409:
yych = *++cursor_;
- if (yych == 'o') goto yy550;
+ if (yych == 'o') goto yy557;
goto yy87;
-yy405:
+yy410:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'd') goto yy551;
+ if (yych == 'd') goto yy558;
goto yy87;
} else {
- if (yych <= 'n') goto yy552;
- if (yych == 't') goto yy553;
+ if (yych <= 'n') goto yy559;
+ if (yych == 't') goto yy560;
goto yy87;
}
-yy406:
+yy411:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'l') goto yy554;
+ if (yych == 'l') goto yy561;
goto yy87;
} else {
- if (yych <= 'o') goto yy555;
- if (yych == 't') goto yy556;
+ if (yych <= 'o') goto yy562;
+ if (yych == 't') goto yy563;
goto yy87;
}
-yy407:
+yy412:
yych = *++cursor_;
- if (yych == 'i') goto yy557;
+ if (yych == 'i') goto yy564;
goto yy87;
-yy408:
+yy413:
yych = *++cursor_;
- if (yych == 'q') goto yy558;
- if (yych == 'x') goto yy560;
+ if (yych == 'q') goto yy565;
+ if (yych == 'x') goto yy567;
goto yy87;
-yy409:
+yy414:
yych = *++cursor_;
- if (yych == 'e') goto yy561;
- if (yych == 't') goto yy562;
+ if (yych == 'e') goto yy568;
+ if (yych == 't') goto yy569;
goto yy87;
-yy410:
+yy415:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy563;
+ if (yych == 'e') goto yy570;
goto yy87;
} else {
- if (yych <= 'o') goto yy564;
- if (yych == 't') goto yy565;
+ if (yych <= 'o') goto yy571;
+ if (yych == 't') goto yy572;
goto yy87;
}
-yy411:
+yy416:
yych = *++cursor_;
- if (yych == 'u') goto yy566;
+ if (yych == 'u') goto yy573;
goto yy87;
-yy412:
+yy417:
yych = *++cursor_;
- if (yych == 'e') goto yy567;
+ if (yych == 'e') goto yy574;
goto yy87;
-yy413:
+yy418:
yych = *++cursor_;
- if (yych == 'r') goto yy569;
+ if (yych == 'r') goto yy576;
goto yy87;
-yy414:
+yy419:
yych = *++cursor_;
- if (yych == 'o') goto yy571;
+ if (yych == 'o') goto yy578;
goto yy87;
-yy415:
+yy420:
yych = *++cursor_;
- if (yych == 'e') goto yy572;
- if (yych == 'o') goto yy573;
+ if (yych == 'e') goto yy579;
+ if (yych == 'o') goto yy580;
goto yy87;
-yy416:
+yy421:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'h') goto yy574;
+ if (yych == 'h') goto yy581;
goto yy87;
} else {
- if (yych <= 't') goto yy575;
- if (yych <= 'u') goto yy576;
+ if (yych <= 't') goto yy582;
+ if (yych <= 'u') goto yy583;
goto yy87;
}
-yy417:
+yy422:
yych = *++cursor_;
- if (yych == 'r') goto yy577;
+ if (yych == 'r') goto yy584;
goto yy87;
-yy418:
+yy423:
yych = *++cursor_;
- if (yych == 'o') goto yy578;
+ if (yych == 'a') goto yy585;
goto yy87;
-yy419:
+yy424:
yych = *++cursor_;
- if (yych == 't') goto yy579;
+ if (yych == 'o') goto yy586;
goto yy87;
-yy420:
+yy425:
yych = *++cursor_;
- if (yych == 'e') goto yy581;
+ if (yych == 't') goto yy587;
goto yy87;
-yy421:
+yy426:
+ yych = *++cursor_;
+ if (yych == 'e') goto yy589;
+ goto yy87;
+yy427:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 514 "src/wast-lexer.cc"
+#line 517 "src/wast-lexer.cc"
{ RETURN(Local); }
-#line 3150 "src/prebuilt/wast-lexer-gen.cc"
-yy423:
+#line 3178 "src/prebuilt/wast-lexer-gen.cc"
+yy429:
yych = *++cursor_;
- if (yych == 'y') goto yy583;
+ if (yych == 'y') goto yy591;
goto yy87;
-yy424:
+yy430:
yych = *++cursor_;
- if (yych == 'e') goto yy585;
+ if (yych == 'e') goto yy593;
goto yy87;
-yy425:
+yy431:
yych = *++cursor_;
- if (yych == 'x') goto yy587;
+ if (yych == 'x') goto yy595;
goto yy87;
-yy426:
+yy432:
yych = *++cursor_;
- if (yych == 't') goto yy588;
+ if (yych == 't') goto yy596;
goto yy87;
-yy427:
+yy433:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 512 "src/wast-lexer.cc"
+#line 515 "src/wast-lexer.cc"
{ RETURN(Param); }
-#line 3174 "src/prebuilt/wast-lexer-gen.cc"
-yy429:
+#line 3202 "src/prebuilt/wast-lexer-gen.cc"
+yy435:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 518 "src/wast-lexer.cc"
+#line 521 "src/wast-lexer.cc"
{ RETURN(Quote); }
-#line 3182 "src/prebuilt/wast-lexer-gen.cc"
-yy431:
+#line 3210 "src/prebuilt/wast-lexer-gen.cc"
+yy437:
yych = *++cursor_;
- if (yych == 't') goto yy590;
+ if (yych == 't') goto yy598;
goto yy87;
-yy432:
+yy438:
yych = *++cursor_;
- if (yych == 't') goto yy591;
+ if (yych == 't') goto yy599;
goto yy87;
-yy433:
+yy439:
yych = *++cursor_;
- if (yych == 'o') goto yy593;
+ if (yych == 'o') goto yy601;
goto yy87;
-yy434:
+yy440:
yych = *++cursor_;
- if (yych == 'n') goto yy594;
+ if (yych == 'n') goto yy602;
goto yy87;
-yy435:
+yy441:
yych = *++cursor_;
- if (yych == 't') goto yy596;
+ if (yych == 't') goto yy604;
goto yy87;
-yy436:
+yy442:
yych = *++cursor_;
- if (yych == 'l') goto yy598;
+ if (yych == 'l') goto yy606;
goto yy87;
-yy437:
+yy443:
yych = *++cursor_;
- if (yych == 'o') goto yy599;
+ if (yych == 'o') goto yy607;
goto yy87;
-yy438:
+yy444:
yych = *++cursor_;
- if (yych == 'd') goto yy600;
+ if (yych == 'd') goto yy608;
goto yy87;
-yy439:
+yy445:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 521 "src/wast-lexer.cc"
+#line 524 "src/wast-lexer.cc"
{ RETURN(Start); }
-#line 3222 "src/prebuilt/wast-lexer-gen.cc"
-yy441:
+#line 3250 "src/prebuilt/wast-lexer-gen.cc"
+yy447:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 519 "src/wast-lexer.cc"
+#line 522 "src/wast-lexer.cc"
{ RETURN(Table); }
-#line 3230 "src/prebuilt/wast-lexer-gen.cc"
-yy443:
+#line 3258 "src/prebuilt/wast-lexer-gen.cc"
+yy449:
yych = *++cursor_;
- if (yych == 'o') goto yy602;
+ if (yych == 'o') goto yy610;
goto yy87;
-yy444:
+yy450:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 542 "src/wast-lexer.cc"
+#line 545 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Throw); }
-#line 3242 "src/prebuilt/wast-lexer-gen.cc"
-yy446:
+#line 3270 "src/prebuilt/wast-lexer-gen.cc"
+yy452:
yych = *++cursor_;
- if (yych == 'c') goto yy603;
+ if (yych == 'c') goto yy611;
goto yy87;
-yy447:
+yy453:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -3255,160 +3283,160 @@ yy447:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy341;
+ goto yy346;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy341;
+ goto yy346;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy341;
+ if (yych <= 'f') goto yy346;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy448:
+yy454:
yych = *++cursor_;
if (yych <= '/') goto yy87;
- if (yych <= '0') goto yy604;
- if (yych <= '9') goto yy606;
+ if (yych <= '0') goto yy612;
+ if (yych <= '9') goto yy614;
goto yy87;
-yy449:
+yy455:
yych = *++cursor_;
- if (yych == 'c') goto yy608;
+ if (yych == 'c') goto yy616;
goto yy87;
-yy450:
+yy456:
yych = *++cursor_;
- if (yych == '_') goto yy610;
+ if (yych == '_') goto yy618;
goto yy87;
-yy451:
+yy457:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 517 "src/wast-lexer.cc"
+#line 520 "src/wast-lexer.cc"
{ RETURN(Bin); }
-#line 3294 "src/prebuilt/wast-lexer-gen.cc"
-yy453:
+#line 3322 "src/prebuilt/wast-lexer-gen.cc"
+yy459:
yych = *++cursor_;
- if (yych == 'l') goto yy611;
+ if (yych == 'l') goto yy619;
goto yy87;
-yy454:
+yy460:
yych = *++cursor_;
- if (yych == 'n') goto yy612;
+ if (yych == 'n') goto yy620;
goto yy87;
-yy455:
+yy461:
yych = *++cursor_;
- if (yych == 'a') goto yy613;
+ if (yych == 'a') goto yy621;
goto yy87;
-yy456:
+yy462:
yych = *++cursor_;
- if (yych == 't') goto yy614;
+ if (yych == 't') goto yy622;
goto yy87;
-yy457:
+yy463:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 527 "src/wast-lexer.cc"
+#line 530 "src/wast-lexer.cc"
{ RETURN(Except); }
-#line 3318 "src/prebuilt/wast-lexer-gen.cc"
-yy459:
+#line 3346 "src/prebuilt/wast-lexer-gen.cc"
+yy465:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 526 "src/wast-lexer.cc"
+#line 529 "src/wast-lexer.cc"
{ RETURN(Export); }
-#line 3326 "src/prebuilt/wast-lexer-gen.cc"
-yy461:
+#line 3354 "src/prebuilt/wast-lexer-gen.cc"
+yy467:
yych = *++cursor_;
- if (yych == 's') goto yy615;
+ if (yych == 's') goto yy623;
goto yy87;
-yy462:
+yy468:
yych = *++cursor_;
- if (yych == 'd') goto yy617;
+ if (yych == 'd') goto yy625;
goto yy87;
-yy463:
+yy469:
yych = *++cursor_;
- if (yych == 'i') goto yy619;
+ if (yych == 'i') goto yy627;
goto yy87;
-yy464:
+yy470:
yych = *++cursor_;
- if (yych == 'n') goto yy620;
- if (yych == 'p') goto yy621;
+ if (yych == 'n') goto yy628;
+ if (yych == 'p') goto yy629;
goto yy87;
-yy465:
+yy471:
yych = *++cursor_;
- if (yych == 'm') goto yy622;
+ if (yych == 'm') goto yy630;
goto yy87;
-yy466:
+yy472:
yych = *++cursor_;
- if (yych == 'v') goto yy623;
+ if (yych == 'v') goto yy631;
goto yy87;
-yy467:
+yy473:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 396 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Eq); }
-#line 3359 "src/prebuilt/wast-lexer-gen.cc"
-yy469:
+#line 3387 "src/prebuilt/wast-lexer-gen.cc"
+yy475:
yych = *++cursor_;
- if (yych == 'o') goto yy625;
+ if (yych == 'o') goto yy633;
goto yy87;
-yy470:
+yy476:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 406 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Ge); }
-#line 3371 "src/prebuilt/wast-lexer-gen.cc"
-yy472:
+#line 3399 "src/prebuilt/wast-lexer-gen.cc"
+yy478:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 404 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Gt); }
-#line 3379 "src/prebuilt/wast-lexer-gen.cc"
-yy474:
+#line 3407 "src/prebuilt/wast-lexer-gen.cc"
+yy480:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 402 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Le); }
-#line 3387 "src/prebuilt/wast-lexer-gen.cc"
-yy476:
+#line 3415 "src/prebuilt/wast-lexer-gen.cc"
+yy482:
yych = *++cursor_;
- if (yych == 'a') goto yy626;
+ if (yych == 'a') goto yy634;
goto yy87;
-yy477:
+yy483:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 400 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Lt); }
-#line 3399 "src/prebuilt/wast-lexer-gen.cc"
-yy479:
+#line 3427 "src/prebuilt/wast-lexer-gen.cc"
+yy485:
yych = *++cursor_;
- if (yych == 'x') goto yy627;
+ if (yych == 'x') goto yy635;
goto yy87;
-yy480:
+yy486:
yych = *++cursor_;
- if (yych == 'n') goto yy629;
+ if (yych == 'n') goto yy637;
goto yy87;
-yy481:
+yy487:
yych = *++cursor_;
- if (yych == 'l') goto yy631;
+ if (yych == 'l') goto yy639;
goto yy87;
-yy482:
+yy488:
++cursor_;
if ((yych = *cursor_) <= ':') {
if (yych <= '"') {
@@ -3419,120 +3447,120 @@ yy482:
}
} else {
if (yych <= 'a') {
- if (yych <= ';') goto yy483;
+ if (yych <= ';') goto yy489;
if (yych <= '`') goto yy86;
- goto yy633;
+ goto yy641;
} else {
- if (yych == 'g') goto yy634;
+ if (yych == 'g') goto yy642;
if (yych <= '~') goto yy86;
}
}
-yy483:
+yy489:
#line 398 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Ne); }
-#line 3434 "src/prebuilt/wast-lexer-gen.cc"
-yy484:
+#line 3462 "src/prebuilt/wast-lexer-gen.cc"
+yy490:
yych = *++cursor_;
- if (yych == 'i') goto yy636;
+ if (yych == 'i') goto yy644;
goto yy87;
-yy485:
+yy491:
yych = *++cursor_;
- if (yych == 'r') goto yy637;
+ if (yych == 'r') goto yy645;
goto yy87;
-yy486:
+yy492:
yych = *++cursor_;
- if (yych == 'o') goto yy638;
+ if (yych == 'o') goto yy646;
goto yy87;
-yy487:
+yy493:
yych = *++cursor_;
- if (yych == 'b') goto yy639;
+ if (yych == 'b') goto yy647;
goto yy87;
-yy488:
+yy494:
yych = *++cursor_;
- if (yych == 'u') goto yy641;
+ if (yych == 'u') goto yy649;
goto yy87;
-yy489:
+yy495:
yych = *++cursor_;
- if (yych == 's') goto yy642;
+ if (yych == 's') goto yy650;
goto yy87;
-yy490:
+yy496:
yych = *++cursor_;
- if (yych == 'd') goto yy644;
+ if (yych == 'd') goto yy652;
goto yy87;
-yy491:
+yy497:
yych = *++cursor_;
- if (yych == 'i') goto yy646;
+ if (yych == 'i') goto yy654;
goto yy87;
-yy492:
+yy498:
yych = *++cursor_;
- if (yych == 'n') goto yy647;
- if (yych == 'p') goto yy648;
+ if (yych == 'n') goto yy655;
+ if (yych == 'p') goto yy656;
goto yy87;
-yy493:
+yy499:
yych = *++cursor_;
- if (yych == 'v') goto yy649;
+ if (yych == 'v') goto yy657;
goto yy87;
-yy494:
+yy500:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 397 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Eq); }
-#line 3483 "src/prebuilt/wast-lexer-gen.cc"
-yy496:
+#line 3511 "src/prebuilt/wast-lexer-gen.cc"
+yy502:
yych = *++cursor_;
- if (yych == 'o') goto yy651;
+ if (yych == 'o') goto yy659;
goto yy87;
-yy497:
+yy503:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 407 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Ge); }
-#line 3495 "src/prebuilt/wast-lexer-gen.cc"
-yy499:
+#line 3523 "src/prebuilt/wast-lexer-gen.cc"
+yy505:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 405 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Gt); }
-#line 3503 "src/prebuilt/wast-lexer-gen.cc"
-yy501:
+#line 3531 "src/prebuilt/wast-lexer-gen.cc"
+yy507:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 403 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Le); }
-#line 3511 "src/prebuilt/wast-lexer-gen.cc"
-yy503:
+#line 3539 "src/prebuilt/wast-lexer-gen.cc"
+yy509:
yych = *++cursor_;
- if (yych == 'a') goto yy652;
+ if (yych == 'a') goto yy660;
goto yy87;
-yy504:
+yy510:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 401 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Lt); }
-#line 3523 "src/prebuilt/wast-lexer-gen.cc"
-yy506:
+#line 3551 "src/prebuilt/wast-lexer-gen.cc"
+yy512:
yych = *++cursor_;
- if (yych == 'x') goto yy653;
+ if (yych == 'x') goto yy661;
goto yy87;
-yy507:
+yy513:
yych = *++cursor_;
- if (yych == 'n') goto yy655;
+ if (yych == 'n') goto yy663;
goto yy87;
-yy508:
+yy514:
yych = *++cursor_;
- if (yych == 'l') goto yy657;
+ if (yych == 'l') goto yy665;
goto yy87;
-yy509:
+yy515:
++cursor_;
if ((yych = *cursor_) <= ':') {
if (yych <= '"') {
@@ -3543,353 +3571,361 @@ yy509:
}
} else {
if (yych <= 'a') {
- if (yych <= ';') goto yy510;
+ if (yych <= ';') goto yy516;
if (yych <= '`') goto yy86;
- goto yy659;
+ goto yy667;
} else {
- if (yych == 'g') goto yy660;
+ if (yych == 'g') goto yy668;
if (yych <= '~') goto yy86;
}
}
-yy510:
+yy516:
#line 399 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Ne); }
-#line 3558 "src/prebuilt/wast-lexer-gen.cc"
-yy511:
+#line 3586 "src/prebuilt/wast-lexer-gen.cc"
+yy517:
yych = *++cursor_;
- if (yych == 'o') goto yy662;
+ if (yych == 'o') goto yy670;
goto yy87;
-yy512:
+yy518:
yych = *++cursor_;
- if (yych == 'i') goto yy663;
+ if (yych == 'i') goto yy671;
goto yy87;
-yy513:
+yy519:
yych = *++cursor_;
- if (yych == 'r') goto yy664;
+ if (yych == 'r') goto yy672;
goto yy87;
-yy514:
+yy520:
yych = *++cursor_;
- if (yych == 'o') goto yy665;
+ if (yych == 'o') goto yy673;
goto yy87;
-yy515:
+yy521:
yych = *++cursor_;
- if (yych == 'b') goto yy666;
+ if (yych == 'b') goto yy674;
goto yy87;
-yy516:
+yy522:
yych = *++cursor_;
- if (yych == 'u') goto yy668;
+ if (yych == 'u') goto yy676;
goto yy87;
-yy517:
+yy523:
yych = *++cursor_;
- if (yych == 'o') goto yy669;
+ if (yych == 'o') goto yy677;
goto yy87;
-yy518:
+yy524:
yych = *++cursor_;
- if (yych == 'c') goto yy670;
+ if (yych == 'c') goto yy678;
goto yy87;
-yy519:
+yy525:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 515 "src/wast-lexer.cc"
+#line 518 "src/wast-lexer.cc"
{ RETURN(Global); }
-#line 3598 "src/prebuilt/wast-lexer-gen.cc"
-yy521:
+#line 3626 "src/prebuilt/wast-lexer-gen.cc"
+yy527:
yych = *++cursor_;
- if (yych == 'e') goto yy671;
+ if (yych == 'e') goto yy679;
goto yy87;
-yy522:
+yy528:
yych = *++cursor_;
- if (yych == 'd') goto yy672;
+ if (yych == 'd') goto yy680;
goto yy87;
-yy523:
+yy529:
yych = *++cursor_;
- if (yych == 'd') goto yy674;
+ if (yych == 'd') goto yy682;
goto yy87;
-yy524:
+yy530:
yych = *++cursor_;
- if (yych == 'o') goto yy676;
+ if (yych == 'o') goto yy684;
goto yy87;
-yy525:
+yy531:
yych = *++cursor_;
- if (yych == 'z') goto yy677;
+ if (yych == 'z') goto yy685;
goto yy87;
-yy526:
+yy532:
yych = *++cursor_;
- if (yych == 'n') goto yy679;
+ if (yych == 'n') goto yy687;
goto yy87;
-yy527:
+yy533:
yych = *++cursor_;
- if (yych == 'z') goto yy680;
+ if (yych == 'z') goto yy688;
goto yy87;
-yy528:
+yy534:
yych = *++cursor_;
- if (yych == 'v') goto yy682;
+ if (yych == 'v') goto yy690;
goto yy87;
-yy529:
+yy535:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy530;
+ if (yych <= '"') goto yy536;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= 'y') {
if (yych != ';') goto yy86;
} else {
- if (yych <= 'z') goto yy683;
+ if (yych <= 'z') goto yy691;
if (yych <= '~') goto yy86;
}
}
-yy530:
+yy536:
#line 376 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32Eq); }
-#line 3651 "src/prebuilt/wast-lexer-gen.cc"
-yy531:
+#line 3679 "src/prebuilt/wast-lexer-gen.cc"
+yy537:
yych = *++cursor_;
- if (yych == 't') goto yy685;
+ if (yych == 't') goto yy693;
goto yy87;
-yy532:
+yy538:
yych = *++cursor_;
- if (yych == '_') goto yy686;
+ if (yych == '_') goto yy694;
goto yy87;
-yy533:
+yy539:
yych = *++cursor_;
- if (yych == '_') goto yy687;
+ if (yych == '_') goto yy695;
goto yy87;
-yy534:
+yy540:
yych = *++cursor_;
- if (yych == '_') goto yy688;
+ if (yych == '_') goto yy696;
goto yy87;
-yy535:
+yy541:
yych = *++cursor_;
- if (yych == 'a') goto yy689;
+ if (yych == 'a') goto yy697;
goto yy87;
-yy536:
+yy542:
yych = *++cursor_;
- if (yych == '_') goto yy690;
+ if (yych == '_') goto yy698;
goto yy87;
-yy537:
+yy543:
yych = *++cursor_;
- if (yych == 'l') goto yy691;
+ if (yych == 'l') goto yy699;
goto yy87;
-yy538:
+yy544:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 378 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32Ne); }
-#line 3687 "src/prebuilt/wast-lexer-gen.cc"
-yy540:
+#line 3715 "src/prebuilt/wast-lexer-gen.cc"
+yy546:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 348 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Or); }
-#line 3695 "src/prebuilt/wast-lexer-gen.cc"
-yy542:
+#line 3723 "src/prebuilt/wast-lexer-gen.cc"
+yy548:
yych = *++cursor_;
- if (yych == 'p') goto yy693;
+ if (yych == 'p') goto yy701;
goto yy87;
-yy543:
+yy549:
yych = *++cursor_;
- if (yych == 'i') goto yy694;
- if (yych == 'm') goto yy695;
+ if (yych == 'i') goto yy702;
+ if (yych == 'm') goto yy703;
goto yy87;
-yy544:
+yy550:
yych = *++cursor_;
- if (yych == 't') goto yy696;
+ if (yych == 't') goto yy704;
goto yy87;
-yy545:
+yy551:
yych = *++cursor_;
- if (yych == 'l') goto yy697;
- if (yych == 'r') goto yy699;
+ if (yych == 'l') goto yy705;
+ if (yych == 'r') goto yy707;
goto yy87;
-yy546:
+yy552:
yych = *++cursor_;
- if (yych == 'o') goto yy700;
+ if (yych == 'o') goto yy708;
goto yy87;
-yy547:
+yy553:
yych = *++cursor_;
- if (yych == 'b') goto yy701;
+ if (yych == 'b') goto yy709;
goto yy87;
-yy548:
+yy554:
yych = *++cursor_;
- if (yych == 'u') goto yy703;
+ if (yych == 'u') goto yy711;
goto yy87;
-yy549:
+yy555:
yych = *++cursor_;
- if (yych == 'a') goto yy704;
+ if (yych == 'i') goto yy712;
goto yy87;
-yy550:
+yy556:
yych = *++cursor_;
- if (yych == 'r') goto yy705;
+ if (yych == 'a') goto yy713;
goto yy87;
-yy551:
+yy557:
yych = *++cursor_;
- if (yych == 'd') goto yy707;
+ if (yych == 'r') goto yy714;
goto yy87;
-yy552:
+yy558:
yych = *++cursor_;
- if (yych == 'd') goto yy709;
+ if (yych == 'd') goto yy716;
goto yy87;
-yy553:
+yy559:
yych = *++cursor_;
- if (yych == 'o') goto yy711;
+ if (yych == 'd') goto yy718;
goto yy87;
-yy554:
+yy560:
yych = *++cursor_;
- if (yych == 'z') goto yy712;
+ if (yych == 'o') goto yy720;
goto yy87;
-yy555:
+yy561:
yych = *++cursor_;
- if (yych == 'n') goto yy714;
+ if (yych == 'z') goto yy721;
goto yy87;
-yy556:
+yy562:
yych = *++cursor_;
- if (yych == 'z') goto yy715;
+ if (yych == 'n') goto yy723;
goto yy87;
-yy557:
+yy563:
yych = *++cursor_;
- if (yych == 'v') goto yy717;
+ if (yych == 'z') goto yy724;
goto yy87;
-yy558:
+yy564:
+ yych = *++cursor_;
+ if (yych == 'v') goto yy726;
+ goto yy87;
+yy565:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy559;
+ if (yych <= '"') goto yy566;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= 'y') {
if (yych != ';') goto yy86;
} else {
- if (yych <= 'z') goto yy718;
+ if (yych <= 'z') goto yy727;
if (yych <= '~') goto yy86;
}
}
-yy559:
+yy566:
#line 377 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64Eq); }
-#line 3782 "src/prebuilt/wast-lexer-gen.cc"
-yy560:
+#line 3814 "src/prebuilt/wast-lexer-gen.cc"
+yy567:
yych = *++cursor_;
- if (yych == 't') goto yy720;
+ if (yych == 't') goto yy729;
goto yy87;
-yy561:
+yy568:
yych = *++cursor_;
- if (yych == '_') goto yy721;
+ if (yych == '_') goto yy730;
goto yy87;
-yy562:
+yy569:
yych = *++cursor_;
- if (yych == '_') goto yy722;
+ if (yych == '_') goto yy731;
goto yy87;
-yy563:
+yy570:
yych = *++cursor_;
- if (yych == '_') goto yy723;
+ if (yych == '_') goto yy732;
goto yy87;
-yy564:
+yy571:
yych = *++cursor_;
- if (yych == 'a') goto yy724;
+ if (yych == 'a') goto yy733;
goto yy87;
-yy565:
+yy572:
yych = *++cursor_;
- if (yych == '_') goto yy725;
+ if (yych == '_') goto yy734;
goto yy87;
-yy566:
+yy573:
yych = *++cursor_;
- if (yych == 'l') goto yy726;
+ if (yych == 'l') goto yy735;
goto yy87;
-yy567:
+yy574:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 379 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64Ne); }
-#line 3818 "src/prebuilt/wast-lexer-gen.cc"
-yy569:
+#line 3850 "src/prebuilt/wast-lexer-gen.cc"
+yy576:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 349 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Or); }
-#line 3826 "src/prebuilt/wast-lexer-gen.cc"
-yy571:
+#line 3858 "src/prebuilt/wast-lexer-gen.cc"
+yy578:
yych = *++cursor_;
- if (yych == 'p') goto yy728;
+ if (yych == 'p') goto yy737;
goto yy87;
-yy572:
+yy579:
yych = *++cursor_;
- if (yych == 'i') goto yy729;
- if (yych == 'm') goto yy730;
+ if (yych == 'i') goto yy738;
+ if (yych == 'm') goto yy739;
goto yy87;
-yy573:
+yy580:
yych = *++cursor_;
- if (yych == 't') goto yy731;
+ if (yych == 't') goto yy740;
goto yy87;
-yy574:
+yy581:
yych = *++cursor_;
- if (yych == 'l') goto yy732;
- if (yych == 'r') goto yy734;
+ if (yych == 'l') goto yy741;
+ if (yych == 'r') goto yy743;
goto yy87;
-yy575:
+yy582:
yych = *++cursor_;
- if (yych == 'o') goto yy735;
+ if (yych == 'o') goto yy744;
goto yy87;
-yy576:
+yy583:
yych = *++cursor_;
- if (yych == 'b') goto yy736;
+ if (yych == 'b') goto yy745;
goto yy87;
-yy577:
+yy584:
yych = *++cursor_;
- if (yych == 'u') goto yy738;
+ if (yych == 'u') goto yy747;
goto yy87;
-yy578:
+yy585:
yych = *++cursor_;
- if (yych == 'r') goto yy739;
+ if (yych == 'i') goto yy748;
goto yy87;
-yy579:
+yy586:
+ yych = *++cursor_;
+ if (yych == 'r') goto yy749;
+ goto yy87;
+yy587:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 525 "src/wast-lexer.cc"
+#line 528 "src/wast-lexer.cc"
{ RETURN(Import); }
-#line 3868 "src/prebuilt/wast-lexer-gen.cc"
-yy581:
+#line 3904 "src/prebuilt/wast-lexer-gen.cc"
+yy589:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 529 "src/wast-lexer.cc"
+#line 532 "src/wast-lexer.cc"
{ RETURN(Invoke); }
-#line 3876 "src/prebuilt/wast-lexer-gen.cc"
-yy583:
+#line 3912 "src/prebuilt/wast-lexer-gen.cc"
+yy591:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 520 "src/wast-lexer.cc"
+#line 523 "src/wast-lexer.cc"
{ RETURN(Memory); }
-#line 3884 "src/prebuilt/wast-lexer-gen.cc"
-yy585:
+#line 3920 "src/prebuilt/wast-lexer-gen.cc"
+yy593:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 516 "src/wast-lexer.cc"
+#line 519 "src/wast-lexer.cc"
{ RETURN(Module); }
-#line 3892 "src/prebuilt/wast-lexer-gen.cc"
-yy587:
+#line 3928 "src/prebuilt/wast-lexer-gen.cc"
+yy595:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -3901,764 +3937,772 @@ yy587:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy741;
+ goto yy751;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy741;
+ goto yy751;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy741;
+ if (yych <= 'f') goto yy751;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy588:
+yy596:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy589;
+ if (yych <= '"') goto yy597;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '<') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '=') goto yy743;
+ if (yych <= '=') goto yy753;
if (yych <= '~') goto yy86;
}
}
-yy589:
-#line 524 "src/wast-lexer.cc"
+yy597:
+#line 527 "src/wast-lexer.cc"
{ RETURN(Offset); }
-#line 3939 "src/prebuilt/wast-lexer-gen.cc"
-yy590:
+#line 3975 "src/prebuilt/wast-lexer-gen.cc"
+yy598:
yych = *++cursor_;
- if (yych == 'e') goto yy744;
+ if (yych == 'e') goto yy754;
goto yy87;
-yy591:
+yy599:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 513 "src/wast-lexer.cc"
+#line 516 "src/wast-lexer.cc"
{ RETURN(Result); }
-#line 3951 "src/prebuilt/wast-lexer-gen.cc"
-yy593:
+#line 3987 "src/prebuilt/wast-lexer-gen.cc"
+yy601:
yych = *++cursor_;
- if (yych == 'w') goto yy745;
+ if (yych == 'w') goto yy755;
goto yy87;
-yy594:
+yy602:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 270 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Return); }
-#line 3963 "src/prebuilt/wast-lexer-gen.cc"
-yy596:
+#line 3999 "src/prebuilt/wast-lexer-gen.cc"
+yy604:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 441 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Select); }
-#line 3971 "src/prebuilt/wast-lexer-gen.cc"
-yy598:
+#line 4007 "src/prebuilt/wast-lexer-gen.cc"
+yy606:
yych = *++cursor_;
- if (yych == 'o') goto yy747;
+ if (yych == 'o') goto yy757;
goto yy87;
-yy599:
+yy607:
yych = *++cursor_;
- if (yych == 'c') goto yy748;
+ if (yych == 'c') goto yy758;
goto yy87;
-yy600:
+yy608:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 545 "src/wast-lexer.cc"
+#line 548 "src/wast-lexer.cc"
{ RETURN(Shared); }
-#line 3987 "src/prebuilt/wast-lexer-gen.cc"
-yy602:
+#line 4023 "src/prebuilt/wast-lexer-gen.cc"
+yy610:
yych = *++cursor_;
- if (yych == 'c') goto yy749;
+ if (yych == 'c') goto yy759;
goto yy87;
-yy603:
+yy611:
yych = *++cursor_;
- if (yych == 'h') goto yy750;
+ if (yych == 'h') goto yy760;
goto yy87;
-yy604:
+yy612:
++cursor_;
if ((yych = *cursor_) <= '9') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy605;
+ if (yych <= ')') goto yy613;
if (yych <= '/') goto yy86;
- goto yy606;
+ goto yy614;
}
} else {
if (yych <= '_') {
- if (yych == ';') goto yy605;
+ if (yych == ';') goto yy613;
if (yych <= '^') goto yy86;
- goto yy751;
+ goto yy761;
} else {
- if (yych == 'x') goto yy752;
+ if (yych == 'x') goto yy762;
if (yych <= '~') goto yy86;
}
}
-yy605:
+yy613:
#line 300 "src/wast-lexer.cc"
{ RETURN_TEXT_AT(AlignEqNat, 6); }
-#line 4020 "src/prebuilt/wast-lexer-gen.cc"
-yy606:
+#line 4056 "src/prebuilt/wast-lexer-gen.cc"
+yy614:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy605;
+ goto yy613;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy605;
+ if (yych <= ')') goto yy613;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy606;
+ if (yych <= '9') goto yy614;
if (yych <= ':') goto yy86;
- goto yy605;
+ goto yy613;
} else {
- if (yych == '_') goto yy751;
+ if (yych == '_') goto yy761;
if (yych <= '~') goto yy86;
- goto yy605;
+ goto yy613;
}
}
-yy608:
+yy616:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 255 "src/wast-lexer.cc"
{ RETURN(Anyfunc); }
-#line 4052 "src/prebuilt/wast-lexer-gen.cc"
-yy610:
+#line 4088 "src/prebuilt/wast-lexer-gen.cc"
+yy618:
yych = *++cursor_;
switch (yych) {
- case 'e': goto yy753;
- case 'i': goto yy754;
- case 'm': goto yy755;
- case 'r': goto yy756;
- case 't': goto yy757;
- case 'u': goto yy758;
+ case 'e': goto yy763;
+ case 'i': goto yy764;
+ case 'm': goto yy765;
+ case 'r': goto yy766;
+ case 't': goto yy767;
+ case 'u': goto yy768;
default: goto yy87;
}
-yy611:
+yy619:
yych = *++cursor_;
- if (yych == 'e') goto yy759;
+ if (yych == 'e') goto yy769;
goto yy87;
-yy612:
+yy620:
yych = *++cursor_;
- if (yych == 'd') goto yy761;
+ if (yych == 'd') goto yy771;
goto yy87;
-yy613:
+yy621:
yych = *++cursor_;
- if (yych == 'l') goto yy762;
+ if (yych == 'l') goto yy772;
goto yy87;
-yy614:
+yy622:
yych = *++cursor_;
- if (yych == '_') goto yy763;
+ if (yych == '_') goto yy773;
goto yy87;
-yy615:
+yy623:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 315 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Abs); }
-#line 4087 "src/prebuilt/wast-lexer-gen.cc"
-yy617:
+#line 4123 "src/prebuilt/wast-lexer-gen.cc"
+yy625:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 362 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Add); }
-#line 4095 "src/prebuilt/wast-lexer-gen.cc"
-yy619:
+#line 4131 "src/prebuilt/wast-lexer-gen.cc"
+yy627:
yych = *++cursor_;
- if (yych == 'l') goto yy764;
+ if (yych == 'l') goto yy774;
goto yy87;
-yy620:
+yy628:
yych = *++cursor_;
- if (yych == 's') goto yy766;
- if (yych == 'v') goto yy767;
+ if (yych == 's') goto yy776;
+ if (yych == 'v') goto yy777;
goto yy87;
-yy621:
+yy629:
yych = *++cursor_;
- if (yych == 'y') goto yy768;
+ if (yych == 'y') goto yy778;
goto yy87;
-yy622:
+yy630:
yych = *++cursor_;
- if (yych == 'o') goto yy769;
+ if (yych == 'o') goto yy779;
goto yy87;
-yy623:
+yy631:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 368 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Div); }
-#line 4120 "src/prebuilt/wast-lexer-gen.cc"
-yy625:
+#line 4156 "src/prebuilt/wast-lexer-gen.cc"
+yy633:
yych = *++cursor_;
- if (yych == 'o') goto yy770;
+ if (yych == 'o') goto yy780;
goto yy87;
-yy626:
+yy634:
yych = *++cursor_;
- if (yych == 'd') goto yy771;
+ if (yych == 'd') goto yy781;
goto yy87;
-yy627:
+yy635:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 372 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Max); }
-#line 4136 "src/prebuilt/wast-lexer-gen.cc"
-yy629:
+#line 4172 "src/prebuilt/wast-lexer-gen.cc"
+yy637:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 370 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Min); }
-#line 4144 "src/prebuilt/wast-lexer-gen.cc"
-yy631:
+#line 4180 "src/prebuilt/wast-lexer-gen.cc"
+yy639:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 366 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Mul); }
-#line 4152 "src/prebuilt/wast-lexer-gen.cc"
-yy633:
+#line 4188 "src/prebuilt/wast-lexer-gen.cc"
+yy641:
yych = *++cursor_;
- if (yych == 'r') goto yy773;
+ if (yych == 'r') goto yy783;
goto yy87;
-yy634:
+yy642:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 313 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Neg); }
-#line 4164 "src/prebuilt/wast-lexer-gen.cc"
-yy636:
+#line 4200 "src/prebuilt/wast-lexer-gen.cc"
+yy644:
yych = *++cursor_;
- if (yych == 'n') goto yy774;
+ if (yych == 'n') goto yy784;
goto yy87;
-yy637:
+yy645:
yych = *++cursor_;
- if (yych == 't') goto yy775;
+ if (yych == 't') goto yy785;
goto yy87;
-yy638:
+yy646:
yych = *++cursor_;
- if (yych == 'r') goto yy777;
+ if (yych == 'r') goto yy787;
goto yy87;
-yy639:
+yy647:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 364 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Sub); }
-#line 4184 "src/prebuilt/wast-lexer-gen.cc"
-yy641:
+#line 4220 "src/prebuilt/wast-lexer-gen.cc"
+yy649:
yych = *++cursor_;
- if (yych == 'n') goto yy778;
+ if (yych == 'n') goto yy788;
goto yy87;
-yy642:
+yy650:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 316 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Abs); }
-#line 4196 "src/prebuilt/wast-lexer-gen.cc"
-yy644:
+#line 4232 "src/prebuilt/wast-lexer-gen.cc"
+yy652:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 363 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Add); }
-#line 4204 "src/prebuilt/wast-lexer-gen.cc"
-yy646:
+#line 4240 "src/prebuilt/wast-lexer-gen.cc"
+yy654:
yych = *++cursor_;
- if (yych == 'l') goto yy779;
+ if (yych == 'l') goto yy789;
goto yy87;
-yy647:
+yy655:
yych = *++cursor_;
- if (yych == 's') goto yy781;
- if (yych == 'v') goto yy782;
+ if (yych == 's') goto yy791;
+ if (yych == 'v') goto yy792;
goto yy87;
-yy648:
+yy656:
yych = *++cursor_;
- if (yych == 'y') goto yy783;
+ if (yych == 'y') goto yy793;
goto yy87;
-yy649:
+yy657:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 369 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Div); }
-#line 4225 "src/prebuilt/wast-lexer-gen.cc"
-yy651:
+#line 4261 "src/prebuilt/wast-lexer-gen.cc"
+yy659:
yych = *++cursor_;
- if (yych == 'o') goto yy784;
+ if (yych == 'o') goto yy794;
goto yy87;
-yy652:
+yy660:
yych = *++cursor_;
- if (yych == 'd') goto yy785;
+ if (yych == 'd') goto yy795;
goto yy87;
-yy653:
+yy661:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 373 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Max); }
-#line 4241 "src/prebuilt/wast-lexer-gen.cc"
-yy655:
+#line 4277 "src/prebuilt/wast-lexer-gen.cc"
+yy663:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 371 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Min); }
-#line 4249 "src/prebuilt/wast-lexer-gen.cc"
-yy657:
+#line 4285 "src/prebuilt/wast-lexer-gen.cc"
+yy665:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 367 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Mul); }
-#line 4257 "src/prebuilt/wast-lexer-gen.cc"
-yy659:
+#line 4293 "src/prebuilt/wast-lexer-gen.cc"
+yy667:
yych = *++cursor_;
- if (yych == 'r') goto yy787;
+ if (yych == 'r') goto yy797;
goto yy87;
-yy660:
+yy668:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 314 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Neg); }
-#line 4269 "src/prebuilt/wast-lexer-gen.cc"
-yy662:
+#line 4305 "src/prebuilt/wast-lexer-gen.cc"
+yy670:
yych = *++cursor_;
- if (yych == 'm') goto yy788;
+ if (yych == 'm') goto yy798;
goto yy87;
-yy663:
+yy671:
yych = *++cursor_;
- if (yych == 'n') goto yy789;
+ if (yych == 'n') goto yy799;
goto yy87;
-yy664:
+yy672:
yych = *++cursor_;
- if (yych == 't') goto yy790;
+ if (yych == 't') goto yy800;
goto yy87;
-yy665:
+yy673:
yych = *++cursor_;
- if (yych == 'r') goto yy792;
+ if (yych == 'r') goto yy802;
goto yy87;
-yy666:
+yy674:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 365 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Sub); }
-#line 4293 "src/prebuilt/wast-lexer-gen.cc"
-yy668:
+#line 4329 "src/prebuilt/wast-lexer-gen.cc"
+yy676:
yych = *++cursor_;
- if (yych == 'n') goto yy793;
+ if (yych == 'n') goto yy803;
goto yy87;
-yy669:
+yy677:
yych = *++cursor_;
- if (yych == 'b') goto yy794;
+ if (yych == 'b') goto yy804;
goto yy87;
-yy670:
+yy678:
yych = *++cursor_;
- if (yych == 'a') goto yy795;
+ if (yych == 'a') goto yy805;
goto yy87;
-yy671:
+yy679:
yych = *++cursor_;
- if (yych == 'm') goto yy796;
+ if (yych == 'm') goto yy806;
goto yy87;
-yy672:
+yy680:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 332 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Add); }
-#line 4317 "src/prebuilt/wast-lexer-gen.cc"
-yy674:
+#line 4353 "src/prebuilt/wast-lexer-gen.cc"
+yy682:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 346 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32And); }
-#line 4325 "src/prebuilt/wast-lexer-gen.cc"
-yy676:
+#line 4361 "src/prebuilt/wast-lexer-gen.cc"
+yy684:
yych = *++cursor_;
- if (yych == 'm') goto yy797;
+ if (yych == 'm') goto yy807;
goto yy87;
-yy677:
+yy685:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 307 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Clz); }
-#line 4337 "src/prebuilt/wast-lexer-gen.cc"
-yy679:
+#line 4373 "src/prebuilt/wast-lexer-gen.cc"
+yy687:
yych = *++cursor_;
- if (yych == 's') goto yy798;
+ if (yych == 's') goto yy808;
goto yy87;
-yy680:
+yy688:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 309 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Ctz); }
-#line 4349 "src/prebuilt/wast-lexer-gen.cc"
-yy682:
+#line 4385 "src/prebuilt/wast-lexer-gen.cc"
+yy690:
yych = *++cursor_;
- if (yych == '_') goto yy799;
+ if (yych == '_') goto yy809;
goto yy87;
-yy683:
+yy691:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 305 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32Eqz); }
-#line 4361 "src/prebuilt/wast-lexer-gen.cc"
-yy685:
+#line 4397 "src/prebuilt/wast-lexer-gen.cc"
+yy693:
yych = *++cursor_;
- if (yych == 'e') goto yy800;
+ if (yych == 'e') goto yy810;
goto yy87;
-yy686:
+yy694:
yych = *++cursor_;
- if (yych == 's') goto yy801;
- if (yych == 'u') goto yy803;
+ if (yych == 's') goto yy811;
+ if (yych == 'u') goto yy813;
goto yy87;
-yy687:
+yy695:
yych = *++cursor_;
- if (yych == 's') goto yy805;
- if (yych == 'u') goto yy807;
+ if (yych == 's') goto yy815;
+ if (yych == 'u') goto yy817;
goto yy87;
-yy688:
+yy696:
yych = *++cursor_;
- if (yych == 's') goto yy809;
- if (yych == 'u') goto yy811;
+ if (yych == 's') goto yy819;
+ if (yych == 'u') goto yy821;
goto yy87;
-yy689:
+yy697:
yych = *++cursor_;
- if (yych == 'd') goto yy813;
+ if (yych == 'd') goto yy823;
goto yy87;
-yy690:
+yy698:
yych = *++cursor_;
- if (yych == 's') goto yy815;
- if (yych == 'u') goto yy817;
+ if (yych == 's') goto yy825;
+ if (yych == 'u') goto yy827;
goto yy87;
-yy691:
+yy699:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 336 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Mul); }
-#line 4397 "src/prebuilt/wast-lexer-gen.cc"
-yy693:
+#line 4433 "src/prebuilt/wast-lexer-gen.cc"
+yy701:
yych = *++cursor_;
- if (yych == 'c') goto yy819;
+ if (yych == 'c') goto yy829;
goto yy87;
-yy694:
+yy702:
yych = *++cursor_;
- if (yych == 'n') goto yy820;
+ if (yych == 'n') goto yy830;
goto yy87;
-yy695:
+yy703:
yych = *++cursor_;
- if (yych == '_') goto yy821;
+ if (yych == '_') goto yy831;
goto yy87;
-yy696:
+yy704:
yych = *++cursor_;
- if (yych == 'l') goto yy822;
- if (yych == 'r') goto yy824;
+ if (yych == 'l') goto yy832;
+ if (yych == 'r') goto yy834;
goto yy87;
-yy697:
+yy705:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 352 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Shl); }
-#line 4422 "src/prebuilt/wast-lexer-gen.cc"
-yy699:
+#line 4458 "src/prebuilt/wast-lexer-gen.cc"
+yy707:
yych = *++cursor_;
- if (yych == '_') goto yy826;
+ if (yych == '_') goto yy836;
goto yy87;
-yy700:
+yy708:
yych = *++cursor_;
- if (yych == 'r') goto yy827;
+ if (yych == 'r') goto yy837;
goto yy87;
-yy701:
+yy709:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 334 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Sub); }
-#line 4438 "src/prebuilt/wast-lexer-gen.cc"
-yy703:
+#line 4474 "src/prebuilt/wast-lexer-gen.cc"
+yy711:
yych = *++cursor_;
- if (yych == 'n') goto yy828;
+ if (yych == 'n') goto yy838;
goto yy87;
-yy704:
+yy712:
yych = *++cursor_;
- if (yych == 'p') goto yy829;
+ if (yych == 't') goto yy839;
goto yy87;
-yy705:
+yy713:
+ yych = *++cursor_;
+ if (yych == 'p') goto yy841;
+ goto yy87;
+yy714:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 350 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Xor); }
-#line 4454 "src/prebuilt/wast-lexer-gen.cc"
-yy707:
+#line 4494 "src/prebuilt/wast-lexer-gen.cc"
+yy716:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 333 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Add); }
-#line 4462 "src/prebuilt/wast-lexer-gen.cc"
-yy709:
+#line 4502 "src/prebuilt/wast-lexer-gen.cc"
+yy718:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 347 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64And); }
-#line 4470 "src/prebuilt/wast-lexer-gen.cc"
-yy711:
+#line 4510 "src/prebuilt/wast-lexer-gen.cc"
+yy720:
yych = *++cursor_;
- if (yych == 'm') goto yy830;
+ if (yych == 'm') goto yy842;
goto yy87;
-yy712:
+yy721:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 308 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Clz); }
-#line 4482 "src/prebuilt/wast-lexer-gen.cc"
-yy714:
+#line 4522 "src/prebuilt/wast-lexer-gen.cc"
+yy723:
yych = *++cursor_;
- if (yych == 's') goto yy831;
+ if (yych == 's') goto yy843;
goto yy87;
-yy715:
+yy724:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 310 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Ctz); }
-#line 4494 "src/prebuilt/wast-lexer-gen.cc"
-yy717:
+#line 4534 "src/prebuilt/wast-lexer-gen.cc"
+yy726:
yych = *++cursor_;
- if (yych == '_') goto yy832;
+ if (yych == '_') goto yy844;
goto yy87;
-yy718:
+yy727:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 306 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64Eqz); }
-#line 4506 "src/prebuilt/wast-lexer-gen.cc"
-yy720:
+#line 4546 "src/prebuilt/wast-lexer-gen.cc"
+yy729:
yych = *++cursor_;
- if (yych == 'e') goto yy833;
+ if (yych == 'e') goto yy845;
goto yy87;
-yy721:
+yy730:
yych = *++cursor_;
- if (yych == 's') goto yy834;
- if (yych == 'u') goto yy836;
+ if (yych == 's') goto yy846;
+ if (yych == 'u') goto yy848;
goto yy87;
-yy722:
+yy731:
yych = *++cursor_;
- if (yych == 's') goto yy838;
- if (yych == 'u') goto yy840;
+ if (yych == 's') goto yy850;
+ if (yych == 'u') goto yy852;
goto yy87;
-yy723:
+yy732:
yych = *++cursor_;
- if (yych == 's') goto yy842;
- if (yych == 'u') goto yy844;
+ if (yych == 's') goto yy854;
+ if (yych == 'u') goto yy856;
goto yy87;
-yy724:
+yy733:
yych = *++cursor_;
- if (yych == 'd') goto yy846;
+ if (yych == 'd') goto yy858;
goto yy87;
-yy725:
+yy734:
yych = *++cursor_;
- if (yych == 's') goto yy848;
- if (yych == 'u') goto yy850;
+ if (yych == 's') goto yy860;
+ if (yych == 'u') goto yy862;
goto yy87;
-yy726:
+yy735:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 337 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Mul); }
-#line 4542 "src/prebuilt/wast-lexer-gen.cc"
-yy728:
+#line 4582 "src/prebuilt/wast-lexer-gen.cc"
+yy737:
yych = *++cursor_;
- if (yych == 'c') goto yy852;
+ if (yych == 'c') goto yy864;
goto yy87;
-yy729:
+yy738:
yych = *++cursor_;
- if (yych == 'n') goto yy853;
+ if (yych == 'n') goto yy865;
goto yy87;
-yy730:
+yy739:
yych = *++cursor_;
- if (yych == '_') goto yy854;
+ if (yych == '_') goto yy866;
goto yy87;
-yy731:
+yy740:
yych = *++cursor_;
- if (yych == 'l') goto yy855;
- if (yych == 'r') goto yy857;
+ if (yych == 'l') goto yy867;
+ if (yych == 'r') goto yy869;
goto yy87;
-yy732:
+yy741:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 353 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Shl); }
-#line 4567 "src/prebuilt/wast-lexer-gen.cc"
-yy734:
+#line 4607 "src/prebuilt/wast-lexer-gen.cc"
+yy743:
yych = *++cursor_;
- if (yych == '_') goto yy859;
+ if (yych == '_') goto yy871;
goto yy87;
-yy735:
+yy744:
yych = *++cursor_;
- if (yych == 'r') goto yy860;
+ if (yych == 'r') goto yy872;
goto yy87;
-yy736:
+yy745:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 335 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Sub); }
-#line 4583 "src/prebuilt/wast-lexer-gen.cc"
-yy738:
+#line 4623 "src/prebuilt/wast-lexer-gen.cc"
+yy747:
yych = *++cursor_;
- if (yych == 'n') goto yy861;
+ if (yych == 'n') goto yy873;
goto yy87;
-yy739:
+yy748:
+ yych = *++cursor_;
+ if (yych == 't') goto yy874;
+ goto yy87;
+yy749:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 351 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Xor); }
-#line 4595 "src/prebuilt/wast-lexer-gen.cc"
-yy741:
+#line 4639 "src/prebuilt/wast-lexer-gen.cc"
+yy751:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy257;
+ if (yych <= '"') goto yy259;
goto yy86;
} else {
- if (yych <= ')') goto yy257;
+ if (yych <= ')') goto yy259;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy741;
+ if (yych <= '9') goto yy751;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy257;
+ if (yych <= ';') goto yy259;
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy741;
+ if (yych <= 'F') goto yy751;
goto yy86;
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy587;
+ if (yych <= '_') goto yy595;
goto yy86;
} else {
- if (yych <= 'f') goto yy741;
+ if (yych <= 'f') goto yy751;
if (yych <= '~') goto yy86;
- goto yy257;
+ goto yy259;
}
}
}
-yy743:
+yy753:
yych = *++cursor_;
if (yych <= '/') goto yy87;
- if (yych <= '0') goto yy862;
- if (yych <= '9') goto yy864;
+ if (yych <= '0') goto yy876;
+ if (yych <= '9') goto yy878;
goto yy87;
-yy744:
+yy754:
yych = *++cursor_;
- if (yych == 'r') goto yy866;
+ if (yych == 'r') goto yy880;
goto yy87;
-yy745:
+yy755:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 543 "src/wast-lexer.cc"
+#line 546 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Rethrow); }
-#line 4645 "src/prebuilt/wast-lexer-gen.cc"
-yy747:
+#line 4689 "src/prebuilt/wast-lexer-gen.cc"
+yy757:
yych = *++cursor_;
- if (yych == 'b') goto yy868;
+ if (yych == 'b') goto yy882;
goto yy87;
-yy748:
+yy758:
yych = *++cursor_;
- if (yych == 'a') goto yy869;
+ if (yych == 'a') goto yy883;
goto yy87;
-yy749:
+yy759:
yych = *++cursor_;
- if (yych == 'a') goto yy870;
+ if (yych == 'a') goto yy884;
goto yy87;
-yy750:
+yy760:
yych = *++cursor_;
- if (yych == 'a') goto yy871;
+ if (yych == 'a') goto yy885;
goto yy87;
-yy751:
+yy761:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -4674,7 +4718,7 @@ yy751:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy606;
+ if (yych <= '9') goto yy614;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -4682,7 +4726,7 @@ yy751:
goto yy88;
}
}
-yy752:
+yy762:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -4694,262 +4738,262 @@ yy752:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy872;
+ goto yy886;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy872;
+ goto yy886;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy872;
+ if (yych <= 'f') goto yy886;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy753:
+yy763:
yych = *++cursor_;
- if (yych == 'x') goto yy874;
+ if (yych == 'x') goto yy888;
goto yy87;
-yy754:
+yy764:
yych = *++cursor_;
- if (yych == 'n') goto yy875;
+ if (yych == 'n') goto yy889;
goto yy87;
-yy755:
+yy765:
yych = *++cursor_;
- if (yych == 'a') goto yy876;
+ if (yych == 'a') goto yy890;
goto yy87;
-yy756:
+yy766:
yych = *++cursor_;
- if (yych == 'e') goto yy877;
+ if (yych == 'e') goto yy891;
goto yy87;
-yy757:
+yy767:
yych = *++cursor_;
- if (yych == 'r') goto yy878;
+ if (yych == 'r') goto yy892;
goto yy87;
-yy758:
+yy768:
yych = *++cursor_;
- if (yych == 'n') goto yy879;
+ if (yych == 'n') goto yy893;
goto yy87;
-yy759:
+yy769:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 265 "src/wast-lexer.cc"
{ RETURN_OPCODE0(BrTable); }
-#line 4743 "src/prebuilt/wast-lexer-gen.cc"
-yy761:
+#line 4787 "src/prebuilt/wast-lexer-gen.cc"
+yy771:
yych = *++cursor_;
- if (yych == 'i') goto yy880;
+ if (yych == 'i') goto yy894;
goto yy87;
-yy762:
+yy772:
yych = *++cursor_;
- if (yych == 'l') goto yy881;
+ if (yych == 'l') goto yy895;
goto yy87;
-yy763:
+yy773:
yych = *++cursor_;
- if (yych == 'm') goto yy883;
+ if (yych == 'm') goto yy897;
goto yy87;
-yy764:
+yy774:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 319 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Ceil); }
-#line 4763 "src/prebuilt/wast-lexer-gen.cc"
-yy766:
+#line 4807 "src/prebuilt/wast-lexer-gen.cc"
+yy776:
yych = *++cursor_;
- if (yych == 't') goto yy884;
+ if (yych == 't') goto yy898;
goto yy87;
-yy767:
+yy777:
yych = *++cursor_;
- if (yych == 'e') goto yy886;
+ if (yych == 'e') goto yy900;
goto yy87;
-yy768:
+yy778:
yych = *++cursor_;
- if (yych == 's') goto yy887;
+ if (yych == 's') goto yy901;
goto yy87;
-yy769:
+yy779:
yych = *++cursor_;
- if (yych == 't') goto yy888;
+ if (yych == 't') goto yy902;
goto yy87;
-yy770:
+yy780:
yych = *++cursor_;
- if (yych == 'r') goto yy889;
+ if (yych == 'r') goto yy903;
goto yy87;
-yy771:
+yy781:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 278 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, F32Load); }
-#line 4791 "src/prebuilt/wast-lexer-gen.cc"
-yy773:
+#line 4835 "src/prebuilt/wast-lexer-gen.cc"
+yy783:
yych = *++cursor_;
- if (yych == 'e') goto yy891;
+ if (yych == 'e') goto yy905;
goto yy87;
-yy774:
+yy784:
yych = *++cursor_;
- if (yych == 't') goto yy892;
+ if (yych == 't') goto yy906;
goto yy87;
-yy775:
+yy785:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 317 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Sqrt); }
-#line 4807 "src/prebuilt/wast-lexer-gen.cc"
-yy777:
+#line 4851 "src/prebuilt/wast-lexer-gen.cc"
+yy787:
yych = *++cursor_;
- if (yych == 'e') goto yy893;
+ if (yych == 'e') goto yy907;
goto yy87;
-yy778:
+yy788:
yych = *++cursor_;
- if (yych == 'c') goto yy895;
+ if (yych == 'c') goto yy909;
goto yy87;
-yy779:
+yy789:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 320 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Ceil); }
-#line 4823 "src/prebuilt/wast-lexer-gen.cc"
-yy781:
+#line 4867 "src/prebuilt/wast-lexer-gen.cc"
+yy791:
yych = *++cursor_;
- if (yych == 't') goto yy897;
+ if (yych == 't') goto yy911;
goto yy87;
-yy782:
+yy792:
yych = *++cursor_;
- if (yych == 'e') goto yy899;
+ if (yych == 'e') goto yy913;
goto yy87;
-yy783:
+yy793:
yych = *++cursor_;
- if (yych == 's') goto yy900;
+ if (yych == 's') goto yy914;
goto yy87;
-yy784:
+yy794:
yych = *++cursor_;
- if (yych == 'r') goto yy901;
+ if (yych == 'r') goto yy915;
goto yy87;
-yy785:
+yy795:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 279 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, F64Load); }
-#line 4847 "src/prebuilt/wast-lexer-gen.cc"
-yy787:
+#line 4891 "src/prebuilt/wast-lexer-gen.cc"
+yy797:
yych = *++cursor_;
- if (yych == 'e') goto yy903;
+ if (yych == 'e') goto yy917;
goto yy87;
-yy788:
+yy798:
yych = *++cursor_;
- if (yych == 'o') goto yy904;
+ if (yych == 'o') goto yy918;
goto yy87;
-yy789:
+yy799:
yych = *++cursor_;
- if (yych == 't') goto yy905;
+ if (yych == 't') goto yy919;
goto yy87;
-yy790:
+yy800:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 318 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Sqrt); }
-#line 4867 "src/prebuilt/wast-lexer-gen.cc"
-yy792:
+#line 4911 "src/prebuilt/wast-lexer-gen.cc"
+yy802:
yych = *++cursor_;
- if (yych == 'e') goto yy906;
+ if (yych == 'e') goto yy920;
goto yy87;
-yy793:
+yy803:
yych = *++cursor_;
- if (yych == 'c') goto yy908;
+ if (yych == 'c') goto yy922;
goto yy87;
-yy794:
+yy804:
yych = *++cursor_;
- if (yych == 'a') goto yy910;
+ if (yych == 'a') goto yy924;
goto yy87;
-yy795:
+yy805:
yych = *++cursor_;
- if (yych == 'l') goto yy911;
+ if (yych == 'l') goto yy925;
goto yy87;
-yy796:
+yy806:
yych = *++cursor_;
- if (yych == 'o') goto yy913;
+ if (yych == 'o') goto yy927;
goto yy87;
-yy797:
+yy807:
yych = *++cursor_;
- if (yych == 'i') goto yy914;
+ if (yych == 'i') goto yy928;
goto yy87;
-yy798:
+yy808:
yych = *++cursor_;
- if (yych == 't') goto yy915;
+ if (yych == 't') goto yy929;
goto yy87;
-yy799:
+yy809:
yych = *++cursor_;
- if (yych == 's') goto yy917;
- if (yych == 'u') goto yy919;
+ if (yych == 's') goto yy931;
+ if (yych == 'u') goto yy933;
goto yy87;
-yy800:
+yy810:
yych = *++cursor_;
- if (yych == 'n') goto yy921;
+ if (yych == 'n') goto yy935;
goto yy87;
-yy801:
+yy811:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 392 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GeS); }
-#line 4912 "src/prebuilt/wast-lexer-gen.cc"
-yy803:
+#line 4956 "src/prebuilt/wast-lexer-gen.cc"
+yy813:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 394 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GeU); }
-#line 4920 "src/prebuilt/wast-lexer-gen.cc"
-yy805:
+#line 4964 "src/prebuilt/wast-lexer-gen.cc"
+yy815:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 388 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GtS); }
-#line 4928 "src/prebuilt/wast-lexer-gen.cc"
-yy807:
+#line 4972 "src/prebuilt/wast-lexer-gen.cc"
+yy817:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 390 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GtU); }
-#line 4936 "src/prebuilt/wast-lexer-gen.cc"
-yy809:
+#line 4980 "src/prebuilt/wast-lexer-gen.cc"
+yy819:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 384 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LeS); }
-#line 4944 "src/prebuilt/wast-lexer-gen.cc"
-yy811:
+#line 4988 "src/prebuilt/wast-lexer-gen.cc"
+yy821:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 386 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LeU); }
-#line 4952 "src/prebuilt/wast-lexer-gen.cc"
-yy813:
+#line 4996 "src/prebuilt/wast-lexer-gen.cc"
+yy823:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -4960,574 +5004,590 @@ yy813:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy922;
+ if (yych <= '1') goto yy936;
if (yych <= '7') goto yy86;
- goto yy923;
+ goto yy937;
} else {
- if (yych == ';') goto yy814;
+ if (yych == ';') goto yy824;
if (yych <= '~') goto yy86;
}
}
-yy814:
+yy824:
#line 276 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load); }
-#line 4975 "src/prebuilt/wast-lexer-gen.cc"
-yy815:
+#line 5019 "src/prebuilt/wast-lexer-gen.cc"
+yy825:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 380 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LtS); }
-#line 4983 "src/prebuilt/wast-lexer-gen.cc"
-yy817:
+#line 5027 "src/prebuilt/wast-lexer-gen.cc"
+yy827:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 382 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LtU); }
-#line 4991 "src/prebuilt/wast-lexer-gen.cc"
-yy819:
+#line 5035 "src/prebuilt/wast-lexer-gen.cc"
+yy829:
yych = *++cursor_;
- if (yych == 'n') goto yy924;
+ if (yych == 'n') goto yy938;
goto yy87;
-yy820:
+yy830:
yych = *++cursor_;
- if (yych == 't') goto yy925;
+ if (yych == 't') goto yy939;
goto yy87;
-yy821:
+yy831:
yych = *++cursor_;
- if (yych == 's') goto yy926;
- if (yych == 'u') goto yy928;
+ if (yych == 's') goto yy940;
+ if (yych == 'u') goto yy942;
goto yy87;
-yy822:
+yy832:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 358 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Rotl); }
-#line 5012 "src/prebuilt/wast-lexer-gen.cc"
-yy824:
+#line 5056 "src/prebuilt/wast-lexer-gen.cc"
+yy834:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 360 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Rotr); }
-#line 5020 "src/prebuilt/wast-lexer-gen.cc"
-yy826:
+#line 5064 "src/prebuilt/wast-lexer-gen.cc"
+yy836:
yych = *++cursor_;
- if (yych == 's') goto yy930;
- if (yych == 'u') goto yy932;
+ if (yych == 's') goto yy944;
+ if (yych == 'u') goto yy946;
goto yy87;
-yy827:
+yy837:
yych = *++cursor_;
- if (yych == 'e') goto yy934;
+ if (yych == 'e') goto yy948;
goto yy87;
-yy828:
+yy838:
yych = *++cursor_;
- if (yych == 'c') goto yy936;
+ if (yych == 'c') goto yy950;
goto yy87;
-yy829:
+yy839:
+ ++cursor_;
+ if (yybm[0+(yych = *cursor_)] & 8) {
+ goto yy86;
+ }
+#line 446 "src/wast-lexer.cc"
+ { RETURN_OPCODE(Wait, I32Wait); }
+#line 5085 "src/prebuilt/wast-lexer-gen.cc"
+yy841:
yych = *++cursor_;
- if (yych == '/') goto yy937;
+ if (yych == '/') goto yy951;
goto yy87;
-yy830:
+yy842:
yych = *++cursor_;
- if (yych == 'i') goto yy938;
+ if (yych == 'i') goto yy952;
goto yy87;
-yy831:
+yy843:
yych = *++cursor_;
- if (yych == 't') goto yy939;
+ if (yych == 't') goto yy953;
goto yy87;
-yy832:
+yy844:
yych = *++cursor_;
- if (yych == 's') goto yy941;
- if (yych == 'u') goto yy943;
+ if (yych == 's') goto yy955;
+ if (yych == 'u') goto yy957;
goto yy87;
-yy833:
+yy845:
yych = *++cursor_;
- if (yych == 'n') goto yy945;
+ if (yych == 'n') goto yy959;
goto yy87;
-yy834:
+yy846:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 393 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GeS); }
-#line 5062 "src/prebuilt/wast-lexer-gen.cc"
-yy836:
+#line 5114 "src/prebuilt/wast-lexer-gen.cc"
+yy848:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 395 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GeU); }
-#line 5070 "src/prebuilt/wast-lexer-gen.cc"
-yy838:
+#line 5122 "src/prebuilt/wast-lexer-gen.cc"
+yy850:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 389 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GtS); }
-#line 5078 "src/prebuilt/wast-lexer-gen.cc"
-yy840:
+#line 5130 "src/prebuilt/wast-lexer-gen.cc"
+yy852:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 391 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GtU); }
-#line 5086 "src/prebuilt/wast-lexer-gen.cc"
-yy842:
+#line 5138 "src/prebuilt/wast-lexer-gen.cc"
+yy854:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 385 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LeS); }
-#line 5094 "src/prebuilt/wast-lexer-gen.cc"
-yy844:
+#line 5146 "src/prebuilt/wast-lexer-gen.cc"
+yy856:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 387 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LeU); }
-#line 5102 "src/prebuilt/wast-lexer-gen.cc"
-yy846:
+#line 5154 "src/prebuilt/wast-lexer-gen.cc"
+yy858:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy847;
+ if (yych <= ')') goto yy859;
if (yych <= '0') goto yy86;
- goto yy946;
+ goto yy960;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy947;
+ if (yych == '3') goto yy961;
if (yych <= '7') goto yy86;
- goto yy948;
+ goto yy962;
} else {
- if (yych == ';') goto yy847;
+ if (yych == ';') goto yy859;
if (yych <= '~') goto yy86;
}
}
-yy847:
+yy859:
#line 277 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load); }
-#line 5127 "src/prebuilt/wast-lexer-gen.cc"
-yy848:
+#line 5179 "src/prebuilt/wast-lexer-gen.cc"
+yy860:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 381 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LtS); }
-#line 5135 "src/prebuilt/wast-lexer-gen.cc"
-yy850:
+#line 5187 "src/prebuilt/wast-lexer-gen.cc"
+yy862:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 383 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LtU); }
-#line 5143 "src/prebuilt/wast-lexer-gen.cc"
-yy852:
+#line 5195 "src/prebuilt/wast-lexer-gen.cc"
+yy864:
yych = *++cursor_;
- if (yych == 'n') goto yy949;
+ if (yych == 'n') goto yy963;
goto yy87;
-yy853:
+yy865:
yych = *++cursor_;
- if (yych == 't') goto yy950;
+ if (yych == 't') goto yy964;
goto yy87;
-yy854:
+yy866:
yych = *++cursor_;
- if (yych == 's') goto yy951;
- if (yych == 'u') goto yy953;
+ if (yych == 's') goto yy965;
+ if (yych == 'u') goto yy967;
goto yy87;
-yy855:
+yy867:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 359 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Rotl); }
-#line 5164 "src/prebuilt/wast-lexer-gen.cc"
-yy857:
+#line 5216 "src/prebuilt/wast-lexer-gen.cc"
+yy869:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 361 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Rotr); }
-#line 5172 "src/prebuilt/wast-lexer-gen.cc"
-yy859:
+#line 5224 "src/prebuilt/wast-lexer-gen.cc"
+yy871:
yych = *++cursor_;
- if (yych == 's') goto yy955;
- if (yych == 'u') goto yy957;
+ if (yych == 's') goto yy969;
+ if (yych == 'u') goto yy971;
goto yy87;
-yy860:
+yy872:
yych = *++cursor_;
- if (yych == 'e') goto yy959;
+ if (yych == 'e') goto yy973;
goto yy87;
-yy861:
+yy873:
yych = *++cursor_;
- if (yych == 'c') goto yy961;
+ if (yych == 'c') goto yy975;
goto yy87;
-yy862:
+yy874:
+ ++cursor_;
+ if (yybm[0+(yych = *cursor_)] & 8) {
+ goto yy86;
+ }
+#line 447 "src/wast-lexer.cc"
+ { RETURN_OPCODE(Wait, I64Wait); }
+#line 5245 "src/prebuilt/wast-lexer-gen.cc"
+yy876:
++cursor_;
if ((yych = *cursor_) <= '9') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy863;
+ if (yych <= ')') goto yy877;
if (yych <= '/') goto yy86;
- goto yy864;
+ goto yy878;
}
} else {
if (yych <= '_') {
- if (yych == ';') goto yy863;
+ if (yych == ';') goto yy877;
if (yych <= '^') goto yy86;
- goto yy962;
+ goto yy976;
} else {
- if (yych == 'x') goto yy963;
+ if (yych == 'x') goto yy977;
if (yych <= '~') goto yy86;
}
}
-yy863:
+yy877:
#line 299 "src/wast-lexer.cc"
{ RETURN_TEXT_AT(OffsetEqNat, 7); }
-#line 5210 "src/prebuilt/wast-lexer-gen.cc"
-yy864:
+#line 5270 "src/prebuilt/wast-lexer-gen.cc"
+yy878:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy863;
+ goto yy877;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy863;
+ if (yych <= ')') goto yy877;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy864;
+ if (yych <= '9') goto yy878;
if (yych <= ':') goto yy86;
- goto yy863;
+ goto yy877;
} else {
- if (yych == '_') goto yy962;
+ if (yych == '_') goto yy976;
if (yych <= '~') goto yy86;
- goto yy863;
+ goto yy877;
}
}
-yy866:
+yy880:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 528 "src/wast-lexer.cc"
+#line 531 "src/wast-lexer.cc"
{ RETURN(Register); }
-#line 5242 "src/prebuilt/wast-lexer-gen.cc"
-yy868:
+#line 5302 "src/prebuilt/wast-lexer-gen.cc"
+yy882:
yych = *++cursor_;
- if (yych == 'a') goto yy964;
+ if (yych == 'a') goto yy978;
goto yy87;
-yy869:
+yy883:
yych = *++cursor_;
- if (yych == 'l') goto yy965;
+ if (yych == 'l') goto yy979;
goto yy87;
-yy870:
+yy884:
yych = *++cursor_;
- if (yych == 'l') goto yy967;
+ if (yych == 'l') goto yy981;
goto yy87;
-yy871:
+yy885:
yych = *++cursor_;
- if (yych == 'b') goto yy969;
+ if (yych == 'b') goto yy983;
goto yy87;
-yy872:
+yy886:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy605;
+ if (yych <= '"') goto yy613;
goto yy86;
} else {
- if (yych <= ')') goto yy605;
+ if (yych <= ')') goto yy613;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy872;
+ if (yych <= '9') goto yy886;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy605;
+ if (yych <= ';') goto yy613;
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy872;
+ if (yych <= 'F') goto yy886;
goto yy86;
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy752;
+ if (yych <= '_') goto yy762;
goto yy86;
} else {
- if (yych <= 'f') goto yy872;
+ if (yych <= 'f') goto yy886;
if (yych <= '~') goto yy86;
- goto yy605;
+ goto yy613;
}
}
}
-yy874:
+yy888:
yych = *++cursor_;
- if (yych == 'h') goto yy970;
+ if (yych == 'h') goto yy984;
goto yy87;
-yy875:
+yy889:
yych = *++cursor_;
- if (yych == 'v') goto yy971;
+ if (yych == 'v') goto yy985;
goto yy87;
-yy876:
+yy890:
yych = *++cursor_;
- if (yych == 'l') goto yy972;
+ if (yych == 'l') goto yy986;
goto yy87;
-yy877:
+yy891:
yych = *++cursor_;
- if (yych == 't') goto yy973;
+ if (yych == 't') goto yy987;
goto yy87;
-yy878:
+yy892:
yych = *++cursor_;
- if (yych == 'a') goto yy974;
+ if (yych == 'a') goto yy988;
goto yy87;
-yy879:
+yy893:
yych = *++cursor_;
- if (yych == 'l') goto yy975;
+ if (yych == 'l') goto yy989;
goto yy87;
-yy880:
+yy894:
yych = *++cursor_;
- if (yych == 'r') goto yy976;
+ if (yych == 'r') goto yy990;
goto yy87;
-yy881:
+yy895:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 541 "src/wast-lexer.cc"
+#line 544 "src/wast-lexer.cc"
{ RETURN_OPCODE0(CatchAll); }
-#line 5326 "src/prebuilt/wast-lexer-gen.cc"
-yy883:
+#line 5386 "src/prebuilt/wast-lexer-gen.cc"
+yy897:
yych = *++cursor_;
- if (yych == 'e') goto yy977;
+ if (yych == 'e') goto yy991;
goto yy87;
-yy884:
+yy898:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 303 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, F32Const); }
-#line 5338 "src/prebuilt/wast-lexer-gen.cc"
-yy886:
+#line 5398 "src/prebuilt/wast-lexer-gen.cc"
+yy900:
yych = *++cursor_;
- if (yych == 'r') goto yy978;
+ if (yych == 'r') goto yy992;
goto yy87;
-yy887:
+yy901:
yych = *++cursor_;
- if (yych == 'i') goto yy979;
+ if (yych == 'i') goto yy993;
goto yy87;
-yy888:
+yy902:
yych = *++cursor_;
- if (yych == 'e') goto yy980;
+ if (yych == 'e') goto yy994;
goto yy87;
-yy889:
+yy903:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 321 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Floor); }
-#line 5358 "src/prebuilt/wast-lexer-gen.cc"
-yy891:
+#line 5418 "src/prebuilt/wast-lexer-gen.cc"
+yy905:
yych = *++cursor_;
- if (yych == 's') goto yy981;
+ if (yych == 's') goto yy995;
goto yy87;
-yy892:
+yy906:
yych = *++cursor_;
- if (yych == 'e') goto yy982;
+ if (yych == 'e') goto yy996;
goto yy87;
-yy893:
+yy907:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 282 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, F32Store); }
-#line 5374 "src/prebuilt/wast-lexer-gen.cc"
-yy895:
+#line 5434 "src/prebuilt/wast-lexer-gen.cc"
+yy909:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 323 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Trunc); }
-#line 5382 "src/prebuilt/wast-lexer-gen.cc"
-yy897:
+#line 5442 "src/prebuilt/wast-lexer-gen.cc"
+yy911:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 304 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, F64Const); }
-#line 5390 "src/prebuilt/wast-lexer-gen.cc"
-yy899:
+#line 5450 "src/prebuilt/wast-lexer-gen.cc"
+yy913:
yych = *++cursor_;
- if (yych == 'r') goto yy983;
+ if (yych == 'r') goto yy997;
goto yy87;
-yy900:
+yy914:
yych = *++cursor_;
- if (yych == 'i') goto yy984;
+ if (yych == 'i') goto yy998;
goto yy87;
-yy901:
+yy915:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 322 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Floor); }
-#line 5406 "src/prebuilt/wast-lexer-gen.cc"
-yy903:
+#line 5466 "src/prebuilt/wast-lexer-gen.cc"
+yy917:
yych = *++cursor_;
- if (yych == 's') goto yy985;
+ if (yych == 's') goto yy999;
goto yy87;
-yy904:
+yy918:
yych = *++cursor_;
- if (yych == 't') goto yy986;
+ if (yych == 't') goto yy1000;
goto yy87;
-yy905:
+yy919:
yych = *++cursor_;
- if (yych == 'e') goto yy987;
+ if (yych == 'e') goto yy1001;
goto yy87;
-yy906:
+yy920:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 283 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, F64Store); }
-#line 5426 "src/prebuilt/wast-lexer-gen.cc"
-yy908:
+#line 5486 "src/prebuilt/wast-lexer-gen.cc"
+yy922:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 324 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Trunc); }
-#line 5434 "src/prebuilt/wast-lexer-gen.cc"
-yy910:
+#line 5494 "src/prebuilt/wast-lexer-gen.cc"
+yy924:
yych = *++cursor_;
- if (yych == 'l') goto yy988;
+ if (yych == 'l') goto yy1002;
goto yy87;
-yy911:
+yy925:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 271 "src/wast-lexer.cc"
{ RETURN_OPCODE0(GetLocal); }
-#line 5446 "src/prebuilt/wast-lexer-gen.cc"
-yy913:
+#line 5506 "src/prebuilt/wast-lexer-gen.cc"
+yy927:
yych = *++cursor_;
- if (yych == 'r') goto yy990;
+ if (yych == 'r') goto yy1004;
goto yy87;
-yy914:
+yy928:
yych = *++cursor_;
- if (yych == 'c') goto yy991;
+ if (yych == 'c') goto yy1005;
goto yy87;
-yy915:
+yy929:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 301 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, I32Const); }
-#line 5462 "src/prebuilt/wast-lexer-gen.cc"
-yy917:
+#line 5522 "src/prebuilt/wast-lexer-gen.cc"
+yy931:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 338 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32DivS); }
-#line 5470 "src/prebuilt/wast-lexer-gen.cc"
-yy919:
+#line 5530 "src/prebuilt/wast-lexer-gen.cc"
+yy933:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 340 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32DivU); }
-#line 5478 "src/prebuilt/wast-lexer-gen.cc"
-yy921:
+#line 5538 "src/prebuilt/wast-lexer-gen.cc"
+yy935:
yych = *++cursor_;
- if (yych == 'd') goto yy992;
+ if (yych == 'd') goto yy1006;
goto yy87;
-yy922:
+yy936:
yych = *++cursor_;
- if (yych == '6') goto yy993;
+ if (yych == '6') goto yy1007;
goto yy87;
-yy923:
+yy937:
yych = *++cursor_;
- if (yych == '_') goto yy994;
+ if (yych == '_') goto yy1008;
goto yy87;
-yy924:
+yy938:
yych = *++cursor_;
- if (yych == 't') goto yy995;
+ if (yych == 't') goto yy1009;
goto yy87;
-yy925:
+yy939:
yych = *++cursor_;
- if (yych == 'e') goto yy997;
+ if (yych == 'e') goto yy1011;
goto yy87;
-yy926:
+yy940:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 342 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32RemS); }
-#line 5506 "src/prebuilt/wast-lexer-gen.cc"
-yy928:
+#line 5566 "src/prebuilt/wast-lexer-gen.cc"
+yy942:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 344 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32RemU); }
-#line 5514 "src/prebuilt/wast-lexer-gen.cc"
-yy930:
+#line 5574 "src/prebuilt/wast-lexer-gen.cc"
+yy944:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 354 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32ShrS); }
-#line 5522 "src/prebuilt/wast-lexer-gen.cc"
-yy932:
+#line 5582 "src/prebuilt/wast-lexer-gen.cc"
+yy946:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 356 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32ShrU); }
-#line 5530 "src/prebuilt/wast-lexer-gen.cc"
-yy934:
+#line 5590 "src/prebuilt/wast-lexer-gen.cc"
+yy948:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -5538,140 +5598,140 @@ yy934:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy998;
+ if (yych <= '1') goto yy1012;
if (yych <= '7') goto yy86;
- goto yy999;
+ goto yy1013;
} else {
- if (yych == ';') goto yy935;
+ if (yych == ';') goto yy949;
if (yych <= '~') goto yy86;
}
}
-yy935:
+yy949:
#line 280 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I32Store); }
-#line 5553 "src/prebuilt/wast-lexer-gen.cc"
-yy936:
+#line 5613 "src/prebuilt/wast-lexer-gen.cc"
+yy950:
yych = *++cursor_;
- if (yych == '_') goto yy1001;
+ if (yych == '_') goto yy1015;
goto yy87;
-yy937:
+yy951:
yych = *++cursor_;
- if (yych == 'i') goto yy1002;
+ if (yych == 'i') goto yy1016;
goto yy87;
-yy938:
+yy952:
yych = *++cursor_;
- if (yych == 'c') goto yy1003;
+ if (yych == 'c') goto yy1017;
goto yy87;
-yy939:
+yy953:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 302 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, I64Const); }
-#line 5573 "src/prebuilt/wast-lexer-gen.cc"
-yy941:
+#line 5633 "src/prebuilt/wast-lexer-gen.cc"
+yy955:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 339 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64DivS); }
-#line 5581 "src/prebuilt/wast-lexer-gen.cc"
-yy943:
+#line 5641 "src/prebuilt/wast-lexer-gen.cc"
+yy957:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 341 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64DivU); }
-#line 5589 "src/prebuilt/wast-lexer-gen.cc"
-yy945:
+#line 5649 "src/prebuilt/wast-lexer-gen.cc"
+yy959:
yych = *++cursor_;
- if (yych == 'd') goto yy1004;
+ if (yych == 'd') goto yy1018;
goto yy87;
-yy946:
+yy960:
yych = *++cursor_;
- if (yych == '6') goto yy1005;
+ if (yych == '6') goto yy1019;
goto yy87;
-yy947:
+yy961:
yych = *++cursor_;
- if (yych == '2') goto yy1006;
+ if (yych == '2') goto yy1020;
goto yy87;
-yy948:
+yy962:
yych = *++cursor_;
- if (yych == '_') goto yy1007;
+ if (yych == '_') goto yy1021;
goto yy87;
-yy949:
+yy963:
yych = *++cursor_;
- if (yych == 't') goto yy1008;
+ if (yych == 't') goto yy1022;
goto yy87;
-yy950:
+yy964:
yych = *++cursor_;
- if (yych == 'e') goto yy1010;
+ if (yych == 'e') goto yy1024;
goto yy87;
-yy951:
+yy965:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 343 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64RemS); }
-#line 5621 "src/prebuilt/wast-lexer-gen.cc"
-yy953:
+#line 5681 "src/prebuilt/wast-lexer-gen.cc"
+yy967:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 345 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64RemU); }
-#line 5629 "src/prebuilt/wast-lexer-gen.cc"
-yy955:
+#line 5689 "src/prebuilt/wast-lexer-gen.cc"
+yy969:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 355 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64ShrS); }
-#line 5637 "src/prebuilt/wast-lexer-gen.cc"
-yy957:
+#line 5697 "src/prebuilt/wast-lexer-gen.cc"
+yy971:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 357 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64ShrU); }
-#line 5645 "src/prebuilt/wast-lexer-gen.cc"
-yy959:
+#line 5705 "src/prebuilt/wast-lexer-gen.cc"
+yy973:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy960;
+ if (yych <= ')') goto yy974;
if (yych <= '0') goto yy86;
- goto yy1011;
+ goto yy1025;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy1012;
+ if (yych == '3') goto yy1026;
if (yych <= '7') goto yy86;
- goto yy1013;
+ goto yy1027;
} else {
- if (yych == ';') goto yy960;
+ if (yych == ';') goto yy974;
if (yych <= '~') goto yy86;
}
}
-yy960:
+yy974:
#line 281 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store); }
-#line 5670 "src/prebuilt/wast-lexer-gen.cc"
-yy961:
+#line 5730 "src/prebuilt/wast-lexer-gen.cc"
+yy975:
yych = *++cursor_;
- if (yych == '_') goto yy1015;
+ if (yych == '_') goto yy1029;
goto yy87;
-yy962:
+yy976:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -5687,7 +5747,7 @@ yy962:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy864;
+ if (yych <= '9') goto yy878;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -5695,7 +5755,7 @@ yy962:
goto yy88;
}
}
-yy963:
+yy977:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -5707,1188 +5767,1188 @@ yy963:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy1016;
+ goto yy1030;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy1016;
+ goto yy1030;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy1016;
+ if (yych <= 'f') goto yy1030;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy964:
+yy978:
yych = *++cursor_;
- if (yych == 'l') goto yy1018;
+ if (yych == 'l') goto yy1032;
goto yy87;
-yy965:
+yy979:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 272 "src/wast-lexer.cc"
{ RETURN_OPCODE0(SetLocal); }
-#line 5736 "src/prebuilt/wast-lexer-gen.cc"
-yy967:
+#line 5796 "src/prebuilt/wast-lexer-gen.cc"
+yy981:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 273 "src/wast-lexer.cc"
{ RETURN_OPCODE0(TeeLocal); }
-#line 5744 "src/prebuilt/wast-lexer-gen.cc"
-yy969:
+#line 5804 "src/prebuilt/wast-lexer-gen.cc"
+yy983:
yych = *++cursor_;
- if (yych == 'l') goto yy1020;
+ if (yych == 'l') goto yy1034;
goto yy87;
-yy970:
+yy984:
yych = *++cursor_;
- if (yych == 'a') goto yy1021;
+ if (yych == 'a') goto yy1035;
goto yy87;
-yy971:
+yy985:
yych = *++cursor_;
- if (yych == 'a') goto yy1022;
+ if (yych == 'a') goto yy1036;
goto yy87;
-yy972:
+yy986:
yych = *++cursor_;
- if (yych == 'f') goto yy1023;
+ if (yych == 'f') goto yy1037;
goto yy87;
-yy973:
+yy987:
yych = *++cursor_;
- if (yych == 'u') goto yy1024;
+ if (yych == 'u') goto yy1038;
goto yy87;
-yy974:
+yy988:
yych = *++cursor_;
- if (yych == 'p') goto yy1025;
+ if (yych == 'p') goto yy1039;
goto yy87;
-yy975:
+yy989:
yych = *++cursor_;
- if (yych == 'i') goto yy1027;
+ if (yych == 'i') goto yy1041;
goto yy87;
-yy976:
+yy990:
yych = *++cursor_;
- if (yych == 'e') goto yy1028;
+ if (yych == 'e') goto yy1042;
goto yy87;
-yy977:
+yy991:
yych = *++cursor_;
- if (yych == 'm') goto yy1029;
+ if (yych == 'm') goto yy1043;
goto yy87;
-yy978:
+yy992:
yych = *++cursor_;
- if (yych == 't') goto yy1030;
+ if (yych == 't') goto yy1044;
goto yy87;
-yy979:
+yy993:
yych = *++cursor_;
- if (yych == 'g') goto yy1031;
+ if (yych == 'g') goto yy1045;
goto yy87;
-yy980:
+yy994:
yych = *++cursor_;
- if (yych == '/') goto yy1032;
+ if (yych == '/') goto yy1046;
goto yy87;
-yy981:
+yy995:
yych = *++cursor_;
- if (yych == 't') goto yy1033;
+ if (yych == 't') goto yy1047;
goto yy87;
-yy982:
+yy996:
yych = *++cursor_;
- if (yych == 'r') goto yy1035;
+ if (yych == 'r') goto yy1049;
goto yy87;
-yy983:
+yy997:
yych = *++cursor_;
- if (yych == 't') goto yy1036;
+ if (yych == 't') goto yy1050;
goto yy87;
-yy984:
+yy998:
yych = *++cursor_;
- if (yych == 'g') goto yy1037;
+ if (yych == 'g') goto yy1051;
goto yy87;
-yy985:
+yy999:
yych = *++cursor_;
- if (yych == 't') goto yy1038;
+ if (yych == 't') goto yy1052;
goto yy87;
-yy986:
+yy1000:
yych = *++cursor_;
- if (yych == 'e') goto yy1040;
+ if (yych == 'e') goto yy1054;
goto yy87;
-yy987:
+yy1001:
yych = *++cursor_;
- if (yych == 'r') goto yy1041;
+ if (yych == 'r') goto yy1055;
goto yy87;
-yy988:
+yy1002:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 274 "src/wast-lexer.cc"
{ RETURN_OPCODE0(GetGlobal); }
-#line 5828 "src/prebuilt/wast-lexer-gen.cc"
-yy990:
+#line 5888 "src/prebuilt/wast-lexer-gen.cc"
+yy1004:
yych = *++cursor_;
- if (yych == 'y') goto yy1042;
+ if (yych == 'y') goto yy1056;
goto yy87;
-yy991:
+yy1005:
yych = *++cursor_;
- if (yych == '.') goto yy1044;
+ if (yych == '.') goto yy1058;
goto yy87;
-yy992:
+yy1006:
yych = *++cursor_;
- if (yych == '1') goto yy1045;
- if (yych == '8') goto yy1046;
+ if (yych == '1') goto yy1059;
+ if (yych == '8') goto yy1060;
goto yy87;
-yy993:
+yy1007:
yych = *++cursor_;
- if (yych == '_') goto yy1047;
+ if (yych == '_') goto yy1061;
goto yy87;
-yy994:
+yy1008:
yych = *++cursor_;
- if (yych == 's') goto yy1048;
- if (yych == 'u') goto yy1050;
+ if (yych == 's') goto yy1062;
+ if (yych == 'u') goto yy1064;
goto yy87;
-yy995:
+yy1009:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 311 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Popcnt); }
-#line 5858 "src/prebuilt/wast-lexer-gen.cc"
-yy997:
+#line 5918 "src/prebuilt/wast-lexer-gen.cc"
+yy1011:
yych = *++cursor_;
- if (yych == 'r') goto yy1052;
+ if (yych == 'r') goto yy1066;
goto yy87;
-yy998:
+yy1012:
yych = *++cursor_;
- if (yych == '6') goto yy1053;
+ if (yych == '6') goto yy1067;
goto yy87;
-yy999:
+yy1013:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 294 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I32Store8); }
-#line 5874 "src/prebuilt/wast-lexer-gen.cc"
-yy1001:
+#line 5934 "src/prebuilt/wast-lexer-gen.cc"
+yy1015:
yych = *++cursor_;
- if (yych == 's') goto yy1055;
- if (yych == 'u') goto yy1056;
+ if (yych == 's') goto yy1069;
+ if (yych == 'u') goto yy1070;
goto yy87;
-yy1002:
+yy1016:
yych = *++cursor_;
- if (yych == '6') goto yy1057;
+ if (yych == '6') goto yy1071;
goto yy87;
-yy1003:
+yy1017:
yych = *++cursor_;
- if (yych == '.') goto yy1058;
+ if (yych == '.') goto yy1072;
goto yy87;
-yy1004:
+yy1018:
yych = *++cursor_;
if (yych <= '3') {
- if (yych == '1') goto yy1059;
+ if (yych == '1') goto yy1073;
if (yych <= '2') goto yy87;
- goto yy1060;
+ goto yy1074;
} else {
if (yych <= '8') {
if (yych <= '7') goto yy87;
- goto yy1061;
+ goto yy1075;
} else {
- if (yych == '_') goto yy1062;
+ if (yych == '_') goto yy1076;
goto yy87;
}
}
-yy1005:
+yy1019:
yych = *++cursor_;
- if (yych == '_') goto yy1063;
+ if (yych == '_') goto yy1077;
goto yy87;
-yy1006:
+yy1020:
yych = *++cursor_;
- if (yych == '_') goto yy1064;
+ if (yych == '_') goto yy1078;
goto yy87;
-yy1007:
+yy1021:
yych = *++cursor_;
- if (yych == 's') goto yy1065;
- if (yych == 'u') goto yy1067;
+ if (yych == 's') goto yy1079;
+ if (yych == 'u') goto yy1081;
goto yy87;
-yy1008:
+yy1022:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 312 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Popcnt); }
-#line 5923 "src/prebuilt/wast-lexer-gen.cc"
-yy1010:
+#line 5983 "src/prebuilt/wast-lexer-gen.cc"
+yy1024:
yych = *++cursor_;
- if (yych == 'r') goto yy1069;
+ if (yych == 'r') goto yy1083;
goto yy87;
-yy1011:
+yy1025:
yych = *++cursor_;
- if (yych == '6') goto yy1070;
+ if (yych == '6') goto yy1084;
goto yy87;
-yy1012:
+yy1026:
yych = *++cursor_;
- if (yych == '2') goto yy1072;
+ if (yych == '2') goto yy1086;
goto yy87;
-yy1013:
+yy1027:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 295 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store8); }
-#line 5943 "src/prebuilt/wast-lexer-gen.cc"
-yy1015:
+#line 6003 "src/prebuilt/wast-lexer-gen.cc"
+yy1029:
yych = *++cursor_;
- if (yych == 's') goto yy1074;
- if (yych == 'u') goto yy1075;
+ if (yych == 's') goto yy1088;
+ if (yych == 'u') goto yy1089;
goto yy87;
-yy1016:
+yy1030:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy863;
+ if (yych <= '"') goto yy877;
goto yy86;
} else {
- if (yych <= ')') goto yy863;
+ if (yych <= ')') goto yy877;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy1016;
+ if (yych <= '9') goto yy1030;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy863;
+ if (yych <= ';') goto yy877;
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy1016;
+ if (yych <= 'F') goto yy1030;
goto yy86;
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy963;
+ if (yych <= '_') goto yy977;
goto yy86;
} else {
- if (yych <= 'f') goto yy1016;
+ if (yych <= 'f') goto yy1030;
if (yych <= '~') goto yy86;
- goto yy863;
+ goto yy877;
}
}
}
-yy1018:
+yy1032:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 275 "src/wast-lexer.cc"
{ RETURN_OPCODE0(SetGlobal); }
-#line 5988 "src/prebuilt/wast-lexer-gen.cc"
-yy1020:
+#line 6048 "src/prebuilt/wast-lexer-gen.cc"
+yy1034:
yych = *++cursor_;
- if (yych == 'e') goto yy1076;
+ if (yych == 'e') goto yy1090;
goto yy87;
-yy1021:
+yy1035:
yych = *++cursor_;
- if (yych == 'u') goto yy1078;
+ if (yych == 'u') goto yy1092;
goto yy87;
-yy1022:
+yy1036:
yych = *++cursor_;
- if (yych == 'l') goto yy1079;
+ if (yych == 'l') goto yy1093;
goto yy87;
-yy1023:
+yy1037:
yych = *++cursor_;
- if (yych == 'o') goto yy1080;
+ if (yych == 'o') goto yy1094;
goto yy87;
-yy1024:
+yy1038:
yych = *++cursor_;
- if (yych == 'r') goto yy1081;
+ if (yych == 'r') goto yy1095;
goto yy87;
-yy1025:
+yy1039:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 537 "src/wast-lexer.cc"
+#line 540 "src/wast-lexer.cc"
{ RETURN(AssertTrap); }
-#line 6016 "src/prebuilt/wast-lexer-gen.cc"
-yy1027:
+#line 6076 "src/prebuilt/wast-lexer-gen.cc"
+yy1041:
yych = *++cursor_;
- if (yych == 'n') goto yy1082;
+ if (yych == 'n') goto yy1096;
goto yy87;
-yy1028:
+yy1042:
yych = *++cursor_;
- if (yych == 'c') goto yy1083;
+ if (yych == 'c') goto yy1097;
goto yy87;
-yy1029:
+yy1043:
yych = *++cursor_;
- if (yych == 'o') goto yy1084;
+ if (yych == 'o') goto yy1098;
goto yy87;
-yy1030:
+yy1044:
yych = *++cursor_;
- if (yych == '_') goto yy1085;
+ if (yych == '_') goto yy1099;
goto yy87;
-yy1031:
+yy1045:
yych = *++cursor_;
- if (yych == 'n') goto yy1086;
+ if (yych == 'n') goto yy1100;
goto yy87;
-yy1032:
+yy1046:
yych = *++cursor_;
- if (yych == 'f') goto yy1088;
+ if (yych == 'f') goto yy1102;
goto yy87;
-yy1033:
+yy1047:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 325 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Nearest); }
-#line 6048 "src/prebuilt/wast-lexer-gen.cc"
-yy1035:
+#line 6108 "src/prebuilt/wast-lexer-gen.cc"
+yy1049:
yych = *++cursor_;
- if (yych == 'p') goto yy1089;
+ if (yych == 'p') goto yy1103;
goto yy87;
-yy1036:
+yy1050:
yych = *++cursor_;
- if (yych == '_') goto yy1090;
+ if (yych == '_') goto yy1104;
goto yy87;
-yy1037:
+yy1051:
yych = *++cursor_;
- if (yych == 'n') goto yy1091;
+ if (yych == 'n') goto yy1105;
goto yy87;
-yy1038:
+yy1052:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 326 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Nearest); }
-#line 6068 "src/prebuilt/wast-lexer-gen.cc"
-yy1040:
+#line 6128 "src/prebuilt/wast-lexer-gen.cc"
+yy1054:
yych = *++cursor_;
- if (yych == '/') goto yy1093;
+ if (yych == '/') goto yy1107;
goto yy87;
-yy1041:
+yy1055:
yych = *++cursor_;
- if (yych == 'p') goto yy1094;
+ if (yych == 'p') goto yy1108;
goto yy87;
-yy1042:
+yy1056:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 444 "src/wast-lexer.cc"
{ RETURN_OPCODE0(GrowMemory); }
-#line 6084 "src/prebuilt/wast-lexer-gen.cc"
-yy1044:
+#line 6144 "src/prebuilt/wast-lexer-gen.cc"
+yy1058:
yych = *++cursor_;
if (yych <= 'q') {
- if (yych == 'l') goto yy1095;
+ if (yych == 'l') goto yy1109;
goto yy87;
} else {
- if (yych <= 'r') goto yy1096;
- if (yych <= 's') goto yy1097;
+ if (yych <= 'r') goto yy1110;
+ if (yych <= 's') goto yy1111;
goto yy87;
}
-yy1045:
+yy1059:
yych = *++cursor_;
- if (yych == '6') goto yy1098;
+ if (yych == '6') goto yy1112;
goto yy87;
-yy1046:
+yy1060:
yych = *++cursor_;
- if (yych == '_') goto yy1099;
+ if (yych == '_') goto yy1113;
goto yy87;
-yy1047:
+yy1061:
yych = *++cursor_;
- if (yych == 's') goto yy1100;
- if (yych == 'u') goto yy1102;
+ if (yych == 's') goto yy1114;
+ if (yych == 'u') goto yy1116;
goto yy87;
-yy1048:
+yy1062:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 284 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load8S); }
-#line 6115 "src/prebuilt/wast-lexer-gen.cc"
-yy1050:
+#line 6175 "src/prebuilt/wast-lexer-gen.cc"
+yy1064:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 286 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load8U); }
-#line 6123 "src/prebuilt/wast-lexer-gen.cc"
-yy1052:
+#line 6183 "src/prebuilt/wast-lexer-gen.cc"
+yy1066:
yych = *++cursor_;
- if (yych == 'p') goto yy1104;
+ if (yych == 'p') goto yy1118;
goto yy87;
-yy1053:
+yy1067:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 296 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I32Store16); }
-#line 6135 "src/prebuilt/wast-lexer-gen.cc"
-yy1055:
+#line 6195 "src/prebuilt/wast-lexer-gen.cc"
+yy1069:
yych = *++cursor_;
- if (yych == '/') goto yy1105;
- if (yych == ':') goto yy1106;
+ if (yych == '/') goto yy1119;
+ if (yych == ':') goto yy1120;
goto yy87;
-yy1056:
+yy1070:
yych = *++cursor_;
- if (yych == '/') goto yy1107;
- if (yych == ':') goto yy1108;
+ if (yych == '/') goto yy1121;
+ if (yych == ':') goto yy1122;
goto yy87;
-yy1057:
+yy1071:
yych = *++cursor_;
- if (yych == '4') goto yy1109;
+ if (yych == '4') goto yy1123;
goto yy87;
-yy1058:
+yy1072:
yych = *++cursor_;
if (yych <= 'q') {
- if (yych == 'l') goto yy1111;
+ if (yych == 'l') goto yy1125;
goto yy87;
} else {
- if (yych <= 'r') goto yy1112;
- if (yych <= 's') goto yy1113;
+ if (yych <= 'r') goto yy1126;
+ if (yych <= 's') goto yy1127;
goto yy87;
}
-yy1059:
+yy1073:
yych = *++cursor_;
- if (yych == '6') goto yy1114;
+ if (yych == '6') goto yy1128;
goto yy87;
-yy1060:
+yy1074:
yych = *++cursor_;
- if (yych == '2') goto yy1115;
+ if (yych == '2') goto yy1129;
goto yy87;
-yy1061:
+yy1075:
yych = *++cursor_;
- if (yych == '_') goto yy1116;
+ if (yych == '_') goto yy1130;
goto yy87;
-yy1062:
+yy1076:
yych = *++cursor_;
- if (yych == 's') goto yy1117;
- if (yych == 'u') goto yy1118;
+ if (yych == 's') goto yy1131;
+ if (yych == 'u') goto yy1132;
goto yy87;
-yy1063:
+yy1077:
yych = *++cursor_;
- if (yych == 's') goto yy1119;
- if (yych == 'u') goto yy1121;
+ if (yych == 's') goto yy1133;
+ if (yych == 'u') goto yy1135;
goto yy87;
-yy1064:
+yy1078:
yych = *++cursor_;
- if (yych == 's') goto yy1123;
- if (yych == 'u') goto yy1125;
+ if (yych == 's') goto yy1137;
+ if (yych == 'u') goto yy1139;
goto yy87;
-yy1065:
+yy1079:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 285 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load8S); }
-#line 6194 "src/prebuilt/wast-lexer-gen.cc"
-yy1067:
+#line 6254 "src/prebuilt/wast-lexer-gen.cc"
+yy1081:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 287 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load8U); }
-#line 6202 "src/prebuilt/wast-lexer-gen.cc"
-yy1069:
+#line 6262 "src/prebuilt/wast-lexer-gen.cc"
+yy1083:
yych = *++cursor_;
- if (yych == 'p') goto yy1127;
+ if (yych == 'p') goto yy1141;
goto yy87;
-yy1070:
+yy1084:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 297 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store16); }
-#line 6214 "src/prebuilt/wast-lexer-gen.cc"
-yy1072:
+#line 6274 "src/prebuilt/wast-lexer-gen.cc"
+yy1086:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 298 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store32); }
-#line 6222 "src/prebuilt/wast-lexer-gen.cc"
-yy1074:
+#line 6282 "src/prebuilt/wast-lexer-gen.cc"
+yy1088:
yych = *++cursor_;
- if (yych == '/') goto yy1128;
- if (yych == ':') goto yy1129;
+ if (yych == '/') goto yy1142;
+ if (yych == ':') goto yy1143;
goto yy87;
-yy1075:
+yy1089:
yych = *++cursor_;
- if (yych == '/') goto yy1130;
- if (yych == ':') goto yy1131;
+ if (yych == '/') goto yy1144;
+ if (yych == ':') goto yy1145;
goto yy87;
-yy1076:
+yy1090:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 442 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Unreachable); }
-#line 6240 "src/prebuilt/wast-lexer-gen.cc"
-yy1078:
+#line 6300 "src/prebuilt/wast-lexer-gen.cc"
+yy1092:
yych = *++cursor_;
- if (yych == 's') goto yy1132;
+ if (yych == 's') goto yy1146;
goto yy87;
-yy1079:
+yy1093:
yych = *++cursor_;
- if (yych == 'i') goto yy1133;
+ if (yych == 'i') goto yy1147;
goto yy87;
-yy1080:
+yy1094:
yych = *++cursor_;
- if (yych == 'r') goto yy1134;
+ if (yych == 'r') goto yy1148;
goto yy87;
-yy1081:
+yy1095:
yych = *++cursor_;
- if (yych == 'n') goto yy1135;
+ if (yych == 'n') goto yy1149;
goto yy87;
-yy1082:
+yy1096:
yych = *++cursor_;
- if (yych == 'k') goto yy1137;
+ if (yych == 'k') goto yy1151;
goto yy87;
-yy1083:
+yy1097:
yych = *++cursor_;
- if (yych == 't') goto yy1138;
+ if (yych == 't') goto yy1152;
goto yy87;
-yy1084:
+yy1098:
yych = *++cursor_;
- if (yych == 'r') goto yy1140;
+ if (yych == 'r') goto yy1154;
goto yy87;
-yy1085:
+yy1099:
yych = *++cursor_;
- if (yych == 's') goto yy1141;
- if (yych == 'u') goto yy1142;
+ if (yych == 's') goto yy1155;
+ if (yych == 'u') goto yy1156;
goto yy87;
-yy1086:
+yy1100:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 374 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Copysign); }
-#line 6281 "src/prebuilt/wast-lexer-gen.cc"
-yy1088:
+#line 6341 "src/prebuilt/wast-lexer-gen.cc"
+yy1102:
yych = *++cursor_;
- if (yych == '6') goto yy1143;
+ if (yych == '6') goto yy1157;
goto yy87;
-yy1089:
+yy1103:
yych = *++cursor_;
- if (yych == 'r') goto yy1144;
+ if (yych == 'r') goto yy1158;
goto yy87;
-yy1090:
+yy1104:
yych = *++cursor_;
- if (yych == 's') goto yy1145;
- if (yych == 'u') goto yy1146;
+ if (yych == 's') goto yy1159;
+ if (yych == 'u') goto yy1160;
goto yy87;
-yy1091:
+yy1105:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 375 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Copysign); }
-#line 6302 "src/prebuilt/wast-lexer-gen.cc"
-yy1093:
+#line 6362 "src/prebuilt/wast-lexer-gen.cc"
+yy1107:
yych = *++cursor_;
- if (yych == 'f') goto yy1147;
+ if (yych == 'f') goto yy1161;
goto yy87;
-yy1094:
+yy1108:
yych = *++cursor_;
- if (yych == 'r') goto yy1148;
+ if (yych == 'r') goto yy1162;
goto yy87;
-yy1095:
+yy1109:
yych = *++cursor_;
- if (yych == 'o') goto yy1149;
+ if (yych == 'o') goto yy1163;
goto yy87;
-yy1096:
+yy1110:
yych = *++cursor_;
- if (yych == 'm') goto yy1150;
+ if (yych == 'm') goto yy1164;
goto yy87;
-yy1097:
+yy1111:
yych = *++cursor_;
- if (yych == 't') goto yy1151;
+ if (yych == 't') goto yy1165;
goto yy87;
-yy1098:
+yy1112:
yych = *++cursor_;
- if (yych == '_') goto yy1152;
+ if (yych == '_') goto yy1166;
goto yy87;
-yy1099:
+yy1113:
yych = *++cursor_;
- if (yych == 's') goto yy1153;
+ if (yych == 's') goto yy1167;
goto yy87;
-yy1100:
+yy1114:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 288 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load16S); }
-#line 6338 "src/prebuilt/wast-lexer-gen.cc"
-yy1102:
+#line 6398 "src/prebuilt/wast-lexer-gen.cc"
+yy1116:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 290 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load16U); }
-#line 6346 "src/prebuilt/wast-lexer-gen.cc"
-yy1104:
+#line 6406 "src/prebuilt/wast-lexer-gen.cc"
+yy1118:
yych = *++cursor_;
- if (yych == 'r') goto yy1155;
+ if (yych == 'r') goto yy1169;
goto yy87;
-yy1105:
+yy1119:
yych = *++cursor_;
- if (yych == 'f') goto yy1156;
+ if (yych == 'f') goto yy1170;
goto yy87;
-yy1106:
+yy1120:
yych = *++cursor_;
- if (yych == 's') goto yy1157;
+ if (yych == 's') goto yy1171;
goto yy87;
-yy1107:
+yy1121:
yych = *++cursor_;
- if (yych == 'f') goto yy1158;
+ if (yych == 'f') goto yy1172;
goto yy87;
-yy1108:
+yy1122:
yych = *++cursor_;
- if (yych == 's') goto yy1159;
+ if (yych == 's') goto yy1173;
goto yy87;
-yy1109:
+yy1123:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 410 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32WrapI64); }
-#line 6374 "src/prebuilt/wast-lexer-gen.cc"
-yy1111:
+#line 6434 "src/prebuilt/wast-lexer-gen.cc"
+yy1125:
yych = *++cursor_;
- if (yych == 'o') goto yy1160;
+ if (yych == 'o') goto yy1174;
goto yy87;
-yy1112:
+yy1126:
yych = *++cursor_;
- if (yych == 'm') goto yy1161;
+ if (yych == 'm') goto yy1175;
goto yy87;
-yy1113:
+yy1127:
yych = *++cursor_;
- if (yych == 't') goto yy1162;
+ if (yych == 't') goto yy1176;
goto yy87;
-yy1114:
+yy1128:
yych = *++cursor_;
- if (yych == '_') goto yy1163;
+ if (yych == '_') goto yy1177;
goto yy87;
-yy1115:
+yy1129:
yych = *++cursor_;
- if (yych == '_') goto yy1164;
+ if (yych == '_') goto yy1178;
goto yy87;
-yy1116:
+yy1130:
yych = *++cursor_;
- if (yych == 's') goto yy1165;
+ if (yych == 's') goto yy1179;
goto yy87;
-yy1117:
+yy1131:
yych = *++cursor_;
- if (yych == '/') goto yy1167;
+ if (yych == '/') goto yy1181;
goto yy87;
-yy1118:
+yy1132:
yych = *++cursor_;
- if (yych == '/') goto yy1168;
+ if (yych == '/') goto yy1182;
goto yy87;
-yy1119:
+yy1133:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 289 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load16S); }
-#line 6414 "src/prebuilt/wast-lexer-gen.cc"
-yy1121:
+#line 6474 "src/prebuilt/wast-lexer-gen.cc"
+yy1135:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 291 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load16U); }
-#line 6422 "src/prebuilt/wast-lexer-gen.cc"
-yy1123:
+#line 6482 "src/prebuilt/wast-lexer-gen.cc"
+yy1137:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 292 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load32S); }
-#line 6430 "src/prebuilt/wast-lexer-gen.cc"
-yy1125:
+#line 6490 "src/prebuilt/wast-lexer-gen.cc"
+yy1139:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 293 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load32U); }
-#line 6438 "src/prebuilt/wast-lexer-gen.cc"
-yy1127:
+#line 6498 "src/prebuilt/wast-lexer-gen.cc"
+yy1141:
yych = *++cursor_;
- if (yych == 'r') goto yy1169;
+ if (yych == 'r') goto yy1183;
goto yy87;
-yy1128:
+yy1142:
yych = *++cursor_;
- if (yych == 'f') goto yy1170;
+ if (yych == 'f') goto yy1184;
goto yy87;
-yy1129:
+yy1143:
yych = *++cursor_;
- if (yych == 's') goto yy1171;
+ if (yych == 's') goto yy1185;
goto yy87;
-yy1130:
+yy1144:
yych = *++cursor_;
- if (yych == 'f') goto yy1172;
+ if (yych == 'f') goto yy1186;
goto yy87;
-yy1131:
+yy1145:
yych = *++cursor_;
- if (yych == 's') goto yy1173;
+ if (yych == 's') goto yy1187;
goto yy87;
-yy1132:
+yy1146:
yych = *++cursor_;
- if (yych == 't') goto yy1174;
+ if (yych == 't') goto yy1188;
goto yy87;
-yy1133:
+yy1147:
yych = *++cursor_;
- if (yych == 'd') goto yy1175;
+ if (yych == 'd') goto yy1189;
goto yy87;
-yy1134:
+yy1148:
yych = *++cursor_;
- if (yych == 'm') goto yy1177;
+ if (yych == 'm') goto yy1191;
goto yy87;
-yy1135:
+yy1149:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy1136;
+ if (yych <= '"') goto yy1150;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy1178;
+ if (yych <= '_') goto yy1192;
if (yych <= '~') goto yy86;
}
}
-yy1136:
-#line 534 "src/wast-lexer.cc"
+yy1150:
+#line 537 "src/wast-lexer.cc"
{ RETURN(AssertReturn); }
-#line 6491 "src/prebuilt/wast-lexer-gen.cc"
-yy1137:
+#line 6551 "src/prebuilt/wast-lexer-gen.cc"
+yy1151:
yych = *++cursor_;
- if (yych == 'a') goto yy1179;
+ if (yych == 'a') goto yy1193;
goto yy87;
-yy1138:
+yy1152:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 267 "src/wast-lexer.cc"
{ RETURN_OPCODE0(CallIndirect); }
-#line 6503 "src/prebuilt/wast-lexer-gen.cc"
-yy1140:
+#line 6563 "src/prebuilt/wast-lexer-gen.cc"
+yy1154:
yych = *++cursor_;
- if (yych == 'y') goto yy1180;
+ if (yych == 'y') goto yy1194;
goto yy87;
-yy1141:
+yy1155:
yych = *++cursor_;
- if (yych == '/') goto yy1182;
+ if (yych == '/') goto yy1196;
goto yy87;
-yy1142:
+yy1156:
yych = *++cursor_;
- if (yych == '/') goto yy1183;
+ if (yych == '/') goto yy1197;
goto yy87;
-yy1143:
+yy1157:
yych = *++cursor_;
- if (yych == '4') goto yy1184;
+ if (yych == '4') goto yy1198;
goto yy87;
-yy1144:
+yy1158:
yych = *++cursor_;
- if (yych == 'e') goto yy1186;
+ if (yych == 'e') goto yy1200;
goto yy87;
-yy1145:
+yy1159:
yych = *++cursor_;
- if (yych == '/') goto yy1187;
+ if (yych == '/') goto yy1201;
goto yy87;
-yy1146:
+yy1160:
yych = *++cursor_;
- if (yych == '/') goto yy1188;
+ if (yych == '/') goto yy1202;
goto yy87;
-yy1147:
+yy1161:
yych = *++cursor_;
- if (yych == '3') goto yy1189;
+ if (yych == '3') goto yy1203;
goto yy87;
-yy1148:
+yy1162:
yych = *++cursor_;
- if (yych == 'e') goto yy1190;
+ if (yych == 'e') goto yy1204;
goto yy87;
-yy1149:
+yy1163:
yych = *++cursor_;
- if (yych == 'a') goto yy1191;
+ if (yych == 'a') goto yy1205;
goto yy87;
-yy1150:
+yy1164:
yych = *++cursor_;
- if (yych == 'w') goto yy1192;
+ if (yych == 'w') goto yy1206;
goto yy87;
-yy1151:
+yy1165:
yych = *++cursor_;
- if (yych == 'o') goto yy1193;
+ if (yych == 'o') goto yy1207;
goto yy87;
-yy1152:
+yy1166:
yych = *++cursor_;
- if (yych == 's') goto yy1194;
+ if (yych == 's') goto yy1208;
goto yy87;
-yy1153:
+yy1167:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 327 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Extend8S); }
-#line 6563 "src/prebuilt/wast-lexer-gen.cc"
-yy1155:
+#line 6623 "src/prebuilt/wast-lexer-gen.cc"
+yy1169:
yych = *++cursor_;
- if (yych == 'e') goto yy1196;
+ if (yych == 'e') goto yy1210;
goto yy87;
-yy1156:
+yy1170:
yych = *++cursor_;
- if (yych == '3') goto yy1197;
- if (yych == '6') goto yy1198;
+ if (yych == '3') goto yy1211;
+ if (yych == '6') goto yy1212;
goto yy87;
-yy1157:
+yy1171:
yych = *++cursor_;
- if (yych == 'a') goto yy1199;
+ if (yych == 'a') goto yy1213;
goto yy87;
-yy1158:
+yy1172:
yych = *++cursor_;
- if (yych == '3') goto yy1200;
- if (yych == '6') goto yy1201;
+ if (yych == '3') goto yy1214;
+ if (yych == '6') goto yy1215;
goto yy87;
-yy1159:
+yy1173:
yych = *++cursor_;
- if (yych == 'a') goto yy1202;
+ if (yych == 'a') goto yy1216;
goto yy87;
-yy1160:
+yy1174:
yych = *++cursor_;
- if (yych == 'a') goto yy1203;
+ if (yych == 'a') goto yy1217;
goto yy87;
-yy1161:
+yy1175:
yych = *++cursor_;
- if (yych == 'w') goto yy1204;
+ if (yych == 'w') goto yy1218;
goto yy87;
-yy1162:
+yy1176:
yych = *++cursor_;
- if (yych == 'o') goto yy1205;
+ if (yych == 'o') goto yy1219;
goto yy87;
-yy1163:
+yy1177:
yych = *++cursor_;
- if (yych == 's') goto yy1206;
+ if (yych == 's') goto yy1220;
goto yy87;
-yy1164:
+yy1178:
yych = *++cursor_;
- if (yych == 's') goto yy1208;
+ if (yych == 's') goto yy1222;
goto yy87;
-yy1165:
+yy1179:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 329 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Extend8S); }
-#line 6613 "src/prebuilt/wast-lexer-gen.cc"
-yy1167:
+#line 6673 "src/prebuilt/wast-lexer-gen.cc"
+yy1181:
yych = *++cursor_;
- if (yych == 'i') goto yy1210;
+ if (yych == 'i') goto yy1224;
goto yy87;
-yy1168:
+yy1182:
yych = *++cursor_;
- if (yych == 'i') goto yy1211;
+ if (yych == 'i') goto yy1225;
goto yy87;
-yy1169:
+yy1183:
yych = *++cursor_;
- if (yych == 'e') goto yy1212;
+ if (yych == 'e') goto yy1226;
goto yy87;
-yy1170:
+yy1184:
yych = *++cursor_;
- if (yych == '3') goto yy1213;
- if (yych == '6') goto yy1214;
+ if (yych == '3') goto yy1227;
+ if (yych == '6') goto yy1228;
goto yy87;
-yy1171:
+yy1185:
yych = *++cursor_;
- if (yych == 'a') goto yy1215;
+ if (yych == 'a') goto yy1229;
goto yy87;
-yy1172:
+yy1186:
yych = *++cursor_;
- if (yych == '3') goto yy1216;
- if (yych == '6') goto yy1217;
+ if (yych == '3') goto yy1230;
+ if (yych == '6') goto yy1231;
goto yy87;
-yy1173:
+yy1187:
yych = *++cursor_;
- if (yych == 'a') goto yy1218;
+ if (yych == 'a') goto yy1232;
goto yy87;
-yy1174:
+yy1188:
yych = *++cursor_;
- if (yych == 'i') goto yy1219;
+ if (yych == 'i') goto yy1233;
goto yy87;
-yy1175:
+yy1189:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 532 "src/wast-lexer.cc"
+#line 535 "src/wast-lexer.cc"
{ RETURN(AssertInvalid); }
-#line 6655 "src/prebuilt/wast-lexer-gen.cc"
-yy1177:
+#line 6715 "src/prebuilt/wast-lexer-gen.cc"
+yy1191:
yych = *++cursor_;
- if (yych == 'e') goto yy1220;
+ if (yych == 'e') goto yy1234;
goto yy87;
-yy1178:
+yy1192:
yych = *++cursor_;
- if (yych == 'a') goto yy1221;
- if (yych == 'c') goto yy1222;
+ if (yych == 'a') goto yy1235;
+ if (yych == 'c') goto yy1236;
goto yy87;
-yy1179:
+yy1193:
yych = *++cursor_;
- if (yych == 'b') goto yy1223;
+ if (yych == 'b') goto yy1237;
goto yy87;
-yy1180:
+yy1194:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 443 "src/wast-lexer.cc"
{ RETURN_OPCODE0(CurrentMemory); }
-#line 6676 "src/prebuilt/wast-lexer-gen.cc"
-yy1182:
+#line 6736 "src/prebuilt/wast-lexer-gen.cc"
+yy1196:
yych = *++cursor_;
- if (yych == 'i') goto yy1224;
+ if (yych == 'i') goto yy1238;
goto yy87;
-yy1183:
+yy1197:
yych = *++cursor_;
- if (yych == 'i') goto yy1225;
+ if (yych == 'i') goto yy1239;
goto yy87;
-yy1184:
+yy1198:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 436 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32DemoteF64); }
-#line 6692 "src/prebuilt/wast-lexer-gen.cc"
-yy1186:
+#line 6752 "src/prebuilt/wast-lexer-gen.cc"
+yy1200:
yych = *++cursor_;
- if (yych == 't') goto yy1226;
+ if (yych == 't') goto yy1240;
goto yy87;
-yy1187:
+yy1201:
yych = *++cursor_;
- if (yych == 'i') goto yy1227;
+ if (yych == 'i') goto yy1241;
goto yy87;
-yy1188:
+yy1202:
yych = *++cursor_;
- if (yych == 'i') goto yy1228;
+ if (yych == 'i') goto yy1242;
goto yy87;
-yy1189:
+yy1203:
yych = *++cursor_;
- if (yych == '2') goto yy1229;
+ if (yych == '2') goto yy1243;
goto yy87;
-yy1190:
+yy1204:
yych = *++cursor_;
- if (yych == 't') goto yy1231;
+ if (yych == 't') goto yy1245;
goto yy87;
-yy1191:
+yy1205:
yych = *++cursor_;
- if (yych == 'd') goto yy1232;
+ if (yych == 'd') goto yy1246;
goto yy87;
-yy1192:
+yy1206:
yych = *++cursor_;
if (yych <= '0') {
- if (yych == '.') goto yy1234;
+ if (yych == '.') goto yy1248;
goto yy87;
} else {
- if (yych <= '1') goto yy1235;
- if (yych == '8') goto yy1236;
+ if (yych <= '1') goto yy1249;
+ if (yych == '8') goto yy1250;
goto yy87;
}
-yy1193:
+yy1207:
yych = *++cursor_;
- if (yych == 'r') goto yy1237;
+ if (yych == 'r') goto yy1251;
goto yy87;
-yy1194:
+yy1208:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 328 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Extend16S); }
-#line 6738 "src/prebuilt/wast-lexer-gen.cc"
-yy1196:
+#line 6798 "src/prebuilt/wast-lexer-gen.cc"
+yy1210:
yych = *++cursor_;
- if (yych == 't') goto yy1238;
+ if (yych == 't') goto yy1252;
goto yy87;
-yy1197:
+yy1211:
yych = *++cursor_;
- if (yych == '2') goto yy1239;
+ if (yych == '2') goto yy1253;
goto yy87;
-yy1198:
+yy1212:
yych = *++cursor_;
- if (yych == '4') goto yy1241;
+ if (yych == '4') goto yy1255;
goto yy87;
-yy1199:
+yy1213:
yych = *++cursor_;
- if (yych == 't') goto yy1243;
+ if (yych == 't') goto yy1257;
goto yy87;
-yy1200:
+yy1214:
yych = *++cursor_;
- if (yych == '2') goto yy1244;
+ if (yych == '2') goto yy1258;
goto yy87;
-yy1201:
+yy1215:
yych = *++cursor_;
- if (yych == '4') goto yy1246;
+ if (yych == '4') goto yy1260;
goto yy87;
-yy1202:
+yy1216:
yych = *++cursor_;
- if (yych == 't') goto yy1248;
+ if (yych == 't') goto yy1262;
goto yy87;
-yy1203:
+yy1217:
yych = *++cursor_;
- if (yych == 'd') goto yy1249;
+ if (yych == 'd') goto yy1263;
goto yy87;
-yy1204:
+yy1218:
yych = *++cursor_;
switch (yych) {
- case '.': goto yy1251;
- case '1': goto yy1252;
- case '3': goto yy1253;
- case '8': goto yy1254;
+ case '.': goto yy1265;
+ case '1': goto yy1266;
+ case '3': goto yy1267;
+ case '8': goto yy1268;
default: goto yy87;
}
-yy1205:
+yy1219:
yych = *++cursor_;
- if (yych == 'r') goto yy1255;
+ if (yych == 'r') goto yy1269;
goto yy87;
-yy1206:
+yy1220:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 330 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Extend16S); }
-#line 6791 "src/prebuilt/wast-lexer-gen.cc"
-yy1208:
+#line 6851 "src/prebuilt/wast-lexer-gen.cc"
+yy1222:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 331 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Extend32S); }
-#line 6799 "src/prebuilt/wast-lexer-gen.cc"
-yy1210:
+#line 6859 "src/prebuilt/wast-lexer-gen.cc"
+yy1224:
yych = *++cursor_;
- if (yych == '3') goto yy1256;
+ if (yych == '3') goto yy1270;
goto yy87;
-yy1211:
+yy1225:
yych = *++cursor_;
- if (yych == '3') goto yy1257;
+ if (yych == '3') goto yy1271;
goto yy87;
-yy1212:
+yy1226:
yych = *++cursor_;
- if (yych == 't') goto yy1258;
+ if (yych == 't') goto yy1272;
goto yy87;
-yy1213:
+yy1227:
yych = *++cursor_;
- if (yych == '2') goto yy1259;
+ if (yych == '2') goto yy1273;
goto yy87;
-yy1214:
+yy1228:
yych = *++cursor_;
- if (yych == '4') goto yy1261;
+ if (yych == '4') goto yy1275;
goto yy87;
-yy1215:
+yy1229:
yych = *++cursor_;
- if (yych == 't') goto yy1263;
+ if (yych == 't') goto yy1277;
goto yy87;
-yy1216:
+yy1230:
yych = *++cursor_;
- if (yych == '2') goto yy1264;
+ if (yych == '2') goto yy1278;
goto yy87;
-yy1217:
+yy1231:
yych = *++cursor_;
- if (yych == '4') goto yy1266;
+ if (yych == '4') goto yy1280;
goto yy87;
-yy1218:
+yy1232:
yych = *++cursor_;
- if (yych == 't') goto yy1268;
+ if (yych == 't') goto yy1282;
goto yy87;
-yy1219:
+yy1233:
yych = *++cursor_;
- if (yych == 'o') goto yy1269;
+ if (yych == 'o') goto yy1283;
goto yy87;
-yy1220:
+yy1234:
yych = *++cursor_;
- if (yych == 'd') goto yy1270;
+ if (yych == 'd') goto yy1284;
goto yy87;
-yy1221:
+yy1235:
yych = *++cursor_;
- if (yych == 'r') goto yy1272;
+ if (yych == 'r') goto yy1286;
goto yy87;
-yy1222:
+yy1236:
yych = *++cursor_;
- if (yych == 'a') goto yy1273;
+ if (yych == 'a') goto yy1287;
goto yy87;
-yy1223:
+yy1237:
yych = *++cursor_;
- if (yych == 'l') goto yy1274;
+ if (yych == 'l') goto yy1288;
goto yy87;
-yy1224:
+yy1238:
yych = *++cursor_;
- if (yych == '3') goto yy1275;
- if (yych == '6') goto yy1276;
+ if (yych == '3') goto yy1289;
+ if (yych == '6') goto yy1290;
goto yy87;
-yy1225:
+yy1239:
yych = *++cursor_;
- if (yych == '3') goto yy1277;
- if (yych == '6') goto yy1278;
+ if (yych == '3') goto yy1291;
+ if (yych == '6') goto yy1292;
goto yy87;
-yy1226:
+yy1240:
yych = *++cursor_;
- if (yych == '/') goto yy1279;
+ if (yych == '/') goto yy1293;
goto yy87;
-yy1227:
+yy1241:
yych = *++cursor_;
- if (yych == '3') goto yy1280;
- if (yych == '6') goto yy1281;
+ if (yych == '3') goto yy1294;
+ if (yych == '6') goto yy1295;
goto yy87;
-yy1228:
+yy1242:
yych = *++cursor_;
- if (yych == '3') goto yy1282;
- if (yych == '6') goto yy1283;
+ if (yych == '3') goto yy1296;
+ if (yych == '6') goto yy1297;
goto yy87;
-yy1229:
+yy1243:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 435 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64PromoteF32); }
-#line 6887 "src/prebuilt/wast-lexer-gen.cc"
-yy1231:
+#line 6947 "src/prebuilt/wast-lexer-gen.cc"
+yy1245:
yych = *++cursor_;
- if (yych == '/') goto yy1284;
+ if (yych == '/') goto yy1298;
goto yy87;
-yy1232:
+yy1246:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -6899,290 +6959,290 @@ yy1232:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy1285;
+ if (yych <= '1') goto yy1299;
if (yych <= '7') goto yy86;
- goto yy1286;
+ goto yy1300;
} else {
- if (yych == ';') goto yy1233;
+ if (yych == ';') goto yy1247;
if (yych <= '~') goto yy86;
}
}
-yy1233:
-#line 446 "src/wast-lexer.cc"
+yy1247:
+#line 449 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I32AtomicLoad); }
-#line 6914 "src/prebuilt/wast-lexer-gen.cc"
-yy1234:
+#line 6974 "src/prebuilt/wast-lexer-gen.cc"
+yy1248:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1287;
- case 'c': goto yy1288;
- case 'o': goto yy1289;
- case 's': goto yy1290;
- case 'x': goto yy1291;
+ case 'a': goto yy1301;
+ case 'c': goto yy1302;
+ case 'o': goto yy1303;
+ case 's': goto yy1304;
+ case 'x': goto yy1305;
default: goto yy87;
}
-yy1235:
+yy1249:
yych = *++cursor_;
- if (yych == '6') goto yy1292;
+ if (yych == '6') goto yy1306;
goto yy87;
-yy1236:
+yy1250:
yych = *++cursor_;
- if (yych == '_') goto yy1293;
+ if (yych == '_') goto yy1307;
goto yy87;
-yy1237:
+yy1251:
yych = *++cursor_;
- if (yych == 'e') goto yy1294;
+ if (yych == 'e') goto yy1308;
goto yy87;
-yy1238:
+yy1252:
yych = *++cursor_;
- if (yych == '/') goto yy1296;
+ if (yych == '/') goto yy1310;
goto yy87;
-yy1239:
+yy1253:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 411 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSF32); }
-#line 6948 "src/prebuilt/wast-lexer-gen.cc"
-yy1241:
+#line 7008 "src/prebuilt/wast-lexer-gen.cc"
+yy1255:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 413 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSF64); }
-#line 6956 "src/prebuilt/wast-lexer-gen.cc"
-yy1243:
+#line 7016 "src/prebuilt/wast-lexer-gen.cc"
+yy1257:
yych = *++cursor_;
- if (yych == '/') goto yy1297;
+ if (yych == '/') goto yy1311;
goto yy87;
-yy1244:
+yy1258:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 415 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUF32); }
-#line 6968 "src/prebuilt/wast-lexer-gen.cc"
-yy1246:
+#line 7028 "src/prebuilt/wast-lexer-gen.cc"
+yy1260:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 417 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUF64); }
-#line 6976 "src/prebuilt/wast-lexer-gen.cc"
-yy1248:
+#line 7036 "src/prebuilt/wast-lexer-gen.cc"
+yy1262:
yych = *++cursor_;
- if (yych == '/') goto yy1298;
+ if (yych == '/') goto yy1312;
goto yy87;
-yy1249:
+yy1263:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy1250;
+ if (yych <= ')') goto yy1264;
if (yych <= '0') goto yy86;
- goto yy1299;
+ goto yy1313;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy1300;
+ if (yych == '3') goto yy1314;
if (yych <= '7') goto yy86;
- goto yy1301;
+ goto yy1315;
} else {
- if (yych == ';') goto yy1250;
+ if (yych == ';') goto yy1264;
if (yych <= '~') goto yy86;
}
}
-yy1250:
-#line 447 "src/wast-lexer.cc"
+yy1264:
+#line 450 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad); }
-#line 7005 "src/prebuilt/wast-lexer-gen.cc"
-yy1251:
+#line 7065 "src/prebuilt/wast-lexer-gen.cc"
+yy1265:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1302;
- case 'c': goto yy1303;
- case 'o': goto yy1304;
- case 's': goto yy1305;
- case 'x': goto yy1306;
+ case 'a': goto yy1316;
+ case 'c': goto yy1317;
+ case 'o': goto yy1318;
+ case 's': goto yy1319;
+ case 'x': goto yy1320;
default: goto yy87;
}
-yy1252:
+yy1266:
yych = *++cursor_;
- if (yych == '6') goto yy1307;
+ if (yych == '6') goto yy1321;
goto yy87;
-yy1253:
+yy1267:
yych = *++cursor_;
- if (yych == '2') goto yy1308;
+ if (yych == '2') goto yy1322;
goto yy87;
-yy1254:
+yy1268:
yych = *++cursor_;
- if (yych == '_') goto yy1309;
+ if (yych == '_') goto yy1323;
goto yy87;
-yy1255:
+yy1269:
yych = *++cursor_;
- if (yych == 'e') goto yy1310;
+ if (yych == 'e') goto yy1324;
goto yy87;
-yy1256:
+yy1270:
yych = *++cursor_;
- if (yych == '2') goto yy1312;
+ if (yych == '2') goto yy1326;
goto yy87;
-yy1257:
+yy1271:
yych = *++cursor_;
- if (yych == '2') goto yy1314;
+ if (yych == '2') goto yy1328;
goto yy87;
-yy1258:
+yy1272:
yych = *++cursor_;
- if (yych == '/') goto yy1316;
+ if (yych == '/') goto yy1330;
goto yy87;
-yy1259:
+yy1273:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 412 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSF32); }
-#line 7051 "src/prebuilt/wast-lexer-gen.cc"
-yy1261:
+#line 7111 "src/prebuilt/wast-lexer-gen.cc"
+yy1275:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 414 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSF64); }
-#line 7059 "src/prebuilt/wast-lexer-gen.cc"
-yy1263:
+#line 7119 "src/prebuilt/wast-lexer-gen.cc"
+yy1277:
yych = *++cursor_;
- if (yych == '/') goto yy1317;
+ if (yych == '/') goto yy1331;
goto yy87;
-yy1264:
+yy1278:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 416 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUF32); }
-#line 7071 "src/prebuilt/wast-lexer-gen.cc"
-yy1266:
+#line 7131 "src/prebuilt/wast-lexer-gen.cc"
+yy1280:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 418 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUF64); }
-#line 7079 "src/prebuilt/wast-lexer-gen.cc"
-yy1268:
+#line 7139 "src/prebuilt/wast-lexer-gen.cc"
+yy1282:
yych = *++cursor_;
- if (yych == '/') goto yy1318;
+ if (yych == '/') goto yy1332;
goto yy87;
-yy1269:
+yy1283:
yych = *++cursor_;
- if (yych == 'n') goto yy1319;
+ if (yych == 'n') goto yy1333;
goto yy87;
-yy1270:
+yy1284:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 531 "src/wast-lexer.cc"
+#line 534 "src/wast-lexer.cc"
{ RETURN(AssertMalformed); }
-#line 7095 "src/prebuilt/wast-lexer-gen.cc"
-yy1272:
+#line 7155 "src/prebuilt/wast-lexer-gen.cc"
+yy1286:
yych = *++cursor_;
- if (yych == 'i') goto yy1321;
+ if (yych == 'i') goto yy1335;
goto yy87;
-yy1273:
+yy1287:
yych = *++cursor_;
- if (yych == 'n') goto yy1322;
+ if (yych == 'n') goto yy1336;
goto yy87;
-yy1274:
+yy1288:
yych = *++cursor_;
- if (yych == 'e') goto yy1323;
+ if (yych == 'e') goto yy1337;
goto yy87;
-yy1275:
+yy1289:
yych = *++cursor_;
- if (yych == '2') goto yy1325;
+ if (yych == '2') goto yy1339;
goto yy87;
-yy1276:
+yy1290:
yych = *++cursor_;
- if (yych == '4') goto yy1327;
+ if (yych == '4') goto yy1341;
goto yy87;
-yy1277:
+yy1291:
yych = *++cursor_;
- if (yych == '2') goto yy1329;
+ if (yych == '2') goto yy1343;
goto yy87;
-yy1278:
+yy1292:
yych = *++cursor_;
- if (yych == '4') goto yy1331;
+ if (yych == '4') goto yy1345;
goto yy87;
-yy1279:
+yy1293:
yych = *++cursor_;
- if (yych == 'i') goto yy1333;
+ if (yych == 'i') goto yy1347;
goto yy87;
-yy1280:
+yy1294:
yych = *++cursor_;
- if (yych == '2') goto yy1334;
+ if (yych == '2') goto yy1348;
goto yy87;
-yy1281:
+yy1295:
yych = *++cursor_;
- if (yych == '4') goto yy1336;
+ if (yych == '4') goto yy1350;
goto yy87;
-yy1282:
+yy1296:
yych = *++cursor_;
- if (yych == '2') goto yy1338;
+ if (yych == '2') goto yy1352;
goto yy87;
-yy1283:
+yy1297:
yych = *++cursor_;
- if (yych == '4') goto yy1340;
+ if (yych == '4') goto yy1354;
goto yy87;
-yy1284:
+yy1298:
yych = *++cursor_;
- if (yych == 'i') goto yy1342;
+ if (yych == 'i') goto yy1356;
goto yy87;
-yy1285:
+yy1299:
yych = *++cursor_;
- if (yych == '6') goto yy1343;
+ if (yych == '6') goto yy1357;
goto yy87;
-yy1286:
+yy1300:
yych = *++cursor_;
- if (yych == '_') goto yy1344;
+ if (yych == '_') goto yy1358;
goto yy87;
-yy1287:
+yy1301:
yych = *++cursor_;
- if (yych == 'd') goto yy1345;
- if (yych == 'n') goto yy1346;
+ if (yych == 'd') goto yy1359;
+ if (yych == 'n') goto yy1360;
goto yy87;
-yy1288:
+yy1302:
yych = *++cursor_;
- if (yych == 'm') goto yy1347;
+ if (yych == 'm') goto yy1361;
goto yy87;
-yy1289:
+yy1303:
yych = *++cursor_;
- if (yych == 'r') goto yy1348;
+ if (yych == 'r') goto yy1362;
goto yy87;
-yy1290:
+yy1304:
yych = *++cursor_;
- if (yych == 'u') goto yy1350;
+ if (yych == 'u') goto yy1364;
goto yy87;
-yy1291:
+yy1305:
yych = *++cursor_;
- if (yych == 'c') goto yy1351;
- if (yych == 'o') goto yy1352;
+ if (yych == 'c') goto yy1365;
+ if (yych == 'o') goto yy1366;
goto yy87;
-yy1292:
+yy1306:
yych = *++cursor_;
- if (yych == '_') goto yy1353;
+ if (yych == '_') goto yy1367;
goto yy87;
-yy1293:
+yy1307:
yych = *++cursor_;
- if (yych == 'u') goto yy1354;
+ if (yych == 'u') goto yy1368;
goto yy87;
-yy1294:
+yy1308:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -7193,1508 +7253,1508 @@ yy1294:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy1355;
+ if (yych <= '1') goto yy1369;
if (yych <= '7') goto yy86;
- goto yy1356;
+ goto yy1370;
} else {
- if (yych == ';') goto yy1295;
+ if (yych == ';') goto yy1309;
if (yych <= '~') goto yy86;
}
}
-yy1295:
-#line 453 "src/wast-lexer.cc"
+yy1309:
+#line 456 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I32AtomicStore); }
-#line 7208 "src/prebuilt/wast-lexer-gen.cc"
-yy1296:
+#line 7268 "src/prebuilt/wast-lexer-gen.cc"
+yy1310:
yych = *++cursor_;
- if (yych == 'f') goto yy1358;
+ if (yych == 'f') goto yy1372;
goto yy87;
-yy1297:
+yy1311:
yych = *++cursor_;
- if (yych == 'f') goto yy1359;
+ if (yych == 'f') goto yy1373;
goto yy87;
-yy1298:
+yy1312:
yych = *++cursor_;
- if (yych == 'f') goto yy1360;
+ if (yych == 'f') goto yy1374;
goto yy87;
-yy1299:
+yy1313:
yych = *++cursor_;
- if (yych == '6') goto yy1361;
+ if (yych == '6') goto yy1375;
goto yy87;
-yy1300:
+yy1314:
yych = *++cursor_;
- if (yych == '2') goto yy1362;
+ if (yych == '2') goto yy1376;
goto yy87;
-yy1301:
+yy1315:
yych = *++cursor_;
- if (yych == '_') goto yy1363;
+ if (yych == '_') goto yy1377;
goto yy87;
-yy1302:
+yy1316:
yych = *++cursor_;
- if (yych == 'd') goto yy1364;
- if (yych == 'n') goto yy1365;
+ if (yych == 'd') goto yy1378;
+ if (yych == 'n') goto yy1379;
goto yy87;
-yy1303:
+yy1317:
yych = *++cursor_;
- if (yych == 'm') goto yy1366;
+ if (yych == 'm') goto yy1380;
goto yy87;
-yy1304:
+yy1318:
yych = *++cursor_;
- if (yych == 'r') goto yy1367;
+ if (yych == 'r') goto yy1381;
goto yy87;
-yy1305:
+yy1319:
yych = *++cursor_;
- if (yych == 'u') goto yy1369;
+ if (yych == 'u') goto yy1383;
goto yy87;
-yy1306:
+yy1320:
yych = *++cursor_;
- if (yych == 'c') goto yy1370;
- if (yych == 'o') goto yy1371;
+ if (yych == 'c') goto yy1384;
+ if (yych == 'o') goto yy1385;
goto yy87;
-yy1307:
+yy1321:
yych = *++cursor_;
- if (yych == '_') goto yy1372;
+ if (yych == '_') goto yy1386;
goto yy87;
-yy1308:
+yy1322:
yych = *++cursor_;
- if (yych == '_') goto yy1373;
+ if (yych == '_') goto yy1387;
goto yy87;
-yy1309:
+yy1323:
yych = *++cursor_;
- if (yych == 'u') goto yy1374;
+ if (yych == 'u') goto yy1388;
goto yy87;
-yy1310:
+yy1324:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy1311;
+ if (yych <= ')') goto yy1325;
if (yych <= '0') goto yy86;
- goto yy1375;
+ goto yy1389;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy1376;
+ if (yych == '3') goto yy1390;
if (yych <= '7') goto yy86;
- goto yy1377;
+ goto yy1391;
} else {
- if (yych == ';') goto yy1311;
+ if (yych == ';') goto yy1325;
if (yych <= '~') goto yy86;
}
}
-yy1311:
-#line 454 "src/wast-lexer.cc"
+yy1325:
+#line 457 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore); }
-#line 7291 "src/prebuilt/wast-lexer-gen.cc"
-yy1312:
+#line 7351 "src/prebuilt/wast-lexer-gen.cc"
+yy1326:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 408 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64ExtendSI32); }
-#line 7299 "src/prebuilt/wast-lexer-gen.cc"
-yy1314:
+#line 7359 "src/prebuilt/wast-lexer-gen.cc"
+yy1328:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 409 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64ExtendUI32); }
-#line 7307 "src/prebuilt/wast-lexer-gen.cc"
-yy1316:
+#line 7367 "src/prebuilt/wast-lexer-gen.cc"
+yy1330:
yych = *++cursor_;
- if (yych == 'f') goto yy1379;
+ if (yych == 'f') goto yy1393;
goto yy87;
-yy1317:
+yy1331:
yych = *++cursor_;
- if (yych == 'f') goto yy1380;
+ if (yych == 'f') goto yy1394;
goto yy87;
-yy1318:
+yy1332:
yych = *++cursor_;
- if (yych == 'f') goto yy1381;
+ if (yych == 'f') goto yy1395;
goto yy87;
-yy1319:
+yy1333:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 538 "src/wast-lexer.cc"
+#line 541 "src/wast-lexer.cc"
{ RETURN(AssertExhaustion); }
-#line 7327 "src/prebuilt/wast-lexer-gen.cc"
-yy1321:
+#line 7387 "src/prebuilt/wast-lexer-gen.cc"
+yy1335:
yych = *++cursor_;
- if (yych == 't') goto yy1382;
+ if (yych == 't') goto yy1396;
goto yy87;
-yy1322:
+yy1336:
yych = *++cursor_;
- if (yych == 'o') goto yy1383;
+ if (yych == 'o') goto yy1397;
goto yy87;
-yy1323:
+yy1337:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 533 "src/wast-lexer.cc"
+#line 536 "src/wast-lexer.cc"
{ RETURN(AssertUnlinkable); }
-#line 7343 "src/prebuilt/wast-lexer-gen.cc"
-yy1325:
+#line 7403 "src/prebuilt/wast-lexer-gen.cc"
+yy1339:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 427 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertSI32); }
-#line 7351 "src/prebuilt/wast-lexer-gen.cc"
-yy1327:
+#line 7411 "src/prebuilt/wast-lexer-gen.cc"
+yy1341:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 429 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertSI64); }
-#line 7359 "src/prebuilt/wast-lexer-gen.cc"
-yy1329:
+#line 7419 "src/prebuilt/wast-lexer-gen.cc"
+yy1343:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 431 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertUI32); }
-#line 7367 "src/prebuilt/wast-lexer-gen.cc"
-yy1331:
+#line 7427 "src/prebuilt/wast-lexer-gen.cc"
+yy1345:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 433 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertUI64); }
-#line 7375 "src/prebuilt/wast-lexer-gen.cc"
-yy1333:
+#line 7435 "src/prebuilt/wast-lexer-gen.cc"
+yy1347:
yych = *++cursor_;
- if (yych == '3') goto yy1384;
+ if (yych == '3') goto yy1398;
goto yy87;
-yy1334:
+yy1348:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 428 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertSI32); }
-#line 7387 "src/prebuilt/wast-lexer-gen.cc"
-yy1336:
+#line 7447 "src/prebuilt/wast-lexer-gen.cc"
+yy1350:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 430 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertSI64); }
-#line 7395 "src/prebuilt/wast-lexer-gen.cc"
-yy1338:
+#line 7455 "src/prebuilt/wast-lexer-gen.cc"
+yy1352:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 432 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertUI32); }
-#line 7403 "src/prebuilt/wast-lexer-gen.cc"
-yy1340:
+#line 7463 "src/prebuilt/wast-lexer-gen.cc"
+yy1354:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 434 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertUI64); }
-#line 7411 "src/prebuilt/wast-lexer-gen.cc"
-yy1342:
+#line 7471 "src/prebuilt/wast-lexer-gen.cc"
+yy1356:
yych = *++cursor_;
- if (yych == '6') goto yy1385;
+ if (yych == '6') goto yy1399;
goto yy87;
-yy1343:
+yy1357:
yych = *++cursor_;
- if (yych == '_') goto yy1386;
+ if (yych == '_') goto yy1400;
goto yy87;
-yy1344:
+yy1358:
yych = *++cursor_;
- if (yych == 'u') goto yy1387;
+ if (yych == 'u') goto yy1401;
goto yy87;
-yy1345:
+yy1359:
yych = *++cursor_;
- if (yych == 'd') goto yy1389;
+ if (yych == 'd') goto yy1403;
goto yy87;
-yy1346:
+yy1360:
yych = *++cursor_;
- if (yych == 'd') goto yy1391;
+ if (yych == 'd') goto yy1405;
goto yy87;
-yy1347:
+yy1361:
yych = *++cursor_;
- if (yych == 'p') goto yy1393;
+ if (yych == 'p') goto yy1407;
goto yy87;
-yy1348:
+yy1362:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 481 "src/wast-lexer.cc"
+#line 484 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwOr); }
-#line 7443 "src/prebuilt/wast-lexer-gen.cc"
-yy1350:
+#line 7503 "src/prebuilt/wast-lexer-gen.cc"
+yy1364:
yych = *++cursor_;
- if (yych == 'b') goto yy1394;
+ if (yych == 'b') goto yy1408;
goto yy87;
-yy1351:
+yy1365:
yych = *++cursor_;
- if (yych == 'h') goto yy1396;
+ if (yych == 'h') goto yy1410;
goto yy87;
-yy1352:
+yy1366:
yych = *++cursor_;
- if (yych == 'r') goto yy1397;
+ if (yych == 'r') goto yy1411;
goto yy87;
-yy1353:
+yy1367:
yych = *++cursor_;
- if (yych == 'u') goto yy1399;
+ if (yych == 'u') goto yy1413;
goto yy87;
-yy1354:
+yy1368:
yych = *++cursor_;
- if (yych == '.') goto yy1400;
+ if (yych == '.') goto yy1414;
goto yy87;
-yy1355:
+yy1369:
yych = *++cursor_;
- if (yych == '6') goto yy1401;
+ if (yych == '6') goto yy1415;
goto yy87;
-yy1356:
+yy1370:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 455 "src/wast-lexer.cc"
+#line 458 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I32AtomicStore8); }
-#line 7475 "src/prebuilt/wast-lexer-gen.cc"
-yy1358:
+#line 7535 "src/prebuilt/wast-lexer-gen.cc"
+yy1372:
yych = *++cursor_;
- if (yych == '3') goto yy1403;
+ if (yych == '3') goto yy1417;
goto yy87;
-yy1359:
+yy1373:
yych = *++cursor_;
- if (yych == '3') goto yy1404;
- if (yych == '6') goto yy1405;
+ if (yych == '3') goto yy1418;
+ if (yych == '6') goto yy1419;
goto yy87;
-yy1360:
+yy1374:
yych = *++cursor_;
- if (yych == '3') goto yy1406;
- if (yych == '6') goto yy1407;
+ if (yych == '3') goto yy1420;
+ if (yych == '6') goto yy1421;
goto yy87;
-yy1361:
+yy1375:
yych = *++cursor_;
- if (yych == '_') goto yy1408;
+ if (yych == '_') goto yy1422;
goto yy87;
-yy1362:
+yy1376:
yych = *++cursor_;
- if (yych == '_') goto yy1409;
+ if (yych == '_') goto yy1423;
goto yy87;
-yy1363:
+yy1377:
yych = *++cursor_;
- if (yych == 'u') goto yy1410;
+ if (yych == 'u') goto yy1424;
goto yy87;
-yy1364:
+yy1378:
yych = *++cursor_;
- if (yych == 'd') goto yy1412;
+ if (yych == 'd') goto yy1426;
goto yy87;
-yy1365:
+yy1379:
yych = *++cursor_;
- if (yych == 'd') goto yy1414;
+ if (yych == 'd') goto yy1428;
goto yy87;
-yy1366:
+yy1380:
yych = *++cursor_;
- if (yych == 'p') goto yy1416;
+ if (yych == 'p') goto yy1430;
goto yy87;
-yy1367:
+yy1381:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 482 "src/wast-lexer.cc"
+#line 485 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwOr); }
-#line 7521 "src/prebuilt/wast-lexer-gen.cc"
-yy1369:
+#line 7581 "src/prebuilt/wast-lexer-gen.cc"
+yy1383:
yych = *++cursor_;
- if (yych == 'b') goto yy1417;
+ if (yych == 'b') goto yy1431;
goto yy87;
-yy1370:
+yy1384:
yych = *++cursor_;
- if (yych == 'h') goto yy1419;
+ if (yych == 'h') goto yy1433;
goto yy87;
-yy1371:
+yy1385:
yych = *++cursor_;
- if (yych == 'r') goto yy1420;
+ if (yych == 'r') goto yy1434;
goto yy87;
-yy1372:
+yy1386:
yych = *++cursor_;
- if (yych == 'u') goto yy1422;
+ if (yych == 'u') goto yy1436;
goto yy87;
-yy1373:
+yy1387:
yych = *++cursor_;
- if (yych == 'u') goto yy1423;
+ if (yych == 'u') goto yy1437;
goto yy87;
-yy1374:
+yy1388:
yych = *++cursor_;
- if (yych == '.') goto yy1424;
+ if (yych == '.') goto yy1438;
goto yy87;
-yy1375:
+yy1389:
yych = *++cursor_;
- if (yych == '6') goto yy1425;
+ if (yych == '6') goto yy1439;
goto yy87;
-yy1376:
+yy1390:
yych = *++cursor_;
- if (yych == '2') goto yy1427;
+ if (yych == '2') goto yy1441;
goto yy87;
-yy1377:
+yy1391:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 457 "src/wast-lexer.cc"
+#line 460 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore8); }
-#line 7561 "src/prebuilt/wast-lexer-gen.cc"
-yy1379:
+#line 7621 "src/prebuilt/wast-lexer-gen.cc"
+yy1393:
yych = *++cursor_;
- if (yych == '6') goto yy1429;
+ if (yych == '6') goto yy1443;
goto yy87;
-yy1380:
+yy1394:
yych = *++cursor_;
- if (yych == '3') goto yy1430;
- if (yych == '6') goto yy1431;
+ if (yych == '3') goto yy1444;
+ if (yych == '6') goto yy1445;
goto yy87;
-yy1381:
+yy1395:
yych = *++cursor_;
- if (yych == '3') goto yy1432;
- if (yych == '6') goto yy1433;
+ if (yych == '3') goto yy1446;
+ if (yych == '6') goto yy1447;
goto yy87;
-yy1382:
+yy1396:
yych = *++cursor_;
- if (yych == 'h') goto yy1434;
+ if (yych == 'h') goto yy1448;
goto yy87;
-yy1383:
+yy1397:
yych = *++cursor_;
- if (yych == 'n') goto yy1435;
+ if (yych == 'n') goto yy1449;
goto yy87;
-yy1384:
+yy1398:
yych = *++cursor_;
- if (yych == '2') goto yy1436;
+ if (yych == '2') goto yy1450;
goto yy87;
-yy1385:
+yy1399:
yych = *++cursor_;
- if (yych == '4') goto yy1438;
+ if (yych == '4') goto yy1452;
goto yy87;
-yy1386:
+yy1400:
yych = *++cursor_;
- if (yych == 'u') goto yy1440;
+ if (yych == 'u') goto yy1454;
goto yy87;
-yy1387:
+yy1401:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 448 "src/wast-lexer.cc"
+#line 451 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I32AtomicLoad8U); }
-#line 7603 "src/prebuilt/wast-lexer-gen.cc"
-yy1389:
+#line 7663 "src/prebuilt/wast-lexer-gen.cc"
+yy1403:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 460 "src/wast-lexer.cc"
+#line 463 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwAdd); }
-#line 7611 "src/prebuilt/wast-lexer-gen.cc"
-yy1391:
+#line 7671 "src/prebuilt/wast-lexer-gen.cc"
+yy1405:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 474 "src/wast-lexer.cc"
+#line 477 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwAnd); }
-#line 7619 "src/prebuilt/wast-lexer-gen.cc"
-yy1393:
+#line 7679 "src/prebuilt/wast-lexer-gen.cc"
+yy1407:
yych = *++cursor_;
- if (yych == 'x') goto yy1442;
+ if (yych == 'x') goto yy1456;
goto yy87;
-yy1394:
+yy1408:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 467 "src/wast-lexer.cc"
+#line 470 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwSub); }
-#line 7631 "src/prebuilt/wast-lexer-gen.cc"
-yy1396:
+#line 7691 "src/prebuilt/wast-lexer-gen.cc"
+yy1410:
yych = *++cursor_;
- if (yych == 'g') goto yy1443;
+ if (yych == 'g') goto yy1457;
goto yy87;
-yy1397:
+yy1411:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 488 "src/wast-lexer.cc"
+#line 491 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwXor); }
-#line 7643 "src/prebuilt/wast-lexer-gen.cc"
-yy1399:
+#line 7703 "src/prebuilt/wast-lexer-gen.cc"
+yy1413:
yych = *++cursor_;
- if (yych == '.') goto yy1445;
+ if (yych == '.') goto yy1459;
goto yy87;
-yy1400:
+yy1414:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1446;
- case 'c': goto yy1447;
- case 'o': goto yy1448;
- case 's': goto yy1449;
- case 'x': goto yy1450;
+ case 'a': goto yy1460;
+ case 'c': goto yy1461;
+ case 'o': goto yy1462;
+ case 's': goto yy1463;
+ case 'x': goto yy1464;
default: goto yy87;
}
-yy1401:
+yy1415:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 456 "src/wast-lexer.cc"
+#line 459 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I32AtomicStore16); }
-#line 7665 "src/prebuilt/wast-lexer-gen.cc"
-yy1403:
+#line 7725 "src/prebuilt/wast-lexer-gen.cc"
+yy1417:
yych = *++cursor_;
- if (yych == '2') goto yy1451;
+ if (yych == '2') goto yy1465;
goto yy87;
-yy1404:
+yy1418:
yych = *++cursor_;
- if (yych == '2') goto yy1453;
+ if (yych == '2') goto yy1467;
goto yy87;
-yy1405:
+yy1419:
yych = *++cursor_;
- if (yych == '4') goto yy1455;
+ if (yych == '4') goto yy1469;
goto yy87;
-yy1406:
+yy1420:
yych = *++cursor_;
- if (yych == '2') goto yy1457;
+ if (yych == '2') goto yy1471;
goto yy87;
-yy1407:
+yy1421:
yych = *++cursor_;
- if (yych == '4') goto yy1459;
+ if (yych == '4') goto yy1473;
goto yy87;
-yy1408:
+yy1422:
yych = *++cursor_;
- if (yych == 'u') goto yy1461;
+ if (yych == 'u') goto yy1475;
goto yy87;
-yy1409:
+yy1423:
yych = *++cursor_;
- if (yych == 'u') goto yy1463;
+ if (yych == 'u') goto yy1477;
goto yy87;
-yy1410:
+yy1424:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 450 "src/wast-lexer.cc"
+#line 453 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad8U); }
-#line 7701 "src/prebuilt/wast-lexer-gen.cc"
-yy1412:
+#line 7761 "src/prebuilt/wast-lexer-gen.cc"
+yy1426:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 461 "src/wast-lexer.cc"
+#line 464 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwAdd); }
-#line 7709 "src/prebuilt/wast-lexer-gen.cc"
-yy1414:
+#line 7769 "src/prebuilt/wast-lexer-gen.cc"
+yy1428:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 475 "src/wast-lexer.cc"
+#line 478 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwAnd); }
-#line 7717 "src/prebuilt/wast-lexer-gen.cc"
-yy1416:
+#line 7777 "src/prebuilt/wast-lexer-gen.cc"
+yy1430:
yych = *++cursor_;
- if (yych == 'x') goto yy1465;
+ if (yych == 'x') goto yy1479;
goto yy87;
-yy1417:
+yy1431:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 468 "src/wast-lexer.cc"
+#line 471 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwSub); }
-#line 7729 "src/prebuilt/wast-lexer-gen.cc"
-yy1419:
+#line 7789 "src/prebuilt/wast-lexer-gen.cc"
+yy1433:
yych = *++cursor_;
- if (yych == 'g') goto yy1466;
+ if (yych == 'g') goto yy1480;
goto yy87;
-yy1420:
+yy1434:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 489 "src/wast-lexer.cc"
+#line 492 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwXor); }
-#line 7741 "src/prebuilt/wast-lexer-gen.cc"
-yy1422:
+#line 7801 "src/prebuilt/wast-lexer-gen.cc"
+yy1436:
yych = *++cursor_;
- if (yych == '.') goto yy1468;
+ if (yych == '.') goto yy1482;
goto yy87;
-yy1423:
+yy1437:
yych = *++cursor_;
- if (yych == '.') goto yy1469;
+ if (yych == '.') goto yy1483;
goto yy87;
-yy1424:
+yy1438:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1470;
- case 'c': goto yy1471;
- case 'o': goto yy1472;
- case 's': goto yy1473;
- case 'x': goto yy1474;
+ case 'a': goto yy1484;
+ case 'c': goto yy1485;
+ case 'o': goto yy1486;
+ case 's': goto yy1487;
+ case 'x': goto yy1488;
default: goto yy87;
}
-yy1425:
+yy1439:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 458 "src/wast-lexer.cc"
+#line 461 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore16); }
-#line 7767 "src/prebuilt/wast-lexer-gen.cc"
-yy1427:
+#line 7827 "src/prebuilt/wast-lexer-gen.cc"
+yy1441:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 459 "src/wast-lexer.cc"
+#line 462 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore32); }
-#line 7775 "src/prebuilt/wast-lexer-gen.cc"
-yy1429:
+#line 7835 "src/prebuilt/wast-lexer-gen.cc"
+yy1443:
yych = *++cursor_;
- if (yych == '4') goto yy1475;
+ if (yych == '4') goto yy1489;
goto yy87;
-yy1430:
+yy1444:
yych = *++cursor_;
- if (yych == '2') goto yy1477;
+ if (yych == '2') goto yy1491;
goto yy87;
-yy1431:
+yy1445:
yych = *++cursor_;
- if (yych == '4') goto yy1479;
+ if (yych == '4') goto yy1493;
goto yy87;
-yy1432:
+yy1446:
yych = *++cursor_;
- if (yych == '2') goto yy1481;
+ if (yych == '2') goto yy1495;
goto yy87;
-yy1433:
+yy1447:
yych = *++cursor_;
- if (yych == '4') goto yy1483;
+ if (yych == '4') goto yy1497;
goto yy87;
-yy1434:
+yy1448:
yych = *++cursor_;
- if (yych == 'm') goto yy1485;
+ if (yych == 'm') goto yy1499;
goto yy87;
-yy1435:
+yy1449:
yych = *++cursor_;
- if (yych == 'i') goto yy1486;
+ if (yych == 'i') goto yy1500;
goto yy87;
-yy1436:
+yy1450:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 437 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ReinterpretI32); }
-#line 7811 "src/prebuilt/wast-lexer-gen.cc"
-yy1438:
+#line 7871 "src/prebuilt/wast-lexer-gen.cc"
+yy1452:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 439 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ReinterpretI64); }
-#line 7819 "src/prebuilt/wast-lexer-gen.cc"
-yy1440:
+#line 7879 "src/prebuilt/wast-lexer-gen.cc"
+yy1454:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 449 "src/wast-lexer.cc"
+#line 452 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I32AtomicLoad16U); }
-#line 7827 "src/prebuilt/wast-lexer-gen.cc"
-yy1442:
+#line 7887 "src/prebuilt/wast-lexer-gen.cc"
+yy1456:
yych = *++cursor_;
- if (yych == 'c') goto yy1487;
+ if (yych == 'c') goto yy1501;
goto yy87;
-yy1443:
+yy1457:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 495 "src/wast-lexer.cc"
+#line 498 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwXchg); }
-#line 7839 "src/prebuilt/wast-lexer-gen.cc"
-yy1445:
+#line 7899 "src/prebuilt/wast-lexer-gen.cc"
+yy1459:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1488;
- case 'c': goto yy1489;
- case 'o': goto yy1490;
- case 's': goto yy1491;
- case 'x': goto yy1492;
+ case 'a': goto yy1502;
+ case 'c': goto yy1503;
+ case 'o': goto yy1504;
+ case 's': goto yy1505;
+ case 'x': goto yy1506;
default: goto yy87;
}
-yy1446:
+yy1460:
yych = *++cursor_;
- if (yych == 'd') goto yy1493;
- if (yych == 'n') goto yy1494;
+ if (yych == 'd') goto yy1507;
+ if (yych == 'n') goto yy1508;
goto yy87;
-yy1447:
+yy1461:
yych = *++cursor_;
- if (yych == 'm') goto yy1495;
+ if (yych == 'm') goto yy1509;
goto yy87;
-yy1448:
+yy1462:
yych = *++cursor_;
- if (yych == 'r') goto yy1496;
+ if (yych == 'r') goto yy1510;
goto yy87;
-yy1449:
+yy1463:
yych = *++cursor_;
- if (yych == 'u') goto yy1498;
+ if (yych == 'u') goto yy1512;
goto yy87;
-yy1450:
+yy1464:
yych = *++cursor_;
- if (yych == 'c') goto yy1499;
- if (yych == 'o') goto yy1500;
+ if (yych == 'c') goto yy1513;
+ if (yych == 'o') goto yy1514;
goto yy87;
-yy1451:
+yy1465:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 438 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32ReinterpretF32); }
-#line 7879 "src/prebuilt/wast-lexer-gen.cc"
-yy1453:
+#line 7939 "src/prebuilt/wast-lexer-gen.cc"
+yy1467:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 419 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSSatF32); }
-#line 7887 "src/prebuilt/wast-lexer-gen.cc"
-yy1455:
+#line 7947 "src/prebuilt/wast-lexer-gen.cc"
+yy1469:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 421 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSSatF64); }
-#line 7895 "src/prebuilt/wast-lexer-gen.cc"
-yy1457:
+#line 7955 "src/prebuilt/wast-lexer-gen.cc"
+yy1471:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 423 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUSatF32); }
-#line 7903 "src/prebuilt/wast-lexer-gen.cc"
-yy1459:
+#line 7963 "src/prebuilt/wast-lexer-gen.cc"
+yy1473:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 425 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUSatF64); }
-#line 7911 "src/prebuilt/wast-lexer-gen.cc"
-yy1461:
+#line 7971 "src/prebuilt/wast-lexer-gen.cc"
+yy1475:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 451 "src/wast-lexer.cc"
+#line 454 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad16U); }
-#line 7919 "src/prebuilt/wast-lexer-gen.cc"
-yy1463:
+#line 7979 "src/prebuilt/wast-lexer-gen.cc"
+yy1477:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 452 "src/wast-lexer.cc"
+#line 455 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad32U); }
-#line 7927 "src/prebuilt/wast-lexer-gen.cc"
-yy1465:
+#line 7987 "src/prebuilt/wast-lexer-gen.cc"
+yy1479:
yych = *++cursor_;
- if (yych == 'c') goto yy1501;
+ if (yych == 'c') goto yy1515;
goto yy87;
-yy1466:
+yy1480:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 496 "src/wast-lexer.cc"
+#line 499 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwXchg); }
-#line 7939 "src/prebuilt/wast-lexer-gen.cc"
-yy1468:
+#line 7999 "src/prebuilt/wast-lexer-gen.cc"
+yy1482:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1502;
- case 'c': goto yy1503;
- case 'o': goto yy1504;
- case 's': goto yy1505;
- case 'x': goto yy1506;
+ case 'a': goto yy1516;
+ case 'c': goto yy1517;
+ case 'o': goto yy1518;
+ case 's': goto yy1519;
+ case 'x': goto yy1520;
default: goto yy87;
}
-yy1469:
+yy1483:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1507;
- case 'c': goto yy1508;
- case 'o': goto yy1509;
- case 's': goto yy1510;
- case 'x': goto yy1511;
+ case 'a': goto yy1521;
+ case 'c': goto yy1522;
+ case 'o': goto yy1523;
+ case 's': goto yy1524;
+ case 'x': goto yy1525;
default: goto yy87;
}
-yy1470:
+yy1484:
yych = *++cursor_;
- if (yych == 'd') goto yy1512;
- if (yych == 'n') goto yy1513;
+ if (yych == 'd') goto yy1526;
+ if (yych == 'n') goto yy1527;
goto yy87;
-yy1471:
+yy1485:
yych = *++cursor_;
- if (yych == 'm') goto yy1514;
+ if (yych == 'm') goto yy1528;
goto yy87;
-yy1472:
+yy1486:
yych = *++cursor_;
- if (yych == 'r') goto yy1515;
+ if (yych == 'r') goto yy1529;
goto yy87;
-yy1473:
+yy1487:
yych = *++cursor_;
- if (yych == 'u') goto yy1517;
+ if (yych == 'u') goto yy1531;
goto yy87;
-yy1474:
+yy1488:
yych = *++cursor_;
- if (yych == 'c') goto yy1518;
- if (yych == 'o') goto yy1519;
+ if (yych == 'c') goto yy1532;
+ if (yych == 'o') goto yy1533;
goto yy87;
-yy1475:
+yy1489:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 440 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64ReinterpretF64); }
-#line 7989 "src/prebuilt/wast-lexer-gen.cc"
-yy1477:
+#line 8049 "src/prebuilt/wast-lexer-gen.cc"
+yy1491:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 420 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSSatF32); }
-#line 7997 "src/prebuilt/wast-lexer-gen.cc"
-yy1479:
+#line 8057 "src/prebuilt/wast-lexer-gen.cc"
+yy1493:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 422 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSSatF64); }
-#line 8005 "src/prebuilt/wast-lexer-gen.cc"
-yy1481:
+#line 8065 "src/prebuilt/wast-lexer-gen.cc"
+yy1495:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 424 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUSatF32); }
-#line 8013 "src/prebuilt/wast-lexer-gen.cc"
-yy1483:
+#line 8073 "src/prebuilt/wast-lexer-gen.cc"
+yy1497:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 426 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUSatF64); }
-#line 8021 "src/prebuilt/wast-lexer-gen.cc"
-yy1485:
+#line 8081 "src/prebuilt/wast-lexer-gen.cc"
+yy1499:
yych = *++cursor_;
- if (yych == 'e') goto yy1520;
+ if (yych == 'e') goto yy1534;
goto yy87;
-yy1486:
+yy1500:
yych = *++cursor_;
- if (yych == 'c') goto yy1521;
+ if (yych == 'c') goto yy1535;
goto yy87;
-yy1487:
+yy1501:
yych = *++cursor_;
- if (yych == 'h') goto yy1522;
+ if (yych == 'h') goto yy1536;
goto yy87;
-yy1488:
+yy1502:
yych = *++cursor_;
- if (yych == 'd') goto yy1523;
- if (yych == 'n') goto yy1524;
+ if (yych == 'd') goto yy1537;
+ if (yych == 'n') goto yy1538;
goto yy87;
-yy1489:
+yy1503:
yych = *++cursor_;
- if (yych == 'm') goto yy1525;
+ if (yych == 'm') goto yy1539;
goto yy87;
-yy1490:
+yy1504:
yych = *++cursor_;
- if (yych == 'r') goto yy1526;
+ if (yych == 'r') goto yy1540;
goto yy87;
-yy1491:
+yy1505:
yych = *++cursor_;
- if (yych == 'u') goto yy1528;
+ if (yych == 'u') goto yy1542;
goto yy87;
-yy1492:
+yy1506:
yych = *++cursor_;
- if (yych == 'c') goto yy1529;
- if (yych == 'o') goto yy1530;
+ if (yych == 'c') goto yy1543;
+ if (yych == 'o') goto yy1544;
goto yy87;
-yy1493:
+yy1507:
yych = *++cursor_;
- if (yych == 'd') goto yy1531;
+ if (yych == 'd') goto yy1545;
goto yy87;
-yy1494:
+yy1508:
yych = *++cursor_;
- if (yych == 'd') goto yy1533;
+ if (yych == 'd') goto yy1547;
goto yy87;
-yy1495:
+yy1509:
yych = *++cursor_;
- if (yych == 'p') goto yy1535;
+ if (yych == 'p') goto yy1549;
goto yy87;
-yy1496:
+yy1510:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 483 "src/wast-lexer.cc"
+#line 486 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UOr); }
-#line 8075 "src/prebuilt/wast-lexer-gen.cc"
-yy1498:
+#line 8135 "src/prebuilt/wast-lexer-gen.cc"
+yy1512:
yych = *++cursor_;
- if (yych == 'b') goto yy1536;
+ if (yych == 'b') goto yy1550;
goto yy87;
-yy1499:
+yy1513:
yych = *++cursor_;
- if (yych == 'h') goto yy1538;
+ if (yych == 'h') goto yy1552;
goto yy87;
-yy1500:
+yy1514:
yych = *++cursor_;
- if (yych == 'r') goto yy1539;
+ if (yych == 'r') goto yy1553;
goto yy87;
-yy1501:
+yy1515:
yych = *++cursor_;
- if (yych == 'h') goto yy1541;
+ if (yych == 'h') goto yy1555;
goto yy87;
-yy1502:
+yy1516:
yych = *++cursor_;
- if (yych == 'd') goto yy1542;
- if (yych == 'n') goto yy1543;
+ if (yych == 'd') goto yy1556;
+ if (yych == 'n') goto yy1557;
goto yy87;
-yy1503:
+yy1517:
yych = *++cursor_;
- if (yych == 'm') goto yy1544;
+ if (yych == 'm') goto yy1558;
goto yy87;
-yy1504:
+yy1518:
yych = *++cursor_;
- if (yych == 'r') goto yy1545;
+ if (yych == 'r') goto yy1559;
goto yy87;
-yy1505:
+yy1519:
yych = *++cursor_;
- if (yych == 'u') goto yy1547;
+ if (yych == 'u') goto yy1561;
goto yy87;
-yy1506:
+yy1520:
yych = *++cursor_;
- if (yych == 'c') goto yy1548;
- if (yych == 'o') goto yy1549;
+ if (yych == 'c') goto yy1562;
+ if (yych == 'o') goto yy1563;
goto yy87;
-yy1507:
+yy1521:
yych = *++cursor_;
- if (yych == 'd') goto yy1550;
- if (yych == 'n') goto yy1551;
+ if (yych == 'd') goto yy1564;
+ if (yych == 'n') goto yy1565;
goto yy87;
-yy1508:
+yy1522:
yych = *++cursor_;
- if (yych == 'm') goto yy1552;
+ if (yych == 'm') goto yy1566;
goto yy87;
-yy1509:
+yy1523:
yych = *++cursor_;
- if (yych == 'r') goto yy1553;
+ if (yych == 'r') goto yy1567;
goto yy87;
-yy1510:
+yy1524:
yych = *++cursor_;
- if (yych == 'u') goto yy1555;
+ if (yych == 'u') goto yy1569;
goto yy87;
-yy1511:
+yy1525:
yych = *++cursor_;
- if (yych == 'c') goto yy1556;
- if (yych == 'o') goto yy1557;
+ if (yych == 'c') goto yy1570;
+ if (yych == 'o') goto yy1571;
goto yy87;
-yy1512:
+yy1526:
yych = *++cursor_;
- if (yych == 'd') goto yy1558;
+ if (yych == 'd') goto yy1572;
goto yy87;
-yy1513:
+yy1527:
yych = *++cursor_;
- if (yych == 'd') goto yy1560;
+ if (yych == 'd') goto yy1574;
goto yy87;
-yy1514:
+yy1528:
yych = *++cursor_;
- if (yych == 'p') goto yy1562;
+ if (yych == 'p') goto yy1576;
goto yy87;
-yy1515:
+yy1529:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 485 "src/wast-lexer.cc"
+#line 488 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UOr); }
-#line 8155 "src/prebuilt/wast-lexer-gen.cc"
-yy1517:
+#line 8215 "src/prebuilt/wast-lexer-gen.cc"
+yy1531:
yych = *++cursor_;
- if (yych == 'b') goto yy1563;
+ if (yych == 'b') goto yy1577;
goto yy87;
-yy1518:
+yy1532:
yych = *++cursor_;
- if (yych == 'h') goto yy1565;
+ if (yych == 'h') goto yy1579;
goto yy87;
-yy1519:
+yy1533:
yych = *++cursor_;
- if (yych == 'r') goto yy1566;
+ if (yych == 'r') goto yy1580;
goto yy87;
-yy1520:
+yy1534:
yych = *++cursor_;
- if (yych == 't') goto yy1568;
+ if (yych == 't') goto yy1582;
goto yy87;
-yy1521:
+yy1535:
yych = *++cursor_;
- if (yych == 'a') goto yy1569;
+ if (yych == 'a') goto yy1583;
goto yy87;
-yy1522:
+yy1536:
yych = *++cursor_;
- if (yych == 'g') goto yy1570;
+ if (yych == 'g') goto yy1584;
goto yy87;
-yy1523:
+yy1537:
yych = *++cursor_;
- if (yych == 'd') goto yy1572;
+ if (yych == 'd') goto yy1586;
goto yy87;
-yy1524:
+yy1538:
yych = *++cursor_;
- if (yych == 'd') goto yy1574;
+ if (yych == 'd') goto yy1588;
goto yy87;
-yy1525:
+yy1539:
yych = *++cursor_;
- if (yych == 'p') goto yy1576;
+ if (yych == 'p') goto yy1590;
goto yy87;
-yy1526:
+yy1540:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 484 "src/wast-lexer.cc"
+#line 487 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UOr); }
-#line 8199 "src/prebuilt/wast-lexer-gen.cc"
-yy1528:
+#line 8259 "src/prebuilt/wast-lexer-gen.cc"
+yy1542:
yych = *++cursor_;
- if (yych == 'b') goto yy1577;
+ if (yych == 'b') goto yy1591;
goto yy87;
-yy1529:
+yy1543:
yych = *++cursor_;
- if (yych == 'h') goto yy1579;
+ if (yych == 'h') goto yy1593;
goto yy87;
-yy1530:
+yy1544:
yych = *++cursor_;
- if (yych == 'r') goto yy1580;
+ if (yych == 'r') goto yy1594;
goto yy87;
-yy1531:
+yy1545:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 462 "src/wast-lexer.cc"
+#line 465 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UAdd); }
-#line 8219 "src/prebuilt/wast-lexer-gen.cc"
-yy1533:
+#line 8279 "src/prebuilt/wast-lexer-gen.cc"
+yy1547:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 476 "src/wast-lexer.cc"
+#line 479 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UAnd); }
-#line 8227 "src/prebuilt/wast-lexer-gen.cc"
-yy1535:
+#line 8287 "src/prebuilt/wast-lexer-gen.cc"
+yy1549:
yych = *++cursor_;
- if (yych == 'x') goto yy1582;
+ if (yych == 'x') goto yy1596;
goto yy87;
-yy1536:
+yy1550:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 469 "src/wast-lexer.cc"
+#line 472 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8USub); }
-#line 8239 "src/prebuilt/wast-lexer-gen.cc"
-yy1538:
+#line 8299 "src/prebuilt/wast-lexer-gen.cc"
+yy1552:
yych = *++cursor_;
- if (yych == 'g') goto yy1583;
+ if (yych == 'g') goto yy1597;
goto yy87;
-yy1539:
+yy1553:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 490 "src/wast-lexer.cc"
+#line 493 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UXor); }
-#line 8251 "src/prebuilt/wast-lexer-gen.cc"
-yy1541:
+#line 8311 "src/prebuilt/wast-lexer-gen.cc"
+yy1555:
yych = *++cursor_;
- if (yych == 'g') goto yy1585;
+ if (yych == 'g') goto yy1599;
goto yy87;
-yy1542:
+yy1556:
yych = *++cursor_;
- if (yych == 'd') goto yy1587;
+ if (yych == 'd') goto yy1601;
goto yy87;
-yy1543:
+yy1557:
yych = *++cursor_;
- if (yych == 'd') goto yy1589;
+ if (yych == 'd') goto yy1603;
goto yy87;
-yy1544:
+yy1558:
yych = *++cursor_;
- if (yych == 'p') goto yy1591;
+ if (yych == 'p') goto yy1605;
goto yy87;
-yy1545:
+yy1559:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 486 "src/wast-lexer.cc"
+#line 489 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UOr); }
-#line 8275 "src/prebuilt/wast-lexer-gen.cc"
-yy1547:
+#line 8335 "src/prebuilt/wast-lexer-gen.cc"
+yy1561:
yych = *++cursor_;
- if (yych == 'b') goto yy1592;
+ if (yych == 'b') goto yy1606;
goto yy87;
-yy1548:
+yy1562:
yych = *++cursor_;
- if (yych == 'h') goto yy1594;
+ if (yych == 'h') goto yy1608;
goto yy87;
-yy1549:
+yy1563:
yych = *++cursor_;
- if (yych == 'r') goto yy1595;
+ if (yych == 'r') goto yy1609;
goto yy87;
-yy1550:
+yy1564:
yych = *++cursor_;
- if (yych == 'd') goto yy1597;
+ if (yych == 'd') goto yy1611;
goto yy87;
-yy1551:
+yy1565:
yych = *++cursor_;
- if (yych == 'd') goto yy1599;
+ if (yych == 'd') goto yy1613;
goto yy87;
-yy1552:
+yy1566:
yych = *++cursor_;
- if (yych == 'p') goto yy1601;
+ if (yych == 'p') goto yy1615;
goto yy87;
-yy1553:
+yy1567:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 487 "src/wast-lexer.cc"
+#line 490 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UOr); }
-#line 8307 "src/prebuilt/wast-lexer-gen.cc"
-yy1555:
+#line 8367 "src/prebuilt/wast-lexer-gen.cc"
+yy1569:
yych = *++cursor_;
- if (yych == 'b') goto yy1602;
+ if (yych == 'b') goto yy1616;
goto yy87;
-yy1556:
+yy1570:
yych = *++cursor_;
- if (yych == 'h') goto yy1604;
+ if (yych == 'h') goto yy1618;
goto yy87;
-yy1557:
+yy1571:
yych = *++cursor_;
- if (yych == 'r') goto yy1605;
+ if (yych == 'r') goto yy1619;
goto yy87;
-yy1558:
+yy1572:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 464 "src/wast-lexer.cc"
+#line 467 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UAdd); }
-#line 8327 "src/prebuilt/wast-lexer-gen.cc"
-yy1560:
+#line 8387 "src/prebuilt/wast-lexer-gen.cc"
+yy1574:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 478 "src/wast-lexer.cc"
+#line 481 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UAnd); }
-#line 8335 "src/prebuilt/wast-lexer-gen.cc"
-yy1562:
+#line 8395 "src/prebuilt/wast-lexer-gen.cc"
+yy1576:
yych = *++cursor_;
- if (yych == 'x') goto yy1607;
+ if (yych == 'x') goto yy1621;
goto yy87;
-yy1563:
+yy1577:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 471 "src/wast-lexer.cc"
+#line 474 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8USub); }
-#line 8347 "src/prebuilt/wast-lexer-gen.cc"
-yy1565:
+#line 8407 "src/prebuilt/wast-lexer-gen.cc"
+yy1579:
yych = *++cursor_;
- if (yych == 'g') goto yy1608;
+ if (yych == 'g') goto yy1622;
goto yy87;
-yy1566:
+yy1580:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 492 "src/wast-lexer.cc"
+#line 495 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UXor); }
-#line 8359 "src/prebuilt/wast-lexer-gen.cc"
-yy1568:
+#line 8419 "src/prebuilt/wast-lexer-gen.cc"
+yy1582:
yych = *++cursor_;
- if (yych == 'i') goto yy1610;
+ if (yych == 'i') goto yy1624;
goto yy87;
-yy1569:
+yy1583:
yych = *++cursor_;
- if (yych == 'l') goto yy1611;
+ if (yych == 'l') goto yy1625;
goto yy87;
-yy1570:
+yy1584:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 502 "src/wast-lexer.cc"
+#line 505 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I32AtomicRmwCmpxchg); }
-#line 8375 "src/prebuilt/wast-lexer-gen.cc"
-yy1572:
+#line 8435 "src/prebuilt/wast-lexer-gen.cc"
+yy1586:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 463 "src/wast-lexer.cc"
+#line 466 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UAdd); }
-#line 8383 "src/prebuilt/wast-lexer-gen.cc"
-yy1574:
+#line 8443 "src/prebuilt/wast-lexer-gen.cc"
+yy1588:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 477 "src/wast-lexer.cc"
+#line 480 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UAnd); }
-#line 8391 "src/prebuilt/wast-lexer-gen.cc"
-yy1576:
+#line 8451 "src/prebuilt/wast-lexer-gen.cc"
+yy1590:
yych = *++cursor_;
- if (yych == 'x') goto yy1612;
+ if (yych == 'x') goto yy1626;
goto yy87;
-yy1577:
+yy1591:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 470 "src/wast-lexer.cc"
+#line 473 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16USub); }
-#line 8403 "src/prebuilt/wast-lexer-gen.cc"
-yy1579:
+#line 8463 "src/prebuilt/wast-lexer-gen.cc"
+yy1593:
yych = *++cursor_;
- if (yych == 'g') goto yy1613;
+ if (yych == 'g') goto yy1627;
goto yy87;
-yy1580:
+yy1594:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 491 "src/wast-lexer.cc"
+#line 494 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UXor); }
-#line 8415 "src/prebuilt/wast-lexer-gen.cc"
-yy1582:
+#line 8475 "src/prebuilt/wast-lexer-gen.cc"
+yy1596:
yych = *++cursor_;
- if (yych == 'c') goto yy1615;
+ if (yych == 'c') goto yy1629;
goto yy87;
-yy1583:
+yy1597:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 497 "src/wast-lexer.cc"
+#line 500 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UXchg); }
-#line 8427 "src/prebuilt/wast-lexer-gen.cc"
-yy1585:
+#line 8487 "src/prebuilt/wast-lexer-gen.cc"
+yy1599:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 503 "src/wast-lexer.cc"
+#line 506 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmwCmpxchg); }
-#line 8435 "src/prebuilt/wast-lexer-gen.cc"
-yy1587:
+#line 8495 "src/prebuilt/wast-lexer-gen.cc"
+yy1601:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 465 "src/wast-lexer.cc"
+#line 468 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UAdd); }
-#line 8443 "src/prebuilt/wast-lexer-gen.cc"
-yy1589:
+#line 8503 "src/prebuilt/wast-lexer-gen.cc"
+yy1603:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 479 "src/wast-lexer.cc"
+#line 482 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UAnd); }
-#line 8451 "src/prebuilt/wast-lexer-gen.cc"
-yy1591:
+#line 8511 "src/prebuilt/wast-lexer-gen.cc"
+yy1605:
yych = *++cursor_;
- if (yych == 'x') goto yy1616;
+ if (yych == 'x') goto yy1630;
goto yy87;
-yy1592:
+yy1606:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 472 "src/wast-lexer.cc"
+#line 475 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16USub); }
-#line 8463 "src/prebuilt/wast-lexer-gen.cc"
-yy1594:
+#line 8523 "src/prebuilt/wast-lexer-gen.cc"
+yy1608:
yych = *++cursor_;
- if (yych == 'g') goto yy1617;
+ if (yych == 'g') goto yy1631;
goto yy87;
-yy1595:
+yy1609:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 493 "src/wast-lexer.cc"
+#line 496 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UXor); }
-#line 8475 "src/prebuilt/wast-lexer-gen.cc"
-yy1597:
+#line 8535 "src/prebuilt/wast-lexer-gen.cc"
+yy1611:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 466 "src/wast-lexer.cc"
+#line 469 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UAdd); }
-#line 8483 "src/prebuilt/wast-lexer-gen.cc"
-yy1599:
+#line 8543 "src/prebuilt/wast-lexer-gen.cc"
+yy1613:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 480 "src/wast-lexer.cc"
+#line 483 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UAnd); }
-#line 8491 "src/prebuilt/wast-lexer-gen.cc"
-yy1601:
+#line 8551 "src/prebuilt/wast-lexer-gen.cc"
+yy1615:
yych = *++cursor_;
- if (yych == 'x') goto yy1619;
+ if (yych == 'x') goto yy1633;
goto yy87;
-yy1602:
+yy1616:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 473 "src/wast-lexer.cc"
+#line 476 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32USub); }
-#line 8503 "src/prebuilt/wast-lexer-gen.cc"
-yy1604:
+#line 8563 "src/prebuilt/wast-lexer-gen.cc"
+yy1618:
yych = *++cursor_;
- if (yych == 'g') goto yy1620;
+ if (yych == 'g') goto yy1634;
goto yy87;
-yy1605:
+yy1619:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 494 "src/wast-lexer.cc"
+#line 497 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UXor); }
-#line 8515 "src/prebuilt/wast-lexer-gen.cc"
-yy1607:
+#line 8575 "src/prebuilt/wast-lexer-gen.cc"
+yy1621:
yych = *++cursor_;
- if (yych == 'c') goto yy1622;
+ if (yych == 'c') goto yy1636;
goto yy87;
-yy1608:
+yy1622:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 499 "src/wast-lexer.cc"
+#line 502 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UXchg); }
-#line 8527 "src/prebuilt/wast-lexer-gen.cc"
-yy1610:
+#line 8587 "src/prebuilt/wast-lexer-gen.cc"
+yy1624:
yych = *++cursor_;
- if (yych == 'c') goto yy1623;
+ if (yych == 'c') goto yy1637;
goto yy87;
-yy1611:
+yy1625:
yych = *++cursor_;
- if (yych == '_') goto yy1624;
+ if (yych == '_') goto yy1638;
goto yy87;
-yy1612:
+yy1626:
yych = *++cursor_;
- if (yych == 'c') goto yy1625;
+ if (yych == 'c') goto yy1639;
goto yy87;
-yy1613:
+yy1627:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 498 "src/wast-lexer.cc"
+#line 501 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UXchg); }
-#line 8547 "src/prebuilt/wast-lexer-gen.cc"
-yy1615:
+#line 8607 "src/prebuilt/wast-lexer-gen.cc"
+yy1629:
yych = *++cursor_;
- if (yych == 'h') goto yy1626;
+ if (yych == 'h') goto yy1640;
goto yy87;
-yy1616:
+yy1630:
yych = *++cursor_;
- if (yych == 'c') goto yy1627;
+ if (yych == 'c') goto yy1641;
goto yy87;
-yy1617:
+yy1631:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 500 "src/wast-lexer.cc"
+#line 503 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UXchg); }
-#line 8563 "src/prebuilt/wast-lexer-gen.cc"
-yy1619:
+#line 8623 "src/prebuilt/wast-lexer-gen.cc"
+yy1633:
yych = *++cursor_;
- if (yych == 'c') goto yy1628;
+ if (yych == 'c') goto yy1642;
goto yy87;
-yy1620:
+yy1634:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 501 "src/wast-lexer.cc"
+#line 504 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UXchg); }
-#line 8575 "src/prebuilt/wast-lexer-gen.cc"
-yy1622:
+#line 8635 "src/prebuilt/wast-lexer-gen.cc"
+yy1636:
yych = *++cursor_;
- if (yych == 'h') goto yy1629;
+ if (yych == 'h') goto yy1643;
goto yy87;
-yy1623:
+yy1637:
yych = *++cursor_;
- if (yych == '_') goto yy1630;
+ if (yych == '_') goto yy1644;
goto yy87;
-yy1624:
+yy1638:
yych = *++cursor_;
- if (yych == 'n') goto yy1631;
+ if (yych == 'n') goto yy1645;
goto yy87;
-yy1625:
+yy1639:
yych = *++cursor_;
- if (yych == 'h') goto yy1632;
+ if (yych == 'h') goto yy1646;
goto yy87;
-yy1626:
+yy1640:
yych = *++cursor_;
- if (yych == 'g') goto yy1633;
+ if (yych == 'g') goto yy1647;
goto yy87;
-yy1627:
+yy1641:
yych = *++cursor_;
- if (yych == 'h') goto yy1635;
+ if (yych == 'h') goto yy1649;
goto yy87;
-yy1628:
+yy1642:
yych = *++cursor_;
- if (yych == 'h') goto yy1636;
+ if (yych == 'h') goto yy1650;
goto yy87;
-yy1629:
+yy1643:
yych = *++cursor_;
- if (yych == 'g') goto yy1637;
+ if (yych == 'g') goto yy1651;
goto yy87;
-yy1630:
+yy1644:
yych = *++cursor_;
- if (yych == 'n') goto yy1639;
+ if (yych == 'n') goto yy1653;
goto yy87;
-yy1631:
+yy1645:
yych = *++cursor_;
- if (yych == 'a') goto yy1640;
+ if (yych == 'a') goto yy1654;
goto yy87;
-yy1632:
+yy1646:
yych = *++cursor_;
- if (yych == 'g') goto yy1641;
+ if (yych == 'g') goto yy1655;
goto yy87;
-yy1633:
+yy1647:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 504 "src/wast-lexer.cc"
+#line 507 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I32AtomicRmw8UCmpxchg); }
-#line 8627 "src/prebuilt/wast-lexer-gen.cc"
-yy1635:
+#line 8687 "src/prebuilt/wast-lexer-gen.cc"
+yy1649:
yych = *++cursor_;
- if (yych == 'g') goto yy1643;
+ if (yych == 'g') goto yy1657;
goto yy87;
-yy1636:
+yy1650:
yych = *++cursor_;
- if (yych == 'g') goto yy1645;
+ if (yych == 'g') goto yy1659;
goto yy87;
-yy1637:
+yy1651:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 506 "src/wast-lexer.cc"
+#line 509 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw8UCmpxchg); }
-#line 8643 "src/prebuilt/wast-lexer-gen.cc"
-yy1639:
+#line 8703 "src/prebuilt/wast-lexer-gen.cc"
+yy1653:
yych = *++cursor_;
- if (yych == 'a') goto yy1647;
+ if (yych == 'a') goto yy1661;
goto yy87;
-yy1640:
+yy1654:
yych = *++cursor_;
- if (yych == 'n') goto yy1648;
+ if (yych == 'n') goto yy1662;
goto yy87;
-yy1641:
+yy1655:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 505 "src/wast-lexer.cc"
+#line 508 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I32AtomicRmw16UCmpxchg); }
-#line 8659 "src/prebuilt/wast-lexer-gen.cc"
-yy1643:
+#line 8719 "src/prebuilt/wast-lexer-gen.cc"
+yy1657:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 507 "src/wast-lexer.cc"
+#line 510 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw16UCmpxchg); }
-#line 8667 "src/prebuilt/wast-lexer-gen.cc"
-yy1645:
+#line 8727 "src/prebuilt/wast-lexer-gen.cc"
+yy1659:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 508 "src/wast-lexer.cc"
+#line 511 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw32UCmpxchg); }
-#line 8675 "src/prebuilt/wast-lexer-gen.cc"
-yy1647:
+#line 8735 "src/prebuilt/wast-lexer-gen.cc"
+yy1661:
yych = *++cursor_;
- if (yych == 'n') goto yy1650;
+ if (yych == 'n') goto yy1664;
goto yy87;
-yy1648:
+yy1662:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 535 "src/wast-lexer.cc"
+#line 538 "src/wast-lexer.cc"
{ RETURN(AssertReturnCanonicalNan); }
-#line 8687 "src/prebuilt/wast-lexer-gen.cc"
-yy1650:
+#line 8747 "src/prebuilt/wast-lexer-gen.cc"
+yy1664:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 536 "src/wast-lexer.cc"
+#line 539 "src/wast-lexer.cc"
{ RETURN(AssertReturnArithmeticNan); }
-#line 8695 "src/prebuilt/wast-lexer-gen.cc"
+#line 8755 "src/prebuilt/wast-lexer-gen.cc"
}
}
-#line 563 "src/wast-lexer.cc"
+#line 566 "src/wast-lexer.cc"
}
}
diff --git a/src/token.cc b/src/token.cc
index 6c629e83..2ffc24cc 100644
--- a/src/token.cc
+++ b/src/token.cc
@@ -103,6 +103,8 @@ const char* GetTokenTypeName(TokenType token_type) {
"try",
"UNARY",
"unreachable",
+ "WAIT",
+ "WAKE",
// String.
"align=",
diff --git a/src/token.h b/src/token.h
index 89f46204..c1525c8b 100644
--- a/src/token.h
+++ b/src/token.h
@@ -120,8 +120,10 @@ enum class TokenType {
Try,
Unary,
Unreachable,
+ Wait,
+ Wake,
First_Opcode = AtomicLoad,
- Last_Opcode = Unreachable,
+ Last_Opcode = Wake,
// Tokens with string data.
AlignEqNat,
diff --git a/src/type-checker.cc b/src/type-checker.cc
index a54f53ba..87650cf6 100644
--- a/src/type-checker.cc
+++ b/src/type-checker.cc
@@ -567,6 +567,14 @@ Result TypeChecker::OnUnreachable() {
return SetUnreachable();
}
+Result TypeChecker::OnWait(Opcode opcode) {
+ return CheckOpcode3(opcode);
+}
+
+Result TypeChecker::OnWake(Opcode opcode) {
+ return CheckOpcode2(opcode);
+}
+
Result TypeChecker::EndFunction() {
Result result = Result::Ok;
Label* label;
diff --git a/src/type-checker.h b/src/type-checker.h
index 6f1257ce..1176f95d 100644
--- a/src/type-checker.h
+++ b/src/type-checker.h
@@ -91,6 +91,8 @@ class TypeChecker {
Result OnTryBlock(const TypeVector* sig);
Result OnUnary(Opcode);
Result OnUnreachable();
+ Result OnWait(Opcode);
+ Result OnWake(Opcode);
Result EndFunction();
private:
diff --git a/src/validator.cc b/src/validator.cc
index 7f25a6e1..9ef679ec 100644
--- a/src/validator.cc
+++ b/src/validator.cc
@@ -112,6 +112,8 @@ class Validator {
void CheckBlockSig(const Location* loc,
Opcode opcode,
const BlockSignature* sig);
+ template <typename T>
+ void CheckAtomicExpr(const T* expr, Result (TypeChecker::*func)(Opcode));
void CheckExpr(const Expr* expr);
void CheckFuncSignature(const Location* loc, const Func* func);
void CheckFunc(const Location* loc, const Func* func);
@@ -422,45 +424,35 @@ void Validator::CheckBlockSig(const Location* loc,
}
}
+template <typename T>
+void Validator::CheckAtomicExpr(const T* expr,
+ Result (TypeChecker::*func)(Opcode)) {
+ CheckHasSharedMemory(&expr->loc, expr->opcode);
+ CheckAtomicAlign(&expr->loc, expr->align,
+ get_opcode_natural_alignment(expr->opcode));
+ (typechecker_.*func)(expr->opcode);
+}
+
void Validator::CheckExpr(const Expr* expr) {
expr_loc_ = &expr->loc;
switch (expr->type()) {
- case ExprType::AtomicLoad: {
- auto load_expr = cast<AtomicLoadExpr>(expr);
- CheckHasSharedMemory(&load_expr->loc, load_expr->opcode);
- CheckAtomicAlign(&load_expr->loc, load_expr->align,
- get_opcode_natural_alignment(load_expr->opcode));
- typechecker_.OnAtomicLoad(load_expr->opcode);
+ case ExprType::AtomicLoad:
+ CheckAtomicExpr(cast<AtomicLoadExpr>(expr), &TypeChecker::OnAtomicLoad);
break;
- }
- case ExprType::AtomicRmw: {
- auto rmw_expr = cast<AtomicRmwExpr>(expr);
- CheckHasSharedMemory(&rmw_expr->loc, rmw_expr->opcode);
- CheckAtomicAlign(&rmw_expr->loc, rmw_expr->align,
- get_opcode_natural_alignment(rmw_expr->opcode));
- typechecker_.OnAtomicRmw(rmw_expr->opcode);
+ case ExprType::AtomicRmw:
+ CheckAtomicExpr(cast<AtomicRmwExpr>(expr), &TypeChecker::OnAtomicRmw);
break;
- }
- case ExprType::AtomicRmwCmpxchg: {
- auto cmpxchg_expr = cast<AtomicRmwCmpxchgExpr>(expr);
- CheckHasSharedMemory(&cmpxchg_expr->loc, cmpxchg_expr->opcode);
- CheckAtomicAlign(&cmpxchg_expr->loc, cmpxchg_expr->align,
- get_opcode_natural_alignment(cmpxchg_expr->opcode));
- typechecker_.OnAtomicRmwCmpxchg(cmpxchg_expr->opcode);
+ case ExprType::AtomicRmwCmpxchg:
+ CheckAtomicExpr(cast<AtomicRmwCmpxchgExpr>(expr),
+ &TypeChecker::OnAtomicRmwCmpxchg);
break;
- }
- case ExprType::AtomicStore: {
- auto store_expr = cast<AtomicStoreExpr>(expr);
- CheckHasSharedMemory(&store_expr->loc, store_expr->opcode);
- CheckAtomicAlign(&store_expr->loc, store_expr->align,
- get_opcode_natural_alignment(store_expr->opcode));
- typechecker_.OnAtomicStore(store_expr->opcode);
+ case ExprType::AtomicStore:
+ CheckAtomicExpr(cast<AtomicStoreExpr>(expr), &TypeChecker::OnAtomicStore);
break;
- }
case ExprType::Binary:
typechecker_.OnBinary(cast<BinaryExpr>(expr)->opcode);
@@ -664,6 +656,14 @@ void Validator::CheckExpr(const Expr* expr) {
case ExprType::Unreachable:
typechecker_.OnUnreachable();
break;
+
+ case ExprType::Wait:
+ CheckAtomicExpr(cast<WaitExpr>(expr), &TypeChecker::OnWait);
+ break;
+
+ case ExprType::Wake:
+ CheckAtomicExpr(cast<WakeExpr>(expr), &TypeChecker::OnWake);
+ break;
}
}
diff --git a/src/wast-lexer.cc b/src/wast-lexer.cc
index fa4a47c2..886b7097 100644
--- a/src/wast-lexer.cc
+++ b/src/wast-lexer.cc
@@ -443,6 +443,9 @@ Token WastLexer::GetToken(WastParser* parser) {
<i> "current_memory" { RETURN_OPCODE0(CurrentMemory); }
<i> "grow_memory" { RETURN_OPCODE0(GrowMemory); }
+ <i> "i32.wait" { RETURN_OPCODE(Wait, I32Wait); }
+ <i> "i64.wait" { RETURN_OPCODE(Wait, I64Wait); }
+ <i> "wake" { RETURN_OPCODE0(Wake); }
<i> "i32.atomic.load" { RETURN_OPCODE(AtomicLoad, I32AtomicLoad); }
<i> "i64.atomic.load" { RETURN_OPCODE(AtomicLoad, I64AtomicLoad); }
<i> "i32.atomic.load8_u" { RETURN_OPCODE(AtomicLoad, I32AtomicLoad8U); }
diff --git a/src/wast-parser.cc b/src/wast-parser.cc
index 3682d743..eaa4a31e 100644
--- a/src/wast-parser.cc
+++ b/src/wast-parser.cc
@@ -163,6 +163,8 @@ bool IsPlainInstr(TokenType token_type) {
case TokenType::GrowMemory:
case TokenType::Throw:
case TokenType::Rethrow:
+ case TokenType::Wake:
+ case TokenType::Wait:
case TokenType::AtomicLoad:
case TokenType::AtomicStore:
case TokenType::AtomicRmw:
@@ -1378,6 +1380,20 @@ Result WastParser::ParsePlainInstr(std::unique_ptr<Expr>* out_expr) {
CHECK_RESULT(ParsePlainInstrVar<RethrowExpr>(loc, out_expr));
break;
+ case TokenType::Wake: {
+ Token token = Consume();
+ ErrorUnlessOpcodeEnabled(token);
+ CHECK_RESULT(ParsePlainLoadStoreInstr<WakeExpr>(loc, token, out_expr));
+ break;
+ }
+
+ case TokenType::Wait: {
+ Token token = Consume();
+ ErrorUnlessOpcodeEnabled(token);
+ CHECK_RESULT(ParsePlainLoadStoreInstr<WaitExpr>(loc, token, out_expr));
+ break;
+ }
+
case TokenType::AtomicLoad: {
Token token = Consume();
ErrorUnlessOpcodeEnabled(token);
diff --git a/src/wat-writer.cc b/src/wat-writer.cc
index 1a771e83..2fa6595b 100644
--- a/src/wat-writer.cc
+++ b/src/wat-writer.cc
@@ -656,6 +656,14 @@ void WatWriter::WriteExpr(const Expr* expr) {
WritePutsNewline(Opcode::Unreachable_Opcode.GetName());
break;
+ case ExprType::Wait:
+ WriteLoadStoreExpr<WaitExpr>(expr);
+ break;
+
+ case ExprType::Wake:
+ WriteLoadStoreExpr<WakeExpr>(expr);
+ break;
+
default:
fprintf(stderr, "bad expr type: %s\n", GetExprTypeName(*expr));
assert(0);
@@ -715,6 +723,7 @@ void WatWriter::WriteFoldedExpr(const Expr* expr) {
case ExprType::AtomicRmw:
case ExprType::Binary:
case ExprType::Compare:
+ case ExprType::Wake:
PushExpr(expr, 2, 1);
break;
@@ -800,6 +809,7 @@ void WatWriter::WriteFoldedExpr(const Expr* expr) {
case ExprType::AtomicRmwCmpxchg:
case ExprType::Select:
+ case ExprType::Wait:
PushExpr(expr, 3, 1);
break;
diff --git a/test/dump/atomic.txt b/test/dump/atomic.txt
index 7887dd84..9bb4a02d 100644
--- a/test/dump/atomic.txt
+++ b/test/dump/atomic.txt
@@ -4,6 +4,10 @@
(module
(memory (shared 1 1))
(func
+ i32.const 0 i32.const 0 wake drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+
i32.const 0 i32.atomic.load drop
i32.const 0 i64.atomic.load drop
i32.const 0 i32.atomic.load8_u drop
@@ -85,249 +89,263 @@ Code Disassembly:
00001c func[0]:
00001f: 41 00 | i32.const 0
- 000022: fe 10 02 00 | i32.atomic.load 2 0
- 000025: 1a | drop
- 000026: 41 00 | i32.const 0
- 000029: fe 11 03 00 | i64.atomic.load 3 0
- 00002c: 1a | drop
- 00002d: 41 00 | i32.const 0
- 000030: fe 12 00 00 | i32.atomic.load8_u 0 0
- 000033: 1a | drop
- 000034: 41 00 | i32.const 0
- 000037: fe 13 01 00 | i32.atomic.load16_u 1 0
- 00003a: 1a | drop
- 00003b: 41 00 | i32.const 0
- 00003e: fe 14 00 00 | i64.atomic.load8_u 0 0
- 000041: 1a | drop
- 000042: 41 00 | i32.const 0
- 000045: fe 15 01 00 | i64.atomic.load16_u 1 0
- 000048: 1a | drop
- 000049: 41 00 | i32.const 0
- 00004c: fe 16 02 00 | i64.atomic.load32_u 2 0
- 00004f: 1a | drop
- 000050: 41 00 | i32.const 0
- 000052: 41 00 | i32.const 0
- 000055: fe 17 02 00 | i32.atomic.store 2 0
- 000058: 41 00 | i32.const 0
- 00005a: 42 00 | i64.const 0
- 00005d: fe 18 03 00 | i64.atomic.store 3 0
- 000060: 41 00 | i32.const 0
- 000062: 41 00 | i32.const 0
- 000065: fe 19 00 00 | i32.atomic.store8 0 0
+ 000021: 41 00 | i32.const 0
+ 000024: fe 00 02 00 | wake 2 0
+ 000027: 1a | drop
+ 000028: 41 00 | i32.const 0
+ 00002a: 41 00 | i32.const 0
+ 00002c: 42 00 | i64.const 0
+ 00002f: fe 01 02 00 | i32.wait 2 0
+ 000032: 1a | drop
+ 000033: 41 00 | i32.const 0
+ 000035: 42 00 | i64.const 0
+ 000037: 42 00 | i64.const 0
+ 00003a: fe 02 03 00 | i64.wait 3 0
+ 00003d: 1a | drop
+ 00003e: 41 00 | i32.const 0
+ 000041: fe 10 02 00 | i32.atomic.load 2 0
+ 000044: 1a | drop
+ 000045: 41 00 | i32.const 0
+ 000048: fe 11 03 00 | i64.atomic.load 3 0
+ 00004b: 1a | drop
+ 00004c: 41 00 | i32.const 0
+ 00004f: fe 12 00 00 | i32.atomic.load8_u 0 0
+ 000052: 1a | drop
+ 000053: 41 00 | i32.const 0
+ 000056: fe 13 01 00 | i32.atomic.load16_u 1 0
+ 000059: 1a | drop
+ 00005a: 41 00 | i32.const 0
+ 00005d: fe 14 00 00 | i64.atomic.load8_u 0 0
+ 000060: 1a | drop
+ 000061: 41 00 | i32.const 0
+ 000064: fe 15 01 00 | i64.atomic.load16_u 1 0
+ 000067: 1a | drop
000068: 41 00 | i32.const 0
- 00006a: 41 00 | i32.const 0
- 00006d: fe 1a 01 00 | i32.atomic.store16 1 0
- 000070: 41 00 | i32.const 0
- 000072: 42 00 | i64.const 0
- 000075: fe 1b 00 00 | i64.atomic.store8 0 0
- 000078: 41 00 | i32.const 0
- 00007a: 42 00 | i64.const 0
- 00007d: fe 1c 01 00 | i64.atomic.store16 1 0
- 000080: 41 00 | i32.const 0
- 000082: 42 00 | i64.const 0
- 000085: fe 1d 02 00 | i64.atomic.store32 2 0
- 000088: 41 00 | i32.const 0
- 00008a: 41 00 | i32.const 0
- 00008d: fe 1e 02 00 | i32.atomic.rmw.add 2 0
- 000090: 1a | drop
- 000091: 41 00 | i32.const 0
- 000093: 42 00 | i64.const 0
- 000096: fe 1f 03 00 | i64.atomic.rmw.add 3 0
- 000099: 1a | drop
- 00009a: 41 00 | i32.const 0
- 00009c: 41 00 | i32.const 0
- 00009f: fe 20 00 00 | i32.atomic.rmw8_u.add 0 0
- 0000a2: 1a | drop
- 0000a3: 41 00 | i32.const 0
- 0000a5: 41 00 | i32.const 0
- 0000a8: fe 21 01 00 | i32.atomic.rmw16_u.add 1 0
- 0000ab: 1a | drop
- 0000ac: 41 00 | i32.const 0
- 0000ae: 42 00 | i64.const 0
- 0000b1: fe 22 00 00 | i64.atomic.rmw8_u.add 0 0
- 0000b4: 1a | drop
- 0000b5: 41 00 | i32.const 0
- 0000b7: 42 00 | i64.const 0
- 0000ba: fe 23 01 00 | i64.atomic.rmw16_u.add 1 0
- 0000bd: 1a | drop
- 0000be: 41 00 | i32.const 0
- 0000c0: 42 00 | i64.const 0
- 0000c3: fe 24 02 00 | i64.atomic.rmw32_u.add 2 0
- 0000c6: 1a | drop
- 0000c7: 41 00 | i32.const 0
- 0000c9: 41 00 | i32.const 0
- 0000cc: fe 25 02 00 | i32.atomic.rmw.sub 2 0
- 0000cf: 1a | drop
- 0000d0: 41 00 | i32.const 0
- 0000d2: 42 00 | i64.const 0
- 0000d5: fe 26 03 00 | i64.atomic.rmw.sub 3 0
- 0000d8: 1a | drop
- 0000d9: 41 00 | i32.const 0
- 0000db: 41 00 | i32.const 0
- 0000de: fe 27 00 00 | i32.atomic.rmw8_u.sub 0 0
- 0000e1: 1a | drop
- 0000e2: 41 00 | i32.const 0
- 0000e4: 41 00 | i32.const 0
- 0000e7: fe 28 01 00 | i32.atomic.rmw16_u.sub 1 0
- 0000ea: 1a | drop
- 0000eb: 41 00 | i32.const 0
- 0000ed: 42 00 | i64.const 0
- 0000f0: fe 29 00 00 | i64.atomic.rmw8_u.sub 0 0
- 0000f3: 1a | drop
- 0000f4: 41 00 | i32.const 0
- 0000f6: 42 00 | i64.const 0
- 0000f9: fe 2a 01 00 | i64.atomic.rmw16_u.sub 1 0
- 0000fc: 1a | drop
- 0000fd: 41 00 | i32.const 0
- 0000ff: 42 00 | i64.const 0
- 000102: fe 2b 02 00 | i64.atomic.rmw32_u.sub 2 0
- 000105: 1a | drop
- 000106: 41 00 | i32.const 0
- 000108: 41 00 | i32.const 0
- 00010b: fe 2c 02 00 | i32.atomic.rmw.and 2 0
- 00010e: 1a | drop
- 00010f: 41 00 | i32.const 0
- 000111: 42 00 | i64.const 0
- 000114: fe 2d 03 00 | i64.atomic.rmw.and 3 0
- 000117: 1a | drop
- 000118: 41 00 | i32.const 0
- 00011a: 41 00 | i32.const 0
- 00011d: fe 2e 00 00 | i32.atomic.rmw8_u.and 0 0
- 000120: 1a | drop
- 000121: 41 00 | i32.const 0
- 000123: 41 00 | i32.const 0
- 000126: fe 2f 01 00 | i32.atomic.rmw16_u.and 1 0
- 000129: 1a | drop
- 00012a: 41 00 | i32.const 0
- 00012c: 42 00 | i64.const 0
- 00012f: fe 30 00 00 | i64.atomic.rmw8_u.and 0 0
- 000132: 1a | drop
- 000133: 41 00 | i32.const 0
- 000135: 42 00 | i64.const 0
- 000138: fe 31 01 00 | i64.atomic.rmw16_u.and 1 0
- 00013b: 1a | drop
- 00013c: 41 00 | i32.const 0
- 00013e: 42 00 | i64.const 0
- 000141: fe 32 02 00 | i64.atomic.rmw32_u.and 2 0
- 000144: 1a | drop
- 000145: 41 00 | i32.const 0
- 000147: 41 00 | i32.const 0
- 00014a: fe 33 02 00 | i32.atomic.rmw.or 2 0
- 00014d: 1a | drop
- 00014e: 41 00 | i32.const 0
- 000150: 42 00 | i64.const 0
- 000153: fe 34 03 00 | i64.atomic.rmw.or 3 0
- 000156: 1a | drop
- 000157: 41 00 | i32.const 0
- 000159: 41 00 | i32.const 0
- 00015c: fe 35 00 00 | i32.atomic.rmw8_u.or 0 0
- 00015f: 1a | drop
- 000160: 41 00 | i32.const 0
- 000162: 41 00 | i32.const 0
- 000165: fe 36 01 00 | i32.atomic.rmw16_u.or 1 0
- 000168: 1a | drop
- 000169: 41 00 | i32.const 0
- 00016b: 42 00 | i64.const 0
- 00016e: fe 37 00 00 | i64.atomic.rmw8_u.or 0 0
- 000171: 1a | drop
- 000172: 41 00 | i32.const 0
- 000174: 42 00 | i64.const 0
- 000177: fe 38 01 00 | i64.atomic.rmw16_u.or 1 0
- 00017a: 1a | drop
- 00017b: 41 00 | i32.const 0
- 00017d: 42 00 | i64.const 0
- 000180: fe 39 02 00 | i64.atomic.rmw32_u.or 2 0
- 000183: 1a | drop
- 000184: 41 00 | i32.const 0
- 000186: 41 00 | i32.const 0
- 000189: fe 3a 02 00 | i32.atomic.rmw.xor 2 0
- 00018c: 1a | drop
- 00018d: 41 00 | i32.const 0
- 00018f: 42 00 | i64.const 0
- 000192: fe 3b 03 00 | i64.atomic.rmw.xor 3 0
- 000195: 1a | drop
- 000196: 41 00 | i32.const 0
- 000198: 41 00 | i32.const 0
- 00019b: fe 3c 00 00 | i32.atomic.rmw8_u.xor 0 0
- 00019e: 1a | drop
- 00019f: 41 00 | i32.const 0
- 0001a1: 41 00 | i32.const 0
- 0001a4: fe 3d 01 00 | i32.atomic.rmw16_u.xor 1 0
- 0001a7: 1a | drop
- 0001a8: 41 00 | i32.const 0
- 0001aa: 42 00 | i64.const 0
- 0001ad: fe 3e 00 00 | i64.atomic.rmw8_u.xor 0 0
- 0001b0: 1a | drop
- 0001b1: 41 00 | i32.const 0
- 0001b3: 42 00 | i64.const 0
- 0001b6: fe 3f 01 00 | i64.atomic.rmw16_u.xor 1 0
- 0001b9: 1a | drop
- 0001ba: 41 00 | i32.const 0
- 0001bc: 42 00 | i64.const 0
- 0001bf: fe 40 02 00 | i64.atomic.rmw32_u.xor 2 0
- 0001c2: 1a | drop
- 0001c3: 41 00 | i32.const 0
- 0001c5: 41 00 | i32.const 0
- 0001c8: fe 41 02 00 | i32.atomic.rmw.xchg 2 0
- 0001cb: 1a | drop
- 0001cc: 41 00 | i32.const 0
- 0001ce: 42 00 | i64.const 0
- 0001d1: fe 42 03 00 | i64.atomic.rmw.xchg 3 0
- 0001d4: 1a | drop
- 0001d5: 41 00 | i32.const 0
- 0001d7: 41 00 | i32.const 0
- 0001da: fe 43 00 00 | i32.atomic.rmw8_u.xchg 0 0
- 0001dd: 1a | drop
- 0001de: 41 00 | i32.const 0
- 0001e0: 41 00 | i32.const 0
- 0001e3: fe 44 01 00 | i32.atomic.rmw16_u.xchg 1 0
- 0001e6: 1a | drop
- 0001e7: 41 00 | i32.const 0
- 0001e9: 42 00 | i64.const 0
- 0001ec: fe 45 00 00 | i64.atomic.rmw8_u.xchg 0 0
- 0001ef: 1a | drop
- 0001f0: 41 00 | i32.const 0
- 0001f2: 42 00 | i64.const 0
- 0001f5: fe 46 01 00 | i64.atomic.rmw16_u.xchg 1 0
- 0001f8: 1a | drop
- 0001f9: 41 00 | i32.const 0
- 0001fb: 42 00 | i64.const 0
- 0001fe: fe 47 02 00 | i64.atomic.rmw32_u.xchg 2 0
- 000201: 1a | drop
- 000202: 41 00 | i32.const 0
- 000204: 41 00 | i32.const 0
+ 00006b: fe 16 02 00 | i64.atomic.load32_u 2 0
+ 00006e: 1a | drop
+ 00006f: 41 00 | i32.const 0
+ 000071: 41 00 | i32.const 0
+ 000074: fe 17 02 00 | i32.atomic.store 2 0
+ 000077: 41 00 | i32.const 0
+ 000079: 42 00 | i64.const 0
+ 00007c: fe 18 03 00 | i64.atomic.store 3 0
+ 00007f: 41 00 | i32.const 0
+ 000081: 41 00 | i32.const 0
+ 000084: fe 19 00 00 | i32.atomic.store8 0 0
+ 000087: 41 00 | i32.const 0
+ 000089: 41 00 | i32.const 0
+ 00008c: fe 1a 01 00 | i32.atomic.store16 1 0
+ 00008f: 41 00 | i32.const 0
+ 000091: 42 00 | i64.const 0
+ 000094: fe 1b 00 00 | i64.atomic.store8 0 0
+ 000097: 41 00 | i32.const 0
+ 000099: 42 00 | i64.const 0
+ 00009c: fe 1c 01 00 | i64.atomic.store16 1 0
+ 00009f: 41 00 | i32.const 0
+ 0000a1: 42 00 | i64.const 0
+ 0000a4: fe 1d 02 00 | i64.atomic.store32 2 0
+ 0000a7: 41 00 | i32.const 0
+ 0000a9: 41 00 | i32.const 0
+ 0000ac: fe 1e 02 00 | i32.atomic.rmw.add 2 0
+ 0000af: 1a | drop
+ 0000b0: 41 00 | i32.const 0
+ 0000b2: 42 00 | i64.const 0
+ 0000b5: fe 1f 03 00 | i64.atomic.rmw.add 3 0
+ 0000b8: 1a | drop
+ 0000b9: 41 00 | i32.const 0
+ 0000bb: 41 00 | i32.const 0
+ 0000be: fe 20 00 00 | i32.atomic.rmw8_u.add 0 0
+ 0000c1: 1a | drop
+ 0000c2: 41 00 | i32.const 0
+ 0000c4: 41 00 | i32.const 0
+ 0000c7: fe 21 01 00 | i32.atomic.rmw16_u.add 1 0
+ 0000ca: 1a | drop
+ 0000cb: 41 00 | i32.const 0
+ 0000cd: 42 00 | i64.const 0
+ 0000d0: fe 22 00 00 | i64.atomic.rmw8_u.add 0 0
+ 0000d3: 1a | drop
+ 0000d4: 41 00 | i32.const 0
+ 0000d6: 42 00 | i64.const 0
+ 0000d9: fe 23 01 00 | i64.atomic.rmw16_u.add 1 0
+ 0000dc: 1a | drop
+ 0000dd: 41 00 | i32.const 0
+ 0000df: 42 00 | i64.const 0
+ 0000e2: fe 24 02 00 | i64.atomic.rmw32_u.add 2 0
+ 0000e5: 1a | drop
+ 0000e6: 41 00 | i32.const 0
+ 0000e8: 41 00 | i32.const 0
+ 0000eb: fe 25 02 00 | i32.atomic.rmw.sub 2 0
+ 0000ee: 1a | drop
+ 0000ef: 41 00 | i32.const 0
+ 0000f1: 42 00 | i64.const 0
+ 0000f4: fe 26 03 00 | i64.atomic.rmw.sub 3 0
+ 0000f7: 1a | drop
+ 0000f8: 41 00 | i32.const 0
+ 0000fa: 41 00 | i32.const 0
+ 0000fd: fe 27 00 00 | i32.atomic.rmw8_u.sub 0 0
+ 000100: 1a | drop
+ 000101: 41 00 | i32.const 0
+ 000103: 41 00 | i32.const 0
+ 000106: fe 28 01 00 | i32.atomic.rmw16_u.sub 1 0
+ 000109: 1a | drop
+ 00010a: 41 00 | i32.const 0
+ 00010c: 42 00 | i64.const 0
+ 00010f: fe 29 00 00 | i64.atomic.rmw8_u.sub 0 0
+ 000112: 1a | drop
+ 000113: 41 00 | i32.const 0
+ 000115: 42 00 | i64.const 0
+ 000118: fe 2a 01 00 | i64.atomic.rmw16_u.sub 1 0
+ 00011b: 1a | drop
+ 00011c: 41 00 | i32.const 0
+ 00011e: 42 00 | i64.const 0
+ 000121: fe 2b 02 00 | i64.atomic.rmw32_u.sub 2 0
+ 000124: 1a | drop
+ 000125: 41 00 | i32.const 0
+ 000127: 41 00 | i32.const 0
+ 00012a: fe 2c 02 00 | i32.atomic.rmw.and 2 0
+ 00012d: 1a | drop
+ 00012e: 41 00 | i32.const 0
+ 000130: 42 00 | i64.const 0
+ 000133: fe 2d 03 00 | i64.atomic.rmw.and 3 0
+ 000136: 1a | drop
+ 000137: 41 00 | i32.const 0
+ 000139: 41 00 | i32.const 0
+ 00013c: fe 2e 00 00 | i32.atomic.rmw8_u.and 0 0
+ 00013f: 1a | drop
+ 000140: 41 00 | i32.const 0
+ 000142: 41 00 | i32.const 0
+ 000145: fe 2f 01 00 | i32.atomic.rmw16_u.and 1 0
+ 000148: 1a | drop
+ 000149: 41 00 | i32.const 0
+ 00014b: 42 00 | i64.const 0
+ 00014e: fe 30 00 00 | i64.atomic.rmw8_u.and 0 0
+ 000151: 1a | drop
+ 000152: 41 00 | i32.const 0
+ 000154: 42 00 | i64.const 0
+ 000157: fe 31 01 00 | i64.atomic.rmw16_u.and 1 0
+ 00015a: 1a | drop
+ 00015b: 41 00 | i32.const 0
+ 00015d: 42 00 | i64.const 0
+ 000160: fe 32 02 00 | i64.atomic.rmw32_u.and 2 0
+ 000163: 1a | drop
+ 000164: 41 00 | i32.const 0
+ 000166: 41 00 | i32.const 0
+ 000169: fe 33 02 00 | i32.atomic.rmw.or 2 0
+ 00016c: 1a | drop
+ 00016d: 41 00 | i32.const 0
+ 00016f: 42 00 | i64.const 0
+ 000172: fe 34 03 00 | i64.atomic.rmw.or 3 0
+ 000175: 1a | drop
+ 000176: 41 00 | i32.const 0
+ 000178: 41 00 | i32.const 0
+ 00017b: fe 35 00 00 | i32.atomic.rmw8_u.or 0 0
+ 00017e: 1a | drop
+ 00017f: 41 00 | i32.const 0
+ 000181: 41 00 | i32.const 0
+ 000184: fe 36 01 00 | i32.atomic.rmw16_u.or 1 0
+ 000187: 1a | drop
+ 000188: 41 00 | i32.const 0
+ 00018a: 42 00 | i64.const 0
+ 00018d: fe 37 00 00 | i64.atomic.rmw8_u.or 0 0
+ 000190: 1a | drop
+ 000191: 41 00 | i32.const 0
+ 000193: 42 00 | i64.const 0
+ 000196: fe 38 01 00 | i64.atomic.rmw16_u.or 1 0
+ 000199: 1a | drop
+ 00019a: 41 00 | i32.const 0
+ 00019c: 42 00 | i64.const 0
+ 00019f: fe 39 02 00 | i64.atomic.rmw32_u.or 2 0
+ 0001a2: 1a | drop
+ 0001a3: 41 00 | i32.const 0
+ 0001a5: 41 00 | i32.const 0
+ 0001a8: fe 3a 02 00 | i32.atomic.rmw.xor 2 0
+ 0001ab: 1a | drop
+ 0001ac: 41 00 | i32.const 0
+ 0001ae: 42 00 | i64.const 0
+ 0001b1: fe 3b 03 00 | i64.atomic.rmw.xor 3 0
+ 0001b4: 1a | drop
+ 0001b5: 41 00 | i32.const 0
+ 0001b7: 41 00 | i32.const 0
+ 0001ba: fe 3c 00 00 | i32.atomic.rmw8_u.xor 0 0
+ 0001bd: 1a | drop
+ 0001be: 41 00 | i32.const 0
+ 0001c0: 41 00 | i32.const 0
+ 0001c3: fe 3d 01 00 | i32.atomic.rmw16_u.xor 1 0
+ 0001c6: 1a | drop
+ 0001c7: 41 00 | i32.const 0
+ 0001c9: 42 00 | i64.const 0
+ 0001cc: fe 3e 00 00 | i64.atomic.rmw8_u.xor 0 0
+ 0001cf: 1a | drop
+ 0001d0: 41 00 | i32.const 0
+ 0001d2: 42 00 | i64.const 0
+ 0001d5: fe 3f 01 00 | i64.atomic.rmw16_u.xor 1 0
+ 0001d8: 1a | drop
+ 0001d9: 41 00 | i32.const 0
+ 0001db: 42 00 | i64.const 0
+ 0001de: fe 40 02 00 | i64.atomic.rmw32_u.xor 2 0
+ 0001e1: 1a | drop
+ 0001e2: 41 00 | i32.const 0
+ 0001e4: 41 00 | i32.const 0
+ 0001e7: fe 41 02 00 | i32.atomic.rmw.xchg 2 0
+ 0001ea: 1a | drop
+ 0001eb: 41 00 | i32.const 0
+ 0001ed: 42 00 | i64.const 0
+ 0001f0: fe 42 03 00 | i64.atomic.rmw.xchg 3 0
+ 0001f3: 1a | drop
+ 0001f4: 41 00 | i32.const 0
+ 0001f6: 41 00 | i32.const 0
+ 0001f9: fe 43 00 00 | i32.atomic.rmw8_u.xchg 0 0
+ 0001fc: 1a | drop
+ 0001fd: 41 00 | i32.const 0
+ 0001ff: 41 00 | i32.const 0
+ 000202: fe 44 01 00 | i32.atomic.rmw16_u.xchg 1 0
+ 000205: 1a | drop
000206: 41 00 | i32.const 0
- 000209: fe 48 02 00 | i32.atomic.rmw.cmpxchg 2 0
- 00020c: 1a | drop
- 00020d: 41 00 | i32.const 0
- 00020f: 42 00 | i64.const 0
+ 000208: 42 00 | i64.const 0
+ 00020b: fe 45 00 00 | i64.atomic.rmw8_u.xchg 0 0
+ 00020e: 1a | drop
+ 00020f: 41 00 | i32.const 0
000211: 42 00 | i64.const 0
- 000214: fe 49 03 00 | i64.atomic.rmw.cmpxchg 3 0
+ 000214: fe 46 01 00 | i64.atomic.rmw16_u.xchg 1 0
000217: 1a | drop
000218: 41 00 | i32.const 0
- 00021a: 41 00 | i32.const 0
- 00021c: 41 00 | i32.const 0
- 00021f: fe 4a 00 00 | i32.atomic.rmw8_u.cmpxchg 0 0
- 000222: 1a | drop
+ 00021a: 42 00 | i64.const 0
+ 00021d: fe 47 02 00 | i64.atomic.rmw32_u.xchg 2 0
+ 000220: 1a | drop
+ 000221: 41 00 | i32.const 0
000223: 41 00 | i32.const 0
000225: 41 00 | i32.const 0
- 000227: 41 00 | i32.const 0
- 00022a: fe 4b 01 00 | i32.atomic.rmw16_u.cmpxchg 1 0
- 00022d: 1a | drop
- 00022e: 41 00 | i32.const 0
+ 000228: fe 48 02 00 | i32.atomic.rmw.cmpxchg 2 0
+ 00022b: 1a | drop
+ 00022c: 41 00 | i32.const 0
+ 00022e: 42 00 | i64.const 0
000230: 42 00 | i64.const 0
- 000232: 42 00 | i64.const 0
- 000235: fe 4c 00 00 | i64.atomic.rmw8_u.cmpxchg 0 0
- 000238: 1a | drop
+ 000233: fe 49 03 00 | i64.atomic.rmw.cmpxchg 3 0
+ 000236: 1a | drop
+ 000237: 41 00 | i32.const 0
000239: 41 00 | i32.const 0
- 00023b: 42 00 | i64.const 0
- 00023d: 42 00 | i64.const 0
- 000240: fe 4d 01 00 | i64.atomic.rmw16_u.cmpxchg 1 0
- 000243: 1a | drop
+ 00023b: 41 00 | i32.const 0
+ 00023e: fe 4a 00 00 | i32.atomic.rmw8_u.cmpxchg 0 0
+ 000241: 1a | drop
+ 000242: 41 00 | i32.const 0
000244: 41 00 | i32.const 0
- 000246: 42 00 | i64.const 0
- 000248: 42 00 | i64.const 0
- 00024b: fe 4e 02 00 | i64.atomic.rmw32_u.cmpxchg 2 0
- 00024e: 1a | drop
- 00024f: 0b | end
+ 000246: 41 00 | i32.const 0
+ 000249: fe 4b 01 00 | i32.atomic.rmw16_u.cmpxchg 1 0
+ 00024c: 1a | drop
+ 00024d: 41 00 | i32.const 0
+ 00024f: 42 00 | i64.const 0
+ 000251: 42 00 | i64.const 0
+ 000254: fe 4c 00 00 | i64.atomic.rmw8_u.cmpxchg 0 0
+ 000257: 1a | drop
+ 000258: 41 00 | i32.const 0
+ 00025a: 42 00 | i64.const 0
+ 00025c: 42 00 | i64.const 0
+ 00025f: fe 4d 01 00 | i64.atomic.rmw16_u.cmpxchg 1 0
+ 000262: 1a | drop
+ 000263: 41 00 | i32.const 0
+ 000265: 42 00 | i64.const 0
+ 000267: 42 00 | i64.const 0
+ 00026a: fe 4e 02 00 | i64.atomic.rmw32_u.cmpxchg 2 0
+ 00026d: 1a | drop
+ 00026e: 0b | end
;;; STDOUT ;;)
diff --git a/test/interp/logging-all-opcodes.txt b/test/interp/logging-all-opcodes.txt
index bc173bfa..2756c42c 100644
--- a/test/interp/logging-all-opcodes.txt
+++ b/test/interp/logging-all-opcodes.txt
@@ -213,6 +213,9 @@
(; 0xfc 0x07 ;) (func (export "i64.trunc_u:sat/f64") f64.const 1 i64.trunc_u:sat/f64 drop)
;; --enable-threads
+ (; 0xfe 0x00 ;) (func (export "wake") i32.const 1 i32.const 2 wake offset=3 drop)
+ (; 0xfe 0x01 ;) (func (export "i32.wait") i32.const 1 i32.const 2 i64.const 3 i32.wait offset=3 drop)
+ (; 0xfe 0x02 ;) (func (export "i64.wait") i32.const 1 i64.const 2 i64.const 3 i64.wait offset=3 drop)
(; 0xfe 0x10 ;) (func (export "i32.atomic.load") i32.const 1 i32.atomic.load offset=3 drop)
(; 0xfe 0x11 ;) (func (export "i64.atomic.load") i32.const 1 i64.atomic.load offset=7 drop)
(; 0xfe 0x12 ;) (func (export "i32.atomic.load8_u") i32.const 1 i32.atomic.load8_u offset=3 drop)
@@ -311,7 +314,7 @@
; section "Function" (3)
0000022: 03 ; section code
0000023: 00 ; section size (guess)
-0000024: f701 ; num functions
+0000024: fa01 ; num functions
0000026: 00 ; function 0 signature index
0000027: 00 ; function 1 signature index
0000028: 00 ; function 2 signature index
@@ -559,3868 +562,3929 @@
000011a: 00 ; function 244 signature index
000011b: 00 ; function 245 signature index
000011c: 00 ; function 246 signature index
-; move data: [24, 11d) -> [25, 11e)
-0000023: f901 ; FIXUP section size
+000011d: 00 ; function 247 signature index
+000011e: 00 ; function 248 signature index
+000011f: 00 ; function 249 signature index
+; move data: [24, 120) -> [25, 121)
+0000023: fc01 ; FIXUP section size
; section "Table" (4)
-000011e: 04 ; section code
-000011f: 00 ; section size (guess)
-0000120: 01 ; num tables
+0000121: 04 ; section code
+0000122: 00 ; section size (guess)
+0000123: 01 ; num tables
; table 0
-0000121: 70 ; anyfunc
-0000122: 01 ; limits: flags
-0000123: 02 ; limits: initial
-0000124: 02 ; limits: max
-000011f: 05 ; FIXUP section size
+0000124: 70 ; anyfunc
+0000125: 01 ; limits: flags
+0000126: 02 ; limits: initial
+0000127: 02 ; limits: max
+0000122: 05 ; FIXUP section size
; section "Memory" (5)
-0000125: 05 ; section code
-0000126: 00 ; section size (guess)
-0000127: 01 ; num memories
+0000128: 05 ; section code
+0000129: 00 ; section size (guess)
+000012a: 01 ; num memories
; memory 0
-0000128: 03 ; limits: flags
-0000129: 01 ; limits: initial
-000012a: 01 ; limits: max
-0000126: 04 ; FIXUP section size
+000012b: 03 ; limits: flags
+000012c: 01 ; limits: initial
+000012d: 01 ; limits: max
+0000129: 04 ; FIXUP section size
; section "Global" (6)
-000012b: 06 ; section code
-000012c: 00 ; section size (guess)
-000012d: 01 ; num globals
-000012e: 7f ; i32
-000012f: 01 ; global mutability
-0000130: 41 ; i32.const
-0000131: 00 ; i32 literal
-0000132: 0b ; end
-000012c: 06 ; FIXUP section size
+000012e: 06 ; section code
+000012f: 00 ; section size (guess)
+0000130: 01 ; num globals
+0000131: 7f ; i32
+0000132: 01 ; global mutability
+0000133: 41 ; i32.const
+0000134: 00 ; i32 literal
+0000135: 0b ; end
+000012f: 06 ; FIXUP section size
; section "Export" (7)
-0000133: 07 ; section code
-0000134: 00 ; section size (guess)
-0000135: f601 ; num exports
-0000137: 0b ; string length
-0000138: 756e 7265 6163 6861 626c 65 unreachable ; export name
-0000143: 00 ; export kind
-0000144: 02 ; export func index
-0000145: 02 ; string length
-0000146: 6272 br ; export name
-0000148: 00 ; export kind
-0000149: 03 ; export func index
-000014a: 08 ; string length
-000014b: 6272 5f74 6162 6c65 br_table ; export name
-0000153: 00 ; export kind
-0000154: 04 ; export func index
-0000155: 06 ; string length
-0000156: 7265 7475 726e return ; export name
-000015c: 00 ; export kind
-000015d: 05 ; export func index
-000015e: 04 ; string length
-000015f: 6361 6c6c call ; export name
-0000163: 00 ; export kind
-0000164: 06 ; export func index
-0000165: 0d ; string length
-0000166: 6361 6c6c 5f69 6e64 6972 6563 74 call_indirect ; export name
-0000173: 00 ; export kind
-0000174: 07 ; export func index
-0000175: 04 ; string length
-0000176: 6472 6f70 drop ; export name
-000017a: 00 ; export kind
-000017b: 08 ; export func index
-000017c: 06 ; string length
-000017d: 7365 6c65 6374 select ; export name
-0000183: 00 ; export kind
-0000184: 09 ; export func index
-0000185: 09 ; string length
-0000186: 6765 745f 6c6f 6361 6c get_local ; export name
-000018f: 00 ; export kind
-0000190: 0a ; export func index
-0000191: 09 ; string length
-0000192: 7365 745f 6c6f 6361 6c set_local ; export name
-000019b: 00 ; export kind
-000019c: 0b ; export func index
-000019d: 09 ; string length
-000019e: 7465 655f 6c6f 6361 6c tee_local ; export name
-00001a7: 00 ; export kind
-00001a8: 0c ; export func index
-00001a9: 0a ; string length
-00001aa: 6765 745f 676c 6f62 616c get_global ; export name
-00001b4: 00 ; export kind
-00001b5: 0d ; export func index
-00001b6: 0a ; string length
-00001b7: 7365 745f 676c 6f62 616c set_global ; export name
-00001c1: 00 ; export kind
-00001c2: 0e ; export func index
-00001c3: 08 ; string length
-00001c4: 6933 322e 6c6f 6164 i32.load ; export name
-00001cc: 00 ; export kind
-00001cd: 0f ; export func index
-00001ce: 08 ; string length
-00001cf: 6936 342e 6c6f 6164 i64.load ; export name
-00001d7: 00 ; export kind
-00001d8: 10 ; export func index
-00001d9: 08 ; string length
-00001da: 6633 322e 6c6f 6164 f32.load ; export name
-00001e2: 00 ; export kind
-00001e3: 11 ; export func index
-00001e4: 08 ; string length
-00001e5: 6636 342e 6c6f 6164 f64.load ; export name
-00001ed: 00 ; export kind
-00001ee: 12 ; export func index
-00001ef: 0b ; string length
-00001f0: 6933 322e 6c6f 6164 385f 73 i32.load8_s ; export name
-00001fb: 00 ; export kind
-00001fc: 13 ; export func index
-00001fd: 0b ; string length
-00001fe: 6933 322e 6c6f 6164 385f 75 i32.load8_u ; export name
-0000209: 00 ; export kind
-000020a: 14 ; export func index
-000020b: 0c ; string length
-000020c: 6933 322e 6c6f 6164 3136 5f73 i32.load16_s ; export name
-0000218: 00 ; export kind
-0000219: 15 ; export func index
-000021a: 0c ; string length
-000021b: 6933 322e 6c6f 6164 3136 5f75 i32.load16_u ; export name
-0000227: 00 ; export kind
-0000228: 16 ; export func index
-0000229: 0b ; string length
-000022a: 6936 342e 6c6f 6164 385f 73 i64.load8_s ; export name
-0000235: 00 ; export kind
-0000236: 17 ; export func index
-0000237: 0b ; string length
-0000238: 6936 342e 6c6f 6164 385f 75 i64.load8_u ; export name
-0000243: 00 ; export kind
-0000244: 18 ; export func index
-0000245: 0c ; string length
-0000246: 6936 342e 6c6f 6164 3136 5f73 i64.load16_s ; export name
-0000252: 00 ; export kind
-0000253: 19 ; export func index
-0000254: 0c ; string length
-0000255: 6936 342e 6c6f 6164 3136 5f75 i64.load16_u ; export name
-0000261: 00 ; export kind
-0000262: 1a ; export func index
-0000263: 0c ; string length
-0000264: 6936 342e 6c6f 6164 3332 5f73 i64.load32_s ; export name
-0000270: 00 ; export kind
-0000271: 1b ; export func index
-0000272: 0c ; string length
-0000273: 6936 342e 6c6f 6164 3332 5f75 i64.load32_u ; export name
-000027f: 00 ; export kind
-0000280: 1c ; export func index
-0000281: 09 ; string length
-0000282: 6933 322e 7374 6f72 65 i32.store ; export name
-000028b: 00 ; export kind
-000028c: 1d ; export func index
-000028d: 09 ; string length
-000028e: 6936 342e 7374 6f72 65 i64.store ; export name
-0000297: 00 ; export kind
-0000298: 1e ; export func index
-0000299: 09 ; string length
-000029a: 6633 322e 7374 6f72 65 f32.store ; export name
-00002a3: 00 ; export kind
-00002a4: 1f ; export func index
-00002a5: 09 ; string length
-00002a6: 6636 342e 7374 6f72 65 f64.store ; export name
-00002af: 00 ; export kind
-00002b0: 20 ; export func index
-00002b1: 0a ; string length
-00002b2: 6933 322e 7374 6f72 6538 i32.store8 ; export name
-00002bc: 00 ; export kind
-00002bd: 21 ; export func index
-00002be: 0b ; string length
-00002bf: 6933 322e 7374 6f72 6531 36 i32.store16 ; export name
-00002ca: 00 ; export kind
-00002cb: 22 ; export func index
-00002cc: 0a ; string length
-00002cd: 6936 342e 7374 6f72 6538 i64.store8 ; export name
-00002d7: 00 ; export kind
-00002d8: 23 ; export func index
-00002d9: 0b ; string length
-00002da: 6936 342e 7374 6f72 6531 36 i64.store16 ; export name
-00002e5: 00 ; export kind
-00002e6: 24 ; export func index
-00002e7: 0b ; string length
-00002e8: 6936 342e 7374 6f72 6533 32 i64.store32 ; export name
-00002f3: 00 ; export kind
-00002f4: 25 ; export func index
-00002f5: 0e ; string length
-00002f6: 6375 7272 656e 745f 6d65 6d6f 7279 current_memory ; export name
-0000304: 00 ; export kind
-0000305: 26 ; export func index
-0000306: 0b ; string length
-0000307: 6772 6f77 5f6d 656d 6f72 79 grow_memory ; export name
-0000312: 00 ; export kind
-0000313: 27 ; export func index
-0000314: 09 ; string length
-0000315: 6933 322e 636f 6e73 74 i32.const ; export name
-000031e: 00 ; export kind
-000031f: 28 ; export func index
-0000320: 09 ; string length
-0000321: 6936 342e 636f 6e73 74 i64.const ; export name
-000032a: 00 ; export kind
-000032b: 29 ; export func index
-000032c: 09 ; string length
-000032d: 6633 322e 636f 6e73 74 f32.const ; export name
-0000336: 00 ; export kind
-0000337: 2a ; export func index
-0000338: 09 ; string length
-0000339: 6636 342e 636f 6e73 74 f64.const ; export name
-0000342: 00 ; export kind
-0000343: 2b ; export func index
-0000344: 07 ; string length
-0000345: 6933 322e 6571 7a i32.eqz ; export name
-000034c: 00 ; export kind
-000034d: 2c ; export func index
-000034e: 06 ; string length
-000034f: 6933 322e 6571 i32.eq ; export name
-0000355: 00 ; export kind
-0000356: 2d ; export func index
-0000357: 06 ; string length
-0000358: 6933 322e 6e65 i32.ne ; export name
-000035e: 00 ; export kind
-000035f: 2e ; export func index
-0000360: 08 ; string length
-0000361: 6933 322e 6c74 5f73 i32.lt_s ; export name
-0000369: 00 ; export kind
-000036a: 2f ; export func index
-000036b: 08 ; string length
-000036c: 6933 322e 6c74 5f75 i32.lt_u ; export name
-0000374: 00 ; export kind
-0000375: 30 ; export func index
-0000376: 08 ; string length
-0000377: 6933 322e 6774 5f73 i32.gt_s ; export name
-000037f: 00 ; export kind
-0000380: 31 ; export func index
-0000381: 08 ; string length
-0000382: 6933 322e 6774 5f75 i32.gt_u ; export name
-000038a: 00 ; export kind
-000038b: 32 ; export func index
-000038c: 08 ; string length
-000038d: 6933 322e 6c65 5f73 i32.le_s ; export name
-0000395: 00 ; export kind
-0000396: 33 ; export func index
-0000397: 08 ; string length
-0000398: 6933 322e 6c65 5f75 i32.le_u ; export name
-00003a0: 00 ; export kind
-00003a1: 34 ; export func index
-00003a2: 08 ; string length
-00003a3: 6933 322e 6765 5f73 i32.ge_s ; export name
-00003ab: 00 ; export kind
-00003ac: 35 ; export func index
-00003ad: 08 ; string length
-00003ae: 6933 322e 6765 5f75 i32.ge_u ; export name
-00003b6: 00 ; export kind
-00003b7: 36 ; export func index
-00003b8: 07 ; string length
-00003b9: 6936 342e 6571 7a i64.eqz ; export name
-00003c0: 00 ; export kind
-00003c1: 37 ; export func index
-00003c2: 06 ; string length
-00003c3: 6936 342e 6571 i64.eq ; export name
-00003c9: 00 ; export kind
-00003ca: 38 ; export func index
-00003cb: 06 ; string length
-00003cc: 6936 342e 6e65 i64.ne ; export name
-00003d2: 00 ; export kind
-00003d3: 39 ; export func index
-00003d4: 08 ; string length
-00003d5: 6936 342e 6c74 5f73 i64.lt_s ; export name
-00003dd: 00 ; export kind
-00003de: 3a ; export func index
-00003df: 08 ; string length
-00003e0: 6936 342e 6c74 5f75 i64.lt_u ; export name
-00003e8: 00 ; export kind
-00003e9: 3b ; export func index
-00003ea: 08 ; string length
-00003eb: 6936 342e 6774 5f73 i64.gt_s ; export name
-00003f3: 00 ; export kind
-00003f4: 3c ; export func index
-00003f5: 08 ; string length
-00003f6: 6936 342e 6774 5f75 i64.gt_u ; export name
-00003fe: 00 ; export kind
-00003ff: 3d ; export func index
-0000400: 08 ; string length
-0000401: 6936 342e 6c65 5f73 i64.le_s ; export name
-0000409: 00 ; export kind
-000040a: 3e ; export func index
-000040b: 08 ; string length
-000040c: 6936 342e 6c65 5f75 i64.le_u ; export name
-0000414: 00 ; export kind
-0000415: 3f ; export func index
-0000416: 08 ; string length
-0000417: 6936 342e 6765 5f73 i64.ge_s ; export name
-000041f: 00 ; export kind
-0000420: 40 ; export func index
-0000421: 08 ; string length
-0000422: 6936 342e 6765 5f75 i64.ge_u ; export name
-000042a: 00 ; export kind
-000042b: 41 ; export func index
-000042c: 06 ; string length
-000042d: 6633 322e 6571 f32.eq ; export name
-0000433: 00 ; export kind
-0000434: 42 ; export func index
-0000435: 06 ; string length
-0000436: 6633 322e 6e65 f32.ne ; export name
-000043c: 00 ; export kind
-000043d: 43 ; export func index
-000043e: 06 ; string length
-000043f: 6633 322e 6c74 f32.lt ; export name
-0000445: 00 ; export kind
-0000446: 44 ; export func index
-0000447: 06 ; string length
-0000448: 6633 322e 6774 f32.gt ; export name
-000044e: 00 ; export kind
-000044f: 45 ; export func index
-0000450: 06 ; string length
-0000451: 6633 322e 6c65 f32.le ; export name
-0000457: 00 ; export kind
-0000458: 46 ; export func index
-0000459: 06 ; string length
-000045a: 6633 322e 6765 f32.ge ; export name
-0000460: 00 ; export kind
-0000461: 47 ; export func index
-0000462: 06 ; string length
-0000463: 6636 342e 6571 f64.eq ; export name
-0000469: 00 ; export kind
-000046a: 48 ; export func index
-000046b: 06 ; string length
-000046c: 6636 342e 6e65 f64.ne ; export name
-0000472: 00 ; export kind
-0000473: 49 ; export func index
-0000474: 06 ; string length
-0000475: 6636 342e 6c74 f64.lt ; export name
-000047b: 00 ; export kind
-000047c: 4a ; export func index
-000047d: 06 ; string length
-000047e: 6636 342e 6774 f64.gt ; export name
-0000484: 00 ; export kind
-0000485: 4b ; export func index
-0000486: 06 ; string length
-0000487: 6636 342e 6c65 f64.le ; export name
-000048d: 00 ; export kind
-000048e: 4c ; export func index
-000048f: 06 ; string length
-0000490: 6636 342e 6765 f64.ge ; export name
-0000496: 00 ; export kind
-0000497: 4d ; export func index
-0000498: 07 ; string length
-0000499: 6933 322e 636c 7a i32.clz ; export name
-00004a0: 00 ; export kind
-00004a1: 4e ; export func index
-00004a2: 07 ; string length
-00004a3: 6933 322e 6374 7a i32.ctz ; export name
-00004aa: 00 ; export kind
-00004ab: 4f ; export func index
-00004ac: 0a ; string length
-00004ad: 6933 322e 706f 7063 6e74 i32.popcnt ; export name
-00004b7: 00 ; export kind
-00004b8: 50 ; export func index
-00004b9: 07 ; string length
-00004ba: 6933 322e 6164 64 i32.add ; export name
-00004c1: 00 ; export kind
-00004c2: 51 ; export func index
-00004c3: 07 ; string length
-00004c4: 6933 322e 7375 62 i32.sub ; export name
-00004cb: 00 ; export kind
-00004cc: 52 ; export func index
-00004cd: 07 ; string length
-00004ce: 6933 322e 6d75 6c i32.mul ; export name
-00004d5: 00 ; export kind
-00004d6: 53 ; export func index
-00004d7: 09 ; string length
-00004d8: 6933 322e 6469 765f 73 i32.div_s ; export name
-00004e1: 00 ; export kind
-00004e2: 54 ; export func index
-00004e3: 09 ; string length
-00004e4: 6933 322e 6469 765f 75 i32.div_u ; export name
-00004ed: 00 ; export kind
-00004ee: 55 ; export func index
-00004ef: 09 ; string length
-00004f0: 6933 322e 7265 6d5f 73 i32.rem_s ; export name
-00004f9: 00 ; export kind
-00004fa: 56 ; export func index
-00004fb: 09 ; string length
-00004fc: 6933 322e 7265 6d5f 75 i32.rem_u ; export name
-0000505: 00 ; export kind
-0000506: 57 ; export func index
-0000507: 07 ; string length
-0000508: 6933 322e 616e 64 i32.and ; export name
-000050f: 00 ; export kind
-0000510: 58 ; export func index
-0000511: 06 ; string length
-0000512: 6933 322e 6f72 i32.or ; export name
-0000518: 00 ; export kind
-0000519: 59 ; export func index
-000051a: 07 ; string length
-000051b: 6933 322e 786f 72 i32.xor ; export name
-0000522: 00 ; export kind
-0000523: 5a ; export func index
-0000524: 07 ; string length
-0000525: 6933 322e 7368 6c i32.shl ; export name
-000052c: 00 ; export kind
-000052d: 5b ; export func index
-000052e: 09 ; string length
-000052f: 6933 322e 7368 725f 73 i32.shr_s ; export name
-0000538: 00 ; export kind
-0000539: 5c ; export func index
-000053a: 09 ; string length
-000053b: 6933 322e 7368 725f 75 i32.shr_u ; export name
-0000544: 00 ; export kind
-0000545: 5d ; export func index
-0000546: 08 ; string length
-0000547: 6933 322e 726f 746c i32.rotl ; export name
-000054f: 00 ; export kind
-0000550: 5e ; export func index
-0000551: 08 ; string length
-0000552: 6933 322e 726f 7472 i32.rotr ; export name
-000055a: 00 ; export kind
-000055b: 5f ; export func index
-000055c: 07 ; string length
-000055d: 6936 342e 636c 7a i64.clz ; export name
-0000564: 00 ; export kind
-0000565: 60 ; export func index
-0000566: 07 ; string length
-0000567: 6936 342e 6374 7a i64.ctz ; export name
-000056e: 00 ; export kind
-000056f: 61 ; export func index
-0000570: 0a ; string length
-0000571: 6936 342e 706f 7063 6e74 i64.popcnt ; export name
-000057b: 00 ; export kind
-000057c: 62 ; export func index
-000057d: 07 ; string length
-000057e: 6936 342e 6164 64 i64.add ; export name
-0000585: 00 ; export kind
-0000586: 63 ; export func index
-0000587: 07 ; string length
-0000588: 6936 342e 7375 62 i64.sub ; export name
-000058f: 00 ; export kind
-0000590: 64 ; export func index
-0000591: 07 ; string length
-0000592: 6936 342e 6d75 6c i64.mul ; export name
-0000599: 00 ; export kind
-000059a: 65 ; export func index
-000059b: 09 ; string length
-000059c: 6936 342e 6469 765f 73 i64.div_s ; export name
-00005a5: 00 ; export kind
-00005a6: 66 ; export func index
-00005a7: 09 ; string length
-00005a8: 6936 342e 6469 765f 75 i64.div_u ; export name
-00005b1: 00 ; export kind
-00005b2: 67 ; export func index
-00005b3: 09 ; string length
-00005b4: 6936 342e 7265 6d5f 73 i64.rem_s ; export name
-00005bd: 00 ; export kind
-00005be: 68 ; export func index
-00005bf: 09 ; string length
-00005c0: 6936 342e 7265 6d5f 75 i64.rem_u ; export name
-00005c9: 00 ; export kind
-00005ca: 69 ; export func index
-00005cb: 07 ; string length
-00005cc: 6936 342e 616e 64 i64.and ; export name
-00005d3: 00 ; export kind
-00005d4: 6a ; export func index
-00005d5: 06 ; string length
-00005d6: 6936 342e 6f72 i64.or ; export name
-00005dc: 00 ; export kind
-00005dd: 6b ; export func index
-00005de: 07 ; string length
-00005df: 6936 342e 786f 72 i64.xor ; export name
-00005e6: 00 ; export kind
-00005e7: 6c ; export func index
-00005e8: 07 ; string length
-00005e9: 6936 342e 7368 6c i64.shl ; export name
-00005f0: 00 ; export kind
-00005f1: 6d ; export func index
-00005f2: 09 ; string length
-00005f3: 6936 342e 7368 725f 73 i64.shr_s ; export name
-00005fc: 00 ; export kind
-00005fd: 6e ; export func index
-00005fe: 09 ; string length
-00005ff: 6936 342e 7368 725f 75 i64.shr_u ; export name
-0000608: 00 ; export kind
-0000609: 6f ; export func index
-000060a: 08 ; string length
-000060b: 6936 342e 726f 746c i64.rotl ; export name
-0000613: 00 ; export kind
-0000614: 70 ; export func index
-0000615: 08 ; string length
-0000616: 6936 342e 726f 7472 i64.rotr ; export name
-000061e: 00 ; export kind
-000061f: 71 ; export func index
-0000620: 07 ; string length
-0000621: 6633 322e 6162 73 f32.abs ; export name
-0000628: 00 ; export kind
-0000629: 72 ; export func index
-000062a: 07 ; string length
-000062b: 6633 322e 6e65 67 f32.neg ; export name
-0000632: 00 ; export kind
-0000633: 73 ; export func index
-0000634: 08 ; string length
-0000635: 6633 322e 6365 696c f32.ceil ; export name
-000063d: 00 ; export kind
-000063e: 74 ; export func index
-000063f: 09 ; string length
-0000640: 6633 322e 666c 6f6f 72 f32.floor ; export name
-0000649: 00 ; export kind
-000064a: 75 ; export func index
-000064b: 09 ; string length
-000064c: 6633 322e 7472 756e 63 f32.trunc ; export name
-0000655: 00 ; export kind
-0000656: 76 ; export func index
-0000657: 0b ; string length
-0000658: 6633 322e 6e65 6172 6573 74 f32.nearest ; export name
-0000663: 00 ; export kind
-0000664: 77 ; export func index
-0000665: 08 ; string length
-0000666: 6633 322e 7371 7274 f32.sqrt ; export name
-000066e: 00 ; export kind
-000066f: 78 ; export func index
-0000670: 07 ; string length
-0000671: 6633 322e 6164 64 f32.add ; export name
-0000678: 00 ; export kind
-0000679: 79 ; export func index
-000067a: 07 ; string length
-000067b: 6633 322e 7375 62 f32.sub ; export name
-0000682: 00 ; export kind
-0000683: 7a ; export func index
-0000684: 07 ; string length
-0000685: 6633 322e 6d75 6c f32.mul ; export name
-000068c: 00 ; export kind
-000068d: 7b ; export func index
-000068e: 07 ; string length
-000068f: 6633 322e 6469 76 f32.div ; export name
-0000696: 00 ; export kind
-0000697: 7c ; export func index
-0000698: 07 ; string length
-0000699: 6633 322e 6d69 6e f32.min ; export name
-00006a0: 00 ; export kind
-00006a1: 7d ; export func index
-00006a2: 07 ; string length
-00006a3: 6633 322e 6d61 78 f32.max ; export name
-00006aa: 00 ; export kind
-00006ab: 7e ; export func index
-00006ac: 0c ; string length
-00006ad: 6633 322e 636f 7079 7369 676e f32.copysign ; export name
-00006b9: 00 ; export kind
-00006ba: 7f ; export func index
-00006bb: 07 ; string length
-00006bc: 6636 342e 6162 73 f64.abs ; export name
-00006c3: 00 ; export kind
-00006c4: 8001 ; export func index
-00006c6: 07 ; string length
-00006c7: 6636 342e 6e65 67 f64.neg ; export name
-00006ce: 00 ; export kind
-00006cf: 8101 ; export func index
-00006d1: 08 ; string length
-00006d2: 6636 342e 6365 696c f64.ceil ; export name
-00006da: 00 ; export kind
-00006db: 8201 ; export func index
-00006dd: 09 ; string length
-00006de: 6636 342e 666c 6f6f 72 f64.floor ; export name
-00006e7: 00 ; export kind
-00006e8: 8301 ; export func index
-00006ea: 09 ; string length
-00006eb: 6636 342e 7472 756e 63 f64.trunc ; export name
-00006f4: 00 ; export kind
-00006f5: 8401 ; export func index
-00006f7: 0b ; string length
-00006f8: 6636 342e 6e65 6172 6573 74 f64.nearest ; export name
-0000703: 00 ; export kind
-0000704: 8501 ; export func index
-0000706: 08 ; string length
-0000707: 6636 342e 7371 7274 f64.sqrt ; export name
-000070f: 00 ; export kind
-0000710: 8601 ; export func index
-0000712: 07 ; string length
-0000713: 6636 342e 6164 64 f64.add ; export name
-000071a: 00 ; export kind
-000071b: 8701 ; export func index
-000071d: 07 ; string length
-000071e: 6636 342e 7375 62 f64.sub ; export name
-0000725: 00 ; export kind
-0000726: 8801 ; export func index
-0000728: 07 ; string length
-0000729: 6636 342e 6d75 6c f64.mul ; export name
-0000730: 00 ; export kind
-0000731: 8901 ; export func index
-0000733: 07 ; string length
-0000734: 6636 342e 6469 76 f64.div ; export name
-000073b: 00 ; export kind
-000073c: 8a01 ; export func index
-000073e: 07 ; string length
-000073f: 6636 342e 6d69 6e f64.min ; export name
-0000746: 00 ; export kind
-0000747: 8b01 ; export func index
-0000749: 07 ; string length
-000074a: 6636 342e 6d61 78 f64.max ; export name
-0000751: 00 ; export kind
-0000752: 8c01 ; export func index
-0000754: 0c ; string length
-0000755: 6636 342e 636f 7079 7369 676e f64.copysign ; export name
-0000761: 00 ; export kind
-0000762: 8d01 ; export func index
-0000764: 0c ; string length
-0000765: 6933 322e 7772 6170 2f69 3634 i32.wrap/i64 ; export name
-0000771: 00 ; export kind
-0000772: 8e01 ; export func index
-0000774: 0f ; string length
-0000775: 6933 322e 7472 756e 635f 732f 6633 32 i32.trunc_s/f32 ; export name
-0000784: 00 ; export kind
-0000785: 8f01 ; export func index
-0000787: 0f ; string length
-0000788: 6933 322e 7472 756e 635f 752f 6633 32 i32.trunc_u/f32 ; export name
-0000797: 00 ; export kind
-0000798: 9001 ; export func index
-000079a: 0f ; string length
-000079b: 6933 322e 7472 756e 635f 732f 6636 34 i32.trunc_s/f64 ; export name
-00007aa: 00 ; export kind
-00007ab: 9101 ; export func index
-00007ad: 0f ; string length
-00007ae: 6933 322e 7472 756e 635f 752f 6636 34 i32.trunc_u/f64 ; export name
-00007bd: 00 ; export kind
-00007be: 9201 ; export func index
-00007c0: 10 ; string length
-00007c1: 6936 342e 6578 7465 6e64 5f73 2f69 3332 i64.extend_s/i32 ; export name
-00007d1: 00 ; export kind
-00007d2: 9301 ; export func index
-00007d4: 10 ; string length
-00007d5: 6936 342e 6578 7465 6e64 5f75 2f69 3332 i64.extend_u/i32 ; export name
-00007e5: 00 ; export kind
-00007e6: 9401 ; export func index
-00007e8: 0f ; string length
-00007e9: 6936 342e 7472 756e 635f 732f 6633 32 i64.trunc_s/f32 ; export name
-00007f8: 00 ; export kind
-00007f9: 9501 ; export func index
-00007fb: 0f ; string length
-00007fc: 6936 342e 7472 756e 635f 752f 6633 32 i64.trunc_u/f32 ; export name
-000080b: 00 ; export kind
-000080c: 9601 ; export func index
-000080e: 0f ; string length
-000080f: 6936 342e 7472 756e 635f 732f 6636 34 i64.trunc_s/f64 ; export name
-000081e: 00 ; export kind
-000081f: 9701 ; export func index
-0000821: 0f ; string length
-0000822: 6936 342e 7472 756e 635f 752f 6636 34 i64.trunc_u/f64 ; export name
-0000831: 00 ; export kind
-0000832: 9801 ; export func index
-0000834: 11 ; string length
-0000835: 6633 322e 636f 6e76 6572 745f 732f 6933 f32.convert_s/i3
-0000845: 32 2 ; export name
-0000846: 00 ; export kind
-0000847: 9901 ; export func index
-0000849: 11 ; string length
-000084a: 6633 322e 636f 6e76 6572 745f 752f 6933 f32.convert_u/i3
-000085a: 32 2 ; export name
-000085b: 00 ; export kind
-000085c: 9a01 ; export func index
-000085e: 11 ; string length
-000085f: 6633 322e 636f 6e76 6572 745f 732f 6936 f32.convert_s/i6
-000086f: 34 4 ; export name
-0000870: 00 ; export kind
-0000871: 9b01 ; export func index
-0000873: 11 ; string length
-0000874: 6633 322e 636f 6e76 6572 745f 752f 6936 f32.convert_u/i6
-0000884: 34 4 ; export name
-0000885: 00 ; export kind
-0000886: 9c01 ; export func index
-0000888: 0e ; string length
-0000889: 6633 322e 6465 6d6f 7465 2f66 3634 f32.demote/f64 ; export name
-0000897: 00 ; export kind
-0000898: 9d01 ; export func index
-000089a: 11 ; string length
-000089b: 6636 342e 636f 6e76 6572 745f 732f 6933 f64.convert_s/i3
-00008ab: 32 2 ; export name
-00008ac: 00 ; export kind
-00008ad: 9e01 ; export func index
-00008af: 11 ; string length
-00008b0: 6636 342e 636f 6e76 6572 745f 752f 6933 f64.convert_u/i3
-00008c0: 32 2 ; export name
-00008c1: 00 ; export kind
-00008c2: 9f01 ; export func index
-00008c4: 11 ; string length
-00008c5: 6636 342e 636f 6e76 6572 745f 732f 6936 f64.convert_s/i6
-00008d5: 34 4 ; export name
-00008d6: 00 ; export kind
-00008d7: a001 ; export func index
-00008d9: 11 ; string length
-00008da: 6636 342e 636f 6e76 6572 745f 752f 6936 f64.convert_u/i6
-00008ea: 34 4 ; export name
-00008eb: 00 ; export kind
-00008ec: a101 ; export func index
-00008ee: 0f ; string length
-00008ef: 6636 342e 7072 6f6d 6f74 652f 6633 32 f64.promote/f32 ; export name
-00008fe: 00 ; export kind
-00008ff: a201 ; export func index
-0000901: 13 ; string length
-0000902: 6933 322e 7265 696e 7465 7270 7265 742f i32.reinterpret/
-0000912: 6633 32 f32 ; export name
-0000915: 00 ; export kind
-0000916: a301 ; export func index
-0000918: 13 ; string length
-0000919: 6633 322e 7265 696e 7465 7270 7265 742f f32.reinterpret/
-0000929: 6933 32 i32 ; export name
-000092c: 00 ; export kind
-000092d: a401 ; export func index
-000092f: 13 ; string length
-0000930: 6936 342e 7265 696e 7465 7270 7265 742f i64.reinterpret/
-0000940: 6636 34 f64 ; export name
-0000943: 00 ; export kind
-0000944: a501 ; export func index
-0000946: 13 ; string length
-0000947: 6636 342e 7265 696e 7465 7270 7265 742f f64.reinterpret/
-0000957: 6936 34 i64 ; export name
-000095a: 00 ; export kind
-000095b: a601 ; export func index
-000095d: 0d ; string length
-000095e: 6933 322e 6578 7465 6e64 385f 73 i32.extend8_s ; export name
-000096b: 00 ; export kind
-000096c: a701 ; export func index
-000096e: 0e ; string length
-000096f: 6933 322e 6578 7465 6e64 3136 5f73 i32.extend16_s ; export name
-000097d: 00 ; export kind
-000097e: a801 ; export func index
-0000980: 0d ; string length
-0000981: 6936 342e 6578 7465 6e64 385f 73 i64.extend8_s ; export name
-000098e: 00 ; export kind
-000098f: a901 ; export func index
-0000991: 0e ; string length
-0000992: 6936 342e 6578 7465 6e64 3136 5f73 i64.extend16_s ; export name
-00009a0: 00 ; export kind
-00009a1: aa01 ; export func index
-00009a3: 0e ; string length
-00009a4: 6936 342e 6578 7465 6e64 3332 5f73 i64.extend32_s ; export name
-00009b2: 00 ; export kind
-00009b3: ab01 ; export func index
-00009b5: 06 ; string length
-00009b6: 616c 6c6f 6361 alloca ; export name
-00009bc: 00 ; export kind
-00009bd: ac01 ; export func index
-00009bf: 09 ; string length
-00009c0: 6272 5f75 6e6c 6573 73 br_unless ; export name
-00009c9: 00 ; export kind
-00009ca: ad01 ; export func index
-00009cc: 09 ; string length
-00009cd: 6361 6c6c 5f68 6f73 74 call_host ; export name
-00009d6: 00 ; export kind
-00009d7: ae01 ; export func index
-00009d9: 04 ; string length
-00009da: 6461 7461 data ; export name
-00009de: 00 ; export kind
-00009df: af01 ; export func index
-00009e1: 09 ; string length
-00009e2: 6472 6f70 5f6b 6565 70 drop_keep ; export name
-00009eb: 00 ; export kind
-00009ec: b001 ; export func index
-00009ee: 13 ; string length
-00009ef: 6933 322e 7472 756e 635f 733a 7361 742f i32.trunc_s:sat/
-00009ff: 6633 32 f32 ; export name
-0000a02: 00 ; export kind
-0000a03: b101 ; export func index
-0000a05: 13 ; string length
-0000a06: 6933 322e 7472 756e 635f 753a 7361 742f i32.trunc_u:sat/
-0000a16: 6633 32 f32 ; export name
-0000a19: 00 ; export kind
-0000a1a: b201 ; export func index
-0000a1c: 13 ; string length
-0000a1d: 6933 322e 7472 756e 635f 733a 7361 742f i32.trunc_s:sat/
-0000a2d: 6636 34 f64 ; export name
-0000a30: 00 ; export kind
-0000a31: b301 ; export func index
-0000a33: 13 ; string length
-0000a34: 6933 322e 7472 756e 635f 753a 7361 742f i32.trunc_u:sat/
-0000a44: 6636 34 f64 ; export name
-0000a47: 00 ; export kind
-0000a48: b401 ; export func index
-0000a4a: 13 ; string length
-0000a4b: 6936 342e 7472 756e 635f 733a 7361 742f i64.trunc_s:sat/
-0000a5b: 6633 32 f32 ; export name
-0000a5e: 00 ; export kind
-0000a5f: b501 ; export func index
-0000a61: 13 ; string length
-0000a62: 6936 342e 7472 756e 635f 753a 7361 742f i64.trunc_u:sat/
-0000a72: 6633 32 f32 ; export name
-0000a75: 00 ; export kind
-0000a76: b601 ; export func index
-0000a78: 13 ; string length
-0000a79: 6936 342e 7472 756e 635f 733a 7361 742f i64.trunc_s:sat/
-0000a89: 6636 34 f64 ; export name
-0000a8c: 00 ; export kind
-0000a8d: b701 ; export func index
-0000a8f: 13 ; string length
-0000a90: 6936 342e 7472 756e 635f 753a 7361 742f i64.trunc_u:sat/
-0000aa0: 6636 34 f64 ; export name
-0000aa3: 00 ; export kind
-0000aa4: b801 ; export func index
-0000aa6: 0f ; string length
-0000aa7: 6933 322e 6174 6f6d 6963 2e6c 6f61 64 i32.atomic.load ; export name
-0000ab6: 00 ; export kind
-0000ab7: b901 ; export func index
-0000ab9: 0f ; string length
-0000aba: 6936 342e 6174 6f6d 6963 2e6c 6f61 64 i64.atomic.load ; export name
-0000ac9: 00 ; export kind
-0000aca: ba01 ; export func index
-0000acc: 12 ; string length
-0000acd: 6933 322e 6174 6f6d 6963 2e6c 6f61 6438 i32.atomic.load8
-0000add: 5f75 _u ; export name
-0000adf: 00 ; export kind
-0000ae0: bb01 ; export func index
-0000ae2: 13 ; string length
-0000ae3: 6933 322e 6174 6f6d 6963 2e6c 6f61 6431 i32.atomic.load1
-0000af3: 365f 75 6_u ; export name
-0000af6: 00 ; export kind
-0000af7: bc01 ; export func index
-0000af9: 12 ; string length
-0000afa: 6936 342e 6174 6f6d 6963 2e6c 6f61 6438 i64.atomic.load8
-0000b0a: 5f75 _u ; export name
-0000b0c: 00 ; export kind
-0000b0d: bd01 ; export func index
-0000b0f: 13 ; string length
-0000b10: 6936 342e 6174 6f6d 6963 2e6c 6f61 6431 i64.atomic.load1
-0000b20: 365f 75 6_u ; export name
-0000b23: 00 ; export kind
-0000b24: be01 ; export func index
-0000b26: 13 ; string length
-0000b27: 6936 342e 6174 6f6d 6963 2e6c 6f61 6433 i64.atomic.load3
-0000b37: 325f 75 2_u ; export name
-0000b3a: 00 ; export kind
-0000b3b: bf01 ; export func index
-0000b3d: 10 ; string length
-0000b3e: 6933 322e 6174 6f6d 6963 2e73 746f 7265 i32.atomic.store ; export name
-0000b4e: 00 ; export kind
-0000b4f: c001 ; export func index
-0000b51: 10 ; string length
-0000b52: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store ; export name
-0000b62: 00 ; export kind
-0000b63: c101 ; export func index
-0000b65: 11 ; string length
-0000b66: 6933 322e 6174 6f6d 6963 2e73 746f 7265 i32.atomic.store
-0000b76: 38 8 ; export name
-0000b77: 00 ; export kind
-0000b78: c201 ; export func index
-0000b7a: 12 ; string length
-0000b7b: 6933 322e 6174 6f6d 6963 2e73 746f 7265 i32.atomic.store
-0000b8b: 3136 16 ; export name
-0000b8d: 00 ; export kind
-0000b8e: c301 ; export func index
-0000b90: 11 ; string length
-0000b91: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store
-0000ba1: 38 8 ; export name
-0000ba2: 00 ; export kind
-0000ba3: c401 ; export func index
-0000ba5: 12 ; string length
-0000ba6: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store
-0000bb6: 3136 16 ; export name
-0000bb8: 00 ; export kind
-0000bb9: c501 ; export func index
-0000bbb: 12 ; string length
-0000bbc: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store
-0000bcc: 3332 32 ; export name
-0000bce: 00 ; export kind
-0000bcf: c601 ; export func index
-0000bd1: 12 ; string length
-0000bd2: 6933 322e 6174 6f6d 6963 2e72 6d77 2e61 i32.atomic.rmw.a
-0000be2: 6464 dd ; export name
-0000be4: 00 ; export kind
-0000be5: c701 ; export func index
-0000be7: 12 ; string length
-0000be8: 6936 342e 6174 6f6d 6963 2e72 6d77 2e61 i64.atomic.rmw.a
-0000bf8: 6464 dd ; export name
-0000bfa: 00 ; export kind
-0000bfb: c801 ; export func index
-0000bfd: 15 ; string length
-0000bfe: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-0000c0e: 752e 6164 64 u.add ; export name
-0000c13: 00 ; export kind
-0000c14: c901 ; export func index
-0000c16: 16 ; string length
-0000c17: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-0000c27: 5f75 2e61 6464 _u.add ; export name
-0000c2d: 00 ; export kind
-0000c2e: ca01 ; export func index
-0000c30: 15 ; string length
-0000c31: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0000c41: 752e 6164 64 u.add ; export name
-0000c46: 00 ; export kind
-0000c47: cb01 ; export func index
-0000c49: 16 ; string length
-0000c4a: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0000c5a: 5f75 2e61 6464 _u.add ; export name
-0000c60: 00 ; export kind
-0000c61: cc01 ; export func index
-0000c63: 16 ; string length
-0000c64: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0000c74: 5f75 2e61 6464 _u.add ; export name
-0000c7a: 00 ; export kind
-0000c7b: cd01 ; export func index
-0000c7d: 12 ; string length
-0000c7e: 6933 322e 6174 6f6d 6963 2e72 6d77 2e73 i32.atomic.rmw.s
-0000c8e: 7562 ub ; export name
-0000c90: 00 ; export kind
-0000c91: ce01 ; export func index
-0000c93: 12 ; string length
-0000c94: 6936 342e 6174 6f6d 6963 2e72 6d77 2e73 i64.atomic.rmw.s
-0000ca4: 7562 ub ; export name
-0000ca6: 00 ; export kind
-0000ca7: cf01 ; export func index
-0000ca9: 15 ; string length
-0000caa: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-0000cba: 752e 7375 62 u.sub ; export name
-0000cbf: 00 ; export kind
-0000cc0: d001 ; export func index
-0000cc2: 16 ; string length
-0000cc3: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-0000cd3: 5f75 2e73 7562 _u.sub ; export name
-0000cd9: 00 ; export kind
-0000cda: d101 ; export func index
-0000cdc: 15 ; string length
-0000cdd: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0000ced: 752e 7375 62 u.sub ; export name
-0000cf2: 00 ; export kind
-0000cf3: d201 ; export func index
-0000cf5: 16 ; string length
-0000cf6: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0000d06: 5f75 2e73 7562 _u.sub ; export name
-0000d0c: 00 ; export kind
-0000d0d: d301 ; export func index
-0000d0f: 16 ; string length
-0000d10: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0000d20: 5f75 2e73 7562 _u.sub ; export name
-0000d26: 00 ; export kind
-0000d27: d401 ; export func index
-0000d29: 12 ; string length
-0000d2a: 6933 322e 6174 6f6d 6963 2e72 6d77 2e61 i32.atomic.rmw.a
-0000d3a: 6e64 nd ; export name
-0000d3c: 00 ; export kind
-0000d3d: d501 ; export func index
-0000d3f: 12 ; string length
-0000d40: 6936 342e 6174 6f6d 6963 2e72 6d77 2e61 i64.atomic.rmw.a
-0000d50: 6e64 nd ; export name
-0000d52: 00 ; export kind
-0000d53: d601 ; export func index
-0000d55: 15 ; string length
-0000d56: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-0000d66: 752e 616e 64 u.and ; export name
-0000d6b: 00 ; export kind
-0000d6c: d701 ; export func index
-0000d6e: 16 ; string length
-0000d6f: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-0000d7f: 5f75 2e61 6e64 _u.and ; export name
-0000d85: 00 ; export kind
-0000d86: d801 ; export func index
-0000d88: 15 ; string length
-0000d89: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0000d99: 752e 616e 64 u.and ; export name
-0000d9e: 00 ; export kind
-0000d9f: d901 ; export func index
-0000da1: 16 ; string length
-0000da2: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0000db2: 5f75 2e61 6e64 _u.and ; export name
-0000db8: 00 ; export kind
-0000db9: da01 ; export func index
-0000dbb: 16 ; string length
-0000dbc: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0000dcc: 5f75 2e61 6e64 _u.and ; export name
-0000dd2: 00 ; export kind
-0000dd3: db01 ; export func index
-0000dd5: 11 ; string length
-0000dd6: 6933 322e 6174 6f6d 6963 2e72 6d77 2e6f i32.atomic.rmw.o
-0000de6: 72 r ; export name
-0000de7: 00 ; export kind
-0000de8: dc01 ; export func index
-0000dea: 11 ; string length
-0000deb: 6936 342e 6174 6f6d 6963 2e72 6d77 2e6f i64.atomic.rmw.o
-0000dfb: 72 r ; export name
-0000dfc: 00 ; export kind
-0000dfd: dd01 ; export func index
-0000dff: 14 ; string length
-0000e00: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-0000e10: 752e 6f72 u.or ; export name
-0000e14: 00 ; export kind
-0000e15: de01 ; export func index
-0000e17: 15 ; string length
-0000e18: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-0000e28: 5f75 2e6f 72 _u.or ; export name
-0000e2d: 00 ; export kind
-0000e2e: df01 ; export func index
-0000e30: 14 ; string length
-0000e31: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0000e41: 752e 6f72 u.or ; export name
-0000e45: 00 ; export kind
-0000e46: e001 ; export func index
-0000e48: 15 ; string length
-0000e49: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0000e59: 5f75 2e6f 72 _u.or ; export name
-0000e5e: 00 ; export kind
-0000e5f: e101 ; export func index
-0000e61: 15 ; string length
-0000e62: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0000e72: 5f75 2e6f 72 _u.or ; export name
-0000e77: 00 ; export kind
-0000e78: e201 ; export func index
-0000e7a: 12 ; string length
-0000e7b: 6933 322e 6174 6f6d 6963 2e72 6d77 2e78 i32.atomic.rmw.x
-0000e8b: 6f72 or ; export name
-0000e8d: 00 ; export kind
-0000e8e: e301 ; export func index
-0000e90: 12 ; string length
-0000e91: 6936 342e 6174 6f6d 6963 2e72 6d77 2e78 i64.atomic.rmw.x
-0000ea1: 6f72 or ; export name
-0000ea3: 00 ; export kind
-0000ea4: e401 ; export func index
-0000ea6: 15 ; string length
-0000ea7: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-0000eb7: 752e 786f 72 u.xor ; export name
-0000ebc: 00 ; export kind
-0000ebd: e501 ; export func index
-0000ebf: 16 ; string length
-0000ec0: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-0000ed0: 5f75 2e78 6f72 _u.xor ; export name
-0000ed6: 00 ; export kind
-0000ed7: e601 ; export func index
-0000ed9: 15 ; string length
-0000eda: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0000eea: 752e 786f 72 u.xor ; export name
-0000eef: 00 ; export kind
-0000ef0: e701 ; export func index
-0000ef2: 16 ; string length
-0000ef3: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0000f03: 5f75 2e78 6f72 _u.xor ; export name
-0000f09: 00 ; export kind
-0000f0a: e801 ; export func index
-0000f0c: 16 ; string length
-0000f0d: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0000f1d: 5f75 2e78 6f72 _u.xor ; export name
-0000f23: 00 ; export kind
-0000f24: e901 ; export func index
-0000f26: 13 ; string length
-0000f27: 6933 322e 6174 6f6d 6963 2e72 6d77 2e78 i32.atomic.rmw.x
-0000f37: 6368 67 chg ; export name
-0000f3a: 00 ; export kind
-0000f3b: ea01 ; export func index
-0000f3d: 13 ; string length
-0000f3e: 6936 342e 6174 6f6d 6963 2e72 6d77 2e78 i64.atomic.rmw.x
-0000f4e: 6368 67 chg ; export name
-0000f51: 00 ; export kind
-0000f52: eb01 ; export func index
-0000f54: 16 ; string length
-0000f55: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-0000f65: 752e 7863 6867 u.xchg ; export name
-0000f6b: 00 ; export kind
-0000f6c: ec01 ; export func index
-0000f6e: 17 ; string length
-0000f6f: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-0000f7f: 5f75 2e78 6368 67 _u.xchg ; export name
-0000f86: 00 ; export kind
-0000f87: ed01 ; export func index
-0000f89: 16 ; string length
-0000f8a: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0000f9a: 752e 7863 6867 u.xchg ; export name
-0000fa0: 00 ; export kind
-0000fa1: ee01 ; export func index
-0000fa3: 17 ; string length
-0000fa4: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0000fb4: 5f75 2e78 6368 67 _u.xchg ; export name
-0000fbb: 00 ; export kind
-0000fbc: ef01 ; export func index
-0000fbe: 17 ; string length
-0000fbf: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0000fcf: 5f75 2e78 6368 67 _u.xchg ; export name
-0000fd6: 00 ; export kind
-0000fd7: f001 ; export func index
-0000fd9: 16 ; string length
-0000fda: 6933 322e 6174 6f6d 6963 2e72 6d77 2e63 i32.atomic.rmw.c
-0000fea: 6d70 7863 6867 mpxchg ; export name
-0000ff0: 00 ; export kind
-0000ff1: f101 ; export func index
-0000ff3: 16 ; string length
-0000ff4: 6936 342e 6174 6f6d 6963 2e72 6d77 2e63 i64.atomic.rmw.c
-0001004: 6d70 7863 6867 mpxchg ; export name
-000100a: 00 ; export kind
-000100b: f201 ; export func index
-000100d: 19 ; string length
-000100e: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
-000101e: 752e 636d 7078 6368 67 u.cmpxchg ; export name
-0001027: 00 ; export kind
-0001028: f301 ; export func index
-000102a: 1a ; string length
-000102b: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
-000103b: 5f75 2e63 6d70 7863 6867 _u.cmpxchg ; export name
-0001045: 00 ; export kind
-0001046: f401 ; export func index
-0001048: 19 ; string length
-0001049: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
-0001059: 752e 636d 7078 6368 67 u.cmpxchg ; export name
-0001062: 00 ; export kind
-0001063: f501 ; export func index
-0001065: 1a ; string length
-0001066: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
-0001076: 5f75 2e63 6d70 7863 6867 _u.cmpxchg ; export name
-0001080: 00 ; export kind
-0001081: f601 ; export func index
-0001083: 1a ; string length
-0001084: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
-0001094: 5f75 2e63 6d70 7863 6867 _u.cmpxchg ; export name
-000109e: 00 ; export kind
-000109f: f701 ; export func index
-; move data: [135, 10a1) -> [136, 10a2)
-0000134: ec1e ; FIXUP section size
+0000136: 07 ; section code
+0000137: 00 ; section size (guess)
+0000138: f901 ; num exports
+000013a: 0b ; string length
+000013b: 756e 7265 6163 6861 626c 65 unreachable ; export name
+0000146: 00 ; export kind
+0000147: 02 ; export func index
+0000148: 02 ; string length
+0000149: 6272 br ; export name
+000014b: 00 ; export kind
+000014c: 03 ; export func index
+000014d: 08 ; string length
+000014e: 6272 5f74 6162 6c65 br_table ; export name
+0000156: 00 ; export kind
+0000157: 04 ; export func index
+0000158: 06 ; string length
+0000159: 7265 7475 726e return ; export name
+000015f: 00 ; export kind
+0000160: 05 ; export func index
+0000161: 04 ; string length
+0000162: 6361 6c6c call ; export name
+0000166: 00 ; export kind
+0000167: 06 ; export func index
+0000168: 0d ; string length
+0000169: 6361 6c6c 5f69 6e64 6972 6563 74 call_indirect ; export name
+0000176: 00 ; export kind
+0000177: 07 ; export func index
+0000178: 04 ; string length
+0000179: 6472 6f70 drop ; export name
+000017d: 00 ; export kind
+000017e: 08 ; export func index
+000017f: 06 ; string length
+0000180: 7365 6c65 6374 select ; export name
+0000186: 00 ; export kind
+0000187: 09 ; export func index
+0000188: 09 ; string length
+0000189: 6765 745f 6c6f 6361 6c get_local ; export name
+0000192: 00 ; export kind
+0000193: 0a ; export func index
+0000194: 09 ; string length
+0000195: 7365 745f 6c6f 6361 6c set_local ; export name
+000019e: 00 ; export kind
+000019f: 0b ; export func index
+00001a0: 09 ; string length
+00001a1: 7465 655f 6c6f 6361 6c tee_local ; export name
+00001aa: 00 ; export kind
+00001ab: 0c ; export func index
+00001ac: 0a ; string length
+00001ad: 6765 745f 676c 6f62 616c get_global ; export name
+00001b7: 00 ; export kind
+00001b8: 0d ; export func index
+00001b9: 0a ; string length
+00001ba: 7365 745f 676c 6f62 616c set_global ; export name
+00001c4: 00 ; export kind
+00001c5: 0e ; export func index
+00001c6: 08 ; string length
+00001c7: 6933 322e 6c6f 6164 i32.load ; export name
+00001cf: 00 ; export kind
+00001d0: 0f ; export func index
+00001d1: 08 ; string length
+00001d2: 6936 342e 6c6f 6164 i64.load ; export name
+00001da: 00 ; export kind
+00001db: 10 ; export func index
+00001dc: 08 ; string length
+00001dd: 6633 322e 6c6f 6164 f32.load ; export name
+00001e5: 00 ; export kind
+00001e6: 11 ; export func index
+00001e7: 08 ; string length
+00001e8: 6636 342e 6c6f 6164 f64.load ; export name
+00001f0: 00 ; export kind
+00001f1: 12 ; export func index
+00001f2: 0b ; string length
+00001f3: 6933 322e 6c6f 6164 385f 73 i32.load8_s ; export name
+00001fe: 00 ; export kind
+00001ff: 13 ; export func index
+0000200: 0b ; string length
+0000201: 6933 322e 6c6f 6164 385f 75 i32.load8_u ; export name
+000020c: 00 ; export kind
+000020d: 14 ; export func index
+000020e: 0c ; string length
+000020f: 6933 322e 6c6f 6164 3136 5f73 i32.load16_s ; export name
+000021b: 00 ; export kind
+000021c: 15 ; export func index
+000021d: 0c ; string length
+000021e: 6933 322e 6c6f 6164 3136 5f75 i32.load16_u ; export name
+000022a: 00 ; export kind
+000022b: 16 ; export func index
+000022c: 0b ; string length
+000022d: 6936 342e 6c6f 6164 385f 73 i64.load8_s ; export name
+0000238: 00 ; export kind
+0000239: 17 ; export func index
+000023a: 0b ; string length
+000023b: 6936 342e 6c6f 6164 385f 75 i64.load8_u ; export name
+0000246: 00 ; export kind
+0000247: 18 ; export func index
+0000248: 0c ; string length
+0000249: 6936 342e 6c6f 6164 3136 5f73 i64.load16_s ; export name
+0000255: 00 ; export kind
+0000256: 19 ; export func index
+0000257: 0c ; string length
+0000258: 6936 342e 6c6f 6164 3136 5f75 i64.load16_u ; export name
+0000264: 00 ; export kind
+0000265: 1a ; export func index
+0000266: 0c ; string length
+0000267: 6936 342e 6c6f 6164 3332 5f73 i64.load32_s ; export name
+0000273: 00 ; export kind
+0000274: 1b ; export func index
+0000275: 0c ; string length
+0000276: 6936 342e 6c6f 6164 3332 5f75 i64.load32_u ; export name
+0000282: 00 ; export kind
+0000283: 1c ; export func index
+0000284: 09 ; string length
+0000285: 6933 322e 7374 6f72 65 i32.store ; export name
+000028e: 00 ; export kind
+000028f: 1d ; export func index
+0000290: 09 ; string length
+0000291: 6936 342e 7374 6f72 65 i64.store ; export name
+000029a: 00 ; export kind
+000029b: 1e ; export func index
+000029c: 09 ; string length
+000029d: 6633 322e 7374 6f72 65 f32.store ; export name
+00002a6: 00 ; export kind
+00002a7: 1f ; export func index
+00002a8: 09 ; string length
+00002a9: 6636 342e 7374 6f72 65 f64.store ; export name
+00002b2: 00 ; export kind
+00002b3: 20 ; export func index
+00002b4: 0a ; string length
+00002b5: 6933 322e 7374 6f72 6538 i32.store8 ; export name
+00002bf: 00 ; export kind
+00002c0: 21 ; export func index
+00002c1: 0b ; string length
+00002c2: 6933 322e 7374 6f72 6531 36 i32.store16 ; export name
+00002cd: 00 ; export kind
+00002ce: 22 ; export func index
+00002cf: 0a ; string length
+00002d0: 6936 342e 7374 6f72 6538 i64.store8 ; export name
+00002da: 00 ; export kind
+00002db: 23 ; export func index
+00002dc: 0b ; string length
+00002dd: 6936 342e 7374 6f72 6531 36 i64.store16 ; export name
+00002e8: 00 ; export kind
+00002e9: 24 ; export func index
+00002ea: 0b ; string length
+00002eb: 6936 342e 7374 6f72 6533 32 i64.store32 ; export name
+00002f6: 00 ; export kind
+00002f7: 25 ; export func index
+00002f8: 0e ; string length
+00002f9: 6375 7272 656e 745f 6d65 6d6f 7279 current_memory ; export name
+0000307: 00 ; export kind
+0000308: 26 ; export func index
+0000309: 0b ; string length
+000030a: 6772 6f77 5f6d 656d 6f72 79 grow_memory ; export name
+0000315: 00 ; export kind
+0000316: 27 ; export func index
+0000317: 09 ; string length
+0000318: 6933 322e 636f 6e73 74 i32.const ; export name
+0000321: 00 ; export kind
+0000322: 28 ; export func index
+0000323: 09 ; string length
+0000324: 6936 342e 636f 6e73 74 i64.const ; export name
+000032d: 00 ; export kind
+000032e: 29 ; export func index
+000032f: 09 ; string length
+0000330: 6633 322e 636f 6e73 74 f32.const ; export name
+0000339: 00 ; export kind
+000033a: 2a ; export func index
+000033b: 09 ; string length
+000033c: 6636 342e 636f 6e73 74 f64.const ; export name
+0000345: 00 ; export kind
+0000346: 2b ; export func index
+0000347: 07 ; string length
+0000348: 6933 322e 6571 7a i32.eqz ; export name
+000034f: 00 ; export kind
+0000350: 2c ; export func index
+0000351: 06 ; string length
+0000352: 6933 322e 6571 i32.eq ; export name
+0000358: 00 ; export kind
+0000359: 2d ; export func index
+000035a: 06 ; string length
+000035b: 6933 322e 6e65 i32.ne ; export name
+0000361: 00 ; export kind
+0000362: 2e ; export func index
+0000363: 08 ; string length
+0000364: 6933 322e 6c74 5f73 i32.lt_s ; export name
+000036c: 00 ; export kind
+000036d: 2f ; export func index
+000036e: 08 ; string length
+000036f: 6933 322e 6c74 5f75 i32.lt_u ; export name
+0000377: 00 ; export kind
+0000378: 30 ; export func index
+0000379: 08 ; string length
+000037a: 6933 322e 6774 5f73 i32.gt_s ; export name
+0000382: 00 ; export kind
+0000383: 31 ; export func index
+0000384: 08 ; string length
+0000385: 6933 322e 6774 5f75 i32.gt_u ; export name
+000038d: 00 ; export kind
+000038e: 32 ; export func index
+000038f: 08 ; string length
+0000390: 6933 322e 6c65 5f73 i32.le_s ; export name
+0000398: 00 ; export kind
+0000399: 33 ; export func index
+000039a: 08 ; string length
+000039b: 6933 322e 6c65 5f75 i32.le_u ; export name
+00003a3: 00 ; export kind
+00003a4: 34 ; export func index
+00003a5: 08 ; string length
+00003a6: 6933 322e 6765 5f73 i32.ge_s ; export name
+00003ae: 00 ; export kind
+00003af: 35 ; export func index
+00003b0: 08 ; string length
+00003b1: 6933 322e 6765 5f75 i32.ge_u ; export name
+00003b9: 00 ; export kind
+00003ba: 36 ; export func index
+00003bb: 07 ; string length
+00003bc: 6936 342e 6571 7a i64.eqz ; export name
+00003c3: 00 ; export kind
+00003c4: 37 ; export func index
+00003c5: 06 ; string length
+00003c6: 6936 342e 6571 i64.eq ; export name
+00003cc: 00 ; export kind
+00003cd: 38 ; export func index
+00003ce: 06 ; string length
+00003cf: 6936 342e 6e65 i64.ne ; export name
+00003d5: 00 ; export kind
+00003d6: 39 ; export func index
+00003d7: 08 ; string length
+00003d8: 6936 342e 6c74 5f73 i64.lt_s ; export name
+00003e0: 00 ; export kind
+00003e1: 3a ; export func index
+00003e2: 08 ; string length
+00003e3: 6936 342e 6c74 5f75 i64.lt_u ; export name
+00003eb: 00 ; export kind
+00003ec: 3b ; export func index
+00003ed: 08 ; string length
+00003ee: 6936 342e 6774 5f73 i64.gt_s ; export name
+00003f6: 00 ; export kind
+00003f7: 3c ; export func index
+00003f8: 08 ; string length
+00003f9: 6936 342e 6774 5f75 i64.gt_u ; export name
+0000401: 00 ; export kind
+0000402: 3d ; export func index
+0000403: 08 ; string length
+0000404: 6936 342e 6c65 5f73 i64.le_s ; export name
+000040c: 00 ; export kind
+000040d: 3e ; export func index
+000040e: 08 ; string length
+000040f: 6936 342e 6c65 5f75 i64.le_u ; export name
+0000417: 00 ; export kind
+0000418: 3f ; export func index
+0000419: 08 ; string length
+000041a: 6936 342e 6765 5f73 i64.ge_s ; export name
+0000422: 00 ; export kind
+0000423: 40 ; export func index
+0000424: 08 ; string length
+0000425: 6936 342e 6765 5f75 i64.ge_u ; export name
+000042d: 00 ; export kind
+000042e: 41 ; export func index
+000042f: 06 ; string length
+0000430: 6633 322e 6571 f32.eq ; export name
+0000436: 00 ; export kind
+0000437: 42 ; export func index
+0000438: 06 ; string length
+0000439: 6633 322e 6e65 f32.ne ; export name
+000043f: 00 ; export kind
+0000440: 43 ; export func index
+0000441: 06 ; string length
+0000442: 6633 322e 6c74 f32.lt ; export name
+0000448: 00 ; export kind
+0000449: 44 ; export func index
+000044a: 06 ; string length
+000044b: 6633 322e 6774 f32.gt ; export name
+0000451: 00 ; export kind
+0000452: 45 ; export func index
+0000453: 06 ; string length
+0000454: 6633 322e 6c65 f32.le ; export name
+000045a: 00 ; export kind
+000045b: 46 ; export func index
+000045c: 06 ; string length
+000045d: 6633 322e 6765 f32.ge ; export name
+0000463: 00 ; export kind
+0000464: 47 ; export func index
+0000465: 06 ; string length
+0000466: 6636 342e 6571 f64.eq ; export name
+000046c: 00 ; export kind
+000046d: 48 ; export func index
+000046e: 06 ; string length
+000046f: 6636 342e 6e65 f64.ne ; export name
+0000475: 00 ; export kind
+0000476: 49 ; export func index
+0000477: 06 ; string length
+0000478: 6636 342e 6c74 f64.lt ; export name
+000047e: 00 ; export kind
+000047f: 4a ; export func index
+0000480: 06 ; string length
+0000481: 6636 342e 6774 f64.gt ; export name
+0000487: 00 ; export kind
+0000488: 4b ; export func index
+0000489: 06 ; string length
+000048a: 6636 342e 6c65 f64.le ; export name
+0000490: 00 ; export kind
+0000491: 4c ; export func index
+0000492: 06 ; string length
+0000493: 6636 342e 6765 f64.ge ; export name
+0000499: 00 ; export kind
+000049a: 4d ; export func index
+000049b: 07 ; string length
+000049c: 6933 322e 636c 7a i32.clz ; export name
+00004a3: 00 ; export kind
+00004a4: 4e ; export func index
+00004a5: 07 ; string length
+00004a6: 6933 322e 6374 7a i32.ctz ; export name
+00004ad: 00 ; export kind
+00004ae: 4f ; export func index
+00004af: 0a ; string length
+00004b0: 6933 322e 706f 7063 6e74 i32.popcnt ; export name
+00004ba: 00 ; export kind
+00004bb: 50 ; export func index
+00004bc: 07 ; string length
+00004bd: 6933 322e 6164 64 i32.add ; export name
+00004c4: 00 ; export kind
+00004c5: 51 ; export func index
+00004c6: 07 ; string length
+00004c7: 6933 322e 7375 62 i32.sub ; export name
+00004ce: 00 ; export kind
+00004cf: 52 ; export func index
+00004d0: 07 ; string length
+00004d1: 6933 322e 6d75 6c i32.mul ; export name
+00004d8: 00 ; export kind
+00004d9: 53 ; export func index
+00004da: 09 ; string length
+00004db: 6933 322e 6469 765f 73 i32.div_s ; export name
+00004e4: 00 ; export kind
+00004e5: 54 ; export func index
+00004e6: 09 ; string length
+00004e7: 6933 322e 6469 765f 75 i32.div_u ; export name
+00004f0: 00 ; export kind
+00004f1: 55 ; export func index
+00004f2: 09 ; string length
+00004f3: 6933 322e 7265 6d5f 73 i32.rem_s ; export name
+00004fc: 00 ; export kind
+00004fd: 56 ; export func index
+00004fe: 09 ; string length
+00004ff: 6933 322e 7265 6d5f 75 i32.rem_u ; export name
+0000508: 00 ; export kind
+0000509: 57 ; export func index
+000050a: 07 ; string length
+000050b: 6933 322e 616e 64 i32.and ; export name
+0000512: 00 ; export kind
+0000513: 58 ; export func index
+0000514: 06 ; string length
+0000515: 6933 322e 6f72 i32.or ; export name
+000051b: 00 ; export kind
+000051c: 59 ; export func index
+000051d: 07 ; string length
+000051e: 6933 322e 786f 72 i32.xor ; export name
+0000525: 00 ; export kind
+0000526: 5a ; export func index
+0000527: 07 ; string length
+0000528: 6933 322e 7368 6c i32.shl ; export name
+000052f: 00 ; export kind
+0000530: 5b ; export func index
+0000531: 09 ; string length
+0000532: 6933 322e 7368 725f 73 i32.shr_s ; export name
+000053b: 00 ; export kind
+000053c: 5c ; export func index
+000053d: 09 ; string length
+000053e: 6933 322e 7368 725f 75 i32.shr_u ; export name
+0000547: 00 ; export kind
+0000548: 5d ; export func index
+0000549: 08 ; string length
+000054a: 6933 322e 726f 746c i32.rotl ; export name
+0000552: 00 ; export kind
+0000553: 5e ; export func index
+0000554: 08 ; string length
+0000555: 6933 322e 726f 7472 i32.rotr ; export name
+000055d: 00 ; export kind
+000055e: 5f ; export func index
+000055f: 07 ; string length
+0000560: 6936 342e 636c 7a i64.clz ; export name
+0000567: 00 ; export kind
+0000568: 60 ; export func index
+0000569: 07 ; string length
+000056a: 6936 342e 6374 7a i64.ctz ; export name
+0000571: 00 ; export kind
+0000572: 61 ; export func index
+0000573: 0a ; string length
+0000574: 6936 342e 706f 7063 6e74 i64.popcnt ; export name
+000057e: 00 ; export kind
+000057f: 62 ; export func index
+0000580: 07 ; string length
+0000581: 6936 342e 6164 64 i64.add ; export name
+0000588: 00 ; export kind
+0000589: 63 ; export func index
+000058a: 07 ; string length
+000058b: 6936 342e 7375 62 i64.sub ; export name
+0000592: 00 ; export kind
+0000593: 64 ; export func index
+0000594: 07 ; string length
+0000595: 6936 342e 6d75 6c i64.mul ; export name
+000059c: 00 ; export kind
+000059d: 65 ; export func index
+000059e: 09 ; string length
+000059f: 6936 342e 6469 765f 73 i64.div_s ; export name
+00005a8: 00 ; export kind
+00005a9: 66 ; export func index
+00005aa: 09 ; string length
+00005ab: 6936 342e 6469 765f 75 i64.div_u ; export name
+00005b4: 00 ; export kind
+00005b5: 67 ; export func index
+00005b6: 09 ; string length
+00005b7: 6936 342e 7265 6d5f 73 i64.rem_s ; export name
+00005c0: 00 ; export kind
+00005c1: 68 ; export func index
+00005c2: 09 ; string length
+00005c3: 6936 342e 7265 6d5f 75 i64.rem_u ; export name
+00005cc: 00 ; export kind
+00005cd: 69 ; export func index
+00005ce: 07 ; string length
+00005cf: 6936 342e 616e 64 i64.and ; export name
+00005d6: 00 ; export kind
+00005d7: 6a ; export func index
+00005d8: 06 ; string length
+00005d9: 6936 342e 6f72 i64.or ; export name
+00005df: 00 ; export kind
+00005e0: 6b ; export func index
+00005e1: 07 ; string length
+00005e2: 6936 342e 786f 72 i64.xor ; export name
+00005e9: 00 ; export kind
+00005ea: 6c ; export func index
+00005eb: 07 ; string length
+00005ec: 6936 342e 7368 6c i64.shl ; export name
+00005f3: 00 ; export kind
+00005f4: 6d ; export func index
+00005f5: 09 ; string length
+00005f6: 6936 342e 7368 725f 73 i64.shr_s ; export name
+00005ff: 00 ; export kind
+0000600: 6e ; export func index
+0000601: 09 ; string length
+0000602: 6936 342e 7368 725f 75 i64.shr_u ; export name
+000060b: 00 ; export kind
+000060c: 6f ; export func index
+000060d: 08 ; string length
+000060e: 6936 342e 726f 746c i64.rotl ; export name
+0000616: 00 ; export kind
+0000617: 70 ; export func index
+0000618: 08 ; string length
+0000619: 6936 342e 726f 7472 i64.rotr ; export name
+0000621: 00 ; export kind
+0000622: 71 ; export func index
+0000623: 07 ; string length
+0000624: 6633 322e 6162 73 f32.abs ; export name
+000062b: 00 ; export kind
+000062c: 72 ; export func index
+000062d: 07 ; string length
+000062e: 6633 322e 6e65 67 f32.neg ; export name
+0000635: 00 ; export kind
+0000636: 73 ; export func index
+0000637: 08 ; string length
+0000638: 6633 322e 6365 696c f32.ceil ; export name
+0000640: 00 ; export kind
+0000641: 74 ; export func index
+0000642: 09 ; string length
+0000643: 6633 322e 666c 6f6f 72 f32.floor ; export name
+000064c: 00 ; export kind
+000064d: 75 ; export func index
+000064e: 09 ; string length
+000064f: 6633 322e 7472 756e 63 f32.trunc ; export name
+0000658: 00 ; export kind
+0000659: 76 ; export func index
+000065a: 0b ; string length
+000065b: 6633 322e 6e65 6172 6573 74 f32.nearest ; export name
+0000666: 00 ; export kind
+0000667: 77 ; export func index
+0000668: 08 ; string length
+0000669: 6633 322e 7371 7274 f32.sqrt ; export name
+0000671: 00 ; export kind
+0000672: 78 ; export func index
+0000673: 07 ; string length
+0000674: 6633 322e 6164 64 f32.add ; export name
+000067b: 00 ; export kind
+000067c: 79 ; export func index
+000067d: 07 ; string length
+000067e: 6633 322e 7375 62 f32.sub ; export name
+0000685: 00 ; export kind
+0000686: 7a ; export func index
+0000687: 07 ; string length
+0000688: 6633 322e 6d75 6c f32.mul ; export name
+000068f: 00 ; export kind
+0000690: 7b ; export func index
+0000691: 07 ; string length
+0000692: 6633 322e 6469 76 f32.div ; export name
+0000699: 00 ; export kind
+000069a: 7c ; export func index
+000069b: 07 ; string length
+000069c: 6633 322e 6d69 6e f32.min ; export name
+00006a3: 00 ; export kind
+00006a4: 7d ; export func index
+00006a5: 07 ; string length
+00006a6: 6633 322e 6d61 78 f32.max ; export name
+00006ad: 00 ; export kind
+00006ae: 7e ; export func index
+00006af: 0c ; string length
+00006b0: 6633 322e 636f 7079 7369 676e f32.copysign ; export name
+00006bc: 00 ; export kind
+00006bd: 7f ; export func index
+00006be: 07 ; string length
+00006bf: 6636 342e 6162 73 f64.abs ; export name
+00006c6: 00 ; export kind
+00006c7: 8001 ; export func index
+00006c9: 07 ; string length
+00006ca: 6636 342e 6e65 67 f64.neg ; export name
+00006d1: 00 ; export kind
+00006d2: 8101 ; export func index
+00006d4: 08 ; string length
+00006d5: 6636 342e 6365 696c f64.ceil ; export name
+00006dd: 00 ; export kind
+00006de: 8201 ; export func index
+00006e0: 09 ; string length
+00006e1: 6636 342e 666c 6f6f 72 f64.floor ; export name
+00006ea: 00 ; export kind
+00006eb: 8301 ; export func index
+00006ed: 09 ; string length
+00006ee: 6636 342e 7472 756e 63 f64.trunc ; export name
+00006f7: 00 ; export kind
+00006f8: 8401 ; export func index
+00006fa: 0b ; string length
+00006fb: 6636 342e 6e65 6172 6573 74 f64.nearest ; export name
+0000706: 00 ; export kind
+0000707: 8501 ; export func index
+0000709: 08 ; string length
+000070a: 6636 342e 7371 7274 f64.sqrt ; export name
+0000712: 00 ; export kind
+0000713: 8601 ; export func index
+0000715: 07 ; string length
+0000716: 6636 342e 6164 64 f64.add ; export name
+000071d: 00 ; export kind
+000071e: 8701 ; export func index
+0000720: 07 ; string length
+0000721: 6636 342e 7375 62 f64.sub ; export name
+0000728: 00 ; export kind
+0000729: 8801 ; export func index
+000072b: 07 ; string length
+000072c: 6636 342e 6d75 6c f64.mul ; export name
+0000733: 00 ; export kind
+0000734: 8901 ; export func index
+0000736: 07 ; string length
+0000737: 6636 342e 6469 76 f64.div ; export name
+000073e: 00 ; export kind
+000073f: 8a01 ; export func index
+0000741: 07 ; string length
+0000742: 6636 342e 6d69 6e f64.min ; export name
+0000749: 00 ; export kind
+000074a: 8b01 ; export func index
+000074c: 07 ; string length
+000074d: 6636 342e 6d61 78 f64.max ; export name
+0000754: 00 ; export kind
+0000755: 8c01 ; export func index
+0000757: 0c ; string length
+0000758: 6636 342e 636f 7079 7369 676e f64.copysign ; export name
+0000764: 00 ; export kind
+0000765: 8d01 ; export func index
+0000767: 0c ; string length
+0000768: 6933 322e 7772 6170 2f69 3634 i32.wrap/i64 ; export name
+0000774: 00 ; export kind
+0000775: 8e01 ; export func index
+0000777: 0f ; string length
+0000778: 6933 322e 7472 756e 635f 732f 6633 32 i32.trunc_s/f32 ; export name
+0000787: 00 ; export kind
+0000788: 8f01 ; export func index
+000078a: 0f ; string length
+000078b: 6933 322e 7472 756e 635f 752f 6633 32 i32.trunc_u/f32 ; export name
+000079a: 00 ; export kind
+000079b: 9001 ; export func index
+000079d: 0f ; string length
+000079e: 6933 322e 7472 756e 635f 732f 6636 34 i32.trunc_s/f64 ; export name
+00007ad: 00 ; export kind
+00007ae: 9101 ; export func index
+00007b0: 0f ; string length
+00007b1: 6933 322e 7472 756e 635f 752f 6636 34 i32.trunc_u/f64 ; export name
+00007c0: 00 ; export kind
+00007c1: 9201 ; export func index
+00007c3: 10 ; string length
+00007c4: 6936 342e 6578 7465 6e64 5f73 2f69 3332 i64.extend_s/i32 ; export name
+00007d4: 00 ; export kind
+00007d5: 9301 ; export func index
+00007d7: 10 ; string length
+00007d8: 6936 342e 6578 7465 6e64 5f75 2f69 3332 i64.extend_u/i32 ; export name
+00007e8: 00 ; export kind
+00007e9: 9401 ; export func index
+00007eb: 0f ; string length
+00007ec: 6936 342e 7472 756e 635f 732f 6633 32 i64.trunc_s/f32 ; export name
+00007fb: 00 ; export kind
+00007fc: 9501 ; export func index
+00007fe: 0f ; string length
+00007ff: 6936 342e 7472 756e 635f 752f 6633 32 i64.trunc_u/f32 ; export name
+000080e: 00 ; export kind
+000080f: 9601 ; export func index
+0000811: 0f ; string length
+0000812: 6936 342e 7472 756e 635f 732f 6636 34 i64.trunc_s/f64 ; export name
+0000821: 00 ; export kind
+0000822: 9701 ; export func index
+0000824: 0f ; string length
+0000825: 6936 342e 7472 756e 635f 752f 6636 34 i64.trunc_u/f64 ; export name
+0000834: 00 ; export kind
+0000835: 9801 ; export func index
+0000837: 11 ; string length
+0000838: 6633 322e 636f 6e76 6572 745f 732f 6933 f32.convert_s/i3
+0000848: 32 2 ; export name
+0000849: 00 ; export kind
+000084a: 9901 ; export func index
+000084c: 11 ; string length
+000084d: 6633 322e 636f 6e76 6572 745f 752f 6933 f32.convert_u/i3
+000085d: 32 2 ; export name
+000085e: 00 ; export kind
+000085f: 9a01 ; export func index
+0000861: 11 ; string length
+0000862: 6633 322e 636f 6e76 6572 745f 732f 6936 f32.convert_s/i6
+0000872: 34 4 ; export name
+0000873: 00 ; export kind
+0000874: 9b01 ; export func index
+0000876: 11 ; string length
+0000877: 6633 322e 636f 6e76 6572 745f 752f 6936 f32.convert_u/i6
+0000887: 34 4 ; export name
+0000888: 00 ; export kind
+0000889: 9c01 ; export func index
+000088b: 0e ; string length
+000088c: 6633 322e 6465 6d6f 7465 2f66 3634 f32.demote/f64 ; export name
+000089a: 00 ; export kind
+000089b: 9d01 ; export func index
+000089d: 11 ; string length
+000089e: 6636 342e 636f 6e76 6572 745f 732f 6933 f64.convert_s/i3
+00008ae: 32 2 ; export name
+00008af: 00 ; export kind
+00008b0: 9e01 ; export func index
+00008b2: 11 ; string length
+00008b3: 6636 342e 636f 6e76 6572 745f 752f 6933 f64.convert_u/i3
+00008c3: 32 2 ; export name
+00008c4: 00 ; export kind
+00008c5: 9f01 ; export func index
+00008c7: 11 ; string length
+00008c8: 6636 342e 636f 6e76 6572 745f 732f 6936 f64.convert_s/i6
+00008d8: 34 4 ; export name
+00008d9: 00 ; export kind
+00008da: a001 ; export func index
+00008dc: 11 ; string length
+00008dd: 6636 342e 636f 6e76 6572 745f 752f 6936 f64.convert_u/i6
+00008ed: 34 4 ; export name
+00008ee: 00 ; export kind
+00008ef: a101 ; export func index
+00008f1: 0f ; string length
+00008f2: 6636 342e 7072 6f6d 6f74 652f 6633 32 f64.promote/f32 ; export name
+0000901: 00 ; export kind
+0000902: a201 ; export func index
+0000904: 13 ; string length
+0000905: 6933 322e 7265 696e 7465 7270 7265 742f i32.reinterpret/
+0000915: 6633 32 f32 ; export name
+0000918: 00 ; export kind
+0000919: a301 ; export func index
+000091b: 13 ; string length
+000091c: 6633 322e 7265 696e 7465 7270 7265 742f f32.reinterpret/
+000092c: 6933 32 i32 ; export name
+000092f: 00 ; export kind
+0000930: a401 ; export func index
+0000932: 13 ; string length
+0000933: 6936 342e 7265 696e 7465 7270 7265 742f i64.reinterpret/
+0000943: 6636 34 f64 ; export name
+0000946: 00 ; export kind
+0000947: a501 ; export func index
+0000949: 13 ; string length
+000094a: 6636 342e 7265 696e 7465 7270 7265 742f f64.reinterpret/
+000095a: 6936 34 i64 ; export name
+000095d: 00 ; export kind
+000095e: a601 ; export func index
+0000960: 0d ; string length
+0000961: 6933 322e 6578 7465 6e64 385f 73 i32.extend8_s ; export name
+000096e: 00 ; export kind
+000096f: a701 ; export func index
+0000971: 0e ; string length
+0000972: 6933 322e 6578 7465 6e64 3136 5f73 i32.extend16_s ; export name
+0000980: 00 ; export kind
+0000981: a801 ; export func index
+0000983: 0d ; string length
+0000984: 6936 342e 6578 7465 6e64 385f 73 i64.extend8_s ; export name
+0000991: 00 ; export kind
+0000992: a901 ; export func index
+0000994: 0e ; string length
+0000995: 6936 342e 6578 7465 6e64 3136 5f73 i64.extend16_s ; export name
+00009a3: 00 ; export kind
+00009a4: aa01 ; export func index
+00009a6: 0e ; string length
+00009a7: 6936 342e 6578 7465 6e64 3332 5f73 i64.extend32_s ; export name
+00009b5: 00 ; export kind
+00009b6: ab01 ; export func index
+00009b8: 06 ; string length
+00009b9: 616c 6c6f 6361 alloca ; export name
+00009bf: 00 ; export kind
+00009c0: ac01 ; export func index
+00009c2: 09 ; string length
+00009c3: 6272 5f75 6e6c 6573 73 br_unless ; export name
+00009cc: 00 ; export kind
+00009cd: ad01 ; export func index
+00009cf: 09 ; string length
+00009d0: 6361 6c6c 5f68 6f73 74 call_host ; export name
+00009d9: 00 ; export kind
+00009da: ae01 ; export func index
+00009dc: 04 ; string length
+00009dd: 6461 7461 data ; export name
+00009e1: 00 ; export kind
+00009e2: af01 ; export func index
+00009e4: 09 ; string length
+00009e5: 6472 6f70 5f6b 6565 70 drop_keep ; export name
+00009ee: 00 ; export kind
+00009ef: b001 ; export func index
+00009f1: 13 ; string length
+00009f2: 6933 322e 7472 756e 635f 733a 7361 742f i32.trunc_s:sat/
+0000a02: 6633 32 f32 ; export name
+0000a05: 00 ; export kind
+0000a06: b101 ; export func index
+0000a08: 13 ; string length
+0000a09: 6933 322e 7472 756e 635f 753a 7361 742f i32.trunc_u:sat/
+0000a19: 6633 32 f32 ; export name
+0000a1c: 00 ; export kind
+0000a1d: b201 ; export func index
+0000a1f: 13 ; string length
+0000a20: 6933 322e 7472 756e 635f 733a 7361 742f i32.trunc_s:sat/
+0000a30: 6636 34 f64 ; export name
+0000a33: 00 ; export kind
+0000a34: b301 ; export func index
+0000a36: 13 ; string length
+0000a37: 6933 322e 7472 756e 635f 753a 7361 742f i32.trunc_u:sat/
+0000a47: 6636 34 f64 ; export name
+0000a4a: 00 ; export kind
+0000a4b: b401 ; export func index
+0000a4d: 13 ; string length
+0000a4e: 6936 342e 7472 756e 635f 733a 7361 742f i64.trunc_s:sat/
+0000a5e: 6633 32 f32 ; export name
+0000a61: 00 ; export kind
+0000a62: b501 ; export func index
+0000a64: 13 ; string length
+0000a65: 6936 342e 7472 756e 635f 753a 7361 742f i64.trunc_u:sat/
+0000a75: 6633 32 f32 ; export name
+0000a78: 00 ; export kind
+0000a79: b601 ; export func index
+0000a7b: 13 ; string length
+0000a7c: 6936 342e 7472 756e 635f 733a 7361 742f i64.trunc_s:sat/
+0000a8c: 6636 34 f64 ; export name
+0000a8f: 00 ; export kind
+0000a90: b701 ; export func index
+0000a92: 13 ; string length
+0000a93: 6936 342e 7472 756e 635f 753a 7361 742f i64.trunc_u:sat/
+0000aa3: 6636 34 f64 ; export name
+0000aa6: 00 ; export kind
+0000aa7: b801 ; export func index
+0000aa9: 04 ; string length
+0000aaa: 7761 6b65 wake ; export name
+0000aae: 00 ; export kind
+0000aaf: b901 ; export func index
+0000ab1: 08 ; string length
+0000ab2: 6933 322e 7761 6974 i32.wait ; export name
+0000aba: 00 ; export kind
+0000abb: ba01 ; export func index
+0000abd: 08 ; string length
+0000abe: 6936 342e 7761 6974 i64.wait ; export name
+0000ac6: 00 ; export kind
+0000ac7: bb01 ; export func index
+0000ac9: 0f ; string length
+0000aca: 6933 322e 6174 6f6d 6963 2e6c 6f61 64 i32.atomic.load ; export name
+0000ad9: 00 ; export kind
+0000ada: bc01 ; export func index
+0000adc: 0f ; string length
+0000add: 6936 342e 6174 6f6d 6963 2e6c 6f61 64 i64.atomic.load ; export name
+0000aec: 00 ; export kind
+0000aed: bd01 ; export func index
+0000aef: 12 ; string length
+0000af0: 6933 322e 6174 6f6d 6963 2e6c 6f61 6438 i32.atomic.load8
+0000b00: 5f75 _u ; export name
+0000b02: 00 ; export kind
+0000b03: be01 ; export func index
+0000b05: 13 ; string length
+0000b06: 6933 322e 6174 6f6d 6963 2e6c 6f61 6431 i32.atomic.load1
+0000b16: 365f 75 6_u ; export name
+0000b19: 00 ; export kind
+0000b1a: bf01 ; export func index
+0000b1c: 12 ; string length
+0000b1d: 6936 342e 6174 6f6d 6963 2e6c 6f61 6438 i64.atomic.load8
+0000b2d: 5f75 _u ; export name
+0000b2f: 00 ; export kind
+0000b30: c001 ; export func index
+0000b32: 13 ; string length
+0000b33: 6936 342e 6174 6f6d 6963 2e6c 6f61 6431 i64.atomic.load1
+0000b43: 365f 75 6_u ; export name
+0000b46: 00 ; export kind
+0000b47: c101 ; export func index
+0000b49: 13 ; string length
+0000b4a: 6936 342e 6174 6f6d 6963 2e6c 6f61 6433 i64.atomic.load3
+0000b5a: 325f 75 2_u ; export name
+0000b5d: 00 ; export kind
+0000b5e: c201 ; export func index
+0000b60: 10 ; string length
+0000b61: 6933 322e 6174 6f6d 6963 2e73 746f 7265 i32.atomic.store ; export name
+0000b71: 00 ; export kind
+0000b72: c301 ; export func index
+0000b74: 10 ; string length
+0000b75: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store ; export name
+0000b85: 00 ; export kind
+0000b86: c401 ; export func index
+0000b88: 11 ; string length
+0000b89: 6933 322e 6174 6f6d 6963 2e73 746f 7265 i32.atomic.store
+0000b99: 38 8 ; export name
+0000b9a: 00 ; export kind
+0000b9b: c501 ; export func index
+0000b9d: 12 ; string length
+0000b9e: 6933 322e 6174 6f6d 6963 2e73 746f 7265 i32.atomic.store
+0000bae: 3136 16 ; export name
+0000bb0: 00 ; export kind
+0000bb1: c601 ; export func index
+0000bb3: 11 ; string length
+0000bb4: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store
+0000bc4: 38 8 ; export name
+0000bc5: 00 ; export kind
+0000bc6: c701 ; export func index
+0000bc8: 12 ; string length
+0000bc9: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store
+0000bd9: 3136 16 ; export name
+0000bdb: 00 ; export kind
+0000bdc: c801 ; export func index
+0000bde: 12 ; string length
+0000bdf: 6936 342e 6174 6f6d 6963 2e73 746f 7265 i64.atomic.store
+0000bef: 3332 32 ; export name
+0000bf1: 00 ; export kind
+0000bf2: c901 ; export func index
+0000bf4: 12 ; string length
+0000bf5: 6933 322e 6174 6f6d 6963 2e72 6d77 2e61 i32.atomic.rmw.a
+0000c05: 6464 dd ; export name
+0000c07: 00 ; export kind
+0000c08: ca01 ; export func index
+0000c0a: 12 ; string length
+0000c0b: 6936 342e 6174 6f6d 6963 2e72 6d77 2e61 i64.atomic.rmw.a
+0000c1b: 6464 dd ; export name
+0000c1d: 00 ; export kind
+0000c1e: cb01 ; export func index
+0000c20: 15 ; string length
+0000c21: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0000c31: 752e 6164 64 u.add ; export name
+0000c36: 00 ; export kind
+0000c37: cc01 ; export func index
+0000c39: 16 ; string length
+0000c3a: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+0000c4a: 5f75 2e61 6464 _u.add ; export name
+0000c50: 00 ; export kind
+0000c51: cd01 ; export func index
+0000c53: 15 ; string length
+0000c54: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+0000c64: 752e 6164 64 u.add ; export name
+0000c69: 00 ; export kind
+0000c6a: ce01 ; export func index
+0000c6c: 16 ; string length
+0000c6d: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0000c7d: 5f75 2e61 6464 _u.add ; export name
+0000c83: 00 ; export kind
+0000c84: cf01 ; export func index
+0000c86: 16 ; string length
+0000c87: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+0000c97: 5f75 2e61 6464 _u.add ; export name
+0000c9d: 00 ; export kind
+0000c9e: d001 ; export func index
+0000ca0: 12 ; string length
+0000ca1: 6933 322e 6174 6f6d 6963 2e72 6d77 2e73 i32.atomic.rmw.s
+0000cb1: 7562 ub ; export name
+0000cb3: 00 ; export kind
+0000cb4: d101 ; export func index
+0000cb6: 12 ; string length
+0000cb7: 6936 342e 6174 6f6d 6963 2e72 6d77 2e73 i64.atomic.rmw.s
+0000cc7: 7562 ub ; export name
+0000cc9: 00 ; export kind
+0000cca: d201 ; export func index
+0000ccc: 15 ; string length
+0000ccd: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0000cdd: 752e 7375 62 u.sub ; export name
+0000ce2: 00 ; export kind
+0000ce3: d301 ; export func index
+0000ce5: 16 ; string length
+0000ce6: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+0000cf6: 5f75 2e73 7562 _u.sub ; export name
+0000cfc: 00 ; export kind
+0000cfd: d401 ; export func index
+0000cff: 15 ; string length
+0000d00: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+0000d10: 752e 7375 62 u.sub ; export name
+0000d15: 00 ; export kind
+0000d16: d501 ; export func index
+0000d18: 16 ; string length
+0000d19: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0000d29: 5f75 2e73 7562 _u.sub ; export name
+0000d2f: 00 ; export kind
+0000d30: d601 ; export func index
+0000d32: 16 ; string length
+0000d33: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+0000d43: 5f75 2e73 7562 _u.sub ; export name
+0000d49: 00 ; export kind
+0000d4a: d701 ; export func index
+0000d4c: 12 ; string length
+0000d4d: 6933 322e 6174 6f6d 6963 2e72 6d77 2e61 i32.atomic.rmw.a
+0000d5d: 6e64 nd ; export name
+0000d5f: 00 ; export kind
+0000d60: d801 ; export func index
+0000d62: 12 ; string length
+0000d63: 6936 342e 6174 6f6d 6963 2e72 6d77 2e61 i64.atomic.rmw.a
+0000d73: 6e64 nd ; export name
+0000d75: 00 ; export kind
+0000d76: d901 ; export func index
+0000d78: 15 ; string length
+0000d79: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0000d89: 752e 616e 64 u.and ; export name
+0000d8e: 00 ; export kind
+0000d8f: da01 ; export func index
+0000d91: 16 ; string length
+0000d92: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+0000da2: 5f75 2e61 6e64 _u.and ; export name
+0000da8: 00 ; export kind
+0000da9: db01 ; export func index
+0000dab: 15 ; string length
+0000dac: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+0000dbc: 752e 616e 64 u.and ; export name
+0000dc1: 00 ; export kind
+0000dc2: dc01 ; export func index
+0000dc4: 16 ; string length
+0000dc5: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0000dd5: 5f75 2e61 6e64 _u.and ; export name
+0000ddb: 00 ; export kind
+0000ddc: dd01 ; export func index
+0000dde: 16 ; string length
+0000ddf: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+0000def: 5f75 2e61 6e64 _u.and ; export name
+0000df5: 00 ; export kind
+0000df6: de01 ; export func index
+0000df8: 11 ; string length
+0000df9: 6933 322e 6174 6f6d 6963 2e72 6d77 2e6f i32.atomic.rmw.o
+0000e09: 72 r ; export name
+0000e0a: 00 ; export kind
+0000e0b: df01 ; export func index
+0000e0d: 11 ; string length
+0000e0e: 6936 342e 6174 6f6d 6963 2e72 6d77 2e6f i64.atomic.rmw.o
+0000e1e: 72 r ; export name
+0000e1f: 00 ; export kind
+0000e20: e001 ; export func index
+0000e22: 14 ; string length
+0000e23: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0000e33: 752e 6f72 u.or ; export name
+0000e37: 00 ; export kind
+0000e38: e101 ; export func index
+0000e3a: 15 ; string length
+0000e3b: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+0000e4b: 5f75 2e6f 72 _u.or ; export name
+0000e50: 00 ; export kind
+0000e51: e201 ; export func index
+0000e53: 14 ; string length
+0000e54: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+0000e64: 752e 6f72 u.or ; export name
+0000e68: 00 ; export kind
+0000e69: e301 ; export func index
+0000e6b: 15 ; string length
+0000e6c: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0000e7c: 5f75 2e6f 72 _u.or ; export name
+0000e81: 00 ; export kind
+0000e82: e401 ; export func index
+0000e84: 15 ; string length
+0000e85: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+0000e95: 5f75 2e6f 72 _u.or ; export name
+0000e9a: 00 ; export kind
+0000e9b: e501 ; export func index
+0000e9d: 12 ; string length
+0000e9e: 6933 322e 6174 6f6d 6963 2e72 6d77 2e78 i32.atomic.rmw.x
+0000eae: 6f72 or ; export name
+0000eb0: 00 ; export kind
+0000eb1: e601 ; export func index
+0000eb3: 12 ; string length
+0000eb4: 6936 342e 6174 6f6d 6963 2e72 6d77 2e78 i64.atomic.rmw.x
+0000ec4: 6f72 or ; export name
+0000ec6: 00 ; export kind
+0000ec7: e701 ; export func index
+0000ec9: 15 ; string length
+0000eca: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0000eda: 752e 786f 72 u.xor ; export name
+0000edf: 00 ; export kind
+0000ee0: e801 ; export func index
+0000ee2: 16 ; string length
+0000ee3: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+0000ef3: 5f75 2e78 6f72 _u.xor ; export name
+0000ef9: 00 ; export kind
+0000efa: e901 ; export func index
+0000efc: 15 ; string length
+0000efd: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+0000f0d: 752e 786f 72 u.xor ; export name
+0000f12: 00 ; export kind
+0000f13: ea01 ; export func index
+0000f15: 16 ; string length
+0000f16: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0000f26: 5f75 2e78 6f72 _u.xor ; export name
+0000f2c: 00 ; export kind
+0000f2d: eb01 ; export func index
+0000f2f: 16 ; string length
+0000f30: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+0000f40: 5f75 2e78 6f72 _u.xor ; export name
+0000f46: 00 ; export kind
+0000f47: ec01 ; export func index
+0000f49: 13 ; string length
+0000f4a: 6933 322e 6174 6f6d 6963 2e72 6d77 2e78 i32.atomic.rmw.x
+0000f5a: 6368 67 chg ; export name
+0000f5d: 00 ; export kind
+0000f5e: ed01 ; export func index
+0000f60: 13 ; string length
+0000f61: 6936 342e 6174 6f6d 6963 2e72 6d77 2e78 i64.atomic.rmw.x
+0000f71: 6368 67 chg ; export name
+0000f74: 00 ; export kind
+0000f75: ee01 ; export func index
+0000f77: 16 ; string length
+0000f78: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0000f88: 752e 7863 6867 u.xchg ; export name
+0000f8e: 00 ; export kind
+0000f8f: ef01 ; export func index
+0000f91: 17 ; string length
+0000f92: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+0000fa2: 5f75 2e78 6368 67 _u.xchg ; export name
+0000fa9: 00 ; export kind
+0000faa: f001 ; export func index
+0000fac: 16 ; string length
+0000fad: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+0000fbd: 752e 7863 6867 u.xchg ; export name
+0000fc3: 00 ; export kind
+0000fc4: f101 ; export func index
+0000fc6: 17 ; string length
+0000fc7: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0000fd7: 5f75 2e78 6368 67 _u.xchg ; export name
+0000fde: 00 ; export kind
+0000fdf: f201 ; export func index
+0000fe1: 17 ; string length
+0000fe2: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+0000ff2: 5f75 2e78 6368 67 _u.xchg ; export name
+0000ff9: 00 ; export kind
+0000ffa: f301 ; export func index
+0000ffc: 16 ; string length
+0000ffd: 6933 322e 6174 6f6d 6963 2e72 6d77 2e63 i32.atomic.rmw.c
+000100d: 6d70 7863 6867 mpxchg ; export name
+0001013: 00 ; export kind
+0001014: f401 ; export func index
+0001016: 16 ; string length
+0001017: 6936 342e 6174 6f6d 6963 2e72 6d77 2e63 i64.atomic.rmw.c
+0001027: 6d70 7863 6867 mpxchg ; export name
+000102d: 00 ; export kind
+000102e: f501 ; export func index
+0001030: 19 ; string length
+0001031: 6933 322e 6174 6f6d 6963 2e72 6d77 385f i32.atomic.rmw8_
+0001041: 752e 636d 7078 6368 67 u.cmpxchg ; export name
+000104a: 00 ; export kind
+000104b: f601 ; export func index
+000104d: 1a ; string length
+000104e: 6933 322e 6174 6f6d 6963 2e72 6d77 3136 i32.atomic.rmw16
+000105e: 5f75 2e63 6d70 7863 6867 _u.cmpxchg ; export name
+0001068: 00 ; export kind
+0001069: f701 ; export func index
+000106b: 19 ; string length
+000106c: 6936 342e 6174 6f6d 6963 2e72 6d77 385f i64.atomic.rmw8_
+000107c: 752e 636d 7078 6368 67 u.cmpxchg ; export name
+0001085: 00 ; export kind
+0001086: f801 ; export func index
+0001088: 1a ; string length
+0001089: 6936 342e 6174 6f6d 6963 2e72 6d77 3136 i64.atomic.rmw16
+0001099: 5f75 2e63 6d70 7863 6867 _u.cmpxchg ; export name
+00010a3: 00 ; export kind
+00010a4: f901 ; export func index
+00010a6: 1a ; string length
+00010a7: 6936 342e 6174 6f6d 6963 2e72 6d77 3332 i64.atomic.rmw32
+00010b7: 5f75 2e63 6d70 7863 6867 _u.cmpxchg ; export name
+00010c1: 00 ; export kind
+00010c2: fa01 ; export func index
+; move data: [138, 10c4) -> [139, 10c5)
+0000137: 8c1f ; FIXUP section size
; section "Elem" (9)
-00010a2: 09 ; section code
-00010a3: 00 ; section size (guess)
-00010a4: 01 ; num elem segments
+00010c5: 09 ; section code
+00010c6: 00 ; section size (guess)
+00010c7: 01 ; num elem segments
; elem segment header 0
-00010a5: 00 ; table index
-00010a6: 41 ; i32.const
-00010a7: 00 ; i32 literal
-00010a8: 0b ; end
-00010a9: 02 ; num function indices
-00010aa: 01 ; function index
-00010ab: 01 ; function index
-00010a3: 08 ; FIXUP section size
+00010c8: 00 ; table index
+00010c9: 41 ; i32.const
+00010ca: 00 ; i32 literal
+00010cb: 0b ; end
+00010cc: 02 ; num function indices
+00010cd: 01 ; function index
+00010ce: 01 ; function index
+00010c6: 08 ; FIXUP section size
; section "Code" (10)
-00010ac: 0a ; section code
-00010ad: 00 ; section size (guess)
-00010ae: f701 ; num functions
+00010cf: 0a ; section code
+00010d0: 00 ; section size (guess)
+00010d1: fa01 ; num functions
; function body 0
-00010b0: 00 ; func body size (guess)
-00010b1: 00 ; local decl count
-00010b2: 0b ; end
-00010b0: 02 ; FIXUP func body size
+00010d3: 00 ; func body size (guess)
+00010d4: 00 ; local decl count
+00010d5: 0b ; end
+00010d3: 02 ; FIXUP func body size
; function body 1
-00010b3: 00 ; func body size (guess)
-00010b4: 00 ; local decl count
-00010b5: 00 ; unreachable
-00010b6: 0b ; end
-00010b3: 03 ; FIXUP func body size
+00010d6: 00 ; func body size (guess)
+00010d7: 00 ; local decl count
+00010d8: 00 ; unreachable
+00010d9: 0b ; end
+00010d6: 03 ; FIXUP func body size
; function body 2
-00010b7: 00 ; func body size (guess)
-00010b8: 00 ; local decl count
-00010b9: 0c ; br
-00010ba: 00 ; break depth
-00010bb: 0b ; end
-00010b7: 04 ; FIXUP func body size
+00010da: 00 ; func body size (guess)
+00010db: 00 ; local decl count
+00010dc: 0c ; br
+00010dd: 00 ; break depth
+00010de: 0b ; end
+00010da: 04 ; FIXUP func body size
; function body 3
-00010bc: 00 ; func body size (guess)
-00010bd: 00 ; local decl count
-00010be: 41 ; i32.const
-00010bf: 01 ; i32 literal
-00010c0: 0e ; br_table
-00010c1: 00 ; num targets
-00010c2: 00 ; break depth for default
-00010c3: 0b ; end
-00010bc: 07 ; FIXUP func body size
+00010df: 00 ; func body size (guess)
+00010e0: 00 ; local decl count
+00010e1: 41 ; i32.const
+00010e2: 01 ; i32 literal
+00010e3: 0e ; br_table
+00010e4: 00 ; num targets
+00010e5: 00 ; break depth for default
+00010e6: 0b ; end
+00010df: 07 ; FIXUP func body size
; function body 4
-00010c4: 00 ; func body size (guess)
-00010c5: 00 ; local decl count
-00010c6: 0f ; return
-00010c7: 0b ; end
-00010c4: 03 ; FIXUP func body size
+00010e7: 00 ; func body size (guess)
+00010e8: 00 ; local decl count
+00010e9: 0f ; return
+00010ea: 0b ; end
+00010e7: 03 ; FIXUP func body size
; function body 5
-00010c8: 00 ; func body size (guess)
-00010c9: 00 ; local decl count
-00010ca: 10 ; call
-00010cb: 01 ; function index
-00010cc: 0b ; end
-00010c8: 04 ; FIXUP func body size
+00010eb: 00 ; func body size (guess)
+00010ec: 00 ; local decl count
+00010ed: 10 ; call
+00010ee: 01 ; function index
+00010ef: 0b ; end
+00010eb: 04 ; FIXUP func body size
; function body 6
-00010cd: 00 ; func body size (guess)
-00010ce: 00 ; local decl count
-00010cf: 41 ; i32.const
-00010d0: 01 ; i32 literal
-00010d1: 11 ; call_indirect
-00010d2: 00 ; signature index
-00010d3: 00 ; call_indirect reserved
-00010d4: 0b ; end
-00010cd: 07 ; FIXUP func body size
+00010f0: 00 ; func body size (guess)
+00010f1: 00 ; local decl count
+00010f2: 41 ; i32.const
+00010f3: 01 ; i32 literal
+00010f4: 11 ; call_indirect
+00010f5: 00 ; signature index
+00010f6: 00 ; call_indirect reserved
+00010f7: 0b ; end
+00010f0: 07 ; FIXUP func body size
; function body 7
-00010d5: 00 ; func body size (guess)
-00010d6: 00 ; local decl count
-00010d7: 41 ; i32.const
-00010d8: 01 ; i32 literal
-00010d9: 1a ; drop
-00010da: 0b ; end
-00010d5: 05 ; FIXUP func body size
+00010f8: 00 ; func body size (guess)
+00010f9: 00 ; local decl count
+00010fa: 41 ; i32.const
+00010fb: 01 ; i32 literal
+00010fc: 1a ; drop
+00010fd: 0b ; end
+00010f8: 05 ; FIXUP func body size
; function body 8
-00010db: 00 ; func body size (guess)
-00010dc: 00 ; local decl count
-00010dd: 41 ; i32.const
-00010de: 01 ; i32 literal
-00010df: 41 ; i32.const
-00010e0: 02 ; i32 literal
-00010e1: 41 ; i32.const
-00010e2: 03 ; i32 literal
-00010e3: 1b ; select
-00010e4: 1a ; drop
-00010e5: 0b ; end
-00010db: 0a ; FIXUP func body size
+00010fe: 00 ; func body size (guess)
+00010ff: 00 ; local decl count
+0001100: 41 ; i32.const
+0001101: 01 ; i32 literal
+0001102: 41 ; i32.const
+0001103: 02 ; i32 literal
+0001104: 41 ; i32.const
+0001105: 03 ; i32 literal
+0001106: 1b ; select
+0001107: 1a ; drop
+0001108: 0b ; end
+00010fe: 0a ; FIXUP func body size
; function body 9
-00010e6: 00 ; func body size (guess)
-00010e7: 01 ; local decl count
-00010e8: 01 ; local type count
-00010e9: 7f ; i32
-00010ea: 20 ; get_local
-00010eb: 00 ; local index
-00010ec: 1a ; drop
-00010ed: 0b ; end
-00010e6: 07 ; FIXUP func body size
+0001109: 00 ; func body size (guess)
+000110a: 01 ; local decl count
+000110b: 01 ; local type count
+000110c: 7f ; i32
+000110d: 20 ; get_local
+000110e: 00 ; local index
+000110f: 1a ; drop
+0001110: 0b ; end
+0001109: 07 ; FIXUP func body size
; function body 10
-00010ee: 00 ; func body size (guess)
-00010ef: 01 ; local decl count
-00010f0: 01 ; local type count
-00010f1: 7f ; i32
-00010f2: 41 ; i32.const
-00010f3: 01 ; i32 literal
-00010f4: 21 ; set_local
-00010f5: 00 ; local index
-00010f6: 0b ; end
-00010ee: 08 ; FIXUP func body size
+0001111: 00 ; func body size (guess)
+0001112: 01 ; local decl count
+0001113: 01 ; local type count
+0001114: 7f ; i32
+0001115: 41 ; i32.const
+0001116: 01 ; i32 literal
+0001117: 21 ; set_local
+0001118: 00 ; local index
+0001119: 0b ; end
+0001111: 08 ; FIXUP func body size
; function body 11
-00010f7: 00 ; func body size (guess)
-00010f8: 01 ; local decl count
-00010f9: 01 ; local type count
-00010fa: 7f ; i32
-00010fb: 41 ; i32.const
-00010fc: 01 ; i32 literal
-00010fd: 22 ; tee_local
-00010fe: 00 ; local index
-00010ff: 1a ; drop
-0001100: 0b ; end
-00010f7: 09 ; FIXUP func body size
+000111a: 00 ; func body size (guess)
+000111b: 01 ; local decl count
+000111c: 01 ; local type count
+000111d: 7f ; i32
+000111e: 41 ; i32.const
+000111f: 01 ; i32 literal
+0001120: 22 ; tee_local
+0001121: 00 ; local index
+0001122: 1a ; drop
+0001123: 0b ; end
+000111a: 09 ; FIXUP func body size
; function body 12
-0001101: 00 ; func body size (guess)
-0001102: 00 ; local decl count
-0001103: 23 ; get_global
-0001104: 00 ; global index
-0001105: 1a ; drop
-0001106: 0b ; end
-0001101: 05 ; FIXUP func body size
+0001124: 00 ; func body size (guess)
+0001125: 00 ; local decl count
+0001126: 23 ; get_global
+0001127: 00 ; global index
+0001128: 1a ; drop
+0001129: 0b ; end
+0001124: 05 ; FIXUP func body size
; function body 13
-0001107: 00 ; func body size (guess)
-0001108: 00 ; local decl count
-0001109: 41 ; i32.const
-000110a: 01 ; i32 literal
-000110b: 24 ; set_global
-000110c: 00 ; global index
-000110d: 0b ; end
-0001107: 06 ; FIXUP func body size
+000112a: 00 ; func body size (guess)
+000112b: 00 ; local decl count
+000112c: 41 ; i32.const
+000112d: 01 ; i32 literal
+000112e: 24 ; set_global
+000112f: 00 ; global index
+0001130: 0b ; end
+000112a: 06 ; FIXUP func body size
; function body 14
-000110e: 00 ; func body size (guess)
-000110f: 00 ; local decl count
-0001110: 41 ; i32.const
-0001111: 01 ; i32 literal
-0001112: 28 ; i32.load
-0001113: 02 ; alignment
-0001114: 02 ; load offset
-0001115: 1a ; drop
-0001116: 0b ; end
-000110e: 08 ; FIXUP func body size
+0001131: 00 ; func body size (guess)
+0001132: 00 ; local decl count
+0001133: 41 ; i32.const
+0001134: 01 ; i32 literal
+0001135: 28 ; i32.load
+0001136: 02 ; alignment
+0001137: 02 ; load offset
+0001138: 1a ; drop
+0001139: 0b ; end
+0001131: 08 ; FIXUP func body size
; function body 15
-0001117: 00 ; func body size (guess)
-0001118: 00 ; local decl count
-0001119: 41 ; i32.const
-000111a: 01 ; i32 literal
-000111b: 29 ; i64.load
-000111c: 03 ; alignment
-000111d: 02 ; load offset
-000111e: 1a ; drop
-000111f: 0b ; end
-0001117: 08 ; FIXUP func body size
+000113a: 00 ; func body size (guess)
+000113b: 00 ; local decl count
+000113c: 41 ; i32.const
+000113d: 01 ; i32 literal
+000113e: 29 ; i64.load
+000113f: 03 ; alignment
+0001140: 02 ; load offset
+0001141: 1a ; drop
+0001142: 0b ; end
+000113a: 08 ; FIXUP func body size
; function body 16
-0001120: 00 ; func body size (guess)
-0001121: 00 ; local decl count
-0001122: 41 ; i32.const
-0001123: 01 ; i32 literal
-0001124: 2a ; f32.load
-0001125: 02 ; alignment
-0001126: 02 ; load offset
-0001127: 1a ; drop
-0001128: 0b ; end
-0001120: 08 ; FIXUP func body size
+0001143: 00 ; func body size (guess)
+0001144: 00 ; local decl count
+0001145: 41 ; i32.const
+0001146: 01 ; i32 literal
+0001147: 2a ; f32.load
+0001148: 02 ; alignment
+0001149: 02 ; load offset
+000114a: 1a ; drop
+000114b: 0b ; end
+0001143: 08 ; FIXUP func body size
; function body 17
-0001129: 00 ; func body size (guess)
-000112a: 00 ; local decl count
-000112b: 41 ; i32.const
-000112c: 01 ; i32 literal
-000112d: 2b ; f64.load
-000112e: 03 ; alignment
-000112f: 02 ; load offset
-0001130: 1a ; drop
-0001131: 0b ; end
-0001129: 08 ; FIXUP func body size
+000114c: 00 ; func body size (guess)
+000114d: 00 ; local decl count
+000114e: 41 ; i32.const
+000114f: 01 ; i32 literal
+0001150: 2b ; f64.load
+0001151: 03 ; alignment
+0001152: 02 ; load offset
+0001153: 1a ; drop
+0001154: 0b ; end
+000114c: 08 ; FIXUP func body size
; function body 18
-0001132: 00 ; func body size (guess)
-0001133: 00 ; local decl count
-0001134: 41 ; i32.const
-0001135: 01 ; i32 literal
-0001136: 2c ; i32.load8_s
-0001137: 00 ; alignment
-0001138: 02 ; load offset
-0001139: 1a ; drop
-000113a: 0b ; end
-0001132: 08 ; FIXUP func body size
+0001155: 00 ; func body size (guess)
+0001156: 00 ; local decl count
+0001157: 41 ; i32.const
+0001158: 01 ; i32 literal
+0001159: 2c ; i32.load8_s
+000115a: 00 ; alignment
+000115b: 02 ; load offset
+000115c: 1a ; drop
+000115d: 0b ; end
+0001155: 08 ; FIXUP func body size
; function body 19
-000113b: 00 ; func body size (guess)
-000113c: 00 ; local decl count
-000113d: 41 ; i32.const
-000113e: 01 ; i32 literal
-000113f: 2d ; i32.load8_u
-0001140: 00 ; alignment
-0001141: 02 ; load offset
-0001142: 1a ; drop
-0001143: 0b ; end
-000113b: 08 ; FIXUP func body size
+000115e: 00 ; func body size (guess)
+000115f: 00 ; local decl count
+0001160: 41 ; i32.const
+0001161: 01 ; i32 literal
+0001162: 2d ; i32.load8_u
+0001163: 00 ; alignment
+0001164: 02 ; load offset
+0001165: 1a ; drop
+0001166: 0b ; end
+000115e: 08 ; FIXUP func body size
; function body 20
-0001144: 00 ; func body size (guess)
-0001145: 00 ; local decl count
-0001146: 41 ; i32.const
-0001147: 01 ; i32 literal
-0001148: 2e ; i32.load16_s
-0001149: 01 ; alignment
-000114a: 02 ; load offset
-000114b: 1a ; drop
-000114c: 0b ; end
-0001144: 08 ; FIXUP func body size
+0001167: 00 ; func body size (guess)
+0001168: 00 ; local decl count
+0001169: 41 ; i32.const
+000116a: 01 ; i32 literal
+000116b: 2e ; i32.load16_s
+000116c: 01 ; alignment
+000116d: 02 ; load offset
+000116e: 1a ; drop
+000116f: 0b ; end
+0001167: 08 ; FIXUP func body size
; function body 21
-000114d: 00 ; func body size (guess)
-000114e: 00 ; local decl count
-000114f: 41 ; i32.const
-0001150: 01 ; i32 literal
-0001151: 2f ; i32.load16_u
-0001152: 01 ; alignment
-0001153: 02 ; load offset
-0001154: 1a ; drop
-0001155: 0b ; end
-000114d: 08 ; FIXUP func body size
+0001170: 00 ; func body size (guess)
+0001171: 00 ; local decl count
+0001172: 41 ; i32.const
+0001173: 01 ; i32 literal
+0001174: 2f ; i32.load16_u
+0001175: 01 ; alignment
+0001176: 02 ; load offset
+0001177: 1a ; drop
+0001178: 0b ; end
+0001170: 08 ; FIXUP func body size
; function body 22
-0001156: 00 ; func body size (guess)
-0001157: 00 ; local decl count
-0001158: 41 ; i32.const
-0001159: 01 ; i32 literal
-000115a: 30 ; i64.load8_s
-000115b: 00 ; alignment
-000115c: 02 ; load offset
-000115d: 1a ; drop
-000115e: 0b ; end
-0001156: 08 ; FIXUP func body size
+0001179: 00 ; func body size (guess)
+000117a: 00 ; local decl count
+000117b: 41 ; i32.const
+000117c: 01 ; i32 literal
+000117d: 30 ; i64.load8_s
+000117e: 00 ; alignment
+000117f: 02 ; load offset
+0001180: 1a ; drop
+0001181: 0b ; end
+0001179: 08 ; FIXUP func body size
; function body 23
-000115f: 00 ; func body size (guess)
-0001160: 00 ; local decl count
-0001161: 41 ; i32.const
-0001162: 01 ; i32 literal
-0001163: 31 ; i64.load8_u
-0001164: 00 ; alignment
-0001165: 02 ; load offset
-0001166: 1a ; drop
-0001167: 0b ; end
-000115f: 08 ; FIXUP func body size
+0001182: 00 ; func body size (guess)
+0001183: 00 ; local decl count
+0001184: 41 ; i32.const
+0001185: 01 ; i32 literal
+0001186: 31 ; i64.load8_u
+0001187: 00 ; alignment
+0001188: 02 ; load offset
+0001189: 1a ; drop
+000118a: 0b ; end
+0001182: 08 ; FIXUP func body size
; function body 24
-0001168: 00 ; func body size (guess)
-0001169: 00 ; local decl count
-000116a: 41 ; i32.const
-000116b: 01 ; i32 literal
-000116c: 32 ; i64.load16_s
-000116d: 01 ; alignment
-000116e: 02 ; load offset
-000116f: 1a ; drop
-0001170: 0b ; end
-0001168: 08 ; FIXUP func body size
+000118b: 00 ; func body size (guess)
+000118c: 00 ; local decl count
+000118d: 41 ; i32.const
+000118e: 01 ; i32 literal
+000118f: 32 ; i64.load16_s
+0001190: 01 ; alignment
+0001191: 02 ; load offset
+0001192: 1a ; drop
+0001193: 0b ; end
+000118b: 08 ; FIXUP func body size
; function body 25
-0001171: 00 ; func body size (guess)
-0001172: 00 ; local decl count
-0001173: 41 ; i32.const
-0001174: 01 ; i32 literal
-0001175: 33 ; i64.load16_u
-0001176: 01 ; alignment
-0001177: 02 ; load offset
-0001178: 1a ; drop
-0001179: 0b ; end
-0001171: 08 ; FIXUP func body size
+0001194: 00 ; func body size (guess)
+0001195: 00 ; local decl count
+0001196: 41 ; i32.const
+0001197: 01 ; i32 literal
+0001198: 33 ; i64.load16_u
+0001199: 01 ; alignment
+000119a: 02 ; load offset
+000119b: 1a ; drop
+000119c: 0b ; end
+0001194: 08 ; FIXUP func body size
; function body 26
-000117a: 00 ; func body size (guess)
-000117b: 00 ; local decl count
-000117c: 41 ; i32.const
-000117d: 01 ; i32 literal
-000117e: 34 ; i64.load32_s
-000117f: 02 ; alignment
-0001180: 02 ; load offset
-0001181: 1a ; drop
-0001182: 0b ; end
-000117a: 08 ; FIXUP func body size
+000119d: 00 ; func body size (guess)
+000119e: 00 ; local decl count
+000119f: 41 ; i32.const
+00011a0: 01 ; i32 literal
+00011a1: 34 ; i64.load32_s
+00011a2: 02 ; alignment
+00011a3: 02 ; load offset
+00011a4: 1a ; drop
+00011a5: 0b ; end
+000119d: 08 ; FIXUP func body size
; function body 27
-0001183: 00 ; func body size (guess)
-0001184: 00 ; local decl count
-0001185: 41 ; i32.const
-0001186: 01 ; i32 literal
-0001187: 35 ; i64.load32_u
-0001188: 02 ; alignment
-0001189: 02 ; load offset
-000118a: 1a ; drop
-000118b: 0b ; end
-0001183: 08 ; FIXUP func body size
+00011a6: 00 ; func body size (guess)
+00011a7: 00 ; local decl count
+00011a8: 41 ; i32.const
+00011a9: 01 ; i32 literal
+00011aa: 35 ; i64.load32_u
+00011ab: 02 ; alignment
+00011ac: 02 ; load offset
+00011ad: 1a ; drop
+00011ae: 0b ; end
+00011a6: 08 ; FIXUP func body size
; function body 28
-000118c: 00 ; func body size (guess)
-000118d: 00 ; local decl count
-000118e: 41 ; i32.const
-000118f: 01 ; i32 literal
-0001190: 41 ; i32.const
-0001191: 02 ; i32 literal
-0001192: 36 ; i32.store
-0001193: 02 ; alignment
-0001194: 02 ; store offset
-0001195: 0b ; end
-000118c: 09 ; FIXUP func body size
+00011af: 00 ; func body size (guess)
+00011b0: 00 ; local decl count
+00011b1: 41 ; i32.const
+00011b2: 01 ; i32 literal
+00011b3: 41 ; i32.const
+00011b4: 02 ; i32 literal
+00011b5: 36 ; i32.store
+00011b6: 02 ; alignment
+00011b7: 02 ; store offset
+00011b8: 0b ; end
+00011af: 09 ; FIXUP func body size
; function body 29
-0001196: 00 ; func body size (guess)
-0001197: 00 ; local decl count
-0001198: 41 ; i32.const
-0001199: 01 ; i32 literal
-000119a: 42 ; i64.const
-000119b: 02 ; i64 literal
-000119c: 37 ; i64.store
-000119d: 03 ; alignment
-000119e: 02 ; store offset
-000119f: 0b ; end
-0001196: 09 ; FIXUP func body size
+00011b9: 00 ; func body size (guess)
+00011ba: 00 ; local decl count
+00011bb: 41 ; i32.const
+00011bc: 01 ; i32 literal
+00011bd: 42 ; i64.const
+00011be: 02 ; i64 literal
+00011bf: 37 ; i64.store
+00011c0: 03 ; alignment
+00011c1: 02 ; store offset
+00011c2: 0b ; end
+00011b9: 09 ; FIXUP func body size
; function body 30
-00011a0: 00 ; func body size (guess)
-00011a1: 00 ; local decl count
-00011a2: 41 ; i32.const
-00011a3: 01 ; i32 literal
-00011a4: 43 ; f32.const
-00011a5: 0000 0040 ; f32 literal
-00011a9: 38 ; f32.store
-00011aa: 02 ; alignment
-00011ab: 02 ; store offset
-00011ac: 0b ; end
-00011a0: 0c ; FIXUP func body size
+00011c3: 00 ; func body size (guess)
+00011c4: 00 ; local decl count
+00011c5: 41 ; i32.const
+00011c6: 01 ; i32 literal
+00011c7: 43 ; f32.const
+00011c8: 0000 0040 ; f32 literal
+00011cc: 38 ; f32.store
+00011cd: 02 ; alignment
+00011ce: 02 ; store offset
+00011cf: 0b ; end
+00011c3: 0c ; FIXUP func body size
; function body 31
-00011ad: 00 ; func body size (guess)
-00011ae: 00 ; local decl count
-00011af: 41 ; i32.const
-00011b0: 01 ; i32 literal
-00011b1: 44 ; f64.const
-00011b2: 0000 0000 0000 0040 ; f64 literal
-00011ba: 39 ; f64.store
-00011bb: 03 ; alignment
-00011bc: 02 ; store offset
-00011bd: 0b ; end
-00011ad: 10 ; FIXUP func body size
+00011d0: 00 ; func body size (guess)
+00011d1: 00 ; local decl count
+00011d2: 41 ; i32.const
+00011d3: 01 ; i32 literal
+00011d4: 44 ; f64.const
+00011d5: 0000 0000 0000 0040 ; f64 literal
+00011dd: 39 ; f64.store
+00011de: 03 ; alignment
+00011df: 02 ; store offset
+00011e0: 0b ; end
+00011d0: 10 ; FIXUP func body size
; function body 32
-00011be: 00 ; func body size (guess)
-00011bf: 00 ; local decl count
-00011c0: 41 ; i32.const
-00011c1: 01 ; i32 literal
-00011c2: 41 ; i32.const
-00011c3: 02 ; i32 literal
-00011c4: 3a ; i32.store8
-00011c5: 00 ; alignment
-00011c6: 02 ; store offset
-00011c7: 0b ; end
-00011be: 09 ; FIXUP func body size
+00011e1: 00 ; func body size (guess)
+00011e2: 00 ; local decl count
+00011e3: 41 ; i32.const
+00011e4: 01 ; i32 literal
+00011e5: 41 ; i32.const
+00011e6: 02 ; i32 literal
+00011e7: 3a ; i32.store8
+00011e8: 00 ; alignment
+00011e9: 02 ; store offset
+00011ea: 0b ; end
+00011e1: 09 ; FIXUP func body size
; function body 33
-00011c8: 00 ; func body size (guess)
-00011c9: 00 ; local decl count
-00011ca: 41 ; i32.const
-00011cb: 01 ; i32 literal
-00011cc: 41 ; i32.const
-00011cd: 02 ; i32 literal
-00011ce: 3b ; i32.store16
-00011cf: 01 ; alignment
-00011d0: 02 ; store offset
-00011d1: 0b ; end
-00011c8: 09 ; FIXUP func body size
+00011eb: 00 ; func body size (guess)
+00011ec: 00 ; local decl count
+00011ed: 41 ; i32.const
+00011ee: 01 ; i32 literal
+00011ef: 41 ; i32.const
+00011f0: 02 ; i32 literal
+00011f1: 3b ; i32.store16
+00011f2: 01 ; alignment
+00011f3: 02 ; store offset
+00011f4: 0b ; end
+00011eb: 09 ; FIXUP func body size
; function body 34
-00011d2: 00 ; func body size (guess)
-00011d3: 00 ; local decl count
-00011d4: 41 ; i32.const
-00011d5: 01 ; i32 literal
-00011d6: 42 ; i64.const
-00011d7: 02 ; i64 literal
-00011d8: 3c ; i64.store8
-00011d9: 00 ; alignment
-00011da: 02 ; store offset
-00011db: 0b ; end
-00011d2: 09 ; FIXUP func body size
+00011f5: 00 ; func body size (guess)
+00011f6: 00 ; local decl count
+00011f7: 41 ; i32.const
+00011f8: 01 ; i32 literal
+00011f9: 42 ; i64.const
+00011fa: 02 ; i64 literal
+00011fb: 3c ; i64.store8
+00011fc: 00 ; alignment
+00011fd: 02 ; store offset
+00011fe: 0b ; end
+00011f5: 09 ; FIXUP func body size
; function body 35
-00011dc: 00 ; func body size (guess)
-00011dd: 00 ; local decl count
-00011de: 41 ; i32.const
-00011df: 01 ; i32 literal
-00011e0: 42 ; i64.const
-00011e1: 02 ; i64 literal
-00011e2: 3d ; i64.store16
-00011e3: 01 ; alignment
-00011e4: 02 ; store offset
-00011e5: 0b ; end
-00011dc: 09 ; FIXUP func body size
+00011ff: 00 ; func body size (guess)
+0001200: 00 ; local decl count
+0001201: 41 ; i32.const
+0001202: 01 ; i32 literal
+0001203: 42 ; i64.const
+0001204: 02 ; i64 literal
+0001205: 3d ; i64.store16
+0001206: 01 ; alignment
+0001207: 02 ; store offset
+0001208: 0b ; end
+00011ff: 09 ; FIXUP func body size
; function body 36
-00011e6: 00 ; func body size (guess)
-00011e7: 00 ; local decl count
-00011e8: 41 ; i32.const
-00011e9: 01 ; i32 literal
-00011ea: 42 ; i64.const
-00011eb: 02 ; i64 literal
-00011ec: 3e ; i64.store32
-00011ed: 02 ; alignment
-00011ee: 02 ; store offset
-00011ef: 0b ; end
-00011e6: 09 ; FIXUP func body size
+0001209: 00 ; func body size (guess)
+000120a: 00 ; local decl count
+000120b: 41 ; i32.const
+000120c: 01 ; i32 literal
+000120d: 42 ; i64.const
+000120e: 02 ; i64 literal
+000120f: 3e ; i64.store32
+0001210: 02 ; alignment
+0001211: 02 ; store offset
+0001212: 0b ; end
+0001209: 09 ; FIXUP func body size
; function body 37
-00011f0: 00 ; func body size (guess)
-00011f1: 00 ; local decl count
-00011f2: 3f ; current_memory
-00011f3: 00 ; current_memory reserved
-00011f4: 1a ; drop
-00011f5: 0b ; end
-00011f0: 05 ; FIXUP func body size
+0001213: 00 ; func body size (guess)
+0001214: 00 ; local decl count
+0001215: 3f ; current_memory
+0001216: 00 ; current_memory reserved
+0001217: 1a ; drop
+0001218: 0b ; end
+0001213: 05 ; FIXUP func body size
; function body 38
-00011f6: 00 ; func body size (guess)
-00011f7: 00 ; local decl count
-00011f8: 41 ; i32.const
-00011f9: 01 ; i32 literal
-00011fa: 40 ; grow_memory
-00011fb: 00 ; grow_memory reserved
-00011fc: 1a ; drop
-00011fd: 0b ; end
-00011f6: 07 ; FIXUP func body size
+0001219: 00 ; func body size (guess)
+000121a: 00 ; local decl count
+000121b: 41 ; i32.const
+000121c: 01 ; i32 literal
+000121d: 40 ; grow_memory
+000121e: 00 ; grow_memory reserved
+000121f: 1a ; drop
+0001220: 0b ; end
+0001219: 07 ; FIXUP func body size
; function body 39
-00011fe: 00 ; func body size (guess)
-00011ff: 00 ; local decl count
-0001200: 41 ; i32.const
-0001201: 01 ; i32 literal
-0001202: 1a ; drop
-0001203: 0b ; end
-00011fe: 05 ; FIXUP func body size
+0001221: 00 ; func body size (guess)
+0001222: 00 ; local decl count
+0001223: 41 ; i32.const
+0001224: 01 ; i32 literal
+0001225: 1a ; drop
+0001226: 0b ; end
+0001221: 05 ; FIXUP func body size
; function body 40
-0001204: 00 ; func body size (guess)
-0001205: 00 ; local decl count
-0001206: 42 ; i64.const
-0001207: 01 ; i64 literal
-0001208: 1a ; drop
-0001209: 0b ; end
-0001204: 05 ; FIXUP func body size
+0001227: 00 ; func body size (guess)
+0001228: 00 ; local decl count
+0001229: 42 ; i64.const
+000122a: 01 ; i64 literal
+000122b: 1a ; drop
+000122c: 0b ; end
+0001227: 05 ; FIXUP func body size
; function body 41
-000120a: 00 ; func body size (guess)
-000120b: 00 ; local decl count
-000120c: 43 ; f32.const
-000120d: 0000 803f ; f32 literal
-0001211: 1a ; drop
-0001212: 0b ; end
-000120a: 08 ; FIXUP func body size
+000122d: 00 ; func body size (guess)
+000122e: 00 ; local decl count
+000122f: 43 ; f32.const
+0001230: 0000 803f ; f32 literal
+0001234: 1a ; drop
+0001235: 0b ; end
+000122d: 08 ; FIXUP func body size
; function body 42
-0001213: 00 ; func body size (guess)
-0001214: 00 ; local decl count
-0001215: 44 ; f64.const
-0001216: 0000 0000 0000 f03f ; f64 literal
-000121e: 1a ; drop
-000121f: 0b ; end
-0001213: 0c ; FIXUP func body size
+0001236: 00 ; func body size (guess)
+0001237: 00 ; local decl count
+0001238: 44 ; f64.const
+0001239: 0000 0000 0000 f03f ; f64 literal
+0001241: 1a ; drop
+0001242: 0b ; end
+0001236: 0c ; FIXUP func body size
; function body 43
-0001220: 00 ; func body size (guess)
-0001221: 00 ; local decl count
-0001222: 41 ; i32.const
-0001223: 01 ; i32 literal
-0001224: 45 ; i32.eqz
-0001225: 1a ; drop
-0001226: 0b ; end
-0001220: 06 ; FIXUP func body size
+0001243: 00 ; func body size (guess)
+0001244: 00 ; local decl count
+0001245: 41 ; i32.const
+0001246: 01 ; i32 literal
+0001247: 45 ; i32.eqz
+0001248: 1a ; drop
+0001249: 0b ; end
+0001243: 06 ; FIXUP func body size
; function body 44
-0001227: 00 ; func body size (guess)
-0001228: 00 ; local decl count
-0001229: 41 ; i32.const
-000122a: 01 ; i32 literal
-000122b: 41 ; i32.const
-000122c: 02 ; i32 literal
-000122d: 46 ; i32.eq
-000122e: 1a ; drop
-000122f: 0b ; end
-0001227: 08 ; FIXUP func body size
+000124a: 00 ; func body size (guess)
+000124b: 00 ; local decl count
+000124c: 41 ; i32.const
+000124d: 01 ; i32 literal
+000124e: 41 ; i32.const
+000124f: 02 ; i32 literal
+0001250: 46 ; i32.eq
+0001251: 1a ; drop
+0001252: 0b ; end
+000124a: 08 ; FIXUP func body size
; function body 45
-0001230: 00 ; func body size (guess)
-0001231: 00 ; local decl count
-0001232: 41 ; i32.const
-0001233: 01 ; i32 literal
-0001234: 41 ; i32.const
-0001235: 02 ; i32 literal
-0001236: 47 ; i32.ne
-0001237: 1a ; drop
-0001238: 0b ; end
-0001230: 08 ; FIXUP func body size
+0001253: 00 ; func body size (guess)
+0001254: 00 ; local decl count
+0001255: 41 ; i32.const
+0001256: 01 ; i32 literal
+0001257: 41 ; i32.const
+0001258: 02 ; i32 literal
+0001259: 47 ; i32.ne
+000125a: 1a ; drop
+000125b: 0b ; end
+0001253: 08 ; FIXUP func body size
; function body 46
-0001239: 00 ; func body size (guess)
-000123a: 00 ; local decl count
-000123b: 41 ; i32.const
-000123c: 01 ; i32 literal
-000123d: 41 ; i32.const
-000123e: 02 ; i32 literal
-000123f: 48 ; i32.lt_s
-0001240: 1a ; drop
-0001241: 0b ; end
-0001239: 08 ; FIXUP func body size
+000125c: 00 ; func body size (guess)
+000125d: 00 ; local decl count
+000125e: 41 ; i32.const
+000125f: 01 ; i32 literal
+0001260: 41 ; i32.const
+0001261: 02 ; i32 literal
+0001262: 48 ; i32.lt_s
+0001263: 1a ; drop
+0001264: 0b ; end
+000125c: 08 ; FIXUP func body size
; function body 47
-0001242: 00 ; func body size (guess)
-0001243: 00 ; local decl count
-0001244: 41 ; i32.const
-0001245: 01 ; i32 literal
-0001246: 41 ; i32.const
-0001247: 02 ; i32 literal
-0001248: 49 ; i32.lt_u
-0001249: 1a ; drop
-000124a: 0b ; end
-0001242: 08 ; FIXUP func body size
+0001265: 00 ; func body size (guess)
+0001266: 00 ; local decl count
+0001267: 41 ; i32.const
+0001268: 01 ; i32 literal
+0001269: 41 ; i32.const
+000126a: 02 ; i32 literal
+000126b: 49 ; i32.lt_u
+000126c: 1a ; drop
+000126d: 0b ; end
+0001265: 08 ; FIXUP func body size
; function body 48
-000124b: 00 ; func body size (guess)
-000124c: 00 ; local decl count
-000124d: 41 ; i32.const
-000124e: 01 ; i32 literal
-000124f: 41 ; i32.const
-0001250: 02 ; i32 literal
-0001251: 4a ; i32.gt_s
-0001252: 1a ; drop
-0001253: 0b ; end
-000124b: 08 ; FIXUP func body size
+000126e: 00 ; func body size (guess)
+000126f: 00 ; local decl count
+0001270: 41 ; i32.const
+0001271: 01 ; i32 literal
+0001272: 41 ; i32.const
+0001273: 02 ; i32 literal
+0001274: 4a ; i32.gt_s
+0001275: 1a ; drop
+0001276: 0b ; end
+000126e: 08 ; FIXUP func body size
; function body 49
-0001254: 00 ; func body size (guess)
-0001255: 00 ; local decl count
-0001256: 41 ; i32.const
-0001257: 01 ; i32 literal
-0001258: 41 ; i32.const
-0001259: 02 ; i32 literal
-000125a: 4b ; i32.gt_u
-000125b: 1a ; drop
-000125c: 0b ; end
-0001254: 08 ; FIXUP func body size
+0001277: 00 ; func body size (guess)
+0001278: 00 ; local decl count
+0001279: 41 ; i32.const
+000127a: 01 ; i32 literal
+000127b: 41 ; i32.const
+000127c: 02 ; i32 literal
+000127d: 4b ; i32.gt_u
+000127e: 1a ; drop
+000127f: 0b ; end
+0001277: 08 ; FIXUP func body size
; function body 50
-000125d: 00 ; func body size (guess)
-000125e: 00 ; local decl count
-000125f: 41 ; i32.const
-0001260: 01 ; i32 literal
-0001261: 41 ; i32.const
-0001262: 02 ; i32 literal
-0001263: 4c ; i32.le_s
-0001264: 1a ; drop
-0001265: 0b ; end
-000125d: 08 ; FIXUP func body size
+0001280: 00 ; func body size (guess)
+0001281: 00 ; local decl count
+0001282: 41 ; i32.const
+0001283: 01 ; i32 literal
+0001284: 41 ; i32.const
+0001285: 02 ; i32 literal
+0001286: 4c ; i32.le_s
+0001287: 1a ; drop
+0001288: 0b ; end
+0001280: 08 ; FIXUP func body size
; function body 51
-0001266: 00 ; func body size (guess)
-0001267: 00 ; local decl count
-0001268: 41 ; i32.const
-0001269: 01 ; i32 literal
-000126a: 41 ; i32.const
-000126b: 02 ; i32 literal
-000126c: 4d ; i32.le_u
-000126d: 1a ; drop
-000126e: 0b ; end
-0001266: 08 ; FIXUP func body size
+0001289: 00 ; func body size (guess)
+000128a: 00 ; local decl count
+000128b: 41 ; i32.const
+000128c: 01 ; i32 literal
+000128d: 41 ; i32.const
+000128e: 02 ; i32 literal
+000128f: 4d ; i32.le_u
+0001290: 1a ; drop
+0001291: 0b ; end
+0001289: 08 ; FIXUP func body size
; function body 52
-000126f: 00 ; func body size (guess)
-0001270: 00 ; local decl count
-0001271: 41 ; i32.const
-0001272: 01 ; i32 literal
-0001273: 41 ; i32.const
-0001274: 02 ; i32 literal
-0001275: 4e ; i32.ge_s
-0001276: 1a ; drop
-0001277: 0b ; end
-000126f: 08 ; FIXUP func body size
+0001292: 00 ; func body size (guess)
+0001293: 00 ; local decl count
+0001294: 41 ; i32.const
+0001295: 01 ; i32 literal
+0001296: 41 ; i32.const
+0001297: 02 ; i32 literal
+0001298: 4e ; i32.ge_s
+0001299: 1a ; drop
+000129a: 0b ; end
+0001292: 08 ; FIXUP func body size
; function body 53
-0001278: 00 ; func body size (guess)
-0001279: 00 ; local decl count
-000127a: 41 ; i32.const
-000127b: 01 ; i32 literal
-000127c: 41 ; i32.const
-000127d: 02 ; i32 literal
-000127e: 4f ; i32.ge_u
-000127f: 1a ; drop
-0001280: 0b ; end
-0001278: 08 ; FIXUP func body size
+000129b: 00 ; func body size (guess)
+000129c: 00 ; local decl count
+000129d: 41 ; i32.const
+000129e: 01 ; i32 literal
+000129f: 41 ; i32.const
+00012a0: 02 ; i32 literal
+00012a1: 4f ; i32.ge_u
+00012a2: 1a ; drop
+00012a3: 0b ; end
+000129b: 08 ; FIXUP func body size
; function body 54
-0001281: 00 ; func body size (guess)
-0001282: 00 ; local decl count
-0001283: 42 ; i64.const
-0001284: 01 ; i64 literal
-0001285: 50 ; i64.eqz
-0001286: 1a ; drop
-0001287: 0b ; end
-0001281: 06 ; FIXUP func body size
+00012a4: 00 ; func body size (guess)
+00012a5: 00 ; local decl count
+00012a6: 42 ; i64.const
+00012a7: 01 ; i64 literal
+00012a8: 50 ; i64.eqz
+00012a9: 1a ; drop
+00012aa: 0b ; end
+00012a4: 06 ; FIXUP func body size
; function body 55
-0001288: 00 ; func body size (guess)
-0001289: 00 ; local decl count
-000128a: 42 ; i64.const
-000128b: 01 ; i64 literal
-000128c: 42 ; i64.const
-000128d: 02 ; i64 literal
-000128e: 51 ; i64.eq
-000128f: 1a ; drop
-0001290: 0b ; end
-0001288: 08 ; FIXUP func body size
+00012ab: 00 ; func body size (guess)
+00012ac: 00 ; local decl count
+00012ad: 42 ; i64.const
+00012ae: 01 ; i64 literal
+00012af: 42 ; i64.const
+00012b0: 02 ; i64 literal
+00012b1: 51 ; i64.eq
+00012b2: 1a ; drop
+00012b3: 0b ; end
+00012ab: 08 ; FIXUP func body size
; function body 56
-0001291: 00 ; func body size (guess)
-0001292: 00 ; local decl count
-0001293: 42 ; i64.const
-0001294: 01 ; i64 literal
-0001295: 42 ; i64.const
-0001296: 02 ; i64 literal
-0001297: 52 ; i64.ne
-0001298: 1a ; drop
-0001299: 0b ; end
-0001291: 08 ; FIXUP func body size
+00012b4: 00 ; func body size (guess)
+00012b5: 00 ; local decl count
+00012b6: 42 ; i64.const
+00012b7: 01 ; i64 literal
+00012b8: 42 ; i64.const
+00012b9: 02 ; i64 literal
+00012ba: 52 ; i64.ne
+00012bb: 1a ; drop
+00012bc: 0b ; end
+00012b4: 08 ; FIXUP func body size
; function body 57
-000129a: 00 ; func body size (guess)
-000129b: 00 ; local decl count
-000129c: 42 ; i64.const
-000129d: 01 ; i64 literal
-000129e: 42 ; i64.const
-000129f: 02 ; i64 literal
-00012a0: 53 ; i64.lt_s
-00012a1: 1a ; drop
-00012a2: 0b ; end
-000129a: 08 ; FIXUP func body size
+00012bd: 00 ; func body size (guess)
+00012be: 00 ; local decl count
+00012bf: 42 ; i64.const
+00012c0: 01 ; i64 literal
+00012c1: 42 ; i64.const
+00012c2: 02 ; i64 literal
+00012c3: 53 ; i64.lt_s
+00012c4: 1a ; drop
+00012c5: 0b ; end
+00012bd: 08 ; FIXUP func body size
; function body 58
-00012a3: 00 ; func body size (guess)
-00012a4: 00 ; local decl count
-00012a5: 42 ; i64.const
-00012a6: 01 ; i64 literal
-00012a7: 42 ; i64.const
-00012a8: 02 ; i64 literal
-00012a9: 54 ; i64.lt_u
-00012aa: 1a ; drop
-00012ab: 0b ; end
-00012a3: 08 ; FIXUP func body size
+00012c6: 00 ; func body size (guess)
+00012c7: 00 ; local decl count
+00012c8: 42 ; i64.const
+00012c9: 01 ; i64 literal
+00012ca: 42 ; i64.const
+00012cb: 02 ; i64 literal
+00012cc: 54 ; i64.lt_u
+00012cd: 1a ; drop
+00012ce: 0b ; end
+00012c6: 08 ; FIXUP func body size
; function body 59
-00012ac: 00 ; func body size (guess)
-00012ad: 00 ; local decl count
-00012ae: 42 ; i64.const
-00012af: 01 ; i64 literal
-00012b0: 42 ; i64.const
-00012b1: 02 ; i64 literal
-00012b2: 55 ; i64.gt_s
-00012b3: 1a ; drop
-00012b4: 0b ; end
-00012ac: 08 ; FIXUP func body size
+00012cf: 00 ; func body size (guess)
+00012d0: 00 ; local decl count
+00012d1: 42 ; i64.const
+00012d2: 01 ; i64 literal
+00012d3: 42 ; i64.const
+00012d4: 02 ; i64 literal
+00012d5: 55 ; i64.gt_s
+00012d6: 1a ; drop
+00012d7: 0b ; end
+00012cf: 08 ; FIXUP func body size
; function body 60
-00012b5: 00 ; func body size (guess)
-00012b6: 00 ; local decl count
-00012b7: 42 ; i64.const
-00012b8: 01 ; i64 literal
-00012b9: 42 ; i64.const
-00012ba: 02 ; i64 literal
-00012bb: 56 ; i64.gt_u
-00012bc: 1a ; drop
-00012bd: 0b ; end
-00012b5: 08 ; FIXUP func body size
+00012d8: 00 ; func body size (guess)
+00012d9: 00 ; local decl count
+00012da: 42 ; i64.const
+00012db: 01 ; i64 literal
+00012dc: 42 ; i64.const
+00012dd: 02 ; i64 literal
+00012de: 56 ; i64.gt_u
+00012df: 1a ; drop
+00012e0: 0b ; end
+00012d8: 08 ; FIXUP func body size
; function body 61
-00012be: 00 ; func body size (guess)
-00012bf: 00 ; local decl count
-00012c0: 42 ; i64.const
-00012c1: 01 ; i64 literal
-00012c2: 42 ; i64.const
-00012c3: 02 ; i64 literal
-00012c4: 57 ; i64.le_s
-00012c5: 1a ; drop
-00012c6: 0b ; end
-00012be: 08 ; FIXUP func body size
+00012e1: 00 ; func body size (guess)
+00012e2: 00 ; local decl count
+00012e3: 42 ; i64.const
+00012e4: 01 ; i64 literal
+00012e5: 42 ; i64.const
+00012e6: 02 ; i64 literal
+00012e7: 57 ; i64.le_s
+00012e8: 1a ; drop
+00012e9: 0b ; end
+00012e1: 08 ; FIXUP func body size
; function body 62
-00012c7: 00 ; func body size (guess)
-00012c8: 00 ; local decl count
-00012c9: 42 ; i64.const
-00012ca: 01 ; i64 literal
-00012cb: 42 ; i64.const
-00012cc: 02 ; i64 literal
-00012cd: 58 ; i64.le_u
-00012ce: 1a ; drop
-00012cf: 0b ; end
-00012c7: 08 ; FIXUP func body size
+00012ea: 00 ; func body size (guess)
+00012eb: 00 ; local decl count
+00012ec: 42 ; i64.const
+00012ed: 01 ; i64 literal
+00012ee: 42 ; i64.const
+00012ef: 02 ; i64 literal
+00012f0: 58 ; i64.le_u
+00012f1: 1a ; drop
+00012f2: 0b ; end
+00012ea: 08 ; FIXUP func body size
; function body 63
-00012d0: 00 ; func body size (guess)
-00012d1: 00 ; local decl count
-00012d2: 42 ; i64.const
-00012d3: 01 ; i64 literal
-00012d4: 42 ; i64.const
-00012d5: 02 ; i64 literal
-00012d6: 59 ; i64.ge_s
-00012d7: 1a ; drop
-00012d8: 0b ; end
-00012d0: 08 ; FIXUP func body size
+00012f3: 00 ; func body size (guess)
+00012f4: 00 ; local decl count
+00012f5: 42 ; i64.const
+00012f6: 01 ; i64 literal
+00012f7: 42 ; i64.const
+00012f8: 02 ; i64 literal
+00012f9: 59 ; i64.ge_s
+00012fa: 1a ; drop
+00012fb: 0b ; end
+00012f3: 08 ; FIXUP func body size
; function body 64
-00012d9: 00 ; func body size (guess)
-00012da: 00 ; local decl count
-00012db: 42 ; i64.const
-00012dc: 01 ; i64 literal
-00012dd: 42 ; i64.const
-00012de: 02 ; i64 literal
-00012df: 5a ; i64.ge_u
-00012e0: 1a ; drop
-00012e1: 0b ; end
-00012d9: 08 ; FIXUP func body size
+00012fc: 00 ; func body size (guess)
+00012fd: 00 ; local decl count
+00012fe: 42 ; i64.const
+00012ff: 01 ; i64 literal
+0001300: 42 ; i64.const
+0001301: 02 ; i64 literal
+0001302: 5a ; i64.ge_u
+0001303: 1a ; drop
+0001304: 0b ; end
+00012fc: 08 ; FIXUP func body size
; function body 65
-00012e2: 00 ; func body size (guess)
-00012e3: 00 ; local decl count
-00012e4: 43 ; f32.const
-00012e5: 0000 803f ; f32 literal
-00012e9: 43 ; f32.const
-00012ea: 0000 0040 ; f32 literal
-00012ee: 5b ; f32.eq
-00012ef: 1a ; drop
-00012f0: 0b ; end
-00012e2: 0e ; FIXUP func body size
+0001305: 00 ; func body size (guess)
+0001306: 00 ; local decl count
+0001307: 43 ; f32.const
+0001308: 0000 803f ; f32 literal
+000130c: 43 ; f32.const
+000130d: 0000 0040 ; f32 literal
+0001311: 5b ; f32.eq
+0001312: 1a ; drop
+0001313: 0b ; end
+0001305: 0e ; FIXUP func body size
; function body 66
-00012f1: 00 ; func body size (guess)
-00012f2: 00 ; local decl count
-00012f3: 43 ; f32.const
-00012f4: 0000 803f ; f32 literal
-00012f8: 43 ; f32.const
-00012f9: 0000 0040 ; f32 literal
-00012fd: 5c ; f32.ne
-00012fe: 1a ; drop
-00012ff: 0b ; end
-00012f1: 0e ; FIXUP func body size
+0001314: 00 ; func body size (guess)
+0001315: 00 ; local decl count
+0001316: 43 ; f32.const
+0001317: 0000 803f ; f32 literal
+000131b: 43 ; f32.const
+000131c: 0000 0040 ; f32 literal
+0001320: 5c ; f32.ne
+0001321: 1a ; drop
+0001322: 0b ; end
+0001314: 0e ; FIXUP func body size
; function body 67
-0001300: 00 ; func body size (guess)
-0001301: 00 ; local decl count
-0001302: 43 ; f32.const
-0001303: 0000 803f ; f32 literal
-0001307: 43 ; f32.const
-0001308: 0000 0040 ; f32 literal
-000130c: 5d ; f32.lt
-000130d: 1a ; drop
-000130e: 0b ; end
-0001300: 0e ; FIXUP func body size
+0001323: 00 ; func body size (guess)
+0001324: 00 ; local decl count
+0001325: 43 ; f32.const
+0001326: 0000 803f ; f32 literal
+000132a: 43 ; f32.const
+000132b: 0000 0040 ; f32 literal
+000132f: 5d ; f32.lt
+0001330: 1a ; drop
+0001331: 0b ; end
+0001323: 0e ; FIXUP func body size
; function body 68
-000130f: 00 ; func body size (guess)
-0001310: 00 ; local decl count
-0001311: 43 ; f32.const
-0001312: 0000 803f ; f32 literal
-0001316: 43 ; f32.const
-0001317: 0000 0040 ; f32 literal
-000131b: 5e ; f32.gt
-000131c: 1a ; drop
-000131d: 0b ; end
-000130f: 0e ; FIXUP func body size
+0001332: 00 ; func body size (guess)
+0001333: 00 ; local decl count
+0001334: 43 ; f32.const
+0001335: 0000 803f ; f32 literal
+0001339: 43 ; f32.const
+000133a: 0000 0040 ; f32 literal
+000133e: 5e ; f32.gt
+000133f: 1a ; drop
+0001340: 0b ; end
+0001332: 0e ; FIXUP func body size
; function body 69
-000131e: 00 ; func body size (guess)
-000131f: 00 ; local decl count
-0001320: 43 ; f32.const
-0001321: 0000 803f ; f32 literal
-0001325: 43 ; f32.const
-0001326: 0000 0040 ; f32 literal
-000132a: 5f ; f32.le
-000132b: 1a ; drop
-000132c: 0b ; end
-000131e: 0e ; FIXUP func body size
+0001341: 00 ; func body size (guess)
+0001342: 00 ; local decl count
+0001343: 43 ; f32.const
+0001344: 0000 803f ; f32 literal
+0001348: 43 ; f32.const
+0001349: 0000 0040 ; f32 literal
+000134d: 5f ; f32.le
+000134e: 1a ; drop
+000134f: 0b ; end
+0001341: 0e ; FIXUP func body size
; function body 70
-000132d: 00 ; func body size (guess)
-000132e: 00 ; local decl count
-000132f: 43 ; f32.const
-0001330: 0000 803f ; f32 literal
-0001334: 43 ; f32.const
-0001335: 0000 0040 ; f32 literal
-0001339: 60 ; f32.ge
-000133a: 1a ; drop
-000133b: 0b ; end
-000132d: 0e ; FIXUP func body size
+0001350: 00 ; func body size (guess)
+0001351: 00 ; local decl count
+0001352: 43 ; f32.const
+0001353: 0000 803f ; f32 literal
+0001357: 43 ; f32.const
+0001358: 0000 0040 ; f32 literal
+000135c: 60 ; f32.ge
+000135d: 1a ; drop
+000135e: 0b ; end
+0001350: 0e ; FIXUP func body size
; function body 71
-000133c: 00 ; func body size (guess)
-000133d: 00 ; local decl count
-000133e: 44 ; f64.const
-000133f: 0000 0000 0000 f03f ; f64 literal
-0001347: 44 ; f64.const
-0001348: 0000 0000 0000 0040 ; f64 literal
-0001350: 61 ; f64.eq
-0001351: 1a ; drop
-0001352: 0b ; end
-000133c: 16 ; FIXUP func body size
+000135f: 00 ; func body size (guess)
+0001360: 00 ; local decl count
+0001361: 44 ; f64.const
+0001362: 0000 0000 0000 f03f ; f64 literal
+000136a: 44 ; f64.const
+000136b: 0000 0000 0000 0040 ; f64 literal
+0001373: 61 ; f64.eq
+0001374: 1a ; drop
+0001375: 0b ; end
+000135f: 16 ; FIXUP func body size
; function body 72
-0001353: 00 ; func body size (guess)
-0001354: 00 ; local decl count
-0001355: 44 ; f64.const
-0001356: 0000 0000 0000 f03f ; f64 literal
-000135e: 44 ; f64.const
-000135f: 0000 0000 0000 0040 ; f64 literal
-0001367: 62 ; f64.ne
-0001368: 1a ; drop
-0001369: 0b ; end
-0001353: 16 ; FIXUP func body size
+0001376: 00 ; func body size (guess)
+0001377: 00 ; local decl count
+0001378: 44 ; f64.const
+0001379: 0000 0000 0000 f03f ; f64 literal
+0001381: 44 ; f64.const
+0001382: 0000 0000 0000 0040 ; f64 literal
+000138a: 62 ; f64.ne
+000138b: 1a ; drop
+000138c: 0b ; end
+0001376: 16 ; FIXUP func body size
; function body 73
-000136a: 00 ; func body size (guess)
-000136b: 00 ; local decl count
-000136c: 44 ; f64.const
-000136d: 0000 0000 0000 f03f ; f64 literal
-0001375: 44 ; f64.const
-0001376: 0000 0000 0000 0040 ; f64 literal
-000137e: 63 ; f64.lt
-000137f: 1a ; drop
-0001380: 0b ; end
-000136a: 16 ; FIXUP func body size
+000138d: 00 ; func body size (guess)
+000138e: 00 ; local decl count
+000138f: 44 ; f64.const
+0001390: 0000 0000 0000 f03f ; f64 literal
+0001398: 44 ; f64.const
+0001399: 0000 0000 0000 0040 ; f64 literal
+00013a1: 63 ; f64.lt
+00013a2: 1a ; drop
+00013a3: 0b ; end
+000138d: 16 ; FIXUP func body size
; function body 74
-0001381: 00 ; func body size (guess)
-0001382: 00 ; local decl count
-0001383: 44 ; f64.const
-0001384: 0000 0000 0000 f03f ; f64 literal
-000138c: 44 ; f64.const
-000138d: 0000 0000 0000 0040 ; f64 literal
-0001395: 64 ; f64.gt
-0001396: 1a ; drop
-0001397: 0b ; end
-0001381: 16 ; FIXUP func body size
+00013a4: 00 ; func body size (guess)
+00013a5: 00 ; local decl count
+00013a6: 44 ; f64.const
+00013a7: 0000 0000 0000 f03f ; f64 literal
+00013af: 44 ; f64.const
+00013b0: 0000 0000 0000 0040 ; f64 literal
+00013b8: 64 ; f64.gt
+00013b9: 1a ; drop
+00013ba: 0b ; end
+00013a4: 16 ; FIXUP func body size
; function body 75
-0001398: 00 ; func body size (guess)
-0001399: 00 ; local decl count
-000139a: 44 ; f64.const
-000139b: 0000 0000 0000 f03f ; f64 literal
-00013a3: 44 ; f64.const
-00013a4: 0000 0000 0000 0040 ; f64 literal
-00013ac: 65 ; f64.le
-00013ad: 1a ; drop
-00013ae: 0b ; end
-0001398: 16 ; FIXUP func body size
+00013bb: 00 ; func body size (guess)
+00013bc: 00 ; local decl count
+00013bd: 44 ; f64.const
+00013be: 0000 0000 0000 f03f ; f64 literal
+00013c6: 44 ; f64.const
+00013c7: 0000 0000 0000 0040 ; f64 literal
+00013cf: 65 ; f64.le
+00013d0: 1a ; drop
+00013d1: 0b ; end
+00013bb: 16 ; FIXUP func body size
; function body 76
-00013af: 00 ; func body size (guess)
-00013b0: 00 ; local decl count
-00013b1: 44 ; f64.const
-00013b2: 0000 0000 0000 f03f ; f64 literal
-00013ba: 44 ; f64.const
-00013bb: 0000 0000 0000 0040 ; f64 literal
-00013c3: 66 ; f64.ge
-00013c4: 1a ; drop
-00013c5: 0b ; end
-00013af: 16 ; FIXUP func body size
+00013d2: 00 ; func body size (guess)
+00013d3: 00 ; local decl count
+00013d4: 44 ; f64.const
+00013d5: 0000 0000 0000 f03f ; f64 literal
+00013dd: 44 ; f64.const
+00013de: 0000 0000 0000 0040 ; f64 literal
+00013e6: 66 ; f64.ge
+00013e7: 1a ; drop
+00013e8: 0b ; end
+00013d2: 16 ; FIXUP func body size
; function body 77
-00013c6: 00 ; func body size (guess)
-00013c7: 00 ; local decl count
-00013c8: 41 ; i32.const
-00013c9: 01 ; i32 literal
-00013ca: 67 ; i32.clz
-00013cb: 1a ; drop
-00013cc: 0b ; end
-00013c6: 06 ; FIXUP func body size
+00013e9: 00 ; func body size (guess)
+00013ea: 00 ; local decl count
+00013eb: 41 ; i32.const
+00013ec: 01 ; i32 literal
+00013ed: 67 ; i32.clz
+00013ee: 1a ; drop
+00013ef: 0b ; end
+00013e9: 06 ; FIXUP func body size
; function body 78
-00013cd: 00 ; func body size (guess)
-00013ce: 00 ; local decl count
-00013cf: 41 ; i32.const
-00013d0: 01 ; i32 literal
-00013d1: 68 ; i32.ctz
-00013d2: 1a ; drop
-00013d3: 0b ; end
-00013cd: 06 ; FIXUP func body size
+00013f0: 00 ; func body size (guess)
+00013f1: 00 ; local decl count
+00013f2: 41 ; i32.const
+00013f3: 01 ; i32 literal
+00013f4: 68 ; i32.ctz
+00013f5: 1a ; drop
+00013f6: 0b ; end
+00013f0: 06 ; FIXUP func body size
; function body 79
-00013d4: 00 ; func body size (guess)
-00013d5: 00 ; local decl count
-00013d6: 41 ; i32.const
-00013d7: 01 ; i32 literal
-00013d8: 69 ; i32.popcnt
-00013d9: 1a ; drop
-00013da: 0b ; end
-00013d4: 06 ; FIXUP func body size
+00013f7: 00 ; func body size (guess)
+00013f8: 00 ; local decl count
+00013f9: 41 ; i32.const
+00013fa: 01 ; i32 literal
+00013fb: 69 ; i32.popcnt
+00013fc: 1a ; drop
+00013fd: 0b ; end
+00013f7: 06 ; FIXUP func body size
; function body 80
-00013db: 00 ; func body size (guess)
-00013dc: 00 ; local decl count
-00013dd: 41 ; i32.const
-00013de: 01 ; i32 literal
-00013df: 41 ; i32.const
-00013e0: 02 ; i32 literal
-00013e1: 6a ; i32.add
-00013e2: 1a ; drop
-00013e3: 0b ; end
-00013db: 08 ; FIXUP func body size
+00013fe: 00 ; func body size (guess)
+00013ff: 00 ; local decl count
+0001400: 41 ; i32.const
+0001401: 01 ; i32 literal
+0001402: 41 ; i32.const
+0001403: 02 ; i32 literal
+0001404: 6a ; i32.add
+0001405: 1a ; drop
+0001406: 0b ; end
+00013fe: 08 ; FIXUP func body size
; function body 81
-00013e4: 00 ; func body size (guess)
-00013e5: 00 ; local decl count
-00013e6: 41 ; i32.const
-00013e7: 01 ; i32 literal
-00013e8: 41 ; i32.const
-00013e9: 02 ; i32 literal
-00013ea: 6b ; i32.sub
-00013eb: 1a ; drop
-00013ec: 0b ; end
-00013e4: 08 ; FIXUP func body size
+0001407: 00 ; func body size (guess)
+0001408: 00 ; local decl count
+0001409: 41 ; i32.const
+000140a: 01 ; i32 literal
+000140b: 41 ; i32.const
+000140c: 02 ; i32 literal
+000140d: 6b ; i32.sub
+000140e: 1a ; drop
+000140f: 0b ; end
+0001407: 08 ; FIXUP func body size
; function body 82
-00013ed: 00 ; func body size (guess)
-00013ee: 00 ; local decl count
-00013ef: 41 ; i32.const
-00013f0: 01 ; i32 literal
-00013f1: 41 ; i32.const
-00013f2: 02 ; i32 literal
-00013f3: 6c ; i32.mul
-00013f4: 1a ; drop
-00013f5: 0b ; end
-00013ed: 08 ; FIXUP func body size
+0001410: 00 ; func body size (guess)
+0001411: 00 ; local decl count
+0001412: 41 ; i32.const
+0001413: 01 ; i32 literal
+0001414: 41 ; i32.const
+0001415: 02 ; i32 literal
+0001416: 6c ; i32.mul
+0001417: 1a ; drop
+0001418: 0b ; end
+0001410: 08 ; FIXUP func body size
; function body 83
-00013f6: 00 ; func body size (guess)
-00013f7: 00 ; local decl count
-00013f8: 41 ; i32.const
-00013f9: 01 ; i32 literal
-00013fa: 41 ; i32.const
-00013fb: 02 ; i32 literal
-00013fc: 6d ; i32.div_s
-00013fd: 1a ; drop
-00013fe: 0b ; end
-00013f6: 08 ; FIXUP func body size
+0001419: 00 ; func body size (guess)
+000141a: 00 ; local decl count
+000141b: 41 ; i32.const
+000141c: 01 ; i32 literal
+000141d: 41 ; i32.const
+000141e: 02 ; i32 literal
+000141f: 6d ; i32.div_s
+0001420: 1a ; drop
+0001421: 0b ; end
+0001419: 08 ; FIXUP func body size
; function body 84
-00013ff: 00 ; func body size (guess)
-0001400: 00 ; local decl count
-0001401: 41 ; i32.const
-0001402: 01 ; i32 literal
-0001403: 41 ; i32.const
-0001404: 02 ; i32 literal
-0001405: 6e ; i32.div_u
-0001406: 1a ; drop
-0001407: 0b ; end
-00013ff: 08 ; FIXUP func body size
+0001422: 00 ; func body size (guess)
+0001423: 00 ; local decl count
+0001424: 41 ; i32.const
+0001425: 01 ; i32 literal
+0001426: 41 ; i32.const
+0001427: 02 ; i32 literal
+0001428: 6e ; i32.div_u
+0001429: 1a ; drop
+000142a: 0b ; end
+0001422: 08 ; FIXUP func body size
; function body 85
-0001408: 00 ; func body size (guess)
-0001409: 00 ; local decl count
-000140a: 41 ; i32.const
-000140b: 01 ; i32 literal
-000140c: 41 ; i32.const
-000140d: 02 ; i32 literal
-000140e: 6f ; i32.rem_s
-000140f: 1a ; drop
-0001410: 0b ; end
-0001408: 08 ; FIXUP func body size
+000142b: 00 ; func body size (guess)
+000142c: 00 ; local decl count
+000142d: 41 ; i32.const
+000142e: 01 ; i32 literal
+000142f: 41 ; i32.const
+0001430: 02 ; i32 literal
+0001431: 6f ; i32.rem_s
+0001432: 1a ; drop
+0001433: 0b ; end
+000142b: 08 ; FIXUP func body size
; function body 86
-0001411: 00 ; func body size (guess)
-0001412: 00 ; local decl count
-0001413: 41 ; i32.const
-0001414: 01 ; i32 literal
-0001415: 41 ; i32.const
-0001416: 02 ; i32 literal
-0001417: 70 ; i32.rem_u
-0001418: 1a ; drop
-0001419: 0b ; end
-0001411: 08 ; FIXUP func body size
+0001434: 00 ; func body size (guess)
+0001435: 00 ; local decl count
+0001436: 41 ; i32.const
+0001437: 01 ; i32 literal
+0001438: 41 ; i32.const
+0001439: 02 ; i32 literal
+000143a: 70 ; i32.rem_u
+000143b: 1a ; drop
+000143c: 0b ; end
+0001434: 08 ; FIXUP func body size
; function body 87
-000141a: 00 ; func body size (guess)
-000141b: 00 ; local decl count
-000141c: 41 ; i32.const
-000141d: 01 ; i32 literal
-000141e: 41 ; i32.const
-000141f: 02 ; i32 literal
-0001420: 71 ; i32.and
-0001421: 1a ; drop
-0001422: 0b ; end
-000141a: 08 ; FIXUP func body size
+000143d: 00 ; func body size (guess)
+000143e: 00 ; local decl count
+000143f: 41 ; i32.const
+0001440: 01 ; i32 literal
+0001441: 41 ; i32.const
+0001442: 02 ; i32 literal
+0001443: 71 ; i32.and
+0001444: 1a ; drop
+0001445: 0b ; end
+000143d: 08 ; FIXUP func body size
; function body 88
-0001423: 00 ; func body size (guess)
-0001424: 00 ; local decl count
-0001425: 41 ; i32.const
-0001426: 01 ; i32 literal
-0001427: 41 ; i32.const
-0001428: 02 ; i32 literal
-0001429: 72 ; i32.or
-000142a: 1a ; drop
-000142b: 0b ; end
-0001423: 08 ; FIXUP func body size
+0001446: 00 ; func body size (guess)
+0001447: 00 ; local decl count
+0001448: 41 ; i32.const
+0001449: 01 ; i32 literal
+000144a: 41 ; i32.const
+000144b: 02 ; i32 literal
+000144c: 72 ; i32.or
+000144d: 1a ; drop
+000144e: 0b ; end
+0001446: 08 ; FIXUP func body size
; function body 89
-000142c: 00 ; func body size (guess)
-000142d: 00 ; local decl count
-000142e: 41 ; i32.const
-000142f: 01 ; i32 literal
-0001430: 41 ; i32.const
-0001431: 02 ; i32 literal
-0001432: 73 ; i32.xor
-0001433: 1a ; drop
-0001434: 0b ; end
-000142c: 08 ; FIXUP func body size
+000144f: 00 ; func body size (guess)
+0001450: 00 ; local decl count
+0001451: 41 ; i32.const
+0001452: 01 ; i32 literal
+0001453: 41 ; i32.const
+0001454: 02 ; i32 literal
+0001455: 73 ; i32.xor
+0001456: 1a ; drop
+0001457: 0b ; end
+000144f: 08 ; FIXUP func body size
; function body 90
-0001435: 00 ; func body size (guess)
-0001436: 00 ; local decl count
-0001437: 41 ; i32.const
-0001438: 01 ; i32 literal
-0001439: 41 ; i32.const
-000143a: 02 ; i32 literal
-000143b: 74 ; i32.shl
-000143c: 1a ; drop
-000143d: 0b ; end
-0001435: 08 ; FIXUP func body size
+0001458: 00 ; func body size (guess)
+0001459: 00 ; local decl count
+000145a: 41 ; i32.const
+000145b: 01 ; i32 literal
+000145c: 41 ; i32.const
+000145d: 02 ; i32 literal
+000145e: 74 ; i32.shl
+000145f: 1a ; drop
+0001460: 0b ; end
+0001458: 08 ; FIXUP func body size
; function body 91
-000143e: 00 ; func body size (guess)
-000143f: 00 ; local decl count
-0001440: 41 ; i32.const
-0001441: 01 ; i32 literal
-0001442: 41 ; i32.const
-0001443: 02 ; i32 literal
-0001444: 75 ; i32.shr_s
-0001445: 1a ; drop
-0001446: 0b ; end
-000143e: 08 ; FIXUP func body size
+0001461: 00 ; func body size (guess)
+0001462: 00 ; local decl count
+0001463: 41 ; i32.const
+0001464: 01 ; i32 literal
+0001465: 41 ; i32.const
+0001466: 02 ; i32 literal
+0001467: 75 ; i32.shr_s
+0001468: 1a ; drop
+0001469: 0b ; end
+0001461: 08 ; FIXUP func body size
; function body 92
-0001447: 00 ; func body size (guess)
-0001448: 00 ; local decl count
-0001449: 41 ; i32.const
-000144a: 01 ; i32 literal
-000144b: 41 ; i32.const
-000144c: 02 ; i32 literal
-000144d: 76 ; i32.shr_u
-000144e: 1a ; drop
-000144f: 0b ; end
-0001447: 08 ; FIXUP func body size
+000146a: 00 ; func body size (guess)
+000146b: 00 ; local decl count
+000146c: 41 ; i32.const
+000146d: 01 ; i32 literal
+000146e: 41 ; i32.const
+000146f: 02 ; i32 literal
+0001470: 76 ; i32.shr_u
+0001471: 1a ; drop
+0001472: 0b ; end
+000146a: 08 ; FIXUP func body size
; function body 93
-0001450: 00 ; func body size (guess)
-0001451: 00 ; local decl count
-0001452: 41 ; i32.const
-0001453: 01 ; i32 literal
-0001454: 41 ; i32.const
-0001455: 02 ; i32 literal
-0001456: 77 ; i32.rotl
-0001457: 1a ; drop
-0001458: 0b ; end
-0001450: 08 ; FIXUP func body size
+0001473: 00 ; func body size (guess)
+0001474: 00 ; local decl count
+0001475: 41 ; i32.const
+0001476: 01 ; i32 literal
+0001477: 41 ; i32.const
+0001478: 02 ; i32 literal
+0001479: 77 ; i32.rotl
+000147a: 1a ; drop
+000147b: 0b ; end
+0001473: 08 ; FIXUP func body size
; function body 94
-0001459: 00 ; func body size (guess)
-000145a: 00 ; local decl count
-000145b: 41 ; i32.const
-000145c: 01 ; i32 literal
-000145d: 41 ; i32.const
-000145e: 02 ; i32 literal
-000145f: 78 ; i32.rotr
-0001460: 1a ; drop
-0001461: 0b ; end
-0001459: 08 ; FIXUP func body size
+000147c: 00 ; func body size (guess)
+000147d: 00 ; local decl count
+000147e: 41 ; i32.const
+000147f: 01 ; i32 literal
+0001480: 41 ; i32.const
+0001481: 02 ; i32 literal
+0001482: 78 ; i32.rotr
+0001483: 1a ; drop
+0001484: 0b ; end
+000147c: 08 ; FIXUP func body size
; function body 95
-0001462: 00 ; func body size (guess)
-0001463: 00 ; local decl count
-0001464: 42 ; i64.const
-0001465: 01 ; i64 literal
-0001466: 79 ; i64.clz
-0001467: 1a ; drop
-0001468: 0b ; end
-0001462: 06 ; FIXUP func body size
+0001485: 00 ; func body size (guess)
+0001486: 00 ; local decl count
+0001487: 42 ; i64.const
+0001488: 01 ; i64 literal
+0001489: 79 ; i64.clz
+000148a: 1a ; drop
+000148b: 0b ; end
+0001485: 06 ; FIXUP func body size
; function body 96
-0001469: 00 ; func body size (guess)
-000146a: 00 ; local decl count
-000146b: 42 ; i64.const
-000146c: 01 ; i64 literal
-000146d: 7a ; i64.ctz
-000146e: 1a ; drop
-000146f: 0b ; end
-0001469: 06 ; FIXUP func body size
+000148c: 00 ; func body size (guess)
+000148d: 00 ; local decl count
+000148e: 42 ; i64.const
+000148f: 01 ; i64 literal
+0001490: 7a ; i64.ctz
+0001491: 1a ; drop
+0001492: 0b ; end
+000148c: 06 ; FIXUP func body size
; function body 97
-0001470: 00 ; func body size (guess)
-0001471: 00 ; local decl count
-0001472: 42 ; i64.const
-0001473: 01 ; i64 literal
-0001474: 7b ; i64.popcnt
-0001475: 1a ; drop
-0001476: 0b ; end
-0001470: 06 ; FIXUP func body size
+0001493: 00 ; func body size (guess)
+0001494: 00 ; local decl count
+0001495: 42 ; i64.const
+0001496: 01 ; i64 literal
+0001497: 7b ; i64.popcnt
+0001498: 1a ; drop
+0001499: 0b ; end
+0001493: 06 ; FIXUP func body size
; function body 98
-0001477: 00 ; func body size (guess)
-0001478: 00 ; local decl count
-0001479: 42 ; i64.const
-000147a: 01 ; i64 literal
-000147b: 42 ; i64.const
-000147c: 02 ; i64 literal
-000147d: 7c ; i64.add
-000147e: 1a ; drop
-000147f: 0b ; end
-0001477: 08 ; FIXUP func body size
+000149a: 00 ; func body size (guess)
+000149b: 00 ; local decl count
+000149c: 42 ; i64.const
+000149d: 01 ; i64 literal
+000149e: 42 ; i64.const
+000149f: 02 ; i64 literal
+00014a0: 7c ; i64.add
+00014a1: 1a ; drop
+00014a2: 0b ; end
+000149a: 08 ; FIXUP func body size
; function body 99
-0001480: 00 ; func body size (guess)
-0001481: 00 ; local decl count
-0001482: 42 ; i64.const
-0001483: 01 ; i64 literal
-0001484: 42 ; i64.const
-0001485: 02 ; i64 literal
-0001486: 7d ; i64.sub
-0001487: 1a ; drop
-0001488: 0b ; end
-0001480: 08 ; FIXUP func body size
+00014a3: 00 ; func body size (guess)
+00014a4: 00 ; local decl count
+00014a5: 42 ; i64.const
+00014a6: 01 ; i64 literal
+00014a7: 42 ; i64.const
+00014a8: 02 ; i64 literal
+00014a9: 7d ; i64.sub
+00014aa: 1a ; drop
+00014ab: 0b ; end
+00014a3: 08 ; FIXUP func body size
; function body 100
-0001489: 00 ; func body size (guess)
-000148a: 00 ; local decl count
-000148b: 42 ; i64.const
-000148c: 01 ; i64 literal
-000148d: 42 ; i64.const
-000148e: 02 ; i64 literal
-000148f: 7e ; i64.mul
-0001490: 1a ; drop
-0001491: 0b ; end
-0001489: 08 ; FIXUP func body size
+00014ac: 00 ; func body size (guess)
+00014ad: 00 ; local decl count
+00014ae: 42 ; i64.const
+00014af: 01 ; i64 literal
+00014b0: 42 ; i64.const
+00014b1: 02 ; i64 literal
+00014b2: 7e ; i64.mul
+00014b3: 1a ; drop
+00014b4: 0b ; end
+00014ac: 08 ; FIXUP func body size
; function body 101
-0001492: 00 ; func body size (guess)
-0001493: 00 ; local decl count
-0001494: 42 ; i64.const
-0001495: 01 ; i64 literal
-0001496: 42 ; i64.const
-0001497: 02 ; i64 literal
-0001498: 7f ; i64.div_s
-0001499: 1a ; drop
-000149a: 0b ; end
-0001492: 08 ; FIXUP func body size
+00014b5: 00 ; func body size (guess)
+00014b6: 00 ; local decl count
+00014b7: 42 ; i64.const
+00014b8: 01 ; i64 literal
+00014b9: 42 ; i64.const
+00014ba: 02 ; i64 literal
+00014bb: 7f ; i64.div_s
+00014bc: 1a ; drop
+00014bd: 0b ; end
+00014b5: 08 ; FIXUP func body size
; function body 102
-000149b: 00 ; func body size (guess)
-000149c: 00 ; local decl count
-000149d: 42 ; i64.const
-000149e: 01 ; i64 literal
-000149f: 42 ; i64.const
-00014a0: 02 ; i64 literal
-00014a1: 80 ; i64.div_u
-00014a2: 1a ; drop
-00014a3: 0b ; end
-000149b: 08 ; FIXUP func body size
+00014be: 00 ; func body size (guess)
+00014bf: 00 ; local decl count
+00014c0: 42 ; i64.const
+00014c1: 01 ; i64 literal
+00014c2: 42 ; i64.const
+00014c3: 02 ; i64 literal
+00014c4: 80 ; i64.div_u
+00014c5: 1a ; drop
+00014c6: 0b ; end
+00014be: 08 ; FIXUP func body size
; function body 103
-00014a4: 00 ; func body size (guess)
-00014a5: 00 ; local decl count
-00014a6: 42 ; i64.const
-00014a7: 01 ; i64 literal
-00014a8: 42 ; i64.const
-00014a9: 02 ; i64 literal
-00014aa: 81 ; i64.rem_s
-00014ab: 1a ; drop
-00014ac: 0b ; end
-00014a4: 08 ; FIXUP func body size
+00014c7: 00 ; func body size (guess)
+00014c8: 00 ; local decl count
+00014c9: 42 ; i64.const
+00014ca: 01 ; i64 literal
+00014cb: 42 ; i64.const
+00014cc: 02 ; i64 literal
+00014cd: 81 ; i64.rem_s
+00014ce: 1a ; drop
+00014cf: 0b ; end
+00014c7: 08 ; FIXUP func body size
; function body 104
-00014ad: 00 ; func body size (guess)
-00014ae: 00 ; local decl count
-00014af: 42 ; i64.const
-00014b0: 01 ; i64 literal
-00014b1: 42 ; i64.const
-00014b2: 02 ; i64 literal
-00014b3: 82 ; i64.rem_u
-00014b4: 1a ; drop
-00014b5: 0b ; end
-00014ad: 08 ; FIXUP func body size
+00014d0: 00 ; func body size (guess)
+00014d1: 00 ; local decl count
+00014d2: 42 ; i64.const
+00014d3: 01 ; i64 literal
+00014d4: 42 ; i64.const
+00014d5: 02 ; i64 literal
+00014d6: 82 ; i64.rem_u
+00014d7: 1a ; drop
+00014d8: 0b ; end
+00014d0: 08 ; FIXUP func body size
; function body 105
-00014b6: 00 ; func body size (guess)
-00014b7: 00 ; local decl count
-00014b8: 42 ; i64.const
-00014b9: 01 ; i64 literal
-00014ba: 42 ; i64.const
-00014bb: 02 ; i64 literal
-00014bc: 83 ; i64.and
-00014bd: 1a ; drop
-00014be: 0b ; end
-00014b6: 08 ; FIXUP func body size
+00014d9: 00 ; func body size (guess)
+00014da: 00 ; local decl count
+00014db: 42 ; i64.const
+00014dc: 01 ; i64 literal
+00014dd: 42 ; i64.const
+00014de: 02 ; i64 literal
+00014df: 83 ; i64.and
+00014e0: 1a ; drop
+00014e1: 0b ; end
+00014d9: 08 ; FIXUP func body size
; function body 106
-00014bf: 00 ; func body size (guess)
-00014c0: 00 ; local decl count
-00014c1: 42 ; i64.const
-00014c2: 01 ; i64 literal
-00014c3: 42 ; i64.const
-00014c4: 02 ; i64 literal
-00014c5: 84 ; i64.or
-00014c6: 1a ; drop
-00014c7: 0b ; end
-00014bf: 08 ; FIXUP func body size
+00014e2: 00 ; func body size (guess)
+00014e3: 00 ; local decl count
+00014e4: 42 ; i64.const
+00014e5: 01 ; i64 literal
+00014e6: 42 ; i64.const
+00014e7: 02 ; i64 literal
+00014e8: 84 ; i64.or
+00014e9: 1a ; drop
+00014ea: 0b ; end
+00014e2: 08 ; FIXUP func body size
; function body 107
-00014c8: 00 ; func body size (guess)
-00014c9: 00 ; local decl count
-00014ca: 42 ; i64.const
-00014cb: 01 ; i64 literal
-00014cc: 42 ; i64.const
-00014cd: 02 ; i64 literal
-00014ce: 85 ; i64.xor
-00014cf: 1a ; drop
-00014d0: 0b ; end
-00014c8: 08 ; FIXUP func body size
+00014eb: 00 ; func body size (guess)
+00014ec: 00 ; local decl count
+00014ed: 42 ; i64.const
+00014ee: 01 ; i64 literal
+00014ef: 42 ; i64.const
+00014f0: 02 ; i64 literal
+00014f1: 85 ; i64.xor
+00014f2: 1a ; drop
+00014f3: 0b ; end
+00014eb: 08 ; FIXUP func body size
; function body 108
-00014d1: 00 ; func body size (guess)
-00014d2: 00 ; local decl count
-00014d3: 42 ; i64.const
-00014d4: 01 ; i64 literal
-00014d5: 42 ; i64.const
-00014d6: 02 ; i64 literal
-00014d7: 86 ; i64.shl
-00014d8: 1a ; drop
-00014d9: 0b ; end
-00014d1: 08 ; FIXUP func body size
+00014f4: 00 ; func body size (guess)
+00014f5: 00 ; local decl count
+00014f6: 42 ; i64.const
+00014f7: 01 ; i64 literal
+00014f8: 42 ; i64.const
+00014f9: 02 ; i64 literal
+00014fa: 86 ; i64.shl
+00014fb: 1a ; drop
+00014fc: 0b ; end
+00014f4: 08 ; FIXUP func body size
; function body 109
-00014da: 00 ; func body size (guess)
-00014db: 00 ; local decl count
-00014dc: 42 ; i64.const
-00014dd: 01 ; i64 literal
-00014de: 42 ; i64.const
-00014df: 02 ; i64 literal
-00014e0: 87 ; i64.shr_s
-00014e1: 1a ; drop
-00014e2: 0b ; end
-00014da: 08 ; FIXUP func body size
+00014fd: 00 ; func body size (guess)
+00014fe: 00 ; local decl count
+00014ff: 42 ; i64.const
+0001500: 01 ; i64 literal
+0001501: 42 ; i64.const
+0001502: 02 ; i64 literal
+0001503: 87 ; i64.shr_s
+0001504: 1a ; drop
+0001505: 0b ; end
+00014fd: 08 ; FIXUP func body size
; function body 110
-00014e3: 00 ; func body size (guess)
-00014e4: 00 ; local decl count
-00014e5: 42 ; i64.const
-00014e6: 01 ; i64 literal
-00014e7: 42 ; i64.const
-00014e8: 02 ; i64 literal
-00014e9: 88 ; i64.shr_u
-00014ea: 1a ; drop
-00014eb: 0b ; end
-00014e3: 08 ; FIXUP func body size
+0001506: 00 ; func body size (guess)
+0001507: 00 ; local decl count
+0001508: 42 ; i64.const
+0001509: 01 ; i64 literal
+000150a: 42 ; i64.const
+000150b: 02 ; i64 literal
+000150c: 88 ; i64.shr_u
+000150d: 1a ; drop
+000150e: 0b ; end
+0001506: 08 ; FIXUP func body size
; function body 111
-00014ec: 00 ; func body size (guess)
-00014ed: 00 ; local decl count
-00014ee: 42 ; i64.const
-00014ef: 01 ; i64 literal
-00014f0: 42 ; i64.const
-00014f1: 02 ; i64 literal
-00014f2: 89 ; i64.rotl
-00014f3: 1a ; drop
-00014f4: 0b ; end
-00014ec: 08 ; FIXUP func body size
+000150f: 00 ; func body size (guess)
+0001510: 00 ; local decl count
+0001511: 42 ; i64.const
+0001512: 01 ; i64 literal
+0001513: 42 ; i64.const
+0001514: 02 ; i64 literal
+0001515: 89 ; i64.rotl
+0001516: 1a ; drop
+0001517: 0b ; end
+000150f: 08 ; FIXUP func body size
; function body 112
-00014f5: 00 ; func body size (guess)
-00014f6: 00 ; local decl count
-00014f7: 42 ; i64.const
-00014f8: 01 ; i64 literal
-00014f9: 42 ; i64.const
-00014fa: 02 ; i64 literal
-00014fb: 8a ; i64.rotr
-00014fc: 1a ; drop
-00014fd: 0b ; end
-00014f5: 08 ; FIXUP func body size
+0001518: 00 ; func body size (guess)
+0001519: 00 ; local decl count
+000151a: 42 ; i64.const
+000151b: 01 ; i64 literal
+000151c: 42 ; i64.const
+000151d: 02 ; i64 literal
+000151e: 8a ; i64.rotr
+000151f: 1a ; drop
+0001520: 0b ; end
+0001518: 08 ; FIXUP func body size
; function body 113
-00014fe: 00 ; func body size (guess)
-00014ff: 00 ; local decl count
-0001500: 43 ; f32.const
-0001501: 0000 803f ; f32 literal
-0001505: 8b ; f32.abs
-0001506: 1a ; drop
-0001507: 0b ; end
-00014fe: 09 ; FIXUP func body size
+0001521: 00 ; func body size (guess)
+0001522: 00 ; local decl count
+0001523: 43 ; f32.const
+0001524: 0000 803f ; f32 literal
+0001528: 8b ; f32.abs
+0001529: 1a ; drop
+000152a: 0b ; end
+0001521: 09 ; FIXUP func body size
; function body 114
-0001508: 00 ; func body size (guess)
-0001509: 00 ; local decl count
-000150a: 43 ; f32.const
-000150b: 0000 803f ; f32 literal
-000150f: 8c ; f32.neg
-0001510: 1a ; drop
-0001511: 0b ; end
-0001508: 09 ; FIXUP func body size
+000152b: 00 ; func body size (guess)
+000152c: 00 ; local decl count
+000152d: 43 ; f32.const
+000152e: 0000 803f ; f32 literal
+0001532: 8c ; f32.neg
+0001533: 1a ; drop
+0001534: 0b ; end
+000152b: 09 ; FIXUP func body size
; function body 115
-0001512: 00 ; func body size (guess)
-0001513: 00 ; local decl count
-0001514: 43 ; f32.const
-0001515: 0000 803f ; f32 literal
-0001519: 8d ; f32.ceil
-000151a: 1a ; drop
-000151b: 0b ; end
-0001512: 09 ; FIXUP func body size
+0001535: 00 ; func body size (guess)
+0001536: 00 ; local decl count
+0001537: 43 ; f32.const
+0001538: 0000 803f ; f32 literal
+000153c: 8d ; f32.ceil
+000153d: 1a ; drop
+000153e: 0b ; end
+0001535: 09 ; FIXUP func body size
; function body 116
-000151c: 00 ; func body size (guess)
-000151d: 00 ; local decl count
-000151e: 43 ; f32.const
-000151f: 0000 803f ; f32 literal
-0001523: 8e ; f32.floor
-0001524: 1a ; drop
-0001525: 0b ; end
-000151c: 09 ; FIXUP func body size
+000153f: 00 ; func body size (guess)
+0001540: 00 ; local decl count
+0001541: 43 ; f32.const
+0001542: 0000 803f ; f32 literal
+0001546: 8e ; f32.floor
+0001547: 1a ; drop
+0001548: 0b ; end
+000153f: 09 ; FIXUP func body size
; function body 117
-0001526: 00 ; func body size (guess)
-0001527: 00 ; local decl count
-0001528: 43 ; f32.const
-0001529: 0000 803f ; f32 literal
-000152d: 8f ; f32.trunc
-000152e: 1a ; drop
-000152f: 0b ; end
-0001526: 09 ; FIXUP func body size
-; function body 118
-0001530: 00 ; func body size (guess)
-0001531: 00 ; local decl count
-0001532: 43 ; f32.const
-0001533: 0000 803f ; f32 literal
-0001537: 90 ; f32.nearest
-0001538: 1a ; drop
-0001539: 0b ; end
-0001530: 09 ; FIXUP func body size
-; function body 119
-000153a: 00 ; func body size (guess)
-000153b: 00 ; local decl count
-000153c: 43 ; f32.const
-000153d: 0000 803f ; f32 literal
-0001541: 91 ; f32.sqrt
-0001542: 1a ; drop
-0001543: 0b ; end
-000153a: 09 ; FIXUP func body size
-; function body 120
-0001544: 00 ; func body size (guess)
-0001545: 00 ; local decl count
-0001546: 43 ; f32.const
-0001547: 0000 803f ; f32 literal
+0001549: 00 ; func body size (guess)
+000154a: 00 ; local decl count
000154b: 43 ; f32.const
-000154c: 0000 0040 ; f32 literal
-0001550: 92 ; f32.add
+000154c: 0000 803f ; f32 literal
+0001550: 8f ; f32.trunc
0001551: 1a ; drop
0001552: 0b ; end
-0001544: 0e ; FIXUP func body size
-; function body 121
+0001549: 09 ; FIXUP func body size
+; function body 118
0001553: 00 ; func body size (guess)
0001554: 00 ; local decl count
0001555: 43 ; f32.const
0001556: 0000 803f ; f32 literal
-000155a: 43 ; f32.const
-000155b: 0000 0040 ; f32 literal
-000155f: 93 ; f32.sub
-0001560: 1a ; drop
-0001561: 0b ; end
-0001553: 0e ; FIXUP func body size
-; function body 122
-0001562: 00 ; func body size (guess)
-0001563: 00 ; local decl count
-0001564: 43 ; f32.const
-0001565: 0000 803f ; f32 literal
+000155a: 90 ; f32.nearest
+000155b: 1a ; drop
+000155c: 0b ; end
+0001553: 09 ; FIXUP func body size
+; function body 119
+000155d: 00 ; func body size (guess)
+000155e: 00 ; local decl count
+000155f: 43 ; f32.const
+0001560: 0000 803f ; f32 literal
+0001564: 91 ; f32.sqrt
+0001565: 1a ; drop
+0001566: 0b ; end
+000155d: 09 ; FIXUP func body size
+; function body 120
+0001567: 00 ; func body size (guess)
+0001568: 00 ; local decl count
0001569: 43 ; f32.const
-000156a: 0000 0040 ; f32 literal
-000156e: 94 ; f32.mul
-000156f: 1a ; drop
-0001570: 0b ; end
-0001562: 0e ; FIXUP func body size
-; function body 123
-0001571: 00 ; func body size (guess)
-0001572: 00 ; local decl count
-0001573: 43 ; f32.const
-0001574: 0000 803f ; f32 literal
+000156a: 0000 803f ; f32 literal
+000156e: 43 ; f32.const
+000156f: 0000 0040 ; f32 literal
+0001573: 92 ; f32.add
+0001574: 1a ; drop
+0001575: 0b ; end
+0001567: 0e ; FIXUP func body size
+; function body 121
+0001576: 00 ; func body size (guess)
+0001577: 00 ; local decl count
0001578: 43 ; f32.const
-0001579: 0000 0040 ; f32 literal
-000157d: 95 ; f32.div
-000157e: 1a ; drop
-000157f: 0b ; end
-0001571: 0e ; FIXUP func body size
-; function body 124
-0001580: 00 ; func body size (guess)
-0001581: 00 ; local decl count
-0001582: 43 ; f32.const
-0001583: 0000 803f ; f32 literal
+0001579: 0000 803f ; f32 literal
+000157d: 43 ; f32.const
+000157e: 0000 0040 ; f32 literal
+0001582: 93 ; f32.sub
+0001583: 1a ; drop
+0001584: 0b ; end
+0001576: 0e ; FIXUP func body size
+; function body 122
+0001585: 00 ; func body size (guess)
+0001586: 00 ; local decl count
0001587: 43 ; f32.const
-0001588: 0000 0040 ; f32 literal
-000158c: 96 ; f32.min
-000158d: 1a ; drop
-000158e: 0b ; end
-0001580: 0e ; FIXUP func body size
-; function body 125
-000158f: 00 ; func body size (guess)
-0001590: 00 ; local decl count
-0001591: 43 ; f32.const
-0001592: 0000 803f ; f32 literal
+0001588: 0000 803f ; f32 literal
+000158c: 43 ; f32.const
+000158d: 0000 0040 ; f32 literal
+0001591: 94 ; f32.mul
+0001592: 1a ; drop
+0001593: 0b ; end
+0001585: 0e ; FIXUP func body size
+; function body 123
+0001594: 00 ; func body size (guess)
+0001595: 00 ; local decl count
0001596: 43 ; f32.const
-0001597: 0000 0040 ; f32 literal
-000159b: 97 ; f32.max
-000159c: 1a ; drop
-000159d: 0b ; end
-000158f: 0e ; FIXUP func body size
-; function body 126
-000159e: 00 ; func body size (guess)
-000159f: 00 ; local decl count
-00015a0: 43 ; f32.const
-00015a1: 0000 803f ; f32 literal
+0001597: 0000 803f ; f32 literal
+000159b: 43 ; f32.const
+000159c: 0000 0040 ; f32 literal
+00015a0: 95 ; f32.div
+00015a1: 1a ; drop
+00015a2: 0b ; end
+0001594: 0e ; FIXUP func body size
+; function body 124
+00015a3: 00 ; func body size (guess)
+00015a4: 00 ; local decl count
00015a5: 43 ; f32.const
-00015a6: 0000 0040 ; f32 literal
-00015aa: 98 ; f32.copysign
-00015ab: 1a ; drop
-00015ac: 0b ; end
-000159e: 0e ; FIXUP func body size
+00015a6: 0000 803f ; f32 literal
+00015aa: 43 ; f32.const
+00015ab: 0000 0040 ; f32 literal
+00015af: 96 ; f32.min
+00015b0: 1a ; drop
+00015b1: 0b ; end
+00015a3: 0e ; FIXUP func body size
+; function body 125
+00015b2: 00 ; func body size (guess)
+00015b3: 00 ; local decl count
+00015b4: 43 ; f32.const
+00015b5: 0000 803f ; f32 literal
+00015b9: 43 ; f32.const
+00015ba: 0000 0040 ; f32 literal
+00015be: 97 ; f32.max
+00015bf: 1a ; drop
+00015c0: 0b ; end
+00015b2: 0e ; FIXUP func body size
+; function body 126
+00015c1: 00 ; func body size (guess)
+00015c2: 00 ; local decl count
+00015c3: 43 ; f32.const
+00015c4: 0000 803f ; f32 literal
+00015c8: 43 ; f32.const
+00015c9: 0000 0040 ; f32 literal
+00015cd: 98 ; f32.copysign
+00015ce: 1a ; drop
+00015cf: 0b ; end
+00015c1: 0e ; FIXUP func body size
; function body 127
-00015ad: 00 ; func body size (guess)
-00015ae: 00 ; local decl count
-00015af: 44 ; f64.const
-00015b0: 0000 0000 0000 f03f ; f64 literal
-00015b8: 99 ; f64.abs
-00015b9: 1a ; drop
-00015ba: 0b ; end
-00015ad: 0d ; FIXUP func body size
+00015d0: 00 ; func body size (guess)
+00015d1: 00 ; local decl count
+00015d2: 44 ; f64.const
+00015d3: 0000 0000 0000 f03f ; f64 literal
+00015db: 99 ; f64.abs
+00015dc: 1a ; drop
+00015dd: 0b ; end
+00015d0: 0d ; FIXUP func body size
; function body 128
-00015bb: 00 ; func body size (guess)
-00015bc: 00 ; local decl count
-00015bd: 44 ; f64.const
-00015be: 0000 0000 0000 f03f ; f64 literal
-00015c6: 9a ; f64.neg
-00015c7: 1a ; drop
-00015c8: 0b ; end
-00015bb: 0d ; FIXUP func body size
+00015de: 00 ; func body size (guess)
+00015df: 00 ; local decl count
+00015e0: 44 ; f64.const
+00015e1: 0000 0000 0000 f03f ; f64 literal
+00015e9: 9a ; f64.neg
+00015ea: 1a ; drop
+00015eb: 0b ; end
+00015de: 0d ; FIXUP func body size
; function body 129
-00015c9: 00 ; func body size (guess)
-00015ca: 00 ; local decl count
-00015cb: 44 ; f64.const
-00015cc: 0000 0000 0000 f03f ; f64 literal
-00015d4: 9b ; f64.ceil
-00015d5: 1a ; drop
-00015d6: 0b ; end
-00015c9: 0d ; FIXUP func body size
+00015ec: 00 ; func body size (guess)
+00015ed: 00 ; local decl count
+00015ee: 44 ; f64.const
+00015ef: 0000 0000 0000 f03f ; f64 literal
+00015f7: 9b ; f64.ceil
+00015f8: 1a ; drop
+00015f9: 0b ; end
+00015ec: 0d ; FIXUP func body size
; function body 130
-00015d7: 00 ; func body size (guess)
-00015d8: 00 ; local decl count
-00015d9: 44 ; f64.const
-00015da: 0000 0000 0000 f03f ; f64 literal
-00015e2: 9c ; f64.floor
-00015e3: 1a ; drop
-00015e4: 0b ; end
-00015d7: 0d ; FIXUP func body size
+00015fa: 00 ; func body size (guess)
+00015fb: 00 ; local decl count
+00015fc: 44 ; f64.const
+00015fd: 0000 0000 0000 f03f ; f64 literal
+0001605: 9c ; f64.floor
+0001606: 1a ; drop
+0001607: 0b ; end
+00015fa: 0d ; FIXUP func body size
; function body 131
-00015e5: 00 ; func body size (guess)
-00015e6: 00 ; local decl count
-00015e7: 44 ; f64.const
-00015e8: 0000 0000 0000 f03f ; f64 literal
-00015f0: 9d ; f64.trunc
-00015f1: 1a ; drop
-00015f2: 0b ; end
-00015e5: 0d ; FIXUP func body size
+0001608: 00 ; func body size (guess)
+0001609: 00 ; local decl count
+000160a: 44 ; f64.const
+000160b: 0000 0000 0000 f03f ; f64 literal
+0001613: 9d ; f64.trunc
+0001614: 1a ; drop
+0001615: 0b ; end
+0001608: 0d ; FIXUP func body size
; function body 132
-00015f3: 00 ; func body size (guess)
-00015f4: 00 ; local decl count
-00015f5: 44 ; f64.const
-00015f6: 0000 0000 0000 f03f ; f64 literal
-00015fe: 9e ; f64.nearest
-00015ff: 1a ; drop
-0001600: 0b ; end
-00015f3: 0d ; FIXUP func body size
+0001616: 00 ; func body size (guess)
+0001617: 00 ; local decl count
+0001618: 44 ; f64.const
+0001619: 0000 0000 0000 f03f ; f64 literal
+0001621: 9e ; f64.nearest
+0001622: 1a ; drop
+0001623: 0b ; end
+0001616: 0d ; FIXUP func body size
; function body 133
-0001601: 00 ; func body size (guess)
-0001602: 00 ; local decl count
-0001603: 44 ; f64.const
-0001604: 0000 0000 0000 f03f ; f64 literal
-000160c: 9f ; f64.sqrt
-000160d: 1a ; drop
-000160e: 0b ; end
-0001601: 0d ; FIXUP func body size
+0001624: 00 ; func body size (guess)
+0001625: 00 ; local decl count
+0001626: 44 ; f64.const
+0001627: 0000 0000 0000 f03f ; f64 literal
+000162f: 9f ; f64.sqrt
+0001630: 1a ; drop
+0001631: 0b ; end
+0001624: 0d ; FIXUP func body size
; function body 134
-000160f: 00 ; func body size (guess)
-0001610: 00 ; local decl count
-0001611: 44 ; f64.const
-0001612: 0000 0000 0000 f03f ; f64 literal
-000161a: 44 ; f64.const
-000161b: 0000 0000 0000 0040 ; f64 literal
-0001623: a0 ; f64.add
-0001624: 1a ; drop
-0001625: 0b ; end
-000160f: 16 ; FIXUP func body size
+0001632: 00 ; func body size (guess)
+0001633: 00 ; local decl count
+0001634: 44 ; f64.const
+0001635: 0000 0000 0000 f03f ; f64 literal
+000163d: 44 ; f64.const
+000163e: 0000 0000 0000 0040 ; f64 literal
+0001646: a0 ; f64.add
+0001647: 1a ; drop
+0001648: 0b ; end
+0001632: 16 ; FIXUP func body size
; function body 135
-0001626: 00 ; func body size (guess)
-0001627: 00 ; local decl count
-0001628: 44 ; f64.const
-0001629: 0000 0000 0000 f03f ; f64 literal
-0001631: 44 ; f64.const
-0001632: 0000 0000 0000 0040 ; f64 literal
-000163a: a1 ; f64.sub
-000163b: 1a ; drop
-000163c: 0b ; end
-0001626: 16 ; FIXUP func body size
+0001649: 00 ; func body size (guess)
+000164a: 00 ; local decl count
+000164b: 44 ; f64.const
+000164c: 0000 0000 0000 f03f ; f64 literal
+0001654: 44 ; f64.const
+0001655: 0000 0000 0000 0040 ; f64 literal
+000165d: a1 ; f64.sub
+000165e: 1a ; drop
+000165f: 0b ; end
+0001649: 16 ; FIXUP func body size
; function body 136
-000163d: 00 ; func body size (guess)
-000163e: 00 ; local decl count
-000163f: 44 ; f64.const
-0001640: 0000 0000 0000 f03f ; f64 literal
-0001648: 44 ; f64.const
-0001649: 0000 0000 0000 0040 ; f64 literal
-0001651: a2 ; f64.mul
-0001652: 1a ; drop
-0001653: 0b ; end
-000163d: 16 ; FIXUP func body size
+0001660: 00 ; func body size (guess)
+0001661: 00 ; local decl count
+0001662: 44 ; f64.const
+0001663: 0000 0000 0000 f03f ; f64 literal
+000166b: 44 ; f64.const
+000166c: 0000 0000 0000 0040 ; f64 literal
+0001674: a2 ; f64.mul
+0001675: 1a ; drop
+0001676: 0b ; end
+0001660: 16 ; FIXUP func body size
; function body 137
-0001654: 00 ; func body size (guess)
-0001655: 00 ; local decl count
-0001656: 44 ; f64.const
-0001657: 0000 0000 0000 f03f ; f64 literal
-000165f: 44 ; f64.const
-0001660: 0000 0000 0000 0040 ; f64 literal
-0001668: a3 ; f64.div
-0001669: 1a ; drop
-000166a: 0b ; end
-0001654: 16 ; FIXUP func body size
+0001677: 00 ; func body size (guess)
+0001678: 00 ; local decl count
+0001679: 44 ; f64.const
+000167a: 0000 0000 0000 f03f ; f64 literal
+0001682: 44 ; f64.const
+0001683: 0000 0000 0000 0040 ; f64 literal
+000168b: a3 ; f64.div
+000168c: 1a ; drop
+000168d: 0b ; end
+0001677: 16 ; FIXUP func body size
; function body 138
-000166b: 00 ; func body size (guess)
-000166c: 00 ; local decl count
-000166d: 44 ; f64.const
-000166e: 0000 0000 0000 f03f ; f64 literal
-0001676: 44 ; f64.const
-0001677: 0000 0000 0000 0040 ; f64 literal
-000167f: a4 ; f64.min
-0001680: 1a ; drop
-0001681: 0b ; end
-000166b: 16 ; FIXUP func body size
+000168e: 00 ; func body size (guess)
+000168f: 00 ; local decl count
+0001690: 44 ; f64.const
+0001691: 0000 0000 0000 f03f ; f64 literal
+0001699: 44 ; f64.const
+000169a: 0000 0000 0000 0040 ; f64 literal
+00016a2: a4 ; f64.min
+00016a3: 1a ; drop
+00016a4: 0b ; end
+000168e: 16 ; FIXUP func body size
; function body 139
-0001682: 00 ; func body size (guess)
-0001683: 00 ; local decl count
-0001684: 44 ; f64.const
-0001685: 0000 0000 0000 f03f ; f64 literal
-000168d: 44 ; f64.const
-000168e: 0000 0000 0000 0040 ; f64 literal
-0001696: a5 ; f64.max
-0001697: 1a ; drop
-0001698: 0b ; end
-0001682: 16 ; FIXUP func body size
+00016a5: 00 ; func body size (guess)
+00016a6: 00 ; local decl count
+00016a7: 44 ; f64.const
+00016a8: 0000 0000 0000 f03f ; f64 literal
+00016b0: 44 ; f64.const
+00016b1: 0000 0000 0000 0040 ; f64 literal
+00016b9: a5 ; f64.max
+00016ba: 1a ; drop
+00016bb: 0b ; end
+00016a5: 16 ; FIXUP func body size
; function body 140
-0001699: 00 ; func body size (guess)
-000169a: 00 ; local decl count
-000169b: 44 ; f64.const
-000169c: 0000 0000 0000 f03f ; f64 literal
-00016a4: 44 ; f64.const
-00016a5: 0000 0000 0000 0040 ; f64 literal
-00016ad: a6 ; f64.copysign
-00016ae: 1a ; drop
-00016af: 0b ; end
-0001699: 16 ; FIXUP func body size
+00016bc: 00 ; func body size (guess)
+00016bd: 00 ; local decl count
+00016be: 44 ; f64.const
+00016bf: 0000 0000 0000 f03f ; f64 literal
+00016c7: 44 ; f64.const
+00016c8: 0000 0000 0000 0040 ; f64 literal
+00016d0: a6 ; f64.copysign
+00016d1: 1a ; drop
+00016d2: 0b ; end
+00016bc: 16 ; FIXUP func body size
; function body 141
-00016b0: 00 ; func body size (guess)
-00016b1: 00 ; local decl count
-00016b2: 42 ; i64.const
-00016b3: 01 ; i64 literal
-00016b4: a7 ; i32.wrap/i64
-00016b5: 1a ; drop
-00016b6: 0b ; end
-00016b0: 06 ; FIXUP func body size
+00016d3: 00 ; func body size (guess)
+00016d4: 00 ; local decl count
+00016d5: 42 ; i64.const
+00016d6: 01 ; i64 literal
+00016d7: a7 ; i32.wrap/i64
+00016d8: 1a ; drop
+00016d9: 0b ; end
+00016d3: 06 ; FIXUP func body size
; function body 142
-00016b7: 00 ; func body size (guess)
-00016b8: 00 ; local decl count
-00016b9: 43 ; f32.const
-00016ba: 0000 803f ; f32 literal
-00016be: a8 ; i32.trunc_s/f32
-00016bf: 1a ; drop
-00016c0: 0b ; end
-00016b7: 09 ; FIXUP func body size
+00016da: 00 ; func body size (guess)
+00016db: 00 ; local decl count
+00016dc: 43 ; f32.const
+00016dd: 0000 803f ; f32 literal
+00016e1: a8 ; i32.trunc_s/f32
+00016e2: 1a ; drop
+00016e3: 0b ; end
+00016da: 09 ; FIXUP func body size
; function body 143
-00016c1: 00 ; func body size (guess)
-00016c2: 00 ; local decl count
-00016c3: 43 ; f32.const
-00016c4: 0000 803f ; f32 literal
-00016c8: a9 ; i32.trunc_u/f32
-00016c9: 1a ; drop
-00016ca: 0b ; end
-00016c1: 09 ; FIXUP func body size
-; function body 144
-00016cb: 00 ; func body size (guess)
-00016cc: 00 ; local decl count
-00016cd: 44 ; f64.const
-00016ce: 0000 0000 0000 f03f ; f64 literal
-00016d6: aa ; i32.trunc_s/f64
-00016d7: 1a ; drop
-00016d8: 0b ; end
-00016cb: 0d ; FIXUP func body size
-; function body 145
-00016d9: 00 ; func body size (guess)
-00016da: 00 ; local decl count
-00016db: 44 ; f64.const
-00016dc: 0000 0000 0000 f03f ; f64 literal
-00016e4: ab ; i32.trunc_u/f64
-00016e5: 1a ; drop
-00016e6: 0b ; end
-00016d9: 0d ; FIXUP func body size
-; function body 146
-00016e7: 00 ; func body size (guess)
-00016e8: 00 ; local decl count
-00016e9: 41 ; i32.const
-00016ea: 01 ; i32 literal
-00016eb: ac ; i64.extend_s/i32
+00016e4: 00 ; func body size (guess)
+00016e5: 00 ; local decl count
+00016e6: 43 ; f32.const
+00016e7: 0000 803f ; f32 literal
+00016eb: a9 ; i32.trunc_u/f32
00016ec: 1a ; drop
00016ed: 0b ; end
-00016e7: 06 ; FIXUP func body size
-; function body 147
+00016e4: 09 ; FIXUP func body size
+; function body 144
00016ee: 00 ; func body size (guess)
00016ef: 00 ; local decl count
-00016f0: 41 ; i32.const
-00016f1: 01 ; i32 literal
-00016f2: ad ; i64.extend_u/i32
-00016f3: 1a ; drop
-00016f4: 0b ; end
-00016ee: 06 ; FIXUP func body size
+00016f0: 44 ; f64.const
+00016f1: 0000 0000 0000 f03f ; f64 literal
+00016f9: aa ; i32.trunc_s/f64
+00016fa: 1a ; drop
+00016fb: 0b ; end
+00016ee: 0d ; FIXUP func body size
+; function body 145
+00016fc: 00 ; func body size (guess)
+00016fd: 00 ; local decl count
+00016fe: 44 ; f64.const
+00016ff: 0000 0000 0000 f03f ; f64 literal
+0001707: ab ; i32.trunc_u/f64
+0001708: 1a ; drop
+0001709: 0b ; end
+00016fc: 0d ; FIXUP func body size
+; function body 146
+000170a: 00 ; func body size (guess)
+000170b: 00 ; local decl count
+000170c: 41 ; i32.const
+000170d: 01 ; i32 literal
+000170e: ac ; i64.extend_s/i32
+000170f: 1a ; drop
+0001710: 0b ; end
+000170a: 06 ; FIXUP func body size
+; function body 147
+0001711: 00 ; func body size (guess)
+0001712: 00 ; local decl count
+0001713: 41 ; i32.const
+0001714: 01 ; i32 literal
+0001715: ad ; i64.extend_u/i32
+0001716: 1a ; drop
+0001717: 0b ; end
+0001711: 06 ; FIXUP func body size
; function body 148
-00016f5: 00 ; func body size (guess)
-00016f6: 00 ; local decl count
-00016f7: 43 ; f32.const
-00016f8: 0000 803f ; f32 literal
-00016fc: ae ; i64.trunc_s/f32
-00016fd: 1a ; drop
-00016fe: 0b ; end
-00016f5: 09 ; FIXUP func body size
+0001718: 00 ; func body size (guess)
+0001719: 00 ; local decl count
+000171a: 43 ; f32.const
+000171b: 0000 803f ; f32 literal
+000171f: ae ; i64.trunc_s/f32
+0001720: 1a ; drop
+0001721: 0b ; end
+0001718: 09 ; FIXUP func body size
; function body 149
-00016ff: 00 ; func body size (guess)
-0001700: 00 ; local decl count
-0001701: 43 ; f32.const
-0001702: 0000 803f ; f32 literal
-0001706: af ; i64.trunc_u/f32
-0001707: 1a ; drop
-0001708: 0b ; end
-00016ff: 09 ; FIXUP func body size
-; function body 150
-0001709: 00 ; func body size (guess)
-000170a: 00 ; local decl count
-000170b: 44 ; f64.const
-000170c: 0000 0000 0000 f03f ; f64 literal
-0001714: b0 ; i64.trunc_s/f64
-0001715: 1a ; drop
-0001716: 0b ; end
-0001709: 0d ; FIXUP func body size
-; function body 151
-0001717: 00 ; func body size (guess)
-0001718: 00 ; local decl count
-0001719: 44 ; f64.const
-000171a: 0000 0000 0000 f03f ; f64 literal
-0001722: b1 ; i64.trunc_u/f64
-0001723: 1a ; drop
-0001724: 0b ; end
-0001717: 0d ; FIXUP func body size
-; function body 152
-0001725: 00 ; func body size (guess)
-0001726: 00 ; local decl count
-0001727: 41 ; i32.const
-0001728: 01 ; i32 literal
-0001729: b2 ; f32.convert_s/i32
+0001722: 00 ; func body size (guess)
+0001723: 00 ; local decl count
+0001724: 43 ; f32.const
+0001725: 0000 803f ; f32 literal
+0001729: af ; i64.trunc_u/f32
000172a: 1a ; drop
000172b: 0b ; end
-0001725: 06 ; FIXUP func body size
-; function body 153
+0001722: 09 ; FIXUP func body size
+; function body 150
000172c: 00 ; func body size (guess)
000172d: 00 ; local decl count
-000172e: 41 ; i32.const
-000172f: 01 ; i32 literal
-0001730: b3 ; f32.convert_u/i32
-0001731: 1a ; drop
-0001732: 0b ; end
-000172c: 06 ; FIXUP func body size
-; function body 154
-0001733: 00 ; func body size (guess)
-0001734: 00 ; local decl count
-0001735: 42 ; i64.const
-0001736: 01 ; i64 literal
-0001737: b4 ; f32.convert_s/i64
+000172e: 44 ; f64.const
+000172f: 0000 0000 0000 f03f ; f64 literal
+0001737: b0 ; i64.trunc_s/f64
0001738: 1a ; drop
0001739: 0b ; end
-0001733: 06 ; FIXUP func body size
-; function body 155
+000172c: 0d ; FIXUP func body size
+; function body 151
000173a: 00 ; func body size (guess)
000173b: 00 ; local decl count
-000173c: 42 ; i64.const
-000173d: 01 ; i64 literal
-000173e: b5 ; f32.convert_u/i64
-000173f: 1a ; drop
-0001740: 0b ; end
-000173a: 06 ; FIXUP func body size
-; function body 156
-0001741: 00 ; func body size (guess)
-0001742: 00 ; local decl count
-0001743: 44 ; f64.const
-0001744: 0000 0000 0000 f03f ; f64 literal
-000174c: b6 ; f32.demote/f64
+000173c: 44 ; f64.const
+000173d: 0000 0000 0000 f03f ; f64 literal
+0001745: b1 ; i64.trunc_u/f64
+0001746: 1a ; drop
+0001747: 0b ; end
+000173a: 0d ; FIXUP func body size
+; function body 152
+0001748: 00 ; func body size (guess)
+0001749: 00 ; local decl count
+000174a: 41 ; i32.const
+000174b: 01 ; i32 literal
+000174c: b2 ; f32.convert_s/i32
000174d: 1a ; drop
000174e: 0b ; end
-0001741: 0d ; FIXUP func body size
-; function body 157
+0001748: 06 ; FIXUP func body size
+; function body 153
000174f: 00 ; func body size (guess)
0001750: 00 ; local decl count
0001751: 41 ; i32.const
0001752: 01 ; i32 literal
-0001753: b7 ; f64.convert_s/i32
+0001753: b3 ; f32.convert_u/i32
0001754: 1a ; drop
0001755: 0b ; end
000174f: 06 ; FIXUP func body size
-; function body 158
+; function body 154
0001756: 00 ; func body size (guess)
0001757: 00 ; local decl count
-0001758: 41 ; i32.const
-0001759: 01 ; i32 literal
-000175a: b8 ; f64.convert_u/i32
+0001758: 42 ; i64.const
+0001759: 01 ; i64 literal
+000175a: b4 ; f32.convert_s/i64
000175b: 1a ; drop
000175c: 0b ; end
0001756: 06 ; FIXUP func body size
-; function body 159
+; function body 155
000175d: 00 ; func body size (guess)
000175e: 00 ; local decl count
000175f: 42 ; i64.const
0001760: 01 ; i64 literal
-0001761: b9 ; f64.convert_s/i64
+0001761: b5 ; f32.convert_u/i64
0001762: 1a ; drop
0001763: 0b ; end
000175d: 06 ; FIXUP func body size
-; function body 160
+; function body 156
0001764: 00 ; func body size (guess)
0001765: 00 ; local decl count
-0001766: 42 ; i64.const
-0001767: 01 ; i64 literal
-0001768: ba ; f64.convert_u/i64
-0001769: 1a ; drop
-000176a: 0b ; end
-0001764: 06 ; FIXUP func body size
+0001766: 44 ; f64.const
+0001767: 0000 0000 0000 f03f ; f64 literal
+000176f: b6 ; f32.demote/f64
+0001770: 1a ; drop
+0001771: 0b ; end
+0001764: 0d ; FIXUP func body size
+; function body 157
+0001772: 00 ; func body size (guess)
+0001773: 00 ; local decl count
+0001774: 41 ; i32.const
+0001775: 01 ; i32 literal
+0001776: b7 ; f64.convert_s/i32
+0001777: 1a ; drop
+0001778: 0b ; end
+0001772: 06 ; FIXUP func body size
+; function body 158
+0001779: 00 ; func body size (guess)
+000177a: 00 ; local decl count
+000177b: 41 ; i32.const
+000177c: 01 ; i32 literal
+000177d: b8 ; f64.convert_u/i32
+000177e: 1a ; drop
+000177f: 0b ; end
+0001779: 06 ; FIXUP func body size
+; function body 159
+0001780: 00 ; func body size (guess)
+0001781: 00 ; local decl count
+0001782: 42 ; i64.const
+0001783: 01 ; i64 literal
+0001784: b9 ; f64.convert_s/i64
+0001785: 1a ; drop
+0001786: 0b ; end
+0001780: 06 ; FIXUP func body size
+; function body 160
+0001787: 00 ; func body size (guess)
+0001788: 00 ; local decl count
+0001789: 42 ; i64.const
+000178a: 01 ; i64 literal
+000178b: ba ; f64.convert_u/i64
+000178c: 1a ; drop
+000178d: 0b ; end
+0001787: 06 ; FIXUP func body size
; function body 161
-000176b: 00 ; func body size (guess)
-000176c: 00 ; local decl count
-000176d: 43 ; f32.const
-000176e: 0000 803f ; f32 literal
-0001772: bb ; f64.promote/f32
-0001773: 1a ; drop
-0001774: 0b ; end
-000176b: 09 ; FIXUP func body size
+000178e: 00 ; func body size (guess)
+000178f: 00 ; local decl count
+0001790: 43 ; f32.const
+0001791: 0000 803f ; f32 literal
+0001795: bb ; f64.promote/f32
+0001796: 1a ; drop
+0001797: 0b ; end
+000178e: 09 ; FIXUP func body size
; function body 162
-0001775: 00 ; func body size (guess)
-0001776: 00 ; local decl count
-0001777: 41 ; i32.const
-0001778: 01 ; i32 literal
-0001779: be ; f32.reinterpret/i32
-000177a: 1a ; drop
-000177b: 0b ; end
-0001775: 06 ; FIXUP func body size
+0001798: 00 ; func body size (guess)
+0001799: 00 ; local decl count
+000179a: 41 ; i32.const
+000179b: 01 ; i32 literal
+000179c: be ; f32.reinterpret/i32
+000179d: 1a ; drop
+000179e: 0b ; end
+0001798: 06 ; FIXUP func body size
; function body 163
-000177c: 00 ; func body size (guess)
-000177d: 00 ; local decl count
-000177e: 43 ; f32.const
-000177f: 0000 803f ; f32 literal
-0001783: bc ; i32.reinterpret/f32
-0001784: 1a ; drop
-0001785: 0b ; end
-000177c: 09 ; FIXUP func body size
-; function body 164
-0001786: 00 ; func body size (guess)
-0001787: 00 ; local decl count
-0001788: 42 ; i64.const
-0001789: 01 ; i64 literal
-000178a: bf ; f64.reinterpret/i64
-000178b: 1a ; drop
-000178c: 0b ; end
-0001786: 06 ; FIXUP func body size
-; function body 165
-000178d: 00 ; func body size (guess)
-000178e: 00 ; local decl count
-000178f: 44 ; f64.const
-0001790: 0000 0000 0000 f03f ; f64 literal
-0001798: bd ; i64.reinterpret/f64
-0001799: 1a ; drop
-000179a: 0b ; end
-000178d: 0d ; FIXUP func body size
-; function body 166
-000179b: 00 ; func body size (guess)
-000179c: 00 ; local decl count
-000179d: 41 ; i32.const
-000179e: 01 ; i32 literal
-000179f: c0 ; i32.extend8_s
-00017a0: 1a ; drop
-00017a1: 0b ; end
-000179b: 06 ; FIXUP func body size
-; function body 167
-00017a2: 00 ; func body size (guess)
-00017a3: 00 ; local decl count
-00017a4: 41 ; i32.const
-00017a5: 01 ; i32 literal
-00017a6: c1 ; i32.extend16_s
+000179f: 00 ; func body size (guess)
+00017a0: 00 ; local decl count
+00017a1: 43 ; f32.const
+00017a2: 0000 803f ; f32 literal
+00017a6: bc ; i32.reinterpret/f32
00017a7: 1a ; drop
00017a8: 0b ; end
-00017a2: 06 ; FIXUP func body size
-; function body 168
+000179f: 09 ; FIXUP func body size
+; function body 164
00017a9: 00 ; func body size (guess)
00017aa: 00 ; local decl count
00017ab: 42 ; i64.const
00017ac: 01 ; i64 literal
-00017ad: c2 ; i64.extend8_s
+00017ad: bf ; f64.reinterpret/i64
00017ae: 1a ; drop
00017af: 0b ; end
00017a9: 06 ; FIXUP func body size
-; function body 169
+; function body 165
00017b0: 00 ; func body size (guess)
00017b1: 00 ; local decl count
-00017b2: 42 ; i64.const
-00017b3: 01 ; i64 literal
-00017b4: c3 ; i64.extend16_s
-00017b5: 1a ; drop
-00017b6: 0b ; end
-00017b0: 06 ; FIXUP func body size
-; function body 170
-00017b7: 00 ; func body size (guess)
-00017b8: 00 ; local decl count
-00017b9: 42 ; i64.const
-00017ba: 01 ; i64 literal
-00017bb: c4 ; i64.extend32_s
+00017b2: 44 ; f64.const
+00017b3: 0000 0000 0000 f03f ; f64 literal
+00017bb: bd ; i64.reinterpret/f64
00017bc: 1a ; drop
00017bd: 0b ; end
-00017b7: 06 ; FIXUP func body size
-; function body 171
+00017b0: 0d ; FIXUP func body size
+; function body 166
00017be: 00 ; func body size (guess)
-00017bf: 01 ; local decl count
-00017c0: 01 ; local type count
-00017c1: 7f ; i32
-00017c2: 0b ; end
-00017be: 04 ; FIXUP func body size
+00017bf: 00 ; local decl count
+00017c0: 41 ; i32.const
+00017c1: 01 ; i32 literal
+00017c2: c0 ; i32.extend8_s
+00017c3: 1a ; drop
+00017c4: 0b ; end
+00017be: 06 ; FIXUP func body size
+; function body 167
+00017c5: 00 ; func body size (guess)
+00017c6: 00 ; local decl count
+00017c7: 41 ; i32.const
+00017c8: 01 ; i32 literal
+00017c9: c1 ; i32.extend16_s
+00017ca: 1a ; drop
+00017cb: 0b ; end
+00017c5: 06 ; FIXUP func body size
+; function body 168
+00017cc: 00 ; func body size (guess)
+00017cd: 00 ; local decl count
+00017ce: 42 ; i64.const
+00017cf: 01 ; i64 literal
+00017d0: c2 ; i64.extend8_s
+00017d1: 1a ; drop
+00017d2: 0b ; end
+00017cc: 06 ; FIXUP func body size
+; function body 169
+00017d3: 00 ; func body size (guess)
+00017d4: 00 ; local decl count
+00017d5: 42 ; i64.const
+00017d6: 01 ; i64 literal
+00017d7: c3 ; i64.extend16_s
+00017d8: 1a ; drop
+00017d9: 0b ; end
+00017d3: 06 ; FIXUP func body size
+; function body 170
+00017da: 00 ; func body size (guess)
+00017db: 00 ; local decl count
+00017dc: 42 ; i64.const
+00017dd: 01 ; i64 literal
+00017de: c4 ; i64.extend32_s
+00017df: 1a ; drop
+00017e0: 0b ; end
+00017da: 06 ; FIXUP func body size
+; function body 171
+00017e1: 00 ; func body size (guess)
+00017e2: 01 ; local decl count
+00017e3: 01 ; local type count
+00017e4: 7f ; i32
+00017e5: 0b ; end
+00017e1: 04 ; FIXUP func body size
; function body 172
-00017c3: 00 ; func body size (guess)
-00017c4: 00 ; local decl count
-00017c5: 41 ; i32.const
-00017c6: 01 ; i32 literal
-00017c7: 0d ; br_if
-00017c8: 00 ; break depth
-00017c9: 0b ; end
-00017c3: 06 ; FIXUP func body size
+00017e6: 00 ; func body size (guess)
+00017e7: 00 ; local decl count
+00017e8: 41 ; i32.const
+00017e9: 01 ; i32 literal
+00017ea: 0d ; br_if
+00017eb: 00 ; break depth
+00017ec: 0b ; end
+00017e6: 06 ; FIXUP func body size
; function body 173
-00017ca: 00 ; func body size (guess)
-00017cb: 00 ; local decl count
-00017cc: 41 ; i32.const
-00017cd: 01 ; i32 literal
-00017ce: 10 ; call
-00017cf: 00 ; function index
-00017d0: 0b ; end
-00017ca: 06 ; FIXUP func body size
+00017ed: 00 ; func body size (guess)
+00017ee: 00 ; local decl count
+00017ef: 41 ; i32.const
+00017f0: 01 ; i32 literal
+00017f1: 10 ; call
+00017f2: 00 ; function index
+00017f3: 0b ; end
+00017ed: 06 ; FIXUP func body size
; function body 174
-00017d1: 00 ; func body size (guess)
-00017d2: 00 ; local decl count
-00017d3: 41 ; i32.const
-00017d4: 01 ; i32 literal
-00017d5: 0e ; br_table
-00017d6: 00 ; num targets
-00017d7: 00 ; break depth for default
-00017d8: 0b ; end
-00017d1: 07 ; FIXUP func body size
+00017f4: 00 ; func body size (guess)
+00017f5: 00 ; local decl count
+00017f6: 41 ; i32.const
+00017f7: 01 ; i32 literal
+00017f8: 0e ; br_table
+00017f9: 00 ; num targets
+00017fa: 00 ; break depth for default
+00017fb: 0b ; end
+00017f4: 07 ; FIXUP func body size
; function body 175
-00017d9: 00 ; func body size (guess)
-00017da: 00 ; local decl count
-00017db: 02 ; block
-00017dc: 7f ; i32
-00017dd: 41 ; i32.const
-00017de: 01 ; i32 literal
-00017df: 41 ; i32.const
-00017e0: 02 ; i32 literal
-00017e1: 0c ; br
-00017e2: 00 ; break depth
-00017e3: 0b ; end
-00017e4: 1a ; drop
-00017e5: 0b ; end
-00017d9: 0c ; FIXUP func body size
+00017fc: 00 ; func body size (guess)
+00017fd: 00 ; local decl count
+00017fe: 02 ; block
+00017ff: 7f ; i32
+0001800: 41 ; i32.const
+0001801: 01 ; i32 literal
+0001802: 41 ; i32.const
+0001803: 02 ; i32 literal
+0001804: 0c ; br
+0001805: 00 ; break depth
+0001806: 0b ; end
+0001807: 1a ; drop
+0001808: 0b ; end
+00017fc: 0c ; FIXUP func body size
; function body 176
-00017e6: 00 ; func body size (guess)
-00017e7: 00 ; local decl count
-00017e8: 43 ; f32.const
-00017e9: 0000 803f ; f32 literal
-00017ed: fc ; prefix
-00017ee: 00 ; i32.trunc_s:sat/f32
-00017ef: 1a ; drop
-00017f0: 0b ; end
-00017e6: 0a ; FIXUP func body size
+0001809: 00 ; func body size (guess)
+000180a: 00 ; local decl count
+000180b: 43 ; f32.const
+000180c: 0000 803f ; f32 literal
+0001810: fc ; prefix
+0001811: 00 ; i32.trunc_s:sat/f32
+0001812: 1a ; drop
+0001813: 0b ; end
+0001809: 0a ; FIXUP func body size
; function body 177
-00017f1: 00 ; func body size (guess)
-00017f2: 00 ; local decl count
-00017f3: 43 ; f32.const
-00017f4: 0000 803f ; f32 literal
-00017f8: fc ; prefix
-00017f9: 01 ; i32.trunc_u:sat/f32
-00017fa: 1a ; drop
-00017fb: 0b ; end
-00017f1: 0a ; FIXUP func body size
+0001814: 00 ; func body size (guess)
+0001815: 00 ; local decl count
+0001816: 43 ; f32.const
+0001817: 0000 803f ; f32 literal
+000181b: fc ; prefix
+000181c: 01 ; i32.trunc_u:sat/f32
+000181d: 1a ; drop
+000181e: 0b ; end
+0001814: 0a ; FIXUP func body size
; function body 178
-00017fc: 00 ; func body size (guess)
-00017fd: 00 ; local decl count
-00017fe: 44 ; f64.const
-00017ff: 0000 0000 0000 f03f ; f64 literal
-0001807: fc ; prefix
-0001808: 02 ; i32.trunc_s:sat/f64
-0001809: 1a ; drop
-000180a: 0b ; end
-00017fc: 0e ; FIXUP func body size
+000181f: 00 ; func body size (guess)
+0001820: 00 ; local decl count
+0001821: 44 ; f64.const
+0001822: 0000 0000 0000 f03f ; f64 literal
+000182a: fc ; prefix
+000182b: 02 ; i32.trunc_s:sat/f64
+000182c: 1a ; drop
+000182d: 0b ; end
+000181f: 0e ; FIXUP func body size
; function body 179
-000180b: 00 ; func body size (guess)
-000180c: 00 ; local decl count
-000180d: 44 ; f64.const
-000180e: 0000 0000 0000 f03f ; f64 literal
-0001816: fc ; prefix
-0001817: 03 ; i32.trunc_u:sat/f64
-0001818: 1a ; drop
-0001819: 0b ; end
-000180b: 0e ; FIXUP func body size
+000182e: 00 ; func body size (guess)
+000182f: 00 ; local decl count
+0001830: 44 ; f64.const
+0001831: 0000 0000 0000 f03f ; f64 literal
+0001839: fc ; prefix
+000183a: 03 ; i32.trunc_u:sat/f64
+000183b: 1a ; drop
+000183c: 0b ; end
+000182e: 0e ; FIXUP func body size
; function body 180
-000181a: 00 ; func body size (guess)
-000181b: 00 ; local decl count
-000181c: 43 ; f32.const
-000181d: 0000 803f ; f32 literal
-0001821: fc ; prefix
-0001822: 04 ; i64.trunc_s:sat/f32
-0001823: 1a ; drop
-0001824: 0b ; end
-000181a: 0a ; FIXUP func body size
+000183d: 00 ; func body size (guess)
+000183e: 00 ; local decl count
+000183f: 43 ; f32.const
+0001840: 0000 803f ; f32 literal
+0001844: fc ; prefix
+0001845: 04 ; i64.trunc_s:sat/f32
+0001846: 1a ; drop
+0001847: 0b ; end
+000183d: 0a ; FIXUP func body size
; function body 181
-0001825: 00 ; func body size (guess)
-0001826: 00 ; local decl count
-0001827: 43 ; f32.const
-0001828: 0000 803f ; f32 literal
-000182c: fc ; prefix
-000182d: 05 ; i64.trunc_u:sat/f32
-000182e: 1a ; drop
-000182f: 0b ; end
-0001825: 0a ; FIXUP func body size
+0001848: 00 ; func body size (guess)
+0001849: 00 ; local decl count
+000184a: 43 ; f32.const
+000184b: 0000 803f ; f32 literal
+000184f: fc ; prefix
+0001850: 05 ; i64.trunc_u:sat/f32
+0001851: 1a ; drop
+0001852: 0b ; end
+0001848: 0a ; FIXUP func body size
; function body 182
-0001830: 00 ; func body size (guess)
-0001831: 00 ; local decl count
-0001832: 44 ; f64.const
-0001833: 0000 0000 0000 f03f ; f64 literal
-000183b: fc ; prefix
-000183c: 06 ; i64.trunc_s:sat/f64
-000183d: 1a ; drop
-000183e: 0b ; end
-0001830: 0e ; FIXUP func body size
-; function body 183
-000183f: 00 ; func body size (guess)
-0001840: 00 ; local decl count
-0001841: 44 ; f64.const
-0001842: 0000 0000 0000 f03f ; f64 literal
-000184a: fc ; prefix
-000184b: 07 ; i64.trunc_u:sat/f64
-000184c: 1a ; drop
-000184d: 0b ; end
-000183f: 0e ; FIXUP func body size
-; function body 184
-000184e: 00 ; func body size (guess)
-000184f: 00 ; local decl count
-0001850: 41 ; i32.const
-0001851: 01 ; i32 literal
-0001852: fe ; prefix
-0001853: 10 ; i32.atomic.load
-0001854: 02 ; alignment
-0001855: 03 ; memory offset
-0001856: 1a ; drop
-0001857: 0b ; end
-000184e: 09 ; FIXUP func body size
-; function body 185
-0001858: 00 ; func body size (guess)
-0001859: 00 ; local decl count
-000185a: 41 ; i32.const
-000185b: 01 ; i32 literal
-000185c: fe ; prefix
-000185d: 11 ; i64.atomic.load
-000185e: 03 ; alignment
-000185f: 07 ; memory offset
+0001853: 00 ; func body size (guess)
+0001854: 00 ; local decl count
+0001855: 44 ; f64.const
+0001856: 0000 0000 0000 f03f ; f64 literal
+000185e: fc ; prefix
+000185f: 06 ; i64.trunc_s:sat/f64
0001860: 1a ; drop
0001861: 0b ; end
-0001858: 09 ; FIXUP func body size
-; function body 186
+0001853: 0e ; FIXUP func body size
+; function body 183
0001862: 00 ; func body size (guess)
0001863: 00 ; local decl count
-0001864: 41 ; i32.const
-0001865: 01 ; i32 literal
-0001866: fe ; prefix
-0001867: 12 ; i32.atomic.load8_u
-0001868: 00 ; alignment
-0001869: 03 ; memory offset
-000186a: 1a ; drop
-000186b: 0b ; end
-0001862: 09 ; FIXUP func body size
+0001864: 44 ; f64.const
+0001865: 0000 0000 0000 f03f ; f64 literal
+000186d: fc ; prefix
+000186e: 07 ; i64.trunc_u:sat/f64
+000186f: 1a ; drop
+0001870: 0b ; end
+0001862: 0e ; FIXUP func body size
+; function body 184
+0001871: 00 ; func body size (guess)
+0001872: 00 ; local decl count
+0001873: 41 ; i32.const
+0001874: 01 ; i32 literal
+0001875: 41 ; i32.const
+0001876: 02 ; i32 literal
+0001877: fe ; prefix
+0001878: 00 ; wake
+0001879: 02 ; alignment
+000187a: 03 ; memory offset
+000187b: 1a ; drop
+000187c: 0b ; end
+0001871: 0b ; FIXUP func body size
+; function body 185
+000187d: 00 ; func body size (guess)
+000187e: 00 ; local decl count
+000187f: 41 ; i32.const
+0001880: 01 ; i32 literal
+0001881: 41 ; i32.const
+0001882: 02 ; i32 literal
+0001883: 42 ; i64.const
+0001884: 03 ; i64 literal
+0001885: fe ; prefix
+0001886: 01 ; i32.wait
+0001887: 02 ; alignment
+0001888: 03 ; memory offset
+0001889: 1a ; drop
+000188a: 0b ; end
+000187d: 0d ; FIXUP func body size
+; function body 186
+000188b: 00 ; func body size (guess)
+000188c: 00 ; local decl count
+000188d: 41 ; i32.const
+000188e: 01 ; i32 literal
+000188f: 42 ; i64.const
+0001890: 02 ; i64 literal
+0001891: 42 ; i64.const
+0001892: 03 ; i64 literal
+0001893: fe ; prefix
+0001894: 02 ; i64.wait
+0001895: 03 ; alignment
+0001896: 03 ; memory offset
+0001897: 1a ; drop
+0001898: 0b ; end
+000188b: 0d ; FIXUP func body size
; function body 187
-000186c: 00 ; func body size (guess)
-000186d: 00 ; local decl count
-000186e: 41 ; i32.const
-000186f: 01 ; i32 literal
-0001870: fe ; prefix
-0001871: 13 ; i32.atomic.load16_u
-0001872: 01 ; alignment
-0001873: 03 ; memory offset
-0001874: 1a ; drop
-0001875: 0b ; end
-000186c: 09 ; FIXUP func body size
+0001899: 00 ; func body size (guess)
+000189a: 00 ; local decl count
+000189b: 41 ; i32.const
+000189c: 01 ; i32 literal
+000189d: fe ; prefix
+000189e: 10 ; i32.atomic.load
+000189f: 02 ; alignment
+00018a0: 03 ; memory offset
+00018a1: 1a ; drop
+00018a2: 0b ; end
+0001899: 09 ; FIXUP func body size
; function body 188
-0001876: 00 ; func body size (guess)
-0001877: 00 ; local decl count
-0001878: 41 ; i32.const
-0001879: 01 ; i32 literal
-000187a: fe ; prefix
-000187b: 14 ; i64.atomic.load8_u
-000187c: 00 ; alignment
-000187d: 03 ; memory offset
-000187e: 1a ; drop
-000187f: 0b ; end
-0001876: 09 ; FIXUP func body size
+00018a3: 00 ; func body size (guess)
+00018a4: 00 ; local decl count
+00018a5: 41 ; i32.const
+00018a6: 01 ; i32 literal
+00018a7: fe ; prefix
+00018a8: 11 ; i64.atomic.load
+00018a9: 03 ; alignment
+00018aa: 07 ; memory offset
+00018ab: 1a ; drop
+00018ac: 0b ; end
+00018a3: 09 ; FIXUP func body size
; function body 189
-0001880: 00 ; func body size (guess)
-0001881: 00 ; local decl count
-0001882: 41 ; i32.const
-0001883: 01 ; i32 literal
-0001884: fe ; prefix
-0001885: 15 ; i64.atomic.load16_u
-0001886: 01 ; alignment
-0001887: 03 ; memory offset
-0001888: 1a ; drop
-0001889: 0b ; end
-0001880: 09 ; FIXUP func body size
+00018ad: 00 ; func body size (guess)
+00018ae: 00 ; local decl count
+00018af: 41 ; i32.const
+00018b0: 01 ; i32 literal
+00018b1: fe ; prefix
+00018b2: 12 ; i32.atomic.load8_u
+00018b3: 00 ; alignment
+00018b4: 03 ; memory offset
+00018b5: 1a ; drop
+00018b6: 0b ; end
+00018ad: 09 ; FIXUP func body size
; function body 190
-000188a: 00 ; func body size (guess)
-000188b: 00 ; local decl count
-000188c: 41 ; i32.const
-000188d: 01 ; i32 literal
-000188e: fe ; prefix
-000188f: 16 ; i64.atomic.load32_u
-0001890: 02 ; alignment
-0001891: 03 ; memory offset
-0001892: 1a ; drop
-0001893: 0b ; end
-000188a: 09 ; FIXUP func body size
-; function body 191
-0001894: 00 ; func body size (guess)
-0001895: 00 ; local decl count
-0001896: 41 ; i32.const
-0001897: 01 ; i32 literal
-0001898: 41 ; i32.const
-0001899: 02 ; i32 literal
-000189a: fe ; prefix
-000189b: 17 ; i32.atomic.store
-000189c: 02 ; alignment
-000189d: 03 ; memory offset
-000189e: 0b ; end
-0001894: 0a ; FIXUP func body size
-; function body 192
-000189f: 00 ; func body size (guess)
-00018a0: 00 ; local decl count
-00018a1: 41 ; i32.const
-00018a2: 01 ; i32 literal
-00018a3: 42 ; i64.const
-00018a4: 02 ; i64 literal
-00018a5: fe ; prefix
-00018a6: 18 ; i64.atomic.store
-00018a7: 03 ; alignment
-00018a8: 07 ; memory offset
-00018a9: 0b ; end
-000189f: 0a ; FIXUP func body size
-; function body 193
-00018aa: 00 ; func body size (guess)
-00018ab: 00 ; local decl count
-00018ac: 41 ; i32.const
-00018ad: 01 ; i32 literal
-00018ae: 41 ; i32.const
-00018af: 02 ; i32 literal
-00018b0: fe ; prefix
-00018b1: 19 ; i32.atomic.store8
-00018b2: 00 ; alignment
-00018b3: 03 ; memory offset
-00018b4: 0b ; end
-00018aa: 0a ; FIXUP func body size
-; function body 194
-00018b5: 00 ; func body size (guess)
-00018b6: 00 ; local decl count
-00018b7: 41 ; i32.const
-00018b8: 01 ; i32 literal
+00018b7: 00 ; func body size (guess)
+00018b8: 00 ; local decl count
00018b9: 41 ; i32.const
-00018ba: 02 ; i32 literal
+00018ba: 01 ; i32 literal
00018bb: fe ; prefix
-00018bc: 1a ; i32.atomic.store16
+00018bc: 13 ; i32.atomic.load16_u
00018bd: 01 ; alignment
00018be: 03 ; memory offset
-00018bf: 0b ; end
-00018b5: 0a ; FIXUP func body size
-; function body 195
-00018c0: 00 ; func body size (guess)
-00018c1: 00 ; local decl count
-00018c2: 41 ; i32.const
-00018c3: 01 ; i32 literal
-00018c4: 42 ; i64.const
-00018c5: 02 ; i64 literal
-00018c6: fe ; prefix
-00018c7: 1b ; i64.atomic.store8
-00018c8: 00 ; alignment
-00018c9: 03 ; memory offset
+00018bf: 1a ; drop
+00018c0: 0b ; end
+00018b7: 09 ; FIXUP func body size
+; function body 191
+00018c1: 00 ; func body size (guess)
+00018c2: 00 ; local decl count
+00018c3: 41 ; i32.const
+00018c4: 01 ; i32 literal
+00018c5: fe ; prefix
+00018c6: 14 ; i64.atomic.load8_u
+00018c7: 00 ; alignment
+00018c8: 03 ; memory offset
+00018c9: 1a ; drop
00018ca: 0b ; end
-00018c0: 0a ; FIXUP func body size
-; function body 196
+00018c1: 09 ; FIXUP func body size
+; function body 192
00018cb: 00 ; func body size (guess)
00018cc: 00 ; local decl count
00018cd: 41 ; i32.const
00018ce: 01 ; i32 literal
-00018cf: 42 ; i64.const
-00018d0: 02 ; i64 literal
-00018d1: fe ; prefix
-00018d2: 1c ; i64.atomic.store16
-00018d3: 01 ; alignment
-00018d4: 03 ; memory offset
-00018d5: 0b ; end
-00018cb: 0a ; FIXUP func body size
+00018cf: fe ; prefix
+00018d0: 15 ; i64.atomic.load16_u
+00018d1: 01 ; alignment
+00018d2: 03 ; memory offset
+00018d3: 1a ; drop
+00018d4: 0b ; end
+00018cb: 09 ; FIXUP func body size
+; function body 193
+00018d5: 00 ; func body size (guess)
+00018d6: 00 ; local decl count
+00018d7: 41 ; i32.const
+00018d8: 01 ; i32 literal
+00018d9: fe ; prefix
+00018da: 16 ; i64.atomic.load32_u
+00018db: 02 ; alignment
+00018dc: 03 ; memory offset
+00018dd: 1a ; drop
+00018de: 0b ; end
+00018d5: 09 ; FIXUP func body size
+; function body 194
+00018df: 00 ; func body size (guess)
+00018e0: 00 ; local decl count
+00018e1: 41 ; i32.const
+00018e2: 01 ; i32 literal
+00018e3: 41 ; i32.const
+00018e4: 02 ; i32 literal
+00018e5: fe ; prefix
+00018e6: 17 ; i32.atomic.store
+00018e7: 02 ; alignment
+00018e8: 03 ; memory offset
+00018e9: 0b ; end
+00018df: 0a ; FIXUP func body size
+; function body 195
+00018ea: 00 ; func body size (guess)
+00018eb: 00 ; local decl count
+00018ec: 41 ; i32.const
+00018ed: 01 ; i32 literal
+00018ee: 42 ; i64.const
+00018ef: 02 ; i64 literal
+00018f0: fe ; prefix
+00018f1: 18 ; i64.atomic.store
+00018f2: 03 ; alignment
+00018f3: 07 ; memory offset
+00018f4: 0b ; end
+00018ea: 0a ; FIXUP func body size
+; function body 196
+00018f5: 00 ; func body size (guess)
+00018f6: 00 ; local decl count
+00018f7: 41 ; i32.const
+00018f8: 01 ; i32 literal
+00018f9: 41 ; i32.const
+00018fa: 02 ; i32 literal
+00018fb: fe ; prefix
+00018fc: 19 ; i32.atomic.store8
+00018fd: 00 ; alignment
+00018fe: 03 ; memory offset
+00018ff: 0b ; end
+00018f5: 0a ; FIXUP func body size
; function body 197
-00018d6: 00 ; func body size (guess)
-00018d7: 00 ; local decl count
-00018d8: 41 ; i32.const
-00018d9: 01 ; i32 literal
-00018da: 42 ; i64.const
-00018db: 02 ; i64 literal
-00018dc: fe ; prefix
-00018dd: 1d ; i64.atomic.store32
-00018de: 02 ; alignment
-00018df: 03 ; memory offset
-00018e0: 0b ; end
-00018d6: 0a ; FIXUP func body size
+0001900: 00 ; func body size (guess)
+0001901: 00 ; local decl count
+0001902: 41 ; i32.const
+0001903: 01 ; i32 literal
+0001904: 41 ; i32.const
+0001905: 02 ; i32 literal
+0001906: fe ; prefix
+0001907: 1a ; i32.atomic.store16
+0001908: 01 ; alignment
+0001909: 03 ; memory offset
+000190a: 0b ; end
+0001900: 0a ; FIXUP func body size
; function body 198
-00018e1: 00 ; func body size (guess)
-00018e2: 00 ; local decl count
-00018e3: 41 ; i32.const
-00018e4: 01 ; i32 literal
-00018e5: 41 ; i32.const
-00018e6: 02 ; i32 literal
-00018e7: fe ; prefix
-00018e8: 1e ; i32.atomic.rmw.add
-00018e9: 02 ; alignment
-00018ea: 03 ; memory offset
-00018eb: 1a ; drop
-00018ec: 0b ; end
-00018e1: 0b ; FIXUP func body size
+000190b: 00 ; func body size (guess)
+000190c: 00 ; local decl count
+000190d: 41 ; i32.const
+000190e: 01 ; i32 literal
+000190f: 42 ; i64.const
+0001910: 02 ; i64 literal
+0001911: fe ; prefix
+0001912: 1b ; i64.atomic.store8
+0001913: 00 ; alignment
+0001914: 03 ; memory offset
+0001915: 0b ; end
+000190b: 0a ; FIXUP func body size
; function body 199
-00018ed: 00 ; func body size (guess)
-00018ee: 00 ; local decl count
-00018ef: 41 ; i32.const
-00018f0: 01 ; i32 literal
-00018f1: 42 ; i64.const
-00018f2: 02 ; i64 literal
-00018f3: fe ; prefix
-00018f4: 1f ; i64.atomic.rmw.add
-00018f5: 03 ; alignment
-00018f6: 07 ; memory offset
-00018f7: 1a ; drop
-00018f8: 0b ; end
-00018ed: 0b ; FIXUP func body size
+0001916: 00 ; func body size (guess)
+0001917: 00 ; local decl count
+0001918: 41 ; i32.const
+0001919: 01 ; i32 literal
+000191a: 42 ; i64.const
+000191b: 02 ; i64 literal
+000191c: fe ; prefix
+000191d: 1c ; i64.atomic.store16
+000191e: 01 ; alignment
+000191f: 03 ; memory offset
+0001920: 0b ; end
+0001916: 0a ; FIXUP func body size
; function body 200
-00018f9: 00 ; func body size (guess)
-00018fa: 00 ; local decl count
-00018fb: 41 ; i32.const
-00018fc: 01 ; i32 literal
-00018fd: 41 ; i32.const
-00018fe: 02 ; i32 literal
-00018ff: fe ; prefix
-0001900: 20 ; i32.atomic.rmw8_u.add
-0001901: 00 ; alignment
-0001902: 03 ; memory offset
-0001903: 1a ; drop
-0001904: 0b ; end
-00018f9: 0b ; FIXUP func body size
+0001921: 00 ; func body size (guess)
+0001922: 00 ; local decl count
+0001923: 41 ; i32.const
+0001924: 01 ; i32 literal
+0001925: 42 ; i64.const
+0001926: 02 ; i64 literal
+0001927: fe ; prefix
+0001928: 1d ; i64.atomic.store32
+0001929: 02 ; alignment
+000192a: 03 ; memory offset
+000192b: 0b ; end
+0001921: 0a ; FIXUP func body size
; function body 201
-0001905: 00 ; func body size (guess)
-0001906: 00 ; local decl count
-0001907: 41 ; i32.const
-0001908: 01 ; i32 literal
-0001909: 41 ; i32.const
-000190a: 02 ; i32 literal
-000190b: fe ; prefix
-000190c: 21 ; i32.atomic.rmw16_u.add
-000190d: 01 ; alignment
-000190e: 03 ; memory offset
-000190f: 1a ; drop
-0001910: 0b ; end
-0001905: 0b ; FIXUP func body size
+000192c: 00 ; func body size (guess)
+000192d: 00 ; local decl count
+000192e: 41 ; i32.const
+000192f: 01 ; i32 literal
+0001930: 41 ; i32.const
+0001931: 02 ; i32 literal
+0001932: fe ; prefix
+0001933: 1e ; i32.atomic.rmw.add
+0001934: 02 ; alignment
+0001935: 03 ; memory offset
+0001936: 1a ; drop
+0001937: 0b ; end
+000192c: 0b ; FIXUP func body size
; function body 202
-0001911: 00 ; func body size (guess)
-0001912: 00 ; local decl count
-0001913: 41 ; i32.const
-0001914: 01 ; i32 literal
-0001915: 42 ; i64.const
-0001916: 02 ; i64 literal
-0001917: fe ; prefix
-0001918: 22 ; i64.atomic.rmw8_u.add
-0001919: 00 ; alignment
-000191a: 03 ; memory offset
-000191b: 1a ; drop
-000191c: 0b ; end
-0001911: 0b ; FIXUP func body size
+0001938: 00 ; func body size (guess)
+0001939: 00 ; local decl count
+000193a: 41 ; i32.const
+000193b: 01 ; i32 literal
+000193c: 42 ; i64.const
+000193d: 02 ; i64 literal
+000193e: fe ; prefix
+000193f: 1f ; i64.atomic.rmw.add
+0001940: 03 ; alignment
+0001941: 07 ; memory offset
+0001942: 1a ; drop
+0001943: 0b ; end
+0001938: 0b ; FIXUP func body size
; function body 203
-000191d: 00 ; func body size (guess)
-000191e: 00 ; local decl count
-000191f: 41 ; i32.const
-0001920: 01 ; i32 literal
-0001921: 42 ; i64.const
-0001922: 02 ; i64 literal
-0001923: fe ; prefix
-0001924: 23 ; i64.atomic.rmw16_u.add
-0001925: 01 ; alignment
-0001926: 03 ; memory offset
-0001927: 1a ; drop
-0001928: 0b ; end
-000191d: 0b ; FIXUP func body size
+0001944: 00 ; func body size (guess)
+0001945: 00 ; local decl count
+0001946: 41 ; i32.const
+0001947: 01 ; i32 literal
+0001948: 41 ; i32.const
+0001949: 02 ; i32 literal
+000194a: fe ; prefix
+000194b: 20 ; i32.atomic.rmw8_u.add
+000194c: 00 ; alignment
+000194d: 03 ; memory offset
+000194e: 1a ; drop
+000194f: 0b ; end
+0001944: 0b ; FIXUP func body size
; function body 204
-0001929: 00 ; func body size (guess)
-000192a: 00 ; local decl count
-000192b: 41 ; i32.const
-000192c: 01 ; i32 literal
-000192d: 42 ; i64.const
-000192e: 02 ; i64 literal
-000192f: fe ; prefix
-0001930: 24 ; i64.atomic.rmw32_u.add
-0001931: 02 ; alignment
-0001932: 03 ; memory offset
-0001933: 1a ; drop
-0001934: 0b ; end
-0001929: 0b ; FIXUP func body size
+0001950: 00 ; func body size (guess)
+0001951: 00 ; local decl count
+0001952: 41 ; i32.const
+0001953: 01 ; i32 literal
+0001954: 41 ; i32.const
+0001955: 02 ; i32 literal
+0001956: fe ; prefix
+0001957: 21 ; i32.atomic.rmw16_u.add
+0001958: 01 ; alignment
+0001959: 03 ; memory offset
+000195a: 1a ; drop
+000195b: 0b ; end
+0001950: 0b ; FIXUP func body size
; function body 205
-0001935: 00 ; func body size (guess)
-0001936: 00 ; local decl count
-0001937: 41 ; i32.const
-0001938: 01 ; i32 literal
-0001939: 41 ; i32.const
-000193a: 02 ; i32 literal
-000193b: fe ; prefix
-000193c: 25 ; i32.atomic.rmw.sub
-000193d: 02 ; alignment
-000193e: 03 ; memory offset
-000193f: 1a ; drop
-0001940: 0b ; end
-0001935: 0b ; FIXUP func body size
+000195c: 00 ; func body size (guess)
+000195d: 00 ; local decl count
+000195e: 41 ; i32.const
+000195f: 01 ; i32 literal
+0001960: 42 ; i64.const
+0001961: 02 ; i64 literal
+0001962: fe ; prefix
+0001963: 22 ; i64.atomic.rmw8_u.add
+0001964: 00 ; alignment
+0001965: 03 ; memory offset
+0001966: 1a ; drop
+0001967: 0b ; end
+000195c: 0b ; FIXUP func body size
; function body 206
-0001941: 00 ; func body size (guess)
-0001942: 00 ; local decl count
-0001943: 41 ; i32.const
-0001944: 01 ; i32 literal
-0001945: 42 ; i64.const
-0001946: 02 ; i64 literal
-0001947: fe ; prefix
-0001948: 26 ; i64.atomic.rmw.sub
-0001949: 03 ; alignment
-000194a: 07 ; memory offset
-000194b: 1a ; drop
-000194c: 0b ; end
-0001941: 0b ; FIXUP func body size
+0001968: 00 ; func body size (guess)
+0001969: 00 ; local decl count
+000196a: 41 ; i32.const
+000196b: 01 ; i32 literal
+000196c: 42 ; i64.const
+000196d: 02 ; i64 literal
+000196e: fe ; prefix
+000196f: 23 ; i64.atomic.rmw16_u.add
+0001970: 01 ; alignment
+0001971: 03 ; memory offset
+0001972: 1a ; drop
+0001973: 0b ; end
+0001968: 0b ; FIXUP func body size
; function body 207
-000194d: 00 ; func body size (guess)
-000194e: 00 ; local decl count
-000194f: 41 ; i32.const
-0001950: 01 ; i32 literal
-0001951: 41 ; i32.const
-0001952: 02 ; i32 literal
-0001953: fe ; prefix
-0001954: 27 ; i32.atomic.rmw8_u.sub
-0001955: 00 ; alignment
-0001956: 03 ; memory offset
-0001957: 1a ; drop
-0001958: 0b ; end
-000194d: 0b ; FIXUP func body size
+0001974: 00 ; func body size (guess)
+0001975: 00 ; local decl count
+0001976: 41 ; i32.const
+0001977: 01 ; i32 literal
+0001978: 42 ; i64.const
+0001979: 02 ; i64 literal
+000197a: fe ; prefix
+000197b: 24 ; i64.atomic.rmw32_u.add
+000197c: 02 ; alignment
+000197d: 03 ; memory offset
+000197e: 1a ; drop
+000197f: 0b ; end
+0001974: 0b ; FIXUP func body size
; function body 208
-0001959: 00 ; func body size (guess)
-000195a: 00 ; local decl count
-000195b: 41 ; i32.const
-000195c: 01 ; i32 literal
-000195d: 41 ; i32.const
-000195e: 02 ; i32 literal
-000195f: fe ; prefix
-0001960: 28 ; i32.atomic.rmw16_u.sub
-0001961: 01 ; alignment
-0001962: 03 ; memory offset
-0001963: 1a ; drop
-0001964: 0b ; end
-0001959: 0b ; FIXUP func body size
+0001980: 00 ; func body size (guess)
+0001981: 00 ; local decl count
+0001982: 41 ; i32.const
+0001983: 01 ; i32 literal
+0001984: 41 ; i32.const
+0001985: 02 ; i32 literal
+0001986: fe ; prefix
+0001987: 25 ; i32.atomic.rmw.sub
+0001988: 02 ; alignment
+0001989: 03 ; memory offset
+000198a: 1a ; drop
+000198b: 0b ; end
+0001980: 0b ; FIXUP func body size
; function body 209
-0001965: 00 ; func body size (guess)
-0001966: 00 ; local decl count
-0001967: 41 ; i32.const
-0001968: 01 ; i32 literal
-0001969: 42 ; i64.const
-000196a: 02 ; i64 literal
-000196b: fe ; prefix
-000196c: 29 ; i64.atomic.rmw8_u.sub
-000196d: 00 ; alignment
-000196e: 03 ; memory offset
-000196f: 1a ; drop
-0001970: 0b ; end
-0001965: 0b ; FIXUP func body size
+000198c: 00 ; func body size (guess)
+000198d: 00 ; local decl count
+000198e: 41 ; i32.const
+000198f: 01 ; i32 literal
+0001990: 42 ; i64.const
+0001991: 02 ; i64 literal
+0001992: fe ; prefix
+0001993: 26 ; i64.atomic.rmw.sub
+0001994: 03 ; alignment
+0001995: 07 ; memory offset
+0001996: 1a ; drop
+0001997: 0b ; end
+000198c: 0b ; FIXUP func body size
; function body 210
-0001971: 00 ; func body size (guess)
-0001972: 00 ; local decl count
-0001973: 41 ; i32.const
-0001974: 01 ; i32 literal
-0001975: 42 ; i64.const
-0001976: 02 ; i64 literal
-0001977: fe ; prefix
-0001978: 2a ; i64.atomic.rmw16_u.sub
-0001979: 01 ; alignment
-000197a: 03 ; memory offset
-000197b: 1a ; drop
-000197c: 0b ; end
-0001971: 0b ; FIXUP func body size
+0001998: 00 ; func body size (guess)
+0001999: 00 ; local decl count
+000199a: 41 ; i32.const
+000199b: 01 ; i32 literal
+000199c: 41 ; i32.const
+000199d: 02 ; i32 literal
+000199e: fe ; prefix
+000199f: 27 ; i32.atomic.rmw8_u.sub
+00019a0: 00 ; alignment
+00019a1: 03 ; memory offset
+00019a2: 1a ; drop
+00019a3: 0b ; end
+0001998: 0b ; FIXUP func body size
; function body 211
-000197d: 00 ; func body size (guess)
-000197e: 00 ; local decl count
-000197f: 41 ; i32.const
-0001980: 01 ; i32 literal
-0001981: 42 ; i64.const
-0001982: 02 ; i64 literal
-0001983: fe ; prefix
-0001984: 2b ; i64.atomic.rmw32_u.sub
-0001985: 02 ; alignment
-0001986: 03 ; memory offset
-0001987: 1a ; drop
-0001988: 0b ; end
-000197d: 0b ; FIXUP func body size
+00019a4: 00 ; func body size (guess)
+00019a5: 00 ; local decl count
+00019a6: 41 ; i32.const
+00019a7: 01 ; i32 literal
+00019a8: 41 ; i32.const
+00019a9: 02 ; i32 literal
+00019aa: fe ; prefix
+00019ab: 28 ; i32.atomic.rmw16_u.sub
+00019ac: 01 ; alignment
+00019ad: 03 ; memory offset
+00019ae: 1a ; drop
+00019af: 0b ; end
+00019a4: 0b ; FIXUP func body size
; function body 212
-0001989: 00 ; func body size (guess)
-000198a: 00 ; local decl count
-000198b: 41 ; i32.const
-000198c: 01 ; i32 literal
-000198d: 41 ; i32.const
-000198e: 02 ; i32 literal
-000198f: fe ; prefix
-0001990: 2c ; i32.atomic.rmw.and
-0001991: 02 ; alignment
-0001992: 03 ; memory offset
-0001993: 1a ; drop
-0001994: 0b ; end
-0001989: 0b ; FIXUP func body size
+00019b0: 00 ; func body size (guess)
+00019b1: 00 ; local decl count
+00019b2: 41 ; i32.const
+00019b3: 01 ; i32 literal
+00019b4: 42 ; i64.const
+00019b5: 02 ; i64 literal
+00019b6: fe ; prefix
+00019b7: 29 ; i64.atomic.rmw8_u.sub
+00019b8: 00 ; alignment
+00019b9: 03 ; memory offset
+00019ba: 1a ; drop
+00019bb: 0b ; end
+00019b0: 0b ; FIXUP func body size
; function body 213
-0001995: 00 ; func body size (guess)
-0001996: 00 ; local decl count
-0001997: 41 ; i32.const
-0001998: 01 ; i32 literal
-0001999: 42 ; i64.const
-000199a: 02 ; i64 literal
-000199b: fe ; prefix
-000199c: 2d ; i64.atomic.rmw.and
-000199d: 03 ; alignment
-000199e: 07 ; memory offset
-000199f: 1a ; drop
-00019a0: 0b ; end
-0001995: 0b ; FIXUP func body size
+00019bc: 00 ; func body size (guess)
+00019bd: 00 ; local decl count
+00019be: 41 ; i32.const
+00019bf: 01 ; i32 literal
+00019c0: 42 ; i64.const
+00019c1: 02 ; i64 literal
+00019c2: fe ; prefix
+00019c3: 2a ; i64.atomic.rmw16_u.sub
+00019c4: 01 ; alignment
+00019c5: 03 ; memory offset
+00019c6: 1a ; drop
+00019c7: 0b ; end
+00019bc: 0b ; FIXUP func body size
; function body 214
-00019a1: 00 ; func body size (guess)
-00019a2: 00 ; local decl count
-00019a3: 41 ; i32.const
-00019a4: 01 ; i32 literal
-00019a5: 41 ; i32.const
-00019a6: 02 ; i32 literal
-00019a7: fe ; prefix
-00019a8: 2e ; i32.atomic.rmw8_u.and
-00019a9: 00 ; alignment
-00019aa: 03 ; memory offset
-00019ab: 1a ; drop
-00019ac: 0b ; end
-00019a1: 0b ; FIXUP func body size
+00019c8: 00 ; func body size (guess)
+00019c9: 00 ; local decl count
+00019ca: 41 ; i32.const
+00019cb: 01 ; i32 literal
+00019cc: 42 ; i64.const
+00019cd: 02 ; i64 literal
+00019ce: fe ; prefix
+00019cf: 2b ; i64.atomic.rmw32_u.sub
+00019d0: 02 ; alignment
+00019d1: 03 ; memory offset
+00019d2: 1a ; drop
+00019d3: 0b ; end
+00019c8: 0b ; FIXUP func body size
; function body 215
-00019ad: 00 ; func body size (guess)
-00019ae: 00 ; local decl count
-00019af: 41 ; i32.const
-00019b0: 01 ; i32 literal
-00019b1: 41 ; i32.const
-00019b2: 02 ; i32 literal
-00019b3: fe ; prefix
-00019b4: 2f ; i32.atomic.rmw16_u.and
-00019b5: 01 ; alignment
-00019b6: 03 ; memory offset
-00019b7: 1a ; drop
-00019b8: 0b ; end
-00019ad: 0b ; FIXUP func body size
+00019d4: 00 ; func body size (guess)
+00019d5: 00 ; local decl count
+00019d6: 41 ; i32.const
+00019d7: 01 ; i32 literal
+00019d8: 41 ; i32.const
+00019d9: 02 ; i32 literal
+00019da: fe ; prefix
+00019db: 2c ; i32.atomic.rmw.and
+00019dc: 02 ; alignment
+00019dd: 03 ; memory offset
+00019de: 1a ; drop
+00019df: 0b ; end
+00019d4: 0b ; FIXUP func body size
; function body 216
-00019b9: 00 ; func body size (guess)
-00019ba: 00 ; local decl count
-00019bb: 41 ; i32.const
-00019bc: 01 ; i32 literal
-00019bd: 42 ; i64.const
-00019be: 02 ; i64 literal
-00019bf: fe ; prefix
-00019c0: 30 ; i64.atomic.rmw8_u.and
-00019c1: 00 ; alignment
-00019c2: 03 ; memory offset
-00019c3: 1a ; drop
-00019c4: 0b ; end
-00019b9: 0b ; FIXUP func body size
+00019e0: 00 ; func body size (guess)
+00019e1: 00 ; local decl count
+00019e2: 41 ; i32.const
+00019e3: 01 ; i32 literal
+00019e4: 42 ; i64.const
+00019e5: 02 ; i64 literal
+00019e6: fe ; prefix
+00019e7: 2d ; i64.atomic.rmw.and
+00019e8: 03 ; alignment
+00019e9: 07 ; memory offset
+00019ea: 1a ; drop
+00019eb: 0b ; end
+00019e0: 0b ; FIXUP func body size
; function body 217
-00019c5: 00 ; func body size (guess)
-00019c6: 00 ; local decl count
-00019c7: 41 ; i32.const
-00019c8: 01 ; i32 literal
-00019c9: 42 ; i64.const
-00019ca: 02 ; i64 literal
-00019cb: fe ; prefix
-00019cc: 31 ; i64.atomic.rmw16_u.and
-00019cd: 01 ; alignment
-00019ce: 03 ; memory offset
-00019cf: 1a ; drop
-00019d0: 0b ; end
-00019c5: 0b ; FIXUP func body size
+00019ec: 00 ; func body size (guess)
+00019ed: 00 ; local decl count
+00019ee: 41 ; i32.const
+00019ef: 01 ; i32 literal
+00019f0: 41 ; i32.const
+00019f1: 02 ; i32 literal
+00019f2: fe ; prefix
+00019f3: 2e ; i32.atomic.rmw8_u.and
+00019f4: 00 ; alignment
+00019f5: 03 ; memory offset
+00019f6: 1a ; drop
+00019f7: 0b ; end
+00019ec: 0b ; FIXUP func body size
; function body 218
-00019d1: 00 ; func body size (guess)
-00019d2: 00 ; local decl count
-00019d3: 41 ; i32.const
-00019d4: 01 ; i32 literal
-00019d5: 42 ; i64.const
-00019d6: 02 ; i64 literal
-00019d7: fe ; prefix
-00019d8: 32 ; i64.atomic.rmw32_u.and
-00019d9: 02 ; alignment
-00019da: 03 ; memory offset
-00019db: 1a ; drop
-00019dc: 0b ; end
-00019d1: 0b ; FIXUP func body size
+00019f8: 00 ; func body size (guess)
+00019f9: 00 ; local decl count
+00019fa: 41 ; i32.const
+00019fb: 01 ; i32 literal
+00019fc: 41 ; i32.const
+00019fd: 02 ; i32 literal
+00019fe: fe ; prefix
+00019ff: 2f ; i32.atomic.rmw16_u.and
+0001a00: 01 ; alignment
+0001a01: 03 ; memory offset
+0001a02: 1a ; drop
+0001a03: 0b ; end
+00019f8: 0b ; FIXUP func body size
; function body 219
-00019dd: 00 ; func body size (guess)
-00019de: 00 ; local decl count
-00019df: 41 ; i32.const
-00019e0: 01 ; i32 literal
-00019e1: 41 ; i32.const
-00019e2: 02 ; i32 literal
-00019e3: fe ; prefix
-00019e4: 33 ; i32.atomic.rmw.or
-00019e5: 02 ; alignment
-00019e6: 03 ; memory offset
-00019e7: 1a ; drop
-00019e8: 0b ; end
-00019dd: 0b ; FIXUP func body size
+0001a04: 00 ; func body size (guess)
+0001a05: 00 ; local decl count
+0001a06: 41 ; i32.const
+0001a07: 01 ; i32 literal
+0001a08: 42 ; i64.const
+0001a09: 02 ; i64 literal
+0001a0a: fe ; prefix
+0001a0b: 30 ; i64.atomic.rmw8_u.and
+0001a0c: 00 ; alignment
+0001a0d: 03 ; memory offset
+0001a0e: 1a ; drop
+0001a0f: 0b ; end
+0001a04: 0b ; FIXUP func body size
; function body 220
-00019e9: 00 ; func body size (guess)
-00019ea: 00 ; local decl count
-00019eb: 41 ; i32.const
-00019ec: 01 ; i32 literal
-00019ed: 42 ; i64.const
-00019ee: 02 ; i64 literal
-00019ef: fe ; prefix
-00019f0: 34 ; i64.atomic.rmw.or
-00019f1: 03 ; alignment
-00019f2: 07 ; memory offset
-00019f3: 1a ; drop
-00019f4: 0b ; end
-00019e9: 0b ; FIXUP func body size
+0001a10: 00 ; func body size (guess)
+0001a11: 00 ; local decl count
+0001a12: 41 ; i32.const
+0001a13: 01 ; i32 literal
+0001a14: 42 ; i64.const
+0001a15: 02 ; i64 literal
+0001a16: fe ; prefix
+0001a17: 31 ; i64.atomic.rmw16_u.and
+0001a18: 01 ; alignment
+0001a19: 03 ; memory offset
+0001a1a: 1a ; drop
+0001a1b: 0b ; end
+0001a10: 0b ; FIXUP func body size
; function body 221
-00019f5: 00 ; func body size (guess)
-00019f6: 00 ; local decl count
-00019f7: 41 ; i32.const
-00019f8: 01 ; i32 literal
-00019f9: 41 ; i32.const
-00019fa: 02 ; i32 literal
-00019fb: fe ; prefix
-00019fc: 35 ; i32.atomic.rmw8_u.or
-00019fd: 00 ; alignment
-00019fe: 03 ; memory offset
-00019ff: 1a ; drop
-0001a00: 0b ; end
-00019f5: 0b ; FIXUP func body size
+0001a1c: 00 ; func body size (guess)
+0001a1d: 00 ; local decl count
+0001a1e: 41 ; i32.const
+0001a1f: 01 ; i32 literal
+0001a20: 42 ; i64.const
+0001a21: 02 ; i64 literal
+0001a22: fe ; prefix
+0001a23: 32 ; i64.atomic.rmw32_u.and
+0001a24: 02 ; alignment
+0001a25: 03 ; memory offset
+0001a26: 1a ; drop
+0001a27: 0b ; end
+0001a1c: 0b ; FIXUP func body size
; function body 222
-0001a01: 00 ; func body size (guess)
-0001a02: 00 ; local decl count
-0001a03: 41 ; i32.const
-0001a04: 01 ; i32 literal
-0001a05: 41 ; i32.const
-0001a06: 02 ; i32 literal
-0001a07: fe ; prefix
-0001a08: 36 ; i32.atomic.rmw16_u.or
-0001a09: 01 ; alignment
-0001a0a: 03 ; memory offset
-0001a0b: 1a ; drop
-0001a0c: 0b ; end
-0001a01: 0b ; FIXUP func body size
+0001a28: 00 ; func body size (guess)
+0001a29: 00 ; local decl count
+0001a2a: 41 ; i32.const
+0001a2b: 01 ; i32 literal
+0001a2c: 41 ; i32.const
+0001a2d: 02 ; i32 literal
+0001a2e: fe ; prefix
+0001a2f: 33 ; i32.atomic.rmw.or
+0001a30: 02 ; alignment
+0001a31: 03 ; memory offset
+0001a32: 1a ; drop
+0001a33: 0b ; end
+0001a28: 0b ; FIXUP func body size
; function body 223
-0001a0d: 00 ; func body size (guess)
-0001a0e: 00 ; local decl count
-0001a0f: 41 ; i32.const
-0001a10: 01 ; i32 literal
-0001a11: 42 ; i64.const
-0001a12: 02 ; i64 literal
-0001a13: fe ; prefix
-0001a14: 37 ; i64.atomic.rmw8_u.or
-0001a15: 00 ; alignment
-0001a16: 03 ; memory offset
-0001a17: 1a ; drop
-0001a18: 0b ; end
-0001a0d: 0b ; FIXUP func body size
+0001a34: 00 ; func body size (guess)
+0001a35: 00 ; local decl count
+0001a36: 41 ; i32.const
+0001a37: 01 ; i32 literal
+0001a38: 42 ; i64.const
+0001a39: 02 ; i64 literal
+0001a3a: fe ; prefix
+0001a3b: 34 ; i64.atomic.rmw.or
+0001a3c: 03 ; alignment
+0001a3d: 07 ; memory offset
+0001a3e: 1a ; drop
+0001a3f: 0b ; end
+0001a34: 0b ; FIXUP func body size
; function body 224
-0001a19: 00 ; func body size (guess)
-0001a1a: 00 ; local decl count
-0001a1b: 41 ; i32.const
-0001a1c: 01 ; i32 literal
-0001a1d: 42 ; i64.const
-0001a1e: 02 ; i64 literal
-0001a1f: fe ; prefix
-0001a20: 38 ; i64.atomic.rmw16_u.or
-0001a21: 01 ; alignment
-0001a22: 03 ; memory offset
-0001a23: 1a ; drop
-0001a24: 0b ; end
-0001a19: 0b ; FIXUP func body size
+0001a40: 00 ; func body size (guess)
+0001a41: 00 ; local decl count
+0001a42: 41 ; i32.const
+0001a43: 01 ; i32 literal
+0001a44: 41 ; i32.const
+0001a45: 02 ; i32 literal
+0001a46: fe ; prefix
+0001a47: 35 ; i32.atomic.rmw8_u.or
+0001a48: 00 ; alignment
+0001a49: 03 ; memory offset
+0001a4a: 1a ; drop
+0001a4b: 0b ; end
+0001a40: 0b ; FIXUP func body size
; function body 225
-0001a25: 00 ; func body size (guess)
-0001a26: 00 ; local decl count
-0001a27: 41 ; i32.const
-0001a28: 01 ; i32 literal
-0001a29: 42 ; i64.const
-0001a2a: 02 ; i64 literal
-0001a2b: fe ; prefix
-0001a2c: 39 ; i64.atomic.rmw32_u.or
-0001a2d: 02 ; alignment
-0001a2e: 03 ; memory offset
-0001a2f: 1a ; drop
-0001a30: 0b ; end
-0001a25: 0b ; FIXUP func body size
+0001a4c: 00 ; func body size (guess)
+0001a4d: 00 ; local decl count
+0001a4e: 41 ; i32.const
+0001a4f: 01 ; i32 literal
+0001a50: 41 ; i32.const
+0001a51: 02 ; i32 literal
+0001a52: fe ; prefix
+0001a53: 36 ; i32.atomic.rmw16_u.or
+0001a54: 01 ; alignment
+0001a55: 03 ; memory offset
+0001a56: 1a ; drop
+0001a57: 0b ; end
+0001a4c: 0b ; FIXUP func body size
; function body 226
-0001a31: 00 ; func body size (guess)
-0001a32: 00 ; local decl count
-0001a33: 41 ; i32.const
-0001a34: 01 ; i32 literal
-0001a35: 41 ; i32.const
-0001a36: 02 ; i32 literal
-0001a37: fe ; prefix
-0001a38: 3a ; i32.atomic.rmw.xor
-0001a39: 02 ; alignment
-0001a3a: 03 ; memory offset
-0001a3b: 1a ; drop
-0001a3c: 0b ; end
-0001a31: 0b ; FIXUP func body size
+0001a58: 00 ; func body size (guess)
+0001a59: 00 ; local decl count
+0001a5a: 41 ; i32.const
+0001a5b: 01 ; i32 literal
+0001a5c: 42 ; i64.const
+0001a5d: 02 ; i64 literal
+0001a5e: fe ; prefix
+0001a5f: 37 ; i64.atomic.rmw8_u.or
+0001a60: 00 ; alignment
+0001a61: 03 ; memory offset
+0001a62: 1a ; drop
+0001a63: 0b ; end
+0001a58: 0b ; FIXUP func body size
; function body 227
-0001a3d: 00 ; func body size (guess)
-0001a3e: 00 ; local decl count
-0001a3f: 41 ; i32.const
-0001a40: 01 ; i32 literal
-0001a41: 42 ; i64.const
-0001a42: 02 ; i64 literal
-0001a43: fe ; prefix
-0001a44: 3b ; i64.atomic.rmw.xor
-0001a45: 03 ; alignment
-0001a46: 07 ; memory offset
-0001a47: 1a ; drop
-0001a48: 0b ; end
-0001a3d: 0b ; FIXUP func body size
+0001a64: 00 ; func body size (guess)
+0001a65: 00 ; local decl count
+0001a66: 41 ; i32.const
+0001a67: 01 ; i32 literal
+0001a68: 42 ; i64.const
+0001a69: 02 ; i64 literal
+0001a6a: fe ; prefix
+0001a6b: 38 ; i64.atomic.rmw16_u.or
+0001a6c: 01 ; alignment
+0001a6d: 03 ; memory offset
+0001a6e: 1a ; drop
+0001a6f: 0b ; end
+0001a64: 0b ; FIXUP func body size
; function body 228
-0001a49: 00 ; func body size (guess)
-0001a4a: 00 ; local decl count
-0001a4b: 41 ; i32.const
-0001a4c: 01 ; i32 literal
-0001a4d: 41 ; i32.const
-0001a4e: 02 ; i32 literal
-0001a4f: fe ; prefix
-0001a50: 3c ; i32.atomic.rmw8_u.xor
-0001a51: 00 ; alignment
-0001a52: 03 ; memory offset
-0001a53: 1a ; drop
-0001a54: 0b ; end
-0001a49: 0b ; FIXUP func body size
+0001a70: 00 ; func body size (guess)
+0001a71: 00 ; local decl count
+0001a72: 41 ; i32.const
+0001a73: 01 ; i32 literal
+0001a74: 42 ; i64.const
+0001a75: 02 ; i64 literal
+0001a76: fe ; prefix
+0001a77: 39 ; i64.atomic.rmw32_u.or
+0001a78: 02 ; alignment
+0001a79: 03 ; memory offset
+0001a7a: 1a ; drop
+0001a7b: 0b ; end
+0001a70: 0b ; FIXUP func body size
; function body 229
-0001a55: 00 ; func body size (guess)
-0001a56: 00 ; local decl count
-0001a57: 41 ; i32.const
-0001a58: 01 ; i32 literal
-0001a59: 41 ; i32.const
-0001a5a: 02 ; i32 literal
-0001a5b: fe ; prefix
-0001a5c: 3d ; i32.atomic.rmw16_u.xor
-0001a5d: 01 ; alignment
-0001a5e: 03 ; memory offset
-0001a5f: 1a ; drop
-0001a60: 0b ; end
-0001a55: 0b ; FIXUP func body size
+0001a7c: 00 ; func body size (guess)
+0001a7d: 00 ; local decl count
+0001a7e: 41 ; i32.const
+0001a7f: 01 ; i32 literal
+0001a80: 41 ; i32.const
+0001a81: 02 ; i32 literal
+0001a82: fe ; prefix
+0001a83: 3a ; i32.atomic.rmw.xor
+0001a84: 02 ; alignment
+0001a85: 03 ; memory offset
+0001a86: 1a ; drop
+0001a87: 0b ; end
+0001a7c: 0b ; FIXUP func body size
; function body 230
-0001a61: 00 ; func body size (guess)
-0001a62: 00 ; local decl count
-0001a63: 41 ; i32.const
-0001a64: 01 ; i32 literal
-0001a65: 42 ; i64.const
-0001a66: 02 ; i64 literal
-0001a67: fe ; prefix
-0001a68: 3e ; i64.atomic.rmw8_u.xor
-0001a69: 00 ; alignment
-0001a6a: 03 ; memory offset
-0001a6b: 1a ; drop
-0001a6c: 0b ; end
-0001a61: 0b ; FIXUP func body size
+0001a88: 00 ; func body size (guess)
+0001a89: 00 ; local decl count
+0001a8a: 41 ; i32.const
+0001a8b: 01 ; i32 literal
+0001a8c: 42 ; i64.const
+0001a8d: 02 ; i64 literal
+0001a8e: fe ; prefix
+0001a8f: 3b ; i64.atomic.rmw.xor
+0001a90: 03 ; alignment
+0001a91: 07 ; memory offset
+0001a92: 1a ; drop
+0001a93: 0b ; end
+0001a88: 0b ; FIXUP func body size
; function body 231
-0001a6d: 00 ; func body size (guess)
-0001a6e: 00 ; local decl count
-0001a6f: 41 ; i32.const
-0001a70: 01 ; i32 literal
-0001a71: 42 ; i64.const
-0001a72: 02 ; i64 literal
-0001a73: fe ; prefix
-0001a74: 3f ; i64.atomic.rmw16_u.xor
-0001a75: 01 ; alignment
-0001a76: 03 ; memory offset
-0001a77: 1a ; drop
-0001a78: 0b ; end
-0001a6d: 0b ; FIXUP func body size
+0001a94: 00 ; func body size (guess)
+0001a95: 00 ; local decl count
+0001a96: 41 ; i32.const
+0001a97: 01 ; i32 literal
+0001a98: 41 ; i32.const
+0001a99: 02 ; i32 literal
+0001a9a: fe ; prefix
+0001a9b: 3c ; i32.atomic.rmw8_u.xor
+0001a9c: 00 ; alignment
+0001a9d: 03 ; memory offset
+0001a9e: 1a ; drop
+0001a9f: 0b ; end
+0001a94: 0b ; FIXUP func body size
; function body 232
-0001a79: 00 ; func body size (guess)
-0001a7a: 00 ; local decl count
-0001a7b: 41 ; i32.const
-0001a7c: 01 ; i32 literal
-0001a7d: 42 ; i64.const
-0001a7e: 02 ; i64 literal
-0001a7f: fe ; prefix
-0001a80: 40 ; i64.atomic.rmw32_u.xor
-0001a81: 02 ; alignment
-0001a82: 03 ; memory offset
-0001a83: 1a ; drop
-0001a84: 0b ; end
-0001a79: 0b ; FIXUP func body size
+0001aa0: 00 ; func body size (guess)
+0001aa1: 00 ; local decl count
+0001aa2: 41 ; i32.const
+0001aa3: 01 ; i32 literal
+0001aa4: 41 ; i32.const
+0001aa5: 02 ; i32 literal
+0001aa6: fe ; prefix
+0001aa7: 3d ; i32.atomic.rmw16_u.xor
+0001aa8: 01 ; alignment
+0001aa9: 03 ; memory offset
+0001aaa: 1a ; drop
+0001aab: 0b ; end
+0001aa0: 0b ; FIXUP func body size
; function body 233
-0001a85: 00 ; func body size (guess)
-0001a86: 00 ; local decl count
-0001a87: 41 ; i32.const
-0001a88: 01 ; i32 literal
-0001a89: 41 ; i32.const
-0001a8a: 02 ; i32 literal
-0001a8b: fe ; prefix
-0001a8c: 41 ; i32.atomic.rmw.xchg
-0001a8d: 02 ; alignment
-0001a8e: 03 ; memory offset
-0001a8f: 1a ; drop
-0001a90: 0b ; end
-0001a85: 0b ; FIXUP func body size
+0001aac: 00 ; func body size (guess)
+0001aad: 00 ; local decl count
+0001aae: 41 ; i32.const
+0001aaf: 01 ; i32 literal
+0001ab0: 42 ; i64.const
+0001ab1: 02 ; i64 literal
+0001ab2: fe ; prefix
+0001ab3: 3e ; i64.atomic.rmw8_u.xor
+0001ab4: 00 ; alignment
+0001ab5: 03 ; memory offset
+0001ab6: 1a ; drop
+0001ab7: 0b ; end
+0001aac: 0b ; FIXUP func body size
; function body 234
-0001a91: 00 ; func body size (guess)
-0001a92: 00 ; local decl count
-0001a93: 41 ; i32.const
-0001a94: 01 ; i32 literal
-0001a95: 42 ; i64.const
-0001a96: 02 ; i64 literal
-0001a97: fe ; prefix
-0001a98: 42 ; i64.atomic.rmw.xchg
-0001a99: 03 ; alignment
-0001a9a: 07 ; memory offset
-0001a9b: 1a ; drop
-0001a9c: 0b ; end
-0001a91: 0b ; FIXUP func body size
+0001ab8: 00 ; func body size (guess)
+0001ab9: 00 ; local decl count
+0001aba: 41 ; i32.const
+0001abb: 01 ; i32 literal
+0001abc: 42 ; i64.const
+0001abd: 02 ; i64 literal
+0001abe: fe ; prefix
+0001abf: 3f ; i64.atomic.rmw16_u.xor
+0001ac0: 01 ; alignment
+0001ac1: 03 ; memory offset
+0001ac2: 1a ; drop
+0001ac3: 0b ; end
+0001ab8: 0b ; FIXUP func body size
; function body 235
-0001a9d: 00 ; func body size (guess)
-0001a9e: 00 ; local decl count
-0001a9f: 41 ; i32.const
-0001aa0: 01 ; i32 literal
-0001aa1: 41 ; i32.const
-0001aa2: 02 ; i32 literal
-0001aa3: fe ; prefix
-0001aa4: 43 ; i32.atomic.rmw8_u.xchg
-0001aa5: 00 ; alignment
-0001aa6: 03 ; memory offset
-0001aa7: 1a ; drop
-0001aa8: 0b ; end
-0001a9d: 0b ; FIXUP func body size
+0001ac4: 00 ; func body size (guess)
+0001ac5: 00 ; local decl count
+0001ac6: 41 ; i32.const
+0001ac7: 01 ; i32 literal
+0001ac8: 42 ; i64.const
+0001ac9: 02 ; i64 literal
+0001aca: fe ; prefix
+0001acb: 40 ; i64.atomic.rmw32_u.xor
+0001acc: 02 ; alignment
+0001acd: 03 ; memory offset
+0001ace: 1a ; drop
+0001acf: 0b ; end
+0001ac4: 0b ; FIXUP func body size
; function body 236
-0001aa9: 00 ; func body size (guess)
-0001aaa: 00 ; local decl count
-0001aab: 41 ; i32.const
-0001aac: 01 ; i32 literal
-0001aad: 41 ; i32.const
-0001aae: 02 ; i32 literal
-0001aaf: fe ; prefix
-0001ab0: 44 ; i32.atomic.rmw16_u.xchg
-0001ab1: 01 ; alignment
-0001ab2: 03 ; memory offset
-0001ab3: 1a ; drop
-0001ab4: 0b ; end
-0001aa9: 0b ; FIXUP func body size
+0001ad0: 00 ; func body size (guess)
+0001ad1: 00 ; local decl count
+0001ad2: 41 ; i32.const
+0001ad3: 01 ; i32 literal
+0001ad4: 41 ; i32.const
+0001ad5: 02 ; i32 literal
+0001ad6: fe ; prefix
+0001ad7: 41 ; i32.atomic.rmw.xchg
+0001ad8: 02 ; alignment
+0001ad9: 03 ; memory offset
+0001ada: 1a ; drop
+0001adb: 0b ; end
+0001ad0: 0b ; FIXUP func body size
; function body 237
-0001ab5: 00 ; func body size (guess)
-0001ab6: 00 ; local decl count
-0001ab7: 41 ; i32.const
-0001ab8: 01 ; i32 literal
-0001ab9: 42 ; i64.const
-0001aba: 02 ; i64 literal
-0001abb: fe ; prefix
-0001abc: 45 ; i64.atomic.rmw8_u.xchg
-0001abd: 00 ; alignment
-0001abe: 03 ; memory offset
-0001abf: 1a ; drop
-0001ac0: 0b ; end
-0001ab5: 0b ; FIXUP func body size
+0001adc: 00 ; func body size (guess)
+0001add: 00 ; local decl count
+0001ade: 41 ; i32.const
+0001adf: 01 ; i32 literal
+0001ae0: 42 ; i64.const
+0001ae1: 02 ; i64 literal
+0001ae2: fe ; prefix
+0001ae3: 42 ; i64.atomic.rmw.xchg
+0001ae4: 03 ; alignment
+0001ae5: 07 ; memory offset
+0001ae6: 1a ; drop
+0001ae7: 0b ; end
+0001adc: 0b ; FIXUP func body size
; function body 238
-0001ac1: 00 ; func body size (guess)
-0001ac2: 00 ; local decl count
-0001ac3: 41 ; i32.const
-0001ac4: 01 ; i32 literal
-0001ac5: 42 ; i64.const
-0001ac6: 02 ; i64 literal
-0001ac7: fe ; prefix
-0001ac8: 46 ; i64.atomic.rmw16_u.xchg
-0001ac9: 01 ; alignment
-0001aca: 03 ; memory offset
-0001acb: 1a ; drop
-0001acc: 0b ; end
-0001ac1: 0b ; FIXUP func body size
+0001ae8: 00 ; func body size (guess)
+0001ae9: 00 ; local decl count
+0001aea: 41 ; i32.const
+0001aeb: 01 ; i32 literal
+0001aec: 41 ; i32.const
+0001aed: 02 ; i32 literal
+0001aee: fe ; prefix
+0001aef: 43 ; i32.atomic.rmw8_u.xchg
+0001af0: 00 ; alignment
+0001af1: 03 ; memory offset
+0001af2: 1a ; drop
+0001af3: 0b ; end
+0001ae8: 0b ; FIXUP func body size
; function body 239
-0001acd: 00 ; func body size (guess)
-0001ace: 00 ; local decl count
-0001acf: 41 ; i32.const
-0001ad0: 01 ; i32 literal
-0001ad1: 42 ; i64.const
-0001ad2: 02 ; i64 literal
-0001ad3: fe ; prefix
-0001ad4: 47 ; i64.atomic.rmw32_u.xchg
-0001ad5: 02 ; alignment
-0001ad6: 03 ; memory offset
-0001ad7: 1a ; drop
-0001ad8: 0b ; end
-0001acd: 0b ; FIXUP func body size
+0001af4: 00 ; func body size (guess)
+0001af5: 00 ; local decl count
+0001af6: 41 ; i32.const
+0001af7: 01 ; i32 literal
+0001af8: 41 ; i32.const
+0001af9: 02 ; i32 literal
+0001afa: fe ; prefix
+0001afb: 44 ; i32.atomic.rmw16_u.xchg
+0001afc: 01 ; alignment
+0001afd: 03 ; memory offset
+0001afe: 1a ; drop
+0001aff: 0b ; end
+0001af4: 0b ; FIXUP func body size
; function body 240
-0001ad9: 00 ; func body size (guess)
-0001ada: 00 ; local decl count
-0001adb: 41 ; i32.const
-0001adc: 01 ; i32 literal
-0001add: 41 ; i32.const
-0001ade: 02 ; i32 literal
-0001adf: 41 ; i32.const
-0001ae0: 03 ; i32 literal
-0001ae1: fe ; prefix
-0001ae2: 48 ; i32.atomic.rmw.cmpxchg
-0001ae3: 02 ; alignment
-0001ae4: 03 ; memory offset
-0001ae5: 1a ; drop
-0001ae6: 0b ; end
-0001ad9: 0d ; FIXUP func body size
+0001b00: 00 ; func body size (guess)
+0001b01: 00 ; local decl count
+0001b02: 41 ; i32.const
+0001b03: 01 ; i32 literal
+0001b04: 42 ; i64.const
+0001b05: 02 ; i64 literal
+0001b06: fe ; prefix
+0001b07: 45 ; i64.atomic.rmw8_u.xchg
+0001b08: 00 ; alignment
+0001b09: 03 ; memory offset
+0001b0a: 1a ; drop
+0001b0b: 0b ; end
+0001b00: 0b ; FIXUP func body size
; function body 241
-0001ae7: 00 ; func body size (guess)
-0001ae8: 00 ; local decl count
-0001ae9: 41 ; i32.const
-0001aea: 01 ; i32 literal
-0001aeb: 42 ; i64.const
-0001aec: 02 ; i64 literal
-0001aed: 42 ; i64.const
-0001aee: 03 ; i64 literal
-0001aef: fe ; prefix
-0001af0: 49 ; i64.atomic.rmw.cmpxchg
-0001af1: 03 ; alignment
-0001af2: 07 ; memory offset
-0001af3: 1a ; drop
-0001af4: 0b ; end
-0001ae7: 0d ; FIXUP func body size
+0001b0c: 00 ; func body size (guess)
+0001b0d: 00 ; local decl count
+0001b0e: 41 ; i32.const
+0001b0f: 01 ; i32 literal
+0001b10: 42 ; i64.const
+0001b11: 02 ; i64 literal
+0001b12: fe ; prefix
+0001b13: 46 ; i64.atomic.rmw16_u.xchg
+0001b14: 01 ; alignment
+0001b15: 03 ; memory offset
+0001b16: 1a ; drop
+0001b17: 0b ; end
+0001b0c: 0b ; FIXUP func body size
; function body 242
-0001af5: 00 ; func body size (guess)
-0001af6: 00 ; local decl count
-0001af7: 41 ; i32.const
-0001af8: 01 ; i32 literal
-0001af9: 41 ; i32.const
-0001afa: 02 ; i32 literal
-0001afb: 41 ; i32.const
-0001afc: 03 ; i32 literal
-0001afd: fe ; prefix
-0001afe: 4a ; i32.atomic.rmw8_u.cmpxchg
-0001aff: 00 ; alignment
-0001b00: 03 ; memory offset
-0001b01: 1a ; drop
-0001b02: 0b ; end
-0001af5: 0d ; FIXUP func body size
+0001b18: 00 ; func body size (guess)
+0001b19: 00 ; local decl count
+0001b1a: 41 ; i32.const
+0001b1b: 01 ; i32 literal
+0001b1c: 42 ; i64.const
+0001b1d: 02 ; i64 literal
+0001b1e: fe ; prefix
+0001b1f: 47 ; i64.atomic.rmw32_u.xchg
+0001b20: 02 ; alignment
+0001b21: 03 ; memory offset
+0001b22: 1a ; drop
+0001b23: 0b ; end
+0001b18: 0b ; FIXUP func body size
; function body 243
-0001b03: 00 ; func body size (guess)
-0001b04: 00 ; local decl count
-0001b05: 41 ; i32.const
-0001b06: 01 ; i32 literal
-0001b07: 41 ; i32.const
-0001b08: 02 ; i32 literal
-0001b09: 41 ; i32.const
-0001b0a: 03 ; i32 literal
-0001b0b: fe ; prefix
-0001b0c: 4b ; i32.atomic.rmw16_u.cmpxchg
-0001b0d: 01 ; alignment
-0001b0e: 03 ; memory offset
-0001b0f: 1a ; drop
-0001b10: 0b ; end
-0001b03: 0d ; FIXUP func body size
+0001b24: 00 ; func body size (guess)
+0001b25: 00 ; local decl count
+0001b26: 41 ; i32.const
+0001b27: 01 ; i32 literal
+0001b28: 41 ; i32.const
+0001b29: 02 ; i32 literal
+0001b2a: 41 ; i32.const
+0001b2b: 03 ; i32 literal
+0001b2c: fe ; prefix
+0001b2d: 48 ; i32.atomic.rmw.cmpxchg
+0001b2e: 02 ; alignment
+0001b2f: 03 ; memory offset
+0001b30: 1a ; drop
+0001b31: 0b ; end
+0001b24: 0d ; FIXUP func body size
; function body 244
-0001b11: 00 ; func body size (guess)
-0001b12: 00 ; local decl count
-0001b13: 41 ; i32.const
-0001b14: 01 ; i32 literal
-0001b15: 42 ; i64.const
-0001b16: 02 ; i64 literal
-0001b17: 42 ; i64.const
-0001b18: 03 ; i64 literal
-0001b19: fe ; prefix
-0001b1a: 4c ; i64.atomic.rmw8_u.cmpxchg
-0001b1b: 00 ; alignment
-0001b1c: 03 ; memory offset
-0001b1d: 1a ; drop
-0001b1e: 0b ; end
-0001b11: 0d ; FIXUP func body size
+0001b32: 00 ; func body size (guess)
+0001b33: 00 ; local decl count
+0001b34: 41 ; i32.const
+0001b35: 01 ; i32 literal
+0001b36: 42 ; i64.const
+0001b37: 02 ; i64 literal
+0001b38: 42 ; i64.const
+0001b39: 03 ; i64 literal
+0001b3a: fe ; prefix
+0001b3b: 49 ; i64.atomic.rmw.cmpxchg
+0001b3c: 03 ; alignment
+0001b3d: 07 ; memory offset
+0001b3e: 1a ; drop
+0001b3f: 0b ; end
+0001b32: 0d ; FIXUP func body size
; function body 245
-0001b1f: 00 ; func body size (guess)
-0001b20: 00 ; local decl count
-0001b21: 41 ; i32.const
-0001b22: 01 ; i32 literal
-0001b23: 42 ; i64.const
-0001b24: 02 ; i64 literal
-0001b25: 42 ; i64.const
-0001b26: 03 ; i64 literal
-0001b27: fe ; prefix
-0001b28: 4d ; i64.atomic.rmw16_u.cmpxchg
-0001b29: 01 ; alignment
-0001b2a: 03 ; memory offset
-0001b2b: 1a ; drop
-0001b2c: 0b ; end
-0001b1f: 0d ; FIXUP func body size
+0001b40: 00 ; func body size (guess)
+0001b41: 00 ; local decl count
+0001b42: 41 ; i32.const
+0001b43: 01 ; i32 literal
+0001b44: 41 ; i32.const
+0001b45: 02 ; i32 literal
+0001b46: 41 ; i32.const
+0001b47: 03 ; i32 literal
+0001b48: fe ; prefix
+0001b49: 4a ; i32.atomic.rmw8_u.cmpxchg
+0001b4a: 00 ; alignment
+0001b4b: 03 ; memory offset
+0001b4c: 1a ; drop
+0001b4d: 0b ; end
+0001b40: 0d ; FIXUP func body size
; function body 246
-0001b2d: 00 ; func body size (guess)
-0001b2e: 00 ; local decl count
-0001b2f: 41 ; i32.const
-0001b30: 01 ; i32 literal
-0001b31: 42 ; i64.const
-0001b32: 02 ; i64 literal
-0001b33: 42 ; i64.const
-0001b34: 03 ; i64 literal
-0001b35: fe ; prefix
-0001b36: 4e ; i64.atomic.rmw32_u.cmpxchg
-0001b37: 02 ; alignment
-0001b38: 03 ; memory offset
-0001b39: 1a ; drop
-0001b3a: 0b ; end
-0001b2d: 0d ; FIXUP func body size
-; move data: [10ae, 1b3b) -> [10af, 1b3c)
-00010ad: 8d15 ; FIXUP section size
+0001b4e: 00 ; func body size (guess)
+0001b4f: 00 ; local decl count
+0001b50: 41 ; i32.const
+0001b51: 01 ; i32 literal
+0001b52: 41 ; i32.const
+0001b53: 02 ; i32 literal
+0001b54: 41 ; i32.const
+0001b55: 03 ; i32 literal
+0001b56: fe ; prefix
+0001b57: 4b ; i32.atomic.rmw16_u.cmpxchg
+0001b58: 01 ; alignment
+0001b59: 03 ; memory offset
+0001b5a: 1a ; drop
+0001b5b: 0b ; end
+0001b4e: 0d ; FIXUP func body size
+; function body 247
+0001b5c: 00 ; func body size (guess)
+0001b5d: 00 ; local decl count
+0001b5e: 41 ; i32.const
+0001b5f: 01 ; i32 literal
+0001b60: 42 ; i64.const
+0001b61: 02 ; i64 literal
+0001b62: 42 ; i64.const
+0001b63: 03 ; i64 literal
+0001b64: fe ; prefix
+0001b65: 4c ; i64.atomic.rmw8_u.cmpxchg
+0001b66: 00 ; alignment
+0001b67: 03 ; memory offset
+0001b68: 1a ; drop
+0001b69: 0b ; end
+0001b5c: 0d ; FIXUP func body size
+; function body 248
+0001b6a: 00 ; func body size (guess)
+0001b6b: 00 ; local decl count
+0001b6c: 41 ; i32.const
+0001b6d: 01 ; i32 literal
+0001b6e: 42 ; i64.const
+0001b6f: 02 ; i64 literal
+0001b70: 42 ; i64.const
+0001b71: 03 ; i64 literal
+0001b72: fe ; prefix
+0001b73: 4d ; i64.atomic.rmw16_u.cmpxchg
+0001b74: 01 ; alignment
+0001b75: 03 ; memory offset
+0001b76: 1a ; drop
+0001b77: 0b ; end
+0001b6a: 0d ; FIXUP func body size
+; function body 249
+0001b78: 00 ; func body size (guess)
+0001b79: 00 ; local decl count
+0001b7a: 41 ; i32.const
+0001b7b: 01 ; i32 literal
+0001b7c: 42 ; i64.const
+0001b7d: 02 ; i64 literal
+0001b7e: 42 ; i64.const
+0001b7f: 03 ; i64 literal
+0001b80: fe ; prefix
+0001b81: 4e ; i64.atomic.rmw32_u.cmpxchg
+0001b82: 02 ; alignment
+0001b83: 03 ; memory offset
+0001b84: 1a ; drop
+0001b85: 0b ; end
+0001b78: 0d ; FIXUP func body size
+; move data: [10d1, 1b86) -> [10d2, 1b87)
+00010d0: b515 ; FIXUP section size
BeginModule(version: 1)
BeginTypeSection(8)
OnTypeCount(2)
@@ -4432,8 +4496,8 @@ BeginModule(version: 1)
OnImport(index: 0, module: "host", field: "print")
OnImportFunc(import_index: 0, func_index: 0, sig_index: 1)
EndImportSection
- BeginFunctionSection(249)
- OnFunctionCount(247)
+ BeginFunctionSection(252)
+ OnFunctionCount(250)
OnFunction(index: 1, sig_index: 0)
OnFunction(index: 2, sig_index: 0)
OnFunction(index: 3, sig_index: 0)
@@ -4681,6 +4745,9 @@ BeginModule(version: 1)
OnFunction(index: 245, sig_index: 0)
OnFunction(index: 246, sig_index: 0)
OnFunction(index: 247, sig_index: 0)
+ OnFunction(index: 248, sig_index: 0)
+ OnFunction(index: 249, sig_index: 0)
+ OnFunction(index: 250, sig_index: 0)
EndFunctionSection
BeginTableSection(5)
OnTableCount(1)
@@ -4698,8 +4765,8 @@ BeginModule(version: 1)
EndGlobalInitExpr(0)
EndGlobal(0)
EndGlobalSection
- BeginExportSection(3948)
- OnExportCount(246)
+ BeginExportSection(3980)
+ OnExportCount(249)
OnExport(index: 0, kind: func, item_index: 2, name: "unreachable")
OnExport(index: 1, kind: func, item_index: 3, name: "br")
OnExport(index: 2, kind: func, item_index: 4, name: "br_table")
@@ -4883,69 +4950,72 @@ BeginModule(version: 1)
OnExport(index: 180, kind: func, item_index: 182, name: "i64.trunc_u:sat/f32")
OnExport(index: 181, kind: func, item_index: 183, name: "i64.trunc_s:sat/f64")
OnExport(index: 182, kind: func, item_index: 184, name: "i64.trunc_u:sat/f64")
- OnExport(index: 183, kind: func, item_index: 185, name: "i32.atomic.load")
- OnExport(index: 184, kind: func, item_index: 186, name: "i64.atomic.load")
- OnExport(index: 185, kind: func, item_index: 187, name: "i32.atomic.load8_u")
- OnExport(index: 186, kind: func, item_index: 188, name: "i32.atomic.load16_u")
- OnExport(index: 187, kind: func, item_index: 189, name: "i64.atomic.load8_u")
- OnExport(index: 188, kind: func, item_index: 190, name: "i64.atomic.load16_u")
- OnExport(index: 189, kind: func, item_index: 191, name: "i64.atomic.load32_u")
- OnExport(index: 190, kind: func, item_index: 192, name: "i32.atomic.store")
- OnExport(index: 191, kind: func, item_index: 193, name: "i64.atomic.store")
- OnExport(index: 192, kind: func, item_index: 194, name: "i32.atomic.store8")
- OnExport(index: 193, kind: func, item_index: 195, name: "i32.atomic.store16")
- OnExport(index: 194, kind: func, item_index: 196, name: "i64.atomic.store8")
- OnExport(index: 195, kind: func, item_index: 197, name: "i64.atomic.store16")
- OnExport(index: 196, kind: func, item_index: 198, name: "i64.atomic.store32")
- OnExport(index: 197, kind: func, item_index: 199, name: "i32.atomic.rmw.add")
- OnExport(index: 198, kind: func, item_index: 200, name: "i64.atomic.rmw.add")
- OnExport(index: 199, kind: func, item_index: 201, name: "i32.atomic.rmw8_u.add")
- OnExport(index: 200, kind: func, item_index: 202, name: "i32.atomic.rmw16_u.add")
- OnExport(index: 201, kind: func, item_index: 203, name: "i64.atomic.rmw8_u.add")
- OnExport(index: 202, kind: func, item_index: 204, name: "i64.atomic.rmw16_u.add")
- OnExport(index: 203, kind: func, item_index: 205, name: "i64.atomic.rmw32_u.add")
- OnExport(index: 204, kind: func, item_index: 206, name: "i32.atomic.rmw.sub")
- OnExport(index: 205, kind: func, item_index: 207, name: "i64.atomic.rmw.sub")
- OnExport(index: 206, kind: func, item_index: 208, name: "i32.atomic.rmw8_u.sub")
- OnExport(index: 207, kind: func, item_index: 209, name: "i32.atomic.rmw16_u.sub")
- OnExport(index: 208, kind: func, item_index: 210, name: "i64.atomic.rmw8_u.sub")
- OnExport(index: 209, kind: func, item_index: 211, name: "i64.atomic.rmw16_u.sub")
- OnExport(index: 210, kind: func, item_index: 212, name: "i64.atomic.rmw32_u.sub")
- OnExport(index: 211, kind: func, item_index: 213, name: "i32.atomic.rmw.and")
- OnExport(index: 212, kind: func, item_index: 214, name: "i64.atomic.rmw.and")
- OnExport(index: 213, kind: func, item_index: 215, name: "i32.atomic.rmw8_u.and")
- OnExport(index: 214, kind: func, item_index: 216, name: "i32.atomic.rmw16_u.and")
- OnExport(index: 215, kind: func, item_index: 217, name: "i64.atomic.rmw8_u.and")
- OnExport(index: 216, kind: func, item_index: 218, name: "i64.atomic.rmw16_u.and")
- OnExport(index: 217, kind: func, item_index: 219, name: "i64.atomic.rmw32_u.and")
- OnExport(index: 218, kind: func, item_index: 220, name: "i32.atomic.rmw.or")
- OnExport(index: 219, kind: func, item_index: 221, name: "i64.atomic.rmw.or")
- OnExport(index: 220, kind: func, item_index: 222, name: "i32.atomic.rmw8_u.or")
- OnExport(index: 221, kind: func, item_index: 223, name: "i32.atomic.rmw16_u.or")
- OnExport(index: 222, kind: func, item_index: 224, name: "i64.atomic.rmw8_u.or")
- OnExport(index: 223, kind: func, item_index: 225, name: "i64.atomic.rmw16_u.or")
- OnExport(index: 224, kind: func, item_index: 226, name: "i64.atomic.rmw32_u.or")
- OnExport(index: 225, kind: func, item_index: 227, name: "i32.atomic.rmw.xor")
- OnExport(index: 226, kind: func, item_index: 228, name: "i64.atomic.rmw.xor")
- OnExport(index: 227, kind: func, item_index: 229, name: "i32.atomic.rmw8_u.xor")
- OnExport(index: 228, kind: func, item_index: 230, name: "i32.atomic.rmw16_u.xor")
- OnExport(index: 229, kind: func, item_index: 231, name: "i64.atomic.rmw8_u.xor")
- OnExport(index: 230, kind: func, item_index: 232, name: "i64.atomic.rmw16_u.xor")
- OnExport(index: 231, kind: func, item_index: 233, name: "i64.atomic.rmw32_u.xor")
- OnExport(index: 232, kind: func, item_index: 234, name: "i32.atomic.rmw.xchg")
- OnExport(index: 233, kind: func, item_index: 235, name: "i64.atomic.rmw.xchg")
- OnExport(index: 234, kind: func, item_index: 236, name: "i32.atomic.rmw8_u.xchg")
- OnExport(index: 235, kind: func, item_index: 237, name: "i32.atomic.rmw16_u.xchg")
- OnExport(index: 236, kind: func, item_index: 238, name: "i64.atomic.rmw8_u.xchg")
- OnExport(index: 237, kind: func, item_index: 239, name: "i64.atomic.rmw16_u.xchg")
- OnExport(index: 238, kind: func, item_index: 240, name: "i64.atomic.rmw32_u.xchg")
- OnExport(index: 239, kind: func, item_index: 241, name: "i32.atomic.rmw.cmpxchg")
- OnExport(index: 240, kind: func, item_index: 242, name: "i64.atomic.rmw.cmpxchg")
- OnExport(index: 241, kind: func, item_index: 243, name: "i32.atomic.rmw8_u.cmpxchg")
- OnExport(index: 242, kind: func, item_index: 244, name: "i32.atomic.rmw16_u.cmpxchg")
- OnExport(index: 243, kind: func, item_index: 245, name: "i64.atomic.rmw8_u.cmpxchg")
- OnExport(index: 244, kind: func, item_index: 246, name: "i64.atomic.rmw16_u.cmpxchg")
- OnExport(index: 245, kind: func, item_index: 247, name: "i64.atomic.rmw32_u.cmpxchg")
+ OnExport(index: 183, kind: func, item_index: 185, name: "wake")
+ OnExport(index: 184, kind: func, item_index: 186, name: "i32.wait")
+ OnExport(index: 185, kind: func, item_index: 187, name: "i64.wait")
+ OnExport(index: 186, kind: func, item_index: 188, name: "i32.atomic.load")
+ OnExport(index: 187, kind: func, item_index: 189, name: "i64.atomic.load")
+ OnExport(index: 188, kind: func, item_index: 190, name: "i32.atomic.load8_u")
+ OnExport(index: 189, kind: func, item_index: 191, name: "i32.atomic.load16_u")
+ OnExport(index: 190, kind: func, item_index: 192, name: "i64.atomic.load8_u")
+ OnExport(index: 191, kind: func, item_index: 193, name: "i64.atomic.load16_u")
+ OnExport(index: 192, kind: func, item_index: 194, name: "i64.atomic.load32_u")
+ OnExport(index: 193, kind: func, item_index: 195, name: "i32.atomic.store")
+ OnExport(index: 194, kind: func, item_index: 196, name: "i64.atomic.store")
+ OnExport(index: 195, kind: func, item_index: 197, name: "i32.atomic.store8")
+ OnExport(index: 196, kind: func, item_index: 198, name: "i32.atomic.store16")
+ OnExport(index: 197, kind: func, item_index: 199, name: "i64.atomic.store8")
+ OnExport(index: 198, kind: func, item_index: 200, name: "i64.atomic.store16")
+ OnExport(index: 199, kind: func, item_index: 201, name: "i64.atomic.store32")
+ OnExport(index: 200, kind: func, item_index: 202, name: "i32.atomic.rmw.add")
+ OnExport(index: 201, kind: func, item_index: 203, name: "i64.atomic.rmw.add")
+ OnExport(index: 202, kind: func, item_index: 204, name: "i32.atomic.rmw8_u.add")
+ OnExport(index: 203, kind: func, item_index: 205, name: "i32.atomic.rmw16_u.add")
+ OnExport(index: 204, kind: func, item_index: 206, name: "i64.atomic.rmw8_u.add")
+ OnExport(index: 205, kind: func, item_index: 207, name: "i64.atomic.rmw16_u.add")
+ OnExport(index: 206, kind: func, item_index: 208, name: "i64.atomic.rmw32_u.add")
+ OnExport(index: 207, kind: func, item_index: 209, name: "i32.atomic.rmw.sub")
+ OnExport(index: 208, kind: func, item_index: 210, name: "i64.atomic.rmw.sub")
+ OnExport(index: 209, kind: func, item_index: 211, name: "i32.atomic.rmw8_u.sub")
+ OnExport(index: 210, kind: func, item_index: 212, name: "i32.atomic.rmw16_u.sub")
+ OnExport(index: 211, kind: func, item_index: 213, name: "i64.atomic.rmw8_u.sub")
+ OnExport(index: 212, kind: func, item_index: 214, name: "i64.atomic.rmw16_u.sub")
+ OnExport(index: 213, kind: func, item_index: 215, name: "i64.atomic.rmw32_u.sub")
+ OnExport(index: 214, kind: func, item_index: 216, name: "i32.atomic.rmw.and")
+ OnExport(index: 215, kind: func, item_index: 217, name: "i64.atomic.rmw.and")
+ OnExport(index: 216, kind: func, item_index: 218, name: "i32.atomic.rmw8_u.and")
+ OnExport(index: 217, kind: func, item_index: 219, name: "i32.atomic.rmw16_u.and")
+ OnExport(index: 218, kind: func, item_index: 220, name: "i64.atomic.rmw8_u.and")
+ OnExport(index: 219, kind: func, item_index: 221, name: "i64.atomic.rmw16_u.and")
+ OnExport(index: 220, kind: func, item_index: 222, name: "i64.atomic.rmw32_u.and")
+ OnExport(index: 221, kind: func, item_index: 223, name: "i32.atomic.rmw.or")
+ OnExport(index: 222, kind: func, item_index: 224, name: "i64.atomic.rmw.or")
+ OnExport(index: 223, kind: func, item_index: 225, name: "i32.atomic.rmw8_u.or")
+ OnExport(index: 224, kind: func, item_index: 226, name: "i32.atomic.rmw16_u.or")
+ OnExport(index: 225, kind: func, item_index: 227, name: "i64.atomic.rmw8_u.or")
+ OnExport(index: 226, kind: func, item_index: 228, name: "i64.atomic.rmw16_u.or")
+ OnExport(index: 227, kind: func, item_index: 229, name: "i64.atomic.rmw32_u.or")
+ OnExport(index: 228, kind: func, item_index: 230, name: "i32.atomic.rmw.xor")
+ OnExport(index: 229, kind: func, item_index: 231, name: "i64.atomic.rmw.xor")
+ OnExport(index: 230, kind: func, item_index: 232, name: "i32.atomic.rmw8_u.xor")
+ OnExport(index: 231, kind: func, item_index: 233, name: "i32.atomic.rmw16_u.xor")
+ OnExport(index: 232, kind: func, item_index: 234, name: "i64.atomic.rmw8_u.xor")
+ OnExport(index: 233, kind: func, item_index: 235, name: "i64.atomic.rmw16_u.xor")
+ OnExport(index: 234, kind: func, item_index: 236, name: "i64.atomic.rmw32_u.xor")
+ OnExport(index: 235, kind: func, item_index: 237, name: "i32.atomic.rmw.xchg")
+ OnExport(index: 236, kind: func, item_index: 238, name: "i64.atomic.rmw.xchg")
+ OnExport(index: 237, kind: func, item_index: 239, name: "i32.atomic.rmw8_u.xchg")
+ OnExport(index: 238, kind: func, item_index: 240, name: "i32.atomic.rmw16_u.xchg")
+ OnExport(index: 239, kind: func, item_index: 241, name: "i64.atomic.rmw8_u.xchg")
+ OnExport(index: 240, kind: func, item_index: 242, name: "i64.atomic.rmw16_u.xchg")
+ OnExport(index: 241, kind: func, item_index: 243, name: "i64.atomic.rmw32_u.xchg")
+ OnExport(index: 242, kind: func, item_index: 244, name: "i32.atomic.rmw.cmpxchg")
+ OnExport(index: 243, kind: func, item_index: 245, name: "i64.atomic.rmw.cmpxchg")
+ OnExport(index: 244, kind: func, item_index: 246, name: "i32.atomic.rmw8_u.cmpxchg")
+ OnExport(index: 245, kind: func, item_index: 247, name: "i32.atomic.rmw16_u.cmpxchg")
+ OnExport(index: 246, kind: func, item_index: 248, name: "i64.atomic.rmw8_u.cmpxchg")
+ OnExport(index: 247, kind: func, item_index: 249, name: "i64.atomic.rmw16_u.cmpxchg")
+ OnExport(index: 248, kind: func, item_index: 250, name: "i64.atomic.rmw32_u.cmpxchg")
EndExportSection
BeginElemSection(8)
OnElemSegmentCount(1)
@@ -4958,8 +5028,8 @@ BeginModule(version: 1)
OnElemSegmentFunctionIndex(index: 0, func_index: 1)
EndElemSegment(0)
EndElemSection
- BeginCodeSection(2701)
- OnFunctionBodyCount(247)
+ BeginCodeSection(2741)
+ OnFunctionBodyCount(250)
BeginFunctionBody(1)
OnLocalDeclCount(0)
EndFunctionBody(1)
@@ -6123,403 +6193,402 @@ BeginModule(version: 1)
BeginFunctionBody(185)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i32.atomic.load" (16), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnWakeExpr(opcode: "wake" (0), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(185)
BeginFunctionBody(186)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i64.atomic.load" (17), align log2: 3, offset: 7)
+ OnI32ConstExpr(2 (0x2))
+ OnI64ConstExpr(3 (0x3))
+ OnWaitExpr(opcode: "i32.wait" (1), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(186)
BeginFunctionBody(187)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i32.atomic.load8_u" (18), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnI64ConstExpr(3 (0x3))
+ OnWaitExpr(opcode: "i64.wait" (2), align log2: 3, offset: 3)
OnDropExpr
EndFunctionBody(187)
BeginFunctionBody(188)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i32.atomic.load16_u" (19), align log2: 1, offset: 3)
+ OnAtomicLoadExpr(opcode: "i32.atomic.load" (16), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(188)
BeginFunctionBody(189)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i64.atomic.load8_u" (20), align log2: 0, offset: 3)
+ OnAtomicLoadExpr(opcode: "i64.atomic.load" (17), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(189)
BeginFunctionBody(190)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i64.atomic.load16_u" (21), align log2: 1, offset: 3)
+ OnAtomicLoadExpr(opcode: "i32.atomic.load8_u" (18), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(190)
BeginFunctionBody(191)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnAtomicLoadExpr(opcode: "i64.atomic.load32_u" (22), align log2: 2, offset: 3)
+ OnAtomicLoadExpr(opcode: "i32.atomic.load16_u" (19), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(191)
BeginFunctionBody(192)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i32.atomic.store" (23), align log2: 2, offset: 3)
+ OnAtomicLoadExpr(opcode: "i64.atomic.load8_u" (20), align log2: 0, offset: 3)
+ OnDropExpr
EndFunctionBody(192)
BeginFunctionBody(193)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i64.atomic.store" (24), align log2: 3, offset: 7)
+ OnAtomicLoadExpr(opcode: "i64.atomic.load16_u" (21), align log2: 1, offset: 3)
+ OnDropExpr
EndFunctionBody(193)
BeginFunctionBody(194)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i32.atomic.store8" (25), align log2: 0, offset: 3)
+ OnAtomicLoadExpr(opcode: "i64.atomic.load32_u" (22), align log2: 2, offset: 3)
+ OnDropExpr
EndFunctionBody(194)
BeginFunctionBody(195)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i32.atomic.store16" (26), align log2: 1, offset: 3)
+ OnAtomicStoreExpr(opcode: "i32.atomic.store" (23), align log2: 2, offset: 3)
EndFunctionBody(195)
BeginFunctionBody(196)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i64.atomic.store8" (27), align log2: 0, offset: 3)
+ OnAtomicStoreExpr(opcode: "i64.atomic.store" (24), align log2: 3, offset: 7)
EndFunctionBody(196)
BeginFunctionBody(197)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i64.atomic.store16" (28), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicStoreExpr(opcode: "i32.atomic.store8" (25), align log2: 0, offset: 3)
EndFunctionBody(197)
BeginFunctionBody(198)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicStoreExpr(opcode: "i64.atomic.store32" (29), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicStoreExpr(opcode: "i32.atomic.store16" (26), align log2: 1, offset: 3)
EndFunctionBody(198)
BeginFunctionBody(199)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw.add" (30), align log2: 2, offset: 3)
- OnDropExpr
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicStoreExpr(opcode: "i64.atomic.store8" (27), align log2: 0, offset: 3)
EndFunctionBody(199)
BeginFunctionBody(200)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw.add" (31), align log2: 3, offset: 7)
- OnDropExpr
+ OnAtomicStoreExpr(opcode: "i64.atomic.store16" (28), align log2: 1, offset: 3)
EndFunctionBody(200)
BeginFunctionBody(201)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.add" (32), align log2: 0, offset: 3)
- OnDropExpr
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicStoreExpr(opcode: "i64.atomic.store32" (29), align log2: 2, offset: 3)
EndFunctionBody(201)
BeginFunctionBody(202)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.add" (33), align log2: 1, offset: 3)
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw.add" (30), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(202)
BeginFunctionBody(203)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.add" (34), align log2: 0, offset: 3)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw.add" (31), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(203)
BeginFunctionBody(204)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.add" (35), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.add" (32), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(204)
BeginFunctionBody(205)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.add" (36), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.add" (33), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(205)
BeginFunctionBody(206)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw.sub" (37), align log2: 2, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.add" (34), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(206)
BeginFunctionBody(207)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw.sub" (38), align log2: 3, offset: 7)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.add" (35), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(207)
BeginFunctionBody(208)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.sub" (39), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.add" (36), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(208)
BeginFunctionBody(209)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.sub" (40), align log2: 1, offset: 3)
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw.sub" (37), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(209)
BeginFunctionBody(210)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.sub" (41), align log2: 0, offset: 3)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw.sub" (38), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(210)
BeginFunctionBody(211)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.sub" (42), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.sub" (39), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(211)
BeginFunctionBody(212)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.sub" (43), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.sub" (40), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(212)
BeginFunctionBody(213)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw.and" (44), align log2: 2, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.sub" (41), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(213)
BeginFunctionBody(214)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw.and" (45), align log2: 3, offset: 7)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.sub" (42), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(214)
BeginFunctionBody(215)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.and" (46), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.sub" (43), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(215)
BeginFunctionBody(216)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.and" (47), align log2: 1, offset: 3)
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw.and" (44), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(216)
BeginFunctionBody(217)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.and" (48), align log2: 0, offset: 3)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw.and" (45), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(217)
BeginFunctionBody(218)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.and" (49), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.and" (46), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(218)
BeginFunctionBody(219)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.and" (50), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.and" (47), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(219)
BeginFunctionBody(220)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw.or" (51), align log2: 2, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.and" (48), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(220)
BeginFunctionBody(221)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw.or" (52), align log2: 3, offset: 7)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.and" (49), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(221)
BeginFunctionBody(222)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.or" (53), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.and" (50), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(222)
BeginFunctionBody(223)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.or" (54), align log2: 1, offset: 3)
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw.or" (51), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(223)
BeginFunctionBody(224)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.or" (55), align log2: 0, offset: 3)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw.or" (52), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(224)
BeginFunctionBody(225)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.or" (56), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.or" (53), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(225)
BeginFunctionBody(226)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.or" (57), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.or" (54), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(226)
BeginFunctionBody(227)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw.xor" (58), align log2: 2, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.or" (55), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(227)
BeginFunctionBody(228)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw.xor" (59), align log2: 3, offset: 7)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.or" (56), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(228)
BeginFunctionBody(229)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.xor" (60), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.or" (57), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(229)
BeginFunctionBody(230)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.xor" (61), align log2: 1, offset: 3)
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw.xor" (58), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(230)
BeginFunctionBody(231)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.xor" (62), align log2: 0, offset: 3)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw.xor" (59), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(231)
BeginFunctionBody(232)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.xor" (63), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.xor" (60), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(232)
BeginFunctionBody(233)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.xor" (64), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.xor" (61), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(233)
BeginFunctionBody(234)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw.xchg" (65), align log2: 2, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.xor" (62), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(234)
BeginFunctionBody(235)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw.xchg" (66), align log2: 3, offset: 7)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.xor" (63), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(235)
BeginFunctionBody(236)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.xchg" (67), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.xor" (64), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(236)
BeginFunctionBody(237)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.xchg" (68), align log2: 1, offset: 3)
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw.xchg" (65), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(237)
BeginFunctionBody(238)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.xchg" (69), align log2: 0, offset: 3)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw.xchg" (66), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(238)
BeginFunctionBody(239)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.xchg" (70), align log2: 1, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw8_u.xchg" (67), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(239)
BeginFunctionBody(240)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI64ConstExpr(2 (0x2))
- OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.xchg" (71), align log2: 2, offset: 3)
+ OnI32ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i32.atomic.rmw16_u.xchg" (68), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(240)
BeginFunctionBody(241)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnI32ConstExpr(3 (0x3))
- OnAtomicRmwCmpxchgExpr(opcode: "i32.atomic.rmw.cmpxchg" (72), align log2: 2, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw8_u.xchg" (69), align log2: 0, offset: 3)
OnDropExpr
EndFunctionBody(241)
BeginFunctionBody(242)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
- OnI64ConstExpr(3 (0x3))
- OnAtomicRmwCmpxchgExpr(opcode: "i64.atomic.rmw.cmpxchg" (73), align log2: 3, offset: 7)
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw16_u.xchg" (70), align log2: 1, offset: 3)
OnDropExpr
EndFunctionBody(242)
BeginFunctionBody(243)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
- OnI32ConstExpr(2 (0x2))
- OnI32ConstExpr(3 (0x3))
- OnAtomicRmwCmpxchgExpr(opcode: "i32.atomic.rmw8_u.cmpxchg" (74), align log2: 0, offset: 3)
+ OnI64ConstExpr(2 (0x2))
+ OnAtomicRmwExpr(opcode: "i64.atomic.rmw32_u.xchg" (71), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(243)
BeginFunctionBody(244)
@@ -6527,7 +6596,7 @@ BeginModule(version: 1)
OnI32ConstExpr(1 (0x1))
OnI32ConstExpr(2 (0x2))
OnI32ConstExpr(3 (0x3))
- OnAtomicRmwCmpxchgExpr(opcode: "i32.atomic.rmw16_u.cmpxchg" (75), align log2: 1, offset: 3)
+ OnAtomicRmwCmpxchgExpr(opcode: "i32.atomic.rmw.cmpxchg" (72), align log2: 2, offset: 3)
OnDropExpr
EndFunctionBody(244)
BeginFunctionBody(245)
@@ -6535,25 +6604,49 @@ BeginModule(version: 1)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
OnI64ConstExpr(3 (0x3))
- OnAtomicRmwCmpxchgExpr(opcode: "i64.atomic.rmw8_u.cmpxchg" (76), align log2: 0, offset: 3)
+ OnAtomicRmwCmpxchgExpr(opcode: "i64.atomic.rmw.cmpxchg" (73), align log2: 3, offset: 7)
OnDropExpr
EndFunctionBody(245)
BeginFunctionBody(246)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
+ OnI32ConstExpr(2 (0x2))
+ OnI32ConstExpr(3 (0x3))
+ OnAtomicRmwCmpxchgExpr(opcode: "i32.atomic.rmw8_u.cmpxchg" (74), align log2: 0, offset: 3)
+ OnDropExpr
+ EndFunctionBody(246)
+ BeginFunctionBody(247)
+ OnLocalDeclCount(0)
+ OnI32ConstExpr(1 (0x1))
+ OnI32ConstExpr(2 (0x2))
+ OnI32ConstExpr(3 (0x3))
+ OnAtomicRmwCmpxchgExpr(opcode: "i32.atomic.rmw16_u.cmpxchg" (75), align log2: 1, offset: 3)
+ OnDropExpr
+ EndFunctionBody(247)
+ BeginFunctionBody(248)
+ OnLocalDeclCount(0)
+ OnI32ConstExpr(1 (0x1))
+ OnI64ConstExpr(2 (0x2))
+ OnI64ConstExpr(3 (0x3))
+ OnAtomicRmwCmpxchgExpr(opcode: "i64.atomic.rmw8_u.cmpxchg" (76), align log2: 0, offset: 3)
+ OnDropExpr
+ EndFunctionBody(248)
+ BeginFunctionBody(249)
+ OnLocalDeclCount(0)
+ OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
OnI64ConstExpr(3 (0x3))
OnAtomicRmwCmpxchgExpr(opcode: "i64.atomic.rmw16_u.cmpxchg" (77), align log2: 1, offset: 3)
OnDropExpr
- EndFunctionBody(246)
- BeginFunctionBody(247)
+ EndFunctionBody(249)
+ BeginFunctionBody(250)
OnLocalDeclCount(0)
OnI32ConstExpr(1 (0x1))
OnI64ConstExpr(2 (0x2))
OnI64ConstExpr(3 (0x3))
OnAtomicRmwCmpxchgExpr(opcode: "i64.atomic.rmw32_u.cmpxchg" (78), align log2: 2, offset: 3)
OnDropExpr
- EndFunctionBody(247)
+ EndFunctionBody(250)
EndCodeSection
EndModule
0| return
@@ -7357,313 +7450,330 @@ EndModule
2615| drop
2616| return
2617| i32.const $1
-2622| i32.atomic.load $0:%[-1]+$3
-2632| drop
-2633| return
-2634| i32.const $1
-2639| i64.atomic.load $0:%[-1]+$7
-2649| drop
-2650| return
-2651| i32.const $1
-2656| i32.atomic.load8_u $0:%[-1]+$3
-2666| drop
-2667| return
-2668| i32.const $1
-2673| i32.atomic.load16_u $0:%[-1]+$3
-2683| drop
-2684| return
-2685| i32.const $1
-2690| i64.atomic.load8_u $0:%[-1]+$3
-2700| drop
-2701| return
-2702| i32.const $1
-2707| i64.atomic.load16_u $0:%[-1]+$3
-2717| drop
-2718| return
-2719| i32.const $1
-2724| i64.atomic.load32_u $0:%[-1]+$3
-2734| drop
-2735| return
-2736| i32.const $1
-2741| i32.const $2
-2746| i32.atomic.store $0:%[-2]+$3, %[-1]
-2756| return
-2757| i32.const $1
-2762| i64.const $2
-2771| i64.atomic.store $0:%[-2]+$7, %[-1]
-2781| return
-2782| i32.const $1
-2787| i32.const $2
-2792| i32.atomic.store8 $0:%[-2]+$3, %[-1]
-2802| return
-2803| i32.const $1
-2808| i32.const $2
-2813| i32.atomic.store16 $0:%[-2]+$3, %[-1]
+2622| i32.const $2
+2627| wake $0:%[-2]+$3, %[-1]
+2637| drop
+2638| return
+2639| i32.const $1
+2644| i32.const $2
+2649| i64.const $3
+2658| i32.wait $0:%[-3]+$3, %[-2], %[-1]
+2668| drop
+2669| return
+2670| i32.const $1
+2675| i64.const $2
+2684| i64.const $3
+2693| i64.wait $0:%[-3]+$3, %[-2], %[-1]
+2703| drop
+2704| return
+2705| i32.const $1
+2710| i32.atomic.load $0:%[-1]+$3
+2720| drop
+2721| return
+2722| i32.const $1
+2727| i64.atomic.load $0:%[-1]+$7
+2737| drop
+2738| return
+2739| i32.const $1
+2744| i32.atomic.load8_u $0:%[-1]+$3
+2754| drop
+2755| return
+2756| i32.const $1
+2761| i32.atomic.load16_u $0:%[-1]+$3
+2771| drop
+2772| return
+2773| i32.const $1
+2778| i64.atomic.load8_u $0:%[-1]+$3
+2788| drop
+2789| return
+2790| i32.const $1
+2795| i64.atomic.load16_u $0:%[-1]+$3
+2805| drop
+2806| return
+2807| i32.const $1
+2812| i64.atomic.load32_u $0:%[-1]+$3
+2822| drop
2823| return
2824| i32.const $1
-2829| i64.const $2
-2838| i64.atomic.store8 $0:%[-2]+$3, %[-1]
-2848| return
-2849| i32.const $1
-2854| i64.const $2
-2863| i64.atomic.store16 $0:%[-2]+$3, %[-1]
-2873| return
-2874| i32.const $1
-2879| i64.const $2
-2888| i64.atomic.store32 $0:%[-2]+$3, %[-1]
-2898| return
-2899| i32.const $1
-2904| i32.const $2
-2909| i32.atomic.rmw.add $0:%[-2]+$3, %[-1]
-2919| drop
-2920| return
-2921| i32.const $1
-2926| i64.const $2
-2935| i64.atomic.rmw.add $0:%[-2]+$7, %[-1]
-2945| drop
-2946| return
-2947| i32.const $1
-2952| i32.const $2
-2957| i32.atomic.rmw8_u.add $0:%[-2]+$3, %[-1]
-2967| drop
-2968| return
-2969| i32.const $1
-2974| i32.const $2
-2979| i32.atomic.rmw16_u.add $0:%[-2]+$3, %[-1]
-2989| drop
-2990| return
-2991| i32.const $1
-2996| i64.const $2
-3005| i64.atomic.rmw8_u.add $0:%[-2]+$3, %[-1]
-3015| drop
-3016| return
-3017| i32.const $1
-3022| i64.const $2
-3031| i64.atomic.rmw16_u.add $0:%[-2]+$3, %[-1]
-3041| drop
-3042| return
-3043| i32.const $1
-3048| i64.const $2
-3057| i64.atomic.rmw32_u.add $0:%[-2]+$3, %[-1]
-3067| drop
-3068| return
-3069| i32.const $1
-3074| i32.const $2
-3079| i32.atomic.rmw.sub $0:%[-2]+$3, %[-1]
-3089| drop
-3090| return
-3091| i32.const $1
-3096| i64.const $2
-3105| i64.atomic.rmw.sub $0:%[-2]+$7, %[-1]
-3115| drop
-3116| return
-3117| i32.const $1
-3122| i32.const $2
-3127| i32.atomic.rmw8_u.sub $0:%[-2]+$3, %[-1]
-3137| drop
-3138| return
-3139| i32.const $1
-3144| i32.const $2
-3149| i32.atomic.rmw16_u.sub $0:%[-2]+$3, %[-1]
-3159| drop
-3160| return
-3161| i32.const $1
-3166| i64.const $2
-3175| i64.atomic.rmw8_u.sub $0:%[-2]+$3, %[-1]
-3185| drop
-3186| return
-3187| i32.const $1
-3192| i64.const $2
-3201| i64.atomic.rmw16_u.sub $0:%[-2]+$3, %[-1]
-3211| drop
-3212| return
-3213| i32.const $1
-3218| i64.const $2
-3227| i64.atomic.rmw32_u.sub $0:%[-2]+$3, %[-1]
-3237| drop
-3238| return
-3239| i32.const $1
-3244| i32.const $2
-3249| i32.atomic.rmw.and $0:%[-2]+$3, %[-1]
-3259| drop
-3260| return
-3261| i32.const $1
-3266| i64.const $2
-3275| i64.atomic.rmw.and $0:%[-2]+$7, %[-1]
-3285| drop
-3286| return
-3287| i32.const $1
-3292| i32.const $2
-3297| i32.atomic.rmw8_u.and $0:%[-2]+$3, %[-1]
-3307| drop
-3308| return
-3309| i32.const $1
-3314| i32.const $2
-3319| i32.atomic.rmw16_u.and $0:%[-2]+$3, %[-1]
-3329| drop
-3330| return
-3331| i32.const $1
-3336| i64.const $2
-3345| i64.atomic.rmw8_u.and $0:%[-2]+$3, %[-1]
-3355| drop
-3356| return
-3357| i32.const $1
-3362| i64.const $2
-3371| i64.atomic.rmw16_u.and $0:%[-2]+$3, %[-1]
-3381| drop
-3382| return
-3383| i32.const $1
-3388| i64.const $2
-3397| i64.atomic.rmw32_u.and $0:%[-2]+$3, %[-1]
-3407| drop
-3408| return
-3409| i32.const $1
-3414| i32.const $2
-3419| i32.atomic.rmw.or $0:%[-2]+$3, %[-1]
-3429| drop
-3430| return
-3431| i32.const $1
-3436| i64.const $2
-3445| i64.atomic.rmw.or $0:%[-2]+$7, %[-1]
-3455| drop
-3456| return
-3457| i32.const $1
-3462| i32.const $2
-3467| i32.atomic.rmw8_u.or $0:%[-2]+$3, %[-1]
-3477| drop
-3478| return
-3479| i32.const $1
-3484| i32.const $2
-3489| i32.atomic.rmw16_u.or $0:%[-2]+$3, %[-1]
-3499| drop
-3500| return
-3501| i32.const $1
-3506| i64.const $2
-3515| i64.atomic.rmw8_u.or $0:%[-2]+$3, %[-1]
-3525| drop
-3526| return
-3527| i32.const $1
-3532| i64.const $2
-3541| i64.atomic.rmw16_u.or $0:%[-2]+$3, %[-1]
-3551| drop
-3552| return
-3553| i32.const $1
-3558| i64.const $2
-3567| i64.atomic.rmw32_u.or $0:%[-2]+$3, %[-1]
-3577| drop
-3578| return
-3579| i32.const $1
-3584| i32.const $2
-3589| i32.atomic.rmw.xor $0:%[-2]+$3, %[-1]
-3599| drop
-3600| return
-3601| i32.const $1
-3606| i64.const $2
-3615| i64.atomic.rmw.xor $0:%[-2]+$7, %[-1]
-3625| drop
-3626| return
-3627| i32.const $1
-3632| i32.const $2
-3637| i32.atomic.rmw8_u.xor $0:%[-2]+$3, %[-1]
-3647| drop
-3648| return
-3649| i32.const $1
-3654| i32.const $2
-3659| i32.atomic.rmw16_u.xor $0:%[-2]+$3, %[-1]
-3669| drop
-3670| return
-3671| i32.const $1
-3676| i64.const $2
-3685| i64.atomic.rmw8_u.xor $0:%[-2]+$3, %[-1]
-3695| drop
-3696| return
-3697| i32.const $1
-3702| i64.const $2
-3711| i64.atomic.rmw16_u.xor $0:%[-2]+$3, %[-1]
-3721| drop
-3722| return
-3723| i32.const $1
-3728| i64.const $2
-3737| i64.atomic.rmw32_u.xor $0:%[-2]+$3, %[-1]
-3747| drop
-3748| return
-3749| i32.const $1
-3754| i32.const $2
-3759| i32.atomic.rmw.xchg $0:%[-2]+$3, %[-1]
-3769| drop
-3770| return
-3771| i32.const $1
-3776| i64.const $2
-3785| i64.atomic.rmw.xchg $0:%[-2]+$7, %[-1]
-3795| drop
-3796| return
-3797| i32.const $1
-3802| i32.const $2
-3807| i32.atomic.rmw8_u.xchg $0:%[-2]+$3, %[-1]
-3817| drop
-3818| return
-3819| i32.const $1
-3824| i32.const $2
-3829| i32.atomic.rmw16_u.xchg $0:%[-2]+$3, %[-1]
-3839| drop
-3840| return
-3841| i32.const $1
-3846| i64.const $2
-3855| i64.atomic.rmw8_u.xchg $0:%[-2]+$3, %[-1]
-3865| drop
-3866| return
-3867| i32.const $1
-3872| i64.const $2
-3881| i64.atomic.rmw16_u.xchg $0:%[-2]+$3, %[-1]
-3891| drop
-3892| return
-3893| i32.const $1
-3898| i64.const $2
-3907| i64.atomic.rmw32_u.xchg $0:%[-2]+$3, %[-1]
-3917| drop
-3918| return
-3919| i32.const $1
-3924| i32.const $2
-3929| i32.const $3
-3934| i32.atomic.rmw.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
-3944| drop
-3945| return
-3946| i32.const $1
-3951| i64.const $2
-3960| i64.const $3
-3969| i64.atomic.rmw.cmpxchg $0:%[-3]+$7, %[-2], %[-1]
+2829| i32.const $2
+2834| i32.atomic.store $0:%[-2]+$3, %[-1]
+2844| return
+2845| i32.const $1
+2850| i64.const $2
+2859| i64.atomic.store $0:%[-2]+$7, %[-1]
+2869| return
+2870| i32.const $1
+2875| i32.const $2
+2880| i32.atomic.store8 $0:%[-2]+$3, %[-1]
+2890| return
+2891| i32.const $1
+2896| i32.const $2
+2901| i32.atomic.store16 $0:%[-2]+$3, %[-1]
+2911| return
+2912| i32.const $1
+2917| i64.const $2
+2926| i64.atomic.store8 $0:%[-2]+$3, %[-1]
+2936| return
+2937| i32.const $1
+2942| i64.const $2
+2951| i64.atomic.store16 $0:%[-2]+$3, %[-1]
+2961| return
+2962| i32.const $1
+2967| i64.const $2
+2976| i64.atomic.store32 $0:%[-2]+$3, %[-1]
+2986| return
+2987| i32.const $1
+2992| i32.const $2
+2997| i32.atomic.rmw.add $0:%[-2]+$3, %[-1]
+3007| drop
+3008| return
+3009| i32.const $1
+3014| i64.const $2
+3023| i64.atomic.rmw.add $0:%[-2]+$7, %[-1]
+3033| drop
+3034| return
+3035| i32.const $1
+3040| i32.const $2
+3045| i32.atomic.rmw8_u.add $0:%[-2]+$3, %[-1]
+3055| drop
+3056| return
+3057| i32.const $1
+3062| i32.const $2
+3067| i32.atomic.rmw16_u.add $0:%[-2]+$3, %[-1]
+3077| drop
+3078| return
+3079| i32.const $1
+3084| i64.const $2
+3093| i64.atomic.rmw8_u.add $0:%[-2]+$3, %[-1]
+3103| drop
+3104| return
+3105| i32.const $1
+3110| i64.const $2
+3119| i64.atomic.rmw16_u.add $0:%[-2]+$3, %[-1]
+3129| drop
+3130| return
+3131| i32.const $1
+3136| i64.const $2
+3145| i64.atomic.rmw32_u.add $0:%[-2]+$3, %[-1]
+3155| drop
+3156| return
+3157| i32.const $1
+3162| i32.const $2
+3167| i32.atomic.rmw.sub $0:%[-2]+$3, %[-1]
+3177| drop
+3178| return
+3179| i32.const $1
+3184| i64.const $2
+3193| i64.atomic.rmw.sub $0:%[-2]+$7, %[-1]
+3203| drop
+3204| return
+3205| i32.const $1
+3210| i32.const $2
+3215| i32.atomic.rmw8_u.sub $0:%[-2]+$3, %[-1]
+3225| drop
+3226| return
+3227| i32.const $1
+3232| i32.const $2
+3237| i32.atomic.rmw16_u.sub $0:%[-2]+$3, %[-1]
+3247| drop
+3248| return
+3249| i32.const $1
+3254| i64.const $2
+3263| i64.atomic.rmw8_u.sub $0:%[-2]+$3, %[-1]
+3273| drop
+3274| return
+3275| i32.const $1
+3280| i64.const $2
+3289| i64.atomic.rmw16_u.sub $0:%[-2]+$3, %[-1]
+3299| drop
+3300| return
+3301| i32.const $1
+3306| i64.const $2
+3315| i64.atomic.rmw32_u.sub $0:%[-2]+$3, %[-1]
+3325| drop
+3326| return
+3327| i32.const $1
+3332| i32.const $2
+3337| i32.atomic.rmw.and $0:%[-2]+$3, %[-1]
+3347| drop
+3348| return
+3349| i32.const $1
+3354| i64.const $2
+3363| i64.atomic.rmw.and $0:%[-2]+$7, %[-1]
+3373| drop
+3374| return
+3375| i32.const $1
+3380| i32.const $2
+3385| i32.atomic.rmw8_u.and $0:%[-2]+$3, %[-1]
+3395| drop
+3396| return
+3397| i32.const $1
+3402| i32.const $2
+3407| i32.atomic.rmw16_u.and $0:%[-2]+$3, %[-1]
+3417| drop
+3418| return
+3419| i32.const $1
+3424| i64.const $2
+3433| i64.atomic.rmw8_u.and $0:%[-2]+$3, %[-1]
+3443| drop
+3444| return
+3445| i32.const $1
+3450| i64.const $2
+3459| i64.atomic.rmw16_u.and $0:%[-2]+$3, %[-1]
+3469| drop
+3470| return
+3471| i32.const $1
+3476| i64.const $2
+3485| i64.atomic.rmw32_u.and $0:%[-2]+$3, %[-1]
+3495| drop
+3496| return
+3497| i32.const $1
+3502| i32.const $2
+3507| i32.atomic.rmw.or $0:%[-2]+$3, %[-1]
+3517| drop
+3518| return
+3519| i32.const $1
+3524| i64.const $2
+3533| i64.atomic.rmw.or $0:%[-2]+$7, %[-1]
+3543| drop
+3544| return
+3545| i32.const $1
+3550| i32.const $2
+3555| i32.atomic.rmw8_u.or $0:%[-2]+$3, %[-1]
+3565| drop
+3566| return
+3567| i32.const $1
+3572| i32.const $2
+3577| i32.atomic.rmw16_u.or $0:%[-2]+$3, %[-1]
+3587| drop
+3588| return
+3589| i32.const $1
+3594| i64.const $2
+3603| i64.atomic.rmw8_u.or $0:%[-2]+$3, %[-1]
+3613| drop
+3614| return
+3615| i32.const $1
+3620| i64.const $2
+3629| i64.atomic.rmw16_u.or $0:%[-2]+$3, %[-1]
+3639| drop
+3640| return
+3641| i32.const $1
+3646| i64.const $2
+3655| i64.atomic.rmw32_u.or $0:%[-2]+$3, %[-1]
+3665| drop
+3666| return
+3667| i32.const $1
+3672| i32.const $2
+3677| i32.atomic.rmw.xor $0:%[-2]+$3, %[-1]
+3687| drop
+3688| return
+3689| i32.const $1
+3694| i64.const $2
+3703| i64.atomic.rmw.xor $0:%[-2]+$7, %[-1]
+3713| drop
+3714| return
+3715| i32.const $1
+3720| i32.const $2
+3725| i32.atomic.rmw8_u.xor $0:%[-2]+$3, %[-1]
+3735| drop
+3736| return
+3737| i32.const $1
+3742| i32.const $2
+3747| i32.atomic.rmw16_u.xor $0:%[-2]+$3, %[-1]
+3757| drop
+3758| return
+3759| i32.const $1
+3764| i64.const $2
+3773| i64.atomic.rmw8_u.xor $0:%[-2]+$3, %[-1]
+3783| drop
+3784| return
+3785| i32.const $1
+3790| i64.const $2
+3799| i64.atomic.rmw16_u.xor $0:%[-2]+$3, %[-1]
+3809| drop
+3810| return
+3811| i32.const $1
+3816| i64.const $2
+3825| i64.atomic.rmw32_u.xor $0:%[-2]+$3, %[-1]
+3835| drop
+3836| return
+3837| i32.const $1
+3842| i32.const $2
+3847| i32.atomic.rmw.xchg $0:%[-2]+$3, %[-1]
+3857| drop
+3858| return
+3859| i32.const $1
+3864| i64.const $2
+3873| i64.atomic.rmw.xchg $0:%[-2]+$7, %[-1]
+3883| drop
+3884| return
+3885| i32.const $1
+3890| i32.const $2
+3895| i32.atomic.rmw8_u.xchg $0:%[-2]+$3, %[-1]
+3905| drop
+3906| return
+3907| i32.const $1
+3912| i32.const $2
+3917| i32.atomic.rmw16_u.xchg $0:%[-2]+$3, %[-1]
+3927| drop
+3928| return
+3929| i32.const $1
+3934| i64.const $2
+3943| i64.atomic.rmw8_u.xchg $0:%[-2]+$3, %[-1]
+3953| drop
+3954| return
+3955| i32.const $1
+3960| i64.const $2
+3969| i64.atomic.rmw16_u.xchg $0:%[-2]+$3, %[-1]
3979| drop
3980| return
3981| i32.const $1
-3986| i32.const $2
-3991| i32.const $3
-3996| i32.atomic.rmw8_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
-4006| drop
-4007| return
-4008| i32.const $1
-4013| i32.const $2
-4018| i32.const $3
-4023| i32.atomic.rmw16_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
-4033| drop
-4034| return
-4035| i32.const $1
-4040| i64.const $2
-4049| i64.const $3
-4058| i64.atomic.rmw8_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
-4068| drop
-4069| return
-4070| i32.const $1
-4075| i64.const $2
-4084| i64.const $3
-4093| i64.atomic.rmw16_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
-4103| drop
-4104| return
-4105| i32.const $1
-4110| i64.const $2
-4119| i64.const $3
-4128| i64.atomic.rmw32_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
-4138| drop
-4139| return
+3986| i64.const $2
+3995| i64.atomic.rmw32_u.xchg $0:%[-2]+$3, %[-1]
+4005| drop
+4006| return
+4007| i32.const $1
+4012| i32.const $2
+4017| i32.const $3
+4022| i32.atomic.rmw.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
+4032| drop
+4033| return
+4034| i32.const $1
+4039| i64.const $2
+4048| i64.const $3
+4057| i64.atomic.rmw.cmpxchg $0:%[-3]+$7, %[-2], %[-1]
+4067| drop
+4068| return
+4069| i32.const $1
+4074| i32.const $2
+4079| i32.const $3
+4084| i32.atomic.rmw8_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
+4094| drop
+4095| return
+4096| i32.const $1
+4101| i32.const $2
+4106| i32.const $3
+4111| i32.atomic.rmw16_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
+4121| drop
+4122| return
+4123| i32.const $1
+4128| i64.const $2
+4137| i64.const $3
+4146| i64.atomic.rmw8_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
+4156| drop
+4157| return
+4158| i32.const $1
+4163| i64.const $2
+4172| i64.const $3
+4181| i64.atomic.rmw16_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
+4191| drop
+4192| return
+4193| i32.const $1
+4198| i64.const $2
+4207| i64.const $3
+4216| i64.atomic.rmw32_u.cmpxchg $0:%[-3]+$3, %[-2], %[-1]
+4226| drop
+4227| return
unreachable() => error: unreachable executed
br() =>
br_table() =>
@@ -7848,6 +7958,9 @@ i64.trunc_s:sat/f32() =>
i64.trunc_u:sat/f32() =>
i64.trunc_s:sat/f64() =>
i64.trunc_u:sat/f64() =>
+wake() => error: unreachable executed
+i32.wait() => error: unreachable executed
+i64.wait() => error: unreachable executed
i32.atomic.load() =>
i64.atomic.load() =>
i32.atomic.load8_u() =>
diff --git a/test/interp/tracing-all-opcodes.txt b/test/interp/tracing-all-opcodes.txt
index 1ec50ace..d23cf538 100644
--- a/test/interp/tracing-all-opcodes.txt
+++ b/test/interp/tracing-all-opcodes.txt
@@ -213,6 +213,9 @@
(; 0xfc 0x07 ;) (func (export "i64.trunc_u:sat/f64") f64.const 1 i64.trunc_u:sat/f64 drop)
;; --enable-threads
+ (; 0xfe 0x00 ;) (func (export "wake") i32.const 1 i32.const 2 wake offset=3 drop)
+ (; 0xfe 0x01 ;) (func (export "i32.wait") i32.const 1 i32.const 2 i64.const 3 i32.wait offset=3 drop)
+ (; 0xfe 0x02 ;) (func (export "i64.wait") i32.const 1 i64.const 2 i64.const 3 i64.wait offset=3 drop)
(; 0xfe 0x10 ;) (func (export "i32.atomic.load") i32.const 1 i32.atomic.load offset=3 drop)
(; 0xfe 0x11 ;) (func (export "i64.atomic.load") i32.const 1 i64.atomic.load offset=7 drop)
(; 0xfe 0x12 ;) (func (export "i32.atomic.load8_u") i32.const 1 i32.atomic.load8_u offset=3 drop)
@@ -1436,438 +1439,455 @@ i64.trunc_s:sat/f64() =>
#0. 2586: V:1 | drop
#0. 2587: V:0 | return
i64.trunc_u:sat/f64() =>
->>> running export "i32.atomic.load":
+>>> running export "wake":
#0. 2588: V:0 | i32.const $1
-#0. 2593: V:1 | i32.atomic.load $0:1+$3
-#0. 2603: V:1 | drop
-#0. 2604: V:0 | return
+#0. 2593: V:1 | i32.const $2
+#0. 2598: V:2 | wake $0:1+$3, 2
+wake() => error: unreachable executed
+>>> running export "i32.wait":
+#0. 2610: V:0 | i32.const $1
+#0. 2615: V:1 | i32.const $2
+#0. 2620: V:2 | i64.const $3
+#0. 2629: V:3 | i32.wait $0:1+$3, 2, 3
+i32.wait() => error: unreachable executed
+>>> running export "i64.wait":
+#0. 2641: V:0 | i32.const $1
+#0. 2646: V:1 | i64.const $2
+#0. 2655: V:2 | i64.const $3
+#0. 2664: V:3 | i64.wait $0:1+$3, 2, 3
+i64.wait() => error: unreachable executed
+>>> running export "i32.atomic.load":
+#0. 2676: V:0 | i32.const $1
+#0. 2681: V:1 | i32.atomic.load $0:1+$3
+#0. 2691: V:1 | drop
+#0. 2692: V:0 | return
i32.atomic.load() =>
>>> running export "i64.atomic.load":
-#0. 2605: V:0 | i32.const $1
-#0. 2610: V:1 | i64.atomic.load $0:1+$7
-#0. 2620: V:1 | drop
-#0. 2621: V:0 | return
+#0. 2693: V:0 | i32.const $1
+#0. 2698: V:1 | i64.atomic.load $0:1+$7
+#0. 2708: V:1 | drop
+#0. 2709: V:0 | return
i64.atomic.load() =>
>>> running export "i32.atomic.load8_u":
-#0. 2622: V:0 | i32.const $1
-#0. 2627: V:1 | i32.atomic.load8_u $0:1+$3
-#0. 2637: V:1 | drop
-#0. 2638: V:0 | return
+#0. 2710: V:0 | i32.const $1
+#0. 2715: V:1 | i32.atomic.load8_u $0:1+$3
+#0. 2725: V:1 | drop
+#0. 2726: V:0 | return
i32.atomic.load8_u() =>
>>> running export "i32.atomic.load16_u":
-#0. 2639: V:0 | i32.const $1
-#0. 2644: V:1 | i32.atomic.load16_u $0:1+$3
-#0. 2654: V:1 | drop
-#0. 2655: V:0 | return
+#0. 2727: V:0 | i32.const $1
+#0. 2732: V:1 | i32.atomic.load16_u $0:1+$3
+#0. 2742: V:1 | drop
+#0. 2743: V:0 | return
i32.atomic.load16_u() =>
>>> running export "i64.atomic.load8_u":
-#0. 2656: V:0 | i32.const $1
-#0. 2661: V:1 | i64.atomic.load8_u $0:1+$3
-#0. 2671: V:1 | drop
-#0. 2672: V:0 | return
+#0. 2744: V:0 | i32.const $1
+#0. 2749: V:1 | i64.atomic.load8_u $0:1+$3
+#0. 2759: V:1 | drop
+#0. 2760: V:0 | return
i64.atomic.load8_u() =>
>>> running export "i64.atomic.load16_u":
-#0. 2673: V:0 | i32.const $1
-#0. 2678: V:1 | i64.atomic.load16_u $0:1+$3
-#0. 2688: V:1 | drop
-#0. 2689: V:0 | return
+#0. 2761: V:0 | i32.const $1
+#0. 2766: V:1 | i64.atomic.load16_u $0:1+$3
+#0. 2776: V:1 | drop
+#0. 2777: V:0 | return
i64.atomic.load16_u() =>
>>> running export "i64.atomic.load32_u":
-#0. 2690: V:0 | i32.const $1
-#0. 2695: V:1 | i64.atomic.load32_u $0:1+$3
-#0. 2705: V:1 | drop
-#0. 2706: V:0 | return
+#0. 2778: V:0 | i32.const $1
+#0. 2783: V:1 | i64.atomic.load32_u $0:1+$3
+#0. 2793: V:1 | drop
+#0. 2794: V:0 | return
i64.atomic.load32_u() =>
>>> running export "i32.atomic.store":
-#0. 2707: V:0 | i32.const $1
-#0. 2712: V:1 | i32.const $2
-#0. 2717: V:2 | i32.atomic.store $0:1+$3, 2
-#0. 2727: V:0 | return
+#0. 2795: V:0 | i32.const $1
+#0. 2800: V:1 | i32.const $2
+#0. 2805: V:2 | i32.atomic.store $0:1+$3, 2
+#0. 2815: V:0 | return
i32.atomic.store() =>
>>> running export "i64.atomic.store":
-#0. 2728: V:0 | i32.const $1
-#0. 2733: V:1 | i64.const $2
-#0. 2742: V:2 | i64.atomic.store $0:1+$7, 2
-#0. 2752: V:0 | return
+#0. 2816: V:0 | i32.const $1
+#0. 2821: V:1 | i64.const $2
+#0. 2830: V:2 | i64.atomic.store $0:1+$7, 2
+#0. 2840: V:0 | return
i64.atomic.store() =>
>>> running export "i32.atomic.store8":
-#0. 2753: V:0 | i32.const $1
-#0. 2758: V:1 | i32.const $2
-#0. 2763: V:2 | i32.atomic.store8 $0:1+$3, 2
-#0. 2773: V:0 | return
+#0. 2841: V:0 | i32.const $1
+#0. 2846: V:1 | i32.const $2
+#0. 2851: V:2 | i32.atomic.store8 $0:1+$3, 2
+#0. 2861: V:0 | return
i32.atomic.store8() =>
>>> running export "i32.atomic.store16":
-#0. 2774: V:0 | i32.const $1
-#0. 2779: V:1 | i32.const $2
-#0. 2784: V:2 | i32.atomic.store16 $0:1+$3, 2
-#0. 2794: V:0 | return
+#0. 2862: V:0 | i32.const $1
+#0. 2867: V:1 | i32.const $2
+#0. 2872: V:2 | i32.atomic.store16 $0:1+$3, 2
+#0. 2882: V:0 | return
i32.atomic.store16() =>
>>> running export "i64.atomic.store8":
-#0. 2795: V:0 | i32.const $1
-#0. 2800: V:1 | i64.const $2
-#0. 2809: V:2 | i64.atomic.store8 $0:1+$3, 2
-#0. 2819: V:0 | return
+#0. 2883: V:0 | i32.const $1
+#0. 2888: V:1 | i64.const $2
+#0. 2897: V:2 | i64.atomic.store8 $0:1+$3, 2
+#0. 2907: V:0 | return
i64.atomic.store8() =>
>>> running export "i64.atomic.store16":
-#0. 2820: V:0 | i32.const $1
-#0. 2825: V:1 | i64.const $2
-#0. 2834: V:2 | i64.atomic.store16 $0:1+$3, 2
-#0. 2844: V:0 | return
+#0. 2908: V:0 | i32.const $1
+#0. 2913: V:1 | i64.const $2
+#0. 2922: V:2 | i64.atomic.store16 $0:1+$3, 2
+#0. 2932: V:0 | return
i64.atomic.store16() =>
>>> running export "i64.atomic.store32":
-#0. 2845: V:0 | i32.const $1
-#0. 2850: V:1 | i64.const $2
-#0. 2859: V:2 | i64.atomic.store32 $0:1+$3, 2
-#0. 2869: V:0 | return
+#0. 2933: V:0 | i32.const $1
+#0. 2938: V:1 | i64.const $2
+#0. 2947: V:2 | i64.atomic.store32 $0:1+$3, 2
+#0. 2957: V:0 | return
i64.atomic.store32() =>
>>> running export "i32.atomic.rmw.add":
-#0. 2870: V:0 | i32.const $1
-#0. 2875: V:1 | i32.const $2
-#0. 2880: V:2 | i32.atomic.rmw.add $0:1+$3, 2
-#0. 2890: V:1 | drop
-#0. 2891: V:0 | return
+#0. 2958: V:0 | i32.const $1
+#0. 2963: V:1 | i32.const $2
+#0. 2968: V:2 | i32.atomic.rmw.add $0:1+$3, 2
+#0. 2978: V:1 | drop
+#0. 2979: V:0 | return
i32.atomic.rmw.add() =>
>>> running export "i64.atomic.rmw.add":
-#0. 2892: V:0 | i32.const $1
-#0. 2897: V:1 | i64.const $2
-#0. 2906: V:2 | i64.atomic.rmw.add $0:1+$7, 2
-#0. 2916: V:1 | drop
-#0. 2917: V:0 | return
+#0. 2980: V:0 | i32.const $1
+#0. 2985: V:1 | i64.const $2
+#0. 2994: V:2 | i64.atomic.rmw.add $0:1+$7, 2
+#0. 3004: V:1 | drop
+#0. 3005: V:0 | return
i64.atomic.rmw.add() =>
>>> running export "i32.atomic.rmw8_u.add":
-#0. 2918: V:0 | i32.const $1
-#0. 2923: V:1 | i32.const $2
-#0. 2928: V:2 | i32.atomic.rmw8_u.add $0:1+$3, 2
-#0. 2938: V:1 | drop
-#0. 2939: V:0 | return
+#0. 3006: V:0 | i32.const $1
+#0. 3011: V:1 | i32.const $2
+#0. 3016: V:2 | i32.atomic.rmw8_u.add $0:1+$3, 2
+#0. 3026: V:1 | drop
+#0. 3027: V:0 | return
i32.atomic.rmw8_u.add() =>
>>> running export "i32.atomic.rmw16_u.add":
-#0. 2940: V:0 | i32.const $1
-#0. 2945: V:1 | i32.const $2
-#0. 2950: V:2 | i32.atomic.rmw16_u.add $0:1+$3, 2
-#0. 2960: V:1 | drop
-#0. 2961: V:0 | return
+#0. 3028: V:0 | i32.const $1
+#0. 3033: V:1 | i32.const $2
+#0. 3038: V:2 | i32.atomic.rmw16_u.add $0:1+$3, 2
+#0. 3048: V:1 | drop
+#0. 3049: V:0 | return
i32.atomic.rmw16_u.add() =>
>>> running export "i64.atomic.rmw8_u.add":
-#0. 2962: V:0 | i32.const $1
-#0. 2967: V:1 | i64.const $2
-#0. 2976: V:2 | i64.atomic.rmw8_u.add $0:1+$3, 2
-#0. 2986: V:1 | drop
-#0. 2987: V:0 | return
+#0. 3050: V:0 | i32.const $1
+#0. 3055: V:1 | i64.const $2
+#0. 3064: V:2 | i64.atomic.rmw8_u.add $0:1+$3, 2
+#0. 3074: V:1 | drop
+#0. 3075: V:0 | return
i64.atomic.rmw8_u.add() =>
>>> running export "i64.atomic.rmw16_u.add":
-#0. 2988: V:0 | i32.const $1
-#0. 2993: V:1 | i64.const $2
-#0. 3002: V:2 | i64.atomic.rmw16_u.add $0:1+$3, 2
-#0. 3012: V:1 | drop
-#0. 3013: V:0 | return
+#0. 3076: V:0 | i32.const $1
+#0. 3081: V:1 | i64.const $2
+#0. 3090: V:2 | i64.atomic.rmw16_u.add $0:1+$3, 2
+#0. 3100: V:1 | drop
+#0. 3101: V:0 | return
i64.atomic.rmw16_u.add() =>
>>> running export "i64.atomic.rmw32_u.add":
-#0. 3014: V:0 | i32.const $1
-#0. 3019: V:1 | i64.const $2
-#0. 3028: V:2 | i64.atomic.rmw32_u.add $0:1+$3, 2
-#0. 3038: V:1 | drop
-#0. 3039: V:0 | return
+#0. 3102: V:0 | i32.const $1
+#0. 3107: V:1 | i64.const $2
+#0. 3116: V:2 | i64.atomic.rmw32_u.add $0:1+$3, 2
+#0. 3126: V:1 | drop
+#0. 3127: V:0 | return
i64.atomic.rmw32_u.add() =>
>>> running export "i32.atomic.rmw.sub":
-#0. 3040: V:0 | i32.const $1
-#0. 3045: V:1 | i32.const $2
-#0. 3050: V:2 | i32.atomic.rmw.sub $0:1+$3, 2
-#0. 3060: V:1 | drop
-#0. 3061: V:0 | return
+#0. 3128: V:0 | i32.const $1
+#0. 3133: V:1 | i32.const $2
+#0. 3138: V:2 | i32.atomic.rmw.sub $0:1+$3, 2
+#0. 3148: V:1 | drop
+#0. 3149: V:0 | return
i32.atomic.rmw.sub() =>
>>> running export "i64.atomic.rmw.sub":
-#0. 3062: V:0 | i32.const $1
-#0. 3067: V:1 | i64.const $2
-#0. 3076: V:2 | i64.atomic.rmw.sub $0:1+$7, 2
-#0. 3086: V:1 | drop
-#0. 3087: V:0 | return
+#0. 3150: V:0 | i32.const $1
+#0. 3155: V:1 | i64.const $2
+#0. 3164: V:2 | i64.atomic.rmw.sub $0:1+$7, 2
+#0. 3174: V:1 | drop
+#0. 3175: V:0 | return
i64.atomic.rmw.sub() =>
>>> running export "i32.atomic.rmw8_u.sub":
-#0. 3088: V:0 | i32.const $1
-#0. 3093: V:1 | i32.const $2
-#0. 3098: V:2 | i32.atomic.rmw8_u.sub $0:1+$3, 2
-#0. 3108: V:1 | drop
-#0. 3109: V:0 | return
+#0. 3176: V:0 | i32.const $1
+#0. 3181: V:1 | i32.const $2
+#0. 3186: V:2 | i32.atomic.rmw8_u.sub $0:1+$3, 2
+#0. 3196: V:1 | drop
+#0. 3197: V:0 | return
i32.atomic.rmw8_u.sub() =>
>>> running export "i32.atomic.rmw16_u.sub":
-#0. 3110: V:0 | i32.const $1
-#0. 3115: V:1 | i32.const $2
-#0. 3120: V:2 | i32.atomic.rmw16_u.sub $0:1+$3, 2
-#0. 3130: V:1 | drop
-#0. 3131: V:0 | return
+#0. 3198: V:0 | i32.const $1
+#0. 3203: V:1 | i32.const $2
+#0. 3208: V:2 | i32.atomic.rmw16_u.sub $0:1+$3, 2
+#0. 3218: V:1 | drop
+#0. 3219: V:0 | return
i32.atomic.rmw16_u.sub() =>
>>> running export "i64.atomic.rmw8_u.sub":
-#0. 3132: V:0 | i32.const $1
-#0. 3137: V:1 | i64.const $2
-#0. 3146: V:2 | i64.atomic.rmw8_u.sub $0:1+$3, 2
-#0. 3156: V:1 | drop
-#0. 3157: V:0 | return
+#0. 3220: V:0 | i32.const $1
+#0. 3225: V:1 | i64.const $2
+#0. 3234: V:2 | i64.atomic.rmw8_u.sub $0:1+$3, 2
+#0. 3244: V:1 | drop
+#0. 3245: V:0 | return
i64.atomic.rmw8_u.sub() =>
>>> running export "i64.atomic.rmw16_u.sub":
-#0. 3158: V:0 | i32.const $1
-#0. 3163: V:1 | i64.const $2
-#0. 3172: V:2 | i64.atomic.rmw16_u.sub $0:1+$3, 2
-#0. 3182: V:1 | drop
-#0. 3183: V:0 | return
+#0. 3246: V:0 | i32.const $1
+#0. 3251: V:1 | i64.const $2
+#0. 3260: V:2 | i64.atomic.rmw16_u.sub $0:1+$3, 2
+#0. 3270: V:1 | drop
+#0. 3271: V:0 | return
i64.atomic.rmw16_u.sub() =>
>>> running export "i64.atomic.rmw32_u.sub":
-#0. 3184: V:0 | i32.const $1
-#0. 3189: V:1 | i64.const $2
-#0. 3198: V:2 | i64.atomic.rmw32_u.sub $0:1+$3, 2
-#0. 3208: V:1 | drop
-#0. 3209: V:0 | return
+#0. 3272: V:0 | i32.const $1
+#0. 3277: V:1 | i64.const $2
+#0. 3286: V:2 | i64.atomic.rmw32_u.sub $0:1+$3, 2
+#0. 3296: V:1 | drop
+#0. 3297: V:0 | return
i64.atomic.rmw32_u.sub() =>
>>> running export "i32.atomic.rmw.and":
-#0. 3210: V:0 | i32.const $1
-#0. 3215: V:1 | i32.const $2
-#0. 3220: V:2 | i32.atomic.rmw.and $0:1+$3, 2
-#0. 3230: V:1 | drop
-#0. 3231: V:0 | return
+#0. 3298: V:0 | i32.const $1
+#0. 3303: V:1 | i32.const $2
+#0. 3308: V:2 | i32.atomic.rmw.and $0:1+$3, 2
+#0. 3318: V:1 | drop
+#0. 3319: V:0 | return
i32.atomic.rmw.and() =>
>>> running export "i64.atomic.rmw.and":
-#0. 3232: V:0 | i32.const $1
-#0. 3237: V:1 | i64.const $2
-#0. 3246: V:2 | i64.atomic.rmw.and $0:1+$7, 2
-#0. 3256: V:1 | drop
-#0. 3257: V:0 | return
+#0. 3320: V:0 | i32.const $1
+#0. 3325: V:1 | i64.const $2
+#0. 3334: V:2 | i64.atomic.rmw.and $0:1+$7, 2
+#0. 3344: V:1 | drop
+#0. 3345: V:0 | return
i64.atomic.rmw.and() =>
>>> running export "i32.atomic.rmw8_u.and":
-#0. 3258: V:0 | i32.const $1
-#0. 3263: V:1 | i32.const $2
-#0. 3268: V:2 | i32.atomic.rmw8_u.and $0:1+$3, 2
-#0. 3278: V:1 | drop
-#0. 3279: V:0 | return
+#0. 3346: V:0 | i32.const $1
+#0. 3351: V:1 | i32.const $2
+#0. 3356: V:2 | i32.atomic.rmw8_u.and $0:1+$3, 2
+#0. 3366: V:1 | drop
+#0. 3367: V:0 | return
i32.atomic.rmw8_u.and() =>
>>> running export "i32.atomic.rmw16_u.and":
-#0. 3280: V:0 | i32.const $1
-#0. 3285: V:1 | i32.const $2
-#0. 3290: V:2 | i32.atomic.rmw16_u.and $0:1+$3, 2
-#0. 3300: V:1 | drop
-#0. 3301: V:0 | return
+#0. 3368: V:0 | i32.const $1
+#0. 3373: V:1 | i32.const $2
+#0. 3378: V:2 | i32.atomic.rmw16_u.and $0:1+$3, 2
+#0. 3388: V:1 | drop
+#0. 3389: V:0 | return
i32.atomic.rmw16_u.and() =>
>>> running export "i64.atomic.rmw8_u.and":
-#0. 3302: V:0 | i32.const $1
-#0. 3307: V:1 | i64.const $2
-#0. 3316: V:2 | i64.atomic.rmw8_u.and $0:1+$3, 2
-#0. 3326: V:1 | drop
-#0. 3327: V:0 | return
+#0. 3390: V:0 | i32.const $1
+#0. 3395: V:1 | i64.const $2
+#0. 3404: V:2 | i64.atomic.rmw8_u.and $0:1+$3, 2
+#0. 3414: V:1 | drop
+#0. 3415: V:0 | return
i64.atomic.rmw8_u.and() =>
>>> running export "i64.atomic.rmw16_u.and":
-#0. 3328: V:0 | i32.const $1
-#0. 3333: V:1 | i64.const $2
-#0. 3342: V:2 | i64.atomic.rmw16_u.and $0:1+$3, 2
-#0. 3352: V:1 | drop
-#0. 3353: V:0 | return
+#0. 3416: V:0 | i32.const $1
+#0. 3421: V:1 | i64.const $2
+#0. 3430: V:2 | i64.atomic.rmw16_u.and $0:1+$3, 2
+#0. 3440: V:1 | drop
+#0. 3441: V:0 | return
i64.atomic.rmw16_u.and() =>
>>> running export "i64.atomic.rmw32_u.and":
-#0. 3354: V:0 | i32.const $1
-#0. 3359: V:1 | i64.const $2
-#0. 3368: V:2 | i64.atomic.rmw32_u.and $0:1+$3, 2
-#0. 3378: V:1 | drop
-#0. 3379: V:0 | return
+#0. 3442: V:0 | i32.const $1
+#0. 3447: V:1 | i64.const $2
+#0. 3456: V:2 | i64.atomic.rmw32_u.and $0:1+$3, 2
+#0. 3466: V:1 | drop
+#0. 3467: V:0 | return
i64.atomic.rmw32_u.and() =>
>>> running export "i32.atomic.rmw.or":
-#0. 3380: V:0 | i32.const $1
-#0. 3385: V:1 | i32.const $2
-#0. 3390: V:2 | i32.atomic.rmw.or $0:1+$3, 2
-#0. 3400: V:1 | drop
-#0. 3401: V:0 | return
+#0. 3468: V:0 | i32.const $1
+#0. 3473: V:1 | i32.const $2
+#0. 3478: V:2 | i32.atomic.rmw.or $0:1+$3, 2
+#0. 3488: V:1 | drop
+#0. 3489: V:0 | return
i32.atomic.rmw.or() =>
>>> running export "i64.atomic.rmw.or":
-#0. 3402: V:0 | i32.const $1
-#0. 3407: V:1 | i64.const $2
-#0. 3416: V:2 | i64.atomic.rmw.or $0:1+$7, 2
-#0. 3426: V:1 | drop
-#0. 3427: V:0 | return
+#0. 3490: V:0 | i32.const $1
+#0. 3495: V:1 | i64.const $2
+#0. 3504: V:2 | i64.atomic.rmw.or $0:1+$7, 2
+#0. 3514: V:1 | drop
+#0. 3515: V:0 | return
i64.atomic.rmw.or() =>
>>> running export "i32.atomic.rmw8_u.or":
-#0. 3428: V:0 | i32.const $1
-#0. 3433: V:1 | i32.const $2
-#0. 3438: V:2 | i32.atomic.rmw8_u.or $0:1+$3, 2
-#0. 3448: V:1 | drop
-#0. 3449: V:0 | return
+#0. 3516: V:0 | i32.const $1
+#0. 3521: V:1 | i32.const $2
+#0. 3526: V:2 | i32.atomic.rmw8_u.or $0:1+$3, 2
+#0. 3536: V:1 | drop
+#0. 3537: V:0 | return
i32.atomic.rmw8_u.or() =>
>>> running export "i32.atomic.rmw16_u.or":
-#0. 3450: V:0 | i32.const $1
-#0. 3455: V:1 | i32.const $2
-#0. 3460: V:2 | i32.atomic.rmw16_u.or $0:1+$3, 2
-#0. 3470: V:1 | drop
-#0. 3471: V:0 | return
+#0. 3538: V:0 | i32.const $1
+#0. 3543: V:1 | i32.const $2
+#0. 3548: V:2 | i32.atomic.rmw16_u.or $0:1+$3, 2
+#0. 3558: V:1 | drop
+#0. 3559: V:0 | return
i32.atomic.rmw16_u.or() =>
>>> running export "i64.atomic.rmw8_u.or":
-#0. 3472: V:0 | i32.const $1
-#0. 3477: V:1 | i64.const $2
-#0. 3486: V:2 | i64.atomic.rmw8_u.or $0:1+$3, 2
-#0. 3496: V:1 | drop
-#0. 3497: V:0 | return
+#0. 3560: V:0 | i32.const $1
+#0. 3565: V:1 | i64.const $2
+#0. 3574: V:2 | i64.atomic.rmw8_u.or $0:1+$3, 2
+#0. 3584: V:1 | drop
+#0. 3585: V:0 | return
i64.atomic.rmw8_u.or() =>
>>> running export "i64.atomic.rmw16_u.or":
-#0. 3498: V:0 | i32.const $1
-#0. 3503: V:1 | i64.const $2
-#0. 3512: V:2 | i64.atomic.rmw16_u.or $0:1+$3, 2
-#0. 3522: V:1 | drop
-#0. 3523: V:0 | return
+#0. 3586: V:0 | i32.const $1
+#0. 3591: V:1 | i64.const $2
+#0. 3600: V:2 | i64.atomic.rmw16_u.or $0:1+$3, 2
+#0. 3610: V:1 | drop
+#0. 3611: V:0 | return
i64.atomic.rmw16_u.or() =>
>>> running export "i64.atomic.rmw32_u.or":
-#0. 3524: V:0 | i32.const $1
-#0. 3529: V:1 | i64.const $2
-#0. 3538: V:2 | i64.atomic.rmw32_u.or $0:1+$3, 2
-#0. 3548: V:1 | drop
-#0. 3549: V:0 | return
+#0. 3612: V:0 | i32.const $1
+#0. 3617: V:1 | i64.const $2
+#0. 3626: V:2 | i64.atomic.rmw32_u.or $0:1+$3, 2
+#0. 3636: V:1 | drop
+#0. 3637: V:0 | return
i64.atomic.rmw32_u.or() =>
>>> running export "i32.atomic.rmw.xor":
-#0. 3550: V:0 | i32.const $1
-#0. 3555: V:1 | i32.const $2
-#0. 3560: V:2 | i32.atomic.rmw.xor $0:1+$3, 2
-#0. 3570: V:1 | drop
-#0. 3571: V:0 | return
+#0. 3638: V:0 | i32.const $1
+#0. 3643: V:1 | i32.const $2
+#0. 3648: V:2 | i32.atomic.rmw.xor $0:1+$3, 2
+#0. 3658: V:1 | drop
+#0. 3659: V:0 | return
i32.atomic.rmw.xor() =>
>>> running export "i64.atomic.rmw.xor":
-#0. 3572: V:0 | i32.const $1
-#0. 3577: V:1 | i64.const $2
-#0. 3586: V:2 | i64.atomic.rmw.xor $0:1+$7, 2
-#0. 3596: V:1 | drop
-#0. 3597: V:0 | return
+#0. 3660: V:0 | i32.const $1
+#0. 3665: V:1 | i64.const $2
+#0. 3674: V:2 | i64.atomic.rmw.xor $0:1+$7, 2
+#0. 3684: V:1 | drop
+#0. 3685: V:0 | return
i64.atomic.rmw.xor() =>
>>> running export "i32.atomic.rmw8_u.xor":
-#0. 3598: V:0 | i32.const $1
-#0. 3603: V:1 | i32.const $2
-#0. 3608: V:2 | i32.atomic.rmw8_u.xor $0:1+$3, 2
-#0. 3618: V:1 | drop
-#0. 3619: V:0 | return
+#0. 3686: V:0 | i32.const $1
+#0. 3691: V:1 | i32.const $2
+#0. 3696: V:2 | i32.atomic.rmw8_u.xor $0:1+$3, 2
+#0. 3706: V:1 | drop
+#0. 3707: V:0 | return
i32.atomic.rmw8_u.xor() =>
>>> running export "i32.atomic.rmw16_u.xor":
-#0. 3620: V:0 | i32.const $1
-#0. 3625: V:1 | i32.const $2
-#0. 3630: V:2 | i32.atomic.rmw16_u.xor $0:1+$3, 2
-#0. 3640: V:1 | drop
-#0. 3641: V:0 | return
+#0. 3708: V:0 | i32.const $1
+#0. 3713: V:1 | i32.const $2
+#0. 3718: V:2 | i32.atomic.rmw16_u.xor $0:1+$3, 2
+#0. 3728: V:1 | drop
+#0. 3729: V:0 | return
i32.atomic.rmw16_u.xor() =>
>>> running export "i64.atomic.rmw8_u.xor":
-#0. 3642: V:0 | i32.const $1
-#0. 3647: V:1 | i64.const $2
-#0. 3656: V:2 | i64.atomic.rmw8_u.xor $0:1+$3, 2
-#0. 3666: V:1 | drop
-#0. 3667: V:0 | return
+#0. 3730: V:0 | i32.const $1
+#0. 3735: V:1 | i64.const $2
+#0. 3744: V:2 | i64.atomic.rmw8_u.xor $0:1+$3, 2
+#0. 3754: V:1 | drop
+#0. 3755: V:0 | return
i64.atomic.rmw8_u.xor() =>
>>> running export "i64.atomic.rmw16_u.xor":
-#0. 3668: V:0 | i32.const $1
-#0. 3673: V:1 | i64.const $2
-#0. 3682: V:2 | i64.atomic.rmw16_u.xor $0:1+$3, 2
-#0. 3692: V:1 | drop
-#0. 3693: V:0 | return
+#0. 3756: V:0 | i32.const $1
+#0. 3761: V:1 | i64.const $2
+#0. 3770: V:2 | i64.atomic.rmw16_u.xor $0:1+$3, 2
+#0. 3780: V:1 | drop
+#0. 3781: V:0 | return
i64.atomic.rmw16_u.xor() =>
>>> running export "i64.atomic.rmw32_u.xor":
-#0. 3694: V:0 | i32.const $1
-#0. 3699: V:1 | i64.const $2
-#0. 3708: V:2 | i64.atomic.rmw32_u.xor $0:1+$3, 2
-#0. 3718: V:1 | drop
-#0. 3719: V:0 | return
+#0. 3782: V:0 | i32.const $1
+#0. 3787: V:1 | i64.const $2
+#0. 3796: V:2 | i64.atomic.rmw32_u.xor $0:1+$3, 2
+#0. 3806: V:1 | drop
+#0. 3807: V:0 | return
i64.atomic.rmw32_u.xor() =>
>>> running export "i32.atomic.rmw.xchg":
-#0. 3720: V:0 | i32.const $1
-#0. 3725: V:1 | i32.const $2
-#0. 3730: V:2 | i32.atomic.rmw.xchg $0:1+$3, 2
-#0. 3740: V:1 | drop
-#0. 3741: V:0 | return
+#0. 3808: V:0 | i32.const $1
+#0. 3813: V:1 | i32.const $2
+#0. 3818: V:2 | i32.atomic.rmw.xchg $0:1+$3, 2
+#0. 3828: V:1 | drop
+#0. 3829: V:0 | return
i32.atomic.rmw.xchg() =>
>>> running export "i64.atomic.rmw.xchg":
-#0. 3742: V:0 | i32.const $1
-#0. 3747: V:1 | i64.const $2
-#0. 3756: V:2 | i64.atomic.rmw.xchg $0:1+$7, 2
-#0. 3766: V:1 | drop
-#0. 3767: V:0 | return
+#0. 3830: V:0 | i32.const $1
+#0. 3835: V:1 | i64.const $2
+#0. 3844: V:2 | i64.atomic.rmw.xchg $0:1+$7, 2
+#0. 3854: V:1 | drop
+#0. 3855: V:0 | return
i64.atomic.rmw.xchg() =>
>>> running export "i32.atomic.rmw8_u.xchg":
-#0. 3768: V:0 | i32.const $1
-#0. 3773: V:1 | i32.const $2
-#0. 3778: V:2 | i32.atomic.rmw8_u.xchg $0:1+$3, 2
-#0. 3788: V:1 | drop
-#0. 3789: V:0 | return
+#0. 3856: V:0 | i32.const $1
+#0. 3861: V:1 | i32.const $2
+#0. 3866: V:2 | i32.atomic.rmw8_u.xchg $0:1+$3, 2
+#0. 3876: V:1 | drop
+#0. 3877: V:0 | return
i32.atomic.rmw8_u.xchg() =>
>>> running export "i32.atomic.rmw16_u.xchg":
-#0. 3790: V:0 | i32.const $1
-#0. 3795: V:1 | i32.const $2
-#0. 3800: V:2 | i32.atomic.rmw16_u.xchg $0:1+$3, 2
-#0. 3810: V:1 | drop
-#0. 3811: V:0 | return
+#0. 3878: V:0 | i32.const $1
+#0. 3883: V:1 | i32.const $2
+#0. 3888: V:2 | i32.atomic.rmw16_u.xchg $0:1+$3, 2
+#0. 3898: V:1 | drop
+#0. 3899: V:0 | return
i32.atomic.rmw16_u.xchg() =>
>>> running export "i64.atomic.rmw8_u.xchg":
-#0. 3812: V:0 | i32.const $1
-#0. 3817: V:1 | i64.const $2
-#0. 3826: V:2 | i64.atomic.rmw8_u.xchg $0:1+$3, 2
-#0. 3836: V:1 | drop
-#0. 3837: V:0 | return
+#0. 3900: V:0 | i32.const $1
+#0. 3905: V:1 | i64.const $2
+#0. 3914: V:2 | i64.atomic.rmw8_u.xchg $0:1+$3, 2
+#0. 3924: V:1 | drop
+#0. 3925: V:0 | return
i64.atomic.rmw8_u.xchg() =>
>>> running export "i64.atomic.rmw16_u.xchg":
-#0. 3838: V:0 | i32.const $1
-#0. 3843: V:1 | i64.const $2
-#0. 3852: V:2 | i64.atomic.rmw16_u.xchg $0:1+$3, 2
-#0. 3862: V:1 | drop
-#0. 3863: V:0 | return
+#0. 3926: V:0 | i32.const $1
+#0. 3931: V:1 | i64.const $2
+#0. 3940: V:2 | i64.atomic.rmw16_u.xchg $0:1+$3, 2
+#0. 3950: V:1 | drop
+#0. 3951: V:0 | return
i64.atomic.rmw16_u.xchg() =>
>>> running export "i64.atomic.rmw32_u.xchg":
-#0. 3864: V:0 | i32.const $1
-#0. 3869: V:1 | i64.const $2
-#0. 3878: V:2 | i64.atomic.rmw32_u.xchg $0:1+$3, 2
-#0. 3888: V:1 | drop
-#0. 3889: V:0 | return
+#0. 3952: V:0 | i32.const $1
+#0. 3957: V:1 | i64.const $2
+#0. 3966: V:2 | i64.atomic.rmw32_u.xchg $0:1+$3, 2
+#0. 3976: V:1 | drop
+#0. 3977: V:0 | return
i64.atomic.rmw32_u.xchg() =>
>>> running export "i32.atomic.rmw.cmpxchg":
-#0. 3890: V:0 | i32.const $1
-#0. 3895: V:1 | i32.const $2
-#0. 3900: V:2 | i32.const $3
-#0. 3905: V:3 | i32.atomic.rmw.cmpxchg $0:1+$3, 2, 3
-#0. 3915: V:1 | drop
-#0. 3916: V:0 | return
+#0. 3978: V:0 | i32.const $1
+#0. 3983: V:1 | i32.const $2
+#0. 3988: V:2 | i32.const $3
+#0. 3993: V:3 | i32.atomic.rmw.cmpxchg $0:1+$3, 2, 3
+#0. 4003: V:1 | drop
+#0. 4004: V:0 | return
i32.atomic.rmw.cmpxchg() =>
>>> running export "i64.atomic.rmw.cmpxchg":
-#0. 3917: V:0 | i32.const $1
-#0. 3922: V:1 | i64.const $2
-#0. 3931: V:2 | i64.const $3
-#0. 3940: V:3 | i64.atomic.rmw.cmpxchg $0:1+$7, 2, 3
-#0. 3950: V:1 | drop
-#0. 3951: V:0 | return
+#0. 4005: V:0 | i32.const $1
+#0. 4010: V:1 | i64.const $2
+#0. 4019: V:2 | i64.const $3
+#0. 4028: V:3 | i64.atomic.rmw.cmpxchg $0:1+$7, 2, 3
+#0. 4038: V:1 | drop
+#0. 4039: V:0 | return
i64.atomic.rmw.cmpxchg() =>
>>> running export "i32.atomic.rmw8_u.cmpxchg":
-#0. 3952: V:0 | i32.const $1
-#0. 3957: V:1 | i32.const $2
-#0. 3962: V:2 | i32.const $3
-#0. 3967: V:3 | i32.atomic.rmw8_u.cmpxchg $0:1+$3, 2, 3
-#0. 3977: V:1 | drop
-#0. 3978: V:0 | return
+#0. 4040: V:0 | i32.const $1
+#0. 4045: V:1 | i32.const $2
+#0. 4050: V:2 | i32.const $3
+#0. 4055: V:3 | i32.atomic.rmw8_u.cmpxchg $0:1+$3, 2, 3
+#0. 4065: V:1 | drop
+#0. 4066: V:0 | return
i32.atomic.rmw8_u.cmpxchg() =>
>>> running export "i32.atomic.rmw16_u.cmpxchg":
-#0. 3979: V:0 | i32.const $1
-#0. 3984: V:1 | i32.const $2
-#0. 3989: V:2 | i32.const $3
-#0. 3994: V:3 | i32.atomic.rmw16_u.cmpxchg $0:1+$3, 2, 3
-#0. 4004: V:1 | drop
-#0. 4005: V:0 | return
+#0. 4067: V:0 | i32.const $1
+#0. 4072: V:1 | i32.const $2
+#0. 4077: V:2 | i32.const $3
+#0. 4082: V:3 | i32.atomic.rmw16_u.cmpxchg $0:1+$3, 2, 3
+#0. 4092: V:1 | drop
+#0. 4093: V:0 | return
i32.atomic.rmw16_u.cmpxchg() =>
>>> running export "i64.atomic.rmw8_u.cmpxchg":
-#0. 4006: V:0 | i32.const $1
-#0. 4011: V:1 | i64.const $2
-#0. 4020: V:2 | i64.const $3
-#0. 4029: V:3 | i64.atomic.rmw8_u.cmpxchg $0:1+$3, 2, 3
-#0. 4039: V:1 | drop
-#0. 4040: V:0 | return
+#0. 4094: V:0 | i32.const $1
+#0. 4099: V:1 | i64.const $2
+#0. 4108: V:2 | i64.const $3
+#0. 4117: V:3 | i64.atomic.rmw8_u.cmpxchg $0:1+$3, 2, 3
+#0. 4127: V:1 | drop
+#0. 4128: V:0 | return
i64.atomic.rmw8_u.cmpxchg() =>
>>> running export "i64.atomic.rmw16_u.cmpxchg":
-#0. 4041: V:0 | i32.const $1
-#0. 4046: V:1 | i64.const $2
-#0. 4055: V:2 | i64.const $3
-#0. 4064: V:3 | i64.atomic.rmw16_u.cmpxchg $0:1+$3, 2, 3
-#0. 4074: V:1 | drop
-#0. 4075: V:0 | return
+#0. 4129: V:0 | i32.const $1
+#0. 4134: V:1 | i64.const $2
+#0. 4143: V:2 | i64.const $3
+#0. 4152: V:3 | i64.atomic.rmw16_u.cmpxchg $0:1+$3, 2, 3
+#0. 4162: V:1 | drop
+#0. 4163: V:0 | return
i64.atomic.rmw16_u.cmpxchg() =>
>>> running export "i64.atomic.rmw32_u.cmpxchg":
-#0. 4076: V:0 | i32.const $1
-#0. 4081: V:1 | i64.const $2
-#0. 4090: V:2 | i64.const $3
-#0. 4099: V:3 | i64.atomic.rmw32_u.cmpxchg $0:1+$3, 2, 3
-#0. 4109: V:1 | drop
-#0. 4110: V:0 | return
+#0. 4164: V:0 | i32.const $1
+#0. 4169: V:1 | i64.const $2
+#0. 4178: V:2 | i64.const $3
+#0. 4187: V:3 | i64.atomic.rmw32_u.cmpxchg $0:1+$3, 2, 3
+#0. 4197: V:1 | drop
+#0. 4198: V:0 | return
i64.atomic.rmw32_u.cmpxchg() =>
;;; STDOUT ;;)
diff --git a/test/parse/expr/atomic-align.txt b/test/parse/expr/atomic-align.txt
index f23b5a96..10dfb8d6 100644
--- a/test/parse/expr/atomic-align.txt
+++ b/test/parse/expr/atomic-align.txt
@@ -2,6 +2,10 @@
(module
(memory (shared 1 1))
(func
+ i32.const 0 i32.const 0 wake align=4 drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait align=4 drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait align=8 drop
+
i32.const 0 i32.atomic.load align=4 drop
i32.const 0 i64.atomic.load align=8 drop
i32.const 0 i32.atomic.load8_u align=1 drop
diff --git a/test/parse/expr/atomic-disabled.txt b/test/parse/expr/atomic-disabled.txt
index 43124dfe..4184ab46 100644
--- a/test/parse/expr/atomic-disabled.txt
+++ b/test/parse/expr/atomic-disabled.txt
@@ -3,6 +3,10 @@
(module
(memory 1)
(func
+ i32.const 0 i32.const 0 wake drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+
i32.const 0 i32.atomic.load drop
i32.const 0 i64.atomic.load drop
i32.const 0 i32.atomic.load8_u drop
@@ -77,193 +81,202 @@
))
(;; STDERR ;;;
-out/test/parse/expr/atomic-disabled.txt:6:17: error: opcode not allowed: i32.atomic.load
+out/test/parse/expr/atomic-disabled.txt:6:29: error: opcode not allowed: wake
+ i32.const 0 i32.const 0 wake drop
+ ^^^^
+out/test/parse/expr/atomic-disabled.txt:7:41: error: opcode not allowed: i32.wait
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ ^^^^^^^^
+out/test/parse/expr/atomic-disabled.txt:8:41: error: opcode not allowed: i64.wait
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+ ^^^^^^^^
+out/test/parse/expr/atomic-disabled.txt:10:17: error: opcode not allowed: i32.atomic.load
i32.const 0 i32.atomic.load drop
^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:7:17: error: opcode not allowed: i64.atomic.load
+out/test/parse/expr/atomic-disabled.txt:11:17: error: opcode not allowed: i64.atomic.load
i32.const 0 i64.atomic.load drop
^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:8:17: error: opcode not allowed: i32.atomic.load8_u
+out/test/parse/expr/atomic-disabled.txt:12:17: error: opcode not allowed: i32.atomic.load8_u
i32.const 0 i32.atomic.load8_u drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:9:17: error: opcode not allowed: i32.atomic.load16_u
+out/test/parse/expr/atomic-disabled.txt:13:17: error: opcode not allowed: i32.atomic.load16_u
i32.const 0 i32.atomic.load16_u drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:10:17: error: opcode not allowed: i64.atomic.load8_u
+out/test/parse/expr/atomic-disabled.txt:14:17: error: opcode not allowed: i64.atomic.load8_u
i32.const 0 i64.atomic.load8_u drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:11:17: error: opcode not allowed: i64.atomic.load16_u
+out/test/parse/expr/atomic-disabled.txt:15:17: error: opcode not allowed: i64.atomic.load16_u
i32.const 0 i64.atomic.load16_u drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:12:17: error: opcode not allowed: i64.atomic.load32_u
+out/test/parse/expr/atomic-disabled.txt:16:17: error: opcode not allowed: i64.atomic.load32_u
i32.const 0 i64.atomic.load32_u drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:14:29: error: opcode not allowed: i32.atomic.store
+out/test/parse/expr/atomic-disabled.txt:18:29: error: opcode not allowed: i32.atomic.store
i32.const 0 i32.const 0 i32.atomic.store
^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:15:29: error: opcode not allowed: i64.atomic.store
+out/test/parse/expr/atomic-disabled.txt:19:29: error: opcode not allowed: i64.atomic.store
i32.const 0 i64.const 0 i64.atomic.store
^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:16:29: error: opcode not allowed: i32.atomic.store8
+out/test/parse/expr/atomic-disabled.txt:20:29: error: opcode not allowed: i32.atomic.store8
i32.const 0 i32.const 0 i32.atomic.store8
^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:17:29: error: opcode not allowed: i32.atomic.store16
+out/test/parse/expr/atomic-disabled.txt:21:29: error: opcode not allowed: i32.atomic.store16
i32.const 0 i32.const 0 i32.atomic.store16
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:18:29: error: opcode not allowed: i64.atomic.store8
+out/test/parse/expr/atomic-disabled.txt:22:29: error: opcode not allowed: i64.atomic.store8
i32.const 0 i64.const 0 i64.atomic.store8
^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:19:29: error: opcode not allowed: i64.atomic.store16
+out/test/parse/expr/atomic-disabled.txt:23:29: error: opcode not allowed: i64.atomic.store16
i32.const 0 i64.const 0 i64.atomic.store16
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:20:29: error: opcode not allowed: i64.atomic.store32
+out/test/parse/expr/atomic-disabled.txt:24:29: error: opcode not allowed: i64.atomic.store32
i32.const 0 i64.const 0 i64.atomic.store32
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:22:29: error: opcode not allowed: i32.atomic.rmw.add
+out/test/parse/expr/atomic-disabled.txt:26:29: error: opcode not allowed: i32.atomic.rmw.add
i32.const 0 i32.const 0 i32.atomic.rmw.add drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:23:29: error: opcode not allowed: i64.atomic.rmw.add
+out/test/parse/expr/atomic-disabled.txt:27:29: error: opcode not allowed: i64.atomic.rmw.add
i32.const 0 i64.const 0 i64.atomic.rmw.add drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:24:29: error: opcode not allowed: i32.atomic.rmw8_u.add
+out/test/parse/expr/atomic-disabled.txt:28:29: error: opcode not allowed: i32.atomic.rmw8_u.add
i32.const 0 i32.const 0 i32.atomic.rmw8_u.add drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:25:29: error: opcode not allowed: i32.atomic.rmw16_u.add
+out/test/parse/expr/atomic-disabled.txt:29:29: error: opcode not allowed: i32.atomic.rmw16_u.add
i32.const 0 i32.const 0 i32.atomic.rmw16_u.add drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:26:29: error: opcode not allowed: i64.atomic.rmw8_u.add
+out/test/parse/expr/atomic-disabled.txt:30:29: error: opcode not allowed: i64.atomic.rmw8_u.add
i32.const 0 i64.const 0 i64.atomic.rmw8_u.add drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:27:29: error: opcode not allowed: i64.atomic.rmw16_u.add
+out/test/parse/expr/atomic-disabled.txt:31:29: error: opcode not allowed: i64.atomic.rmw16_u.add
i32.const 0 i64.const 0 i64.atomic.rmw16_u.add drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:28:29: error: opcode not allowed: i64.atomic.rmw32_u.add
+out/test/parse/expr/atomic-disabled.txt:32:29: error: opcode not allowed: i64.atomic.rmw32_u.add
i32.const 0 i64.const 0 i64.atomic.rmw32_u.add drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:30:29: error: opcode not allowed: i32.atomic.rmw.sub
+out/test/parse/expr/atomic-disabled.txt:34:29: error: opcode not allowed: i32.atomic.rmw.sub
i32.const 0 i32.const 0 i32.atomic.rmw.sub drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:31:29: error: opcode not allowed: i64.atomic.rmw.sub
+out/test/parse/expr/atomic-disabled.txt:35:29: error: opcode not allowed: i64.atomic.rmw.sub
i32.const 0 i64.const 0 i64.atomic.rmw.sub drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:32:29: error: opcode not allowed: i32.atomic.rmw8_u.sub
+out/test/parse/expr/atomic-disabled.txt:36:29: error: opcode not allowed: i32.atomic.rmw8_u.sub
i32.const 0 i32.const 0 i32.atomic.rmw8_u.sub drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:33:29: error: opcode not allowed: i32.atomic.rmw16_u.sub
+out/test/parse/expr/atomic-disabled.txt:37:29: error: opcode not allowed: i32.atomic.rmw16_u.sub
i32.const 0 i32.const 0 i32.atomic.rmw16_u.sub drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:34:29: error: opcode not allowed: i64.atomic.rmw8_u.sub
+out/test/parse/expr/atomic-disabled.txt:38:29: error: opcode not allowed: i64.atomic.rmw8_u.sub
i32.const 0 i64.const 0 i64.atomic.rmw8_u.sub drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:35:29: error: opcode not allowed: i64.atomic.rmw16_u.sub
+out/test/parse/expr/atomic-disabled.txt:39:29: error: opcode not allowed: i64.atomic.rmw16_u.sub
i32.const 0 i64.const 0 i64.atomic.rmw16_u.sub drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:36:29: error: opcode not allowed: i64.atomic.rmw32_u.sub
+out/test/parse/expr/atomic-disabled.txt:40:29: error: opcode not allowed: i64.atomic.rmw32_u.sub
i32.const 0 i64.const 0 i64.atomic.rmw32_u.sub drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:38:29: error: opcode not allowed: i32.atomic.rmw.and
+out/test/parse/expr/atomic-disabled.txt:42:29: error: opcode not allowed: i32.atomic.rmw.and
i32.const 0 i32.const 0 i32.atomic.rmw.and drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:39:29: error: opcode not allowed: i64.atomic.rmw.and
+out/test/parse/expr/atomic-disabled.txt:43:29: error: opcode not allowed: i64.atomic.rmw.and
i32.const 0 i64.const 0 i64.atomic.rmw.and drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:40:29: error: opcode not allowed: i32.atomic.rmw8_u.and
+out/test/parse/expr/atomic-disabled.txt:44:29: error: opcode not allowed: i32.atomic.rmw8_u.and
i32.const 0 i32.const 0 i32.atomic.rmw8_u.and drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:41:29: error: opcode not allowed: i32.atomic.rmw16_u.and
+out/test/parse/expr/atomic-disabled.txt:45:29: error: opcode not allowed: i32.atomic.rmw16_u.and
i32.const 0 i32.const 0 i32.atomic.rmw16_u.and drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:42:29: error: opcode not allowed: i64.atomic.rmw8_u.and
+out/test/parse/expr/atomic-disabled.txt:46:29: error: opcode not allowed: i64.atomic.rmw8_u.and
i32.const 0 i64.const 0 i64.atomic.rmw8_u.and drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:43:29: error: opcode not allowed: i64.atomic.rmw16_u.and
+out/test/parse/expr/atomic-disabled.txt:47:29: error: opcode not allowed: i64.atomic.rmw16_u.and
i32.const 0 i64.const 0 i64.atomic.rmw16_u.and drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:44:29: error: opcode not allowed: i64.atomic.rmw32_u.and
+out/test/parse/expr/atomic-disabled.txt:48:29: error: opcode not allowed: i64.atomic.rmw32_u.and
i32.const 0 i64.const 0 i64.atomic.rmw32_u.and drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:46:29: error: opcode not allowed: i32.atomic.rmw.or
+out/test/parse/expr/atomic-disabled.txt:50:29: error: opcode not allowed: i32.atomic.rmw.or
i32.const 0 i32.const 0 i32.atomic.rmw.or drop
^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:47:29: error: opcode not allowed: i64.atomic.rmw.or
+out/test/parse/expr/atomic-disabled.txt:51:29: error: opcode not allowed: i64.atomic.rmw.or
i32.const 0 i64.const 0 i64.atomic.rmw.or drop
^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:48:29: error: opcode not allowed: i32.atomic.rmw8_u.or
+out/test/parse/expr/atomic-disabled.txt:52:29: error: opcode not allowed: i32.atomic.rmw8_u.or
i32.const 0 i32.const 0 i32.atomic.rmw8_u.or drop
^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:49:29: error: opcode not allowed: i32.atomic.rmw16_u.or
+out/test/parse/expr/atomic-disabled.txt:53:29: error: opcode not allowed: i32.atomic.rmw16_u.or
i32.const 0 i32.const 0 i32.atomic.rmw16_u.or drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:50:29: error: opcode not allowed: i64.atomic.rmw8_u.or
+out/test/parse/expr/atomic-disabled.txt:54:29: error: opcode not allowed: i64.atomic.rmw8_u.or
i32.const 0 i64.const 0 i64.atomic.rmw8_u.or drop
^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:51:29: error: opcode not allowed: i64.atomic.rmw16_u.or
+out/test/parse/expr/atomic-disabled.txt:55:29: error: opcode not allowed: i64.atomic.rmw16_u.or
i32.const 0 i64.const 0 i64.atomic.rmw16_u.or drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:52:29: error: opcode not allowed: i64.atomic.rmw32_u.or
+out/test/parse/expr/atomic-disabled.txt:56:29: error: opcode not allowed: i64.atomic.rmw32_u.or
i32.const 0 i64.const 0 i64.atomic.rmw32_u.or drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:54:29: error: opcode not allowed: i32.atomic.rmw.xor
+out/test/parse/expr/atomic-disabled.txt:58:29: error: opcode not allowed: i32.atomic.rmw.xor
i32.const 0 i32.const 0 i32.atomic.rmw.xor drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:55:29: error: opcode not allowed: i64.atomic.rmw.xor
+out/test/parse/expr/atomic-disabled.txt:59:29: error: opcode not allowed: i64.atomic.rmw.xor
i32.const 0 i64.const 0 i64.atomic.rmw.xor drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:56:29: error: opcode not allowed: i32.atomic.rmw8_u.xor
+out/test/parse/expr/atomic-disabled.txt:60:29: error: opcode not allowed: i32.atomic.rmw8_u.xor
i32.const 0 i32.const 0 i32.atomic.rmw8_u.xor drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:57:29: error: opcode not allowed: i32.atomic.rmw16_u.xor
+out/test/parse/expr/atomic-disabled.txt:61:29: error: opcode not allowed: i32.atomic.rmw16_u.xor
i32.const 0 i32.const 0 i32.atomic.rmw16_u.xor drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:58:29: error: opcode not allowed: i64.atomic.rmw8_u.xor
+out/test/parse/expr/atomic-disabled.txt:62:29: error: opcode not allowed: i64.atomic.rmw8_u.xor
i32.const 0 i64.const 0 i64.atomic.rmw8_u.xor drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:59:29: error: opcode not allowed: i64.atomic.rmw16_u.xor
+out/test/parse/expr/atomic-disabled.txt:63:29: error: opcode not allowed: i64.atomic.rmw16_u.xor
i32.const 0 i64.const 0 i64.atomic.rmw16_u.xor drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:60:29: error: opcode not allowed: i64.atomic.rmw32_u.xor
+out/test/parse/expr/atomic-disabled.txt:64:29: error: opcode not allowed: i64.atomic.rmw32_u.xor
i32.const 0 i64.const 0 i64.atomic.rmw32_u.xor drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:62:29: error: opcode not allowed: i32.atomic.rmw.xchg
+out/test/parse/expr/atomic-disabled.txt:66:29: error: opcode not allowed: i32.atomic.rmw.xchg
i32.const 0 i32.const 0 i32.atomic.rmw.xchg drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:63:29: error: opcode not allowed: i64.atomic.rmw.xchg
+out/test/parse/expr/atomic-disabled.txt:67:29: error: opcode not allowed: i64.atomic.rmw.xchg
i32.const 0 i64.const 0 i64.atomic.rmw.xchg drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:64:29: error: opcode not allowed: i32.atomic.rmw8_u.xchg
+out/test/parse/expr/atomic-disabled.txt:68:29: error: opcode not allowed: i32.atomic.rmw8_u.xchg
i32.const 0 i32.const 0 i32.atomic.rmw8_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:65:29: error: opcode not allowed: i32.atomic.rmw16_u.xchg
+out/test/parse/expr/atomic-disabled.txt:69:29: error: opcode not allowed: i32.atomic.rmw16_u.xchg
i32.const 0 i32.const 0 i32.atomic.rmw16_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:66:29: error: opcode not allowed: i64.atomic.rmw8_u.xchg
+out/test/parse/expr/atomic-disabled.txt:70:29: error: opcode not allowed: i64.atomic.rmw8_u.xchg
i32.const 0 i64.const 0 i64.atomic.rmw8_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:67:29: error: opcode not allowed: i64.atomic.rmw16_u.xchg
+out/test/parse/expr/atomic-disabled.txt:71:29: error: opcode not allowed: i64.atomic.rmw16_u.xchg
i32.const 0 i64.const 0 i64.atomic.rmw16_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:68:29: error: opcode not allowed: i64.atomic.rmw32_u.xchg
+out/test/parse/expr/atomic-disabled.txt:72:29: error: opcode not allowed: i64.atomic.rmw32_u.xchg
i32.const 0 i64.const 0 i64.atomic.rmw32_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:70:41: error: opcode not allowed: i32.atomic.rmw.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:74:41: error: opcode not allowed: i32.atomic.rmw.cmpxchg
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:71:41: error: opcode not allowed: i64.atomic.rmw.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:75:41: error: opcode not allowed: i64.atomic.rmw.cmpxchg
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:72:41: error: opcode not allowed: i32.atomic.rmw8_u.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:76:41: error: opcode not allowed: i32.atomic.rmw8_u.cmpxchg
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw8_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:73:41: error: opcode not allowed: i32.atomic.rmw16_u.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:77:41: error: opcode not allowed: i32.atomic.rmw16_u.cmpxchg
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw16_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:74:41: error: opcode not allowed: i64.atomic.rmw8_u.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:78:41: error: opcode not allowed: i64.atomic.rmw8_u.cmpxchg
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw8_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:75:41: error: opcode not allowed: i64.atomic.rmw16_u.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:79:41: error: opcode not allowed: i64.atomic.rmw16_u.cmpxchg
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw16_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/atomic-disabled.txt:76:41: error: opcode not allowed: i64.atomic.rmw32_u.cmpxchg
+out/test/parse/expr/atomic-disabled.txt:80:41: error: opcode not allowed: i64.atomic.rmw32_u.cmpxchg
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
;;; STDERR ;;)
diff --git a/test/parse/expr/atomic.txt b/test/parse/expr/atomic.txt
index 12ec3599..78bac9f4 100644
--- a/test/parse/expr/atomic.txt
+++ b/test/parse/expr/atomic.txt
@@ -2,6 +2,10 @@
(module
(memory (shared 1 1))
(func
+ i32.const 0 i32.const 0 wake drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+
i32.const 0 i32.atomic.load drop
i32.const 0 i64.atomic.load drop
i32.const 0 i32.atomic.load8_u drop
diff --git a/test/parse/expr/bad-atomic-unnatural-align.txt b/test/parse/expr/bad-atomic-unnatural-align.txt
index 4e63fea0..2a29dc65 100644
--- a/test/parse/expr/bad-atomic-unnatural-align.txt
+++ b/test/parse/expr/bad-atomic-unnatural-align.txt
@@ -3,6 +3,10 @@
(module
(memory (shared 1 1))
(func
+ i32.const 0 i32.const 0 wake align=8 drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait align=8 drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait align=16 drop
+
i32.const 0 i32.atomic.load align=8 drop
i32.const 0 i64.atomic.load align=16 drop
i32.const 0 i32.atomic.load8_u align=2 drop
@@ -78,187 +82,196 @@
))
(;; STDERR ;;;
-out/test/parse/expr/bad-atomic-unnatural-align.txt:6:17: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:6:29: error: alignment must be equal to natural alignment (4)
+ i32.const 0 i32.const 0 wake align=8 drop
+ ^^^^
+out/test/parse/expr/bad-atomic-unnatural-align.txt:7:41: error: alignment must be equal to natural alignment (4)
+ i32.const 0 i32.const 0 i64.const 0 i32.wait align=8 drop
+ ^^^^^^^^
+out/test/parse/expr/bad-atomic-unnatural-align.txt:8:41: error: alignment must be equal to natural alignment (8)
+ i32.const 0 i64.const 0 i64.const 0 i64.wait align=16 drop
+ ^^^^^^^^
+out/test/parse/expr/bad-atomic-unnatural-align.txt:10:17: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.atomic.load align=8 drop
^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:7:17: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:11:17: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.atomic.load align=16 drop
^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:8:17: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:12:17: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.atomic.load8_u align=2 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:9:17: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:13:17: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.atomic.load16_u align=4 drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:10:17: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:14:17: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.atomic.load8_u align=2 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:11:17: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:15:17: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.atomic.load16_u align=4 drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:12:17: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:16:17: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.atomic.load32_u align=8 drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:14:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:18:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.store align=8
^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:15:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:19:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.store align=16
^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:17:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:21:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.store16 align=4
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:19:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:23:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.store16 align=4
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:20:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:24:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.store32 align=8
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:22:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:26:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.rmw.add align=8 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:23:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:27:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.rmw.add align=16 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:24:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:28:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.atomic.rmw8_u.add align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:25:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:29:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.rmw16_u.add align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:26:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:30:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.atomic.rmw8_u.add align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:27:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:31:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.rmw16_u.add align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:28:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:32:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.rmw32_u.add align=8 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:30:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:34:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.rmw.sub align=8 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:31:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:35:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.rmw.sub align=16 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:32:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:36:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.atomic.rmw8_u.sub align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:33:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:37:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.rmw16_u.sub align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:34:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:38:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.atomic.rmw8_u.sub align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:35:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:39:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.rmw16_u.sub align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:36:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:40:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.rmw32_u.sub align=8 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:38:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:42:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.rmw.and align=8 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:39:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:43:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.rmw.and align=16 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:40:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:44:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.atomic.rmw8_u.and align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:41:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:45:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.rmw16_u.and align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:42:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:46:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.atomic.rmw8_u.and align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:43:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:47:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.rmw16_u.and align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:44:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:48:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.rmw32_u.and align=8 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:46:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:50:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.rmw.or align=8 drop
^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:47:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:51:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.rmw.or align=16 drop
^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:48:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:52:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.atomic.rmw8_u.or align=2 drop
^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:49:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:53:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.rmw16_u.or align=4 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:50:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:54:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.atomic.rmw8_u.or align=2 drop
^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:51:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:55:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.rmw16_u.or align=4 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:52:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:56:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.rmw32_u.or align=8 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:54:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:58:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.rmw.xor align=8 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:55:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:59:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.rmw.xor align=16 drop
^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:56:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:60:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.atomic.rmw8_u.xor align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:57:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:61:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.rmw16_u.xor align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:58:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:62:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.atomic.rmw8_u.xor align=2 drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:59:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:63:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.rmw16_u.xor align=4 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:60:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:64:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.rmw32_u.xor align=8 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:62:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:66:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.atomic.rmw.xchg align=8 drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:63:29: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:67:29: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.atomic.rmw.xchg align=16 drop
^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:64:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:68:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.atomic.rmw8_u.xchg align=2 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:65:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:69:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.atomic.rmw16_u.xchg align=4 drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:66:29: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:70:29: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.atomic.rmw8_u.xchg align=2 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:67:29: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:71:29: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.atomic.rmw16_u.xchg align=4 drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:68:29: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:72:29: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.atomic.rmw32_u.xchg align=8 drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:70:41: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:74:41: error: alignment must be equal to natural alignment (4)
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw.cmpxchg align=8 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:71:41: error: alignment must be equal to natural alignment (8)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:75:41: error: alignment must be equal to natural alignment (8)
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw.cmpxchg align=16 drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:72:41: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:76:41: error: alignment must be equal to natural alignment (1)
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw8_u.cmpxchg align=2 drop
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:73:41: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:77:41: error: alignment must be equal to natural alignment (2)
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw16_u.cmpxchg align=4 drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:74:41: error: alignment must be equal to natural alignment (1)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:78:41: error: alignment must be equal to natural alignment (1)
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw8_u.cmpxchg align=2 drop
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:75:41: error: alignment must be equal to natural alignment (2)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:79:41: error: alignment must be equal to natural alignment (2)
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw16_u.cmpxchg align=4 drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/parse/expr/bad-atomic-unnatural-align.txt:76:41: error: alignment must be equal to natural alignment (4)
+out/test/parse/expr/bad-atomic-unnatural-align.txt:80:41: error: alignment must be equal to natural alignment (4)
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg align=8 drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
;;; STDERR ;;)
diff --git a/test/roundtrip/fold-atomic.txt b/test/roundtrip/fold-atomic.txt
index 9997b980..9eefcfe2 100644
--- a/test/roundtrip/fold-atomic.txt
+++ b/test/roundtrip/fold-atomic.txt
@@ -4,6 +4,10 @@
(module
(memory (shared 1 1))
(func
+ i32.const 0 i32.const 0 wake drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+
i32.const 0 i32.atomic.load drop
i32.const 0 i64.atomic.load drop
i32.const 0 i32.atomic.load8_u drop
@@ -82,6 +86,20 @@
(type (;0;) (func))
(func (;0;) (type 0)
(drop
+ (wake
+ (i32.const 0)
+ (i32.const 0)))
+ (drop
+ (i32.wait
+ (i32.const 0)
+ (i32.const 0)
+ (i64.const 0)))
+ (drop
+ (i64.wait
+ (i32.const 0)
+ (i64.const 0)
+ (i64.const 0)))
+ (drop
(i32.atomic.load
(i32.const 0)))
(drop
diff --git a/test/typecheck/bad-atomic-no-shared-memory.txt b/test/typecheck/bad-atomic-no-shared-memory.txt
index 07e36c5c..17eb9670 100644
--- a/test/typecheck/bad-atomic-no-shared-memory.txt
+++ b/test/typecheck/bad-atomic-no-shared-memory.txt
@@ -4,6 +4,10 @@
(module
(memory 1)
(func
+ i32.const 0 i32.const 0 wake drop
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+
i32.const 0 i32.atomic.load drop
i32.const 0 i64.atomic.load drop
i32.const 0 i32.atomic.load8_u drop
@@ -78,193 +82,202 @@
))
(;; STDERR ;;;
-out/test/typecheck/bad-atomic-no-shared-memory.txt:7:17: error: i32.atomic.load requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:7:29: error: wake requires memory to be shared.
+ i32.const 0 i32.const 0 wake drop
+ ^^^^
+out/test/typecheck/bad-atomic-no-shared-memory.txt:8:41: error: i32.wait requires memory to be shared.
+ i32.const 0 i32.const 0 i64.const 0 i32.wait drop
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-no-shared-memory.txt:9:41: error: i64.wait requires memory to be shared.
+ i32.const 0 i64.const 0 i64.const 0 i64.wait drop
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-no-shared-memory.txt:11:17: error: i32.atomic.load requires memory to be shared.
i32.const 0 i32.atomic.load drop
^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:8:17: error: i64.atomic.load requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:12:17: error: i64.atomic.load requires memory to be shared.
i32.const 0 i64.atomic.load drop
^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:9:17: error: i32.atomic.load8_u requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:13:17: error: i32.atomic.load8_u requires memory to be shared.
i32.const 0 i32.atomic.load8_u drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:10:17: error: i32.atomic.load16_u requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:14:17: error: i32.atomic.load16_u requires memory to be shared.
i32.const 0 i32.atomic.load16_u drop
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:11:17: error: i64.atomic.load8_u requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:15:17: error: i64.atomic.load8_u requires memory to be shared.
i32.const 0 i64.atomic.load8_u drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:12:17: error: i64.atomic.load16_u requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:16:17: error: i64.atomic.load16_u requires memory to be shared.
i32.const 0 i64.atomic.load16_u drop
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:13:17: error: i64.atomic.load32_u requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:17:17: error: i64.atomic.load32_u requires memory to be shared.
i32.const 0 i64.atomic.load32_u drop
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:15:29: error: i32.atomic.store requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:19:29: error: i32.atomic.store requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.store
^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:16:29: error: i64.atomic.store requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:20:29: error: i64.atomic.store requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.store
^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:17:29: error: i32.atomic.store8 requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:21:29: error: i32.atomic.store8 requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.store8
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:18:29: error: i32.atomic.store16 requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:22:29: error: i32.atomic.store16 requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.store16
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:19:29: error: i64.atomic.store8 requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:23:29: error: i64.atomic.store8 requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.store8
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:20:29: error: i64.atomic.store16 requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:24:29: error: i64.atomic.store16 requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.store16
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:21:29: error: i64.atomic.store32 requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:25:29: error: i64.atomic.store32 requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.store32
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:23:29: error: i32.atomic.rmw.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:27:29: error: i32.atomic.rmw.add requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw.add drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:24:29: error: i64.atomic.rmw.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:28:29: error: i64.atomic.rmw.add requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw.add drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:25:29: error: i32.atomic.rmw8_u.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:29:29: error: i32.atomic.rmw8_u.add requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw8_u.add drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:26:29: error: i32.atomic.rmw16_u.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:30:29: error: i32.atomic.rmw16_u.add requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw16_u.add drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:27:29: error: i64.atomic.rmw8_u.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:31:29: error: i64.atomic.rmw8_u.add requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw8_u.add drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:28:29: error: i64.atomic.rmw16_u.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:32:29: error: i64.atomic.rmw16_u.add requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw16_u.add drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:29:29: error: i64.atomic.rmw32_u.add requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:33:29: error: i64.atomic.rmw32_u.add requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw32_u.add drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:31:29: error: i32.atomic.rmw.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:35:29: error: i32.atomic.rmw.sub requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw.sub drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:32:29: error: i64.atomic.rmw.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:36:29: error: i64.atomic.rmw.sub requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw.sub drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:33:29: error: i32.atomic.rmw8_u.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:37:29: error: i32.atomic.rmw8_u.sub requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw8_u.sub drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:34:29: error: i32.atomic.rmw16_u.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:38:29: error: i32.atomic.rmw16_u.sub requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw16_u.sub drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:35:29: error: i64.atomic.rmw8_u.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:39:29: error: i64.atomic.rmw8_u.sub requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw8_u.sub drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:36:29: error: i64.atomic.rmw16_u.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:40:29: error: i64.atomic.rmw16_u.sub requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw16_u.sub drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:37:29: error: i64.atomic.rmw32_u.sub requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:41:29: error: i64.atomic.rmw32_u.sub requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw32_u.sub drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:39:29: error: i32.atomic.rmw.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:43:29: error: i32.atomic.rmw.and requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw.and drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:40:29: error: i64.atomic.rmw.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:44:29: error: i64.atomic.rmw.and requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw.and drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:41:29: error: i32.atomic.rmw8_u.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:45:29: error: i32.atomic.rmw8_u.and requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw8_u.and drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:42:29: error: i32.atomic.rmw16_u.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:46:29: error: i32.atomic.rmw16_u.and requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw16_u.and drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:43:29: error: i64.atomic.rmw8_u.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:47:29: error: i64.atomic.rmw8_u.and requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw8_u.and drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:44:29: error: i64.atomic.rmw16_u.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:48:29: error: i64.atomic.rmw16_u.and requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw16_u.and drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:45:29: error: i64.atomic.rmw32_u.and requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:49:29: error: i64.atomic.rmw32_u.and requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw32_u.and drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:47:29: error: i32.atomic.rmw.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:51:29: error: i32.atomic.rmw.or requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw.or drop
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:48:29: error: i64.atomic.rmw.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:52:29: error: i64.atomic.rmw.or requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw.or drop
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:49:29: error: i32.atomic.rmw8_u.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:53:29: error: i32.atomic.rmw8_u.or requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw8_u.or drop
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:50:29: error: i32.atomic.rmw16_u.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:54:29: error: i32.atomic.rmw16_u.or requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw16_u.or drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:51:29: error: i64.atomic.rmw8_u.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:55:29: error: i64.atomic.rmw8_u.or requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw8_u.or drop
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:52:29: error: i64.atomic.rmw16_u.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:56:29: error: i64.atomic.rmw16_u.or requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw16_u.or drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:53:29: error: i64.atomic.rmw32_u.or requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:57:29: error: i64.atomic.rmw32_u.or requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw32_u.or drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:55:29: error: i32.atomic.rmw.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:59:29: error: i32.atomic.rmw.xor requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw.xor drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:56:29: error: i64.atomic.rmw.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:60:29: error: i64.atomic.rmw.xor requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw.xor drop
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:57:29: error: i32.atomic.rmw8_u.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:61:29: error: i32.atomic.rmw8_u.xor requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw8_u.xor drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:58:29: error: i32.atomic.rmw16_u.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:62:29: error: i32.atomic.rmw16_u.xor requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw16_u.xor drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:59:29: error: i64.atomic.rmw8_u.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:63:29: error: i64.atomic.rmw8_u.xor requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw8_u.xor drop
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:60:29: error: i64.atomic.rmw16_u.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:64:29: error: i64.atomic.rmw16_u.xor requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw16_u.xor drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:61:29: error: i64.atomic.rmw32_u.xor requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:65:29: error: i64.atomic.rmw32_u.xor requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw32_u.xor drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:63:29: error: i32.atomic.rmw.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:67:29: error: i32.atomic.rmw.xchg requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw.xchg drop
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:64:29: error: i64.atomic.rmw.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:68:29: error: i64.atomic.rmw.xchg requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw.xchg drop
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:65:29: error: i32.atomic.rmw8_u.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:69:29: error: i32.atomic.rmw8_u.xchg requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw8_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:66:29: error: i32.atomic.rmw16_u.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:70:29: error: i32.atomic.rmw16_u.xchg requires memory to be shared.
i32.const 0 i32.const 0 i32.atomic.rmw16_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:67:29: error: i64.atomic.rmw8_u.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:71:29: error: i64.atomic.rmw8_u.xchg requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw8_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:68:29: error: i64.atomic.rmw16_u.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:72:29: error: i64.atomic.rmw16_u.xchg requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw16_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:69:29: error: i64.atomic.rmw32_u.xchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:73:29: error: i64.atomic.rmw32_u.xchg requires memory to be shared.
i32.const 0 i64.const 0 i64.atomic.rmw32_u.xchg drop
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:71:41: error: i32.atomic.rmw.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:75:41: error: i32.atomic.rmw.cmpxchg requires memory to be shared.
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:72:41: error: i64.atomic.rmw.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:76:41: error: i64.atomic.rmw.cmpxchg requires memory to be shared.
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:73:41: error: i32.atomic.rmw8_u.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:77:41: error: i32.atomic.rmw8_u.cmpxchg requires memory to be shared.
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw8_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:74:41: error: i32.atomic.rmw16_u.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:78:41: error: i32.atomic.rmw16_u.cmpxchg requires memory to be shared.
i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw16_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:75:41: error: i64.atomic.rmw8_u.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:79:41: error: i64.atomic.rmw8_u.cmpxchg requires memory to be shared.
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw8_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:76:41: error: i64.atomic.rmw16_u.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:80:41: error: i64.atomic.rmw16_u.cmpxchg requires memory to be shared.
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw16_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-no-shared-memory.txt:77:41: error: i64.atomic.rmw32_u.cmpxchg requires memory to be shared.
+out/test/typecheck/bad-atomic-no-shared-memory.txt:81:41: error: i64.atomic.rmw32_u.cmpxchg requires memory to be shared.
i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg drop
^^^^^^^^^^^^^^^^^^^^^^^^^^
;;; STDERR ;;)
diff --git a/test/typecheck/bad-atomic-type-mismatch.txt b/test/typecheck/bad-atomic-type-mismatch.txt
index 5c5c585b..117cee6f 100644
--- a/test/typecheck/bad-atomic-type-mismatch.txt
+++ b/test/typecheck/bad-atomic-type-mismatch.txt
@@ -5,6 +5,9 @@
(memory (shared 1 1))
;; Mismatch address.
+ (func f32.const 0 i32.const 0 wake drop)
+ (func f32.const 0 i32.const 0 i64.const 0 i32.wait drop)
+ (func f32.const 0 i64.const 0 i64.const 0 i64.wait drop)
(func f32.const 0 i32.atomic.load drop)
(func f32.const 0 i64.atomic.load drop)
(func f32.const 0 i32.atomic.load8_u drop)
@@ -70,6 +73,9 @@
(func f32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg drop)
;; Mismatch first value operand.
+ (func i32.const 0 f32.const 0 wake drop)
+ (func i32.const 0 f32.const 0 i64.const 0 i32.wait drop)
+ (func i32.const 0 f64.const 0 i64.const 0 i64.wait drop)
(func i32.const 0 f32.const 0 i32.atomic.store)
(func i32.const 0 f64.const 0 i64.atomic.store)
(func i32.const 0 f32.const 0 i32.atomic.store8)
@@ -128,6 +134,8 @@
(func i32.const 0 f64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg drop)
;; Mismatch second value operand.
+ (func i32.const 0 i32.const 0 f64.const 0 i32.wait drop)
+ (func i32.const 0 i64.const 0 f64.const 0 i64.wait drop)
(func i32.const 0 i32.const 0 f32.const 0 i32.atomic.rmw.cmpxchg drop)
(func i32.const 0 i64.const 0 f64.const 0 i64.atomic.rmw.cmpxchg drop)
(func i32.const 0 i32.const 0 f32.const 0 i32.atomic.rmw8_u.cmpxchg drop)
@@ -137,6 +145,9 @@
(func i32.const 0 i64.const 0 f64.const 0 i64.atomic.rmw32_u.cmpxchg drop)
;; Mismatch result.
+ (func (result f32) i32.const 0 i32.const 0 wake)
+ (func (result f32) i32.const 0 i32.const 0 i64.const 0 i32.wait)
+ (func (result f32) i32.const 0 i64.const 0 i64.const 0 i64.wait)
(func (result f32) i32.const 0 i32.atomic.load)
(func (result f64) i32.const 0 i64.atomic.load)
(func (result f32) i32.const 0 i32.atomic.load8_u)
@@ -196,550 +207,583 @@
)
(;; STDERR ;;;
-out/test/typecheck/bad-atomic-type-mismatch.txt:8:21: error: type mismatch in i32.atomic.load, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:8:33: error: type mismatch in wake, expected i32 but got f32.
+ (func f32.const 0 i32.const 0 wake drop)
+ ^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:9:45: error: type mismatch in i32.wait, expected i32 but got f32.
+ (func f32.const 0 i32.const 0 i64.const 0 i32.wait drop)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:10:45: error: type mismatch in i64.wait, expected i32 but got f32.
+ (func f32.const 0 i64.const 0 i64.const 0 i64.wait drop)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:11:21: error: type mismatch in i32.atomic.load, expected i32 but got f32.
(func f32.const 0 i32.atomic.load drop)
^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:9:21: error: type mismatch in i64.atomic.load, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:12:21: error: type mismatch in i64.atomic.load, expected i32 but got f32.
(func f32.const 0 i64.atomic.load drop)
^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:10:21: error: type mismatch in i32.atomic.load8_u, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:13:21: error: type mismatch in i32.atomic.load8_u, expected i32 but got f32.
(func f32.const 0 i32.atomic.load8_u drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:11:21: error: type mismatch in i32.atomic.load16_u, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:14:21: error: type mismatch in i32.atomic.load16_u, expected i32 but got f32.
(func f32.const 0 i32.atomic.load16_u drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:12:21: error: type mismatch in i64.atomic.load8_u, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:15:21: error: type mismatch in i64.atomic.load8_u, expected i32 but got f32.
(func f32.const 0 i64.atomic.load8_u drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:13:21: error: type mismatch in i64.atomic.load16_u, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:16:21: error: type mismatch in i64.atomic.load16_u, expected i32 but got f32.
(func f32.const 0 i64.atomic.load16_u drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:14:21: error: type mismatch in i64.atomic.load32_u, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:17:21: error: type mismatch in i64.atomic.load32_u, expected i32 but got f32.
(func f32.const 0 i64.atomic.load32_u drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:15:33: error: type mismatch in i32.atomic.store, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:18:33: error: type mismatch in i32.atomic.store, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.store)
^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:16:33: error: type mismatch in i64.atomic.store, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:19:33: error: type mismatch in i64.atomic.store, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.store)
^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:17:33: error: type mismatch in i32.atomic.store8, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:20:33: error: type mismatch in i32.atomic.store8, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.store8)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:18:33: error: type mismatch in i32.atomic.store16, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:21:33: error: type mismatch in i32.atomic.store16, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.store16)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:19:33: error: type mismatch in i64.atomic.store8, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:22:33: error: type mismatch in i64.atomic.store8, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.store8)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:20:33: error: type mismatch in i64.atomic.store16, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:23:33: error: type mismatch in i64.atomic.store16, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.store16)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:21:33: error: type mismatch in i64.atomic.store32, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:24:33: error: type mismatch in i64.atomic.store32, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.store32)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:22:33: error: type mismatch in i32.atomic.rmw.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:25:33: error: type mismatch in i32.atomic.rmw.add, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw.add drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:23:33: error: type mismatch in i64.atomic.rmw.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:26:33: error: type mismatch in i64.atomic.rmw.add, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw.add drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:24:33: error: type mismatch in i32.atomic.rmw8_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:27:33: error: type mismatch in i32.atomic.rmw8_u.add, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw8_u.add drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:25:33: error: type mismatch in i32.atomic.rmw16_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:28:33: error: type mismatch in i32.atomic.rmw16_u.add, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw16_u.add drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:26:33: error: type mismatch in i64.atomic.rmw8_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:29:33: error: type mismatch in i64.atomic.rmw8_u.add, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw8_u.add drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:27:33: error: type mismatch in i64.atomic.rmw16_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:30:33: error: type mismatch in i64.atomic.rmw16_u.add, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw16_u.add drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:28:33: error: type mismatch in i64.atomic.rmw32_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:31:33: error: type mismatch in i64.atomic.rmw32_u.add, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw32_u.add drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:29:33: error: type mismatch in i32.atomic.rmw.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:32:33: error: type mismatch in i32.atomic.rmw.sub, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw.sub drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:30:33: error: type mismatch in i64.atomic.rmw.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:33:33: error: type mismatch in i64.atomic.rmw.sub, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw.sub drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:31:33: error: type mismatch in i32.atomic.rmw8_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:34:33: error: type mismatch in i32.atomic.rmw8_u.sub, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw8_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:32:33: error: type mismatch in i32.atomic.rmw16_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:35:33: error: type mismatch in i32.atomic.rmw16_u.sub, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw16_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:33:33: error: type mismatch in i64.atomic.rmw8_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:36:33: error: type mismatch in i64.atomic.rmw8_u.sub, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw8_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:34:33: error: type mismatch in i64.atomic.rmw16_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:37:33: error: type mismatch in i64.atomic.rmw16_u.sub, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw16_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:35:33: error: type mismatch in i64.atomic.rmw32_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:38:33: error: type mismatch in i64.atomic.rmw32_u.sub, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw32_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:36:33: error: type mismatch in i32.atomic.rmw.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:39:33: error: type mismatch in i32.atomic.rmw.and, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw.and drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:37:33: error: type mismatch in i64.atomic.rmw.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:40:33: error: type mismatch in i64.atomic.rmw.and, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw.and drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:38:33: error: type mismatch in i32.atomic.rmw8_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:41:33: error: type mismatch in i32.atomic.rmw8_u.and, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw8_u.and drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:39:33: error: type mismatch in i32.atomic.rmw16_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:42:33: error: type mismatch in i32.atomic.rmw16_u.and, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw16_u.and drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:40:33: error: type mismatch in i64.atomic.rmw8_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:43:33: error: type mismatch in i64.atomic.rmw8_u.and, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw8_u.and drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:41:33: error: type mismatch in i64.atomic.rmw16_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:44:33: error: type mismatch in i64.atomic.rmw16_u.and, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw16_u.and drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:42:33: error: type mismatch in i64.atomic.rmw32_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:45:33: error: type mismatch in i64.atomic.rmw32_u.and, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw32_u.and drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:43:33: error: type mismatch in i32.atomic.rmw.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:46:33: error: type mismatch in i32.atomic.rmw.or, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw.or drop)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:44:33: error: type mismatch in i64.atomic.rmw.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:47:33: error: type mismatch in i64.atomic.rmw.or, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw.or drop)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:45:33: error: type mismatch in i32.atomic.rmw8_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:48:33: error: type mismatch in i32.atomic.rmw8_u.or, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw8_u.or drop)
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:46:33: error: type mismatch in i32.atomic.rmw16_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:49:33: error: type mismatch in i32.atomic.rmw16_u.or, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw16_u.or drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:47:33: error: type mismatch in i64.atomic.rmw8_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:50:33: error: type mismatch in i64.atomic.rmw8_u.or, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw8_u.or drop)
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:48:33: error: type mismatch in i64.atomic.rmw16_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:51:33: error: type mismatch in i64.atomic.rmw16_u.or, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw16_u.or drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:49:33: error: type mismatch in i64.atomic.rmw32_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:52:33: error: type mismatch in i64.atomic.rmw32_u.or, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw32_u.or drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:50:33: error: type mismatch in i32.atomic.rmw.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:53:33: error: type mismatch in i32.atomic.rmw.xor, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw.xor drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:51:33: error: type mismatch in i64.atomic.rmw.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:54:33: error: type mismatch in i64.atomic.rmw.xor, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw.xor drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:52:33: error: type mismatch in i32.atomic.rmw8_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:55:33: error: type mismatch in i32.atomic.rmw8_u.xor, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw8_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:53:33: error: type mismatch in i32.atomic.rmw16_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:56:33: error: type mismatch in i32.atomic.rmw16_u.xor, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw16_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:54:33: error: type mismatch in i64.atomic.rmw8_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:57:33: error: type mismatch in i64.atomic.rmw8_u.xor, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw8_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:55:33: error: type mismatch in i64.atomic.rmw16_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:58:33: error: type mismatch in i64.atomic.rmw16_u.xor, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw16_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:56:33: error: type mismatch in i64.atomic.rmw32_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:59:33: error: type mismatch in i64.atomic.rmw32_u.xor, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw32_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:57:33: error: type mismatch in i32.atomic.rmw.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:60:33: error: type mismatch in i32.atomic.rmw.xchg, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw.xchg drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:58:33: error: type mismatch in i64.atomic.rmw.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:61:33: error: type mismatch in i64.atomic.rmw.xchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw.xchg drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:59:33: error: type mismatch in i32.atomic.rmw8_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:62:33: error: type mismatch in i32.atomic.rmw8_u.xchg, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw8_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:60:33: error: type mismatch in i32.atomic.rmw16_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:63:33: error: type mismatch in i32.atomic.rmw16_u.xchg, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.atomic.rmw16_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:61:33: error: type mismatch in i64.atomic.rmw8_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:64:33: error: type mismatch in i64.atomic.rmw8_u.xchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw8_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:62:33: error: type mismatch in i64.atomic.rmw16_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:65:33: error: type mismatch in i64.atomic.rmw16_u.xchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw16_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:63:33: error: type mismatch in i64.atomic.rmw32_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:66:33: error: type mismatch in i64.atomic.rmw32_u.xchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.atomic.rmw32_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:64:45: error: type mismatch in i32.atomic.rmw.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:67:45: error: type mismatch in i32.atomic.rmw.cmpxchg, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:65:45: error: type mismatch in i64.atomic.rmw.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:68:45: error: type mismatch in i64.atomic.rmw.cmpxchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:66:45: error: type mismatch in i32.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:69:45: error: type mismatch in i32.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw8_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:67:45: error: type mismatch in i32.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:70:45: error: type mismatch in i32.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
(func f32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw16_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:68:45: error: type mismatch in i64.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:71:45: error: type mismatch in i64.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw8_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:69:45: error: type mismatch in i64.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:72:45: error: type mismatch in i64.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw16_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:70:45: error: type mismatch in i64.atomic.rmw32_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:73:45: error: type mismatch in i64.atomic.rmw32_u.cmpxchg, expected i32 but got f32.
(func f32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:73:33: error: type mismatch in i32.atomic.store, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:76:33: error: type mismatch in wake, expected i32 but got f32.
+ (func i32.const 0 f32.const 0 wake drop)
+ ^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:77:45: error: type mismatch in i32.wait, expected i32 but got f32.
+ (func i32.const 0 f32.const 0 i64.const 0 i32.wait drop)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:78:45: error: type mismatch in i64.wait, expected i64 but got f64.
+ (func i32.const 0 f64.const 0 i64.const 0 i64.wait drop)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:79:33: error: type mismatch in i32.atomic.store, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.store)
^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:74:33: error: type mismatch in i64.atomic.store, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:80:33: error: type mismatch in i64.atomic.store, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.store)
^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:75:33: error: type mismatch in i32.atomic.store8, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:81:33: error: type mismatch in i32.atomic.store8, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.store8)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:76:33: error: type mismatch in i32.atomic.store16, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:82:33: error: type mismatch in i32.atomic.store16, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.store16)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:77:33: error: type mismatch in i64.atomic.store8, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:83:33: error: type mismatch in i64.atomic.store8, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.store8)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:78:33: error: type mismatch in i64.atomic.store16, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:84:33: error: type mismatch in i64.atomic.store16, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.store16)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:79:33: error: type mismatch in i64.atomic.store32, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:85:33: error: type mismatch in i64.atomic.store32, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.store32)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:80:33: error: type mismatch in i32.atomic.rmw.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:86:33: error: type mismatch in i32.atomic.rmw.add, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw.add drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:81:33: error: type mismatch in i64.atomic.rmw.add, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:87:33: error: type mismatch in i64.atomic.rmw.add, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw.add drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:82:33: error: type mismatch in i32.atomic.rmw8_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:88:33: error: type mismatch in i32.atomic.rmw8_u.add, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw8_u.add drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:83:33: error: type mismatch in i32.atomic.rmw16_u.add, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:89:33: error: type mismatch in i32.atomic.rmw16_u.add, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw16_u.add drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:84:33: error: type mismatch in i64.atomic.rmw8_u.add, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:90:33: error: type mismatch in i64.atomic.rmw8_u.add, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw8_u.add drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:85:33: error: type mismatch in i64.atomic.rmw16_u.add, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:91:33: error: type mismatch in i64.atomic.rmw16_u.add, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw16_u.add drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:86:33: error: type mismatch in i64.atomic.rmw32_u.add, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:92:33: error: type mismatch in i64.atomic.rmw32_u.add, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw32_u.add drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:87:33: error: type mismatch in i32.atomic.rmw.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:93:33: error: type mismatch in i32.atomic.rmw.sub, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw.sub drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:88:33: error: type mismatch in i64.atomic.rmw.sub, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:94:33: error: type mismatch in i64.atomic.rmw.sub, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw.sub drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:89:33: error: type mismatch in i32.atomic.rmw8_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:95:33: error: type mismatch in i32.atomic.rmw8_u.sub, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw8_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:90:33: error: type mismatch in i32.atomic.rmw16_u.sub, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:96:33: error: type mismatch in i32.atomic.rmw16_u.sub, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw16_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:91:33: error: type mismatch in i64.atomic.rmw8_u.sub, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:97:33: error: type mismatch in i64.atomic.rmw8_u.sub, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw8_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:92:33: error: type mismatch in i64.atomic.rmw16_u.sub, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:98:33: error: type mismatch in i64.atomic.rmw16_u.sub, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw16_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:93:33: error: type mismatch in i64.atomic.rmw32_u.sub, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:99:33: error: type mismatch in i64.atomic.rmw32_u.sub, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw32_u.sub drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:94:33: error: type mismatch in i32.atomic.rmw.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:100:33: error: type mismatch in i32.atomic.rmw.and, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw.and drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:95:33: error: type mismatch in i64.atomic.rmw.and, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:101:33: error: type mismatch in i64.atomic.rmw.and, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw.and drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:96:33: error: type mismatch in i32.atomic.rmw8_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:102:33: error: type mismatch in i32.atomic.rmw8_u.and, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw8_u.and drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:97:33: error: type mismatch in i32.atomic.rmw16_u.and, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:103:33: error: type mismatch in i32.atomic.rmw16_u.and, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw16_u.and drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:98:33: error: type mismatch in i64.atomic.rmw8_u.and, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:104:33: error: type mismatch in i64.atomic.rmw8_u.and, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw8_u.and drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:99:33: error: type mismatch in i64.atomic.rmw16_u.and, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:105:33: error: type mismatch in i64.atomic.rmw16_u.and, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw16_u.and drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:100:33: error: type mismatch in i64.atomic.rmw32_u.and, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:106:33: error: type mismatch in i64.atomic.rmw32_u.and, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw32_u.and drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:101:33: error: type mismatch in i32.atomic.rmw.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:107:33: error: type mismatch in i32.atomic.rmw.or, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw.or drop)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:102:33: error: type mismatch in i64.atomic.rmw.or, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:108:33: error: type mismatch in i64.atomic.rmw.or, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw.or drop)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:103:33: error: type mismatch in i32.atomic.rmw8_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:109:33: error: type mismatch in i32.atomic.rmw8_u.or, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw8_u.or drop)
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:104:33: error: type mismatch in i32.atomic.rmw16_u.or, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:110:33: error: type mismatch in i32.atomic.rmw16_u.or, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw16_u.or drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:105:33: error: type mismatch in i64.atomic.rmw8_u.or, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:111:33: error: type mismatch in i64.atomic.rmw8_u.or, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw8_u.or drop)
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:106:33: error: type mismatch in i64.atomic.rmw16_u.or, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:112:33: error: type mismatch in i64.atomic.rmw16_u.or, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw16_u.or drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:107:33: error: type mismatch in i64.atomic.rmw32_u.or, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:113:33: error: type mismatch in i64.atomic.rmw32_u.or, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw32_u.or drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:108:33: error: type mismatch in i32.atomic.rmw.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:114:33: error: type mismatch in i32.atomic.rmw.xor, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw.xor drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:109:33: error: type mismatch in i64.atomic.rmw.xor, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:115:33: error: type mismatch in i64.atomic.rmw.xor, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw.xor drop)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:110:33: error: type mismatch in i32.atomic.rmw8_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:116:33: error: type mismatch in i32.atomic.rmw8_u.xor, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw8_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:111:33: error: type mismatch in i32.atomic.rmw16_u.xor, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:117:33: error: type mismatch in i32.atomic.rmw16_u.xor, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw16_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:112:33: error: type mismatch in i64.atomic.rmw8_u.xor, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:118:33: error: type mismatch in i64.atomic.rmw8_u.xor, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw8_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:113:33: error: type mismatch in i64.atomic.rmw16_u.xor, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:119:33: error: type mismatch in i64.atomic.rmw16_u.xor, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw16_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:114:33: error: type mismatch in i64.atomic.rmw32_u.xor, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:120:33: error: type mismatch in i64.atomic.rmw32_u.xor, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw32_u.xor drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:115:33: error: type mismatch in i32.atomic.rmw.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:121:33: error: type mismatch in i32.atomic.rmw.xchg, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw.xchg drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:116:33: error: type mismatch in i64.atomic.rmw.xchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:122:33: error: type mismatch in i64.atomic.rmw.xchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw.xchg drop)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:117:33: error: type mismatch in i32.atomic.rmw8_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:123:33: error: type mismatch in i32.atomic.rmw8_u.xchg, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw8_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:118:33: error: type mismatch in i32.atomic.rmw16_u.xchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:124:33: error: type mismatch in i32.atomic.rmw16_u.xchg, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.atomic.rmw16_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:119:33: error: type mismatch in i64.atomic.rmw8_u.xchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:125:33: error: type mismatch in i64.atomic.rmw8_u.xchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw8_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:120:33: error: type mismatch in i64.atomic.rmw16_u.xchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:126:33: error: type mismatch in i64.atomic.rmw16_u.xchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw16_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:121:33: error: type mismatch in i64.atomic.rmw32_u.xchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:127:33: error: type mismatch in i64.atomic.rmw32_u.xchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.atomic.rmw32_u.xchg drop)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:122:45: error: type mismatch in i32.atomic.rmw.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:128:45: error: type mismatch in i32.atomic.rmw.cmpxchg, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.const 0 i32.atomic.rmw.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:123:45: error: type mismatch in i64.atomic.rmw.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:129:45: error: type mismatch in i64.atomic.rmw.cmpxchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.const 0 i64.atomic.rmw.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:124:45: error: type mismatch in i32.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:130:45: error: type mismatch in i32.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.const 0 i32.atomic.rmw8_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:125:45: error: type mismatch in i32.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:131:45: error: type mismatch in i32.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
(func i32.const 0 f32.const 0 i32.const 0 i32.atomic.rmw16_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:126:45: error: type mismatch in i64.atomic.rmw8_u.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:132:45: error: type mismatch in i64.atomic.rmw8_u.cmpxchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.const 0 i64.atomic.rmw8_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:127:45: error: type mismatch in i64.atomic.rmw16_u.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:133:45: error: type mismatch in i64.atomic.rmw16_u.cmpxchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.const 0 i64.atomic.rmw16_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:128:45: error: type mismatch in i64.atomic.rmw32_u.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:134:45: error: type mismatch in i64.atomic.rmw32_u.cmpxchg, expected i64 but got f64.
(func i32.const 0 f64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:131:45: error: type mismatch in i32.atomic.rmw.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:137:45: error: type mismatch in i32.wait, expected i64 but got f64.
+ (func i32.const 0 i32.const 0 f64.const 0 i32.wait drop)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:138:45: error: type mismatch in i64.wait, expected i64 but got f64.
+ (func i32.const 0 i64.const 0 f64.const 0 i64.wait drop)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:139:45: error: type mismatch in i32.atomic.rmw.cmpxchg, expected i32 but got f32.
(func i32.const 0 i32.const 0 f32.const 0 i32.atomic.rmw.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:132:45: error: type mismatch in i64.atomic.rmw.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:140:45: error: type mismatch in i64.atomic.rmw.cmpxchg, expected i64 but got f64.
(func i32.const 0 i64.const 0 f64.const 0 i64.atomic.rmw.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:133:45: error: type mismatch in i32.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:141:45: error: type mismatch in i32.atomic.rmw8_u.cmpxchg, expected i32 but got f32.
(func i32.const 0 i32.const 0 f32.const 0 i32.atomic.rmw8_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:134:45: error: type mismatch in i32.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:142:45: error: type mismatch in i32.atomic.rmw16_u.cmpxchg, expected i32 but got f32.
(func i32.const 0 i32.const 0 f32.const 0 i32.atomic.rmw16_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:135:45: error: type mismatch in i64.atomic.rmw8_u.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:143:45: error: type mismatch in i64.atomic.rmw8_u.cmpxchg, expected i64 but got f64.
(func i32.const 0 i64.const 0 f64.const 0 i64.atomic.rmw8_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:136:45: error: type mismatch in i64.atomic.rmw16_u.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:144:45: error: type mismatch in i64.atomic.rmw16_u.cmpxchg, expected i64 but got f64.
(func i32.const 0 i64.const 0 f64.const 0 i64.atomic.rmw16_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:137:45: error: type mismatch in i64.atomic.rmw32_u.cmpxchg, expected i64 but got f64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:145:45: error: type mismatch in i64.atomic.rmw32_u.cmpxchg, expected i64 but got f64.
(func i32.const 0 i64.const 0 f64.const 0 i64.atomic.rmw32_u.cmpxchg drop)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:140:34: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:148:46: error: type mismatch in implicit return, expected f32 but got i32.
+ (func (result f32) i32.const 0 i32.const 0 wake)
+ ^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:149:58: error: type mismatch in implicit return, expected f32 but got i32.
+ (func (result f32) i32.const 0 i32.const 0 i64.const 0 i32.wait)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:150:58: error: type mismatch in implicit return, expected f32 but got i32.
+ (func (result f32) i32.const 0 i64.const 0 i64.const 0 i64.wait)
+ ^^^^^^^^
+out/test/typecheck/bad-atomic-type-mismatch.txt:151:34: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.atomic.load)
^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:141:34: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:152:34: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.atomic.load)
^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:142:34: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:153:34: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.atomic.load8_u)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:143:34: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:154:34: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.atomic.load16_u)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:144:34: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:155:34: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.atomic.load8_u)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:145:34: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:156:34: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.atomic.load16_u)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:146:34: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:157:34: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.atomic.load32_u)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:147:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:158:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw.add)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:148:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:159:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw.add)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:149:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:160:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw8_u.add)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:150:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:161:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw16_u.add)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:151:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:162:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw8_u.add)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:152:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:163:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw16_u.add)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:153:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:164:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw32_u.add)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:154:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:165:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw.sub)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:155:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:166:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw.sub)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:156:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:167:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw8_u.sub)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:157:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:168:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw16_u.sub)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:158:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:169:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw8_u.sub)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:159:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:170:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw16_u.sub)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:160:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:171:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw32_u.sub)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:161:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:172:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw.and)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:162:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:173:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw.and)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:163:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:174:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw8_u.and)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:164:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:175:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw16_u.and)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:165:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:176:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw8_u.and)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:166:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:177:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw16_u.and)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:167:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:178:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw32_u.and)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:168:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:179:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw.or)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:169:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:180:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw.or)
^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:170:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:181:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw8_u.or)
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:171:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:182:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw16_u.or)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:172:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:183:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw8_u.or)
^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:173:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:184:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw16_u.or)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:174:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:185:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw32_u.or)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:175:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:186:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw.xor)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:176:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:187:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw.xor)
^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:177:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:188:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw8_u.xor)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:178:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:189:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw16_u.xor)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:179:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:190:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw8_u.xor)
^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:180:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:191:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw16_u.xor)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:181:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:192:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw32_u.xor)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:182:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:193:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw.xchg)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:183:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:194:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw.xchg)
^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:184:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:195:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw8_u.xchg)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:185:46: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:196:46: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.atomic.rmw16_u.xchg)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:186:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:197:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw8_u.xchg)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:187:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:198:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw16_u.xchg)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:188:46: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:199:46: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.atomic.rmw32_u.xchg)
^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:189:58: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:200:58: error: type mismatch in implicit return, expected f32 but got i32.
(func (result f32) i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:190:58: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:201:58: error: type mismatch in implicit return, expected f64 but got i64.
(func (result f64) i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:191:58: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:202:58: error: type mismatch in implicit return, expected f32 but got i32.
...c (result f32) i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw8_u.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:192:58: error: type mismatch in implicit return, expected f32 but got i32.
+out/test/typecheck/bad-atomic-type-mismatch.txt:203:58: error: type mismatch in implicit return, expected f32 but got i32.
... (result f32) i32.const 0 i32.const 0 i32.const 0 i32.atomic.rmw16_u.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:193:58: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:204:58: error: type mismatch in implicit return, expected f64 but got i64.
...c (result f64) i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw8_u.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:194:58: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:205:58: error: type mismatch in implicit return, expected f64 but got i64.
... (result f64) i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw16_u.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^^^^^
-out/test/typecheck/bad-atomic-type-mismatch.txt:195:58: error: type mismatch in implicit return, expected f64 but got i64.
+out/test/typecheck/bad-atomic-type-mismatch.txt:206:58: error: type mismatch in implicit return, expected f64 but got i64.
... (result f64) i32.const 0 i64.const 0 i64.const 0 i64.atomic.rmw32_u.cmpxchg)
^^^^^^^^^^^^^^^^^^^^^^^^^^
;;; STDERR ;;)