summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/binary-reader-interp.cc13
-rw-r--r--src/binary-reader-ir.cc14
-rw-r--r--src/binary-reader-logging.cc15
-rw-r--r--src/binary-reader-logging.h3
-rw-r--r--src/binary-reader-nop.h5
-rw-r--r--src/binary-reader-objdump.cc7
-rw-r--r--src/binary-reader.cc25
-rw-r--r--src/binary-reader.h3
-rw-r--r--src/binary-writer.cc4
-rw-r--r--src/common.h7
-rw-r--r--src/interp.cc17
-rw-r--r--src/ir.cc5
-rw-r--r--src/ir.h7
-rw-r--r--src/opcode.cc3
-rw-r--r--src/opcode.def4
-rw-r--r--src/opcode.h3
-rw-r--r--src/prebuilt/wast-lexer-gen.cc6647
-rw-r--r--src/stream.h6
-rw-r--r--src/wast-lexer.cc3
-rw-r--r--src/wast-parser.cc85
-rw-r--r--src/wast-parser.h2
-rw-r--r--src/wat-writer.cc8
-rw-r--r--test/parse/expr/bad-const-type-i32-in-non-simd-const.txt19
-rw-r--r--test/parse/expr/bad-const-v128-nat-expected.txt14
-rw-r--r--test/parse/expr/bad-const-v128-nat-overflow.txt9
-rw-r--r--test/parse/expr/bad-const-v128-type-i32-expected.txt12
-rw-r--r--test/parse/expr/const.txt5
-rw-r--r--test/parse/func/bad-local-binding-no-type.txt2
-rw-r--r--test/parse/func/bad-local-binding.txt2
-rw-r--r--test/parse/func/bad-param-binding.txt2
30 files changed, 3647 insertions, 3304 deletions
diff --git a/src/binary-reader-interp.cc b/src/binary-reader-interp.cc
index cfe2b041..ce6ecfb0 100644
--- a/src/binary-reader-interp.cc
+++ b/src/binary-reader-interp.cc
@@ -171,6 +171,7 @@ class BinaryReaderInterp : public BinaryReaderNop {
wabt::Result OnEndExpr() override;
wabt::Result OnF32ConstExpr(uint32_t value_bits) override;
wabt::Result OnF64ConstExpr(uint64_t value_bits) override;
+ wabt::Result OnV128ConstExpr(v128 value_bits) override;
wabt::Result OnGetGlobalExpr(Index global_index) override;
wabt::Result OnGetLocalExpr(Index local_index) override;
wabt::Result OnGrowMemoryExpr() override;
@@ -204,6 +205,7 @@ class BinaryReaderInterp : public BinaryReaderNop {
wabt::Result OnInitExprF32ConstExpr(Index index, uint32_t value) override;
wabt::Result OnInitExprF64ConstExpr(Index index, uint64_t value) override;
+ wabt::Result OnInitExprV128ConstExpr(Index index, v128 value) override;
wabt::Result OnInitExprGetGlobalExpr(Index index,
Index global_index) override;
wabt::Result OnInitExprI32ConstExpr(Index index, uint32_t value) override;
@@ -902,6 +904,12 @@ wabt::Result BinaryReaderInterp::OnInitExprF64ConstExpr(Index index,
return wabt::Result::Ok;
}
+wabt::Result BinaryReaderInterp::OnInitExprV128ConstExpr(Index index,
+ v128 value_bits) {
+ /*TODO (zhengxing)*/
+ WABT_FATAL("BinaryReaderInterp::OnInitExprV128ConstExpr() function not implemented");
+}
+
wabt::Result BinaryReaderInterp::OnInitExprGetGlobalExpr(Index index,
Index global_index) {
if (global_index >= num_global_imports_) {
@@ -1364,6 +1372,11 @@ wabt::Result BinaryReaderInterp::OnF64ConstExpr(uint64_t value_bits) {
return wabt::Result::Ok;
}
+wabt::Result BinaryReaderInterp::OnV128ConstExpr(v128 value_bits) {
+ /*TODO (zhengxing)*/
+ WABT_FATAL("BinaryReaderInterp::OnV128ConstExpr() function not implemented");
+}
+
wabt::Result BinaryReaderInterp::OnGetGlobalExpr(Index global_index) {
CHECK_RESULT(CheckGlobal(global_index));
Type type = GetGlobalTypeByModuleIndex(global_index);
diff --git a/src/binary-reader-ir.cc b/src/binary-reader-ir.cc
index 63af3f0d..bd48f51d 100644
--- a/src/binary-reader-ir.cc
+++ b/src/binary-reader-ir.cc
@@ -152,6 +152,7 @@ class BinaryReaderIR : public BinaryReaderNop {
Result OnEndExpr() override;
Result OnF32ConstExpr(uint32_t value_bits) override;
Result OnF64ConstExpr(uint64_t value_bits) override;
+ Result OnV128ConstExpr(v128 value_bits) override;
Result OnGetGlobalExpr(Index global_index) override;
Result OnGetLocalExpr(Index local_index) override;
Result OnGrowMemoryExpr() override;
@@ -209,6 +210,7 @@ class BinaryReaderIR : public BinaryReaderNop {
Result OnInitExprF32ConstExpr(Index index, uint32_t value) override;
Result OnInitExprF64ConstExpr(Index index, uint64_t value) override;
+ Result OnInitExprV128ConstExpr(Index index, v128 value) override;
Result OnInitExprGetGlobalExpr(Index index, Index global_index) override;
Result OnInitExprI32ConstExpr(Index index, uint32_t value) override;
Result OnInitExprI64ConstExpr(Index index, uint64_t value) override;
@@ -662,6 +664,11 @@ Result BinaryReaderIR::OnF64ConstExpr(uint64_t value_bits) {
MakeUnique<ConstExpr>(Const::F64(value_bits, GetLocation())));
}
+Result BinaryReaderIR::OnV128ConstExpr(v128 value_bits) {
+ return AppendExpr(
+ MakeUnique<ConstExpr>(Const::V128(value_bits, GetLocation())));
+}
+
Result BinaryReaderIR::OnGetGlobalExpr(Index global_index) {
return AppendExpr(
MakeUnique<GetGlobalExpr>(Var(global_index, GetLocation())));
@@ -928,6 +935,13 @@ Result BinaryReaderIR::OnInitExprF64ConstExpr(Index index, uint64_t value) {
return Result::Ok;
}
+Result BinaryReaderIR::OnInitExprV128ConstExpr(Index index, v128 value) {
+ Location loc = GetLocation();
+ current_init_expr_->push_back(
+ MakeUnique<ConstExpr>(Const::V128(value, loc), loc));
+ return Result::Ok;
+}
+
Result BinaryReaderIR::OnInitExprGetGlobalExpr(Index index,
Index global_index) {
Location loc = GetLocation();
diff --git a/src/binary-reader-logging.cc b/src/binary-reader-logging.cc
index 236a62cf..1d0d55a6 100644
--- a/src/binary-reader-logging.cc
+++ b/src/binary-reader-logging.cc
@@ -307,6 +307,11 @@ Result BinaryReaderLogging::OnF64ConstExpr(uint64_t value_bits) {
return reader_->OnF64ConstExpr(value_bits);
}
+Result BinaryReaderLogging::OnV128ConstExpr(v128 value_bits) {
+ /*TODO (zhengxing)*/
+ return reader_->OnV128ConstExpr(value_bits);
+}
+
Result BinaryReaderLogging::OnI32ConstExpr(uint32_t value) {
LOGF("OnI32ConstExpr(%u (0x%x))\n", value, value);
return reader_->OnI32ConstExpr(value);
@@ -398,6 +403,12 @@ Result BinaryReaderLogging::OnInitExprF64ConstExpr(Index index,
return reader_->OnInitExprF64ConstExpr(index, value_bits);
}
+Result BinaryReaderLogging::OnInitExprV128ConstExpr(Index index,
+ v128 value_bits) {
+ /*TODO (zhengxing)*/
+ return reader_->OnInitExprV128ConstExpr(index, value_bits);
+}
+
Result BinaryReaderLogging::OnInitExprI32ConstExpr(Index index,
uint32_t value) {
LOGF("OnInitExprI32ConstExpr(index: %" PRIindex ", value: %u)\n", index,
@@ -658,6 +669,10 @@ Result BinaryReaderLogging::OnOpcodeF64(uint64_t value) {
return reader_->OnOpcodeF64(value);
}
+Result BinaryReaderLogging::OnOpcodeV128(v128 value) {
+ return reader_->OnOpcodeV128(value);
+}
+
Result BinaryReaderLogging::OnOpcodeBlockSig(Index num_types, Type* sig_types) {
return reader_->OnOpcodeBlockSig(num_types, sig_types);
}
diff --git a/src/binary-reader-logging.h b/src/binary-reader-logging.h
index 9f8ccf89..841ca031 100644
--- a/src/binary-reader-logging.h
+++ b/src/binary-reader-logging.h
@@ -132,6 +132,7 @@ class BinaryReaderLogging : public BinaryReaderDelegate {
Result OnOpcodeUint64(uint64_t value) override;
Result OnOpcodeF32(uint32_t value) override;
Result OnOpcodeF64(uint64_t value) override;
+ Result OnOpcodeV128(v128 value) override;
Result OnOpcodeBlockSig(Index num_types, Type* sig_types) override;
Result OnAtomicLoadExpr(Opcode opcode,
uint32_t alignment_log2,
@@ -165,6 +166,7 @@ class BinaryReaderLogging : public BinaryReaderDelegate {
Result OnEndFunc() override;
Result OnF32ConstExpr(uint32_t value_bits) override;
Result OnF64ConstExpr(uint64_t value_bits) override;
+ Result OnV128ConstExpr(v128 value_bits) override;
Result OnGetGlobalExpr(Index global_index) override;
Result OnGetLocalExpr(Index local_index) override;
Result OnGrowMemoryExpr() override;
@@ -269,6 +271,7 @@ class BinaryReaderLogging : public BinaryReaderDelegate {
Result OnInitExprF32ConstExpr(Index index, uint32_t value) override;
Result OnInitExprF64ConstExpr(Index index, uint64_t value) override;
+ Result OnInitExprV128ConstExpr(Index index, v128 value) override;
Result OnInitExprGetGlobalExpr(Index index,
Index global_index) override;
Result OnInitExprI32ConstExpr(Index index, uint32_t value) override;
diff --git a/src/binary-reader-nop.h b/src/binary-reader-nop.h
index 0d29269f..1ca13955 100644
--- a/src/binary-reader-nop.h
+++ b/src/binary-reader-nop.h
@@ -172,6 +172,7 @@ class BinaryReaderNop : public BinaryReaderDelegate {
Result OnOpcodeUint64(uint64_t value) override { return Result::Ok; }
Result OnOpcodeF32(uint32_t value) override { return Result::Ok; }
Result OnOpcodeF64(uint64_t value) override { return Result::Ok; }
+ Result OnOpcodeV128(v128 value) override { return Result::Ok; }
Result OnOpcodeBlockSig(Index num_types, Type* sig_types) override {
return Result::Ok;
}
@@ -225,6 +226,7 @@ class BinaryReaderNop : public BinaryReaderDelegate {
Result OnEndFunc() override { return Result::Ok; }
Result OnF32ConstExpr(uint32_t value_bits) override { return Result::Ok; }
Result OnF64ConstExpr(uint64_t value_bits) override { return Result::Ok; }
+ Result OnV128ConstExpr(v128 value_bits) override { return Result::Ok; }
Result OnGetGlobalExpr(Index global_index) override { return Result::Ok; }
Result OnGetLocalExpr(Index local_index) override { return Result::Ok; }
Result OnGrowMemoryExpr() override { return Result::Ok; }
@@ -379,6 +381,9 @@ class BinaryReaderNop : public BinaryReaderDelegate {
Result OnInitExprF64ConstExpr(Index index, uint64_t value) override {
return Result::Ok;
}
+ Result OnInitExprV128ConstExpr(Index index, v128 value) override {
+ return Result::Ok;
+ }
Result OnInitExprGetGlobalExpr(Index index, Index global_index) override {
return Result::Ok;
}
diff --git a/src/binary-reader-objdump.cc b/src/binary-reader-objdump.cc
index cf3bdc91..19e9f56d 100644
--- a/src/binary-reader-objdump.cc
+++ b/src/binary-reader-objdump.cc
@@ -536,6 +536,7 @@ class BinaryReaderObjdump : public BinaryReaderObjdumpBase {
Result OnInitExprF32ConstExpr(Index index, uint32_t value) override;
Result OnInitExprF64ConstExpr(Index index, uint64_t value) override;
+ Result OnInitExprV128ConstExpr(Index index, v128 value) override;
Result OnInitExprGetGlobalExpr(Index index, Index global_index) override;
Result OnInitExprI32ConstExpr(Index index, uint32_t value) override;
Result OnInitExprI64ConstExpr(Index index, uint64_t value) override;
@@ -949,6 +950,12 @@ Result BinaryReaderObjdump::OnInitExprF64ConstExpr(Index index,
return Result::Ok;
}
+Result BinaryReaderObjdump::OnInitExprV128ConstExpr(Index index,
+ v128 value) {
+ /*TODO (zhengxing)*/
+ return Result::Ok;
+}
+
Result BinaryReaderObjdump::OnInitExprGetGlobalExpr(Index index,
Index global_index) {
InitExpr expr;
diff --git a/src/binary-reader.cc b/src/binary-reader.cc
index f2250e64..f6d5d8b4 100644
--- a/src/binary-reader.cc
+++ b/src/binary-reader.cc
@@ -83,6 +83,7 @@ class BinaryReader {
Result ReadU32(uint32_t* out_value, const char* desc) WABT_WARN_UNUSED;
Result ReadF32(uint32_t* out_value, const char* desc) WABT_WARN_UNUSED;
Result ReadF64(uint64_t* out_value, const char* desc) WABT_WARN_UNUSED;
+ Result ReadV128(v128* out_value, const char* desc) WABT_WARN_UNUSED;
Result ReadU32Leb128(uint32_t* out_value, const char* desc) WABT_WARN_UNUSED;
Result ReadS32Leb128(uint32_t* out_value, const char* desc) WABT_WARN_UNUSED;
Result ReadS64Leb128(uint64_t* out_value, const char* desc) WABT_WARN_UNUSED;
@@ -234,6 +235,10 @@ Result BinaryReader::ReadF64(uint64_t* out_value, const char* desc) {
return ReadT(out_value, "double", desc);
}
+Result BinaryReader::ReadV128(v128* out_value, const char* desc) {
+ return ReadT(out_value, "v128", desc);
+}
+
Result BinaryReader::ReadU32Leb128(uint32_t* out_value, const char* desc) {
const uint8_t* p = state_.data + state_.offset;
const uint8_t* end = state_.data + read_end_;
@@ -327,6 +332,7 @@ static bool is_concrete_type(Type type) {
case Type::I64:
case Type::F32:
case Type::F64:
+ case Type::V128:
return true;
default:
@@ -391,6 +397,15 @@ Result BinaryReader::ReadInitExpr(Index index, bool require_i32) {
break;
}
+ case Opcode::V128Const: {
+ ERROR_UNLESS_OPCODE_ENABLED(opcode);
+ v128 value_bits;
+ ZeroMemory(value_bits);
+ CHECK_RESULT(ReadV128(&value_bits, "init_expr v128.const value"));
+ CALLBACK(OnInitExprV128ConstExpr, index, value_bits);
+ break;
+ }
+
case Opcode::GetGlobal: {
Index global_index;
CHECK_RESULT(ReadIndex(&global_index, "init_expr get_global index"));
@@ -629,6 +644,16 @@ Result BinaryReader::ReadFunctionBody(Offset end_offset) {
break;
}
+ case Opcode::V128Const: {
+ ERROR_UNLESS_OPCODE_ENABLED(opcode);
+ v128 value_bits;
+ ZeroMemory(value_bits);
+ CHECK_RESULT(ReadV128(&value_bits, "v128.const value"));
+ CALLBACK(OnV128ConstExpr, value_bits);
+ CALLBACK(OnOpcodeV128, value_bits);
+ break;
+ }
+
case Opcode::GetGlobal: {
Index global_index;
CHECK_RESULT(ReadIndex(&global_index, "get_global global index"));
diff --git a/src/binary-reader.h b/src/binary-reader.h
index d9634d77..53cb249a 100644
--- a/src/binary-reader.h
+++ b/src/binary-reader.h
@@ -178,6 +178,7 @@ class BinaryReaderDelegate {
virtual Result OnOpcodeUint64(uint64_t value) = 0;
virtual Result OnOpcodeF32(uint32_t value) = 0;
virtual Result OnOpcodeF64(uint64_t value) = 0;
+ virtual Result OnOpcodeV128(v128 value) = 0;
virtual Result OnOpcodeBlockSig(Index num_types, Type* sig_types) = 0;
virtual Result OnAtomicLoadExpr(Opcode opcode,
uint32_t alignment_log2,
@@ -217,6 +218,7 @@ class BinaryReaderDelegate {
virtual Result OnEndFunc() = 0;
virtual Result OnF32ConstExpr(uint32_t value_bits) = 0;
virtual Result OnF64ConstExpr(uint64_t value_bits) = 0;
+ virtual Result OnV128ConstExpr(v128 value_bits) = 0;
virtual Result OnGetGlobalExpr(Index global_index) = 0;
virtual Result OnGetLocalExpr(Index local_index) = 0;
virtual Result OnGrowMemoryExpr() = 0;
@@ -323,6 +325,7 @@ class BinaryReaderDelegate {
* only called between calls to Begin*InitExpr and End*InitExpr */
virtual Result OnInitExprF32ConstExpr(Index index, uint32_t value) = 0;
virtual Result OnInitExprF64ConstExpr(Index index, uint64_t value) = 0;
+ virtual Result OnInitExprV128ConstExpr(Index index, v128 value) = 0;
virtual Result OnInitExprGetGlobalExpr(Index index, Index global_index) = 0;
virtual Result OnInitExprI32ConstExpr(Index index, uint32_t value) = 0;
virtual Result OnInitExprI64ConstExpr(Index index, uint64_t value) = 0;
diff --git a/src/binary-writer.cc b/src/binary-writer.cc
index 730e27b6..28c850ed 100644
--- a/src/binary-writer.cc
+++ b/src/binary-writer.cc
@@ -434,6 +434,10 @@ void BinaryWriter::WriteExpr(const Module* module,
WriteOpcode(stream_, Opcode::F64Const);
stream_->WriteU64(const_.f64_bits, "f64 literal");
break;
+ case Type::V128:
+ WriteOpcode(stream_, Opcode::V128Const);
+ stream_->WriteU128(const_.v128_bits, "v128 literal");
+ break;
default:
assert(0);
}
diff --git a/src/common.h b/src/common.h
index 4d94d688..33b2696c 100644
--- a/src/common.h
+++ b/src/common.h
@@ -90,6 +90,10 @@
#define PRIaddress "u"
#define PRIoffset PRIzx
+struct v128 {
+ uint32_t v[4];
+};
+
namespace wabt {
typedef uint32_t Index; // An index into one of the many index spaces.
@@ -189,6 +193,7 @@ enum class Type {
I64 = -0x02,
F32 = -0x03,
F64 = -0x04,
+ V128 = -0x05,
Anyfunc = -0x10,
Func = -0x20,
Void = -0x40,
@@ -297,6 +302,8 @@ static WABT_INLINE const char* GetTypeName(Type type) {
return "f32";
case Type::F64:
return "f64";
+ case Type::V128:
+ return "v128";
case Type::Anyfunc:
return "anyfunc";
case Type::Func:
diff --git a/src/interp.cc b/src/interp.cc
index b0056c86..863615a0 100644
--- a/src/interp.cc
+++ b/src/interp.cc
@@ -2200,6 +2200,12 @@ Result Thread::Run(int num_instructions) {
TRAP(Unreachable);
break;
+ case Opcode::V128Const: {
+ // TODO(zhengxing)*/
+ WABT_UNREACHABLE;
+ break;
+ }
+
// The following opcodes are either never generated or should never be
// executed.
case Opcode::Block:
@@ -2655,6 +2661,12 @@ void Thread::Trace(Stream* stream) {
*(pc + 4));
break;
+ case Opcode::V128Const: {
+ /* TODO (zhengxing)*/
+ WABT_UNREACHABLE;
+ break;
+ }
+
// The following opcodes are either never generated or should never be
// executed.
case Opcode::Block:
@@ -3066,6 +3078,11 @@ void Environment::Disassemble(Stream* stream,
break;
}
+ case Opcode::V128Const: {
+ /*TODO (zhengxing)*/
+ WABT_UNREACHABLE;
+ break;
+ }
// The following opcodes are either never generated or should never be
// executed.
case Opcode::Block:
diff --git a/src/ir.cc b/src/ir.cc
index c71d2eb6..3de5e543 100644
--- a/src/ir.cc
+++ b/src/ir.cc
@@ -517,4 +517,9 @@ Const::Const(F64Tag, uint64_t value, const Location& loc_)
: loc(loc_), type(Type::F64), f64_bits(value) {
}
+Const::Const(V128Tag, v128 value, const Location& loc_)
+ : loc(loc_), type(Type::V128) {
+ memcpy(&v128_bits, &value, sizeof(v128));
+}
+
} // namespace wabt
diff --git a/src/ir.h b/src/ir.h
index 3aa93764..39c065ea 100644
--- a/src/ir.h
+++ b/src/ir.h
@@ -90,6 +90,10 @@ struct Const {
return Const(F64Tag(), val, loc);
}
+ static Const V128(v128 val, const Location& loc = Location()) {
+ return Const(V128Tag(), val, loc);
+ }
+
Location loc;
Type type;
union {
@@ -97,6 +101,7 @@ struct Const {
uint64_t u64;
uint32_t f32_bits;
uint64_t f64_bits;
+ v128 v128_bits;
};
private:
@@ -105,11 +110,13 @@ struct Const {
struct I64Tag {};
struct F32Tag {};
struct F64Tag {};
+ struct V128Tag {};
Const(I32Tag, uint32_t val = 0, const Location& loc = Location());
Const(I64Tag, uint64_t val = 0, const Location& loc = Location());
Const(F32Tag, uint32_t val = 0, const Location& loc = Location());
Const(F64Tag, uint64_t val = 0, const Location& loc = Location());
+ Const(V128Tag, v128 val = {{0, 0, 0, 0}}, const Location& loc = Location());
};
typedef std::vector<Const> ConstVector;
diff --git a/src/opcode.cc b/src/opcode.cc
index 1ead657a..ac31df46 100644
--- a/src/opcode.cc
+++ b/src/opcode.cc
@@ -180,6 +180,9 @@ bool Opcode::IsEnabled(const Features& features) const {
case Opcode::I64AtomicRmw32UCmpxchg:
return features.threads_enabled();
+ case Opcode::V128Const:
+ return features.simd_enabled();
+
// Interpreter opcodes are never "enabled".
case Opcode::InterpAlloca:
case Opcode::InterpBrUnless:
diff --git a/src/opcode.def b/src/opcode.def
index 90a31a50..7eba8ab6 100644
--- a/src/opcode.def
+++ b/src/opcode.def
@@ -234,6 +234,10 @@ 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")
+
+/* Simd opcodes */
+WABT_OPCODE(V128, ___, ___, ___, 0, 0xfd, 0x00, V128Const, "v128.const")
+
WABT_OPCODE(I32, I32, I32, ___, 4, 0xfe, 0x00, AtomicWake, "atomic.wake")
WABT_OPCODE(I32, I32, I32, I64, 4, 0xfe, 0x01, I32AtomicWait, "i32.atomic.wait")
WABT_OPCODE(I32, I32, I64, I64, 8, 0xfe, 0x02, I64AtomicWait, "i64.atomic.wait")
diff --git a/src/opcode.h b/src/opcode.h
index ebd0fb27..86838db7 100644
--- a/src/opcode.h
+++ b/src/opcode.h
@@ -70,7 +70,7 @@ struct Opcode {
Address GetAlignment(Address alignment) const;
static bool IsPrefixByte(uint8_t byte) {
- return byte == kMathPrefix || byte == kThreadsPrefix;
+ return byte == kMathPrefix || byte == kThreadsPrefix || byte == kSimdPrefix;
}
bool IsEnabled(const Features& features) const;
@@ -79,6 +79,7 @@ struct Opcode {
private:
static const uint32_t kMathPrefix = 0xfc;
static const uint32_t kThreadsPrefix = 0xfe;
+ static const uint32_t kSimdPrefix = 0xfd;
struct Info {
const char* name;
diff --git a/src/prebuilt/wast-lexer-gen.cc b/src/prebuilt/wast-lexer-gen.cc
index c0951504..c5846510 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 559 "src/wast-lexer.cc"
+#line 562 "src/wast-lexer.cc"
{ continue; }
#line 456 "src/prebuilt/wast-lexer-gen.cc"
yy36:
++cursor_;
-#line 558 "src/wast-lexer.cc"
+#line 561 "src/wast-lexer.cc"
{ NEWLINE; continue; }
#line 461 "src/prebuilt/wast-lexer-gen.cc"
yy38:
@@ -469,7 +469,7 @@ yy39:
yy40:
++cursor_;
yy41:
-#line 560 "src/wast-lexer.cc"
+#line 563 "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 554 "src/wast-lexer.cc"
+#line 557 "src/wast-lexer.cc"
{ COMMENT_NESTING++; continue; }
#line 510 "src/prebuilt/wast-lexer-gen.cc"
yy50:
++cursor_;
-#line 555 "src/wast-lexer.cc"
+#line 558 "src/wast-lexer.cc"
{ if (--COMMENT_NESTING == 0)
BEGIN(YYCOND_i);
continue; }
@@ -602,19 +602,19 @@ yy57:
if (yych <= 0xF4) goto yy76;
}
yy59:
-#line 552 "src/wast-lexer.cc"
+#line 555 "src/wast-lexer.cc"
{ continue; }
#line 608 "src/prebuilt/wast-lexer-gen.cc"
yy60:
++cursor_;
BEGIN(YYCOND_i);
-#line 551 "src/wast-lexer.cc"
+#line 554 "src/wast-lexer.cc"
{ NEWLINE; continue; }
#line 614 "src/prebuilt/wast-lexer-gen.cc"
yy62:
++cursor_;
yy63:
-#line 565 "src/wast-lexer.cc"
+#line 568 "src/wast-lexer.cc"
{ MAYBE_MALFORMED_UTF8(""); }
#line 620 "src/prebuilt/wast-lexer-gen.cc"
yy64:
@@ -788,7 +788,7 @@ YYCOND_i:
}
}
} else {
- if (yych <= 'r') {
+ if (yych <= 's') {
if (yych <= 'l') {
if (yych <= 'h') {
if (yych <= 'f') goto yy107;
@@ -807,29 +807,30 @@ YYCOND_i:
} else {
if (yych <= 'p') goto yy114;
if (yych <= 'q') goto yy115;
- goto yy116;
+ if (yych <= 'r') goto yy116;
+ goto yy117;
}
}
} else {
if (yych <= 0xC1) {
- if (yych <= 'u') {
- if (yych <= 's') goto yy117;
+ if (yych <= 'v') {
if (yych <= 't') goto yy118;
- goto yy119;
+ if (yych <= 'u') goto yy119;
+ 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 +838,9 @@ YYCOND_i:
yy79:
++cursor_;
yy80:
-#line 564 "src/wast-lexer.cc"
+#line 567 "src/wast-lexer.cc"
{ ERROR("unexpected char"); continue; }
-#line 843 "src/prebuilt/wast-lexer-gen.cc"
+#line 844 "src/prebuilt/wast-lexer-gen.cc"
yy81:
++cursor_;
if (limit_ <= cursor_) FILL(1);
@@ -847,14 +848,14 @@ yy81:
if (yybm[0+yych] & 4) {
goto yy81;
}
-#line 562 "src/wast-lexer.cc"
+#line 565 "src/wast-lexer.cc"
{ continue; }
-#line 853 "src/prebuilt/wast-lexer-gen.cc"
+#line 854 "src/prebuilt/wast-lexer-gen.cc"
yy84:
++cursor_;
-#line 561 "src/wast-lexer.cc"
+#line 564 "src/wast-lexer.cc"
{ NEWLINE; continue; }
-#line 858 "src/prebuilt/wast-lexer-gen.cc"
+#line 859 "src/prebuilt/wast-lexer-gen.cc"
yy86:
++cursor_;
if (limit_ <= cursor_) FILL(1);
@@ -864,58 +865,58 @@ yy87:
goto yy86;
}
yy88:
-#line 563 "src/wast-lexer.cc"
+#line 566 "src/wast-lexer.cc"
{ RETURN_TEXT(Reserved); }
-#line 870 "src/prebuilt/wast-lexer-gen.cc"
+#line 871 "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 883 "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 905 "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 910 "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 +932,7 @@ yy97:
if (yych <= '-') {
if (yych >= '*') goto yy86;
} else {
- if (yych <= '.') goto yy151;
+ if (yych <= '.') goto yy152;
if (yych <= ':') goto yy86;
}
}
@@ -939,17 +940,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 +958,7 @@ yy97:
yy98:
#line 232 "src/wast-lexer.cc"
{ RETURN_LITERAL(Nat, Int); }
-#line 961 "src/prebuilt/wast-lexer-gen.cc"
+#line 962 "src/prebuilt/wast-lexer-gen.cc"
yy99:
++cursor_;
if ((limit_ - cursor_) < 3) FILL(3);
@@ -972,20 +973,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,68 +994,68 @@ yy99:
}
yy101:
yych = *++cursor_;
- if (yych == ';') goto yy156;
+ if (yych == ';') goto yy157;
goto yy80;
yy102:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'l') goto yy158;
+ if (yych == 'l') goto yy159;
if (yych <= 'm') goto yy87;
- goto yy159;
+ goto yy160;
} else {
if (yych <= 'r') goto yy87;
- if (yych <= 's') goto yy160;
- if (yych <= 't') goto yy161;
+ if (yych <= 's') goto yy161;
+ if (yych <= 't') goto yy162;
goto yy87;
}
yy103:
yych = *++cursor_;
if (yych <= 'k') {
- if (yych == 'i') goto yy162;
+ if (yych == 'i') goto yy163;
goto yy87;
} else {
- if (yych <= 'l') goto yy163;
- if (yych == 'r') goto yy164;
+ if (yych <= 'l') goto yy164;
+ if (yych == 'r') goto yy165;
goto yy87;
}
yy104:
yych = *++cursor_;
- if (yych == 'a') goto yy166;
- if (yych == 'u') goto yy167;
+ if (yych == 'a') goto yy167;
+ if (yych == 'u') goto yy168;
goto yy87;
yy105:
yych = *++cursor_;
- if (yych == 'a') goto yy168;
- if (yych == 'r') goto yy169;
+ if (yych == 'a') goto yy169;
+ if (yych == 'r') goto yy170;
goto yy87;
yy106:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'l') goto yy170;
+ if (yych == 'l') goto yy171;
goto yy87;
} else {
- if (yych <= 'n') goto yy171;
- if (yych == 'x') goto yy172;
+ if (yych <= 'n') goto yy172;
+ if (yych == 'x') goto yy173;
goto yy87;
}
yy107:
yych = *++cursor_;
if (yych <= '5') {
- if (yych == '3') goto yy173;
+ if (yych == '3') goto yy174;
goto yy87;
} else {
- if (yych <= '6') goto yy174;
- if (yych == 'u') goto yy175;
+ if (yych <= '6') goto yy175;
+ if (yych == 'u') goto yy176;
goto yy87;
}
yy108:
yych = *++cursor_;
if (yych <= 'k') {
- if (yych == 'e') goto yy176;
+ if (yych == 'e') goto yy177;
goto yy87;
} else {
- if (yych <= 'l') goto yy177;
- if (yych == 'r') goto yy178;
+ if (yych <= 'l') goto yy178;
+ if (yych == 'r') goto yy179;
goto yy87;
}
yy109:
@@ -1062,278 +1063,282 @@ yy109:
if (yych <= 'e') {
if (yych <= '3') {
if (yych <= '2') goto yy87;
- goto yy179;
+ goto yy180;
} else {
- if (yych == '6') goto yy180;
+ if (yych == '6') goto yy181;
goto yy87;
}
} else {
if (yych <= 'l') {
- if (yych <= 'f') goto yy181;
+ if (yych <= 'f') goto yy182;
goto yy87;
} else {
- if (yych <= 'm') goto yy183;
- if (yych <= 'n') goto yy184;
+ if (yych <= 'm') goto yy184;
+ if (yych <= 'n') goto yy185;
goto yy87;
}
}
yy110:
yych = *++cursor_;
- if (yych == 'o') goto yy185;
+ if (yych == 'o') goto yy186;
goto yy87;
yy111:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy186;
+ if (yych == 'e') goto yy187;
goto yy87;
} else {
- if (yych <= 'o') goto yy187;
- if (yych == 'u') goto yy188;
+ if (yych <= 'o') goto yy188;
+ if (yych == 'u') goto yy189;
goto yy87;
}
yy112:
yych = *++cursor_;
- if (yych == 'a') goto yy189;
- if (yych == 'o') goto yy190;
+ if (yych == 'a') goto yy190;
+ if (yych == 'o') goto yy191;
goto yy87;
yy113:
yych = *++cursor_;
- if (yych == 'f') goto yy191;
+ if (yych == 'f') goto yy192;
goto yy87;
yy114:
yych = *++cursor_;
- if (yych == 'a') goto yy192;
+ if (yych == 'a') goto yy193;
goto yy87;
yy115:
yych = *++cursor_;
- if (yych == 'u') goto yy193;
+ if (yych == 'u') goto yy194;
goto yy87;
yy116:
yych = *++cursor_;
- if (yych == 'e') goto yy194;
+ if (yych == 'e') goto yy195;
goto yy87;
yy117:
yych = *++cursor_;
if (yych <= 'g') {
- if (yych == 'e') goto yy195;
+ if (yych == 'e') goto yy196;
goto yy87;
} else {
- if (yych <= 'h') goto yy196;
- if (yych == 't') goto yy197;
+ if (yych <= 'h') goto yy197;
+ if (yych == 't') goto yy198;
goto yy87;
}
yy118:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy198;
- case 'e': goto yy199;
- case 'h': goto yy200;
- case 'r': goto yy201;
- case 'y': goto yy202;
+ case 'a': goto yy199;
+ case 'e': goto yy200;
+ case 'h': goto yy201;
+ case 'r': goto yy202;
+ case 'y': goto yy203;
default: goto yy87;
}
yy119:
yych = *++cursor_;
- if (yych == 'n') goto yy203;
+ if (yych == 'n') goto yy204;
goto yy87;
yy120:
- ++cursor_;
+ yych = *++cursor_;
+ if (yych == '1') goto yy205;
+ goto yy87;
yy121:
-#line 565 "src/wast-lexer.cc"
- { MAYBE_MALFORMED_UTF8(""); }
-#line 1145 "src/prebuilt/wast-lexer-gen.cc"
+ ++cursor_;
yy122:
+#line 568 "src/wast-lexer.cc"
+ { MAYBE_MALFORMED_UTF8(""); }
+#line 1150 "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 yy204;
- goto yy121;
+ goto yy122;
yy124:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x7F) goto yy121;
- if (yych <= 0xBF) goto yy204;
- goto yy121;
+ if (yych <= 0x9F) goto yy122;
+ if (yych <= 0xBF) goto yy206;
+ goto yy122;
yy125:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x8F) goto yy121;
- if (yych <= 0xBF) goto yy205;
- goto yy121;
+ if (yych <= 0x7F) goto yy122;
+ if (yych <= 0xBF) goto yy206;
+ goto yy122;
yy126:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x7F) goto yy121;
- if (yych <= 0xBF) goto yy205;
- goto yy121;
+ if (yych <= 0x8F) goto yy122;
+ if (yych <= 0xBF) goto yy207;
+ goto yy122;
yy127:
yyaccept = 1;
yych = *(marker_ = ++cursor_);
- if (yych <= 0x7F) goto yy121;
- if (yych <= 0x8F) goto yy205;
- goto yy121;
+ if (yych <= 0x7F) goto yy122;
+ if (yych <= 0xBF) goto yy207;
+ goto yy122;
yy128:
+ yyaccept = 1;
+ yych = *(marker_ = ++cursor_);
+ if (yych <= 0x7F) goto yy122;
+ if (yych <= 0x8F) goto yy207;
+ 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 1217 "src/prebuilt/wast-lexer-gen.cc"
-yy133:
+#line 1222 "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 yy206;
+ if (yych <= '/') goto yy131;
+ goto yy208;
} else {
- if (yych <= '@') goto yy130;
- if (yych <= 'F') goto yy206;
- goto yy130;
+ if (yych <= '@') goto yy131;
+ if (yych <= 'F') goto yy208;
+ 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 yy206;
- if (yych <= 'm') goto yy130;
- goto yy128;
+ if (yych <= 'f') goto yy208;
+ 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 547 "src/wast-lexer.cc"
- { RETURN_TEXT(Var); }
-#line 1314 "src/prebuilt/wast-lexer-gen.cc"
yy143:
+#line 550 "src/wast-lexer.cc"
+ { RETURN_TEXT(Var); }
+#line 1319 "src/prebuilt/wast-lexer-gen.cc"
+yy144:
++cursor_;
BEGIN(YYCOND_BLOCK_COMMENT);
-#line 553 "src/wast-lexer.cc"
+#line 556 "src/wast-lexer.cc"
{ COMMENT_NESTING = 1; continue; }
-#line 1320 "src/prebuilt/wast-lexer-gen.cc"
-yy145:
+#line 1325 "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;
}
}
@@ -1342,108 +1347,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 yy207;
+ goto yy209;
}
} else {
if (yych <= 'w') {
- if (yych == 'e') goto yy153;
+ if (yych == 'e') goto yy154;
goto yy86;
} else {
- if (yych <= 'x') goto yy208;
+ if (yych <= 'x') goto yy210;
if (yych <= '~') goto yy86;
}
}
}
-yy146:
+yy147:
#line 233 "src/wast-lexer.cc"
{ RETURN_LITERAL(Int, Int); }
-#line 1363 "src/prebuilt/wast-lexer-gen.cc"
-yy147:
+#line 1368 "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 yy207;
+ if (yych <= '_') goto yy209;
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 yy209;
- goto yy87;
yy150:
yych = *++cursor_;
- if (yych == 'a') goto yy189;
+ if (yych == 'n') goto yy211;
goto yy87;
yy151:
+ yych = *++cursor_;
+ if (yych == 'a') goto yy190;
+ 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 yy210;
+ goto yy212;
}
} 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 1435 "src/prebuilt/wast-lexer-gen.cc"
-yy153:
+#line 1440 "src/prebuilt/wast-lexer-gen.cc"
+yy154:
yych = *++cursor_;
if (yych <= ',') {
- if (yych == '+') goto yy212;
+ if (yych == '+') goto yy214;
goto yy87;
} else {
- if (yych <= '-') goto yy212;
+ if (yych <= '-') goto yy214;
if (yych <= '/') goto yy87;
- if (yych <= '9') goto yy213;
+ if (yych <= '9') goto yy215;
goto yy87;
}
-yy154:
+yy155:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1464,12 +1469,12 @@ yy154:
goto yy88;
}
}
-yy155:
+yy156:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yybm[0+yych] & 128) {
- goto yy215;
+ goto yy217;
}
if (yych <= '\'') {
if (yych == '!') goto yy86;
@@ -1485,247 +1490,251 @@ yy155:
goto yy88;
}
}
-yy156:
+yy157:
++cursor_;
BEGIN(YYCOND_LINE_COMMENT);
-#line 550 "src/wast-lexer.cc"
+#line 553 "src/wast-lexer.cc"
{ continue; }
-#line 1494 "src/prebuilt/wast-lexer-gen.cc"
-yy158:
- yych = *++cursor_;
- if (yych == 'i') goto yy217;
- goto yy87;
+#line 1499 "src/prebuilt/wast-lexer-gen.cc"
yy159:
yych = *++cursor_;
- if (yych == 'y') goto yy218;
+ if (yych == 'i') goto yy219;
goto yy87;
yy160:
yych = *++cursor_;
- if (yych == 's') goto yy219;
+ if (yych == 'y') goto yy220;
goto yy87;
yy161:
yych = *++cursor_;
- if (yych == 'o') goto yy220;
+ if (yych == 's') goto yy221;
goto yy87;
yy162:
yych = *++cursor_;
- if (yych == 'n') goto yy221;
+ if (yych == 'o') goto yy222;
goto yy87;
yy163:
yych = *++cursor_;
- if (yych == 'o') goto yy222;
+ if (yych == 'n') goto yy223;
goto yy87;
yy164:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy224;
+ goto yy87;
+yy165:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy165;
+ if (yych <= '"') goto yy166;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy223;
+ if (yych <= '_') goto yy225;
if (yych <= '~') goto yy86;
}
}
-yy165:
-#line 263 "src/wast-lexer.cc"
- { RETURN_OPCODE0(Br); }
-#line 1539 "src/prebuilt/wast-lexer-gen.cc"
yy166:
- yych = *++cursor_;
- if (yych == 'l') goto yy224;
- if (yych == 't') goto yy225;
- goto yy87;
+#line 264 "src/wast-lexer.cc"
+ { RETURN_OPCODE0(Br); }
+#line 1544 "src/prebuilt/wast-lexer-gen.cc"
yy167:
yych = *++cursor_;
- if (yych == 'r') goto yy226;
+ if (yych == 'l') goto yy226;
+ if (yych == 't') goto yy227;
goto yy87;
yy168:
yych = *++cursor_;
- if (yych == 't') goto yy227;
+ if (yych == 'r') goto yy228;
goto yy87;
yy169:
yych = *++cursor_;
- if (yych == 'o') goto yy228;
+ if (yych == 't') goto yy229;
goto yy87;
yy170:
yych = *++cursor_;
- if (yych == 'e') goto yy229;
- if (yych == 's') goto yy230;
+ if (yych == 'o') goto yy230;
goto yy87;
yy171:
yych = *++cursor_;
- if (yych == 'd') goto yy231;
+ if (yych == 'e') goto yy231;
+ if (yych == 's') goto yy232;
goto yy87;
yy172:
yych = *++cursor_;
- if (yych == 'c') goto yy233;
- if (yych == 'p') goto yy234;
+ if (yych == 'd') goto yy233;
goto yy87;
yy173:
yych = *++cursor_;
- if (yych == '2') goto yy235;
+ if (yych == 'c') goto yy235;
+ if (yych == 'p') goto yy236;
goto yy87;
yy174:
yych = *++cursor_;
- if (yych == '4') goto yy237;
+ if (yych == '2') goto yy237;
goto yy87;
yy175:
yych = *++cursor_;
- if (yych == 'n') goto yy239;
+ if (yych == '4') goto yy239;
goto yy87;
yy176:
yych = *++cursor_;
- if (yych == 't') goto yy240;
+ if (yych == 'n') goto yy241;
goto yy87;
yy177:
yych = *++cursor_;
- if (yych == 'o') goto yy242;
+ if (yych == 't') goto yy242;
goto yy87;
yy178:
yych = *++cursor_;
- if (yych == 'o') goto yy243;
+ if (yych == 'o') goto yy244;
goto yy87;
yy179:
yych = *++cursor_;
- if (yych == '2') goto yy244;
+ if (yych == 'o') goto yy245;
goto yy87;
yy180:
yych = *++cursor_;
- if (yych == '4') goto yy246;
+ if (yych == '2') goto yy246;
goto yy87;
yy181:
+ yych = *++cursor_;
+ if (yych == '4') goto yy248;
+ goto yy87;
+yy182:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 259 "src/wast-lexer.cc"
+#line 260 "src/wast-lexer.cc"
{ RETURN_OPCODE0(If); }
-#line 1610 "src/prebuilt/wast-lexer-gen.cc"
-yy183:
- yych = *++cursor_;
- if (yych == 'p') goto yy248;
- goto yy87;
+#line 1615 "src/prebuilt/wast-lexer-gen.cc"
yy184:
yych = *++cursor_;
- if (yych == 'f') goto yy249;
- if (yych == 'v') goto yy251;
+ if (yych == 'p') goto yy250;
goto yy87;
yy185:
yych = *++cursor_;
- if (yych == 'c') goto yy252;
- if (yych == 'o') goto yy253;
+ if (yych == 'f') goto yy251;
+ if (yych == 'v') goto yy253;
goto yy87;
yy186:
yych = *++cursor_;
- if (yych == 'm') goto yy254;
+ if (yych == 'c') goto yy254;
+ if (yych == 'o') goto yy255;
goto yy87;
yy187:
yych = *++cursor_;
- if (yych == 'd') goto yy255;
+ if (yych == 'm') goto yy256;
goto yy87;
yy188:
yych = *++cursor_;
- if (yych == 't') goto yy256;
+ if (yych == 'd') goto yy257;
goto yy87;
yy189:
yych = *++cursor_;
- if (yych == 'n') goto yy258;
+ if (yych == 't') goto yy258;
goto yy87;
yy190:
yych = *++cursor_;
- if (yych == 'p') goto yy260;
+ if (yych == 'n') goto yy260;
goto yy87;
yy191:
yych = *++cursor_;
- if (yych == 'f') goto yy262;
+ if (yych == 'p') goto yy262;
goto yy87;
yy192:
yych = *++cursor_;
- if (yych == 'r') goto yy263;
+ if (yych == 'f') goto yy264;
goto yy87;
yy193:
yych = *++cursor_;
- if (yych == 'o') goto yy264;
+ if (yych == 'r') goto yy265;
goto yy87;
yy194:
yych = *++cursor_;
+ if (yych == 'o') goto yy266;
+ goto yy87;
+yy195:
+ yych = *++cursor_;
if (yych <= 'r') {
- if (yych == 'g') goto yy265;
+ if (yych == 'g') goto yy267;
goto yy87;
} else {
- if (yych <= 's') goto yy266;
- if (yych <= 't') goto yy267;
+ if (yych <= 's') goto yy268;
+ if (yych <= 't') goto yy269;
goto yy87;
}
-yy195:
- yych = *++cursor_;
- if (yych == 'l') goto yy268;
- if (yych == 't') goto yy269;
- goto yy87;
yy196:
yych = *++cursor_;
- if (yych == 'a') goto yy270;
+ if (yych == 'l') goto yy270;
+ if (yych == 't') goto yy271;
goto yy87;
yy197:
yych = *++cursor_;
- if (yych == 'a') goto yy271;
+ if (yych == 'a') goto yy272;
goto yy87;
yy198:
yych = *++cursor_;
- if (yych == 'b') goto yy272;
+ if (yych == 'a') goto yy273;
goto yy87;
yy199:
yych = *++cursor_;
- if (yych == 'e') goto yy273;
+ if (yych == 'b') goto yy274;
goto yy87;
yy200:
yych = *++cursor_;
- if (yych == 'e') goto yy274;
- if (yych == 'r') goto yy275;
+ if (yych == 'e') goto yy275;
goto yy87;
yy201:
yych = *++cursor_;
- if (yych == 'y') goto yy276;
+ if (yych == 'e') goto yy276;
+ if (yych == 'r') goto yy277;
goto yy87;
yy202:
yych = *++cursor_;
- if (yych == 'p') goto yy278;
+ if (yych == 'y') goto yy278;
goto yy87;
yy203:
yych = *++cursor_;
- if (yych == 'r') goto yy279;
+ if (yych == 'p') goto yy280;
goto yy87;
yy204:
yych = *++cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy79;
- goto yy130;
+ if (yych == 'r') goto yy281;
+ goto yy87;
yy205:
yych = *++cursor_;
- if (yych <= 0x7F) goto yy130;
- if (yych <= 0xBF) goto yy204;
- goto yy130;
+ if (yych == '2') goto yy282;
+ goto yy87;
yy206:
+ yych = *++cursor_;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy79;
+ goto yy131;
+yy207:
+ yych = *++cursor_;
+ if (yych <= 0x7F) goto yy131;
+ if (yych <= 0xBF) goto yy206;
+ goto yy131;
+yy208:
++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;
}
-yy207:
+yy209:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1741,7 +1750,7 @@ yy207:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy147;
+ if (yych <= '9') goto yy148;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -1749,7 +1758,7 @@ yy207:
goto yy88;
}
}
-yy208:
+yy210:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1761,56 +1770,56 @@ yy208:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy280;
+ goto yy283;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy280;
+ goto yy283;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy280;
+ if (yych <= 'f') goto yy283;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy209:
+yy211:
yych = *++cursor_;
- if (yych == 'f') goto yy249;
+ if (yych == 'f') goto yy251;
goto yy87;
-yy210:
+yy212:
++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 yy210;
+ if (yych <= '9') goto yy212;
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 yy282;
+ if (yych <= '_') goto yy285;
goto yy86;
} else {
- if (yych <= 'e') goto yy153;
+ if (yych <= 'e') goto yy154;
if (yych <= '~') goto yy86;
- goto yy152;
+ goto yy153;
}
}
}
-yy212:
+yy214:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -1833,36 +1842,36 @@ yy212:
goto yy88;
}
}
-yy213:
+yy215:
++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 yy213;
+ if (yych <= '9') goto yy215;
if (yych <= ':') goto yy86;
- goto yy152;
+ goto yy153;
} else {
- if (yych == '_') goto yy212;
+ if (yych == '_') goto yy214;
if (yych <= '~') goto yy86;
- goto yy152;
+ goto yy153;
}
}
-yy215:
+yy217:
++cursor_;
if ((limit_ - cursor_) < 3) FILL(3);
yych = *cursor_;
if (yybm[0+yych] & 128) {
- goto yy215;
+ goto yy217;
}
if (yych <= ':') {
if (yych <= '\'') {
@@ -1871,410 +1880,414 @@ yy215:
goto yy86;
} else {
if (yych <= ')') goto yy98;
- if (yych == '.') goto yy283;
+ if (yych == '.') goto yy286;
goto yy86;
}
} else {
if (yych <= '^') {
if (yych <= ';') goto yy98;
- if (yych == 'P') goto yy285;
+ if (yych == 'P') goto yy288;
goto yy86;
} else {
if (yych <= 'o') {
- if (yych <= '_') goto yy155;
+ if (yych <= '_') goto yy156;
goto yy86;
} else {
- if (yych <= 'p') goto yy285;
+ if (yych <= 'p') goto yy288;
if (yych <= '~') goto yy86;
goto yy98;
}
}
}
-yy217:
- yych = *++cursor_;
- if (yych == 'g') goto yy286;
- goto yy87;
-yy218:
- yych = *++cursor_;
- if (yych == 'f') goto yy287;
- goto yy87;
yy219:
yych = *++cursor_;
- if (yych == 'e') goto yy288;
+ if (yych == 'g') goto yy289;
goto yy87;
yy220:
yych = *++cursor_;
- if (yych == 'm') goto yy289;
+ if (yych == 'f') goto yy290;
goto yy87;
yy221:
yych = *++cursor_;
- if (yych == 'a') goto yy290;
+ if (yych == 'e') goto yy291;
goto yy87;
yy222:
yych = *++cursor_;
- if (yych == 'c') goto yy291;
+ if (yych == 'm') goto yy292;
goto yy87;
yy223:
yych = *++cursor_;
- if (yych == 'i') goto yy292;
- if (yych == 't') goto yy293;
+ if (yych == 'a') goto yy293;
goto yy87;
yy224:
yych = *++cursor_;
- if (yych == 'l') goto yy294;
+ if (yych == 'c') goto yy294;
goto yy87;
yy225:
yych = *++cursor_;
- if (yych == 'c') goto yy296;
+ if (yych == 'i') goto yy295;
+ if (yych == 't') goto yy296;
goto yy87;
yy226:
yych = *++cursor_;
- if (yych == 'r') goto yy297;
+ if (yych == 'l') goto yy297;
goto yy87;
yy227:
yych = *++cursor_;
- if (yych == 'a') goto yy298;
+ if (yych == 'c') goto yy299;
goto yy87;
yy228:
yych = *++cursor_;
- if (yych == 'p') goto yy300;
+ if (yych == 'r') goto yy300;
goto yy87;
yy229:
yych = *++cursor_;
- if (yych == 'm') goto yy302;
+ if (yych == 'a') goto yy301;
goto yy87;
yy230:
yych = *++cursor_;
- if (yych == 'e') goto yy304;
+ if (yych == 'p') goto yy303;
goto yy87;
yy231:
+ yych = *++cursor_;
+ if (yych == 'm') goto yy305;
+ goto yy87;
+yy232:
+ yych = *++cursor_;
+ if (yych == 'e') goto yy307;
+ goto yy87;
+yy233:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 269 "src/wast-lexer.cc"
+#line 270 "src/wast-lexer.cc"
{ RETURN_OPCODE0(End); }
-#line 1958 "src/prebuilt/wast-lexer-gen.cc"
-yy233:
+#line 1967 "src/prebuilt/wast-lexer-gen.cc"
+yy235:
yych = *++cursor_;
- if (yych == 'e') goto yy306;
+ if (yych == 'e') goto yy309;
goto yy87;
-yy234:
+yy236:
yych = *++cursor_;
- if (yych == 'o') goto yy307;
+ if (yych == 'o') goto yy310;
goto yy87;
-yy235:
+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 yy308;
+ if (yych == '.') goto yy311;
goto yy86;
} else {
- if (yych <= ';') goto yy236;
+ if (yych <= ';') goto yy238;
if (yych <= '~') goto yy86;
}
}
-yy236:
+yy238:
#line 253 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, F32); }
-#line 1988 "src/prebuilt/wast-lexer-gen.cc"
-yy237:
+#line 1997 "src/prebuilt/wast-lexer-gen.cc"
+yy239:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy238;
+ if (yych <= '"') goto yy240;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
- if (yych == '.') goto yy309;
+ if (yych == '.') goto yy312;
goto yy86;
} else {
- if (yych <= ';') goto yy238;
+ if (yych <= ';') goto yy240;
if (yych <= '~') goto yy86;
}
}
-yy238:
+yy240:
#line 254 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, F64); }
-#line 2010 "src/prebuilt/wast-lexer-gen.cc"
-yy239:
+#line 2019 "src/prebuilt/wast-lexer-gen.cc"
+yy241:
yych = *++cursor_;
- if (yych == 'c') goto yy310;
+ if (yych == 'c') goto yy313;
goto yy87;
-yy240:
+yy242:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy241;
+ if (yych <= '"') goto yy243;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy312;
+ if (yych <= '_') goto yy315;
if (yych <= '~') goto yy86;
}
}
-yy241:
-#line 533 "src/wast-lexer.cc"
+yy243:
+#line 536 "src/wast-lexer.cc"
{ RETURN(Get); }
-#line 2035 "src/prebuilt/wast-lexer-gen.cc"
-yy242:
+#line 2044 "src/prebuilt/wast-lexer-gen.cc"
+yy244:
yych = *++cursor_;
- if (yych == 'b') goto yy313;
+ if (yych == 'b') goto yy316;
goto yy87;
-yy243:
+yy245:
yych = *++cursor_;
- if (yych == 'w') goto yy314;
+ if (yych == 'w') goto yy317;
goto yy87;
-yy244:
+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 yy315;
+ if (yych == '.') goto yy318;
goto yy86;
} else {
- if (yych <= ';') goto yy245;
+ if (yych <= ';') goto yy247;
if (yych <= '~') goto yy86;
}
}
-yy245:
+yy247:
#line 251 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, I32); }
-#line 2065 "src/prebuilt/wast-lexer-gen.cc"
-yy246:
+#line 2074 "src/prebuilt/wast-lexer-gen.cc"
+yy248:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy247;
+ if (yych <= '"') goto yy249;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
- if (yych == '.') goto yy316;
+ if (yych == '.') goto yy319;
goto yy86;
} else {
- if (yych <= ';') goto yy247;
+ if (yych <= ';') goto yy249;
if (yych <= '~') goto yy86;
}
}
-yy247:
+yy249:
#line 252 "src/wast-lexer.cc"
{ RETURN_TYPE(ValueType, I64); }
-#line 2087 "src/prebuilt/wast-lexer-gen.cc"
-yy248:
+#line 2096 "src/prebuilt/wast-lexer-gen.cc"
+yy250:
yych = *++cursor_;
- if (yych == 'o') goto yy317;
+ if (yych == 'o') goto yy320;
goto yy87;
-yy249:
+yy251:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
#line 236 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Infinity); }
-#line 2099 "src/prebuilt/wast-lexer-gen.cc"
-yy251:
- yych = *++cursor_;
- if (yych == 'o') goto yy318;
- goto yy87;
-yy252:
- yych = *++cursor_;
- if (yych == 'a') goto yy319;
- goto yy87;
+#line 2108 "src/prebuilt/wast-lexer-gen.cc"
yy253:
yych = *++cursor_;
- if (yych == 'p') goto yy320;
+ if (yych == 'o') goto yy321;
goto yy87;
yy254:
yych = *++cursor_;
- if (yych == 'o') goto yy322;
+ if (yych == 'a') goto yy322;
goto yy87;
yy255:
yych = *++cursor_;
- if (yych == 'u') goto yy323;
+ if (yych == 'p') goto yy323;
goto yy87;
yy256:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy325;
+ goto yy87;
+yy257:
+ yych = *++cursor_;
+ if (yych == 'u') goto yy326;
+ goto yy87;
+yy258:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 256 "src/wast-lexer.cc"
+#line 257 "src/wast-lexer.cc"
{ RETURN(Mut); }
-#line 2127 "src/prebuilt/wast-lexer-gen.cc"
-yy258:
+#line 2136 "src/prebuilt/wast-lexer-gen.cc"
+yy260:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy259;
+ if (yych <= '"') goto yy261;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= ':') {
if (yych <= '9') goto yy86;
- goto yy324;
+ goto yy327;
} else {
- if (yych <= ';') goto yy259;
+ if (yych <= ';') goto yy261;
if (yych <= '~') goto yy86;
}
}
-yy259:
+yy261:
#line 237 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Nan); }
-#line 2149 "src/prebuilt/wast-lexer-gen.cc"
-yy260:
+#line 2158 "src/prebuilt/wast-lexer-gen.cc"
+yy262:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 257 "src/wast-lexer.cc"
+#line 258 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Nop); }
-#line 2157 "src/prebuilt/wast-lexer-gen.cc"
-yy262:
- yych = *++cursor_;
- if (yych == 's') goto yy325;
- goto yy87;
-yy263:
- yych = *++cursor_;
- if (yych == 'a') goto yy326;
- goto yy87;
+#line 2166 "src/prebuilt/wast-lexer-gen.cc"
yy264:
yych = *++cursor_;
- if (yych == 't') goto yy327;
+ if (yych == 's') goto yy328;
goto yy87;
yy265:
yych = *++cursor_;
- if (yych == 'i') goto yy328;
+ if (yych == 'a') goto yy329;
goto yy87;
yy266:
yych = *++cursor_;
- if (yych == 'u') goto yy329;
+ if (yych == 't') goto yy330;
goto yy87;
yy267:
yych = *++cursor_;
- if (yych == 'h') goto yy330;
- if (yych == 'u') goto yy331;
+ if (yych == 'i') goto yy331;
goto yy87;
yy268:
yych = *++cursor_;
- if (yych == 'e') goto yy332;
+ if (yych == 'u') goto yy332;
goto yy87;
yy269:
yych = *++cursor_;
- if (yych == '_') goto yy333;
+ if (yych == 'h') goto yy333;
+ if (yych == 'u') goto yy334;
goto yy87;
yy270:
yych = *++cursor_;
- if (yych == 'r') goto yy334;
+ if (yych == 'e') goto yy335;
goto yy87;
yy271:
yych = *++cursor_;
- if (yych == 'r') goto yy335;
+ if (yych == '_') goto yy336;
goto yy87;
yy272:
yych = *++cursor_;
- if (yych == 'l') goto yy336;
+ if (yych == 'r') goto yy337;
goto yy87;
yy273:
yych = *++cursor_;
- if (yych == '_') goto yy337;
+ if (yych == 'r') goto yy338;
goto yy87;
yy274:
yych = *++cursor_;
- if (yych == 'n') goto yy338;
+ if (yych == 'l') goto yy339;
goto yy87;
yy275:
yych = *++cursor_;
- if (yych == 'o') goto yy340;
+ if (yych == '_') goto yy340;
goto yy87;
yy276:
+ yych = *++cursor_;
+ if (yych == 'n') goto yy341;
+ goto yy87;
+yy277:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy343;
+ goto yy87;
+yy278:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 542 "src/wast-lexer.cc"
+#line 545 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Try); }
-#line 2222 "src/prebuilt/wast-lexer-gen.cc"
-yy278:
+#line 2231 "src/prebuilt/wast-lexer-gen.cc"
+yy280:
yych = *++cursor_;
- if (yych == 'e') goto yy341;
+ if (yych == 'e') goto yy344;
goto yy87;
-yy279:
+yy281:
yych = *++cursor_;
- if (yych == 'e') goto yy343;
+ if (yych == 'e') goto yy346;
goto yy87;
-yy280:
+yy282:
+ yych = *++cursor_;
+ if (yych == '8') goto yy347;
+ goto yy87;
+yy283:
++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 yy283;
+ if (yych == '.') goto yy286;
goto yy86;
} else {
- if (yych <= '9') goto yy280;
+ if (yych <= '9') goto yy283;
if (yych <= ':') goto yy86;
- goto yy146;
+ goto yy147;
}
}
} else {
if (yych <= '_') {
if (yych <= 'O') {
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy280;
+ if (yych <= 'F') goto yy283;
goto yy86;
} else {
- if (yych <= 'P') goto yy285;
+ if (yych <= 'P') goto yy288;
if (yych <= '^') goto yy86;
- goto yy208;
+ goto yy210;
}
} else {
if (yych <= 'o') {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy280;
+ if (yych <= 'f') goto yy283;
goto yy86;
} else {
- if (yych <= 'p') goto yy285;
+ if (yych <= 'p') goto yy288;
if (yych <= '~') goto yy86;
- goto yy146;
+ goto yy147;
}
}
}
-yy282:
+yy285:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -2290,7 +2303,7 @@ yy282:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy210;
+ if (yych <= '9') goto yy212;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -2298,7 +2311,7 @@ yy282:
goto yy88;
}
}
-yy283:
+yy286:
++cursor_;
if ((yych = *cursor_) <= ';') {
if (yych <= '\'') {
@@ -2308,7 +2321,7 @@ yy283:
if (yych <= '/') {
if (yych >= '*') goto yy86;
} else {
- if (yych <= '9') goto yy344;
+ if (yych <= '9') goto yy349;
if (yych <= ':') goto yy86;
}
}
@@ -2316,387 +2329,409 @@ yy283:
if (yych <= '`') {
if (yych <= 'F') {
if (yych <= '@') goto yy86;
- goto yy344;
+ goto yy349;
} else {
- if (yych == 'P') goto yy285;
+ if (yych == 'P') goto yy288;
goto yy86;
}
} else {
if (yych <= 'o') {
- if (yych <= 'f') goto yy344;
+ if (yych <= 'f') goto yy349;
goto yy86;
} else {
- if (yych <= 'p') goto yy285;
+ if (yych <= 'p') goto yy288;
if (yych <= '~') goto yy86;
}
}
}
-yy284:
+yy287:
#line 235 "src/wast-lexer.cc"
{ RETURN_LITERAL(Float, Hexfloat); }
-#line 2338 "src/prebuilt/wast-lexer-gen.cc"
-yy285:
+#line 2351 "src/prebuilt/wast-lexer-gen.cc"
+yy288:
yych = *++cursor_;
if (yych <= ',') {
- if (yych == '+') goto yy346;
+ if (yych == '+') goto yy351;
goto yy87;
} else {
- if (yych <= '-') goto yy346;
+ if (yych <= '-') goto yy351;
if (yych <= '/') goto yy87;
- if (yych <= '9') goto yy347;
+ if (yych <= '9') goto yy352;
goto yy87;
}
-yy286:
- yych = *++cursor_;
- if (yych == 'n') goto yy349;
- goto yy87;
-yy287:
- yych = *++cursor_;
- if (yych == 'u') goto yy350;
- goto yy87;
-yy288:
- yych = *++cursor_;
- if (yych == 'r') goto yy351;
- goto yy87;
yy289:
yych = *++cursor_;
- if (yych == 'i') goto yy352;
+ if (yych == 'n') goto yy354;
goto yy87;
yy290:
yych = *++cursor_;
- if (yych == 'r') goto yy353;
+ if (yych == 'u') goto yy355;
goto yy87;
yy291:
yych = *++cursor_;
- if (yych == 'k') goto yy354;
+ if (yych == 'r') goto yy356;
goto yy87;
yy292:
yych = *++cursor_;
- if (yych == 'f') goto yy356;
+ if (yych == 'i') goto yy357;
goto yy87;
yy293:
yych = *++cursor_;
- if (yych == 'a') goto yy358;
+ if (yych == 'r') goto yy358;
goto yy87;
yy294:
+ yych = *++cursor_;
+ if (yych == 'k') goto yy359;
+ goto yy87;
+yy295:
+ yych = *++cursor_;
+ if (yych == 'f') goto yy361;
+ goto yy87;
+yy296:
+ yych = *++cursor_;
+ if (yych == 'a') goto yy363;
+ goto yy87;
+yy297:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy295;
+ if (yych <= '"') goto yy298;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy359;
+ if (yych <= '_') goto yy364;
if (yych <= '~') goto yy86;
}
}
-yy295:
-#line 266 "src/wast-lexer.cc"
+yy298:
+#line 267 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Call); }
-#line 2402 "src/prebuilt/wast-lexer-gen.cc"
-yy296:
+#line 2415 "src/prebuilt/wast-lexer-gen.cc"
+yy299:
yych = *++cursor_;
- if (yych == 'h') goto yy360;
+ if (yych == 'h') goto yy365;
goto yy87;
-yy297:
+yy300:
yych = *++cursor_;
- if (yych == 'e') goto yy362;
+ if (yych == 'e') goto yy367;
goto yy87;
-yy298:
+yy301:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 526 "src/wast-lexer.cc"
+#line 529 "src/wast-lexer.cc"
{ RETURN(Data); }
-#line 2418 "src/prebuilt/wast-lexer-gen.cc"
-yy300:
+#line 2431 "src/prebuilt/wast-lexer-gen.cc"
+yy303:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 268 "src/wast-lexer.cc"
+#line 269 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Drop); }
-#line 2426 "src/prebuilt/wast-lexer-gen.cc"
-yy302:
+#line 2439 "src/prebuilt/wast-lexer-gen.cc"
+yy305:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 525 "src/wast-lexer.cc"
+#line 528 "src/wast-lexer.cc"
{ RETURN(Elem); }
-#line 2434 "src/prebuilt/wast-lexer-gen.cc"
-yy304:
+#line 2447 "src/prebuilt/wast-lexer-gen.cc"
+yy307:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 261 "src/wast-lexer.cc"
+#line 262 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Else); }
-#line 2442 "src/prebuilt/wast-lexer-gen.cc"
-yy306:
+#line 2455 "src/prebuilt/wast-lexer-gen.cc"
+yy309:
yych = *++cursor_;
- if (yych == 'p') goto yy363;
+ if (yych == 'p') goto yy368;
goto yy87;
-yy307:
+yy310:
yych = *++cursor_;
- if (yych == 'r') goto yy364;
+ if (yych == 'r') goto yy369;
goto yy87;
-yy308:
+yy311:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy365;
- case 'c': goto yy366;
- case 'd': goto yy367;
- case 'e': goto yy368;
- case 'f': goto yy369;
- case 'g': goto yy370;
- case 'l': goto yy371;
- case 'm': goto yy372;
- case 'n': goto yy373;
- case 'r': goto yy374;
- case 's': goto yy375;
- case 't': goto yy376;
+ case 'a': goto yy370;
+ case 'c': goto yy371;
+ case 'd': goto yy372;
+ case 'e': goto yy373;
+ case 'f': goto yy374;
+ case 'g': goto yy375;
+ case 'l': goto yy376;
+ case 'm': goto yy377;
+ case 'n': goto yy378;
+ case 'r': goto yy379;
+ case 's': goto yy380;
+ case 't': goto yy381;
default: goto yy87;
}
-yy309:
+yy312:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy377;
- case 'c': goto yy378;
- case 'd': goto yy379;
- case 'e': goto yy380;
- case 'f': goto yy381;
- case 'g': goto yy382;
- case 'l': goto yy383;
- case 'm': goto yy384;
- case 'n': goto yy385;
- case 'p': goto yy386;
- case 'r': goto yy387;
- case 's': goto yy388;
- case 't': goto yy389;
+ case 'a': goto yy382;
+ case 'c': goto yy383;
+ case 'd': goto yy384;
+ case 'e': goto yy385;
+ case 'f': goto yy386;
+ case 'g': goto yy387;
+ case 'l': goto yy388;
+ case 'm': goto yy389;
+ case 'n': goto yy390;
+ case 'p': goto yy391;
+ case 'r': goto yy392;
+ case 's': goto yy393;
+ case 't': goto yy394;
default: goto yy87;
}
-yy310:
+yy313:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 514 "src/wast-lexer.cc"
+#line 517 "src/wast-lexer.cc"
{ RETURN(Func); }
-#line 2493 "src/prebuilt/wast-lexer-gen.cc"
-yy312:
+#line 2506 "src/prebuilt/wast-lexer-gen.cc"
+yy315:
yych = *++cursor_;
- if (yych == 'g') goto yy390;
- if (yych == 'l') goto yy391;
+ if (yych == 'g') goto yy395;
+ if (yych == 'l') goto yy396;
goto yy87;
-yy313:
+yy316:
yych = *++cursor_;
- if (yych == 'a') goto yy392;
+ if (yych == 'a') goto yy397;
goto yy87;
-yy314:
+yy317:
yych = *++cursor_;
- if (yych == '_') goto yy393;
+ if (yych == '_') goto yy398;
goto yy87;
-yy315:
+yy318:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy394;
- case 'c': goto yy395;
- case 'd': goto yy396;
- case 'e': goto yy397;
- case 'g': goto yy398;
- case 'l': goto yy399;
- case 'm': goto yy400;
- case 'n': goto yy401;
- case 'o': goto yy402;
- case 'p': goto yy403;
- case 'r': goto yy404;
- case 's': goto yy405;
- case 't': goto yy406;
- case 'w': goto yy407;
- case 'x': goto yy408;
+ case 'a': goto yy399;
+ case 'c': goto yy400;
+ case 'd': goto yy401;
+ case 'e': goto yy402;
+ case 'g': goto yy403;
+ case 'l': goto yy404;
+ case 'm': goto yy405;
+ case 'n': goto yy406;
+ case 'o': goto yy407;
+ case 'p': goto yy408;
+ case 'r': goto yy409;
+ case 's': goto yy410;
+ case 't': goto yy411;
+ case 'w': goto yy412;
+ case 'x': goto yy413;
default: goto yy87;
}
-yy316:
+yy319:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy409;
- case 'c': goto yy410;
- case 'd': goto yy411;
- case 'e': goto yy412;
- case 'g': goto yy413;
- case 'l': goto yy414;
- case 'm': goto yy415;
- case 'n': goto yy416;
- case 'o': goto yy417;
- case 'p': goto yy418;
- case 'r': goto yy419;
- case 's': goto yy420;
- case 't': goto yy421;
- case 'x': goto yy422;
+ case 'a': goto yy414;
+ case 'c': goto yy415;
+ case 'd': goto yy416;
+ case 'e': goto yy417;
+ case 'g': goto yy418;
+ case 'l': goto yy419;
+ case 'm': goto yy420;
+ case 'n': goto yy421;
+ case 'o': goto yy422;
+ case 'p': goto yy423;
+ case 'r': goto yy424;
+ case 's': goto yy425;
+ case 't': goto yy426;
+ case 'x': goto yy427;
default: goto yy87;
}
-yy317:
+yy320:
yych = *++cursor_;
- if (yych == 'r') goto yy423;
+ if (yych == 'r') goto yy428;
goto yy87;
-yy318:
+yy321:
yych = *++cursor_;
- if (yych == 'k') goto yy424;
+ if (yych == 'k') goto yy429;
goto yy87;
-yy319:
+yy322:
yych = *++cursor_;
- if (yych == 'l') goto yy425;
+ if (yych == 'l') goto yy430;
goto yy87;
-yy320:
+yy323:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 262 "src/wast-lexer.cc"
+#line 263 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Loop); }
-#line 2565 "src/prebuilt/wast-lexer-gen.cc"
-yy322:
- yych = *++cursor_;
- if (yych == 'r') goto yy427;
- goto yy87;
-yy323:
- yych = *++cursor_;
- if (yych == 'l') goto yy428;
- goto yy87;
-yy324:
- yych = *++cursor_;
- if (yych == '0') goto yy429;
- goto yy87;
+#line 2578 "src/prebuilt/wast-lexer-gen.cc"
yy325:
yych = *++cursor_;
- if (yych == 'e') goto yy430;
+ if (yych == 'r') goto yy432;
goto yy87;
yy326:
yych = *++cursor_;
- if (yych == 'm') goto yy431;
+ if (yych == 'l') goto yy433;
goto yy87;
yy327:
yych = *++cursor_;
- if (yych == 'e') goto yy433;
+ if (yych == '0') goto yy434;
goto yy87;
yy328:
yych = *++cursor_;
- if (yych == 's') goto yy435;
+ if (yych == 'e') goto yy435;
goto yy87;
yy329:
yych = *++cursor_;
- if (yych == 'l') goto yy436;
+ if (yych == 'm') goto yy436;
goto yy87;
yy330:
yych = *++cursor_;
- if (yych == 'r') goto yy437;
+ if (yych == 'e') goto yy438;
goto yy87;
yy331:
yych = *++cursor_;
- if (yych == 'r') goto yy438;
+ if (yych == 's') goto yy440;
goto yy87;
yy332:
yych = *++cursor_;
- if (yych == 'c') goto yy439;
+ if (yych == 'l') goto yy441;
goto yy87;
yy333:
yych = *++cursor_;
- if (yych == 'g') goto yy440;
- if (yych == 'l') goto yy441;
+ if (yych == 'r') goto yy442;
goto yy87;
yy334:
yych = *++cursor_;
- if (yych == 'e') goto yy442;
+ if (yych == 'r') goto yy443;
goto yy87;
yy335:
yych = *++cursor_;
- if (yych == 't') goto yy443;
+ if (yych == 'c') goto yy444;
goto yy87;
yy336:
yych = *++cursor_;
- if (yych == 'e') goto yy445;
+ if (yych == 'g') goto yy445;
+ if (yych == 'l') goto yy446;
goto yy87;
yy337:
yych = *++cursor_;
- if (yych == 'l') goto yy447;
+ if (yych == 'e') goto yy447;
goto yy87;
yy338:
+ yych = *++cursor_;
+ if (yych == 't') goto yy448;
+ goto yy87;
+yy339:
+ yych = *++cursor_;
+ if (yych == 'e') goto yy450;
+ goto yy87;
+yy340:
+ yych = *++cursor_;
+ if (yych == 'l') goto yy452;
+ goto yy87;
+yy341:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 260 "src/wast-lexer.cc"
+#line 261 "src/wast-lexer.cc"
{ RETURN(Then); }
-#line 2638 "src/prebuilt/wast-lexer-gen.cc"
-yy340:
+#line 2651 "src/prebuilt/wast-lexer-gen.cc"
+yy343:
yych = *++cursor_;
- if (yych == 'w') goto yy448;
+ if (yych == 'w') goto yy453;
goto yy87;
-yy341:
+yy344:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 513 "src/wast-lexer.cc"
+#line 516 "src/wast-lexer.cc"
{ RETURN(Type); }
-#line 2650 "src/prebuilt/wast-lexer-gen.cc"
-yy343:
+#line 2663 "src/prebuilt/wast-lexer-gen.cc"
+yy346:
yych = *++cursor_;
- if (yych == 'a') goto yy450;
+ if (yych == 'a') goto yy455;
goto yy87;
-yy344:
+yy347:
+ ++cursor_;
+ if ((yych = *cursor_) <= ')') {
+ if (yych <= '!') {
+ if (yych >= '!') goto yy86;
+ } else {
+ if (yych <= '"') goto yy348;
+ if (yych <= '\'') goto yy86;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych == '.') goto yy456;
+ goto yy86;
+ } else {
+ if (yych <= ';') goto yy348;
+ if (yych <= '~') goto yy86;
+ }
+ }
+yy348:
+#line 255 "src/wast-lexer.cc"
+ { RETURN_TYPE(ValueType, V128); }
+#line 2689 "src/prebuilt/wast-lexer-gen.cc"
+yy349:
++cursor_;
if ((limit_ - cursor_) < 2) FILL(2);
yych = *cursor_;
if (yych <= '@') {
if (yych <= ')') {
if (yych <= '!') {
- if (yych <= ' ') goto yy284;
+ if (yych <= ' ') goto yy287;
goto yy86;
} else {
- if (yych <= '"') goto yy284;
+ if (yych <= '"') goto yy287;
if (yych <= '\'') goto yy86;
- goto yy284;
+ goto yy287;
}
} else {
if (yych <= '9') {
if (yych <= '/') goto yy86;
- goto yy344;
+ goto yy349;
} else {
- if (yych == ';') goto yy284;
+ if (yych == ';') goto yy287;
goto yy86;
}
}
} else {
if (yych <= '_') {
if (yych <= 'O') {
- if (yych <= 'F') goto yy344;
+ if (yych <= 'F') goto yy349;
goto yy86;
} else {
- if (yych <= 'P') goto yy285;
+ if (yych <= 'P') goto yy288;
if (yych <= '^') goto yy86;
- goto yy451;
+ goto yy457;
}
} else {
if (yych <= 'o') {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy344;
+ if (yych <= 'f') goto yy349;
goto yy86;
} else {
- if (yych <= 'p') goto yy285;
+ if (yych <= 'p') goto yy288;
if (yych <= '~') goto yy86;
- goto yy284;
+ goto yy287;
}
}
}
-yy346:
+yy351:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -2719,549 +2754,553 @@ yy346:
goto yy88;
}
}
-yy347:
+yy352:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy284;
+ goto yy287;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy284;
+ if (yych <= ')') goto yy287;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy347;
+ if (yych <= '9') goto yy352;
if (yych <= ':') goto yy86;
- goto yy284;
+ goto yy287;
} else {
- if (yych == '_') goto yy346;
+ if (yych == '_') goto yy351;
if (yych <= '~') goto yy86;
- goto yy284;
+ goto yy287;
}
}
-yy349:
+yy354:
yych = *++cursor_;
- if (yych == '=') goto yy452;
+ if (yych == '=') goto yy458;
goto yy87;
-yy350:
+yy355:
yych = *++cursor_;
- if (yych == 'n') goto yy453;
+ if (yych == 'n') goto yy459;
goto yy87;
-yy351:
+yy356:
yych = *++cursor_;
- if (yych == 't') goto yy454;
+ if (yych == 't') goto yy460;
goto yy87;
-yy352:
+yy357:
yych = *++cursor_;
- if (yych == 'c') goto yy455;
+ if (yych == 'c') goto yy461;
goto yy87;
-yy353:
+yy358:
yych = *++cursor_;
- if (yych == 'y') goto yy456;
+ if (yych == 'y') goto yy462;
goto yy87;
-yy354:
+yy359:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 258 "src/wast-lexer.cc"
+#line 259 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Block); }
-#line 2774 "src/prebuilt/wast-lexer-gen.cc"
-yy356:
+#line 2809 "src/prebuilt/wast-lexer-gen.cc"
+yy361:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 264 "src/wast-lexer.cc"
+#line 265 "src/wast-lexer.cc"
{ RETURN_OPCODE0(BrIf); }
-#line 2782 "src/prebuilt/wast-lexer-gen.cc"
-yy358:
+#line 2817 "src/prebuilt/wast-lexer-gen.cc"
+yy363:
yych = *++cursor_;
- if (yych == 'b') goto yy458;
+ if (yych == 'b') goto yy464;
goto yy87;
-yy359:
+yy364:
yych = *++cursor_;
- if (yych == 'i') goto yy459;
+ if (yych == 'i') goto yy465;
goto yy87;
-yy360:
+yy365:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy361;
+ if (yych <= '"') goto yy366;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy460;
+ if (yych <= '_') goto yy466;
if (yych <= '~') goto yy86;
}
}
-yy361:
-#line 543 "src/wast-lexer.cc"
+yy366:
+#line 546 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Catch); }
-#line 2811 "src/prebuilt/wast-lexer-gen.cc"
-yy362:
+#line 2846 "src/prebuilt/wast-lexer-gen.cc"
+yy367:
yych = *++cursor_;
- if (yych == 'n') goto yy461;
+ if (yych == 'n') goto yy467;
goto yy87;
-yy363:
+yy368:
yych = *++cursor_;
- if (yych == 't') goto yy462;
+ if (yych == 't') goto yy468;
goto yy87;
-yy364:
+yy369:
yych = *++cursor_;
- if (yych == 't') goto yy464;
+ if (yych == 't') goto yy470;
goto yy87;
-yy365:
+yy370:
yych = *++cursor_;
- if (yych == 'b') goto yy466;
- if (yych == 'd') goto yy467;
+ if (yych == 'b') goto yy472;
+ if (yych == 'd') goto yy473;
goto yy87;
-yy366:
+yy371:
yych = *++cursor_;
- if (yych == 'e') goto yy468;
- if (yych == 'o') goto yy469;
+ if (yych == 'e') goto yy474;
+ if (yych == 'o') goto yy475;
goto yy87;
-yy367:
+yy372:
yych = *++cursor_;
- if (yych == 'e') goto yy470;
- if (yych == 'i') goto yy471;
+ if (yych == 'e') goto yy476;
+ if (yych == 'i') goto yy477;
goto yy87;
-yy368:
+yy373:
yych = *++cursor_;
- if (yych == 'q') goto yy472;
+ if (yych == 'q') goto yy478;
goto yy87;
-yy369:
+yy374:
yych = *++cursor_;
- if (yych == 'l') goto yy474;
+ if (yych == 'l') goto yy480;
goto yy87;
-yy370:
+yy375:
yych = *++cursor_;
- if (yych == 'e') goto yy475;
- if (yych == 't') goto yy477;
+ if (yych == 'e') goto yy481;
+ if (yych == 't') goto yy483;
goto yy87;
-yy371:
+yy376:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy479;
+ if (yych == 'e') goto yy485;
goto yy87;
} else {
- if (yych <= 'o') goto yy481;
- if (yych == 't') goto yy482;
+ if (yych <= 'o') goto yy487;
+ if (yych == 't') goto yy488;
goto yy87;
}
-yy372:
+yy377:
yych = *++cursor_;
if (yych <= 'h') {
- if (yych == 'a') goto yy484;
+ if (yych == 'a') goto yy490;
goto yy87;
} else {
- if (yych <= 'i') goto yy485;
- if (yych == 'u') goto yy486;
+ if (yych <= 'i') goto yy491;
+ if (yych == 'u') goto yy492;
goto yy87;
}
-yy373:
+yy378:
yych = *++cursor_;
- if (yych == 'e') goto yy487;
+ if (yych == 'e') goto yy493;
goto yy87;
-yy374:
+yy379:
yych = *++cursor_;
- if (yych == 'e') goto yy489;
+ if (yych == 'e') goto yy495;
goto yy87;
-yy375:
+yy380:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'q') goto yy490;
+ if (yych == 'q') goto yy496;
goto yy87;
} else {
- if (yych <= 't') goto yy491;
- if (yych <= 'u') goto yy492;
+ if (yych <= 't') goto yy497;
+ if (yych <= 'u') goto yy498;
goto yy87;
}
-yy376:
+yy381:
yych = *++cursor_;
- if (yych == 'r') goto yy493;
+ if (yych == 'r') goto yy499;
goto yy87;
-yy377:
+yy382:
yych = *++cursor_;
- if (yych == 'b') goto yy494;
- if (yych == 'd') goto yy495;
+ if (yych == 'b') goto yy500;
+ if (yych == 'd') goto yy501;
goto yy87;
-yy378:
+yy383:
yych = *++cursor_;
- if (yych == 'e') goto yy496;
- if (yych == 'o') goto yy497;
+ if (yych == 'e') goto yy502;
+ if (yych == 'o') goto yy503;
goto yy87;
-yy379:
+yy384:
yych = *++cursor_;
- if (yych == 'i') goto yy498;
+ if (yych == 'i') goto yy504;
goto yy87;
-yy380:
+yy385:
yych = *++cursor_;
- if (yych == 'q') goto yy499;
+ if (yych == 'q') goto yy505;
goto yy87;
-yy381:
+yy386:
yych = *++cursor_;
- if (yych == 'l') goto yy501;
+ if (yych == 'l') goto yy507;
goto yy87;
-yy382:
+yy387:
yych = *++cursor_;
- if (yych == 'e') goto yy502;
- if (yych == 't') goto yy504;
+ if (yych == 'e') goto yy508;
+ if (yych == 't') goto yy510;
goto yy87;
-yy383:
+yy388:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy506;
+ if (yych == 'e') goto yy512;
goto yy87;
} else {
- if (yych <= 'o') goto yy508;
- if (yych == 't') goto yy509;
+ if (yych <= 'o') goto yy514;
+ if (yych == 't') goto yy515;
goto yy87;
}
-yy384:
+yy389:
yych = *++cursor_;
if (yych <= 'h') {
- if (yych == 'a') goto yy511;
+ if (yych == 'a') goto yy517;
goto yy87;
} else {
- if (yych <= 'i') goto yy512;
- if (yych == 'u') goto yy513;
+ if (yych <= 'i') goto yy518;
+ if (yych == 'u') goto yy519;
goto yy87;
}
-yy385:
+yy390:
yych = *++cursor_;
- if (yych == 'e') goto yy514;
+ if (yych == 'e') goto yy520;
goto yy87;
-yy386:
+yy391:
yych = *++cursor_;
- if (yych == 'r') goto yy516;
+ if (yych == 'r') goto yy522;
goto yy87;
-yy387:
+yy392:
yych = *++cursor_;
- if (yych == 'e') goto yy517;
+ if (yych == 'e') goto yy523;
goto yy87;
-yy388:
+yy393:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'q') goto yy518;
+ if (yych == 'q') goto yy524;
goto yy87;
} else {
- if (yych <= 't') goto yy519;
- if (yych <= 'u') goto yy520;
+ if (yych <= 't') goto yy525;
+ if (yych <= 'u') goto yy526;
goto yy87;
}
-yy389:
+yy394:
yych = *++cursor_;
- if (yych == 'r') goto yy521;
+ if (yych == 'r') goto yy527;
goto yy87;
-yy390:
+yy395:
yych = *++cursor_;
- if (yych == 'l') goto yy522;
+ if (yych == 'l') goto yy528;
goto yy87;
-yy391:
+yy396:
yych = *++cursor_;
- if (yych == 'o') goto yy523;
+ if (yych == 'o') goto yy529;
goto yy87;
-yy392:
+yy397:
yych = *++cursor_;
- if (yych == 'l') goto yy524;
+ if (yych == 'l') goto yy530;
goto yy87;
-yy393:
+yy398:
yych = *++cursor_;
- if (yych == 'm') goto yy526;
+ if (yych == 'm') goto yy532;
goto yy87;
-yy394:
+yy399:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'd') goto yy527;
+ if (yych == 'd') goto yy533;
goto yy87;
} else {
- if (yych <= 'n') goto yy528;
- if (yych == 't') goto yy529;
+ if (yych <= 'n') goto yy534;
+ if (yych == 't') goto yy535;
goto yy87;
}
-yy395:
+yy400:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'l') goto yy530;
+ if (yych == 'l') goto yy536;
goto yy87;
} else {
- if (yych <= 'o') goto yy531;
- if (yych == 't') goto yy532;
+ if (yych <= 'o') goto yy537;
+ if (yych == 't') goto yy538;
goto yy87;
}
-yy396:
+yy401:
yych = *++cursor_;
- if (yych == 'i') goto yy533;
+ if (yych == 'i') goto yy539;
goto yy87;
-yy397:
+yy402:
yych = *++cursor_;
- if (yych == 'q') goto yy534;
- if (yych == 'x') goto yy536;
+ if (yych == 'q') goto yy540;
+ if (yych == 'x') goto yy542;
goto yy87;
-yy398:
+yy403:
yych = *++cursor_;
- if (yych == 'e') goto yy537;
- if (yych == 't') goto yy538;
+ if (yych == 'e') goto yy543;
+ if (yych == 't') goto yy544;
goto yy87;
-yy399:
+yy404:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy539;
+ if (yych == 'e') goto yy545;
goto yy87;
} else {
- if (yych <= 'o') goto yy540;
- if (yych == 't') goto yy541;
+ if (yych <= 'o') goto yy546;
+ if (yych == 't') goto yy547;
goto yy87;
}
-yy400:
+yy405:
yych = *++cursor_;
- if (yych == 'u') goto yy542;
+ if (yych == 'u') goto yy548;
goto yy87;
-yy401:
+yy406:
yych = *++cursor_;
- if (yych == 'e') goto yy543;
+ if (yych == 'e') goto yy549;
goto yy87;
-yy402:
+yy407:
yych = *++cursor_;
- if (yych == 'r') goto yy545;
+ if (yych == 'r') goto yy551;
goto yy87;
-yy403:
+yy408:
yych = *++cursor_;
- if (yych == 'o') goto yy547;
+ if (yych == 'o') goto yy553;
goto yy87;
-yy404:
+yy409:
yych = *++cursor_;
- if (yych == 'e') goto yy548;
- if (yych == 'o') goto yy549;
+ if (yych == 'e') goto yy554;
+ if (yych == 'o') goto yy555;
goto yy87;
-yy405:
+yy410:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'h') goto yy550;
+ if (yych == 'h') goto yy556;
goto yy87;
} else {
- if (yych <= 't') goto yy551;
- if (yych <= 'u') goto yy552;
+ if (yych <= 't') goto yy557;
+ if (yych <= 'u') goto yy558;
goto yy87;
}
-yy406:
+yy411:
yych = *++cursor_;
- if (yych == 'r') goto yy553;
+ if (yych == 'r') goto yy559;
goto yy87;
-yy407:
+yy412:
yych = *++cursor_;
- if (yych == 'r') goto yy554;
+ if (yych == 'r') goto yy560;
goto yy87;
-yy408:
+yy413:
yych = *++cursor_;
- if (yych == 'o') goto yy555;
+ if (yych == 'o') goto yy561;
goto yy87;
-yy409:
+yy414:
yych = *++cursor_;
if (yych <= 'm') {
- if (yych == 'd') goto yy556;
+ if (yych == 'd') goto yy562;
goto yy87;
} else {
- if (yych <= 'n') goto yy557;
- if (yych == 't') goto yy558;
+ if (yych <= 'n') goto yy563;
+ if (yych == 't') goto yy564;
goto yy87;
}
-yy410:
+yy415:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'l') goto yy559;
+ if (yych == 'l') goto yy565;
goto yy87;
} else {
- if (yych <= 'o') goto yy560;
- if (yych == 't') goto yy561;
+ if (yych <= 'o') goto yy566;
+ if (yych == 't') goto yy567;
goto yy87;
}
-yy411:
+yy416:
yych = *++cursor_;
- if (yych == 'i') goto yy562;
+ if (yych == 'i') goto yy568;
goto yy87;
-yy412:
+yy417:
yych = *++cursor_;
- if (yych == 'q') goto yy563;
- if (yych == 'x') goto yy565;
+ if (yych == 'q') goto yy569;
+ if (yych == 'x') goto yy571;
goto yy87;
-yy413:
+yy418:
yych = *++cursor_;
- if (yych == 'e') goto yy566;
- if (yych == 't') goto yy567;
+ if (yych == 'e') goto yy572;
+ if (yych == 't') goto yy573;
goto yy87;
-yy414:
+yy419:
yych = *++cursor_;
if (yych <= 'n') {
- if (yych == 'e') goto yy568;
+ if (yych == 'e') goto yy574;
goto yy87;
} else {
- if (yych <= 'o') goto yy569;
- if (yych == 't') goto yy570;
+ if (yych <= 'o') goto yy575;
+ if (yych == 't') goto yy576;
goto yy87;
}
-yy415:
+yy420:
yych = *++cursor_;
- if (yych == 'u') goto yy571;
+ if (yych == 'u') goto yy577;
goto yy87;
-yy416:
+yy421:
yych = *++cursor_;
- if (yych == 'e') goto yy572;
+ if (yych == 'e') goto yy578;
goto yy87;
-yy417:
+yy422:
yych = *++cursor_;
- if (yych == 'r') goto yy574;
+ if (yych == 'r') goto yy580;
goto yy87;
-yy418:
+yy423:
yych = *++cursor_;
- if (yych == 'o') goto yy576;
+ if (yych == 'o') goto yy582;
goto yy87;
-yy419:
+yy424:
yych = *++cursor_;
- if (yych == 'e') goto yy577;
- if (yych == 'o') goto yy578;
+ if (yych == 'e') goto yy583;
+ if (yych == 'o') goto yy584;
goto yy87;
-yy420:
+yy425:
yych = *++cursor_;
if (yych <= 's') {
- if (yych == 'h') goto yy579;
+ if (yych == 'h') goto yy585;
goto yy87;
} else {
- if (yych <= 't') goto yy580;
- if (yych <= 'u') goto yy581;
+ if (yych <= 't') goto yy586;
+ if (yych <= 'u') goto yy587;
goto yy87;
}
-yy421:
+yy426:
yych = *++cursor_;
- if (yych == 'r') goto yy582;
+ if (yych == 'r') goto yy588;
goto yy87;
-yy422:
+yy427:
yych = *++cursor_;
- if (yych == 'o') goto yy583;
+ if (yych == 'o') goto yy589;
goto yy87;
-yy423:
+yy428:
yych = *++cursor_;
- if (yych == 't') goto yy584;
+ if (yych == 't') goto yy590;
goto yy87;
-yy424:
+yy429:
yych = *++cursor_;
- if (yych == 'e') goto yy586;
+ if (yych == 'e') goto yy592;
goto yy87;
-yy425:
+yy430:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 517 "src/wast-lexer.cc"
+#line 520 "src/wast-lexer.cc"
{ RETURN(Local); }
-#line 3168 "src/prebuilt/wast-lexer-gen.cc"
-yy427:
+#line 3203 "src/prebuilt/wast-lexer-gen.cc"
+yy432:
yych = *++cursor_;
- if (yych == 'y') goto yy588;
+ if (yych == 'y') goto yy594;
goto yy87;
-yy428:
+yy433:
yych = *++cursor_;
- if (yych == 'e') goto yy590;
+ if (yych == 'e') goto yy596;
goto yy87;
-yy429:
+yy434:
yych = *++cursor_;
- if (yych == 'x') goto yy592;
+ if (yych == 'x') goto yy598;
goto yy87;
-yy430:
+yy435:
yych = *++cursor_;
- if (yych == 't') goto yy593;
+ if (yych == 't') goto yy599;
goto yy87;
-yy431:
+yy436:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 515 "src/wast-lexer.cc"
+#line 518 "src/wast-lexer.cc"
{ RETURN(Param); }
-#line 3192 "src/prebuilt/wast-lexer-gen.cc"
-yy433:
+#line 3227 "src/prebuilt/wast-lexer-gen.cc"
+yy438:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 521 "src/wast-lexer.cc"
+#line 524 "src/wast-lexer.cc"
{ RETURN(Quote); }
-#line 3200 "src/prebuilt/wast-lexer-gen.cc"
-yy435:
+#line 3235 "src/prebuilt/wast-lexer-gen.cc"
+yy440:
yych = *++cursor_;
- if (yych == 't') goto yy595;
+ if (yych == 't') goto yy601;
goto yy87;
-yy436:
+yy441:
yych = *++cursor_;
- if (yych == 't') goto yy596;
+ if (yych == 't') goto yy602;
goto yy87;
-yy437:
+yy442:
yych = *++cursor_;
- if (yych == 'o') goto yy598;
+ if (yych == 'o') goto yy604;
goto yy87;
-yy438:
+yy443:
yych = *++cursor_;
- if (yych == 'n') goto yy599;
+ if (yych == 'n') goto yy605;
goto yy87;
-yy439:
+yy444:
yych = *++cursor_;
- if (yych == 't') goto yy601;
+ if (yych == 't') goto yy607;
goto yy87;
-yy440:
+yy445:
yych = *++cursor_;
- if (yych == 'l') goto yy603;
+ if (yych == 'l') goto yy609;
goto yy87;
-yy441:
+yy446:
yych = *++cursor_;
- if (yych == 'o') goto yy604;
+ if (yych == 'o') goto yy610;
goto yy87;
-yy442:
+yy447:
yych = *++cursor_;
- if (yych == 'd') goto yy605;
+ if (yych == 'd') goto yy611;
goto yy87;
-yy443:
+yy448:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 524 "src/wast-lexer.cc"
+#line 527 "src/wast-lexer.cc"
{ RETURN(Start); }
-#line 3240 "src/prebuilt/wast-lexer-gen.cc"
-yy445:
+#line 3275 "src/prebuilt/wast-lexer-gen.cc"
+yy450:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 522 "src/wast-lexer.cc"
+#line 525 "src/wast-lexer.cc"
{ RETURN(Table); }
-#line 3248 "src/prebuilt/wast-lexer-gen.cc"
-yy447:
+#line 3283 "src/prebuilt/wast-lexer-gen.cc"
+yy452:
yych = *++cursor_;
- if (yych == 'o') goto yy607;
+ if (yych == 'o') goto yy613;
goto yy87;
-yy448:
+yy453:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 545 "src/wast-lexer.cc"
+#line 548 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Throw); }
-#line 3260 "src/prebuilt/wast-lexer-gen.cc"
-yy450:
+#line 3295 "src/prebuilt/wast-lexer-gen.cc"
+yy455:
+ yych = *++cursor_;
+ if (yych == 'c') goto yy614;
+ goto yy87;
+yy456:
yych = *++cursor_;
- if (yych == 'c') goto yy608;
+ if (yych == 'c') goto yy615;
goto yy87;
-yy451:
+yy457:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -3273,164 +3312,164 @@ yy451:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy344;
+ goto yy349;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy344;
+ goto yy349;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy344;
+ if (yych <= 'f') goto yy349;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy452:
+yy458:
yych = *++cursor_;
if (yych <= '/') goto yy87;
- if (yych <= '0') goto yy609;
- if (yych <= '9') goto yy611;
+ if (yych <= '0') goto yy616;
+ if (yych <= '9') goto yy618;
goto yy87;
-yy453:
+yy459:
yych = *++cursor_;
- if (yych == 'c') goto yy613;
+ if (yych == 'c') goto yy620;
goto yy87;
-yy454:
+yy460:
yych = *++cursor_;
- if (yych == '_') goto yy615;
+ if (yych == '_') goto yy622;
goto yy87;
-yy455:
+yy461:
yych = *++cursor_;
- if (yych == '.') goto yy616;
+ if (yych == '.') goto yy623;
goto yy87;
-yy456:
+yy462:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 520 "src/wast-lexer.cc"
+#line 523 "src/wast-lexer.cc"
{ RETURN(Bin); }
-#line 3316 "src/prebuilt/wast-lexer-gen.cc"
-yy458:
+#line 3355 "src/prebuilt/wast-lexer-gen.cc"
+yy464:
yych = *++cursor_;
- if (yych == 'l') goto yy617;
+ if (yych == 'l') goto yy624;
goto yy87;
-yy459:
+yy465:
yych = *++cursor_;
- if (yych == 'n') goto yy618;
+ if (yych == 'n') goto yy625;
goto yy87;
-yy460:
+yy466:
yych = *++cursor_;
- if (yych == 'a') goto yy619;
+ if (yych == 'a') goto yy626;
goto yy87;
-yy461:
+yy467:
yych = *++cursor_;
- if (yych == 't') goto yy620;
+ if (yych == 't') goto yy627;
goto yy87;
-yy462:
+yy468:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 530 "src/wast-lexer.cc"
+#line 533 "src/wast-lexer.cc"
{ RETURN(Except); }
-#line 3340 "src/prebuilt/wast-lexer-gen.cc"
-yy464:
+#line 3379 "src/prebuilt/wast-lexer-gen.cc"
+yy470:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 529 "src/wast-lexer.cc"
+#line 532 "src/wast-lexer.cc"
{ RETURN(Export); }
-#line 3348 "src/prebuilt/wast-lexer-gen.cc"
-yy466:
+#line 3387 "src/prebuilt/wast-lexer-gen.cc"
+yy472:
yych = *++cursor_;
- if (yych == 's') goto yy621;
+ if (yych == 's') goto yy628;
goto yy87;
-yy467:
+yy473:
yych = *++cursor_;
- if (yych == 'd') goto yy623;
+ if (yych == 'd') goto yy630;
goto yy87;
-yy468:
+yy474:
yych = *++cursor_;
- if (yych == 'i') goto yy625;
+ if (yych == 'i') goto yy632;
goto yy87;
-yy469:
+yy475:
yych = *++cursor_;
- if (yych == 'n') goto yy626;
- if (yych == 'p') goto yy627;
+ if (yych == 'n') goto yy633;
+ if (yych == 'p') goto yy634;
goto yy87;
-yy470:
+yy476:
yych = *++cursor_;
- if (yych == 'm') goto yy628;
+ if (yych == 'm') goto yy635;
goto yy87;
-yy471:
+yy477:
yych = *++cursor_;
- if (yych == 'v') goto yy629;
+ if (yych == 'v') goto yy636;
goto yy87;
-yy472:
+yy478:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 396 "src/wast-lexer.cc"
+#line 397 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Eq); }
-#line 3381 "src/prebuilt/wast-lexer-gen.cc"
-yy474:
+#line 3420 "src/prebuilt/wast-lexer-gen.cc"
+yy480:
yych = *++cursor_;
- if (yych == 'o') goto yy631;
+ if (yych == 'o') goto yy638;
goto yy87;
-yy475:
+yy481:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 406 "src/wast-lexer.cc"
+#line 407 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Ge); }
-#line 3393 "src/prebuilt/wast-lexer-gen.cc"
-yy477:
+#line 3432 "src/prebuilt/wast-lexer-gen.cc"
+yy483:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 404 "src/wast-lexer.cc"
+#line 405 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Gt); }
-#line 3401 "src/prebuilt/wast-lexer-gen.cc"
-yy479:
+#line 3440 "src/prebuilt/wast-lexer-gen.cc"
+yy485:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 402 "src/wast-lexer.cc"
+#line 403 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Le); }
-#line 3409 "src/prebuilt/wast-lexer-gen.cc"
-yy481:
+#line 3448 "src/prebuilt/wast-lexer-gen.cc"
+yy487:
yych = *++cursor_;
- if (yych == 'a') goto yy632;
+ if (yych == 'a') goto yy639;
goto yy87;
-yy482:
+yy488:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 400 "src/wast-lexer.cc"
+#line 401 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Lt); }
-#line 3421 "src/prebuilt/wast-lexer-gen.cc"
-yy484:
+#line 3460 "src/prebuilt/wast-lexer-gen.cc"
+yy490:
yych = *++cursor_;
- if (yych == 'x') goto yy633;
+ if (yych == 'x') goto yy640;
goto yy87;
-yy485:
+yy491:
yych = *++cursor_;
- if (yych == 'n') goto yy635;
+ if (yych == 'n') goto yy642;
goto yy87;
-yy486:
+yy492:
yych = *++cursor_;
- if (yych == 'l') goto yy637;
+ if (yych == 'l') goto yy644;
goto yy87;
-yy487:
+yy493:
++cursor_;
if ((yych = *cursor_) <= ':') {
if (yych <= '"') {
@@ -3441,120 +3480,120 @@ yy487:
}
} else {
if (yych <= 'a') {
- if (yych <= ';') goto yy488;
+ if (yych <= ';') goto yy494;
if (yych <= '`') goto yy86;
- goto yy639;
+ goto yy646;
} else {
- if (yych == 'g') goto yy640;
+ if (yych == 'g') goto yy647;
if (yych <= '~') goto yy86;
}
}
-yy488:
-#line 398 "src/wast-lexer.cc"
+yy494:
+#line 399 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F32Ne); }
-#line 3456 "src/prebuilt/wast-lexer-gen.cc"
-yy489:
+#line 3495 "src/prebuilt/wast-lexer-gen.cc"
+yy495:
yych = *++cursor_;
- if (yych == 'i') goto yy642;
+ if (yych == 'i') goto yy649;
goto yy87;
-yy490:
+yy496:
yych = *++cursor_;
- if (yych == 'r') goto yy643;
+ if (yych == 'r') goto yy650;
goto yy87;
-yy491:
+yy497:
yych = *++cursor_;
- if (yych == 'o') goto yy644;
+ if (yych == 'o') goto yy651;
goto yy87;
-yy492:
+yy498:
yych = *++cursor_;
- if (yych == 'b') goto yy645;
+ if (yych == 'b') goto yy652;
goto yy87;
-yy493:
+yy499:
yych = *++cursor_;
- if (yych == 'u') goto yy647;
+ if (yych == 'u') goto yy654;
goto yy87;
-yy494:
+yy500:
yych = *++cursor_;
- if (yych == 's') goto yy648;
+ if (yych == 's') goto yy655;
goto yy87;
-yy495:
+yy501:
yych = *++cursor_;
- if (yych == 'd') goto yy650;
+ if (yych == 'd') goto yy657;
goto yy87;
-yy496:
+yy502:
yych = *++cursor_;
- if (yych == 'i') goto yy652;
+ if (yych == 'i') goto yy659;
goto yy87;
-yy497:
+yy503:
yych = *++cursor_;
- if (yych == 'n') goto yy653;
- if (yych == 'p') goto yy654;
+ if (yych == 'n') goto yy660;
+ if (yych == 'p') goto yy661;
goto yy87;
-yy498:
+yy504:
yych = *++cursor_;
- if (yych == 'v') goto yy655;
+ if (yych == 'v') goto yy662;
goto yy87;
-yy499:
+yy505:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 397 "src/wast-lexer.cc"
+#line 398 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Eq); }
-#line 3505 "src/prebuilt/wast-lexer-gen.cc"
-yy501:
+#line 3544 "src/prebuilt/wast-lexer-gen.cc"
+yy507:
yych = *++cursor_;
- if (yych == 'o') goto yy657;
+ if (yych == 'o') goto yy664;
goto yy87;
-yy502:
+yy508:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 407 "src/wast-lexer.cc"
+#line 408 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Ge); }
-#line 3517 "src/prebuilt/wast-lexer-gen.cc"
-yy504:
+#line 3556 "src/prebuilt/wast-lexer-gen.cc"
+yy510:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 405 "src/wast-lexer.cc"
+#line 406 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Gt); }
-#line 3525 "src/prebuilt/wast-lexer-gen.cc"
-yy506:
+#line 3564 "src/prebuilt/wast-lexer-gen.cc"
+yy512:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 403 "src/wast-lexer.cc"
+#line 404 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Le); }
-#line 3533 "src/prebuilt/wast-lexer-gen.cc"
-yy508:
+#line 3572 "src/prebuilt/wast-lexer-gen.cc"
+yy514:
yych = *++cursor_;
- if (yych == 'a') goto yy658;
+ if (yych == 'a') goto yy665;
goto yy87;
-yy509:
+yy515:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 401 "src/wast-lexer.cc"
+#line 402 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Lt); }
-#line 3545 "src/prebuilt/wast-lexer-gen.cc"
-yy511:
+#line 3584 "src/prebuilt/wast-lexer-gen.cc"
+yy517:
yych = *++cursor_;
- if (yych == 'x') goto yy659;
+ if (yych == 'x') goto yy666;
goto yy87;
-yy512:
+yy518:
yych = *++cursor_;
- if (yych == 'n') goto yy661;
+ if (yych == 'n') goto yy668;
goto yy87;
-yy513:
+yy519:
yych = *++cursor_;
- if (yych == 'l') goto yy663;
+ if (yych == 'l') goto yy670;
goto yy87;
-yy514:
+yy520:
++cursor_;
if ((yych = *cursor_) <= ':') {
if (yych <= '"') {
@@ -3565,353 +3604,353 @@ yy514:
}
} else {
if (yych <= 'a') {
- if (yych <= ';') goto yy515;
+ if (yych <= ';') goto yy521;
if (yych <= '`') goto yy86;
- goto yy665;
+ goto yy672;
} else {
- if (yych == 'g') goto yy666;
+ if (yych == 'g') goto yy673;
if (yych <= '~') goto yy86;
}
}
-yy515:
-#line 399 "src/wast-lexer.cc"
+yy521:
+#line 400 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, F64Ne); }
-#line 3580 "src/prebuilt/wast-lexer-gen.cc"
-yy516:
+#line 3619 "src/prebuilt/wast-lexer-gen.cc"
+yy522:
yych = *++cursor_;
- if (yych == 'o') goto yy668;
+ if (yych == 'o') goto yy675;
goto yy87;
-yy517:
+yy523:
yych = *++cursor_;
- if (yych == 'i') goto yy669;
+ if (yych == 'i') goto yy676;
goto yy87;
-yy518:
+yy524:
yych = *++cursor_;
- if (yych == 'r') goto yy670;
+ if (yych == 'r') goto yy677;
goto yy87;
-yy519:
+yy525:
yych = *++cursor_;
- if (yych == 'o') goto yy671;
+ if (yych == 'o') goto yy678;
goto yy87;
-yy520:
+yy526:
yych = *++cursor_;
- if (yych == 'b') goto yy672;
+ if (yych == 'b') goto yy679;
goto yy87;
-yy521:
+yy527:
yych = *++cursor_;
- if (yych == 'u') goto yy674;
+ if (yych == 'u') goto yy681;
goto yy87;
-yy522:
+yy528:
yych = *++cursor_;
- if (yych == 'o') goto yy675;
+ if (yych == 'o') goto yy682;
goto yy87;
-yy523:
+yy529:
yych = *++cursor_;
- if (yych == 'c') goto yy676;
+ if (yych == 'c') goto yy683;
goto yy87;
-yy524:
+yy530:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 518 "src/wast-lexer.cc"
+#line 521 "src/wast-lexer.cc"
{ RETURN(Global); }
-#line 3620 "src/prebuilt/wast-lexer-gen.cc"
-yy526:
+#line 3659 "src/prebuilt/wast-lexer-gen.cc"
+yy532:
yych = *++cursor_;
- if (yych == 'e') goto yy677;
+ if (yych == 'e') goto yy684;
goto yy87;
-yy527:
+yy533:
yych = *++cursor_;
- if (yych == 'd') goto yy678;
+ if (yych == 'd') goto yy685;
goto yy87;
-yy528:
+yy534:
yych = *++cursor_;
- if (yych == 'd') goto yy680;
+ if (yych == 'd') goto yy687;
goto yy87;
-yy529:
+yy535:
yych = *++cursor_;
- if (yych == 'o') goto yy682;
+ if (yych == 'o') goto yy689;
goto yy87;
-yy530:
+yy536:
yych = *++cursor_;
- if (yych == 'z') goto yy683;
+ if (yych == 'z') goto yy690;
goto yy87;
-yy531:
+yy537:
yych = *++cursor_;
- if (yych == 'n') goto yy685;
+ if (yych == 'n') goto yy692;
goto yy87;
-yy532:
+yy538:
yych = *++cursor_;
- if (yych == 'z') goto yy686;
+ if (yych == 'z') goto yy693;
goto yy87;
-yy533:
+yy539:
yych = *++cursor_;
- if (yych == 'v') goto yy688;
+ if (yych == 'v') goto yy695;
goto yy87;
-yy534:
+yy540:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy535;
+ if (yych <= '"') goto yy541;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= 'y') {
if (yych != ';') goto yy86;
} else {
- if (yych <= 'z') goto yy689;
+ if (yych <= 'z') goto yy696;
if (yych <= '~') goto yy86;
}
}
-yy535:
-#line 376 "src/wast-lexer.cc"
+yy541:
+#line 377 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32Eq); }
-#line 3673 "src/prebuilt/wast-lexer-gen.cc"
-yy536:
+#line 3712 "src/prebuilt/wast-lexer-gen.cc"
+yy542:
yych = *++cursor_;
- if (yych == 't') goto yy691;
+ if (yych == 't') goto yy698;
goto yy87;
-yy537:
+yy543:
yych = *++cursor_;
- if (yych == '_') goto yy692;
+ if (yych == '_') goto yy699;
goto yy87;
-yy538:
+yy544:
yych = *++cursor_;
- if (yych == '_') goto yy693;
+ if (yych == '_') goto yy700;
goto yy87;
-yy539:
+yy545:
yych = *++cursor_;
- if (yych == '_') goto yy694;
+ if (yych == '_') goto yy701;
goto yy87;
-yy540:
+yy546:
yych = *++cursor_;
- if (yych == 'a') goto yy695;
+ if (yych == 'a') goto yy702;
goto yy87;
-yy541:
+yy547:
yych = *++cursor_;
- if (yych == '_') goto yy696;
+ if (yych == '_') goto yy703;
goto yy87;
-yy542:
+yy548:
yych = *++cursor_;
- if (yych == 'l') goto yy697;
+ if (yych == 'l') goto yy704;
goto yy87;
-yy543:
+yy549:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 378 "src/wast-lexer.cc"
+#line 379 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32Ne); }
-#line 3709 "src/prebuilt/wast-lexer-gen.cc"
-yy545:
+#line 3748 "src/prebuilt/wast-lexer-gen.cc"
+yy551:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 348 "src/wast-lexer.cc"
+#line 349 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Or); }
-#line 3717 "src/prebuilt/wast-lexer-gen.cc"
-yy547:
+#line 3756 "src/prebuilt/wast-lexer-gen.cc"
+yy553:
yych = *++cursor_;
- if (yych == 'p') goto yy699;
+ if (yych == 'p') goto yy706;
goto yy87;
-yy548:
+yy554:
yych = *++cursor_;
- if (yych == 'i') goto yy700;
- if (yych == 'm') goto yy701;
+ if (yych == 'i') goto yy707;
+ if (yych == 'm') goto yy708;
goto yy87;
-yy549:
+yy555:
yych = *++cursor_;
- if (yych == 't') goto yy702;
+ if (yych == 't') goto yy709;
goto yy87;
-yy550:
+yy556:
yych = *++cursor_;
- if (yych == 'l') goto yy703;
- if (yych == 'r') goto yy705;
+ if (yych == 'l') goto yy710;
+ if (yych == 'r') goto yy712;
goto yy87;
-yy551:
+yy557:
yych = *++cursor_;
- if (yych == 'o') goto yy706;
+ if (yych == 'o') goto yy713;
goto yy87;
-yy552:
+yy558:
yych = *++cursor_;
- if (yych == 'b') goto yy707;
+ if (yych == 'b') goto yy714;
goto yy87;
-yy553:
+yy559:
yych = *++cursor_;
- if (yych == 'u') goto yy709;
+ if (yych == 'u') goto yy716;
goto yy87;
-yy554:
+yy560:
yych = *++cursor_;
- if (yych == 'a') goto yy710;
+ if (yych == 'a') goto yy717;
goto yy87;
-yy555:
+yy561:
yych = *++cursor_;
- if (yych == 'r') goto yy711;
+ if (yych == 'r') goto yy718;
goto yy87;
-yy556:
+yy562:
yych = *++cursor_;
- if (yych == 'd') goto yy713;
+ if (yych == 'd') goto yy720;
goto yy87;
-yy557:
+yy563:
yych = *++cursor_;
- if (yych == 'd') goto yy715;
+ if (yych == 'd') goto yy722;
goto yy87;
-yy558:
+yy564:
yych = *++cursor_;
- if (yych == 'o') goto yy717;
+ if (yych == 'o') goto yy724;
goto yy87;
-yy559:
+yy565:
yych = *++cursor_;
- if (yych == 'z') goto yy718;
+ if (yych == 'z') goto yy725;
goto yy87;
-yy560:
+yy566:
yych = *++cursor_;
- if (yych == 'n') goto yy720;
+ if (yych == 'n') goto yy727;
goto yy87;
-yy561:
+yy567:
yych = *++cursor_;
- if (yych == 'z') goto yy721;
+ if (yych == 'z') goto yy728;
goto yy87;
-yy562:
+yy568:
yych = *++cursor_;
- if (yych == 'v') goto yy723;
+ if (yych == 'v') goto yy730;
goto yy87;
-yy563:
+yy569:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy564;
+ if (yych <= '"') goto yy570;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= 'y') {
if (yych != ';') goto yy86;
} else {
- if (yych <= 'z') goto yy724;
+ if (yych <= 'z') goto yy731;
if (yych <= '~') goto yy86;
}
}
-yy564:
-#line 377 "src/wast-lexer.cc"
+yy570:
+#line 378 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64Eq); }
-#line 3804 "src/prebuilt/wast-lexer-gen.cc"
-yy565:
+#line 3843 "src/prebuilt/wast-lexer-gen.cc"
+yy571:
yych = *++cursor_;
- if (yych == 't') goto yy726;
+ if (yych == 't') goto yy733;
goto yy87;
-yy566:
+yy572:
yych = *++cursor_;
- if (yych == '_') goto yy727;
+ if (yych == '_') goto yy734;
goto yy87;
-yy567:
+yy573:
yych = *++cursor_;
- if (yych == '_') goto yy728;
+ if (yych == '_') goto yy735;
goto yy87;
-yy568:
+yy574:
yych = *++cursor_;
- if (yych == '_') goto yy729;
+ if (yych == '_') goto yy736;
goto yy87;
-yy569:
+yy575:
yych = *++cursor_;
- if (yych == 'a') goto yy730;
+ if (yych == 'a') goto yy737;
goto yy87;
-yy570:
+yy576:
yych = *++cursor_;
- if (yych == '_') goto yy731;
+ if (yych == '_') goto yy738;
goto yy87;
-yy571:
+yy577:
yych = *++cursor_;
- if (yych == 'l') goto yy732;
+ if (yych == 'l') goto yy739;
goto yy87;
-yy572:
+yy578:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 379 "src/wast-lexer.cc"
+#line 380 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64Ne); }
-#line 3840 "src/prebuilt/wast-lexer-gen.cc"
-yy574:
+#line 3879 "src/prebuilt/wast-lexer-gen.cc"
+yy580:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 349 "src/wast-lexer.cc"
+#line 350 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Or); }
-#line 3848 "src/prebuilt/wast-lexer-gen.cc"
-yy576:
+#line 3887 "src/prebuilt/wast-lexer-gen.cc"
+yy582:
yych = *++cursor_;
- if (yych == 'p') goto yy734;
+ if (yych == 'p') goto yy741;
goto yy87;
-yy577:
+yy583:
yych = *++cursor_;
- if (yych == 'i') goto yy735;
- if (yych == 'm') goto yy736;
+ if (yych == 'i') goto yy742;
+ if (yych == 'm') goto yy743;
goto yy87;
-yy578:
+yy584:
yych = *++cursor_;
- if (yych == 't') goto yy737;
+ if (yych == 't') goto yy744;
goto yy87;
-yy579:
+yy585:
yych = *++cursor_;
- if (yych == 'l') goto yy738;
- if (yych == 'r') goto yy740;
+ if (yych == 'l') goto yy745;
+ if (yych == 'r') goto yy747;
goto yy87;
-yy580:
+yy586:
yych = *++cursor_;
- if (yych == 'o') goto yy741;
+ if (yych == 'o') goto yy748;
goto yy87;
-yy581:
+yy587:
yych = *++cursor_;
- if (yych == 'b') goto yy742;
+ if (yych == 'b') goto yy749;
goto yy87;
-yy582:
+yy588:
yych = *++cursor_;
- if (yych == 'u') goto yy744;
+ if (yych == 'u') goto yy751;
goto yy87;
-yy583:
+yy589:
yych = *++cursor_;
- if (yych == 'r') goto yy745;
+ if (yych == 'r') goto yy752;
goto yy87;
-yy584:
+yy590:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 528 "src/wast-lexer.cc"
+#line 531 "src/wast-lexer.cc"
{ RETURN(Import); }
-#line 3890 "src/prebuilt/wast-lexer-gen.cc"
-yy586:
+#line 3929 "src/prebuilt/wast-lexer-gen.cc"
+yy592:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 532 "src/wast-lexer.cc"
+#line 535 "src/wast-lexer.cc"
{ RETURN(Invoke); }
-#line 3898 "src/prebuilt/wast-lexer-gen.cc"
-yy588:
+#line 3937 "src/prebuilt/wast-lexer-gen.cc"
+yy594:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 523 "src/wast-lexer.cc"
+#line 526 "src/wast-lexer.cc"
{ RETURN(Memory); }
-#line 3906 "src/prebuilt/wast-lexer-gen.cc"
-yy590:
+#line 3945 "src/prebuilt/wast-lexer-gen.cc"
+yy596:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 519 "src/wast-lexer.cc"
+#line 522 "src/wast-lexer.cc"
{ RETURN(Module); }
-#line 3914 "src/prebuilt/wast-lexer-gen.cc"
-yy592:
+#line 3953 "src/prebuilt/wast-lexer-gen.cc"
+yy598:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -3923,768 +3962,776 @@ yy592:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy747;
+ goto yy754;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy747;
+ goto yy754;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy747;
+ if (yych <= 'f') goto yy754;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy593:
+yy599:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy594;
+ if (yych <= '"') goto yy600;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '<') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '=') goto yy749;
+ if (yych <= '=') goto yy756;
if (yych <= '~') goto yy86;
}
}
-yy594:
-#line 527 "src/wast-lexer.cc"
+yy600:
+#line 530 "src/wast-lexer.cc"
{ RETURN(Offset); }
-#line 3961 "src/prebuilt/wast-lexer-gen.cc"
-yy595:
+#line 4000 "src/prebuilt/wast-lexer-gen.cc"
+yy601:
yych = *++cursor_;
- if (yych == 'e') goto yy750;
+ if (yych == 'e') goto yy757;
goto yy87;
-yy596:
+yy602:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 516 "src/wast-lexer.cc"
+#line 519 "src/wast-lexer.cc"
{ RETURN(Result); }
-#line 3973 "src/prebuilt/wast-lexer-gen.cc"
-yy598:
+#line 4012 "src/prebuilt/wast-lexer-gen.cc"
+yy604:
yych = *++cursor_;
- if (yych == 'w') goto yy751;
+ if (yych == 'w') goto yy758;
goto yy87;
-yy599:
+yy605:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 270 "src/wast-lexer.cc"
+#line 271 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Return); }
-#line 3985 "src/prebuilt/wast-lexer-gen.cc"
-yy601:
+#line 4024 "src/prebuilt/wast-lexer-gen.cc"
+yy607:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 441 "src/wast-lexer.cc"
+#line 442 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Select); }
-#line 3993 "src/prebuilt/wast-lexer-gen.cc"
-yy603:
+#line 4032 "src/prebuilt/wast-lexer-gen.cc"
+yy609:
yych = *++cursor_;
- if (yych == 'o') goto yy753;
+ if (yych == 'o') goto yy760;
goto yy87;
-yy604:
+yy610:
yych = *++cursor_;
- if (yych == 'c') goto yy754;
+ if (yych == 'c') goto yy761;
goto yy87;
-yy605:
+yy611:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 548 "src/wast-lexer.cc"
+#line 551 "src/wast-lexer.cc"
{ RETURN(Shared); }
-#line 4009 "src/prebuilt/wast-lexer-gen.cc"
-yy607:
+#line 4048 "src/prebuilt/wast-lexer-gen.cc"
+yy613:
yych = *++cursor_;
- if (yych == 'c') goto yy755;
+ if (yych == 'c') goto yy762;
goto yy87;
-yy608:
+yy614:
yych = *++cursor_;
- if (yych == 'h') goto yy756;
+ if (yych == 'h') goto yy763;
goto yy87;
-yy609:
+yy615:
+ yych = *++cursor_;
+ if (yych == 'o') goto yy764;
+ goto yy87;
+yy616:
++cursor_;
if ((yych = *cursor_) <= '9') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy610;
+ if (yych <= ')') goto yy617;
if (yych <= '/') goto yy86;
- goto yy611;
+ goto yy618;
}
} else {
if (yych <= '_') {
- if (yych == ';') goto yy610;
+ if (yych == ';') goto yy617;
if (yych <= '^') goto yy86;
- goto yy757;
+ goto yy765;
} else {
- if (yych == 'x') goto yy758;
+ if (yych == 'x') goto yy766;
if (yych <= '~') goto yy86;
}
}
-yy610:
-#line 300 "src/wast-lexer.cc"
+yy617:
+#line 301 "src/wast-lexer.cc"
{ RETURN_TEXT_AT(AlignEqNat, 6); }
-#line 4042 "src/prebuilt/wast-lexer-gen.cc"
-yy611:
+#line 4085 "src/prebuilt/wast-lexer-gen.cc"
+yy618:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy610;
+ goto yy617;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy610;
+ if (yych <= ')') goto yy617;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy611;
+ if (yych <= '9') goto yy618;
if (yych <= ':') goto yy86;
- goto yy610;
+ goto yy617;
} else {
- if (yych == '_') goto yy757;
+ if (yych == '_') goto yy765;
if (yych <= '~') goto yy86;
- goto yy610;
+ goto yy617;
}
}
-yy613:
+yy620:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 255 "src/wast-lexer.cc"
+#line 256 "src/wast-lexer.cc"
{ RETURN(Anyfunc); }
-#line 4074 "src/prebuilt/wast-lexer-gen.cc"
-yy615:
+#line 4117 "src/prebuilt/wast-lexer-gen.cc"
+yy622:
yych = *++cursor_;
switch (yych) {
- case 'e': goto yy759;
- case 'i': goto yy760;
- case 'm': goto yy761;
- case 'r': goto yy762;
- case 't': goto yy763;
- case 'u': goto yy764;
+ case 'e': goto yy767;
+ case 'i': goto yy768;
+ case 'm': goto yy769;
+ case 'r': goto yy770;
+ case 't': goto yy771;
+ case 'u': goto yy772;
default: goto yy87;
}
-yy616:
+yy623:
yych = *++cursor_;
- if (yych == 'w') goto yy765;
+ if (yych == 'w') goto yy773;
goto yy87;
-yy617:
+yy624:
yych = *++cursor_;
- if (yych == 'e') goto yy766;
+ if (yych == 'e') goto yy774;
goto yy87;
-yy618:
+yy625:
yych = *++cursor_;
- if (yych == 'd') goto yy768;
+ if (yych == 'd') goto yy776;
goto yy87;
-yy619:
+yy626:
yych = *++cursor_;
- if (yych == 'l') goto yy769;
+ if (yych == 'l') goto yy777;
goto yy87;
-yy620:
+yy627:
yych = *++cursor_;
- if (yych == '_') goto yy770;
+ if (yych == '_') goto yy778;
goto yy87;
-yy621:
+yy628:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 315 "src/wast-lexer.cc"
+#line 316 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Abs); }
-#line 4113 "src/prebuilt/wast-lexer-gen.cc"
-yy623:
+#line 4156 "src/prebuilt/wast-lexer-gen.cc"
+yy630:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 362 "src/wast-lexer.cc"
+#line 363 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Add); }
-#line 4121 "src/prebuilt/wast-lexer-gen.cc"
-yy625:
+#line 4164 "src/prebuilt/wast-lexer-gen.cc"
+yy632:
yych = *++cursor_;
- if (yych == 'l') goto yy771;
+ if (yych == 'l') goto yy779;
goto yy87;
-yy626:
+yy633:
yych = *++cursor_;
- if (yych == 's') goto yy773;
- if (yych == 'v') goto yy774;
+ if (yych == 's') goto yy781;
+ if (yych == 'v') goto yy782;
goto yy87;
-yy627:
+yy634:
yych = *++cursor_;
- if (yych == 'y') goto yy775;
+ if (yych == 'y') goto yy783;
goto yy87;
-yy628:
+yy635:
yych = *++cursor_;
- if (yych == 'o') goto yy776;
+ if (yych == 'o') goto yy784;
goto yy87;
-yy629:
+yy636:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 368 "src/wast-lexer.cc"
+#line 369 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Div); }
-#line 4146 "src/prebuilt/wast-lexer-gen.cc"
-yy631:
+#line 4189 "src/prebuilt/wast-lexer-gen.cc"
+yy638:
yych = *++cursor_;
- if (yych == 'o') goto yy777;
+ if (yych == 'o') goto yy785;
goto yy87;
-yy632:
+yy639:
yych = *++cursor_;
- if (yych == 'd') goto yy778;
+ if (yych == 'd') goto yy786;
goto yy87;
-yy633:
+yy640:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 372 "src/wast-lexer.cc"
+#line 373 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Max); }
-#line 4162 "src/prebuilt/wast-lexer-gen.cc"
-yy635:
+#line 4205 "src/prebuilt/wast-lexer-gen.cc"
+yy642:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 370 "src/wast-lexer.cc"
+#line 371 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Min); }
-#line 4170 "src/prebuilt/wast-lexer-gen.cc"
-yy637:
+#line 4213 "src/prebuilt/wast-lexer-gen.cc"
+yy644:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 366 "src/wast-lexer.cc"
+#line 367 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Mul); }
-#line 4178 "src/prebuilt/wast-lexer-gen.cc"
-yy639:
+#line 4221 "src/prebuilt/wast-lexer-gen.cc"
+yy646:
yych = *++cursor_;
- if (yych == 'r') goto yy780;
+ if (yych == 'r') goto yy788;
goto yy87;
-yy640:
+yy647:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 313 "src/wast-lexer.cc"
+#line 314 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Neg); }
-#line 4190 "src/prebuilt/wast-lexer-gen.cc"
-yy642:
+#line 4233 "src/prebuilt/wast-lexer-gen.cc"
+yy649:
yych = *++cursor_;
- if (yych == 'n') goto yy781;
+ if (yych == 'n') goto yy789;
goto yy87;
-yy643:
+yy650:
yych = *++cursor_;
- if (yych == 't') goto yy782;
+ if (yych == 't') goto yy790;
goto yy87;
-yy644:
+yy651:
yych = *++cursor_;
- if (yych == 'r') goto yy784;
+ if (yych == 'r') goto yy792;
goto yy87;
-yy645:
+yy652:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 364 "src/wast-lexer.cc"
+#line 365 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Sub); }
-#line 4210 "src/prebuilt/wast-lexer-gen.cc"
-yy647:
+#line 4253 "src/prebuilt/wast-lexer-gen.cc"
+yy654:
yych = *++cursor_;
- if (yych == 'n') goto yy785;
+ if (yych == 'n') goto yy793;
goto yy87;
-yy648:
+yy655:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 316 "src/wast-lexer.cc"
+#line 317 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Abs); }
-#line 4222 "src/prebuilt/wast-lexer-gen.cc"
-yy650:
+#line 4265 "src/prebuilt/wast-lexer-gen.cc"
+yy657:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 363 "src/wast-lexer.cc"
+#line 364 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Add); }
-#line 4230 "src/prebuilt/wast-lexer-gen.cc"
-yy652:
+#line 4273 "src/prebuilt/wast-lexer-gen.cc"
+yy659:
yych = *++cursor_;
- if (yych == 'l') goto yy786;
+ if (yych == 'l') goto yy794;
goto yy87;
-yy653:
+yy660:
yych = *++cursor_;
- if (yych == 's') goto yy788;
- if (yych == 'v') goto yy789;
+ if (yych == 's') goto yy796;
+ if (yych == 'v') goto yy797;
goto yy87;
-yy654:
+yy661:
yych = *++cursor_;
- if (yych == 'y') goto yy790;
+ if (yych == 'y') goto yy798;
goto yy87;
-yy655:
+yy662:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 369 "src/wast-lexer.cc"
+#line 370 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Div); }
-#line 4251 "src/prebuilt/wast-lexer-gen.cc"
-yy657:
+#line 4294 "src/prebuilt/wast-lexer-gen.cc"
+yy664:
yych = *++cursor_;
- if (yych == 'o') goto yy791;
+ if (yych == 'o') goto yy799;
goto yy87;
-yy658:
+yy665:
yych = *++cursor_;
- if (yych == 'd') goto yy792;
+ if (yych == 'd') goto yy800;
goto yy87;
-yy659:
+yy666:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 373 "src/wast-lexer.cc"
+#line 374 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Max); }
-#line 4267 "src/prebuilt/wast-lexer-gen.cc"
-yy661:
+#line 4310 "src/prebuilt/wast-lexer-gen.cc"
+yy668:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 371 "src/wast-lexer.cc"
+#line 372 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Min); }
-#line 4275 "src/prebuilt/wast-lexer-gen.cc"
-yy663:
+#line 4318 "src/prebuilt/wast-lexer-gen.cc"
+yy670:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 367 "src/wast-lexer.cc"
+#line 368 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Mul); }
-#line 4283 "src/prebuilt/wast-lexer-gen.cc"
-yy665:
+#line 4326 "src/prebuilt/wast-lexer-gen.cc"
+yy672:
yych = *++cursor_;
- if (yych == 'r') goto yy794;
+ if (yych == 'r') goto yy802;
goto yy87;
-yy666:
+yy673:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 314 "src/wast-lexer.cc"
+#line 315 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Neg); }
-#line 4295 "src/prebuilt/wast-lexer-gen.cc"
-yy668:
+#line 4338 "src/prebuilt/wast-lexer-gen.cc"
+yy675:
yych = *++cursor_;
- if (yych == 'm') goto yy795;
+ if (yych == 'm') goto yy803;
goto yy87;
-yy669:
+yy676:
yych = *++cursor_;
- if (yych == 'n') goto yy796;
+ if (yych == 'n') goto yy804;
goto yy87;
-yy670:
+yy677:
yych = *++cursor_;
- if (yych == 't') goto yy797;
+ if (yych == 't') goto yy805;
goto yy87;
-yy671:
+yy678:
yych = *++cursor_;
- if (yych == 'r') goto yy799;
+ if (yych == 'r') goto yy807;
goto yy87;
-yy672:
+yy679:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 365 "src/wast-lexer.cc"
+#line 366 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Sub); }
-#line 4319 "src/prebuilt/wast-lexer-gen.cc"
-yy674:
+#line 4362 "src/prebuilt/wast-lexer-gen.cc"
+yy681:
yych = *++cursor_;
- if (yych == 'n') goto yy800;
+ if (yych == 'n') goto yy808;
goto yy87;
-yy675:
+yy682:
yych = *++cursor_;
- if (yych == 'b') goto yy801;
+ if (yych == 'b') goto yy809;
goto yy87;
-yy676:
+yy683:
yych = *++cursor_;
- if (yych == 'a') goto yy802;
+ if (yych == 'a') goto yy810;
goto yy87;
-yy677:
+yy684:
yych = *++cursor_;
- if (yych == 'm') goto yy803;
+ if (yych == 'm') goto yy811;
goto yy87;
-yy678:
+yy685:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 332 "src/wast-lexer.cc"
+#line 333 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Add); }
-#line 4343 "src/prebuilt/wast-lexer-gen.cc"
-yy680:
+#line 4386 "src/prebuilt/wast-lexer-gen.cc"
+yy687:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 346 "src/wast-lexer.cc"
+#line 347 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32And); }
-#line 4351 "src/prebuilt/wast-lexer-gen.cc"
-yy682:
+#line 4394 "src/prebuilt/wast-lexer-gen.cc"
+yy689:
yych = *++cursor_;
- if (yych == 'm') goto yy804;
+ if (yych == 'm') goto yy812;
goto yy87;
-yy683:
+yy690:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 307 "src/wast-lexer.cc"
+#line 308 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Clz); }
-#line 4363 "src/prebuilt/wast-lexer-gen.cc"
-yy685:
+#line 4406 "src/prebuilt/wast-lexer-gen.cc"
+yy692:
yych = *++cursor_;
- if (yych == 's') goto yy805;
+ if (yych == 's') goto yy813;
goto yy87;
-yy686:
+yy693:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 309 "src/wast-lexer.cc"
+#line 310 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Ctz); }
-#line 4375 "src/prebuilt/wast-lexer-gen.cc"
-yy688:
+#line 4418 "src/prebuilt/wast-lexer-gen.cc"
+yy695:
yych = *++cursor_;
- if (yych == '_') goto yy806;
+ if (yych == '_') goto yy814;
goto yy87;
-yy689:
+yy696:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 305 "src/wast-lexer.cc"
+#line 306 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32Eqz); }
-#line 4387 "src/prebuilt/wast-lexer-gen.cc"
-yy691:
+#line 4430 "src/prebuilt/wast-lexer-gen.cc"
+yy698:
yych = *++cursor_;
- if (yych == 'e') goto yy807;
+ if (yych == 'e') goto yy815;
goto yy87;
-yy692:
+yy699:
yych = *++cursor_;
- if (yych == 's') goto yy808;
- if (yych == 'u') goto yy810;
+ if (yych == 's') goto yy816;
+ if (yych == 'u') goto yy818;
goto yy87;
-yy693:
+yy700:
yych = *++cursor_;
- if (yych == 's') goto yy812;
- if (yych == 'u') goto yy814;
+ if (yych == 's') goto yy820;
+ if (yych == 'u') goto yy822;
goto yy87;
-yy694:
+yy701:
yych = *++cursor_;
- if (yych == 's') goto yy816;
- if (yych == 'u') goto yy818;
+ if (yych == 's') goto yy824;
+ if (yych == 'u') goto yy826;
goto yy87;
-yy695:
+yy702:
yych = *++cursor_;
- if (yych == 'd') goto yy820;
+ if (yych == 'd') goto yy828;
goto yy87;
-yy696:
+yy703:
yych = *++cursor_;
- if (yych == 's') goto yy822;
- if (yych == 'u') goto yy824;
+ if (yych == 's') goto yy830;
+ if (yych == 'u') goto yy832;
goto yy87;
-yy697:
+yy704:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 336 "src/wast-lexer.cc"
+#line 337 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Mul); }
-#line 4423 "src/prebuilt/wast-lexer-gen.cc"
-yy699:
+#line 4466 "src/prebuilt/wast-lexer-gen.cc"
+yy706:
yych = *++cursor_;
- if (yych == 'c') goto yy826;
+ if (yych == 'c') goto yy834;
goto yy87;
-yy700:
+yy707:
yych = *++cursor_;
- if (yych == 'n') goto yy827;
+ if (yych == 'n') goto yy835;
goto yy87;
-yy701:
+yy708:
yych = *++cursor_;
- if (yych == '_') goto yy828;
+ if (yych == '_') goto yy836;
goto yy87;
-yy702:
+yy709:
yych = *++cursor_;
- if (yych == 'l') goto yy829;
- if (yych == 'r') goto yy831;
+ if (yych == 'l') goto yy837;
+ if (yych == 'r') goto yy839;
goto yy87;
-yy703:
+yy710:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 352 "src/wast-lexer.cc"
+#line 353 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Shl); }
-#line 4448 "src/prebuilt/wast-lexer-gen.cc"
-yy705:
+#line 4491 "src/prebuilt/wast-lexer-gen.cc"
+yy712:
yych = *++cursor_;
- if (yych == '_') goto yy833;
+ if (yych == '_') goto yy841;
goto yy87;
-yy706:
+yy713:
yych = *++cursor_;
- if (yych == 'r') goto yy834;
+ if (yych == 'r') goto yy842;
goto yy87;
-yy707:
+yy714:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 334 "src/wast-lexer.cc"
+#line 335 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Sub); }
-#line 4464 "src/prebuilt/wast-lexer-gen.cc"
-yy709:
+#line 4507 "src/prebuilt/wast-lexer-gen.cc"
+yy716:
yych = *++cursor_;
- if (yych == 'n') goto yy835;
+ if (yych == 'n') goto yy843;
goto yy87;
-yy710:
+yy717:
yych = *++cursor_;
- if (yych == 'p') goto yy836;
+ if (yych == 'p') goto yy844;
goto yy87;
-yy711:
+yy718:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 350 "src/wast-lexer.cc"
+#line 351 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Xor); }
-#line 4480 "src/prebuilt/wast-lexer-gen.cc"
-yy713:
+#line 4523 "src/prebuilt/wast-lexer-gen.cc"
+yy720:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 333 "src/wast-lexer.cc"
+#line 334 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Add); }
-#line 4488 "src/prebuilt/wast-lexer-gen.cc"
-yy715:
+#line 4531 "src/prebuilt/wast-lexer-gen.cc"
+yy722:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 347 "src/wast-lexer.cc"
+#line 348 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64And); }
-#line 4496 "src/prebuilt/wast-lexer-gen.cc"
-yy717:
+#line 4539 "src/prebuilt/wast-lexer-gen.cc"
+yy724:
yych = *++cursor_;
- if (yych == 'm') goto yy837;
+ if (yych == 'm') goto yy845;
goto yy87;
-yy718:
+yy725:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 308 "src/wast-lexer.cc"
+#line 309 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Clz); }
-#line 4508 "src/prebuilt/wast-lexer-gen.cc"
-yy720:
+#line 4551 "src/prebuilt/wast-lexer-gen.cc"
+yy727:
yych = *++cursor_;
- if (yych == 's') goto yy838;
+ if (yych == 's') goto yy846;
goto yy87;
-yy721:
+yy728:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 310 "src/wast-lexer.cc"
+#line 311 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Ctz); }
-#line 4520 "src/prebuilt/wast-lexer-gen.cc"
-yy723:
+#line 4563 "src/prebuilt/wast-lexer-gen.cc"
+yy730:
yych = *++cursor_;
- if (yych == '_') goto yy839;
+ if (yych == '_') goto yy847;
goto yy87;
-yy724:
+yy731:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 306 "src/wast-lexer.cc"
+#line 307 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64Eqz); }
-#line 4532 "src/prebuilt/wast-lexer-gen.cc"
-yy726:
+#line 4575 "src/prebuilt/wast-lexer-gen.cc"
+yy733:
yych = *++cursor_;
- if (yych == 'e') goto yy840;
+ if (yych == 'e') goto yy848;
goto yy87;
-yy727:
+yy734:
yych = *++cursor_;
- if (yych == 's') goto yy841;
- if (yych == 'u') goto yy843;
+ if (yych == 's') goto yy849;
+ if (yych == 'u') goto yy851;
goto yy87;
-yy728:
+yy735:
yych = *++cursor_;
- if (yych == 's') goto yy845;
- if (yych == 'u') goto yy847;
+ if (yych == 's') goto yy853;
+ if (yych == 'u') goto yy855;
goto yy87;
-yy729:
+yy736:
yych = *++cursor_;
- if (yych == 's') goto yy849;
- if (yych == 'u') goto yy851;
+ if (yych == 's') goto yy857;
+ if (yych == 'u') goto yy859;
goto yy87;
-yy730:
+yy737:
yych = *++cursor_;
- if (yych == 'd') goto yy853;
+ if (yych == 'd') goto yy861;
goto yy87;
-yy731:
+yy738:
yych = *++cursor_;
- if (yych == 's') goto yy855;
- if (yych == 'u') goto yy857;
+ if (yych == 's') goto yy863;
+ if (yych == 'u') goto yy865;
goto yy87;
-yy732:
+yy739:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 337 "src/wast-lexer.cc"
+#line 338 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Mul); }
-#line 4568 "src/prebuilt/wast-lexer-gen.cc"
-yy734:
+#line 4611 "src/prebuilt/wast-lexer-gen.cc"
+yy741:
yych = *++cursor_;
- if (yych == 'c') goto yy859;
+ if (yych == 'c') goto yy867;
goto yy87;
-yy735:
+yy742:
yych = *++cursor_;
- if (yych == 'n') goto yy860;
+ if (yych == 'n') goto yy868;
goto yy87;
-yy736:
+yy743:
yych = *++cursor_;
- if (yych == '_') goto yy861;
+ if (yych == '_') goto yy869;
goto yy87;
-yy737:
+yy744:
yych = *++cursor_;
- if (yych == 'l') goto yy862;
- if (yych == 'r') goto yy864;
+ if (yych == 'l') goto yy870;
+ if (yych == 'r') goto yy872;
goto yy87;
-yy738:
+yy745:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 353 "src/wast-lexer.cc"
+#line 354 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Shl); }
-#line 4593 "src/prebuilt/wast-lexer-gen.cc"
-yy740:
+#line 4636 "src/prebuilt/wast-lexer-gen.cc"
+yy747:
yych = *++cursor_;
- if (yych == '_') goto yy866;
+ if (yych == '_') goto yy874;
goto yy87;
-yy741:
+yy748:
yych = *++cursor_;
- if (yych == 'r') goto yy867;
+ if (yych == 'r') goto yy875;
goto yy87;
-yy742:
+yy749:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 335 "src/wast-lexer.cc"
+#line 336 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Sub); }
-#line 4609 "src/prebuilt/wast-lexer-gen.cc"
-yy744:
+#line 4652 "src/prebuilt/wast-lexer-gen.cc"
+yy751:
yych = *++cursor_;
- if (yych == 'n') goto yy868;
+ if (yych == 'n') goto yy876;
goto yy87;
-yy745:
+yy752:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 351 "src/wast-lexer.cc"
+#line 352 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Xor); }
-#line 4621 "src/prebuilt/wast-lexer-gen.cc"
-yy747:
+#line 4664 "src/prebuilt/wast-lexer-gen.cc"
+yy754:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy259;
+ if (yych <= '"') goto yy261;
goto yy86;
} else {
- if (yych <= ')') goto yy259;
+ if (yych <= ')') goto yy261;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy747;
+ if (yych <= '9') goto yy754;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy259;
+ if (yych <= ';') goto yy261;
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy747;
+ if (yych <= 'F') goto yy754;
goto yy86;
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy592;
+ if (yych <= '_') goto yy598;
goto yy86;
} else {
- if (yych <= 'f') goto yy747;
+ if (yych <= 'f') goto yy754;
if (yych <= '~') goto yy86;
- goto yy259;
+ goto yy261;
}
}
}
-yy749:
+yy756:
yych = *++cursor_;
if (yych <= '/') goto yy87;
- if (yych <= '0') goto yy869;
- if (yych <= '9') goto yy871;
+ if (yych <= '0') goto yy877;
+ if (yych <= '9') goto yy879;
goto yy87;
-yy750:
+yy757:
yych = *++cursor_;
- if (yych == 'r') goto yy873;
+ if (yych == 'r') goto yy881;
goto yy87;
-yy751:
+yy758:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 546 "src/wast-lexer.cc"
+#line 549 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Rethrow); }
-#line 4671 "src/prebuilt/wast-lexer-gen.cc"
-yy753:
+#line 4714 "src/prebuilt/wast-lexer-gen.cc"
+yy760:
yych = *++cursor_;
- if (yych == 'b') goto yy875;
+ if (yych == 'b') goto yy883;
goto yy87;
-yy754:
+yy761:
yych = *++cursor_;
- if (yych == 'a') goto yy876;
+ if (yych == 'a') goto yy884;
goto yy87;
-yy755:
+yy762:
yych = *++cursor_;
- if (yych == 'a') goto yy877;
+ if (yych == 'a') goto yy885;
goto yy87;
-yy756:
+yy763:
yych = *++cursor_;
- if (yych == 'a') goto yy878;
+ if (yych == 'a') goto yy886;
goto yy87;
-yy757:
+yy764:
+ yych = *++cursor_;
+ if (yych == 'n') goto yy887;
+ goto yy87;
+yy765:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -4700,7 +4747,7 @@ yy757:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy611;
+ if (yych <= '9') goto yy618;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -4708,7 +4755,7 @@ yy757:
goto yy88;
}
}
-yy758:
+yy766:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -4720,266 +4767,266 @@ yy758:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy879;
+ goto yy888;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy879;
+ goto yy888;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy879;
+ if (yych <= 'f') goto yy888;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy759:
+yy767:
yych = *++cursor_;
- if (yych == 'x') goto yy881;
+ if (yych == 'x') goto yy890;
goto yy87;
-yy760:
+yy768:
yych = *++cursor_;
- if (yych == 'n') goto yy882;
+ if (yych == 'n') goto yy891;
goto yy87;
-yy761:
+yy769:
yych = *++cursor_;
- if (yych == 'a') goto yy883;
+ if (yych == 'a') goto yy892;
goto yy87;
-yy762:
+yy770:
yych = *++cursor_;
- if (yych == 'e') goto yy884;
+ if (yych == 'e') goto yy893;
goto yy87;
-yy763:
+yy771:
yych = *++cursor_;
- if (yych == 'r') goto yy885;
+ if (yych == 'r') goto yy894;
goto yy87;
-yy764:
+yy772:
yych = *++cursor_;
- if (yych == 'n') goto yy886;
+ if (yych == 'n') goto yy895;
goto yy87;
-yy765:
+yy773:
yych = *++cursor_;
- if (yych == 'a') goto yy887;
+ if (yych == 'a') goto yy896;
goto yy87;
-yy766:
+yy774:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 265 "src/wast-lexer.cc"
+#line 266 "src/wast-lexer.cc"
{ RETURN_OPCODE0(BrTable); }
-#line 4773 "src/prebuilt/wast-lexer-gen.cc"
-yy768:
+#line 4820 "src/prebuilt/wast-lexer-gen.cc"
+yy776:
yych = *++cursor_;
- if (yych == 'i') goto yy888;
+ if (yych == 'i') goto yy897;
goto yy87;
-yy769:
+yy777:
yych = *++cursor_;
- if (yych == 'l') goto yy889;
+ if (yych == 'l') goto yy898;
goto yy87;
-yy770:
+yy778:
yych = *++cursor_;
- if (yych == 'm') goto yy891;
+ if (yych == 'm') goto yy900;
goto yy87;
-yy771:
+yy779:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 319 "src/wast-lexer.cc"
+#line 320 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Ceil); }
-#line 4793 "src/prebuilt/wast-lexer-gen.cc"
-yy773:
+#line 4840 "src/prebuilt/wast-lexer-gen.cc"
+yy781:
yych = *++cursor_;
- if (yych == 't') goto yy892;
+ if (yych == 't') goto yy901;
goto yy87;
-yy774:
+yy782:
yych = *++cursor_;
- if (yych == 'e') goto yy894;
+ if (yych == 'e') goto yy903;
goto yy87;
-yy775:
+yy783:
yych = *++cursor_;
- if (yych == 's') goto yy895;
+ if (yych == 's') goto yy904;
goto yy87;
-yy776:
+yy784:
yych = *++cursor_;
- if (yych == 't') goto yy896;
+ if (yych == 't') goto yy905;
goto yy87;
-yy777:
+yy785:
yych = *++cursor_;
- if (yych == 'r') goto yy897;
+ if (yych == 'r') goto yy906;
goto yy87;
-yy778:
+yy786:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 278 "src/wast-lexer.cc"
+#line 279 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, F32Load); }
-#line 4821 "src/prebuilt/wast-lexer-gen.cc"
-yy780:
+#line 4868 "src/prebuilt/wast-lexer-gen.cc"
+yy788:
yych = *++cursor_;
- if (yych == 'e') goto yy899;
+ if (yych == 'e') goto yy908;
goto yy87;
-yy781:
+yy789:
yych = *++cursor_;
- if (yych == 't') goto yy900;
+ if (yych == 't') goto yy909;
goto yy87;
-yy782:
+yy790:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 317 "src/wast-lexer.cc"
+#line 318 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Sqrt); }
-#line 4837 "src/prebuilt/wast-lexer-gen.cc"
-yy784:
+#line 4884 "src/prebuilt/wast-lexer-gen.cc"
+yy792:
yych = *++cursor_;
- if (yych == 'e') goto yy901;
+ if (yych == 'e') goto yy910;
goto yy87;
-yy785:
+yy793:
yych = *++cursor_;
- if (yych == 'c') goto yy903;
+ if (yych == 'c') goto yy912;
goto yy87;
-yy786:
+yy794:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 320 "src/wast-lexer.cc"
+#line 321 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Ceil); }
-#line 4853 "src/prebuilt/wast-lexer-gen.cc"
-yy788:
+#line 4900 "src/prebuilt/wast-lexer-gen.cc"
+yy796:
yych = *++cursor_;
- if (yych == 't') goto yy905;
+ if (yych == 't') goto yy914;
goto yy87;
-yy789:
+yy797:
yych = *++cursor_;
- if (yych == 'e') goto yy907;
+ if (yych == 'e') goto yy916;
goto yy87;
-yy790:
+yy798:
yych = *++cursor_;
- if (yych == 's') goto yy908;
+ if (yych == 's') goto yy917;
goto yy87;
-yy791:
+yy799:
yych = *++cursor_;
- if (yych == 'r') goto yy909;
+ if (yych == 'r') goto yy918;
goto yy87;
-yy792:
+yy800:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 279 "src/wast-lexer.cc"
+#line 280 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, F64Load); }
-#line 4877 "src/prebuilt/wast-lexer-gen.cc"
-yy794:
+#line 4924 "src/prebuilt/wast-lexer-gen.cc"
+yy802:
yych = *++cursor_;
- if (yych == 'e') goto yy911;
+ if (yych == 'e') goto yy920;
goto yy87;
-yy795:
+yy803:
yych = *++cursor_;
- if (yych == 'o') goto yy912;
+ if (yych == 'o') goto yy921;
goto yy87;
-yy796:
+yy804:
yych = *++cursor_;
- if (yych == 't') goto yy913;
+ if (yych == 't') goto yy922;
goto yy87;
-yy797:
+yy805:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 318 "src/wast-lexer.cc"
+#line 319 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Sqrt); }
-#line 4897 "src/prebuilt/wast-lexer-gen.cc"
-yy799:
+#line 4944 "src/prebuilt/wast-lexer-gen.cc"
+yy807:
yych = *++cursor_;
- if (yych == 'e') goto yy914;
+ if (yych == 'e') goto yy923;
goto yy87;
-yy800:
+yy808:
yych = *++cursor_;
- if (yych == 'c') goto yy916;
+ if (yych == 'c') goto yy925;
goto yy87;
-yy801:
+yy809:
yych = *++cursor_;
- if (yych == 'a') goto yy918;
+ if (yych == 'a') goto yy927;
goto yy87;
-yy802:
+yy810:
yych = *++cursor_;
- if (yych == 'l') goto yy919;
+ if (yych == 'l') goto yy928;
goto yy87;
-yy803:
+yy811:
yych = *++cursor_;
- if (yych == 'o') goto yy921;
+ if (yych == 'o') goto yy930;
goto yy87;
-yy804:
+yy812:
yych = *++cursor_;
- if (yych == 'i') goto yy922;
+ if (yych == 'i') goto yy931;
goto yy87;
-yy805:
+yy813:
yych = *++cursor_;
- if (yych == 't') goto yy923;
+ if (yych == 't') goto yy932;
goto yy87;
-yy806:
+yy814:
yych = *++cursor_;
- if (yych == 's') goto yy925;
- if (yych == 'u') goto yy927;
+ if (yych == 's') goto yy934;
+ if (yych == 'u') goto yy936;
goto yy87;
-yy807:
+yy815:
yych = *++cursor_;
- if (yych == 'n') goto yy929;
+ if (yych == 'n') goto yy938;
goto yy87;
-yy808:
+yy816:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 392 "src/wast-lexer.cc"
+#line 393 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GeS); }
-#line 4942 "src/prebuilt/wast-lexer-gen.cc"
-yy810:
+#line 4989 "src/prebuilt/wast-lexer-gen.cc"
+yy818:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 394 "src/wast-lexer.cc"
+#line 395 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GeU); }
-#line 4950 "src/prebuilt/wast-lexer-gen.cc"
-yy812:
+#line 4997 "src/prebuilt/wast-lexer-gen.cc"
+yy820:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 388 "src/wast-lexer.cc"
+#line 389 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GtS); }
-#line 4958 "src/prebuilt/wast-lexer-gen.cc"
-yy814:
+#line 5005 "src/prebuilt/wast-lexer-gen.cc"
+yy822:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 390 "src/wast-lexer.cc"
+#line 391 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32GtU); }
-#line 4966 "src/prebuilt/wast-lexer-gen.cc"
-yy816:
+#line 5013 "src/prebuilt/wast-lexer-gen.cc"
+yy824:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 384 "src/wast-lexer.cc"
+#line 385 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LeS); }
-#line 4974 "src/prebuilt/wast-lexer-gen.cc"
-yy818:
+#line 5021 "src/prebuilt/wast-lexer-gen.cc"
+yy826:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 386 "src/wast-lexer.cc"
+#line 387 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LeU); }
-#line 4982 "src/prebuilt/wast-lexer-gen.cc"
-yy820:
+#line 5029 "src/prebuilt/wast-lexer-gen.cc"
+yy828:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -4990,578 +5037,582 @@ yy820:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy930;
+ if (yych <= '1') goto yy939;
if (yych <= '7') goto yy86;
- goto yy931;
+ goto yy940;
} else {
- if (yych == ';') goto yy821;
+ if (yych == ';') goto yy829;
if (yych <= '~') goto yy86;
}
}
-yy821:
-#line 276 "src/wast-lexer.cc"
+yy829:
+#line 277 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load); }
-#line 5005 "src/prebuilt/wast-lexer-gen.cc"
-yy822:
+#line 5052 "src/prebuilt/wast-lexer-gen.cc"
+yy830:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 380 "src/wast-lexer.cc"
+#line 381 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LtS); }
-#line 5013 "src/prebuilt/wast-lexer-gen.cc"
-yy824:
+#line 5060 "src/prebuilt/wast-lexer-gen.cc"
+yy832:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 382 "src/wast-lexer.cc"
+#line 383 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I32LtU); }
-#line 5021 "src/prebuilt/wast-lexer-gen.cc"
-yy826:
+#line 5068 "src/prebuilt/wast-lexer-gen.cc"
+yy834:
yych = *++cursor_;
- if (yych == 'n') goto yy932;
+ if (yych == 'n') goto yy941;
goto yy87;
-yy827:
+yy835:
yych = *++cursor_;
- if (yych == 't') goto yy933;
+ if (yych == 't') goto yy942;
goto yy87;
-yy828:
+yy836:
yych = *++cursor_;
- if (yych == 's') goto yy934;
- if (yych == 'u') goto yy936;
+ if (yych == 's') goto yy943;
+ if (yych == 'u') goto yy945;
goto yy87;
-yy829:
+yy837:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 358 "src/wast-lexer.cc"
+#line 359 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Rotl); }
-#line 5042 "src/prebuilt/wast-lexer-gen.cc"
-yy831:
+#line 5089 "src/prebuilt/wast-lexer-gen.cc"
+yy839:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 360 "src/wast-lexer.cc"
+#line 361 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32Rotr); }
-#line 5050 "src/prebuilt/wast-lexer-gen.cc"
-yy833:
+#line 5097 "src/prebuilt/wast-lexer-gen.cc"
+yy841:
yych = *++cursor_;
- if (yych == 's') goto yy938;
- if (yych == 'u') goto yy940;
+ if (yych == 's') goto yy947;
+ if (yych == 'u') goto yy949;
goto yy87;
-yy834:
+yy842:
yych = *++cursor_;
- if (yych == 'e') goto yy942;
+ if (yych == 'e') goto yy951;
goto yy87;
-yy835:
+yy843:
yych = *++cursor_;
- if (yych == 'c') goto yy944;
+ if (yych == 'c') goto yy953;
goto yy87;
-yy836:
+yy844:
yych = *++cursor_;
- if (yych == '/') goto yy945;
+ if (yych == '/') goto yy954;
goto yy87;
-yy837:
+yy845:
yych = *++cursor_;
- if (yych == 'i') goto yy946;
+ if (yych == 'i') goto yy955;
goto yy87;
-yy838:
+yy846:
yych = *++cursor_;
- if (yych == 't') goto yy947;
+ if (yych == 't') goto yy956;
goto yy87;
-yy839:
+yy847:
yych = *++cursor_;
- if (yych == 's') goto yy949;
- if (yych == 'u') goto yy951;
+ if (yych == 's') goto yy958;
+ if (yych == 'u') goto yy960;
goto yy87;
-yy840:
+yy848:
yych = *++cursor_;
- if (yych == 'n') goto yy953;
+ if (yych == 'n') goto yy962;
goto yy87;
-yy841:
+yy849:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 393 "src/wast-lexer.cc"
+#line 394 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GeS); }
-#line 5092 "src/prebuilt/wast-lexer-gen.cc"
-yy843:
+#line 5139 "src/prebuilt/wast-lexer-gen.cc"
+yy851:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 395 "src/wast-lexer.cc"
+#line 396 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GeU); }
-#line 5100 "src/prebuilt/wast-lexer-gen.cc"
-yy845:
+#line 5147 "src/prebuilt/wast-lexer-gen.cc"
+yy853:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 389 "src/wast-lexer.cc"
+#line 390 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GtS); }
-#line 5108 "src/prebuilt/wast-lexer-gen.cc"
-yy847:
+#line 5155 "src/prebuilt/wast-lexer-gen.cc"
+yy855:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 391 "src/wast-lexer.cc"
+#line 392 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64GtU); }
-#line 5116 "src/prebuilt/wast-lexer-gen.cc"
-yy849:
+#line 5163 "src/prebuilt/wast-lexer-gen.cc"
+yy857:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 385 "src/wast-lexer.cc"
+#line 386 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LeS); }
-#line 5124 "src/prebuilt/wast-lexer-gen.cc"
-yy851:
+#line 5171 "src/prebuilt/wast-lexer-gen.cc"
+yy859:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 387 "src/wast-lexer.cc"
+#line 388 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LeU); }
-#line 5132 "src/prebuilt/wast-lexer-gen.cc"
-yy853:
+#line 5179 "src/prebuilt/wast-lexer-gen.cc"
+yy861:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy854;
+ if (yych <= ')') goto yy862;
if (yych <= '0') goto yy86;
- goto yy954;
+ goto yy963;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy955;
+ if (yych == '3') goto yy964;
if (yych <= '7') goto yy86;
- goto yy956;
+ goto yy965;
} else {
- if (yych == ';') goto yy854;
+ if (yych == ';') goto yy862;
if (yych <= '~') goto yy86;
}
}
-yy854:
-#line 277 "src/wast-lexer.cc"
+yy862:
+#line 278 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load); }
-#line 5157 "src/prebuilt/wast-lexer-gen.cc"
-yy855:
+#line 5204 "src/prebuilt/wast-lexer-gen.cc"
+yy863:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 381 "src/wast-lexer.cc"
+#line 382 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LtS); }
-#line 5165 "src/prebuilt/wast-lexer-gen.cc"
-yy857:
+#line 5212 "src/prebuilt/wast-lexer-gen.cc"
+yy865:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 383 "src/wast-lexer.cc"
+#line 384 "src/wast-lexer.cc"
{ RETURN_OPCODE(Compare, I64LtU); }
-#line 5173 "src/prebuilt/wast-lexer-gen.cc"
-yy859:
+#line 5220 "src/prebuilt/wast-lexer-gen.cc"
+yy867:
yych = *++cursor_;
- if (yych == 'n') goto yy957;
+ if (yych == 'n') goto yy966;
goto yy87;
-yy860:
+yy868:
yych = *++cursor_;
- if (yych == 't') goto yy958;
+ if (yych == 't') goto yy967;
goto yy87;
-yy861:
+yy869:
yych = *++cursor_;
- if (yych == 's') goto yy959;
- if (yych == 'u') goto yy961;
+ if (yych == 's') goto yy968;
+ if (yych == 'u') goto yy970;
goto yy87;
-yy862:
+yy870:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 359 "src/wast-lexer.cc"
+#line 360 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Rotl); }
-#line 5194 "src/prebuilt/wast-lexer-gen.cc"
-yy864:
+#line 5241 "src/prebuilt/wast-lexer-gen.cc"
+yy872:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 361 "src/wast-lexer.cc"
+#line 362 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64Rotr); }
-#line 5202 "src/prebuilt/wast-lexer-gen.cc"
-yy866:
+#line 5249 "src/prebuilt/wast-lexer-gen.cc"
+yy874:
yych = *++cursor_;
- if (yych == 's') goto yy963;
- if (yych == 'u') goto yy965;
+ if (yych == 's') goto yy972;
+ if (yych == 'u') goto yy974;
goto yy87;
-yy867:
+yy875:
yych = *++cursor_;
- if (yych == 'e') goto yy967;
+ if (yych == 'e') goto yy976;
goto yy87;
-yy868:
+yy876:
yych = *++cursor_;
- if (yych == 'c') goto yy969;
+ if (yych == 'c') goto yy978;
goto yy87;
-yy869:
+yy877:
++cursor_;
if ((yych = *cursor_) <= '9') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy870;
+ if (yych <= ')') goto yy878;
if (yych <= '/') goto yy86;
- goto yy871;
+ goto yy879;
}
} else {
if (yych <= '_') {
- if (yych == ';') goto yy870;
+ if (yych == ';') goto yy878;
if (yych <= '^') goto yy86;
- goto yy970;
+ goto yy979;
} else {
- if (yych == 'x') goto yy971;
+ if (yych == 'x') goto yy980;
if (yych <= '~') goto yy86;
}
}
-yy870:
-#line 299 "src/wast-lexer.cc"
+yy878:
+#line 300 "src/wast-lexer.cc"
{ RETURN_TEXT_AT(OffsetEqNat, 7); }
-#line 5240 "src/prebuilt/wast-lexer-gen.cc"
-yy871:
+#line 5287 "src/prebuilt/wast-lexer-gen.cc"
+yy879:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= '/') {
if (yych <= '"') {
if (yych == '!') goto yy86;
- goto yy870;
+ goto yy878;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy870;
+ if (yych <= ')') goto yy878;
goto yy86;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy871;
+ if (yych <= '9') goto yy879;
if (yych <= ':') goto yy86;
- goto yy870;
+ goto yy878;
} else {
- if (yych == '_') goto yy970;
+ if (yych == '_') goto yy979;
if (yych <= '~') goto yy86;
- goto yy870;
+ goto yy878;
}
}
-yy873:
+yy881:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 531 "src/wast-lexer.cc"
+#line 534 "src/wast-lexer.cc"
{ RETURN(Register); }
-#line 5272 "src/prebuilt/wast-lexer-gen.cc"
-yy875:
+#line 5319 "src/prebuilt/wast-lexer-gen.cc"
+yy883:
yych = *++cursor_;
- if (yych == 'a') goto yy972;
+ if (yych == 'a') goto yy981;
goto yy87;
-yy876:
+yy884:
yych = *++cursor_;
- if (yych == 'l') goto yy973;
+ if (yych == 'l') goto yy982;
goto yy87;
-yy877:
+yy885:
yych = *++cursor_;
- if (yych == 'l') goto yy975;
+ if (yych == 'l') goto yy984;
goto yy87;
-yy878:
+yy886:
yych = *++cursor_;
- if (yych == 'b') goto yy977;
+ if (yych == 'b') goto yy986;
goto yy87;
-yy879:
+yy887:
+ yych = *++cursor_;
+ if (yych == 's') goto yy987;
+ goto yy87;
+yy888:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy610;
+ if (yych <= '"') goto yy617;
goto yy86;
} else {
- if (yych <= ')') goto yy610;
+ if (yych <= ')') goto yy617;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy879;
+ if (yych <= '9') goto yy888;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy610;
+ if (yych <= ';') goto yy617;
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy879;
+ if (yych <= 'F') goto yy888;
goto yy86;
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy758;
+ if (yych <= '_') goto yy766;
goto yy86;
} else {
- if (yych <= 'f') goto yy879;
+ if (yych <= 'f') goto yy888;
if (yych <= '~') goto yy86;
- goto yy610;
+ goto yy617;
}
}
}
-yy881:
+yy890:
yych = *++cursor_;
- if (yych == 'h') goto yy978;
+ if (yych == 'h') goto yy988;
goto yy87;
-yy882:
+yy891:
yych = *++cursor_;
- if (yych == 'v') goto yy979;
+ if (yych == 'v') goto yy989;
goto yy87;
-yy883:
+yy892:
yych = *++cursor_;
- if (yych == 'l') goto yy980;
+ if (yych == 'l') goto yy990;
goto yy87;
-yy884:
+yy893:
yych = *++cursor_;
- if (yych == 't') goto yy981;
+ if (yych == 't') goto yy991;
goto yy87;
-yy885:
+yy894:
yych = *++cursor_;
- if (yych == 'a') goto yy982;
+ if (yych == 'a') goto yy992;
goto yy87;
-yy886:
+yy895:
yych = *++cursor_;
- if (yych == 'l') goto yy983;
+ if (yych == 'l') goto yy993;
goto yy87;
-yy887:
+yy896:
yych = *++cursor_;
- if (yych == 'k') goto yy984;
+ if (yych == 'k') goto yy994;
goto yy87;
-yy888:
+yy897:
yych = *++cursor_;
- if (yych == 'r') goto yy985;
+ if (yych == 'r') goto yy995;
goto yy87;
-yy889:
+yy898:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 544 "src/wast-lexer.cc"
+#line 547 "src/wast-lexer.cc"
{ RETURN_OPCODE0(CatchAll); }
-#line 5360 "src/prebuilt/wast-lexer-gen.cc"
-yy891:
+#line 5411 "src/prebuilt/wast-lexer-gen.cc"
+yy900:
yych = *++cursor_;
- if (yych == 'e') goto yy986;
+ if (yych == 'e') goto yy996;
goto yy87;
-yy892:
+yy901:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 303 "src/wast-lexer.cc"
+#line 304 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, F32Const); }
-#line 5372 "src/prebuilt/wast-lexer-gen.cc"
-yy894:
+#line 5423 "src/prebuilt/wast-lexer-gen.cc"
+yy903:
yych = *++cursor_;
- if (yych == 'r') goto yy987;
+ if (yych == 'r') goto yy997;
goto yy87;
-yy895:
+yy904:
yych = *++cursor_;
- if (yych == 'i') goto yy988;
+ if (yych == 'i') goto yy998;
goto yy87;
-yy896:
+yy905:
yych = *++cursor_;
- if (yych == 'e') goto yy989;
+ if (yych == 'e') goto yy999;
goto yy87;
-yy897:
+yy906:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 321 "src/wast-lexer.cc"
+#line 322 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Floor); }
-#line 5392 "src/prebuilt/wast-lexer-gen.cc"
-yy899:
+#line 5443 "src/prebuilt/wast-lexer-gen.cc"
+yy908:
yych = *++cursor_;
- if (yych == 's') goto yy990;
+ if (yych == 's') goto yy1000;
goto yy87;
-yy900:
+yy909:
yych = *++cursor_;
- if (yych == 'e') goto yy991;
+ if (yych == 'e') goto yy1001;
goto yy87;
-yy901:
+yy910:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 282 "src/wast-lexer.cc"
+#line 283 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, F32Store); }
-#line 5408 "src/prebuilt/wast-lexer-gen.cc"
-yy903:
+#line 5459 "src/prebuilt/wast-lexer-gen.cc"
+yy912:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 323 "src/wast-lexer.cc"
+#line 324 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Trunc); }
-#line 5416 "src/prebuilt/wast-lexer-gen.cc"
-yy905:
+#line 5467 "src/prebuilt/wast-lexer-gen.cc"
+yy914:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 304 "src/wast-lexer.cc"
+#line 305 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, F64Const); }
-#line 5424 "src/prebuilt/wast-lexer-gen.cc"
-yy907:
+#line 5475 "src/prebuilt/wast-lexer-gen.cc"
+yy916:
yych = *++cursor_;
- if (yych == 'r') goto yy992;
+ if (yych == 'r') goto yy1002;
goto yy87;
-yy908:
+yy917:
yych = *++cursor_;
- if (yych == 'i') goto yy993;
+ if (yych == 'i') goto yy1003;
goto yy87;
-yy909:
+yy918:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 322 "src/wast-lexer.cc"
+#line 323 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Floor); }
-#line 5440 "src/prebuilt/wast-lexer-gen.cc"
-yy911:
+#line 5491 "src/prebuilt/wast-lexer-gen.cc"
+yy920:
yych = *++cursor_;
- if (yych == 's') goto yy994;
+ if (yych == 's') goto yy1004;
goto yy87;
-yy912:
+yy921:
yych = *++cursor_;
- if (yych == 't') goto yy995;
+ if (yych == 't') goto yy1005;
goto yy87;
-yy913:
+yy922:
yych = *++cursor_;
- if (yych == 'e') goto yy996;
+ if (yych == 'e') goto yy1006;
goto yy87;
-yy914:
+yy923:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 283 "src/wast-lexer.cc"
+#line 284 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, F64Store); }
-#line 5460 "src/prebuilt/wast-lexer-gen.cc"
-yy916:
+#line 5511 "src/prebuilt/wast-lexer-gen.cc"
+yy925:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 324 "src/wast-lexer.cc"
+#line 325 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Trunc); }
-#line 5468 "src/prebuilt/wast-lexer-gen.cc"
-yy918:
+#line 5519 "src/prebuilt/wast-lexer-gen.cc"
+yy927:
yych = *++cursor_;
- if (yych == 'l') goto yy997;
+ if (yych == 'l') goto yy1007;
goto yy87;
-yy919:
+yy928:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 271 "src/wast-lexer.cc"
+#line 272 "src/wast-lexer.cc"
{ RETURN_OPCODE0(GetLocal); }
-#line 5480 "src/prebuilt/wast-lexer-gen.cc"
-yy921:
+#line 5531 "src/prebuilt/wast-lexer-gen.cc"
+yy930:
yych = *++cursor_;
- if (yych == 'r') goto yy999;
+ if (yych == 'r') goto yy1009;
goto yy87;
-yy922:
+yy931:
yych = *++cursor_;
- if (yych == 'c') goto yy1000;
+ if (yych == 'c') goto yy1010;
goto yy87;
-yy923:
+yy932:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 301 "src/wast-lexer.cc"
+#line 302 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, I32Const); }
-#line 5496 "src/prebuilt/wast-lexer-gen.cc"
-yy925:
+#line 5547 "src/prebuilt/wast-lexer-gen.cc"
+yy934:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 338 "src/wast-lexer.cc"
+#line 339 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32DivS); }
-#line 5504 "src/prebuilt/wast-lexer-gen.cc"
-yy927:
+#line 5555 "src/prebuilt/wast-lexer-gen.cc"
+yy936:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 340 "src/wast-lexer.cc"
+#line 341 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32DivU); }
-#line 5512 "src/prebuilt/wast-lexer-gen.cc"
-yy929:
+#line 5563 "src/prebuilt/wast-lexer-gen.cc"
+yy938:
yych = *++cursor_;
- if (yych == 'd') goto yy1001;
+ if (yych == 'd') goto yy1011;
goto yy87;
-yy930:
+yy939:
yych = *++cursor_;
- if (yych == '6') goto yy1002;
+ if (yych == '6') goto yy1012;
goto yy87;
-yy931:
+yy940:
yych = *++cursor_;
- if (yych == '_') goto yy1003;
+ if (yych == '_') goto yy1013;
goto yy87;
-yy932:
+yy941:
yych = *++cursor_;
- if (yych == 't') goto yy1004;
+ if (yych == 't') goto yy1014;
goto yy87;
-yy933:
+yy942:
yych = *++cursor_;
- if (yych == 'e') goto yy1006;
+ if (yych == 'e') goto yy1016;
goto yy87;
-yy934:
+yy943:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 342 "src/wast-lexer.cc"
+#line 343 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32RemS); }
-#line 5540 "src/prebuilt/wast-lexer-gen.cc"
-yy936:
+#line 5591 "src/prebuilt/wast-lexer-gen.cc"
+yy945:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 344 "src/wast-lexer.cc"
+#line 345 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32RemU); }
-#line 5548 "src/prebuilt/wast-lexer-gen.cc"
-yy938:
+#line 5599 "src/prebuilt/wast-lexer-gen.cc"
+yy947:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 354 "src/wast-lexer.cc"
+#line 355 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32ShrS); }
-#line 5556 "src/prebuilt/wast-lexer-gen.cc"
-yy940:
+#line 5607 "src/prebuilt/wast-lexer-gen.cc"
+yy949:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 356 "src/wast-lexer.cc"
+#line 357 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I32ShrU); }
-#line 5564 "src/prebuilt/wast-lexer-gen.cc"
-yy942:
+#line 5615 "src/prebuilt/wast-lexer-gen.cc"
+yy951:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -5572,140 +5623,140 @@ yy942:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy1007;
+ if (yych <= '1') goto yy1017;
if (yych <= '7') goto yy86;
- goto yy1008;
+ goto yy1018;
} else {
- if (yych == ';') goto yy943;
+ if (yych == ';') goto yy952;
if (yych <= '~') goto yy86;
}
}
-yy943:
-#line 280 "src/wast-lexer.cc"
+yy952:
+#line 281 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I32Store); }
-#line 5587 "src/prebuilt/wast-lexer-gen.cc"
-yy944:
+#line 5638 "src/prebuilt/wast-lexer-gen.cc"
+yy953:
yych = *++cursor_;
- if (yych == '_') goto yy1010;
+ if (yych == '_') goto yy1020;
goto yy87;
-yy945:
+yy954:
yych = *++cursor_;
- if (yych == 'i') goto yy1011;
+ if (yych == 'i') goto yy1021;
goto yy87;
-yy946:
+yy955:
yych = *++cursor_;
- if (yych == 'c') goto yy1012;
+ if (yych == 'c') goto yy1022;
goto yy87;
-yy947:
+yy956:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 302 "src/wast-lexer.cc"
+#line 303 "src/wast-lexer.cc"
{ RETURN_OPCODE(Const, I64Const); }
-#line 5607 "src/prebuilt/wast-lexer-gen.cc"
-yy949:
+#line 5658 "src/prebuilt/wast-lexer-gen.cc"
+yy958:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 339 "src/wast-lexer.cc"
+#line 340 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64DivS); }
-#line 5615 "src/prebuilt/wast-lexer-gen.cc"
-yy951:
+#line 5666 "src/prebuilt/wast-lexer-gen.cc"
+yy960:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 341 "src/wast-lexer.cc"
+#line 342 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64DivU); }
-#line 5623 "src/prebuilt/wast-lexer-gen.cc"
-yy953:
+#line 5674 "src/prebuilt/wast-lexer-gen.cc"
+yy962:
yych = *++cursor_;
- if (yych == 'd') goto yy1013;
+ if (yych == 'd') goto yy1023;
goto yy87;
-yy954:
+yy963:
yych = *++cursor_;
- if (yych == '6') goto yy1014;
+ if (yych == '6') goto yy1024;
goto yy87;
-yy955:
+yy964:
yych = *++cursor_;
- if (yych == '2') goto yy1015;
+ if (yych == '2') goto yy1025;
goto yy87;
-yy956:
+yy965:
yych = *++cursor_;
- if (yych == '_') goto yy1016;
+ if (yych == '_') goto yy1026;
goto yy87;
-yy957:
+yy966:
yych = *++cursor_;
- if (yych == 't') goto yy1017;
+ if (yych == 't') goto yy1027;
goto yy87;
-yy958:
+yy967:
yych = *++cursor_;
- if (yych == 'e') goto yy1019;
+ if (yych == 'e') goto yy1029;
goto yy87;
-yy959:
+yy968:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 343 "src/wast-lexer.cc"
+#line 344 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64RemS); }
-#line 5655 "src/prebuilt/wast-lexer-gen.cc"
-yy961:
+#line 5706 "src/prebuilt/wast-lexer-gen.cc"
+yy970:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 345 "src/wast-lexer.cc"
+#line 346 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64RemU); }
-#line 5663 "src/prebuilt/wast-lexer-gen.cc"
-yy963:
+#line 5714 "src/prebuilt/wast-lexer-gen.cc"
+yy972:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 355 "src/wast-lexer.cc"
+#line 356 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64ShrS); }
-#line 5671 "src/prebuilt/wast-lexer-gen.cc"
-yy965:
+#line 5722 "src/prebuilt/wast-lexer-gen.cc"
+yy974:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 357 "src/wast-lexer.cc"
+#line 358 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, I64ShrU); }
-#line 5679 "src/prebuilt/wast-lexer-gen.cc"
-yy967:
+#line 5730 "src/prebuilt/wast-lexer-gen.cc"
+yy976:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy968;
+ if (yych <= ')') goto yy977;
if (yych <= '0') goto yy86;
- goto yy1020;
+ goto yy1030;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy1021;
+ if (yych == '3') goto yy1031;
if (yych <= '7') goto yy86;
- goto yy1022;
+ goto yy1032;
} else {
- if (yych == ';') goto yy968;
+ if (yych == ';') goto yy977;
if (yych <= '~') goto yy86;
}
}
-yy968:
-#line 281 "src/wast-lexer.cc"
+yy977:
+#line 282 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store); }
-#line 5704 "src/prebuilt/wast-lexer-gen.cc"
-yy969:
+#line 5755 "src/prebuilt/wast-lexer-gen.cc"
+yy978:
yych = *++cursor_;
- if (yych == '_') goto yy1024;
+ if (yych == '_') goto yy1034;
goto yy87;
-yy970:
+yy979:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -5721,7 +5772,7 @@ yy970:
} else {
if (yych <= ':') {
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy871;
+ if (yych <= '9') goto yy879;
goto yy86;
} else {
if (yych <= ';') goto yy88;
@@ -5729,7 +5780,7 @@ yy970:
goto yy88;
}
}
-yy971:
+yy980:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
@@ -5741,1226 +5792,1238 @@ yy971:
if (yych <= '\'') goto yy86;
if (yych <= ')') goto yy88;
if (yych <= '/') goto yy86;
- goto yy1025;
+ goto yy1035;
}
} else {
if (yych <= 'F') {
if (yych == ';') goto yy88;
if (yych <= '@') goto yy86;
- goto yy1025;
+ goto yy1035;
} else {
if (yych <= '`') goto yy86;
- if (yych <= 'f') goto yy1025;
+ if (yych <= 'f') goto yy1035;
if (yych <= '~') goto yy86;
goto yy88;
}
}
-yy972:
+yy981:
yych = *++cursor_;
- if (yych == 'l') goto yy1027;
+ if (yych == 'l') goto yy1037;
goto yy87;
-yy973:
+yy982:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 272 "src/wast-lexer.cc"
+#line 273 "src/wast-lexer.cc"
{ RETURN_OPCODE0(SetLocal); }
-#line 5770 "src/prebuilt/wast-lexer-gen.cc"
-yy975:
+#line 5821 "src/prebuilt/wast-lexer-gen.cc"
+yy984:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 273 "src/wast-lexer.cc"
+#line 274 "src/wast-lexer.cc"
{ RETURN_OPCODE0(TeeLocal); }
-#line 5778 "src/prebuilt/wast-lexer-gen.cc"
-yy977:
+#line 5829 "src/prebuilt/wast-lexer-gen.cc"
+yy986:
yych = *++cursor_;
- if (yych == 'l') goto yy1029;
+ if (yych == 'l') goto yy1039;
goto yy87;
-yy978:
+yy987:
yych = *++cursor_;
- if (yych == 'a') goto yy1030;
+ if (yych == 't') goto yy1040;
goto yy87;
-yy979:
+yy988:
yych = *++cursor_;
- if (yych == 'a') goto yy1031;
+ if (yych == 'a') goto yy1042;
goto yy87;
-yy980:
+yy989:
yych = *++cursor_;
- if (yych == 'f') goto yy1032;
+ if (yych == 'a') goto yy1043;
goto yy87;
-yy981:
+yy990:
yych = *++cursor_;
- if (yych == 'u') goto yy1033;
+ if (yych == 'f') goto yy1044;
goto yy87;
-yy982:
+yy991:
yych = *++cursor_;
- if (yych == 'p') goto yy1034;
+ if (yych == 'u') goto yy1045;
goto yy87;
-yy983:
+yy992:
yych = *++cursor_;
- if (yych == 'i') goto yy1036;
+ if (yych == 'p') goto yy1046;
goto yy87;
-yy984:
+yy993:
yych = *++cursor_;
- if (yych == 'e') goto yy1037;
+ if (yych == 'i') goto yy1048;
goto yy87;
-yy985:
+yy994:
yych = *++cursor_;
- if (yych == 'e') goto yy1039;
+ if (yych == 'e') goto yy1049;
goto yy87;
-yy986:
+yy995:
yych = *++cursor_;
- if (yych == 'm') goto yy1040;
+ if (yych == 'e') goto yy1051;
goto yy87;
-yy987:
+yy996:
yych = *++cursor_;
- if (yych == 't') goto yy1041;
+ if (yych == 'm') goto yy1052;
goto yy87;
-yy988:
+yy997:
yych = *++cursor_;
- if (yych == 'g') goto yy1042;
+ if (yych == 't') goto yy1053;
goto yy87;
-yy989:
+yy998:
yych = *++cursor_;
- if (yych == '/') goto yy1043;
+ if (yych == 'g') goto yy1054;
goto yy87;
-yy990:
+yy999:
yych = *++cursor_;
- if (yych == 't') goto yy1044;
+ if (yych == '/') goto yy1055;
goto yy87;
-yy991:
+yy1000:
yych = *++cursor_;
- if (yych == 'r') goto yy1046;
+ if (yych == 't') goto yy1056;
goto yy87;
-yy992:
+yy1001:
yych = *++cursor_;
- if (yych == 't') goto yy1047;
+ if (yych == 'r') goto yy1058;
goto yy87;
-yy993:
+yy1002:
yych = *++cursor_;
- if (yych == 'g') goto yy1048;
+ if (yych == 't') goto yy1059;
goto yy87;
-yy994:
+yy1003:
yych = *++cursor_;
- if (yych == 't') goto yy1049;
+ if (yych == 'g') goto yy1060;
goto yy87;
-yy995:
+yy1004:
yych = *++cursor_;
- if (yych == 'e') goto yy1051;
+ if (yych == 't') goto yy1061;
goto yy87;
-yy996:
+yy1005:
yych = *++cursor_;
- if (yych == 'r') goto yy1052;
+ if (yych == 'e') goto yy1063;
goto yy87;
-yy997:
+yy1006:
+ yych = *++cursor_;
+ if (yych == 'r') goto yy1064;
+ goto yy87;
+yy1007:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 274 "src/wast-lexer.cc"
+#line 275 "src/wast-lexer.cc"
{ RETURN_OPCODE0(GetGlobal); }
-#line 5866 "src/prebuilt/wast-lexer-gen.cc"
-yy999:
+#line 5921 "src/prebuilt/wast-lexer-gen.cc"
+yy1009:
yych = *++cursor_;
- if (yych == 'y') goto yy1053;
+ if (yych == 'y') goto yy1065;
goto yy87;
-yy1000:
+yy1010:
yych = *++cursor_;
- if (yych == '.') goto yy1055;
+ if (yych == '.') goto yy1067;
goto yy87;
-yy1001:
+yy1011:
yych = *++cursor_;
- if (yych == '1') goto yy1056;
- if (yych == '8') goto yy1057;
+ if (yych == '1') goto yy1068;
+ if (yych == '8') goto yy1069;
goto yy87;
-yy1002:
+yy1012:
yych = *++cursor_;
- if (yych == '_') goto yy1058;
+ if (yych == '_') goto yy1070;
goto yy87;
-yy1003:
+yy1013:
yych = *++cursor_;
- if (yych == 's') goto yy1059;
- if (yych == 'u') goto yy1061;
+ if (yych == 's') goto yy1071;
+ if (yych == 'u') goto yy1073;
goto yy87;
-yy1004:
+yy1014:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 311 "src/wast-lexer.cc"
+#line 312 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Popcnt); }
-#line 5896 "src/prebuilt/wast-lexer-gen.cc"
-yy1006:
+#line 5951 "src/prebuilt/wast-lexer-gen.cc"
+yy1016:
yych = *++cursor_;
- if (yych == 'r') goto yy1063;
+ if (yych == 'r') goto yy1075;
goto yy87;
-yy1007:
+yy1017:
yych = *++cursor_;
- if (yych == '6') goto yy1064;
+ if (yych == '6') goto yy1076;
goto yy87;
-yy1008:
+yy1018:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 294 "src/wast-lexer.cc"
+#line 295 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I32Store8); }
-#line 5912 "src/prebuilt/wast-lexer-gen.cc"
-yy1010:
+#line 5967 "src/prebuilt/wast-lexer-gen.cc"
+yy1020:
yych = *++cursor_;
- if (yych == 's') goto yy1066;
- if (yych == 'u') goto yy1067;
+ if (yych == 's') goto yy1078;
+ if (yych == 'u') goto yy1079;
goto yy87;
-yy1011:
+yy1021:
yych = *++cursor_;
- if (yych == '6') goto yy1068;
+ if (yych == '6') goto yy1080;
goto yy87;
-yy1012:
+yy1022:
yych = *++cursor_;
- if (yych == '.') goto yy1069;
+ if (yych == '.') goto yy1081;
goto yy87;
-yy1013:
+yy1023:
yych = *++cursor_;
if (yych <= '3') {
- if (yych == '1') goto yy1070;
+ if (yych == '1') goto yy1082;
if (yych <= '2') goto yy87;
- goto yy1071;
+ goto yy1083;
} else {
if (yych <= '8') {
if (yych <= '7') goto yy87;
- goto yy1072;
+ goto yy1084;
} else {
- if (yych == '_') goto yy1073;
+ if (yych == '_') goto yy1085;
goto yy87;
}
}
-yy1014:
+yy1024:
yych = *++cursor_;
- if (yych == '_') goto yy1074;
+ if (yych == '_') goto yy1086;
goto yy87;
-yy1015:
+yy1025:
yych = *++cursor_;
- if (yych == '_') goto yy1075;
+ if (yych == '_') goto yy1087;
goto yy87;
-yy1016:
+yy1026:
yych = *++cursor_;
- if (yych == 's') goto yy1076;
- if (yych == 'u') goto yy1078;
+ if (yych == 's') goto yy1088;
+ if (yych == 'u') goto yy1090;
goto yy87;
-yy1017:
+yy1027:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 312 "src/wast-lexer.cc"
+#line 313 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Popcnt); }
-#line 5961 "src/prebuilt/wast-lexer-gen.cc"
-yy1019:
+#line 6016 "src/prebuilt/wast-lexer-gen.cc"
+yy1029:
yych = *++cursor_;
- if (yych == 'r') goto yy1080;
+ if (yych == 'r') goto yy1092;
goto yy87;
-yy1020:
+yy1030:
yych = *++cursor_;
- if (yych == '6') goto yy1081;
+ if (yych == '6') goto yy1093;
goto yy87;
-yy1021:
+yy1031:
yych = *++cursor_;
- if (yych == '2') goto yy1083;
+ if (yych == '2') goto yy1095;
goto yy87;
-yy1022:
+yy1032:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 295 "src/wast-lexer.cc"
+#line 296 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store8); }
-#line 5981 "src/prebuilt/wast-lexer-gen.cc"
-yy1024:
+#line 6036 "src/prebuilt/wast-lexer-gen.cc"
+yy1034:
yych = *++cursor_;
- if (yych == 's') goto yy1085;
- if (yych == 'u') goto yy1086;
+ if (yych == 's') goto yy1097;
+ if (yych == 'u') goto yy1098;
goto yy87;
-yy1025:
+yy1035:
++cursor_;
if (limit_ <= cursor_) FILL(1);
yych = *cursor_;
if (yych <= ':') {
if (yych <= '\'') {
if (yych == '!') goto yy86;
- if (yych <= '"') goto yy870;
+ if (yych <= '"') goto yy878;
goto yy86;
} else {
- if (yych <= ')') goto yy870;
+ if (yych <= ')') goto yy878;
if (yych <= '/') goto yy86;
- if (yych <= '9') goto yy1025;
+ if (yych <= '9') goto yy1035;
goto yy86;
}
} else {
if (yych <= '^') {
- if (yych <= ';') goto yy870;
+ if (yych <= ';') goto yy878;
if (yych <= '@') goto yy86;
- if (yych <= 'F') goto yy1025;
+ if (yych <= 'F') goto yy1035;
goto yy86;
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy971;
+ if (yych <= '_') goto yy980;
goto yy86;
} else {
- if (yych <= 'f') goto yy1025;
+ if (yych <= 'f') goto yy1035;
if (yych <= '~') goto yy86;
- goto yy870;
+ goto yy878;
}
}
}
-yy1027:
+yy1037:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 275 "src/wast-lexer.cc"
+#line 276 "src/wast-lexer.cc"
{ RETURN_OPCODE0(SetGlobal); }
-#line 6026 "src/prebuilt/wast-lexer-gen.cc"
-yy1029:
+#line 6081 "src/prebuilt/wast-lexer-gen.cc"
+yy1039:
yych = *++cursor_;
- if (yych == 'e') goto yy1087;
+ if (yych == 'e') goto yy1099;
goto yy87;
-yy1030:
+yy1040:
+ ++cursor_;
+ if (yybm[0+(yych = *cursor_)] & 8) {
+ goto yy86;
+ }
+#line 513 "src/wast-lexer.cc"
+ { RETURN_OPCODE(Const, V128Const); }
+#line 6093 "src/prebuilt/wast-lexer-gen.cc"
+yy1042:
yych = *++cursor_;
- if (yych == 'u') goto yy1089;
+ if (yych == 'u') goto yy1101;
goto yy87;
-yy1031:
+yy1043:
yych = *++cursor_;
- if (yych == 'l') goto yy1090;
+ if (yych == 'l') goto yy1102;
goto yy87;
-yy1032:
+yy1044:
yych = *++cursor_;
- if (yych == 'o') goto yy1091;
+ if (yych == 'o') goto yy1103;
goto yy87;
-yy1033:
+yy1045:
yych = *++cursor_;
- if (yych == 'r') goto yy1092;
+ if (yych == 'r') goto yy1104;
goto yy87;
-yy1034:
+yy1046:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 540 "src/wast-lexer.cc"
+#line 543 "src/wast-lexer.cc"
{ RETURN(AssertTrap); }
-#line 6054 "src/prebuilt/wast-lexer-gen.cc"
-yy1036:
+#line 6117 "src/prebuilt/wast-lexer-gen.cc"
+yy1048:
yych = *++cursor_;
- if (yych == 'n') goto yy1093;
+ if (yych == 'n') goto yy1105;
goto yy87;
-yy1037:
+yy1049:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 448 "src/wast-lexer.cc"
+#line 449 "src/wast-lexer.cc"
{ RETURN_OPCODE0(AtomicWake); }
-#line 6066 "src/prebuilt/wast-lexer-gen.cc"
-yy1039:
+#line 6129 "src/prebuilt/wast-lexer-gen.cc"
+yy1051:
yych = *++cursor_;
- if (yych == 'c') goto yy1094;
+ if (yych == 'c') goto yy1106;
goto yy87;
-yy1040:
+yy1052:
yych = *++cursor_;
- if (yych == 'o') goto yy1095;
+ if (yych == 'o') goto yy1107;
goto yy87;
-yy1041:
+yy1053:
yych = *++cursor_;
- if (yych == '_') goto yy1096;
+ if (yych == '_') goto yy1108;
goto yy87;
-yy1042:
+yy1054:
yych = *++cursor_;
- if (yych == 'n') goto yy1097;
+ if (yych == 'n') goto yy1109;
goto yy87;
-yy1043:
+yy1055:
yych = *++cursor_;
- if (yych == 'f') goto yy1099;
+ if (yych == 'f') goto yy1111;
goto yy87;
-yy1044:
+yy1056:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 325 "src/wast-lexer.cc"
+#line 326 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F32Nearest); }
-#line 6094 "src/prebuilt/wast-lexer-gen.cc"
-yy1046:
+#line 6157 "src/prebuilt/wast-lexer-gen.cc"
+yy1058:
yych = *++cursor_;
- if (yych == 'p') goto yy1100;
+ if (yych == 'p') goto yy1112;
goto yy87;
-yy1047:
+yy1059:
yych = *++cursor_;
- if (yych == '_') goto yy1101;
+ if (yych == '_') goto yy1113;
goto yy87;
-yy1048:
+yy1060:
yych = *++cursor_;
- if (yych == 'n') goto yy1102;
+ if (yych == 'n') goto yy1114;
goto yy87;
-yy1049:
+yy1061:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 326 "src/wast-lexer.cc"
+#line 327 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, F64Nearest); }
-#line 6114 "src/prebuilt/wast-lexer-gen.cc"
-yy1051:
+#line 6177 "src/prebuilt/wast-lexer-gen.cc"
+yy1063:
yych = *++cursor_;
- if (yych == '/') goto yy1104;
+ if (yych == '/') goto yy1116;
goto yy87;
-yy1052:
+yy1064:
yych = *++cursor_;
- if (yych == 'p') goto yy1105;
+ if (yych == 'p') goto yy1117;
goto yy87;
-yy1053:
+yy1065:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 444 "src/wast-lexer.cc"
+#line 445 "src/wast-lexer.cc"
{ RETURN_OPCODE0(GrowMemory); }
-#line 6130 "src/prebuilt/wast-lexer-gen.cc"
-yy1055:
+#line 6193 "src/prebuilt/wast-lexer-gen.cc"
+yy1067:
yych = *++cursor_;
if (yych <= 'r') {
- if (yych == 'l') goto yy1106;
+ if (yych == 'l') goto yy1118;
if (yych <= 'q') goto yy87;
- goto yy1107;
+ goto yy1119;
} else {
- if (yych <= 's') goto yy1108;
- if (yych == 'w') goto yy1109;
+ if (yych <= 's') goto yy1120;
+ if (yych == 'w') goto yy1121;
goto yy87;
}
-yy1056:
+yy1068:
yych = *++cursor_;
- if (yych == '6') goto yy1110;
+ if (yych == '6') goto yy1122;
goto yy87;
-yy1057:
+yy1069:
yych = *++cursor_;
- if (yych == '_') goto yy1111;
+ if (yych == '_') goto yy1123;
goto yy87;
-yy1058:
+yy1070:
yych = *++cursor_;
- if (yych == 's') goto yy1112;
- if (yych == 'u') goto yy1114;
+ if (yych == 's') goto yy1124;
+ if (yych == 'u') goto yy1126;
goto yy87;
-yy1059:
+yy1071:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 284 "src/wast-lexer.cc"
+#line 285 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load8S); }
-#line 6162 "src/prebuilt/wast-lexer-gen.cc"
-yy1061:
+#line 6225 "src/prebuilt/wast-lexer-gen.cc"
+yy1073:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 286 "src/wast-lexer.cc"
+#line 287 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load8U); }
-#line 6170 "src/prebuilt/wast-lexer-gen.cc"
-yy1063:
+#line 6233 "src/prebuilt/wast-lexer-gen.cc"
+yy1075:
yych = *++cursor_;
- if (yych == 'p') goto yy1116;
+ if (yych == 'p') goto yy1128;
goto yy87;
-yy1064:
+yy1076:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 296 "src/wast-lexer.cc"
+#line 297 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I32Store16); }
-#line 6182 "src/prebuilt/wast-lexer-gen.cc"
-yy1066:
+#line 6245 "src/prebuilt/wast-lexer-gen.cc"
+yy1078:
yych = *++cursor_;
- if (yych == '/') goto yy1117;
- if (yych == ':') goto yy1118;
+ if (yych == '/') goto yy1129;
+ if (yych == ':') goto yy1130;
goto yy87;
-yy1067:
+yy1079:
yych = *++cursor_;
- if (yych == '/') goto yy1119;
- if (yych == ':') goto yy1120;
+ if (yych == '/') goto yy1131;
+ if (yych == ':') goto yy1132;
goto yy87;
-yy1068:
+yy1080:
yych = *++cursor_;
- if (yych == '4') goto yy1121;
+ if (yych == '4') goto yy1133;
goto yy87;
-yy1069:
+yy1081:
yych = *++cursor_;
if (yych <= 'r') {
- if (yych == 'l') goto yy1123;
+ if (yych == 'l') goto yy1135;
if (yych <= 'q') goto yy87;
- goto yy1124;
+ goto yy1136;
} else {
- if (yych <= 's') goto yy1125;
- if (yych == 'w') goto yy1126;
+ if (yych <= 's') goto yy1137;
+ if (yych == 'w') goto yy1138;
goto yy87;
}
-yy1070:
+yy1082:
yych = *++cursor_;
- if (yych == '6') goto yy1127;
+ if (yych == '6') goto yy1139;
goto yy87;
-yy1071:
+yy1083:
yych = *++cursor_;
- if (yych == '2') goto yy1128;
+ if (yych == '2') goto yy1140;
goto yy87;
-yy1072:
+yy1084:
yych = *++cursor_;
- if (yych == '_') goto yy1129;
+ if (yych == '_') goto yy1141;
goto yy87;
-yy1073:
+yy1085:
yych = *++cursor_;
- if (yych == 's') goto yy1130;
- if (yych == 'u') goto yy1131;
+ if (yych == 's') goto yy1142;
+ if (yych == 'u') goto yy1143;
goto yy87;
-yy1074:
+yy1086:
yych = *++cursor_;
- if (yych == 's') goto yy1132;
- if (yych == 'u') goto yy1134;
+ if (yych == 's') goto yy1144;
+ if (yych == 'u') goto yy1146;
goto yy87;
-yy1075:
+yy1087:
yych = *++cursor_;
- if (yych == 's') goto yy1136;
- if (yych == 'u') goto yy1138;
+ if (yych == 's') goto yy1148;
+ if (yych == 'u') goto yy1150;
goto yy87;
-yy1076:
+yy1088:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 285 "src/wast-lexer.cc"
+#line 286 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load8S); }
-#line 6242 "src/prebuilt/wast-lexer-gen.cc"
-yy1078:
+#line 6305 "src/prebuilt/wast-lexer-gen.cc"
+yy1090:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 287 "src/wast-lexer.cc"
+#line 288 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load8U); }
-#line 6250 "src/prebuilt/wast-lexer-gen.cc"
-yy1080:
+#line 6313 "src/prebuilt/wast-lexer-gen.cc"
+yy1092:
yych = *++cursor_;
- if (yych == 'p') goto yy1140;
+ if (yych == 'p') goto yy1152;
goto yy87;
-yy1081:
+yy1093:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 297 "src/wast-lexer.cc"
+#line 298 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store16); }
-#line 6262 "src/prebuilt/wast-lexer-gen.cc"
-yy1083:
+#line 6325 "src/prebuilt/wast-lexer-gen.cc"
+yy1095:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 298 "src/wast-lexer.cc"
+#line 299 "src/wast-lexer.cc"
{ RETURN_OPCODE(Store, I64Store32); }
-#line 6270 "src/prebuilt/wast-lexer-gen.cc"
-yy1085:
+#line 6333 "src/prebuilt/wast-lexer-gen.cc"
+yy1097:
yych = *++cursor_;
- if (yych == '/') goto yy1141;
- if (yych == ':') goto yy1142;
+ if (yych == '/') goto yy1153;
+ if (yych == ':') goto yy1154;
goto yy87;
-yy1086:
+yy1098:
yych = *++cursor_;
- if (yych == '/') goto yy1143;
- if (yych == ':') goto yy1144;
+ if (yych == '/') goto yy1155;
+ if (yych == ':') goto yy1156;
goto yy87;
-yy1087:
+yy1099:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 442 "src/wast-lexer.cc"
+#line 443 "src/wast-lexer.cc"
{ RETURN_OPCODE0(Unreachable); }
-#line 6288 "src/prebuilt/wast-lexer-gen.cc"
-yy1089:
+#line 6351 "src/prebuilt/wast-lexer-gen.cc"
+yy1101:
yych = *++cursor_;
- if (yych == 's') goto yy1145;
+ if (yych == 's') goto yy1157;
goto yy87;
-yy1090:
+yy1102:
yych = *++cursor_;
- if (yych == 'i') goto yy1146;
+ if (yych == 'i') goto yy1158;
goto yy87;
-yy1091:
+yy1103:
yych = *++cursor_;
- if (yych == 'r') goto yy1147;
+ if (yych == 'r') goto yy1159;
goto yy87;
-yy1092:
+yy1104:
yych = *++cursor_;
- if (yych == 'n') goto yy1148;
+ if (yych == 'n') goto yy1160;
goto yy87;
-yy1093:
+yy1105:
yych = *++cursor_;
- if (yych == 'k') goto yy1150;
+ if (yych == 'k') goto yy1162;
goto yy87;
-yy1094:
+yy1106:
yych = *++cursor_;
- if (yych == 't') goto yy1151;
+ if (yych == 't') goto yy1163;
goto yy87;
-yy1095:
+yy1107:
yych = *++cursor_;
- if (yych == 'r') goto yy1153;
+ if (yych == 'r') goto yy1165;
goto yy87;
-yy1096:
+yy1108:
yych = *++cursor_;
- if (yych == 's') goto yy1154;
- if (yych == 'u') goto yy1155;
+ if (yych == 's') goto yy1166;
+ if (yych == 'u') goto yy1167;
goto yy87;
-yy1097:
+yy1109:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 374 "src/wast-lexer.cc"
+#line 375 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F32Copysign); }
-#line 6329 "src/prebuilt/wast-lexer-gen.cc"
-yy1099:
+#line 6392 "src/prebuilt/wast-lexer-gen.cc"
+yy1111:
yych = *++cursor_;
- if (yych == '6') goto yy1156;
+ if (yych == '6') goto yy1168;
goto yy87;
-yy1100:
+yy1112:
yych = *++cursor_;
- if (yych == 'r') goto yy1157;
+ if (yych == 'r') goto yy1169;
goto yy87;
-yy1101:
+yy1113:
yych = *++cursor_;
- if (yych == 's') goto yy1158;
- if (yych == 'u') goto yy1159;
+ if (yych == 's') goto yy1170;
+ if (yych == 'u') goto yy1171;
goto yy87;
-yy1102:
+yy1114:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 375 "src/wast-lexer.cc"
+#line 376 "src/wast-lexer.cc"
{ RETURN_OPCODE(Binary, F64Copysign); }
-#line 6350 "src/prebuilt/wast-lexer-gen.cc"
-yy1104:
+#line 6413 "src/prebuilt/wast-lexer-gen.cc"
+yy1116:
yych = *++cursor_;
- if (yych == 'f') goto yy1160;
+ if (yych == 'f') goto yy1172;
goto yy87;
-yy1105:
+yy1117:
yych = *++cursor_;
- if (yych == 'r') goto yy1161;
+ if (yych == 'r') goto yy1173;
goto yy87;
-yy1106:
+yy1118:
yych = *++cursor_;
- if (yych == 'o') goto yy1162;
+ if (yych == 'o') goto yy1174;
goto yy87;
-yy1107:
+yy1119:
yych = *++cursor_;
- if (yych == 'm') goto yy1163;
+ if (yych == 'm') goto yy1175;
goto yy87;
-yy1108:
+yy1120:
yych = *++cursor_;
- if (yych == 't') goto yy1164;
+ if (yych == 't') goto yy1176;
goto yy87;
-yy1109:
+yy1121:
yych = *++cursor_;
- if (yych == 'a') goto yy1165;
+ if (yych == 'a') goto yy1177;
goto yy87;
-yy1110:
+yy1122:
yych = *++cursor_;
- if (yych == '_') goto yy1166;
+ if (yych == '_') goto yy1178;
goto yy87;
-yy1111:
+yy1123:
yych = *++cursor_;
- if (yych == 's') goto yy1167;
+ if (yych == 's') goto yy1179;
goto yy87;
-yy1112:
+yy1124:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 288 "src/wast-lexer.cc"
+#line 289 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load16S); }
-#line 6390 "src/prebuilt/wast-lexer-gen.cc"
-yy1114:
+#line 6453 "src/prebuilt/wast-lexer-gen.cc"
+yy1126:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 290 "src/wast-lexer.cc"
+#line 291 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I32Load16U); }
-#line 6398 "src/prebuilt/wast-lexer-gen.cc"
-yy1116:
+#line 6461 "src/prebuilt/wast-lexer-gen.cc"
+yy1128:
yych = *++cursor_;
- if (yych == 'r') goto yy1169;
+ if (yych == 'r') goto yy1181;
goto yy87;
-yy1117:
+yy1129:
yych = *++cursor_;
- if (yych == 'f') goto yy1170;
+ if (yych == 'f') goto yy1182;
goto yy87;
-yy1118:
+yy1130:
yych = *++cursor_;
- if (yych == 's') goto yy1171;
+ if (yych == 's') goto yy1183;
goto yy87;
-yy1119:
+yy1131:
yych = *++cursor_;
- if (yych == 'f') goto yy1172;
+ if (yych == 'f') goto yy1184;
goto yy87;
-yy1120:
+yy1132:
yych = *++cursor_;
- if (yych == 's') goto yy1173;
+ if (yych == 's') goto yy1185;
goto yy87;
-yy1121:
+yy1133:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 410 "src/wast-lexer.cc"
+#line 411 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32WrapI64); }
-#line 6426 "src/prebuilt/wast-lexer-gen.cc"
-yy1123:
+#line 6489 "src/prebuilt/wast-lexer-gen.cc"
+yy1135:
yych = *++cursor_;
- if (yych == 'o') goto yy1174;
+ if (yych == 'o') goto yy1186;
goto yy87;
-yy1124:
+yy1136:
yych = *++cursor_;
- if (yych == 'm') goto yy1175;
+ if (yych == 'm') goto yy1187;
goto yy87;
-yy1125:
+yy1137:
yych = *++cursor_;
- if (yych == 't') goto yy1176;
+ if (yych == 't') goto yy1188;
goto yy87;
-yy1126:
+yy1138:
yych = *++cursor_;
- if (yych == 'a') goto yy1177;
+ if (yych == 'a') goto yy1189;
goto yy87;
-yy1127:
+yy1139:
yych = *++cursor_;
- if (yych == '_') goto yy1178;
+ if (yych == '_') goto yy1190;
goto yy87;
-yy1128:
+yy1140:
yych = *++cursor_;
- if (yych == '_') goto yy1179;
+ if (yych == '_') goto yy1191;
goto yy87;
-yy1129:
+yy1141:
yych = *++cursor_;
- if (yych == 's') goto yy1180;
+ if (yych == 's') goto yy1192;
goto yy87;
-yy1130:
+yy1142:
yych = *++cursor_;
- if (yych == '/') goto yy1182;
+ if (yych == '/') goto yy1194;
goto yy87;
-yy1131:
+yy1143:
yych = *++cursor_;
- if (yych == '/') goto yy1183;
+ if (yych == '/') goto yy1195;
goto yy87;
-yy1132:
+yy1144:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 289 "src/wast-lexer.cc"
+#line 290 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load16S); }
-#line 6470 "src/prebuilt/wast-lexer-gen.cc"
-yy1134:
+#line 6533 "src/prebuilt/wast-lexer-gen.cc"
+yy1146:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 291 "src/wast-lexer.cc"
+#line 292 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load16U); }
-#line 6478 "src/prebuilt/wast-lexer-gen.cc"
-yy1136:
+#line 6541 "src/prebuilt/wast-lexer-gen.cc"
+yy1148:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 292 "src/wast-lexer.cc"
+#line 293 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load32S); }
-#line 6486 "src/prebuilt/wast-lexer-gen.cc"
-yy1138:
+#line 6549 "src/prebuilt/wast-lexer-gen.cc"
+yy1150:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 293 "src/wast-lexer.cc"
+#line 294 "src/wast-lexer.cc"
{ RETURN_OPCODE(Load, I64Load32U); }
-#line 6494 "src/prebuilt/wast-lexer-gen.cc"
-yy1140:
+#line 6557 "src/prebuilt/wast-lexer-gen.cc"
+yy1152:
yych = *++cursor_;
- if (yych == 'r') goto yy1184;
+ if (yych == 'r') goto yy1196;
goto yy87;
-yy1141:
+yy1153:
yych = *++cursor_;
- if (yych == 'f') goto yy1185;
+ if (yych == 'f') goto yy1197;
goto yy87;
-yy1142:
+yy1154:
yych = *++cursor_;
- if (yych == 's') goto yy1186;
+ if (yych == 's') goto yy1198;
goto yy87;
-yy1143:
+yy1155:
yych = *++cursor_;
- if (yych == 'f') goto yy1187;
+ if (yych == 'f') goto yy1199;
goto yy87;
-yy1144:
+yy1156:
yych = *++cursor_;
- if (yych == 's') goto yy1188;
+ if (yych == 's') goto yy1200;
goto yy87;
-yy1145:
+yy1157:
yych = *++cursor_;
- if (yych == 't') goto yy1189;
+ if (yych == 't') goto yy1201;
goto yy87;
-yy1146:
+yy1158:
yych = *++cursor_;
- if (yych == 'd') goto yy1190;
+ if (yych == 'd') goto yy1202;
goto yy87;
-yy1147:
+yy1159:
yych = *++cursor_;
- if (yych == 'm') goto yy1192;
+ if (yych == 'm') goto yy1204;
goto yy87;
-yy1148:
+yy1160:
++cursor_;
if ((yych = *cursor_) <= ')') {
if (yych <= '!') {
if (yych >= '!') goto yy86;
} else {
- if (yych <= '"') goto yy1149;
+ if (yych <= '"') goto yy1161;
if (yych <= '\'') goto yy86;
}
} else {
if (yych <= '^') {
if (yych != ';') goto yy86;
} else {
- if (yych <= '_') goto yy1193;
+ if (yych <= '_') goto yy1205;
if (yych <= '~') goto yy86;
}
}
-yy1149:
-#line 537 "src/wast-lexer.cc"
+yy1161:
+#line 540 "src/wast-lexer.cc"
{ RETURN(AssertReturn); }
-#line 6547 "src/prebuilt/wast-lexer-gen.cc"
-yy1150:
+#line 6610 "src/prebuilt/wast-lexer-gen.cc"
+yy1162:
yych = *++cursor_;
- if (yych == 'a') goto yy1194;
+ if (yych == 'a') goto yy1206;
goto yy87;
-yy1151:
+yy1163:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 267 "src/wast-lexer.cc"
+#line 268 "src/wast-lexer.cc"
{ RETURN_OPCODE0(CallIndirect); }
-#line 6559 "src/prebuilt/wast-lexer-gen.cc"
-yy1153:
+#line 6622 "src/prebuilt/wast-lexer-gen.cc"
+yy1165:
yych = *++cursor_;
- if (yych == 'y') goto yy1195;
+ if (yych == 'y') goto yy1207;
goto yy87;
-yy1154:
+yy1166:
yych = *++cursor_;
- if (yych == '/') goto yy1197;
+ if (yych == '/') goto yy1209;
goto yy87;
-yy1155:
+yy1167:
yych = *++cursor_;
- if (yych == '/') goto yy1198;
+ if (yych == '/') goto yy1210;
goto yy87;
-yy1156:
+yy1168:
yych = *++cursor_;
- if (yych == '4') goto yy1199;
+ if (yych == '4') goto yy1211;
goto yy87;
-yy1157:
+yy1169:
yych = *++cursor_;
- if (yych == 'e') goto yy1201;
+ if (yych == 'e') goto yy1213;
goto yy87;
-yy1158:
+yy1170:
yych = *++cursor_;
- if (yych == '/') goto yy1202;
+ if (yych == '/') goto yy1214;
goto yy87;
-yy1159:
+yy1171:
yych = *++cursor_;
- if (yych == '/') goto yy1203;
+ if (yych == '/') goto yy1215;
goto yy87;
-yy1160:
+yy1172:
yych = *++cursor_;
- if (yych == '3') goto yy1204;
+ if (yych == '3') goto yy1216;
goto yy87;
-yy1161:
+yy1173:
yych = *++cursor_;
- if (yych == 'e') goto yy1205;
+ if (yych == 'e') goto yy1217;
goto yy87;
-yy1162:
+yy1174:
yych = *++cursor_;
- if (yych == 'a') goto yy1206;
+ if (yych == 'a') goto yy1218;
goto yy87;
-yy1163:
+yy1175:
yych = *++cursor_;
- if (yych == 'w') goto yy1207;
+ if (yych == 'w') goto yy1219;
goto yy87;
-yy1164:
+yy1176:
yych = *++cursor_;
- if (yych == 'o') goto yy1208;
+ if (yych == 'o') goto yy1220;
goto yy87;
-yy1165:
+yy1177:
yych = *++cursor_;
- if (yych == 'i') goto yy1209;
+ if (yych == 'i') goto yy1221;
goto yy87;
-yy1166:
+yy1178:
yych = *++cursor_;
- if (yych == 's') goto yy1210;
+ if (yych == 's') goto yy1222;
goto yy87;
-yy1167:
+yy1179:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 327 "src/wast-lexer.cc"
+#line 328 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Extend8S); }
-#line 6623 "src/prebuilt/wast-lexer-gen.cc"
-yy1169:
+#line 6686 "src/prebuilt/wast-lexer-gen.cc"
+yy1181:
yych = *++cursor_;
- if (yych == 'e') goto yy1212;
+ if (yych == 'e') goto yy1224;
goto yy87;
-yy1170:
+yy1182:
yych = *++cursor_;
- if (yych == '3') goto yy1213;
- if (yych == '6') goto yy1214;
+ if (yych == '3') goto yy1225;
+ if (yych == '6') goto yy1226;
goto yy87;
-yy1171:
+yy1183:
yych = *++cursor_;
- if (yych == 'a') goto yy1215;
+ if (yych == 'a') goto yy1227;
goto yy87;
-yy1172:
+yy1184:
yych = *++cursor_;
- if (yych == '3') goto yy1216;
- if (yych == '6') goto yy1217;
+ if (yych == '3') goto yy1228;
+ if (yych == '6') goto yy1229;
goto yy87;
-yy1173:
+yy1185:
yych = *++cursor_;
- if (yych == 'a') goto yy1218;
+ if (yych == 'a') goto yy1230;
goto yy87;
-yy1174:
+yy1186:
yych = *++cursor_;
- if (yych == 'a') goto yy1219;
+ if (yych == 'a') goto yy1231;
goto yy87;
-yy1175:
+yy1187:
yych = *++cursor_;
- if (yych == 'w') goto yy1220;
+ if (yych == 'w') goto yy1232;
goto yy87;
-yy1176:
+yy1188:
yych = *++cursor_;
- if (yych == 'o') goto yy1221;
+ if (yych == 'o') goto yy1233;
goto yy87;
-yy1177:
+yy1189:
yych = *++cursor_;
- if (yych == 'i') goto yy1222;
+ if (yych == 'i') goto yy1234;
goto yy87;
-yy1178:
+yy1190:
yych = *++cursor_;
- if (yych == 's') goto yy1223;
+ if (yych == 's') goto yy1235;
goto yy87;
-yy1179:
+yy1191:
yych = *++cursor_;
- if (yych == 's') goto yy1225;
+ if (yych == 's') goto yy1237;
goto yy87;
-yy1180:
+yy1192:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 329 "src/wast-lexer.cc"
+#line 330 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Extend8S); }
-#line 6677 "src/prebuilt/wast-lexer-gen.cc"
-yy1182:
+#line 6740 "src/prebuilt/wast-lexer-gen.cc"
+yy1194:
yych = *++cursor_;
- if (yych == 'i') goto yy1227;
+ if (yych == 'i') goto yy1239;
goto yy87;
-yy1183:
+yy1195:
yych = *++cursor_;
- if (yych == 'i') goto yy1228;
+ if (yych == 'i') goto yy1240;
goto yy87;
-yy1184:
+yy1196:
yych = *++cursor_;
- if (yych == 'e') goto yy1229;
+ if (yych == 'e') goto yy1241;
goto yy87;
-yy1185:
+yy1197:
yych = *++cursor_;
- if (yych == '3') goto yy1230;
- if (yych == '6') goto yy1231;
+ if (yych == '3') goto yy1242;
+ if (yych == '6') goto yy1243;
goto yy87;
-yy1186:
+yy1198:
yych = *++cursor_;
- if (yych == 'a') goto yy1232;
+ if (yych == 'a') goto yy1244;
goto yy87;
-yy1187:
+yy1199:
yych = *++cursor_;
- if (yych == '3') goto yy1233;
- if (yych == '6') goto yy1234;
+ if (yych == '3') goto yy1245;
+ if (yych == '6') goto yy1246;
goto yy87;
-yy1188:
+yy1200:
yych = *++cursor_;
- if (yych == 'a') goto yy1235;
+ if (yych == 'a') goto yy1247;
goto yy87;
-yy1189:
+yy1201:
yych = *++cursor_;
- if (yych == 'i') goto yy1236;
+ if (yych == 'i') goto yy1248;
goto yy87;
-yy1190:
+yy1202:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 535 "src/wast-lexer.cc"
+#line 538 "src/wast-lexer.cc"
{ RETURN(AssertInvalid); }
-#line 6719 "src/prebuilt/wast-lexer-gen.cc"
-yy1192:
+#line 6782 "src/prebuilt/wast-lexer-gen.cc"
+yy1204:
yych = *++cursor_;
- if (yych == 'e') goto yy1237;
+ if (yych == 'e') goto yy1249;
goto yy87;
-yy1193:
+yy1205:
yych = *++cursor_;
- if (yych == 'a') goto yy1238;
- if (yych == 'c') goto yy1239;
+ if (yych == 'a') goto yy1250;
+ if (yych == 'c') goto yy1251;
goto yy87;
-yy1194:
+yy1206:
yych = *++cursor_;
- if (yych == 'b') goto yy1240;
+ if (yych == 'b') goto yy1252;
goto yy87;
-yy1195:
+yy1207:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 443 "src/wast-lexer.cc"
+#line 444 "src/wast-lexer.cc"
{ RETURN_OPCODE0(CurrentMemory); }
-#line 6740 "src/prebuilt/wast-lexer-gen.cc"
-yy1197:
+#line 6803 "src/prebuilt/wast-lexer-gen.cc"
+yy1209:
yych = *++cursor_;
- if (yych == 'i') goto yy1241;
+ if (yych == 'i') goto yy1253;
goto yy87;
-yy1198:
+yy1210:
yych = *++cursor_;
- if (yych == 'i') goto yy1242;
+ if (yych == 'i') goto yy1254;
goto yy87;
-yy1199:
+yy1211:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 436 "src/wast-lexer.cc"
+#line 437 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32DemoteF64); }
-#line 6756 "src/prebuilt/wast-lexer-gen.cc"
-yy1201:
+#line 6819 "src/prebuilt/wast-lexer-gen.cc"
+yy1213:
yych = *++cursor_;
- if (yych == 't') goto yy1243;
+ if (yych == 't') goto yy1255;
goto yy87;
-yy1202:
+yy1214:
yych = *++cursor_;
- if (yych == 'i') goto yy1244;
+ if (yych == 'i') goto yy1256;
goto yy87;
-yy1203:
+yy1215:
yych = *++cursor_;
- if (yych == 'i') goto yy1245;
+ if (yych == 'i') goto yy1257;
goto yy87;
-yy1204:
+yy1216:
yych = *++cursor_;
- if (yych == '2') goto yy1246;
+ if (yych == '2') goto yy1258;
goto yy87;
-yy1205:
+yy1217:
yych = *++cursor_;
- if (yych == 't') goto yy1248;
+ if (yych == 't') goto yy1260;
goto yy87;
-yy1206:
+yy1218:
yych = *++cursor_;
- if (yych == 'd') goto yy1249;
+ if (yych == 'd') goto yy1261;
goto yy87;
-yy1207:
+yy1219:
yych = *++cursor_;
if (yych <= '0') {
- if (yych == '.') goto yy1251;
+ if (yych == '.') goto yy1263;
goto yy87;
} else {
- if (yych <= '1') goto yy1252;
- if (yych == '8') goto yy1253;
+ if (yych <= '1') goto yy1264;
+ if (yych == '8') goto yy1265;
goto yy87;
}
-yy1208:
+yy1220:
yych = *++cursor_;
- if (yych == 'r') goto yy1254;
+ if (yych == 'r') goto yy1266;
goto yy87;
-yy1209:
+yy1221:
yych = *++cursor_;
- if (yych == 't') goto yy1255;
+ if (yych == 't') goto yy1267;
goto yy87;
-yy1210:
+yy1222:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 328 "src/wast-lexer.cc"
+#line 329 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I32Extend16S); }
-#line 6806 "src/prebuilt/wast-lexer-gen.cc"
-yy1212:
+#line 6869 "src/prebuilt/wast-lexer-gen.cc"
+yy1224:
yych = *++cursor_;
- if (yych == 't') goto yy1257;
+ if (yych == 't') goto yy1269;
goto yy87;
-yy1213:
+yy1225:
yych = *++cursor_;
- if (yych == '2') goto yy1258;
+ if (yych == '2') goto yy1270;
goto yy87;
-yy1214:
+yy1226:
yych = *++cursor_;
- if (yych == '4') goto yy1260;
+ if (yych == '4') goto yy1272;
goto yy87;
-yy1215:
+yy1227:
yych = *++cursor_;
- if (yych == 't') goto yy1262;
+ if (yych == 't') goto yy1274;
goto yy87;
-yy1216:
+yy1228:
yych = *++cursor_;
- if (yych == '2') goto yy1263;
+ if (yych == '2') goto yy1275;
goto yy87;
-yy1217:
+yy1229:
yych = *++cursor_;
- if (yych == '4') goto yy1265;
+ if (yych == '4') goto yy1277;
goto yy87;
-yy1218:
+yy1230:
yych = *++cursor_;
- if (yych == 't') goto yy1267;
+ if (yych == 't') goto yy1279;
goto yy87;
-yy1219:
+yy1231:
yych = *++cursor_;
- if (yych == 'd') goto yy1268;
+ if (yych == 'd') goto yy1280;
goto yy87;
-yy1220:
+yy1232:
yych = *++cursor_;
switch (yych) {
- case '.': goto yy1270;
- case '1': goto yy1271;
- case '3': goto yy1272;
- case '8': goto yy1273;
+ case '.': goto yy1282;
+ case '1': goto yy1283;
+ case '3': goto yy1284;
+ case '8': goto yy1285;
default: goto yy87;
}
-yy1221:
+yy1233:
yych = *++cursor_;
- if (yych == 'r') goto yy1274;
+ if (yych == 'r') goto yy1286;
goto yy87;
-yy1222:
+yy1234:
yych = *++cursor_;
- if (yych == 't') goto yy1275;
+ if (yych == 't') goto yy1287;
goto yy87;
-yy1223:
+yy1235:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 330 "src/wast-lexer.cc"
+#line 331 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Extend16S); }
-#line 6863 "src/prebuilt/wast-lexer-gen.cc"
-yy1225:
+#line 6926 "src/prebuilt/wast-lexer-gen.cc"
+yy1237:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 331 "src/wast-lexer.cc"
+#line 332 "src/wast-lexer.cc"
{ RETURN_OPCODE(Unary, I64Extend32S); }
-#line 6871 "src/prebuilt/wast-lexer-gen.cc"
-yy1227:
+#line 6934 "src/prebuilt/wast-lexer-gen.cc"
+yy1239:
yych = *++cursor_;
- if (yych == '3') goto yy1277;
+ if (yych == '3') goto yy1289;
goto yy87;
-yy1228:
+yy1240:
yych = *++cursor_;
- if (yych == '3') goto yy1278;
+ if (yych == '3') goto yy1290;
goto yy87;
-yy1229:
+yy1241:
yych = *++cursor_;
- if (yych == 't') goto yy1279;
+ if (yych == 't') goto yy1291;
goto yy87;
-yy1230:
+yy1242:
yych = *++cursor_;
- if (yych == '2') goto yy1280;
+ if (yych == '2') goto yy1292;
goto yy87;
-yy1231:
+yy1243:
yych = *++cursor_;
- if (yych == '4') goto yy1282;
+ if (yych == '4') goto yy1294;
goto yy87;
-yy1232:
+yy1244:
yych = *++cursor_;
- if (yych == 't') goto yy1284;
+ if (yych == 't') goto yy1296;
goto yy87;
-yy1233:
+yy1245:
yych = *++cursor_;
- if (yych == '2') goto yy1285;
+ if (yych == '2') goto yy1297;
goto yy87;
-yy1234:
+yy1246:
yych = *++cursor_;
- if (yych == '4') goto yy1287;
+ if (yych == '4') goto yy1299;
goto yy87;
-yy1235:
+yy1247:
yych = *++cursor_;
- if (yych == 't') goto yy1289;
+ if (yych == 't') goto yy1301;
goto yy87;
-yy1236:
+yy1248:
yych = *++cursor_;
- if (yych == 'o') goto yy1290;
+ if (yych == 'o') goto yy1302;
goto yy87;
-yy1237:
+yy1249:
yych = *++cursor_;
- if (yych == 'd') goto yy1291;
+ if (yych == 'd') goto yy1303;
goto yy87;
-yy1238:
+yy1250:
yych = *++cursor_;
- if (yych == 'r') goto yy1293;
+ if (yych == 'r') goto yy1305;
goto yy87;
-yy1239:
+yy1251:
yych = *++cursor_;
- if (yych == 'a') goto yy1294;
+ if (yych == 'a') goto yy1306;
goto yy87;
-yy1240:
+yy1252:
yych = *++cursor_;
- if (yych == 'l') goto yy1295;
+ if (yych == 'l') goto yy1307;
goto yy87;
-yy1241:
+yy1253:
yych = *++cursor_;
- if (yych == '3') goto yy1296;
- if (yych == '6') goto yy1297;
+ if (yych == '3') goto yy1308;
+ if (yych == '6') goto yy1309;
goto yy87;
-yy1242:
+yy1254:
yych = *++cursor_;
- if (yych == '3') goto yy1298;
- if (yych == '6') goto yy1299;
+ if (yych == '3') goto yy1310;
+ if (yych == '6') goto yy1311;
goto yy87;
-yy1243:
+yy1255:
yych = *++cursor_;
- if (yych == '/') goto yy1300;
+ if (yych == '/') goto yy1312;
goto yy87;
-yy1244:
+yy1256:
yych = *++cursor_;
- if (yych == '3') goto yy1301;
- if (yych == '6') goto yy1302;
+ if (yych == '3') goto yy1313;
+ if (yych == '6') goto yy1314;
goto yy87;
-yy1245:
+yy1257:
yych = *++cursor_;
- if (yych == '3') goto yy1303;
- if (yych == '6') goto yy1304;
+ if (yych == '3') goto yy1315;
+ if (yych == '6') goto yy1316;
goto yy87;
-yy1246:
+yy1258:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 435 "src/wast-lexer.cc"
+#line 436 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64PromoteF32); }
-#line 6959 "src/prebuilt/wast-lexer-gen.cc"
-yy1248:
+#line 7022 "src/prebuilt/wast-lexer-gen.cc"
+yy1260:
yych = *++cursor_;
- if (yych == '/') goto yy1305;
+ if (yych == '/') goto yy1317;
goto yy87;
-yy1249:
+yy1261:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -6971,306 +7034,306 @@ yy1249:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy1306;
+ if (yych <= '1') goto yy1318;
if (yych <= '7') goto yy86;
- goto yy1307;
+ goto yy1319;
} else {
- if (yych == ';') goto yy1250;
+ if (yych == ';') goto yy1262;
if (yych <= '~') goto yy86;
}
}
-yy1250:
-#line 449 "src/wast-lexer.cc"
+yy1262:
+#line 450 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I32AtomicLoad); }
-#line 6986 "src/prebuilt/wast-lexer-gen.cc"
-yy1251:
+#line 7049 "src/prebuilt/wast-lexer-gen.cc"
+yy1263:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1308;
- case 'c': goto yy1309;
- case 'o': goto yy1310;
- case 's': goto yy1311;
- case 'x': goto yy1312;
+ case 'a': goto yy1320;
+ case 'c': goto yy1321;
+ case 'o': goto yy1322;
+ case 's': goto yy1323;
+ case 'x': goto yy1324;
default: goto yy87;
}
-yy1252:
+yy1264:
yych = *++cursor_;
- if (yych == '6') goto yy1313;
+ if (yych == '6') goto yy1325;
goto yy87;
-yy1253:
+yy1265:
yych = *++cursor_;
- if (yych == '_') goto yy1314;
+ if (yych == '_') goto yy1326;
goto yy87;
-yy1254:
+yy1266:
yych = *++cursor_;
- if (yych == 'e') goto yy1315;
+ if (yych == 'e') goto yy1327;
goto yy87;
-yy1255:
+yy1267:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 446 "src/wast-lexer.cc"
+#line 447 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicWait, I32AtomicWait); }
-#line 7016 "src/prebuilt/wast-lexer-gen.cc"
-yy1257:
+#line 7079 "src/prebuilt/wast-lexer-gen.cc"
+yy1269:
yych = *++cursor_;
- if (yych == '/') goto yy1317;
+ if (yych == '/') goto yy1329;
goto yy87;
-yy1258:
+yy1270:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 411 "src/wast-lexer.cc"
+#line 412 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSF32); }
-#line 7028 "src/prebuilt/wast-lexer-gen.cc"
-yy1260:
+#line 7091 "src/prebuilt/wast-lexer-gen.cc"
+yy1272:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 413 "src/wast-lexer.cc"
+#line 414 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSF64); }
-#line 7036 "src/prebuilt/wast-lexer-gen.cc"
-yy1262:
+#line 7099 "src/prebuilt/wast-lexer-gen.cc"
+yy1274:
yych = *++cursor_;
- if (yych == '/') goto yy1318;
+ if (yych == '/') goto yy1330;
goto yy87;
-yy1263:
+yy1275:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 415 "src/wast-lexer.cc"
+#line 416 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUF32); }
-#line 7048 "src/prebuilt/wast-lexer-gen.cc"
-yy1265:
+#line 7111 "src/prebuilt/wast-lexer-gen.cc"
+yy1277:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 417 "src/wast-lexer.cc"
+#line 418 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUF64); }
-#line 7056 "src/prebuilt/wast-lexer-gen.cc"
-yy1267:
+#line 7119 "src/prebuilt/wast-lexer-gen.cc"
+yy1279:
yych = *++cursor_;
- if (yych == '/') goto yy1319;
+ if (yych == '/') goto yy1331;
goto yy87;
-yy1268:
+yy1280:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy1269;
+ if (yych <= ')') goto yy1281;
if (yych <= '0') goto yy86;
- goto yy1320;
+ goto yy1332;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy1321;
+ if (yych == '3') goto yy1333;
if (yych <= '7') goto yy86;
- goto yy1322;
+ goto yy1334;
} else {
- if (yych == ';') goto yy1269;
+ if (yych == ';') goto yy1281;
if (yych <= '~') goto yy86;
}
}
-yy1269:
-#line 450 "src/wast-lexer.cc"
+yy1281:
+#line 451 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad); }
-#line 7085 "src/prebuilt/wast-lexer-gen.cc"
-yy1270:
+#line 7148 "src/prebuilt/wast-lexer-gen.cc"
+yy1282:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1323;
- case 'c': goto yy1324;
- case 'o': goto yy1325;
- case 's': goto yy1326;
- case 'x': goto yy1327;
+ case 'a': goto yy1335;
+ case 'c': goto yy1336;
+ case 'o': goto yy1337;
+ case 's': goto yy1338;
+ case 'x': goto yy1339;
default: goto yy87;
}
-yy1271:
+yy1283:
yych = *++cursor_;
- if (yych == '6') goto yy1328;
+ if (yych == '6') goto yy1340;
goto yy87;
-yy1272:
+yy1284:
yych = *++cursor_;
- if (yych == '2') goto yy1329;
+ if (yych == '2') goto yy1341;
goto yy87;
-yy1273:
+yy1285:
yych = *++cursor_;
- if (yych == '_') goto yy1330;
+ if (yych == '_') goto yy1342;
goto yy87;
-yy1274:
+yy1286:
yych = *++cursor_;
- if (yych == 'e') goto yy1331;
+ if (yych == 'e') goto yy1343;
goto yy87;
-yy1275:
+yy1287:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 447 "src/wast-lexer.cc"
+#line 448 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicWait, I64AtomicWait); }
-#line 7119 "src/prebuilt/wast-lexer-gen.cc"
-yy1277:
+#line 7182 "src/prebuilt/wast-lexer-gen.cc"
+yy1289:
yych = *++cursor_;
- if (yych == '2') goto yy1333;
+ if (yych == '2') goto yy1345;
goto yy87;
-yy1278:
+yy1290:
yych = *++cursor_;
- if (yych == '2') goto yy1335;
+ if (yych == '2') goto yy1347;
goto yy87;
-yy1279:
+yy1291:
yych = *++cursor_;
- if (yych == '/') goto yy1337;
+ if (yych == '/') goto yy1349;
goto yy87;
-yy1280:
+yy1292:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 412 "src/wast-lexer.cc"
+#line 413 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSF32); }
-#line 7139 "src/prebuilt/wast-lexer-gen.cc"
-yy1282:
+#line 7202 "src/prebuilt/wast-lexer-gen.cc"
+yy1294:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 414 "src/wast-lexer.cc"
+#line 415 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSF64); }
-#line 7147 "src/prebuilt/wast-lexer-gen.cc"
-yy1284:
+#line 7210 "src/prebuilt/wast-lexer-gen.cc"
+yy1296:
yych = *++cursor_;
- if (yych == '/') goto yy1338;
+ if (yych == '/') goto yy1350;
goto yy87;
-yy1285:
+yy1297:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 416 "src/wast-lexer.cc"
+#line 417 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUF32); }
-#line 7159 "src/prebuilt/wast-lexer-gen.cc"
-yy1287:
+#line 7222 "src/prebuilt/wast-lexer-gen.cc"
+yy1299:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 418 "src/wast-lexer.cc"
+#line 419 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUF64); }
-#line 7167 "src/prebuilt/wast-lexer-gen.cc"
-yy1289:
+#line 7230 "src/prebuilt/wast-lexer-gen.cc"
+yy1301:
yych = *++cursor_;
- if (yych == '/') goto yy1339;
+ if (yych == '/') goto yy1351;
goto yy87;
-yy1290:
+yy1302:
yych = *++cursor_;
- if (yych == 'n') goto yy1340;
+ if (yych == 'n') goto yy1352;
goto yy87;
-yy1291:
+yy1303:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 534 "src/wast-lexer.cc"
+#line 537 "src/wast-lexer.cc"
{ RETURN(AssertMalformed); }
-#line 7183 "src/prebuilt/wast-lexer-gen.cc"
-yy1293:
+#line 7246 "src/prebuilt/wast-lexer-gen.cc"
+yy1305:
yych = *++cursor_;
- if (yych == 'i') goto yy1342;
+ if (yych == 'i') goto yy1354;
goto yy87;
-yy1294:
+yy1306:
yych = *++cursor_;
- if (yych == 'n') goto yy1343;
+ if (yych == 'n') goto yy1355;
goto yy87;
-yy1295:
+yy1307:
yych = *++cursor_;
- if (yych == 'e') goto yy1344;
+ if (yych == 'e') goto yy1356;
goto yy87;
-yy1296:
+yy1308:
yych = *++cursor_;
- if (yych == '2') goto yy1346;
+ if (yych == '2') goto yy1358;
goto yy87;
-yy1297:
+yy1309:
yych = *++cursor_;
- if (yych == '4') goto yy1348;
+ if (yych == '4') goto yy1360;
goto yy87;
-yy1298:
+yy1310:
yych = *++cursor_;
- if (yych == '2') goto yy1350;
+ if (yych == '2') goto yy1362;
goto yy87;
-yy1299:
+yy1311:
yych = *++cursor_;
- if (yych == '4') goto yy1352;
+ if (yych == '4') goto yy1364;
goto yy87;
-yy1300:
+yy1312:
yych = *++cursor_;
- if (yych == 'i') goto yy1354;
+ if (yych == 'i') goto yy1366;
goto yy87;
-yy1301:
+yy1313:
yych = *++cursor_;
- if (yych == '2') goto yy1355;
+ if (yych == '2') goto yy1367;
goto yy87;
-yy1302:
+yy1314:
yych = *++cursor_;
- if (yych == '4') goto yy1357;
+ if (yych == '4') goto yy1369;
goto yy87;
-yy1303:
+yy1315:
yych = *++cursor_;
- if (yych == '2') goto yy1359;
+ if (yych == '2') goto yy1371;
goto yy87;
-yy1304:
+yy1316:
yych = *++cursor_;
- if (yych == '4') goto yy1361;
+ if (yych == '4') goto yy1373;
goto yy87;
-yy1305:
+yy1317:
yych = *++cursor_;
- if (yych == 'i') goto yy1363;
+ if (yych == 'i') goto yy1375;
goto yy87;
-yy1306:
+yy1318:
yych = *++cursor_;
- if (yych == '6') goto yy1364;
+ if (yych == '6') goto yy1376;
goto yy87;
-yy1307:
+yy1319:
yych = *++cursor_;
- if (yych == '_') goto yy1365;
+ if (yych == '_') goto yy1377;
goto yy87;
-yy1308:
+yy1320:
yych = *++cursor_;
- if (yych == 'd') goto yy1366;
- if (yych == 'n') goto yy1367;
+ if (yych == 'd') goto yy1378;
+ if (yych == 'n') goto yy1379;
goto yy87;
-yy1309:
+yy1321:
yych = *++cursor_;
- if (yych == 'm') goto yy1368;
+ if (yych == 'm') goto yy1380;
goto yy87;
-yy1310:
+yy1322:
yych = *++cursor_;
- if (yych == 'r') goto yy1369;
+ if (yych == 'r') goto yy1381;
goto yy87;
-yy1311:
+yy1323:
yych = *++cursor_;
- if (yych == 'u') goto yy1371;
+ if (yych == 'u') goto yy1383;
goto yy87;
-yy1312:
+yy1324:
yych = *++cursor_;
- if (yych == 'c') goto yy1372;
- if (yych == 'o') goto yy1373;
+ if (yych == 'c') goto yy1384;
+ if (yych == 'o') goto yy1385;
goto yy87;
-yy1313:
+yy1325:
yych = *++cursor_;
- if (yych == '_') goto yy1374;
+ if (yych == '_') goto yy1386;
goto yy87;
-yy1314:
+yy1326:
yych = *++cursor_;
- if (yych == 'u') goto yy1375;
+ if (yych == 'u') goto yy1387;
goto yy87;
-yy1315:
+yy1327:
++cursor_;
if ((yych = *cursor_) <= '0') {
if (yych <= '"') {
@@ -7281,1508 +7344,1508 @@ yy1315:
}
} else {
if (yych <= '8') {
- if (yych <= '1') goto yy1376;
+ if (yych <= '1') goto yy1388;
if (yych <= '7') goto yy86;
- goto yy1377;
+ goto yy1389;
} else {
- if (yych == ';') goto yy1316;
+ if (yych == ';') goto yy1328;
if (yych <= '~') goto yy86;
}
}
-yy1316:
-#line 456 "src/wast-lexer.cc"
+yy1328:
+#line 457 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I32AtomicStore); }
-#line 7296 "src/prebuilt/wast-lexer-gen.cc"
-yy1317:
+#line 7359 "src/prebuilt/wast-lexer-gen.cc"
+yy1329:
yych = *++cursor_;
- if (yych == 'f') goto yy1379;
+ if (yych == 'f') goto yy1391;
goto yy87;
-yy1318:
+yy1330:
yych = *++cursor_;
- if (yych == 'f') goto yy1380;
+ if (yych == 'f') goto yy1392;
goto yy87;
-yy1319:
+yy1331:
yych = *++cursor_;
- if (yych == 'f') goto yy1381;
+ if (yych == 'f') goto yy1393;
goto yy87;
-yy1320:
+yy1332:
yych = *++cursor_;
- if (yych == '6') goto yy1382;
+ if (yych == '6') goto yy1394;
goto yy87;
-yy1321:
+yy1333:
yych = *++cursor_;
- if (yych == '2') goto yy1383;
+ if (yych == '2') goto yy1395;
goto yy87;
-yy1322:
+yy1334:
yych = *++cursor_;
- if (yych == '_') goto yy1384;
+ if (yych == '_') goto yy1396;
goto yy87;
-yy1323:
+yy1335:
yych = *++cursor_;
- if (yych == 'd') goto yy1385;
- if (yych == 'n') goto yy1386;
+ if (yych == 'd') goto yy1397;
+ if (yych == 'n') goto yy1398;
goto yy87;
-yy1324:
+yy1336:
yych = *++cursor_;
- if (yych == 'm') goto yy1387;
+ if (yych == 'm') goto yy1399;
goto yy87;
-yy1325:
+yy1337:
yych = *++cursor_;
- if (yych == 'r') goto yy1388;
+ if (yych == 'r') goto yy1400;
goto yy87;
-yy1326:
+yy1338:
yych = *++cursor_;
- if (yych == 'u') goto yy1390;
+ if (yych == 'u') goto yy1402;
goto yy87;
-yy1327:
+yy1339:
yych = *++cursor_;
- if (yych == 'c') goto yy1391;
- if (yych == 'o') goto yy1392;
+ if (yych == 'c') goto yy1403;
+ if (yych == 'o') goto yy1404;
goto yy87;
-yy1328:
+yy1340:
yych = *++cursor_;
- if (yych == '_') goto yy1393;
+ if (yych == '_') goto yy1405;
goto yy87;
-yy1329:
+yy1341:
yych = *++cursor_;
- if (yych == '_') goto yy1394;
+ if (yych == '_') goto yy1406;
goto yy87;
-yy1330:
+yy1342:
yych = *++cursor_;
- if (yych == 'u') goto yy1395;
+ if (yych == 'u') goto yy1407;
goto yy87;
-yy1331:
+yy1343:
++cursor_;
if ((yych = *cursor_) <= '1') {
if (yych <= '"') {
if (yych == '!') goto yy86;
} else {
if (yych <= '\'') goto yy86;
- if (yych <= ')') goto yy1332;
+ if (yych <= ')') goto yy1344;
if (yych <= '0') goto yy86;
- goto yy1396;
+ goto yy1408;
}
} else {
if (yych <= '8') {
- if (yych == '3') goto yy1397;
+ if (yych == '3') goto yy1409;
if (yych <= '7') goto yy86;
- goto yy1398;
+ goto yy1410;
} else {
- if (yych == ';') goto yy1332;
+ if (yych == ';') goto yy1344;
if (yych <= '~') goto yy86;
}
}
-yy1332:
-#line 457 "src/wast-lexer.cc"
+yy1344:
+#line 458 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore); }
-#line 7379 "src/prebuilt/wast-lexer-gen.cc"
-yy1333:
+#line 7442 "src/prebuilt/wast-lexer-gen.cc"
+yy1345:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 408 "src/wast-lexer.cc"
+#line 409 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64ExtendSI32); }
-#line 7387 "src/prebuilt/wast-lexer-gen.cc"
-yy1335:
+#line 7450 "src/prebuilt/wast-lexer-gen.cc"
+yy1347:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 409 "src/wast-lexer.cc"
+#line 410 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64ExtendUI32); }
-#line 7395 "src/prebuilt/wast-lexer-gen.cc"
-yy1337:
+#line 7458 "src/prebuilt/wast-lexer-gen.cc"
+yy1349:
yych = *++cursor_;
- if (yych == 'f') goto yy1400;
+ if (yych == 'f') goto yy1412;
goto yy87;
-yy1338:
+yy1350:
yych = *++cursor_;
- if (yych == 'f') goto yy1401;
+ if (yych == 'f') goto yy1413;
goto yy87;
-yy1339:
+yy1351:
yych = *++cursor_;
- if (yych == 'f') goto yy1402;
+ if (yych == 'f') goto yy1414;
goto yy87;
-yy1340:
+yy1352:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 541 "src/wast-lexer.cc"
+#line 544 "src/wast-lexer.cc"
{ RETURN(AssertExhaustion); }
-#line 7415 "src/prebuilt/wast-lexer-gen.cc"
-yy1342:
+#line 7478 "src/prebuilt/wast-lexer-gen.cc"
+yy1354:
yych = *++cursor_;
- if (yych == 't') goto yy1403;
+ if (yych == 't') goto yy1415;
goto yy87;
-yy1343:
+yy1355:
yych = *++cursor_;
- if (yych == 'o') goto yy1404;
+ if (yych == 'o') goto yy1416;
goto yy87;
-yy1344:
+yy1356:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 536 "src/wast-lexer.cc"
+#line 539 "src/wast-lexer.cc"
{ RETURN(AssertUnlinkable); }
-#line 7431 "src/prebuilt/wast-lexer-gen.cc"
-yy1346:
+#line 7494 "src/prebuilt/wast-lexer-gen.cc"
+yy1358:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 427 "src/wast-lexer.cc"
+#line 428 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertSI32); }
-#line 7439 "src/prebuilt/wast-lexer-gen.cc"
-yy1348:
+#line 7502 "src/prebuilt/wast-lexer-gen.cc"
+yy1360:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 429 "src/wast-lexer.cc"
+#line 430 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertSI64); }
-#line 7447 "src/prebuilt/wast-lexer-gen.cc"
-yy1350:
+#line 7510 "src/prebuilt/wast-lexer-gen.cc"
+yy1362:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 431 "src/wast-lexer.cc"
+#line 432 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertUI32); }
-#line 7455 "src/prebuilt/wast-lexer-gen.cc"
-yy1352:
+#line 7518 "src/prebuilt/wast-lexer-gen.cc"
+yy1364:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 433 "src/wast-lexer.cc"
+#line 434 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ConvertUI64); }
-#line 7463 "src/prebuilt/wast-lexer-gen.cc"
-yy1354:
+#line 7526 "src/prebuilt/wast-lexer-gen.cc"
+yy1366:
yych = *++cursor_;
- if (yych == '3') goto yy1405;
+ if (yych == '3') goto yy1417;
goto yy87;
-yy1355:
+yy1367:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 428 "src/wast-lexer.cc"
+#line 429 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertSI32); }
-#line 7475 "src/prebuilt/wast-lexer-gen.cc"
-yy1357:
+#line 7538 "src/prebuilt/wast-lexer-gen.cc"
+yy1369:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 430 "src/wast-lexer.cc"
+#line 431 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertSI64); }
-#line 7483 "src/prebuilt/wast-lexer-gen.cc"
-yy1359:
+#line 7546 "src/prebuilt/wast-lexer-gen.cc"
+yy1371:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 432 "src/wast-lexer.cc"
+#line 433 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertUI32); }
-#line 7491 "src/prebuilt/wast-lexer-gen.cc"
-yy1361:
+#line 7554 "src/prebuilt/wast-lexer-gen.cc"
+yy1373:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 434 "src/wast-lexer.cc"
+#line 435 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ConvertUI64); }
-#line 7499 "src/prebuilt/wast-lexer-gen.cc"
-yy1363:
+#line 7562 "src/prebuilt/wast-lexer-gen.cc"
+yy1375:
yych = *++cursor_;
- if (yych == '6') goto yy1406;
+ if (yych == '6') goto yy1418;
goto yy87;
-yy1364:
+yy1376:
yych = *++cursor_;
- if (yych == '_') goto yy1407;
+ if (yych == '_') goto yy1419;
goto yy87;
-yy1365:
+yy1377:
yych = *++cursor_;
- if (yych == 'u') goto yy1408;
+ if (yych == 'u') goto yy1420;
goto yy87;
-yy1366:
+yy1378:
yych = *++cursor_;
- if (yych == 'd') goto yy1410;
+ if (yych == 'd') goto yy1422;
goto yy87;
-yy1367:
+yy1379:
yych = *++cursor_;
- if (yych == 'd') goto yy1412;
+ if (yych == 'd') goto yy1424;
goto yy87;
-yy1368:
+yy1380:
yych = *++cursor_;
- if (yych == 'p') goto yy1414;
+ if (yych == 'p') goto yy1426;
goto yy87;
-yy1369:
+yy1381:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 484 "src/wast-lexer.cc"
+#line 485 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwOr); }
-#line 7531 "src/prebuilt/wast-lexer-gen.cc"
-yy1371:
+#line 7594 "src/prebuilt/wast-lexer-gen.cc"
+yy1383:
yych = *++cursor_;
- if (yych == 'b') goto yy1415;
+ if (yych == 'b') goto yy1427;
goto yy87;
-yy1372:
+yy1384:
yych = *++cursor_;
- if (yych == 'h') goto yy1417;
+ if (yych == 'h') goto yy1429;
goto yy87;
-yy1373:
+yy1385:
yych = *++cursor_;
- if (yych == 'r') goto yy1418;
+ if (yych == 'r') goto yy1430;
goto yy87;
-yy1374:
+yy1386:
yych = *++cursor_;
- if (yych == 'u') goto yy1420;
+ if (yych == 'u') goto yy1432;
goto yy87;
-yy1375:
+yy1387:
yych = *++cursor_;
- if (yych == '.') goto yy1421;
+ if (yych == '.') goto yy1433;
goto yy87;
-yy1376:
+yy1388:
yych = *++cursor_;
- if (yych == '6') goto yy1422;
+ if (yych == '6') goto yy1434;
goto yy87;
-yy1377:
+yy1389:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 458 "src/wast-lexer.cc"
+#line 459 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I32AtomicStore8); }
-#line 7563 "src/prebuilt/wast-lexer-gen.cc"
-yy1379:
+#line 7626 "src/prebuilt/wast-lexer-gen.cc"
+yy1391:
yych = *++cursor_;
- if (yych == '3') goto yy1424;
+ if (yych == '3') goto yy1436;
goto yy87;
-yy1380:
+yy1392:
yych = *++cursor_;
- if (yych == '3') goto yy1425;
- if (yych == '6') goto yy1426;
+ if (yych == '3') goto yy1437;
+ if (yych == '6') goto yy1438;
goto yy87;
-yy1381:
+yy1393:
yych = *++cursor_;
- if (yych == '3') goto yy1427;
- if (yych == '6') goto yy1428;
+ if (yych == '3') goto yy1439;
+ if (yych == '6') goto yy1440;
goto yy87;
-yy1382:
+yy1394:
yych = *++cursor_;
- if (yych == '_') goto yy1429;
+ if (yych == '_') goto yy1441;
goto yy87;
-yy1383:
+yy1395:
yych = *++cursor_;
- if (yych == '_') goto yy1430;
+ if (yych == '_') goto yy1442;
goto yy87;
-yy1384:
+yy1396:
yych = *++cursor_;
- if (yych == 'u') goto yy1431;
+ if (yych == 'u') goto yy1443;
goto yy87;
-yy1385:
+yy1397:
yych = *++cursor_;
- if (yych == 'd') goto yy1433;
+ if (yych == 'd') goto yy1445;
goto yy87;
-yy1386:
+yy1398:
yych = *++cursor_;
- if (yych == 'd') goto yy1435;
+ if (yych == 'd') goto yy1447;
goto yy87;
-yy1387:
+yy1399:
yych = *++cursor_;
- if (yych == 'p') goto yy1437;
+ if (yych == 'p') goto yy1449;
goto yy87;
-yy1388:
+yy1400:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 485 "src/wast-lexer.cc"
+#line 486 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwOr); }
-#line 7609 "src/prebuilt/wast-lexer-gen.cc"
-yy1390:
+#line 7672 "src/prebuilt/wast-lexer-gen.cc"
+yy1402:
yych = *++cursor_;
- if (yych == 'b') goto yy1438;
+ if (yych == 'b') goto yy1450;
goto yy87;
-yy1391:
+yy1403:
yych = *++cursor_;
- if (yych == 'h') goto yy1440;
+ if (yych == 'h') goto yy1452;
goto yy87;
-yy1392:
+yy1404:
yych = *++cursor_;
- if (yych == 'r') goto yy1441;
+ if (yych == 'r') goto yy1453;
goto yy87;
-yy1393:
+yy1405:
yych = *++cursor_;
- if (yych == 'u') goto yy1443;
+ if (yych == 'u') goto yy1455;
goto yy87;
-yy1394:
+yy1406:
yych = *++cursor_;
- if (yych == 'u') goto yy1444;
+ if (yych == 'u') goto yy1456;
goto yy87;
-yy1395:
+yy1407:
yych = *++cursor_;
- if (yych == '.') goto yy1445;
+ if (yych == '.') goto yy1457;
goto yy87;
-yy1396:
+yy1408:
yych = *++cursor_;
- if (yych == '6') goto yy1446;
+ if (yych == '6') goto yy1458;
goto yy87;
-yy1397:
+yy1409:
yych = *++cursor_;
- if (yych == '2') goto yy1448;
+ if (yych == '2') goto yy1460;
goto yy87;
-yy1398:
+yy1410:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 460 "src/wast-lexer.cc"
+#line 461 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore8); }
-#line 7649 "src/prebuilt/wast-lexer-gen.cc"
-yy1400:
+#line 7712 "src/prebuilt/wast-lexer-gen.cc"
+yy1412:
yych = *++cursor_;
- if (yych == '6') goto yy1450;
+ if (yych == '6') goto yy1462;
goto yy87;
-yy1401:
+yy1413:
yych = *++cursor_;
- if (yych == '3') goto yy1451;
- if (yych == '6') goto yy1452;
+ if (yych == '3') goto yy1463;
+ if (yych == '6') goto yy1464;
goto yy87;
-yy1402:
+yy1414:
yych = *++cursor_;
- if (yych == '3') goto yy1453;
- if (yych == '6') goto yy1454;
+ if (yych == '3') goto yy1465;
+ if (yych == '6') goto yy1466;
goto yy87;
-yy1403:
+yy1415:
yych = *++cursor_;
- if (yych == 'h') goto yy1455;
+ if (yych == 'h') goto yy1467;
goto yy87;
-yy1404:
+yy1416:
yych = *++cursor_;
- if (yych == 'n') goto yy1456;
+ if (yych == 'n') goto yy1468;
goto yy87;
-yy1405:
+yy1417:
yych = *++cursor_;
- if (yych == '2') goto yy1457;
+ if (yych == '2') goto yy1469;
goto yy87;
-yy1406:
+yy1418:
yych = *++cursor_;
- if (yych == '4') goto yy1459;
+ if (yych == '4') goto yy1471;
goto yy87;
-yy1407:
+yy1419:
yych = *++cursor_;
- if (yych == 'u') goto yy1461;
+ if (yych == 'u') goto yy1473;
goto yy87;
-yy1408:
+yy1420:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 451 "src/wast-lexer.cc"
+#line 452 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I32AtomicLoad8U); }
-#line 7691 "src/prebuilt/wast-lexer-gen.cc"
-yy1410:
+#line 7754 "src/prebuilt/wast-lexer-gen.cc"
+yy1422:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 463 "src/wast-lexer.cc"
+#line 464 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwAdd); }
-#line 7699 "src/prebuilt/wast-lexer-gen.cc"
-yy1412:
+#line 7762 "src/prebuilt/wast-lexer-gen.cc"
+yy1424:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 477 "src/wast-lexer.cc"
+#line 478 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwAnd); }
-#line 7707 "src/prebuilt/wast-lexer-gen.cc"
-yy1414:
+#line 7770 "src/prebuilt/wast-lexer-gen.cc"
+yy1426:
yych = *++cursor_;
- if (yych == 'x') goto yy1463;
+ if (yych == 'x') goto yy1475;
goto yy87;
-yy1415:
+yy1427:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 470 "src/wast-lexer.cc"
+#line 471 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwSub); }
-#line 7719 "src/prebuilt/wast-lexer-gen.cc"
-yy1417:
+#line 7782 "src/prebuilt/wast-lexer-gen.cc"
+yy1429:
yych = *++cursor_;
- if (yych == 'g') goto yy1464;
+ if (yych == 'g') goto yy1476;
goto yy87;
-yy1418:
+yy1430:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 491 "src/wast-lexer.cc"
+#line 492 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwXor); }
-#line 7731 "src/prebuilt/wast-lexer-gen.cc"
-yy1420:
+#line 7794 "src/prebuilt/wast-lexer-gen.cc"
+yy1432:
yych = *++cursor_;
- if (yych == '.') goto yy1466;
+ if (yych == '.') goto yy1478;
goto yy87;
-yy1421:
+yy1433:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1467;
- case 'c': goto yy1468;
- case 'o': goto yy1469;
- case 's': goto yy1470;
- case 'x': goto yy1471;
+ case 'a': goto yy1479;
+ case 'c': goto yy1480;
+ case 'o': goto yy1481;
+ case 's': goto yy1482;
+ case 'x': goto yy1483;
default: goto yy87;
}
-yy1422:
+yy1434:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 459 "src/wast-lexer.cc"
+#line 460 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I32AtomicStore16); }
-#line 7753 "src/prebuilt/wast-lexer-gen.cc"
-yy1424:
+#line 7816 "src/prebuilt/wast-lexer-gen.cc"
+yy1436:
yych = *++cursor_;
- if (yych == '2') goto yy1472;
+ if (yych == '2') goto yy1484;
goto yy87;
-yy1425:
+yy1437:
yych = *++cursor_;
- if (yych == '2') goto yy1474;
+ if (yych == '2') goto yy1486;
goto yy87;
-yy1426:
+yy1438:
yych = *++cursor_;
- if (yych == '4') goto yy1476;
+ if (yych == '4') goto yy1488;
goto yy87;
-yy1427:
+yy1439:
yych = *++cursor_;
- if (yych == '2') goto yy1478;
+ if (yych == '2') goto yy1490;
goto yy87;
-yy1428:
+yy1440:
yych = *++cursor_;
- if (yych == '4') goto yy1480;
+ if (yych == '4') goto yy1492;
goto yy87;
-yy1429:
+yy1441:
yych = *++cursor_;
- if (yych == 'u') goto yy1482;
+ if (yych == 'u') goto yy1494;
goto yy87;
-yy1430:
+yy1442:
yych = *++cursor_;
- if (yych == 'u') goto yy1484;
+ if (yych == 'u') goto yy1496;
goto yy87;
-yy1431:
+yy1443:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 453 "src/wast-lexer.cc"
+#line 454 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad8U); }
-#line 7789 "src/prebuilt/wast-lexer-gen.cc"
-yy1433:
+#line 7852 "src/prebuilt/wast-lexer-gen.cc"
+yy1445:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 464 "src/wast-lexer.cc"
+#line 465 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwAdd); }
-#line 7797 "src/prebuilt/wast-lexer-gen.cc"
-yy1435:
+#line 7860 "src/prebuilt/wast-lexer-gen.cc"
+yy1447:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 478 "src/wast-lexer.cc"
+#line 479 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwAnd); }
-#line 7805 "src/prebuilt/wast-lexer-gen.cc"
-yy1437:
+#line 7868 "src/prebuilt/wast-lexer-gen.cc"
+yy1449:
yych = *++cursor_;
- if (yych == 'x') goto yy1486;
+ if (yych == 'x') goto yy1498;
goto yy87;
-yy1438:
+yy1450:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 471 "src/wast-lexer.cc"
+#line 472 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwSub); }
-#line 7817 "src/prebuilt/wast-lexer-gen.cc"
-yy1440:
+#line 7880 "src/prebuilt/wast-lexer-gen.cc"
+yy1452:
yych = *++cursor_;
- if (yych == 'g') goto yy1487;
+ if (yych == 'g') goto yy1499;
goto yy87;
-yy1441:
+yy1453:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 492 "src/wast-lexer.cc"
+#line 493 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwXor); }
-#line 7829 "src/prebuilt/wast-lexer-gen.cc"
-yy1443:
+#line 7892 "src/prebuilt/wast-lexer-gen.cc"
+yy1455:
yych = *++cursor_;
- if (yych == '.') goto yy1489;
+ if (yych == '.') goto yy1501;
goto yy87;
-yy1444:
+yy1456:
yych = *++cursor_;
- if (yych == '.') goto yy1490;
+ if (yych == '.') goto yy1502;
goto yy87;
-yy1445:
+yy1457:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1491;
- case 'c': goto yy1492;
- case 'o': goto yy1493;
- case 's': goto yy1494;
- case 'x': goto yy1495;
+ case 'a': goto yy1503;
+ case 'c': goto yy1504;
+ case 'o': goto yy1505;
+ case 's': goto yy1506;
+ case 'x': goto yy1507;
default: goto yy87;
}
-yy1446:
+yy1458:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 461 "src/wast-lexer.cc"
+#line 462 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore16); }
-#line 7855 "src/prebuilt/wast-lexer-gen.cc"
-yy1448:
+#line 7918 "src/prebuilt/wast-lexer-gen.cc"
+yy1460:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 462 "src/wast-lexer.cc"
+#line 463 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicStore, I64AtomicStore32); }
-#line 7863 "src/prebuilt/wast-lexer-gen.cc"
-yy1450:
+#line 7926 "src/prebuilt/wast-lexer-gen.cc"
+yy1462:
yych = *++cursor_;
- if (yych == '4') goto yy1496;
+ if (yych == '4') goto yy1508;
goto yy87;
-yy1451:
+yy1463:
yych = *++cursor_;
- if (yych == '2') goto yy1498;
+ if (yych == '2') goto yy1510;
goto yy87;
-yy1452:
+yy1464:
yych = *++cursor_;
- if (yych == '4') goto yy1500;
+ if (yych == '4') goto yy1512;
goto yy87;
-yy1453:
+yy1465:
yych = *++cursor_;
- if (yych == '2') goto yy1502;
+ if (yych == '2') goto yy1514;
goto yy87;
-yy1454:
+yy1466:
yych = *++cursor_;
- if (yych == '4') goto yy1504;
+ if (yych == '4') goto yy1516;
goto yy87;
-yy1455:
+yy1467:
yych = *++cursor_;
- if (yych == 'm') goto yy1506;
+ if (yych == 'm') goto yy1518;
goto yy87;
-yy1456:
+yy1468:
yych = *++cursor_;
- if (yych == 'i') goto yy1507;
+ if (yych == 'i') goto yy1519;
goto yy87;
-yy1457:
+yy1469:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 437 "src/wast-lexer.cc"
+#line 438 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F32ReinterpretI32); }
-#line 7899 "src/prebuilt/wast-lexer-gen.cc"
-yy1459:
+#line 7962 "src/prebuilt/wast-lexer-gen.cc"
+yy1471:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 439 "src/wast-lexer.cc"
+#line 440 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, F64ReinterpretI64); }
-#line 7907 "src/prebuilt/wast-lexer-gen.cc"
-yy1461:
+#line 7970 "src/prebuilt/wast-lexer-gen.cc"
+yy1473:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 452 "src/wast-lexer.cc"
+#line 453 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I32AtomicLoad16U); }
-#line 7915 "src/prebuilt/wast-lexer-gen.cc"
-yy1463:
+#line 7978 "src/prebuilt/wast-lexer-gen.cc"
+yy1475:
yych = *++cursor_;
- if (yych == 'c') goto yy1508;
+ if (yych == 'c') goto yy1520;
goto yy87;
-yy1464:
+yy1476:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 498 "src/wast-lexer.cc"
+#line 499 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmwXchg); }
-#line 7927 "src/prebuilt/wast-lexer-gen.cc"
-yy1466:
+#line 7990 "src/prebuilt/wast-lexer-gen.cc"
+yy1478:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1509;
- case 'c': goto yy1510;
- case 'o': goto yy1511;
- case 's': goto yy1512;
- case 'x': goto yy1513;
+ case 'a': goto yy1521;
+ case 'c': goto yy1522;
+ case 'o': goto yy1523;
+ case 's': goto yy1524;
+ case 'x': goto yy1525;
default: goto yy87;
}
-yy1467:
+yy1479:
yych = *++cursor_;
- if (yych == 'd') goto yy1514;
- if (yych == 'n') goto yy1515;
+ if (yych == 'd') goto yy1526;
+ if (yych == 'n') goto yy1527;
goto yy87;
-yy1468:
+yy1480:
yych = *++cursor_;
- if (yych == 'm') goto yy1516;
+ if (yych == 'm') goto yy1528;
goto yy87;
-yy1469:
+yy1481:
yych = *++cursor_;
- if (yych == 'r') goto yy1517;
+ if (yych == 'r') goto yy1529;
goto yy87;
-yy1470:
+yy1482:
yych = *++cursor_;
- if (yych == 'u') goto yy1519;
+ if (yych == 'u') goto yy1531;
goto yy87;
-yy1471:
+yy1483:
yych = *++cursor_;
- if (yych == 'c') goto yy1520;
- if (yych == 'o') goto yy1521;
+ if (yych == 'c') goto yy1532;
+ if (yych == 'o') goto yy1533;
goto yy87;
-yy1472:
+yy1484:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 438 "src/wast-lexer.cc"
+#line 439 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32ReinterpretF32); }
-#line 7967 "src/prebuilt/wast-lexer-gen.cc"
-yy1474:
+#line 8030 "src/prebuilt/wast-lexer-gen.cc"
+yy1486:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 419 "src/wast-lexer.cc"
+#line 420 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSSatF32); }
-#line 7975 "src/prebuilt/wast-lexer-gen.cc"
-yy1476:
+#line 8038 "src/prebuilt/wast-lexer-gen.cc"
+yy1488:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 421 "src/wast-lexer.cc"
+#line 422 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncSSatF64); }
-#line 7983 "src/prebuilt/wast-lexer-gen.cc"
-yy1478:
+#line 8046 "src/prebuilt/wast-lexer-gen.cc"
+yy1490:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 423 "src/wast-lexer.cc"
+#line 424 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUSatF32); }
-#line 7991 "src/prebuilt/wast-lexer-gen.cc"
-yy1480:
+#line 8054 "src/prebuilt/wast-lexer-gen.cc"
+yy1492:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 425 "src/wast-lexer.cc"
+#line 426 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I32TruncUSatF64); }
-#line 7999 "src/prebuilt/wast-lexer-gen.cc"
-yy1482:
+#line 8062 "src/prebuilt/wast-lexer-gen.cc"
+yy1494:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 454 "src/wast-lexer.cc"
+#line 455 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad16U); }
-#line 8007 "src/prebuilt/wast-lexer-gen.cc"
-yy1484:
+#line 8070 "src/prebuilt/wast-lexer-gen.cc"
+yy1496:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 455 "src/wast-lexer.cc"
+#line 456 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicLoad, I64AtomicLoad32U); }
-#line 8015 "src/prebuilt/wast-lexer-gen.cc"
-yy1486:
+#line 8078 "src/prebuilt/wast-lexer-gen.cc"
+yy1498:
yych = *++cursor_;
- if (yych == 'c') goto yy1522;
+ if (yych == 'c') goto yy1534;
goto yy87;
-yy1487:
+yy1499:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 499 "src/wast-lexer.cc"
+#line 500 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmwXchg); }
-#line 8027 "src/prebuilt/wast-lexer-gen.cc"
-yy1489:
+#line 8090 "src/prebuilt/wast-lexer-gen.cc"
+yy1501:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1523;
- case 'c': goto yy1524;
- case 'o': goto yy1525;
- case 's': goto yy1526;
- case 'x': goto yy1527;
+ case 'a': goto yy1535;
+ case 'c': goto yy1536;
+ case 'o': goto yy1537;
+ case 's': goto yy1538;
+ case 'x': goto yy1539;
default: goto yy87;
}
-yy1490:
+yy1502:
yych = *++cursor_;
switch (yych) {
- case 'a': goto yy1528;
- case 'c': goto yy1529;
- case 'o': goto yy1530;
- case 's': goto yy1531;
- case 'x': goto yy1532;
+ case 'a': goto yy1540;
+ case 'c': goto yy1541;
+ case 'o': goto yy1542;
+ case 's': goto yy1543;
+ case 'x': goto yy1544;
default: goto yy87;
}
-yy1491:
+yy1503:
yych = *++cursor_;
- if (yych == 'd') goto yy1533;
- if (yych == 'n') goto yy1534;
+ if (yych == 'd') goto yy1545;
+ if (yych == 'n') goto yy1546;
goto yy87;
-yy1492:
+yy1504:
yych = *++cursor_;
- if (yych == 'm') goto yy1535;
+ if (yych == 'm') goto yy1547;
goto yy87;
-yy1493:
+yy1505:
yych = *++cursor_;
- if (yych == 'r') goto yy1536;
+ if (yych == 'r') goto yy1548;
goto yy87;
-yy1494:
+yy1506:
yych = *++cursor_;
- if (yych == 'u') goto yy1538;
+ if (yych == 'u') goto yy1550;
goto yy87;
-yy1495:
+yy1507:
yych = *++cursor_;
- if (yych == 'c') goto yy1539;
- if (yych == 'o') goto yy1540;
+ if (yych == 'c') goto yy1551;
+ if (yych == 'o') goto yy1552;
goto yy87;
-yy1496:
+yy1508:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 440 "src/wast-lexer.cc"
+#line 441 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64ReinterpretF64); }
-#line 8077 "src/prebuilt/wast-lexer-gen.cc"
-yy1498:
+#line 8140 "src/prebuilt/wast-lexer-gen.cc"
+yy1510:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 420 "src/wast-lexer.cc"
+#line 421 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSSatF32); }
-#line 8085 "src/prebuilt/wast-lexer-gen.cc"
-yy1500:
+#line 8148 "src/prebuilt/wast-lexer-gen.cc"
+yy1512:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 422 "src/wast-lexer.cc"
+#line 423 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncSSatF64); }
-#line 8093 "src/prebuilt/wast-lexer-gen.cc"
-yy1502:
+#line 8156 "src/prebuilt/wast-lexer-gen.cc"
+yy1514:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 424 "src/wast-lexer.cc"
+#line 425 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUSatF32); }
-#line 8101 "src/prebuilt/wast-lexer-gen.cc"
-yy1504:
+#line 8164 "src/prebuilt/wast-lexer-gen.cc"
+yy1516:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 426 "src/wast-lexer.cc"
+#line 427 "src/wast-lexer.cc"
{ RETURN_OPCODE(Convert, I64TruncUSatF64); }
-#line 8109 "src/prebuilt/wast-lexer-gen.cc"
-yy1506:
+#line 8172 "src/prebuilt/wast-lexer-gen.cc"
+yy1518:
yych = *++cursor_;
- if (yych == 'e') goto yy1541;
+ if (yych == 'e') goto yy1553;
goto yy87;
-yy1507:
+yy1519:
yych = *++cursor_;
- if (yych == 'c') goto yy1542;
+ if (yych == 'c') goto yy1554;
goto yy87;
-yy1508:
+yy1520:
yych = *++cursor_;
- if (yych == 'h') goto yy1543;
+ if (yych == 'h') goto yy1555;
goto yy87;
-yy1509:
+yy1521:
yych = *++cursor_;
- if (yych == 'd') goto yy1544;
- if (yych == 'n') goto yy1545;
+ if (yych == 'd') goto yy1556;
+ if (yych == 'n') goto yy1557;
goto yy87;
-yy1510:
+yy1522:
yych = *++cursor_;
- if (yych == 'm') goto yy1546;
+ if (yych == 'm') goto yy1558;
goto yy87;
-yy1511:
+yy1523:
yych = *++cursor_;
- if (yych == 'r') goto yy1547;
+ if (yych == 'r') goto yy1559;
goto yy87;
-yy1512:
+yy1524:
yych = *++cursor_;
- if (yych == 'u') goto yy1549;
+ if (yych == 'u') goto yy1561;
goto yy87;
-yy1513:
+yy1525:
yych = *++cursor_;
- if (yych == 'c') goto yy1550;
- if (yych == 'o') goto yy1551;
+ if (yych == 'c') goto yy1562;
+ if (yych == 'o') goto yy1563;
goto yy87;
-yy1514:
+yy1526:
yych = *++cursor_;
- if (yych == 'd') goto yy1552;
+ if (yych == 'd') goto yy1564;
goto yy87;
-yy1515:
+yy1527:
yych = *++cursor_;
- if (yych == 'd') goto yy1554;
+ if (yych == 'd') goto yy1566;
goto yy87;
-yy1516:
+yy1528:
yych = *++cursor_;
- if (yych == 'p') goto yy1556;
+ if (yych == 'p') goto yy1568;
goto yy87;
-yy1517:
+yy1529:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 486 "src/wast-lexer.cc"
+#line 487 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UOr); }
-#line 8163 "src/prebuilt/wast-lexer-gen.cc"
-yy1519:
+#line 8226 "src/prebuilt/wast-lexer-gen.cc"
+yy1531:
yych = *++cursor_;
- if (yych == 'b') goto yy1557;
+ if (yych == 'b') goto yy1569;
goto yy87;
-yy1520:
+yy1532:
yych = *++cursor_;
- if (yych == 'h') goto yy1559;
+ if (yych == 'h') goto yy1571;
goto yy87;
-yy1521:
+yy1533:
yych = *++cursor_;
- if (yych == 'r') goto yy1560;
+ if (yych == 'r') goto yy1572;
goto yy87;
-yy1522:
+yy1534:
yych = *++cursor_;
- if (yych == 'h') goto yy1562;
+ if (yych == 'h') goto yy1574;
goto yy87;
-yy1523:
+yy1535:
yych = *++cursor_;
- if (yych == 'd') goto yy1563;
- if (yych == 'n') goto yy1564;
+ if (yych == 'd') goto yy1575;
+ if (yych == 'n') goto yy1576;
goto yy87;
-yy1524:
+yy1536:
yych = *++cursor_;
- if (yych == 'm') goto yy1565;
+ if (yych == 'm') goto yy1577;
goto yy87;
-yy1525:
+yy1537:
yych = *++cursor_;
- if (yych == 'r') goto yy1566;
+ if (yych == 'r') goto yy1578;
goto yy87;
-yy1526:
+yy1538:
yych = *++cursor_;
- if (yych == 'u') goto yy1568;
+ if (yych == 'u') goto yy1580;
goto yy87;
-yy1527:
+yy1539:
yych = *++cursor_;
- if (yych == 'c') goto yy1569;
- if (yych == 'o') goto yy1570;
+ if (yych == 'c') goto yy1581;
+ if (yych == 'o') goto yy1582;
goto yy87;
-yy1528:
+yy1540:
yych = *++cursor_;
- if (yych == 'd') goto yy1571;
- if (yych == 'n') goto yy1572;
+ if (yych == 'd') goto yy1583;
+ if (yych == 'n') goto yy1584;
goto yy87;
-yy1529:
+yy1541:
yych = *++cursor_;
- if (yych == 'm') goto yy1573;
+ if (yych == 'm') goto yy1585;
goto yy87;
-yy1530:
+yy1542:
yych = *++cursor_;
- if (yych == 'r') goto yy1574;
+ if (yych == 'r') goto yy1586;
goto yy87;
-yy1531:
+yy1543:
yych = *++cursor_;
- if (yych == 'u') goto yy1576;
+ if (yych == 'u') goto yy1588;
goto yy87;
-yy1532:
+yy1544:
yych = *++cursor_;
- if (yych == 'c') goto yy1577;
- if (yych == 'o') goto yy1578;
+ if (yych == 'c') goto yy1589;
+ if (yych == 'o') goto yy1590;
goto yy87;
-yy1533:
+yy1545:
yych = *++cursor_;
- if (yych == 'd') goto yy1579;
+ if (yych == 'd') goto yy1591;
goto yy87;
-yy1534:
+yy1546:
yych = *++cursor_;
- if (yych == 'd') goto yy1581;
+ if (yych == 'd') goto yy1593;
goto yy87;
-yy1535:
+yy1547:
yych = *++cursor_;
- if (yych == 'p') goto yy1583;
+ if (yych == 'p') goto yy1595;
goto yy87;
-yy1536:
+yy1548:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 488 "src/wast-lexer.cc"
+#line 489 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UOr); }
-#line 8243 "src/prebuilt/wast-lexer-gen.cc"
-yy1538:
+#line 8306 "src/prebuilt/wast-lexer-gen.cc"
+yy1550:
yych = *++cursor_;
- if (yych == 'b') goto yy1584;
+ if (yych == 'b') goto yy1596;
goto yy87;
-yy1539:
+yy1551:
yych = *++cursor_;
- if (yych == 'h') goto yy1586;
+ if (yych == 'h') goto yy1598;
goto yy87;
-yy1540:
+yy1552:
yych = *++cursor_;
- if (yych == 'r') goto yy1587;
+ if (yych == 'r') goto yy1599;
goto yy87;
-yy1541:
+yy1553:
yych = *++cursor_;
- if (yych == 't') goto yy1589;
+ if (yych == 't') goto yy1601;
goto yy87;
-yy1542:
+yy1554:
yych = *++cursor_;
- if (yych == 'a') goto yy1590;
+ if (yych == 'a') goto yy1602;
goto yy87;
-yy1543:
+yy1555:
yych = *++cursor_;
- if (yych == 'g') goto yy1591;
+ if (yych == 'g') goto yy1603;
goto yy87;
-yy1544:
+yy1556:
yych = *++cursor_;
- if (yych == 'd') goto yy1593;
+ if (yych == 'd') goto yy1605;
goto yy87;
-yy1545:
+yy1557:
yych = *++cursor_;
- if (yych == 'd') goto yy1595;
+ if (yych == 'd') goto yy1607;
goto yy87;
-yy1546:
+yy1558:
yych = *++cursor_;
- if (yych == 'p') goto yy1597;
+ if (yych == 'p') goto yy1609;
goto yy87;
-yy1547:
+yy1559:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 487 "src/wast-lexer.cc"
+#line 488 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UOr); }
-#line 8287 "src/prebuilt/wast-lexer-gen.cc"
-yy1549:
+#line 8350 "src/prebuilt/wast-lexer-gen.cc"
+yy1561:
yych = *++cursor_;
- if (yych == 'b') goto yy1598;
+ if (yych == 'b') goto yy1610;
goto yy87;
-yy1550:
+yy1562:
yych = *++cursor_;
- if (yych == 'h') goto yy1600;
+ if (yych == 'h') goto yy1612;
goto yy87;
-yy1551:
+yy1563:
yych = *++cursor_;
- if (yych == 'r') goto yy1601;
+ if (yych == 'r') goto yy1613;
goto yy87;
-yy1552:
+yy1564:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 465 "src/wast-lexer.cc"
+#line 466 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UAdd); }
-#line 8307 "src/prebuilt/wast-lexer-gen.cc"
-yy1554:
+#line 8370 "src/prebuilt/wast-lexer-gen.cc"
+yy1566:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 479 "src/wast-lexer.cc"
+#line 480 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UAnd); }
-#line 8315 "src/prebuilt/wast-lexer-gen.cc"
-yy1556:
+#line 8378 "src/prebuilt/wast-lexer-gen.cc"
+yy1568:
yych = *++cursor_;
- if (yych == 'x') goto yy1603;
+ if (yych == 'x') goto yy1615;
goto yy87;
-yy1557:
+yy1569:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 472 "src/wast-lexer.cc"
+#line 473 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8USub); }
-#line 8327 "src/prebuilt/wast-lexer-gen.cc"
-yy1559:
+#line 8390 "src/prebuilt/wast-lexer-gen.cc"
+yy1571:
yych = *++cursor_;
- if (yych == 'g') goto yy1604;
+ if (yych == 'g') goto yy1616;
goto yy87;
-yy1560:
+yy1572:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 493 "src/wast-lexer.cc"
+#line 494 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UXor); }
-#line 8339 "src/prebuilt/wast-lexer-gen.cc"
-yy1562:
+#line 8402 "src/prebuilt/wast-lexer-gen.cc"
+yy1574:
yych = *++cursor_;
- if (yych == 'g') goto yy1606;
+ if (yych == 'g') goto yy1618;
goto yy87;
-yy1563:
+yy1575:
yych = *++cursor_;
- if (yych == 'd') goto yy1608;
+ if (yych == 'd') goto yy1620;
goto yy87;
-yy1564:
+yy1576:
yych = *++cursor_;
- if (yych == 'd') goto yy1610;
+ if (yych == 'd') goto yy1622;
goto yy87;
-yy1565:
+yy1577:
yych = *++cursor_;
- if (yych == 'p') goto yy1612;
+ if (yych == 'p') goto yy1624;
goto yy87;
-yy1566:
+yy1578:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 489 "src/wast-lexer.cc"
+#line 490 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UOr); }
-#line 8363 "src/prebuilt/wast-lexer-gen.cc"
-yy1568:
+#line 8426 "src/prebuilt/wast-lexer-gen.cc"
+yy1580:
yych = *++cursor_;
- if (yych == 'b') goto yy1613;
+ if (yych == 'b') goto yy1625;
goto yy87;
-yy1569:
+yy1581:
yych = *++cursor_;
- if (yych == 'h') goto yy1615;
+ if (yych == 'h') goto yy1627;
goto yy87;
-yy1570:
+yy1582:
yych = *++cursor_;
- if (yych == 'r') goto yy1616;
+ if (yych == 'r') goto yy1628;
goto yy87;
-yy1571:
+yy1583:
yych = *++cursor_;
- if (yych == 'd') goto yy1618;
+ if (yych == 'd') goto yy1630;
goto yy87;
-yy1572:
+yy1584:
yych = *++cursor_;
- if (yych == 'd') goto yy1620;
+ if (yych == 'd') goto yy1632;
goto yy87;
-yy1573:
+yy1585:
yych = *++cursor_;
- if (yych == 'p') goto yy1622;
+ if (yych == 'p') goto yy1634;
goto yy87;
-yy1574:
+yy1586:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 490 "src/wast-lexer.cc"
+#line 491 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UOr); }
-#line 8395 "src/prebuilt/wast-lexer-gen.cc"
-yy1576:
+#line 8458 "src/prebuilt/wast-lexer-gen.cc"
+yy1588:
yych = *++cursor_;
- if (yych == 'b') goto yy1623;
+ if (yych == 'b') goto yy1635;
goto yy87;
-yy1577:
+yy1589:
yych = *++cursor_;
- if (yych == 'h') goto yy1625;
+ if (yych == 'h') goto yy1637;
goto yy87;
-yy1578:
+yy1590:
yych = *++cursor_;
- if (yych == 'r') goto yy1626;
+ if (yych == 'r') goto yy1638;
goto yy87;
-yy1579:
+yy1591:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 467 "src/wast-lexer.cc"
+#line 468 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UAdd); }
-#line 8415 "src/prebuilt/wast-lexer-gen.cc"
-yy1581:
+#line 8478 "src/prebuilt/wast-lexer-gen.cc"
+yy1593:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 481 "src/wast-lexer.cc"
+#line 482 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UAnd); }
-#line 8423 "src/prebuilt/wast-lexer-gen.cc"
-yy1583:
+#line 8486 "src/prebuilt/wast-lexer-gen.cc"
+yy1595:
yych = *++cursor_;
- if (yych == 'x') goto yy1628;
+ if (yych == 'x') goto yy1640;
goto yy87;
-yy1584:
+yy1596:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 474 "src/wast-lexer.cc"
+#line 475 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8USub); }
-#line 8435 "src/prebuilt/wast-lexer-gen.cc"
-yy1586:
+#line 8498 "src/prebuilt/wast-lexer-gen.cc"
+yy1598:
yych = *++cursor_;
- if (yych == 'g') goto yy1629;
+ if (yych == 'g') goto yy1641;
goto yy87;
-yy1587:
+yy1599:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 495 "src/wast-lexer.cc"
+#line 496 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UXor); }
-#line 8447 "src/prebuilt/wast-lexer-gen.cc"
-yy1589:
+#line 8510 "src/prebuilt/wast-lexer-gen.cc"
+yy1601:
yych = *++cursor_;
- if (yych == 'i') goto yy1631;
+ if (yych == 'i') goto yy1643;
goto yy87;
-yy1590:
+yy1602:
yych = *++cursor_;
- if (yych == 'l') goto yy1632;
+ if (yych == 'l') goto yy1644;
goto yy87;
-yy1591:
+yy1603:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 505 "src/wast-lexer.cc"
+#line 506 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I32AtomicRmwCmpxchg); }
-#line 8463 "src/prebuilt/wast-lexer-gen.cc"
-yy1593:
+#line 8526 "src/prebuilt/wast-lexer-gen.cc"
+yy1605:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 466 "src/wast-lexer.cc"
+#line 467 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UAdd); }
-#line 8471 "src/prebuilt/wast-lexer-gen.cc"
-yy1595:
+#line 8534 "src/prebuilt/wast-lexer-gen.cc"
+yy1607:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 480 "src/wast-lexer.cc"
+#line 481 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UAnd); }
-#line 8479 "src/prebuilt/wast-lexer-gen.cc"
-yy1597:
+#line 8542 "src/prebuilt/wast-lexer-gen.cc"
+yy1609:
yych = *++cursor_;
- if (yych == 'x') goto yy1633;
+ if (yych == 'x') goto yy1645;
goto yy87;
-yy1598:
+yy1610:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 473 "src/wast-lexer.cc"
+#line 474 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16USub); }
-#line 8491 "src/prebuilt/wast-lexer-gen.cc"
-yy1600:
+#line 8554 "src/prebuilt/wast-lexer-gen.cc"
+yy1612:
yych = *++cursor_;
- if (yych == 'g') goto yy1634;
+ if (yych == 'g') goto yy1646;
goto yy87;
-yy1601:
+yy1613:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 494 "src/wast-lexer.cc"
+#line 495 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UXor); }
-#line 8503 "src/prebuilt/wast-lexer-gen.cc"
-yy1603:
+#line 8566 "src/prebuilt/wast-lexer-gen.cc"
+yy1615:
yych = *++cursor_;
- if (yych == 'c') goto yy1636;
+ if (yych == 'c') goto yy1648;
goto yy87;
-yy1604:
+yy1616:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 500 "src/wast-lexer.cc"
+#line 501 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw8UXchg); }
-#line 8515 "src/prebuilt/wast-lexer-gen.cc"
-yy1606:
+#line 8578 "src/prebuilt/wast-lexer-gen.cc"
+yy1618:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 506 "src/wast-lexer.cc"
+#line 507 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmwCmpxchg); }
-#line 8523 "src/prebuilt/wast-lexer-gen.cc"
-yy1608:
+#line 8586 "src/prebuilt/wast-lexer-gen.cc"
+yy1620:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 468 "src/wast-lexer.cc"
+#line 469 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UAdd); }
-#line 8531 "src/prebuilt/wast-lexer-gen.cc"
-yy1610:
+#line 8594 "src/prebuilt/wast-lexer-gen.cc"
+yy1622:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 482 "src/wast-lexer.cc"
+#line 483 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UAnd); }
-#line 8539 "src/prebuilt/wast-lexer-gen.cc"
-yy1612:
+#line 8602 "src/prebuilt/wast-lexer-gen.cc"
+yy1624:
yych = *++cursor_;
- if (yych == 'x') goto yy1637;
+ if (yych == 'x') goto yy1649;
goto yy87;
-yy1613:
+yy1625:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 475 "src/wast-lexer.cc"
+#line 476 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16USub); }
-#line 8551 "src/prebuilt/wast-lexer-gen.cc"
-yy1615:
+#line 8614 "src/prebuilt/wast-lexer-gen.cc"
+yy1627:
yych = *++cursor_;
- if (yych == 'g') goto yy1638;
+ if (yych == 'g') goto yy1650;
goto yy87;
-yy1616:
+yy1628:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 496 "src/wast-lexer.cc"
+#line 497 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UXor); }
-#line 8563 "src/prebuilt/wast-lexer-gen.cc"
-yy1618:
+#line 8626 "src/prebuilt/wast-lexer-gen.cc"
+yy1630:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 469 "src/wast-lexer.cc"
+#line 470 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UAdd); }
-#line 8571 "src/prebuilt/wast-lexer-gen.cc"
-yy1620:
+#line 8634 "src/prebuilt/wast-lexer-gen.cc"
+yy1632:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 483 "src/wast-lexer.cc"
+#line 484 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UAnd); }
-#line 8579 "src/prebuilt/wast-lexer-gen.cc"
-yy1622:
+#line 8642 "src/prebuilt/wast-lexer-gen.cc"
+yy1634:
yych = *++cursor_;
- if (yych == 'x') goto yy1640;
+ if (yych == 'x') goto yy1652;
goto yy87;
-yy1623:
+yy1635:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 476 "src/wast-lexer.cc"
+#line 477 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32USub); }
-#line 8591 "src/prebuilt/wast-lexer-gen.cc"
-yy1625:
+#line 8654 "src/prebuilt/wast-lexer-gen.cc"
+yy1637:
yych = *++cursor_;
- if (yych == 'g') goto yy1641;
+ if (yych == 'g') goto yy1653;
goto yy87;
-yy1626:
+yy1638:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 497 "src/wast-lexer.cc"
+#line 498 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UXor); }
-#line 8603 "src/prebuilt/wast-lexer-gen.cc"
-yy1628:
+#line 8666 "src/prebuilt/wast-lexer-gen.cc"
+yy1640:
yych = *++cursor_;
- if (yych == 'c') goto yy1643;
+ if (yych == 'c') goto yy1655;
goto yy87;
-yy1629:
+yy1641:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 502 "src/wast-lexer.cc"
+#line 503 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw8UXchg); }
-#line 8615 "src/prebuilt/wast-lexer-gen.cc"
-yy1631:
+#line 8678 "src/prebuilt/wast-lexer-gen.cc"
+yy1643:
yych = *++cursor_;
- if (yych == 'c') goto yy1644;
+ if (yych == 'c') goto yy1656;
goto yy87;
-yy1632:
+yy1644:
yych = *++cursor_;
- if (yych == '_') goto yy1645;
+ if (yych == '_') goto yy1657;
goto yy87;
-yy1633:
+yy1645:
yych = *++cursor_;
- if (yych == 'c') goto yy1646;
+ if (yych == 'c') goto yy1658;
goto yy87;
-yy1634:
+yy1646:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 501 "src/wast-lexer.cc"
+#line 502 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I32AtomicRmw16UXchg); }
-#line 8635 "src/prebuilt/wast-lexer-gen.cc"
-yy1636:
+#line 8698 "src/prebuilt/wast-lexer-gen.cc"
+yy1648:
yych = *++cursor_;
- if (yych == 'h') goto yy1647;
+ if (yych == 'h') goto yy1659;
goto yy87;
-yy1637:
+yy1649:
yych = *++cursor_;
- if (yych == 'c') goto yy1648;
+ if (yych == 'c') goto yy1660;
goto yy87;
-yy1638:
+yy1650:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 503 "src/wast-lexer.cc"
+#line 504 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw16UXchg); }
-#line 8651 "src/prebuilt/wast-lexer-gen.cc"
-yy1640:
+#line 8714 "src/prebuilt/wast-lexer-gen.cc"
+yy1652:
yych = *++cursor_;
- if (yych == 'c') goto yy1649;
+ if (yych == 'c') goto yy1661;
goto yy87;
-yy1641:
+yy1653:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 504 "src/wast-lexer.cc"
+#line 505 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmw, I64AtomicRmw32UXchg); }
-#line 8663 "src/prebuilt/wast-lexer-gen.cc"
-yy1643:
+#line 8726 "src/prebuilt/wast-lexer-gen.cc"
+yy1655:
yych = *++cursor_;
- if (yych == 'h') goto yy1650;
+ if (yych == 'h') goto yy1662;
goto yy87;
-yy1644:
+yy1656:
yych = *++cursor_;
- if (yych == '_') goto yy1651;
+ if (yych == '_') goto yy1663;
goto yy87;
-yy1645:
+yy1657:
yych = *++cursor_;
- if (yych == 'n') goto yy1652;
+ if (yych == 'n') goto yy1664;
goto yy87;
-yy1646:
+yy1658:
yych = *++cursor_;
- if (yych == 'h') goto yy1653;
+ if (yych == 'h') goto yy1665;
goto yy87;
-yy1647:
+yy1659:
yych = *++cursor_;
- if (yych == 'g') goto yy1654;
+ if (yych == 'g') goto yy1666;
goto yy87;
-yy1648:
+yy1660:
yych = *++cursor_;
- if (yych == 'h') goto yy1656;
+ if (yych == 'h') goto yy1668;
goto yy87;
-yy1649:
+yy1661:
yych = *++cursor_;
- if (yych == 'h') goto yy1657;
+ if (yych == 'h') goto yy1669;
goto yy87;
-yy1650:
+yy1662:
yych = *++cursor_;
- if (yych == 'g') goto yy1658;
+ if (yych == 'g') goto yy1670;
goto yy87;
-yy1651:
+yy1663:
yych = *++cursor_;
- if (yych == 'n') goto yy1660;
+ if (yych == 'n') goto yy1672;
goto yy87;
-yy1652:
+yy1664:
yych = *++cursor_;
- if (yych == 'a') goto yy1661;
+ if (yych == 'a') goto yy1673;
goto yy87;
-yy1653:
+yy1665:
yych = *++cursor_;
- if (yych == 'g') goto yy1662;
+ if (yych == 'g') goto yy1674;
goto yy87;
-yy1654:
+yy1666:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 507 "src/wast-lexer.cc"
+#line 508 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I32AtomicRmw8UCmpxchg); }
-#line 8715 "src/prebuilt/wast-lexer-gen.cc"
-yy1656:
+#line 8778 "src/prebuilt/wast-lexer-gen.cc"
+yy1668:
yych = *++cursor_;
- if (yych == 'g') goto yy1664;
+ if (yych == 'g') goto yy1676;
goto yy87;
-yy1657:
+yy1669:
yych = *++cursor_;
- if (yych == 'g') goto yy1666;
+ if (yych == 'g') goto yy1678;
goto yy87;
-yy1658:
+yy1670:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 509 "src/wast-lexer.cc"
+#line 510 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw8UCmpxchg); }
-#line 8731 "src/prebuilt/wast-lexer-gen.cc"
-yy1660:
+#line 8794 "src/prebuilt/wast-lexer-gen.cc"
+yy1672:
yych = *++cursor_;
- if (yych == 'a') goto yy1668;
+ if (yych == 'a') goto yy1680;
goto yy87;
-yy1661:
+yy1673:
yych = *++cursor_;
- if (yych == 'n') goto yy1669;
+ if (yych == 'n') goto yy1681;
goto yy87;
-yy1662:
+yy1674:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 508 "src/wast-lexer.cc"
+#line 509 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I32AtomicRmw16UCmpxchg); }
-#line 8747 "src/prebuilt/wast-lexer-gen.cc"
-yy1664:
+#line 8810 "src/prebuilt/wast-lexer-gen.cc"
+yy1676:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 510 "src/wast-lexer.cc"
+#line 511 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw16UCmpxchg); }
-#line 8755 "src/prebuilt/wast-lexer-gen.cc"
-yy1666:
+#line 8818 "src/prebuilt/wast-lexer-gen.cc"
+yy1678:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 511 "src/wast-lexer.cc"
+#line 512 "src/wast-lexer.cc"
{ RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw32UCmpxchg); }
-#line 8763 "src/prebuilt/wast-lexer-gen.cc"
-yy1668:
+#line 8826 "src/prebuilt/wast-lexer-gen.cc"
+yy1680:
yych = *++cursor_;
- if (yych == 'n') goto yy1671;
+ if (yych == 'n') goto yy1683;
goto yy87;
-yy1669:
+yy1681:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 538 "src/wast-lexer.cc"
+#line 541 "src/wast-lexer.cc"
{ RETURN(AssertReturnCanonicalNan); }
-#line 8775 "src/prebuilt/wast-lexer-gen.cc"
-yy1671:
+#line 8838 "src/prebuilt/wast-lexer-gen.cc"
+yy1683:
++cursor_;
if (yybm[0+(yych = *cursor_)] & 8) {
goto yy86;
}
-#line 539 "src/wast-lexer.cc"
+#line 542 "src/wast-lexer.cc"
{ RETURN(AssertReturnArithmeticNan); }
-#line 8783 "src/prebuilt/wast-lexer-gen.cc"
+#line 8846 "src/prebuilt/wast-lexer-gen.cc"
}
}
-#line 566 "src/wast-lexer.cc"
+#line 569 "src/wast-lexer.cc"
}
}
diff --git a/src/stream.h b/src/stream.h
index 7c1f04d4..75a082ea 100644
--- a/src/stream.h
+++ b/src/stream.h
@@ -96,6 +96,12 @@ class Stream {
PrintChars print_chars = PrintChars::No) {
Write(value, desc, print_chars);
}
+ void WriteU128(v128 value,
+ const char* desc = nullptr,
+ PrintChars print_chars = PrintChars::No) {
+ Write(value, desc, print_chars);
+ }
+
void WriteChar(char c,
const char* desc = nullptr,
PrintChars print_chars = PrintChars::No) {
diff --git a/src/wast-lexer.cc b/src/wast-lexer.cc
index 597b1b6b..da39dca3 100644
--- a/src/wast-lexer.cc
+++ b/src/wast-lexer.cc
@@ -255,6 +255,7 @@ Token WastLexer::GetToken(WastParser* parser) {
<i> "i64" { RETURN_TYPE(ValueType, I64); }
<i> "f32" { RETURN_TYPE(ValueType, F32); }
<i> "f64" { RETURN_TYPE(ValueType, F64); }
+ <i> "v128" { RETURN_TYPE(ValueType, V128); }
<i> "anyfunc" { RETURN(Anyfunc); }
<i> "mut" { RETURN(Mut); }
<i> "nop" { RETURN_OPCODE0(Nop); }
@@ -512,6 +513,8 @@ Token WastLexer::GetToken(WastParser* parser) {
<i> "i64.atomic.rmw8_u.cmpxchg" { RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw8UCmpxchg); }
<i> "i64.atomic.rmw16_u.cmpxchg" { RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw16UCmpxchg); }
<i> "i64.atomic.rmw32_u.cmpxchg" { RETURN_OPCODE(AtomicRmwCmpxchg, I64AtomicRmw32UCmpxchg); }
+ <i> "v128.const" { RETURN_OPCODE(Const, V128Const); }
+
<i> "type" { RETURN(Type); }
<i> "func" { RETURN(Func); }
diff --git a/src/wast-parser.cc b/src/wast-parser.cc
index 07316bcb..bc021daa 100644
--- a/src/wast-parser.cc
+++ b/src/wast-parser.cc
@@ -586,7 +586,7 @@ bool WastParser::ParseVarListOpt(VarVector* out_var_list) {
Result WastParser::ParseValueType(Type* out_type) {
WABT_TRACE(ParseValueType);
if (!PeekMatch(TokenType::ValueType)) {
- return ErrorExpected({"i32", "i64", "f32", "f64"});
+ return ErrorExpected({"i32", "i64", "f32", "f64", "v128"});
}
*out_type = Consume().type();
@@ -1499,28 +1499,86 @@ Result WastParser::ParsePlainInstr(std::unique_ptr<Expr>* out_expr) {
return Result::Ok;
}
+// Current Simd const type is V128 const only.
+// The current expected V128 const lists is:
+// i32 0xXXXXXXXX 0xXXXXXXXX 0xXXXXXXXX 0xXXXXXXXX
+Result WastParser::ParseSimdConst(Const* const_, Type in_type, int32_t nSimdConstBytes) {
+ WABT_TRACE(ParseSimdConst);
+
+ // Parse the Simd Consts according to input data type.
+ switch (in_type) {
+ case Type::I32: {
+ const_->loc = GetLocation();
+ int Count = nSimdConstBytes/sizeof(uint32_t);
+ // Meet expected "i32" token. start parse 4 i32 consts
+ for(int i=0; i<Count; i++) {
+ Location loc = GetLocation();
+
+ // Expected one 0xXXXXXXXX number
+ if (!PeekMatch(TokenType::Nat))
+ return ErrorExpected({"an Nat literal"}, "123");
+
+ Literal literal = Consume().literal();
+
+ string_view sv = literal.text;
+ const char* s = sv.begin();
+ const char* end = sv.end();
+ Result result;
+
+ result =
+ ParseInt32(s, end, &(const_->v128_bits.v[i]), ParseIntType::SignedAndUnsigned);
+
+ if (Failed(result)) {
+ Error(loc, "invalid literal \"%s\"", literal.text.c_str());
+ return Result::Error;
+ }
+ }
+ break;
+ }
+
+ default:
+ Error(const_->loc, "Expected i32 at start of simd constant");
+ return Result::Error;
+ }
+
+ return Result::Ok;
+}
+
Result WastParser::ParseConst(Const* const_) {
WABT_TRACE(ParseConst);
- Opcode opcode = Consume().opcode();
+ Token token = Consume();
+ Opcode opcode = token.opcode();
Literal literal;
+ string_view sv;
+ const char* s;
+ const char* end;
+ Type in_type = Type::Any;
const_->loc = GetLocation();
switch (Peek()) {
case TokenType::Nat:
case TokenType::Int:
- case TokenType::Float:
+ case TokenType::Float: {
literal = Consume().literal();
+ sv = literal.text;
+ s = sv.begin();
+ end = sv.end();
break;
-
+ }
+ case TokenType::ValueType: {
+ // ValueType token is valid here only when after a Simd const opcode.
+ if(opcode != Opcode::V128Const) {
+ return ErrorExpected({"a numeric literal for non-simd const opcode"}, "123, -45, 6.7e8");
+ }
+ // Get Simd Const input type.
+ in_type = Consume().type();
+ break;
+ }
default:
return ErrorExpected({"a numeric literal"}, "123, -45, 6.7e8");
}
- string_view sv = literal.text;
- const char* s = sv.begin();
- const char* end = sv.end();
-
Result result;
switch (opcode) {
case Opcode::I32Const:
@@ -1545,6 +1603,15 @@ Result WastParser::ParseConst(Const* const_) {
result = ParseDouble(literal.type, s, end, &const_->f64_bits);
break;
+ case Opcode::V128Const:
+ ErrorUnlessOpcodeEnabled(token);
+ const_->type = Type::V128;
+ // Parse V128 Simd Const (16 bytes).
+ result = ParseSimdConst(const_, in_type, sizeof(v128));
+ // ParseSimdConst report error already, just return here if parser get errors.
+ if (Failed(result)) return Result::Error;
+ break;
+
default:
assert(!"ParseConst called with invalid opcode");
return Result::Error;
@@ -1552,6 +1619,8 @@ Result WastParser::ParseConst(Const* const_) {
if (Failed(result)) {
Error(const_->loc, "invalid literal \"%s\"", literal.text.c_str());
+ // Return if parser get errors.
+ return Result::Error;
}
return Result::Ok;
diff --git a/src/wast-parser.h b/src/wast-parser.h
index 19233079..3c880c89 100644
--- a/src/wast-parser.h
+++ b/src/wast-parser.h
@@ -200,6 +200,8 @@ class WastParser {
template <typename T>
Result ParseAssertScriptModuleCommand(TokenType, CommandPtr*);
+ Result ParseSimdConst(Const*, Type, int32_t);
+
void CheckImportOrdering(Module*);
WastLexer* lexer_;
diff --git a/src/wat-writer.cc b/src/wat-writer.cc
index f0333540..7954989c 100644
--- a/src/wat-writer.cc
+++ b/src/wat-writer.cc
@@ -485,6 +485,14 @@ void WatWriter::WriteConst(const Const& const_) {
break;
}
+ case Type::V128: {
+ WritePutsSpace(Opcode::V128Const_Opcode.GetName());
+ Writef("i32 0x%08x 0x%08x 0x%08x 0x%08x", const_.v128_bits.v[0], const_.v128_bits.v[1],\
+ const_.v128_bits.v[2], const_.v128_bits.v[3]);
+ WriteNewline(NO_FORCE_NEWLINE);
+ break;
+ }
+
default:
assert(0);
break;
diff --git a/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt b/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt
new file mode 100644
index 00000000..b2a70f15
--- /dev/null
+++ b/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt
@@ -0,0 +1,19 @@
+;;; ERROR: 1
+(module (func i32.const i32 100))
+(module (func i64.const i32 100))
+(module (func f32.const i32 100))
+(module (func f64.const i32 100))
+(;; STDERR ;;;
+out/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt:2:25: error: unexpected token "i32", expected a numeric literal for non-simd const opcode (e.g. 123, -45, 6.7e8).
+(module (func i32.const i32 100))
+ ^^^
+out/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt:3:25: error: unexpected token "i32", expected a numeric literal for non-simd const opcode (e.g. 123, -45, 6.7e8).
+(module (func i64.const i32 100))
+ ^^^
+out/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt:4:25: error: unexpected token "i32", expected a numeric literal for non-simd const opcode (e.g. 123, -45, 6.7e8).
+(module (func f32.const i32 100))
+ ^^^
+out/test/parse/expr/bad-const-type-i32-in-non-simd-const.txt:5:25: error: unexpected token "i32", expected a numeric literal for non-simd const opcode (e.g. 123, -45, 6.7e8).
+(module (func f64.const i32 100))
+ ^^^
+;;; STDERR ;;)
diff --git a/test/parse/expr/bad-const-v128-nat-expected.txt b/test/parse/expr/bad-const-v128-nat-expected.txt
new file mode 100644
index 00000000..7ee4d755
--- /dev/null
+++ b/test/parse/expr/bad-const-v128-nat-expected.txt
@@ -0,0 +1,14 @@
+;;; ERROR: 1
+;;; FLAGS: --enable-simd
+(module
+ (func v128.const i32 0x12345678 -123 0x00000000 0xabcd3478))
+(module
+ (func v128.const i32 0x12345678 0x9 +234 0xabcd3478))
+(;; STDERR ;;;
+out/test/parse/expr/bad-const-v128-nat-expected.txt:4:35: error: unexpected token "-123", expected an Nat literal (e.g. 123).
+ (func v128.const i32 0x12345678 -123 0x00000000 0xabcd3478))
+ ^^^^
+out/test/parse/expr/bad-const-v128-nat-expected.txt:6:39: error: unexpected token "+234", expected an Nat literal (e.g. 123).
+ (func v128.const i32 0x12345678 0x9 +234 0xabcd3478))
+ ^^^^
+;;; STDERR ;;)
diff --git a/test/parse/expr/bad-const-v128-nat-overflow.txt b/test/parse/expr/bad-const-v128-nat-overflow.txt
new file mode 100644
index 00000000..e8423f9b
--- /dev/null
+++ b/test/parse/expr/bad-const-v128-nat-overflow.txt
@@ -0,0 +1,9 @@
+;;; ERROR: 1
+;;; FLAGS: --enable-simd
+(module
+ (func v128.const i32 0x12345678 0x123 4294967296 0xabcd3478))
+(;; STDERR ;;;
+out/test/parse/expr/bad-const-v128-nat-overflow.txt:4:41: error: invalid literal "4294967296"
+ (func v128.const i32 0x12345678 0x123 4294967296 0xabcd3478))
+ ^^^^^^^^^^
+;;; STDERR ;;)
diff --git a/test/parse/expr/bad-const-v128-type-i32-expected.txt b/test/parse/expr/bad-const-v128-type-i32-expected.txt
new file mode 100644
index 00000000..654bf851
--- /dev/null
+++ b/test/parse/expr/bad-const-v128-type-i32-expected.txt
@@ -0,0 +1,12 @@
+;;; ERROR: 1
+;;; FLAGS: --enable-simd
+(module (func v128.const 0x12345678 0x00000000 0x00000000 0xabcd3478))
+(module (func v128.const i64 0x12345678 0x00000000 0x00000000 0xabcd3478))
+(;; STDERR ;;;
+out/test/parse/expr/bad-const-v128-type-i32-expected.txt:3:26: error: Expected i32 at start of simd constant
+(module (func v128.const 0x12345678 0x00000000 0x00000000 0xabcd3478))
+ ^^^^^^^^^^
+out/test/parse/expr/bad-const-v128-type-i32-expected.txt:4:26: error: Expected i32 at start of simd constant
+(module (func v128.const i64 0x12345678 0x00000000 0x00000000 0xabcd3478))
+ ^^^
+;;; STDERR ;;)
diff --git a/test/parse/expr/const.txt b/test/parse/expr/const.txt
index 1904501c..de885f39 100644
--- a/test/parse/expr/const.txt
+++ b/test/parse/expr/const.txt
@@ -1,3 +1,4 @@
+;;; FLAGS: --enable-simd
(module
(func
i32.const 0
@@ -79,4 +80,8 @@
f64.const -0x1p-1
drop
f64.const 0x1.921fb54442d18p+2
+ drop
+ v128.const i32 0x11223344 0x55667788 0x99aabbcc 0xddeeff00
+ drop
+ v128.const i32 0x11223344 1432778632 2578103244 0xddeeff00
drop))
diff --git a/test/parse/func/bad-local-binding-no-type.txt b/test/parse/func/bad-local-binding-no-type.txt
index 4dc913d7..3ebc6df9 100644
--- a/test/parse/func/bad-local-binding-no-type.txt
+++ b/test/parse/func/bad-local-binding-no-type.txt
@@ -1,7 +1,7 @@
;;; ERROR: 1
(module (func (local $n)))
(;; STDERR ;;;
-out/test/parse/func/bad-local-binding-no-type.txt:2:24: error: unexpected token ")", expected i32, i64, f32 or f64.
+out/test/parse/func/bad-local-binding-no-type.txt:2:24: error: unexpected token ")", expected i32, i64, f32, f64 or v128.
(module (func (local $n)))
^
;;; STDERR ;;)
diff --git a/test/parse/func/bad-local-binding.txt b/test/parse/func/bad-local-binding.txt
index ce181874..0d2fed20 100644
--- a/test/parse/func/bad-local-binding.txt
+++ b/test/parse/func/bad-local-binding.txt
@@ -1,7 +1,7 @@
;;; ERROR: 1
(module (func (local $foo $bar)))
(;; STDERR ;;;
-out/test/parse/func/bad-local-binding.txt:2:27: error: unexpected token "$bar", expected i32, i64, f32 or f64.
+out/test/parse/func/bad-local-binding.txt:2:27: error: unexpected token "$bar", expected i32, i64, f32, f64 or v128.
(module (func (local $foo $bar)))
^^^^
;;; STDERR ;;)
diff --git a/test/parse/func/bad-param-binding.txt b/test/parse/func/bad-param-binding.txt
index b49e64b5..f405d5c7 100644
--- a/test/parse/func/bad-param-binding.txt
+++ b/test/parse/func/bad-param-binding.txt
@@ -1,7 +1,7 @@
;;; ERROR: 1
(module (func (param $bar $baz)))
(;; STDERR ;;;
-out/test/parse/func/bad-param-binding.txt:2:27: error: unexpected token "$baz", expected i32, i64, f32 or f64.
+out/test/parse/func/bad-param-binding.txt:2:27: error: unexpected token "$baz", expected i32, i64, f32, f64 or v128.
(module (func (param $bar $baz)))
^^^^
;;; STDERR ;;)