diff options
Diffstat (limited to 'test/example')
27 files changed, 3263 insertions, 2937 deletions
diff --git a/test/example/c-api-hello-world.c b/test/example/c-api-hello-world.c index 3b412f67f..550176dc6 100644 --- a/test/example/c-api-hello-world.c +++ b/test/example/c-api-hello-world.c @@ -1,4 +1,3 @@ - #include <binaryen-c.h> // "hello world" type example: create a function that adds two i32s and returns @@ -8,9 +7,9 @@ int main() { BinaryenModuleRef module = BinaryenModuleCreate(); // Create a function type for i32 (i32, i32) - BinaryenType params[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; - BinaryenFunctionTypeRef iii = - BinaryenAddFunctionType(module, "iii", BinaryenTypeInt32(), params, 2); + BinaryenType ii[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; + BinaryenType params = BinaryenTypeCreate(ii, 2); + BinaryenType results = BinaryenTypeInt32(); // Get the 0 and 1 arguments, and add them BinaryenExpressionRef x = BinaryenLocalGet(module, 0, BinaryenTypeInt32()), @@ -22,7 +21,7 @@ int main() { // Note: no basic blocks here, we are an AST. The function body is just an // expression node. BinaryenFunctionRef adder = - BinaryenAddFunction(module, "adder", iii, NULL, 0, add); + BinaryenAddFunction(module, "adder", params, results, NULL, 0, add); // Print it out BinaryenModulePrint(module); diff --git a/test/example/c-api-hello-world.txt b/test/example/c-api-hello-world.txt index 41cfa559c..21a7c2a16 100644 --- a/test/example/c-api-hello-world.txt +++ b/test/example/c-api-hello-world.txt @@ -1,6 +1,6 @@ (module - (type $iii (func (param i32 i32) (result i32))) - (func $adder (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (func $adder (; 0 ;) (param $0 i32) (param $1 i32) (result i32) (i32.add (local.get $0) (local.get $1) diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c index 500188a55..b3419d184 100644 --- a/test/example/c-api-kitchen-sink.c +++ b/test/example/c-api-kitchen-sink.c @@ -260,8 +260,11 @@ void test_core() { BinaryenExpressionRef callOperands4[] = { makeInt32(module, 13), makeInt64(module, 37), makeFloat32(module, 1.3f), makeFloat64(module, 3.7) }; BinaryenExpressionRef callOperands4b[] = { makeInt32(module, 13), makeInt64(module, 37), makeFloat32(module, 1.3f), makeFloat64(module, 3.7) }; - BinaryenType params[4] = { BinaryenTypeInt32(), BinaryenTypeInt64(), BinaryenTypeFloat32(), BinaryenTypeFloat64() }; - BinaryenFunctionTypeRef iiIfF = BinaryenAddFunctionType(module, "iiIfF", BinaryenTypeInt32(), params, 4); + BinaryenType iIfF_[4] = {BinaryenTypeInt32(), + BinaryenTypeInt64(), + BinaryenTypeFloat32(), + BinaryenTypeFloat64()}; + BinaryenType iIfF = BinaryenTypeCreate(iIfF_, 4); BinaryenExpressionRef temp1 = makeInt32(module, 1), temp2 = makeInt32(module, 2), temp3 = makeInt32(module, 3), temp4 = makeInt32(module, 4), temp5 = makeInt32(module, 5), @@ -635,11 +638,14 @@ void test_core() { callOperands2, 2, BinaryenTypeFloat32()))), - BinaryenUnary( - module, - BinaryenEqZInt32(), // check the output type of the call node - BinaryenCallIndirect( - module, makeInt32(module, 2449), callOperands4b, 4, "iiIfF")), + BinaryenUnary(module, + BinaryenEqZInt32(), // check the output type of the call node + BinaryenCallIndirect(module, + makeInt32(module, 2449), + callOperands4b, + 4, + iIfF, + BinaryenTypeInt32())), BinaryenDrop(module, BinaryenLocalGet(module, 0, BinaryenTypeInt32())), BinaryenLocalSet(module, 0, makeInt32(module, 101)), BinaryenDrop(module, BinaryenLocalTee(module, 0, makeInt32(module, 102))), @@ -656,8 +662,12 @@ void test_core() { // Tail call BinaryenReturnCall( module, "kitchen()sinker", callOperands4, 4, BinaryenTypeInt32()), - BinaryenReturnCallIndirect( - module, makeInt32(module, 2449), callOperands4b, 4, "iiIfF"), + BinaryenReturnCallIndirect(module, + makeInt32(module, 2449), + callOperands4b, + 4, + iIfF, + BinaryenTypeInt32()), // Exception handling BinaryenTry(module, tryBody, catchBody), // Atomics @@ -697,8 +707,8 @@ void test_core() { // Create the function BinaryenType localTypes[] = {BinaryenTypeInt32(), BinaryenTypeExnref()}; - BinaryenFunctionRef sinker = - BinaryenAddFunction(module, "kitchen()sinker", iiIfF, localTypes, 2, body); + BinaryenFunctionRef sinker = BinaryenAddFunction( + module, "kitchen()sinker", iIfF, BinaryenTypeInt32(), localTypes, 2, body); // Globals @@ -707,9 +717,10 @@ void test_core() { // Imports - BinaryenType iparams[2] = { BinaryenTypeInt32(), BinaryenTypeFloat64() }; - BinaryenFunctionTypeRef fiF = BinaryenAddFunctionType(module, "fiF", BinaryenTypeFloat32(), iparams, 2); - BinaryenAddFunctionImport(module, "an-imported", "module", "base", fiF); + BinaryenType iF_[2] = {BinaryenTypeInt32(), BinaryenTypeFloat64()}; + BinaryenType iF = BinaryenTypeCreate(iF_, 2); + BinaryenAddFunctionImport( + module, "an-imported", "module", "base", iF, BinaryenTypeFloat32()); // Exports @@ -729,14 +740,15 @@ void test_core() { // Start function. One per module - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", BinaryenTypeNone(), NULL, 0); - BinaryenFunctionRef starter = BinaryenAddFunction(module, "starter", v, NULL, 0, BinaryenNop(module)); + BinaryenFunctionRef starter = BinaryenAddFunction(module, + "starter", + BinaryenTypeNone(), + BinaryenTypeNone(), + NULL, + 0, + BinaryenNop(module)); BinaryenSetStart(module, starter); - // Unnamed function type - - BinaryenFunctionTypeRef noname = BinaryenAddFunctionType(module, NULL, BinaryenTypeNone(), NULL, 0); - // A bunch of our code needs drop(), auto-add it BinaryenModuleAutoDrop(module); @@ -756,11 +768,19 @@ void test_core() { void test_unreachable() { BinaryenModuleRef module = BinaryenModuleCreate(); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", BinaryenTypeInt32(), NULL, 0); - BinaryenFunctionTypeRef I = BinaryenAddFunctionType(module, "I", BinaryenTypeInt64(), NULL, 0); - - BinaryenExpressionRef body = BinaryenCallIndirect(module, BinaryenUnreachable(module), NULL, 0, "I"); - BinaryenFunctionRef fn = BinaryenAddFunction(module, "unreachable-fn", i, NULL, 0, body); + BinaryenExpressionRef body = BinaryenCallIndirect(module, + BinaryenUnreachable(module), + NULL, + 0, + BinaryenTypeNone(), + BinaryenTypeInt64()); + BinaryenFunctionRef fn = BinaryenAddFunction(module, + "unreachable-fn", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + body); assert(BinaryenModuleValidate(module)); BinaryenModulePrint(module); @@ -774,20 +794,26 @@ BinaryenExpressionRef makeCallCheck(BinaryenModuleRef module, int x) { void test_relooper() { BinaryenModuleRef module = BinaryenModuleCreate(); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", BinaryenTypeNone(), NULL, 0); BinaryenType localTypes[] = { BinaryenTypeInt32() }; - { - BinaryenType iparams[1] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", BinaryenTypeNone(), iparams, 1); - BinaryenAddFunctionImport(module, "check", "module", "check", vi); - } + BinaryenAddFunctionImport(module, + "check", + "module", + "check", + BinaryenTypeInt32(), + BinaryenTypeNone()); { // trivial: just one block RelooperRef relooper = RelooperCreate(module); RelooperBlockRef block = RelooperAddBlock(relooper, makeCallCheck(module, 1337)); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "just-one-block", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "just-one-block", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // two blocks RelooperRef relooper = RelooperCreate(module); @@ -795,7 +821,13 @@ void test_relooper() { RelooperBlockRef block1 = RelooperAddBlock(relooper, makeCallCheck(module, 1)); RelooperAddBranch(block0, block1, NULL, NULL); // no condition, no code on branch BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "two-blocks", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "two-blocks", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // two blocks with code between them RelooperRef relooper = RelooperCreate(module); @@ -803,7 +835,13 @@ void test_relooper() { RelooperBlockRef block1 = RelooperAddBlock(relooper, makeCallCheck(module, 1)); RelooperAddBranch(block0, block1, NULL, makeDroppedInt32(module, 77)); // code on branch BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "two-blocks-plus-code", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "two-blocks-plus-code", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // two blocks in a loop RelooperRef relooper = RelooperCreate(module); @@ -812,7 +850,13 @@ void test_relooper() { RelooperAddBranch(block0, block1, NULL, NULL); RelooperAddBranch(block1, block0, NULL, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "loop", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "loop", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // two blocks in a loop with codes RelooperRef relooper = RelooperCreate(module); @@ -821,7 +865,13 @@ void test_relooper() { RelooperAddBranch(block0, block1, NULL, makeDroppedInt32(module, 33)); RelooperAddBranch(block1, block0, NULL, makeDroppedInt32(module, -66)); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "loop-plus-code", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "loop-plus-code", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // split RelooperRef relooper = RelooperCreate(module); @@ -831,7 +881,13 @@ void test_relooper() { RelooperAddBranch(block0, block1, makeInt32(module, 55), NULL); RelooperAddBranch(block0, block2, NULL, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "split", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "split", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // split + code RelooperRef relooper = RelooperCreate(module); @@ -842,7 +898,13 @@ void test_relooper() { RelooperAddBranch(block0, block1, makeInt32(module, 55), temp); RelooperAddBranch(block0, block2, NULL, makeDroppedInt32(module, 20)); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "split-plus-code", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "split-plus-code", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // if RelooperRef relooper = RelooperCreate(module); @@ -853,7 +915,13 @@ void test_relooper() { RelooperAddBranch(block0, block2, NULL, NULL); RelooperAddBranch(block1, block2, NULL, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "if", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "if", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // if + code RelooperRef relooper = RelooperCreate(module); @@ -865,7 +933,13 @@ void test_relooper() { RelooperAddBranch(block0, block2, NULL, makeDroppedInt32(module, -2)); RelooperAddBranch(block1, block2, NULL, makeDroppedInt32(module, -3)); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "if-plus-code", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "if-plus-code", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // if-else RelooperRef relooper = RelooperCreate(module); @@ -878,7 +952,13 @@ void test_relooper() { RelooperAddBranch(block1, block3, NULL, NULL); RelooperAddBranch(block2, block3, NULL, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "if-else", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "if-else", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // loop+tail RelooperRef relooper = RelooperCreate(module); @@ -889,7 +969,13 @@ void test_relooper() { RelooperAddBranch(block1, block0, makeInt32(module, 10), NULL); RelooperAddBranch(block1, block2, NULL, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "loop-tail", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "loop-tail", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // nontrivial loop + phi to head RelooperRef relooper = RelooperCreate(module); @@ -910,7 +996,14 @@ void test_relooper() { RelooperAddBranch(block4, block5, NULL, NULL); RelooperAddBranch(block5, block6, NULL, makeDroppedInt32(module, 40)); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "nontrivial-loop-plus-phi-to-head", v, localTypes, 1, body); + BinaryenFunctionRef sinker = + BinaryenAddFunction(module, + "nontrivial-loop-plus-phi-to-head", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // switch RelooperRef relooper = RelooperCreate(module); @@ -928,7 +1021,13 @@ void test_relooper() { RelooperAddBranchForSwitch(block0, block2, to_block2, 1, makeDroppedInt32(module, 55)); RelooperAddBranchForSwitch(block0, block3, NULL, 0, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "switch", v, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "switch", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, + body); } { // duff's device RelooperRef relooper = RelooperCreate(module); @@ -941,18 +1040,29 @@ void test_relooper() { RelooperAddBranch(block2, block1, NULL, NULL); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block0, 3); // use $3 as the helper var BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64(), BinaryenTypeInt32(), BinaryenTypeFloat32(), BinaryenTypeFloat64(), BinaryenTypeInt32() }; - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "duffs-device", v, localTypes, sizeof(localTypes)/sizeof(BinaryenType), body); + BinaryenFunctionRef sinker = + BinaryenAddFunction(module, + "duffs-device", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + sizeof(localTypes) / sizeof(BinaryenType), + body); } - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", BinaryenTypeInt32(), NULL, 0); - { // return in a block RelooperRef relooper = RelooperCreate(module); BinaryenExpressionRef listList[] = { makeCallCheck(module, 42), BinaryenReturn(module, makeInt32(module, 1337)) }; BinaryenExpressionRef list = BinaryenBlock(module, "the-list", listList, 2, -1); RelooperBlockRef block = RelooperAddBlock(relooper, list); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, block, 0); - BinaryenFunctionRef sinker = BinaryenAddFunction(module, "return", i, localTypes, 1, body); + BinaryenFunctionRef sinker = BinaryenAddFunction(module, + "return", + BinaryenTypeNone(), + BinaryenTypeInt32(), + localTypes, + 1, + body); } printf("raw:\n"); @@ -976,12 +1086,13 @@ void test_binaries() { { // create a module and write it to binary BinaryenModuleRef module = BinaryenModuleCreate(); - BinaryenType params[2] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionTypeRef iii = BinaryenAddFunctionType(module, "iii", BinaryenTypeInt32(), params, 2); + BinaryenType ii_[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; + BinaryenType ii = BinaryenTypeCreate(ii_, 2); BinaryenExpressionRef x = BinaryenLocalGet(module, 0, BinaryenTypeInt32()), y = BinaryenLocalGet(module, 1, BinaryenTypeInt32()); BinaryenExpressionRef add = BinaryenBinary(module, BinaryenAddInt32(), x, y); - BinaryenFunctionRef adder = BinaryenAddFunction(module, "adder", iii, NULL, 0, add); + BinaryenFunctionRef adder = BinaryenAddFunction( + module, "adder", ii, BinaryenTypeInt32(), NULL, 0, add); BinaryenSetDebugInfo(1); // include names section size = BinaryenModuleWrite(module, buffer, 1024); // write out the module BinaryenSetDebugInfo(0); @@ -1019,13 +1130,17 @@ void test_interpret() { BinaryenModuleRef module = BinaryenModuleCreate(); BinaryenType iparams[2] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", BinaryenTypeNone(), iparams, 1); - BinaryenAddFunctionImport(module, "print-i32", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print-i32", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", BinaryenTypeNone(), NULL, 0); BinaryenExpressionRef callOperands[] = { makeInt32(module, 1234) }; BinaryenExpressionRef call = BinaryenCall(module, "print-i32", callOperands, 1, BinaryenTypeNone()); - BinaryenFunctionRef starter = BinaryenAddFunction(module, "starter", v, NULL, 0, call); + BinaryenFunctionRef starter = BinaryenAddFunction( + module, "starter", BinaryenTypeNone(), BinaryenTypeNone(), NULL, 0, call); BinaryenSetStart(module, starter); BinaryenModulePrint(module); @@ -1039,9 +1154,14 @@ void test_nonvalid() { { BinaryenModuleRef module = BinaryenModuleCreate(); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", BinaryenTypeNone(), NULL, 0); BinaryenType localTypes[] = { BinaryenTypeInt32() }; - BinaryenFunctionRef func = BinaryenAddFunction(module, "func", v, localTypes, 1, + BinaryenFunctionRef func = BinaryenAddFunction( + module, + "func", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 1, BinaryenLocalSet(module, 0, makeInt64(module, 1234)) // wrong type! ); @@ -1080,12 +1200,28 @@ void test_for_each() { BinaryenModuleRef module = BinaryenModuleCreate(); { - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", BinaryenTypeNone(), NULL, 0); - BinaryenFunctionRef fns[3] = {0}; - fns[0] = BinaryenAddFunction(module, "fn0", v, NULL, 0, BinaryenNop(module)); - fns[1] = BinaryenAddFunction(module, "fn1", v, NULL, 0, BinaryenNop(module)); - fns[2] = BinaryenAddFunction(module, "fn2", v, NULL, 0, BinaryenNop(module)); + fns[0] = BinaryenAddFunction(module, + "fn0", + BinaryenTypeNone(), + BinaryenTypeNone(), + NULL, + 0, + BinaryenNop(module)); + fns[1] = BinaryenAddFunction(module, + "fn1", + BinaryenTypeNone(), + BinaryenTypeNone(), + NULL, + 0, + BinaryenNop(module)); + fns[2] = BinaryenAddFunction(module, + "fn2", + BinaryenTypeNone(), + BinaryenTypeNone(), + NULL, + 0, + BinaryenNop(module)); for (i = 0; i < BinaryenGetNumFunctions(module) ; i++) { assert(BinaryenGetFunctionByIndex(module, i) == fns[i]); @@ -1125,6 +1261,8 @@ void test_for_each() { } int main() { + // Tracing must be first so it starts with a fresh set of interned types + test_tracing(); test_types(); test_features(); test_core(); @@ -1133,7 +1271,6 @@ int main() { test_binaries(); test_interpret(); test_nonvalid(); - test_tracing(); test_color_status(); test_for_each(); diff --git a/test/example/c-api-kitchen-sink.txt b/test/example/c-api-kitchen-sink.txt index 44f40ac4c..ca9061e63 100644 --- a/test/example/c-api-kitchen-sink.txt +++ b/test/example/c-api-kitchen-sink.txt @@ -1,32 +1,1768 @@ - // BinaryenTypeNone: 0 - // BinaryenTypeUnreachable: 1 - // BinaryenTypeInt32: 2 - // BinaryenTypeInt64: 3 - // BinaryenTypeFloat32: 4 - // BinaryenTypeFloat64: 5 - // BinaryenTypeVec128: 6 - // BinaryenTypeAnyref: 7 - // BinaryenTypeExnref: 8 - // BinaryenTypeAuto: -1 -BinaryenFeatureMVP: 0 -BinaryenFeatureAtomics: 1 -BinaryenFeatureBulkMemory: 16 -BinaryenFeatureMutableGlobals: 2 -BinaryenFeatureNontrappingFPToInt: 4 -BinaryenFeatureSignExt: 32 -BinaryenFeatureSIMD128: 8 -BinaryenFeatureExceptionHandling: 64 -BinaryenFeatureTailCall: 128 -BinaryenFeatureReferenceTypes: 256 -BinaryenFeatureAll: 511 +// beginning a Binaryen API trace +#include <math.h> +#include <map> +#include "binaryen-c.h" +int main() { + std::map<size_t, BinaryenExpressionRef> expressions; + std::map<size_t, BinaryenFunctionRef> functions; + std::map<size_t, BinaryenGlobalRef> globals; + std::map<size_t, BinaryenEventRef> events; + std::map<size_t, BinaryenExportRef> exports; + std::map<size_t, RelooperBlockRef> relooperBlocks; + BinaryenModuleRef the_module = NULL; + RelooperRef the_relooper = NULL; + the_module = BinaryenModuleCreate(); + expressions[size_t(NULL)] = BinaryenExpressionRef(NULL); + expressions[1] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[2] = BinaryenConst(the_module, BinaryenLiteralInt64(2)); + expressions[3] = BinaryenConst(the_module, BinaryenLiteralFloat32(3.14)); + expressions[4] = BinaryenConst(the_module, BinaryenLiteralFloat64(2.1828)); + expressions[5] = BinaryenConst(the_module, BinaryenLiteralFloat32(NAN)); + expressions[6] = BinaryenConst(the_module, BinaryenLiteralFloat64(NAN)); + { + uint8_t t0[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[7] = BinaryenConst(the_module, BinaryenLiteralVec128(t0)); + } + expressions[8] = BinaryenConst(the_module, BinaryenLiteralInt32(13)); + expressions[9] = BinaryenConst(the_module, BinaryenLiteralFloat64(3.7)); + expressions[10] = BinaryenConst(the_module, BinaryenLiteralInt32(13)); + expressions[11] = BinaryenConst(the_module, BinaryenLiteralInt64(37)); + expressions[12] = BinaryenConst(the_module, BinaryenLiteralFloat32(1.3)); + expressions[13] = BinaryenConst(the_module, BinaryenLiteralFloat64(3.7)); + expressions[14] = BinaryenConst(the_module, BinaryenLiteralInt32(13)); + expressions[15] = BinaryenConst(the_module, BinaryenLiteralInt64(37)); + expressions[16] = BinaryenConst(the_module, BinaryenLiteralFloat32(1.3)); + expressions[17] = BinaryenConst(the_module, BinaryenLiteralFloat64(3.7)); + { + BinaryenType t1[] = {2, 3, 4, 5}; + BinaryenTypeCreate(t1, 4); // 9 + } + expressions[18] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[19] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + expressions[20] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + expressions[21] = BinaryenConst(the_module, BinaryenLiteralInt32(4)); + expressions[22] = BinaryenConst(the_module, BinaryenLiteralInt32(5)); + expressions[23] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[24] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[25] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[26] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[27] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[28] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + expressions[29] = BinaryenConst(the_module, BinaryenLiteralInt32(5)); + expressions[30] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + expressions[31] = BinaryenConst(the_module, BinaryenLiteralInt32(11)); + expressions[32] = BinaryenConst(the_module, BinaryenLiteralInt32(110)); + expressions[33] = BinaryenConst(the_module, BinaryenLiteralInt64(111)); + BinaryenAddEvent(the_module, "a-event", 0, 2, 0); + expressions[34] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[34] }; + expressions[35] = BinaryenThrow(the_module, "a-event", operands, 1); + } + expressions[36] = BinaryenPop(the_module, 8); + expressions[37] = BinaryenLocalSet(the_module, 5, expressions[36]); + expressions[38] = BinaryenLocalGet(the_module, 5, 8); + expressions[39] = BinaryenBrOnExn(the_module, "try-block", "a-event", expressions[38]); + expressions[40] = BinaryenRethrow(the_module, expressions[39]); + { + BinaryenExpressionRef children[] = { expressions[40] }; + expressions[41] = BinaryenBlock(the_module, "try-block", children, 1, 2); + } + expressions[42] = BinaryenDrop(the_module, expressions[41]); + { + BinaryenExpressionRef children[] = { expressions[37], expressions[42] }; + expressions[43] = BinaryenBlock(the_module, NULL, children, 2, 0); + } + expressions[44] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[45] = BinaryenUnary(the_module, 0, expressions[44]); + expressions[46] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[47] = BinaryenUnary(the_module, 3, expressions[46]); + expressions[48] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[49] = BinaryenUnary(the_module, 4, expressions[48]); + expressions[50] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[51] = BinaryenUnary(the_module, 6, expressions[50]); + expressions[52] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[53] = BinaryenUnary(the_module, 9, expressions[52]); + expressions[54] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[55] = BinaryenUnary(the_module, 10, expressions[54]); + expressions[56] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[57] = BinaryenUnary(the_module, 13, expressions[56]); + expressions[58] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[59] = BinaryenUnary(the_module, 14, expressions[58]); + expressions[60] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[61] = BinaryenUnary(the_module, 16, expressions[60]); + expressions[62] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[63] = BinaryenUnary(the_module, 19, expressions[62]); + expressions[64] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[65] = BinaryenUnary(the_module, 20, expressions[64]); + expressions[66] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[67] = BinaryenUnary(the_module, 22, expressions[66]); + expressions[68] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[69] = BinaryenUnary(the_module, 23, expressions[68]); + expressions[70] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[71] = BinaryenUnary(the_module, 24, expressions[70]); + expressions[72] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[73] = BinaryenUnary(the_module, 25, expressions[72]); + expressions[74] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[75] = BinaryenUnary(the_module, 26, expressions[74]); + expressions[76] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[77] = BinaryenUnary(the_module, 27, expressions[76]); + expressions[78] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[79] = BinaryenUnary(the_module, 28, expressions[78]); + expressions[80] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[81] = BinaryenUnary(the_module, 29, expressions[80]); + expressions[82] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[83] = BinaryenUnary(the_module, 30, expressions[82]); + expressions[84] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[85] = BinaryenUnary(the_module, 31, expressions[84]); + expressions[86] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[87] = BinaryenUnary(the_module, 32, expressions[86]); + expressions[88] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[89] = BinaryenUnary(the_module, 52, expressions[88]); + expressions[90] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[91] = BinaryenUnary(the_module, 56, expressions[90]); + expressions[92] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[93] = BinaryenUnary(the_module, 53, expressions[92]); + expressions[94] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[95] = BinaryenUnary(the_module, 57, expressions[94]); + expressions[96] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[97] = BinaryenUnary(the_module, 54, expressions[96]); + expressions[98] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[99] = BinaryenUnary(the_module, 58, expressions[98]); + expressions[100] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[101] = BinaryenUnary(the_module, 55, expressions[100]); + expressions[102] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[103] = BinaryenUnary(the_module, 59, expressions[102]); + expressions[104] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[105] = BinaryenUnary(the_module, 33, expressions[104]); + expressions[106] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[107] = BinaryenUnary(the_module, 34, expressions[106]); + expressions[108] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[109] = BinaryenUnary(the_module, 35, expressions[108]); + expressions[110] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[111] = BinaryenUnary(the_module, 36, expressions[110]); + expressions[112] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[113] = BinaryenUnary(the_module, 37, expressions[112]); + expressions[114] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[115] = BinaryenUnary(the_module, 38, expressions[114]); + expressions[116] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[117] = BinaryenUnary(the_module, 39, expressions[116]); + expressions[118] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[119] = BinaryenUnary(the_module, 40, expressions[118]); + expressions[120] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[121] = BinaryenUnary(the_module, 41, expressions[120]); + expressions[122] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[123] = BinaryenUnary(the_module, 42, expressions[122]); + expressions[124] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[125] = BinaryenUnary(the_module, 43, expressions[124]); + expressions[126] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[127] = BinaryenUnary(the_module, 44, expressions[126]); + expressions[128] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[129] = BinaryenUnary(the_module, 45, expressions[128]); + expressions[130] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[131] = BinaryenUnary(the_module, 46, expressions[130]); + expressions[132] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[133] = BinaryenUnary(the_module, 60, expressions[132]); + expressions[134] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[135] = BinaryenUnary(the_module, 61, expressions[134]); + expressions[136] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[137] = BinaryenUnary(the_module, 62, expressions[136]); + expressions[138] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[139] = BinaryenUnary(the_module, 63, expressions[138]); + expressions[140] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[141] = BinaryenUnary(the_module, 64, expressions[140]); + expressions[142] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[143] = BinaryenUnary(the_module, 65, expressions[142]); + { + uint8_t t2[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[144] = BinaryenConst(the_module, BinaryenLiteralVec128(t2)); + } + expressions[145] = BinaryenUnary(the_module, 66, expressions[144]); + { + uint8_t t3[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[146] = BinaryenConst(the_module, BinaryenLiteralVec128(t3)); + } + expressions[147] = BinaryenUnary(the_module, 67, expressions[146]); + { + uint8_t t4[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[148] = BinaryenConst(the_module, BinaryenLiteralVec128(t4)); + } + expressions[149] = BinaryenUnary(the_module, 68, expressions[148]); + { + uint8_t t5[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[150] = BinaryenConst(the_module, BinaryenLiteralVec128(t5)); + } + expressions[151] = BinaryenUnary(the_module, 69, expressions[150]); + { + uint8_t t6[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[152] = BinaryenConst(the_module, BinaryenLiteralVec128(t6)); + } + expressions[153] = BinaryenUnary(the_module, 70, expressions[152]); + { + uint8_t t7[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[154] = BinaryenConst(the_module, BinaryenLiteralVec128(t7)); + } + expressions[155] = BinaryenUnary(the_module, 71, expressions[154]); + { + uint8_t t8[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[156] = BinaryenConst(the_module, BinaryenLiteralVec128(t8)); + } + expressions[157] = BinaryenUnary(the_module, 72, expressions[156]); + { + uint8_t t9[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[158] = BinaryenConst(the_module, BinaryenLiteralVec128(t9)); + } + expressions[159] = BinaryenUnary(the_module, 73, expressions[158]); + { + uint8_t t10[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[160] = BinaryenConst(the_module, BinaryenLiteralVec128(t10)); + } + expressions[161] = BinaryenUnary(the_module, 74, expressions[160]); + { + uint8_t t11[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[162] = BinaryenConst(the_module, BinaryenLiteralVec128(t11)); + } + expressions[163] = BinaryenUnary(the_module, 75, expressions[162]); + { + uint8_t t12[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[164] = BinaryenConst(the_module, BinaryenLiteralVec128(t12)); + } + expressions[165] = BinaryenUnary(the_module, 76, expressions[164]); + { + uint8_t t13[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[166] = BinaryenConst(the_module, BinaryenLiteralVec128(t13)); + } + expressions[167] = BinaryenUnary(the_module, 77, expressions[166]); + { + uint8_t t14[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[168] = BinaryenConst(the_module, BinaryenLiteralVec128(t14)); + } + expressions[169] = BinaryenUnary(the_module, 78, expressions[168]); + { + uint8_t t15[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[170] = BinaryenConst(the_module, BinaryenLiteralVec128(t15)); + } + expressions[171] = BinaryenUnary(the_module, 79, expressions[170]); + { + uint8_t t16[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[172] = BinaryenConst(the_module, BinaryenLiteralVec128(t16)); + } + expressions[173] = BinaryenUnary(the_module, 80, expressions[172]); + { + uint8_t t17[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[174] = BinaryenConst(the_module, BinaryenLiteralVec128(t17)); + } + expressions[175] = BinaryenUnary(the_module, 81, expressions[174]); + { + uint8_t t18[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[176] = BinaryenConst(the_module, BinaryenLiteralVec128(t18)); + } + expressions[177] = BinaryenUnary(the_module, 82, expressions[176]); + { + uint8_t t19[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[178] = BinaryenConst(the_module, BinaryenLiteralVec128(t19)); + } + expressions[179] = BinaryenUnary(the_module, 83, expressions[178]); + { + uint8_t t20[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[180] = BinaryenConst(the_module, BinaryenLiteralVec128(t20)); + } + expressions[181] = BinaryenUnary(the_module, 84, expressions[180]); + { + uint8_t t21[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[182] = BinaryenConst(the_module, BinaryenLiteralVec128(t21)); + } + expressions[183] = BinaryenUnary(the_module, 85, expressions[182]); + { + uint8_t t22[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[184] = BinaryenConst(the_module, BinaryenLiteralVec128(t22)); + } + expressions[185] = BinaryenUnary(the_module, 86, expressions[184]); + { + uint8_t t23[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[186] = BinaryenConst(the_module, BinaryenLiteralVec128(t23)); + } + expressions[187] = BinaryenUnary(the_module, 87, expressions[186]); + { + uint8_t t24[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[188] = BinaryenConst(the_module, BinaryenLiteralVec128(t24)); + } + expressions[189] = BinaryenUnary(the_module, 88, expressions[188]); + { + uint8_t t25[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[190] = BinaryenConst(the_module, BinaryenLiteralVec128(t25)); + } + expressions[191] = BinaryenUnary(the_module, 89, expressions[190]); + { + uint8_t t26[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[192] = BinaryenConst(the_module, BinaryenLiteralVec128(t26)); + } + expressions[193] = BinaryenUnary(the_module, 90, expressions[192]); + { + uint8_t t27[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[194] = BinaryenConst(the_module, BinaryenLiteralVec128(t27)); + } + expressions[195] = BinaryenUnary(the_module, 91, expressions[194]); + { + uint8_t t28[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[196] = BinaryenConst(the_module, BinaryenLiteralVec128(t28)); + } + expressions[197] = BinaryenUnary(the_module, 92, expressions[196]); + { + uint8_t t29[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[198] = BinaryenConst(the_module, BinaryenLiteralVec128(t29)); + } + expressions[199] = BinaryenUnary(the_module, 93, expressions[198]); + { + uint8_t t30[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[200] = BinaryenConst(the_module, BinaryenLiteralVec128(t30)); + } + expressions[201] = BinaryenUnary(the_module, 94, expressions[200]); + { + uint8_t t31[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[202] = BinaryenConst(the_module, BinaryenLiteralVec128(t31)); + } + expressions[203] = BinaryenUnary(the_module, 95, expressions[202]); + { + uint8_t t32[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[204] = BinaryenConst(the_module, BinaryenLiteralVec128(t32)); + } + expressions[205] = BinaryenUnary(the_module, 96, expressions[204]); + { + uint8_t t33[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[206] = BinaryenConst(the_module, BinaryenLiteralVec128(t33)); + } + expressions[207] = BinaryenUnary(the_module, 97, expressions[206]); + { + uint8_t t34[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[208] = BinaryenConst(the_module, BinaryenLiteralVec128(t34)); + } + expressions[209] = BinaryenUnary(the_module, 98, expressions[208]); + { + uint8_t t35[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[210] = BinaryenConst(the_module, BinaryenLiteralVec128(t35)); + } + expressions[211] = BinaryenUnary(the_module, 99, expressions[210]); + { + uint8_t t36[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[212] = BinaryenConst(the_module, BinaryenLiteralVec128(t36)); + } + expressions[213] = BinaryenUnary(the_module, 100, expressions[212]); + expressions[214] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[215] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[216] = BinaryenBinary(the_module, 0, expressions[215], expressions[214]); + expressions[217] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); + expressions[218] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[219] = BinaryenBinary(the_module, 64, expressions[218], expressions[217]); + expressions[220] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[221] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[222] = BinaryenBinary(the_module, 3, expressions[221], expressions[220]); + expressions[223] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[224] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[225] = BinaryenBinary(the_module, 29, expressions[224], expressions[223]); + expressions[226] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[227] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[228] = BinaryenBinary(the_module, 30, expressions[227], expressions[226]); + expressions[229] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[230] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[231] = BinaryenBinary(the_module, 6, expressions[230], expressions[229]); + expressions[232] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[233] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[234] = BinaryenBinary(the_module, 7, expressions[233], expressions[232]); + expressions[235] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[236] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[237] = BinaryenBinary(the_module, 33, expressions[236], expressions[235]); + expressions[238] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[239] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[240] = BinaryenBinary(the_module, 9, expressions[239], expressions[238]); + expressions[241] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[242] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[243] = BinaryenBinary(the_module, 35, expressions[242], expressions[241]); + expressions[244] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[245] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[246] = BinaryenBinary(the_module, 36, expressions[245], expressions[244]); + expressions[247] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[248] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[249] = BinaryenBinary(the_module, 12, expressions[248], expressions[247]); + expressions[250] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[251] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[252] = BinaryenBinary(the_module, 13, expressions[251], expressions[250]); + expressions[253] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[254] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[255] = BinaryenBinary(the_module, 39, expressions[254], expressions[253]); + expressions[256] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); + expressions[257] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[258] = BinaryenBinary(the_module, 53, expressions[257], expressions[256]); + expressions[259] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); + expressions[260] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[261] = BinaryenBinary(the_module, 67, expressions[260], expressions[259]); + expressions[262] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); + expressions[263] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[264] = BinaryenBinary(the_module, 55, expressions[263], expressions[262]); + expressions[265] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); + expressions[266] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[267] = BinaryenBinary(the_module, 69, expressions[266], expressions[265]); + expressions[268] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[269] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[270] = BinaryenBinary(the_module, 15, expressions[269], expressions[268]); + expressions[271] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); + expressions[272] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[273] = BinaryenBinary(the_module, 58, expressions[272], expressions[271]); + expressions[274] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[275] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[276] = BinaryenBinary(the_module, 17, expressions[275], expressions[274]); + expressions[277] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[278] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[279] = BinaryenBinary(the_module, 43, expressions[278], expressions[277]); + expressions[280] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[281] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[282] = BinaryenBinary(the_module, 44, expressions[281], expressions[280]); + expressions[283] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[284] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[285] = BinaryenBinary(the_module, 20, expressions[284], expressions[283]); + expressions[286] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[287] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[288] = BinaryenBinary(the_module, 46, expressions[287], expressions[286]); + expressions[289] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[290] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[291] = BinaryenBinary(the_module, 22, expressions[290], expressions[289]); + expressions[292] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); + expressions[293] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + expressions[294] = BinaryenBinary(the_module, 23, expressions[293], expressions[292]); + expressions[295] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); + expressions[296] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); + expressions[297] = BinaryenBinary(the_module, 49, expressions[296], expressions[295]); + expressions[298] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); + expressions[299] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[300] = BinaryenBinary(the_module, 59, expressions[299], expressions[298]); + expressions[301] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); + expressions[302] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[303] = BinaryenBinary(the_module, 73, expressions[302], expressions[301]); + expressions[304] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); + expressions[305] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); + expressions[306] = BinaryenBinary(the_module, 74, expressions[305], expressions[304]); + expressions[307] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); + expressions[308] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); + expressions[309] = BinaryenBinary(the_module, 62, expressions[308], expressions[307]); + { + uint8_t t37[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[310] = BinaryenConst(the_module, BinaryenLiteralVec128(t37)); + } + { + uint8_t t38[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[311] = BinaryenConst(the_module, BinaryenLiteralVec128(t38)); + } + expressions[312] = BinaryenBinary(the_module, 76, expressions[311], expressions[310]); + { + uint8_t t39[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[313] = BinaryenConst(the_module, BinaryenLiteralVec128(t39)); + } + { + uint8_t t40[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[314] = BinaryenConst(the_module, BinaryenLiteralVec128(t40)); + } + expressions[315] = BinaryenBinary(the_module, 77, expressions[314], expressions[313]); + { + uint8_t t41[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[316] = BinaryenConst(the_module, BinaryenLiteralVec128(t41)); + } + { + uint8_t t42[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[317] = BinaryenConst(the_module, BinaryenLiteralVec128(t42)); + } + expressions[318] = BinaryenBinary(the_module, 78, expressions[317], expressions[316]); + { + uint8_t t43[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[319] = BinaryenConst(the_module, BinaryenLiteralVec128(t43)); + } + { + uint8_t t44[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[320] = BinaryenConst(the_module, BinaryenLiteralVec128(t44)); + } + expressions[321] = BinaryenBinary(the_module, 79, expressions[320], expressions[319]); + { + uint8_t t45[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[322] = BinaryenConst(the_module, BinaryenLiteralVec128(t45)); + } + { + uint8_t t46[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[323] = BinaryenConst(the_module, BinaryenLiteralVec128(t46)); + } + expressions[324] = BinaryenBinary(the_module, 80, expressions[323], expressions[322]); + { + uint8_t t47[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[325] = BinaryenConst(the_module, BinaryenLiteralVec128(t47)); + } + { + uint8_t t48[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[326] = BinaryenConst(the_module, BinaryenLiteralVec128(t48)); + } + expressions[327] = BinaryenBinary(the_module, 81, expressions[326], expressions[325]); + { + uint8_t t49[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[328] = BinaryenConst(the_module, BinaryenLiteralVec128(t49)); + } + { + uint8_t t50[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[329] = BinaryenConst(the_module, BinaryenLiteralVec128(t50)); + } + expressions[330] = BinaryenBinary(the_module, 82, expressions[329], expressions[328]); + { + uint8_t t51[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[331] = BinaryenConst(the_module, BinaryenLiteralVec128(t51)); + } + { + uint8_t t52[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[332] = BinaryenConst(the_module, BinaryenLiteralVec128(t52)); + } + expressions[333] = BinaryenBinary(the_module, 83, expressions[332], expressions[331]); + { + uint8_t t53[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[334] = BinaryenConst(the_module, BinaryenLiteralVec128(t53)); + } + { + uint8_t t54[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[335] = BinaryenConst(the_module, BinaryenLiteralVec128(t54)); + } + expressions[336] = BinaryenBinary(the_module, 84, expressions[335], expressions[334]); + { + uint8_t t55[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[337] = BinaryenConst(the_module, BinaryenLiteralVec128(t55)); + } + { + uint8_t t56[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[338] = BinaryenConst(the_module, BinaryenLiteralVec128(t56)); + } + expressions[339] = BinaryenBinary(the_module, 85, expressions[338], expressions[337]); + { + uint8_t t57[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[340] = BinaryenConst(the_module, BinaryenLiteralVec128(t57)); + } + { + uint8_t t58[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[341] = BinaryenConst(the_module, BinaryenLiteralVec128(t58)); + } + expressions[342] = BinaryenBinary(the_module, 86, expressions[341], expressions[340]); + { + uint8_t t59[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[343] = BinaryenConst(the_module, BinaryenLiteralVec128(t59)); + } + { + uint8_t t60[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[344] = BinaryenConst(the_module, BinaryenLiteralVec128(t60)); + } + expressions[345] = BinaryenBinary(the_module, 87, expressions[344], expressions[343]); + { + uint8_t t61[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[346] = BinaryenConst(the_module, BinaryenLiteralVec128(t61)); + } + { + uint8_t t62[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[347] = BinaryenConst(the_module, BinaryenLiteralVec128(t62)); + } + expressions[348] = BinaryenBinary(the_module, 88, expressions[347], expressions[346]); + { + uint8_t t63[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[349] = BinaryenConst(the_module, BinaryenLiteralVec128(t63)); + } + { + uint8_t t64[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[350] = BinaryenConst(the_module, BinaryenLiteralVec128(t64)); + } + expressions[351] = BinaryenBinary(the_module, 89, expressions[350], expressions[349]); + { + uint8_t t65[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[352] = BinaryenConst(the_module, BinaryenLiteralVec128(t65)); + } + { + uint8_t t66[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[353] = BinaryenConst(the_module, BinaryenLiteralVec128(t66)); + } + expressions[354] = BinaryenBinary(the_module, 90, expressions[353], expressions[352]); + { + uint8_t t67[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[355] = BinaryenConst(the_module, BinaryenLiteralVec128(t67)); + } + { + uint8_t t68[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[356] = BinaryenConst(the_module, BinaryenLiteralVec128(t68)); + } + expressions[357] = BinaryenBinary(the_module, 91, expressions[356], expressions[355]); + { + uint8_t t69[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[358] = BinaryenConst(the_module, BinaryenLiteralVec128(t69)); + } + { + uint8_t t70[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[359] = BinaryenConst(the_module, BinaryenLiteralVec128(t70)); + } + expressions[360] = BinaryenBinary(the_module, 92, expressions[359], expressions[358]); + { + uint8_t t71[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[361] = BinaryenConst(the_module, BinaryenLiteralVec128(t71)); + } + { + uint8_t t72[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[362] = BinaryenConst(the_module, BinaryenLiteralVec128(t72)); + } + expressions[363] = BinaryenBinary(the_module, 93, expressions[362], expressions[361]); + { + uint8_t t73[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[364] = BinaryenConst(the_module, BinaryenLiteralVec128(t73)); + } + { + uint8_t t74[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[365] = BinaryenConst(the_module, BinaryenLiteralVec128(t74)); + } + expressions[366] = BinaryenBinary(the_module, 94, expressions[365], expressions[364]); + { + uint8_t t75[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[367] = BinaryenConst(the_module, BinaryenLiteralVec128(t75)); + } + { + uint8_t t76[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[368] = BinaryenConst(the_module, BinaryenLiteralVec128(t76)); + } + expressions[369] = BinaryenBinary(the_module, 95, expressions[368], expressions[367]); + { + uint8_t t77[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[370] = BinaryenConst(the_module, BinaryenLiteralVec128(t77)); + } + { + uint8_t t78[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[371] = BinaryenConst(the_module, BinaryenLiteralVec128(t78)); + } + expressions[372] = BinaryenBinary(the_module, 96, expressions[371], expressions[370]); + { + uint8_t t79[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[373] = BinaryenConst(the_module, BinaryenLiteralVec128(t79)); + } + { + uint8_t t80[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[374] = BinaryenConst(the_module, BinaryenLiteralVec128(t80)); + } + expressions[375] = BinaryenBinary(the_module, 97, expressions[374], expressions[373]); + { + uint8_t t81[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[376] = BinaryenConst(the_module, BinaryenLiteralVec128(t81)); + } + { + uint8_t t82[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[377] = BinaryenConst(the_module, BinaryenLiteralVec128(t82)); + } + expressions[378] = BinaryenBinary(the_module, 98, expressions[377], expressions[376]); + { + uint8_t t83[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[379] = BinaryenConst(the_module, BinaryenLiteralVec128(t83)); + } + { + uint8_t t84[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[380] = BinaryenConst(the_module, BinaryenLiteralVec128(t84)); + } + expressions[381] = BinaryenBinary(the_module, 99, expressions[380], expressions[379]); + { + uint8_t t85[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[382] = BinaryenConst(the_module, BinaryenLiteralVec128(t85)); + } + { + uint8_t t86[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[383] = BinaryenConst(the_module, BinaryenLiteralVec128(t86)); + } + expressions[384] = BinaryenBinary(the_module, 100, expressions[383], expressions[382]); + { + uint8_t t87[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[385] = BinaryenConst(the_module, BinaryenLiteralVec128(t87)); + } + { + uint8_t t88[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[386] = BinaryenConst(the_module, BinaryenLiteralVec128(t88)); + } + expressions[387] = BinaryenBinary(the_module, 101, expressions[386], expressions[385]); + { + uint8_t t89[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[388] = BinaryenConst(the_module, BinaryenLiteralVec128(t89)); + } + { + uint8_t t90[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[389] = BinaryenConst(the_module, BinaryenLiteralVec128(t90)); + } + expressions[390] = BinaryenBinary(the_module, 102, expressions[389], expressions[388]); + { + uint8_t t91[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[391] = BinaryenConst(the_module, BinaryenLiteralVec128(t91)); + } + { + uint8_t t92[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[392] = BinaryenConst(the_module, BinaryenLiteralVec128(t92)); + } + expressions[393] = BinaryenBinary(the_module, 103, expressions[392], expressions[391]); + { + uint8_t t93[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[394] = BinaryenConst(the_module, BinaryenLiteralVec128(t93)); + } + { + uint8_t t94[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[395] = BinaryenConst(the_module, BinaryenLiteralVec128(t94)); + } + expressions[396] = BinaryenBinary(the_module, 104, expressions[395], expressions[394]); + { + uint8_t t95[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[397] = BinaryenConst(the_module, BinaryenLiteralVec128(t95)); + } + { + uint8_t t96[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[398] = BinaryenConst(the_module, BinaryenLiteralVec128(t96)); + } + expressions[399] = BinaryenBinary(the_module, 105, expressions[398], expressions[397]); + { + uint8_t t97[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[400] = BinaryenConst(the_module, BinaryenLiteralVec128(t97)); + } + { + uint8_t t98[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[401] = BinaryenConst(the_module, BinaryenLiteralVec128(t98)); + } + expressions[402] = BinaryenBinary(the_module, 106, expressions[401], expressions[400]); + { + uint8_t t99[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[403] = BinaryenConst(the_module, BinaryenLiteralVec128(t99)); + } + { + uint8_t t100[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[404] = BinaryenConst(the_module, BinaryenLiteralVec128(t100)); + } + expressions[405] = BinaryenBinary(the_module, 107, expressions[404], expressions[403]); + { + uint8_t t101[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[406] = BinaryenConst(the_module, BinaryenLiteralVec128(t101)); + } + { + uint8_t t102[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[407] = BinaryenConst(the_module, BinaryenLiteralVec128(t102)); + } + expressions[408] = BinaryenBinary(the_module, 108, expressions[407], expressions[406]); + { + uint8_t t103[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[409] = BinaryenConst(the_module, BinaryenLiteralVec128(t103)); + } + { + uint8_t t104[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[410] = BinaryenConst(the_module, BinaryenLiteralVec128(t104)); + } + expressions[411] = BinaryenBinary(the_module, 109, expressions[410], expressions[409]); + { + uint8_t t105[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[412] = BinaryenConst(the_module, BinaryenLiteralVec128(t105)); + } + { + uint8_t t106[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[413] = BinaryenConst(the_module, BinaryenLiteralVec128(t106)); + } + expressions[414] = BinaryenBinary(the_module, 110, expressions[413], expressions[412]); + { + uint8_t t107[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[415] = BinaryenConst(the_module, BinaryenLiteralVec128(t107)); + } + { + uint8_t t108[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[416] = BinaryenConst(the_module, BinaryenLiteralVec128(t108)); + } + expressions[417] = BinaryenBinary(the_module, 111, expressions[416], expressions[415]); + { + uint8_t t109[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[418] = BinaryenConst(the_module, BinaryenLiteralVec128(t109)); + } + { + uint8_t t110[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[419] = BinaryenConst(the_module, BinaryenLiteralVec128(t110)); + } + expressions[420] = BinaryenBinary(the_module, 112, expressions[419], expressions[418]); + { + uint8_t t111[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[421] = BinaryenConst(the_module, BinaryenLiteralVec128(t111)); + } + { + uint8_t t112[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[422] = BinaryenConst(the_module, BinaryenLiteralVec128(t112)); + } + expressions[423] = BinaryenBinary(the_module, 113, expressions[422], expressions[421]); + { + uint8_t t113[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[424] = BinaryenConst(the_module, BinaryenLiteralVec128(t113)); + } + { + uint8_t t114[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[425] = BinaryenConst(the_module, BinaryenLiteralVec128(t114)); + } + expressions[426] = BinaryenBinary(the_module, 114, expressions[425], expressions[424]); + { + uint8_t t115[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[427] = BinaryenConst(the_module, BinaryenLiteralVec128(t115)); + } + { + uint8_t t116[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[428] = BinaryenConst(the_module, BinaryenLiteralVec128(t116)); + } + expressions[429] = BinaryenBinary(the_module, 115, expressions[428], expressions[427]); + { + uint8_t t117[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[430] = BinaryenConst(the_module, BinaryenLiteralVec128(t117)); + } + { + uint8_t t118[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[431] = BinaryenConst(the_module, BinaryenLiteralVec128(t118)); + } + expressions[432] = BinaryenBinary(the_module, 116, expressions[431], expressions[430]); + { + uint8_t t119[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[433] = BinaryenConst(the_module, BinaryenLiteralVec128(t119)); + } + { + uint8_t t120[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[434] = BinaryenConst(the_module, BinaryenLiteralVec128(t120)); + } + expressions[435] = BinaryenBinary(the_module, 117, expressions[434], expressions[433]); + { + uint8_t t121[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[436] = BinaryenConst(the_module, BinaryenLiteralVec128(t121)); + } + { + uint8_t t122[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[437] = BinaryenConst(the_module, BinaryenLiteralVec128(t122)); + } + expressions[438] = BinaryenBinary(the_module, 118, expressions[437], expressions[436]); + { + uint8_t t123[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[439] = BinaryenConst(the_module, BinaryenLiteralVec128(t123)); + } + { + uint8_t t124[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[440] = BinaryenConst(the_module, BinaryenLiteralVec128(t124)); + } + expressions[441] = BinaryenBinary(the_module, 119, expressions[440], expressions[439]); + { + uint8_t t125[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[442] = BinaryenConst(the_module, BinaryenLiteralVec128(t125)); + } + { + uint8_t t126[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[443] = BinaryenConst(the_module, BinaryenLiteralVec128(t126)); + } + expressions[444] = BinaryenBinary(the_module, 120, expressions[443], expressions[442]); + { + uint8_t t127[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[445] = BinaryenConst(the_module, BinaryenLiteralVec128(t127)); + } + { + uint8_t t128[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[446] = BinaryenConst(the_module, BinaryenLiteralVec128(t128)); + } + expressions[447] = BinaryenBinary(the_module, 121, expressions[446], expressions[445]); + { + uint8_t t129[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[448] = BinaryenConst(the_module, BinaryenLiteralVec128(t129)); + } + { + uint8_t t130[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[449] = BinaryenConst(the_module, BinaryenLiteralVec128(t130)); + } + expressions[450] = BinaryenBinary(the_module, 122, expressions[449], expressions[448]); + { + uint8_t t131[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[451] = BinaryenConst(the_module, BinaryenLiteralVec128(t131)); + } + { + uint8_t t132[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[452] = BinaryenConst(the_module, BinaryenLiteralVec128(t132)); + } + expressions[453] = BinaryenBinary(the_module, 123, expressions[452], expressions[451]); + { + uint8_t t133[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[454] = BinaryenConst(the_module, BinaryenLiteralVec128(t133)); + } + { + uint8_t t134[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[455] = BinaryenConst(the_module, BinaryenLiteralVec128(t134)); + } + expressions[456] = BinaryenBinary(the_module, 124, expressions[455], expressions[454]); + { + uint8_t t135[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[457] = BinaryenConst(the_module, BinaryenLiteralVec128(t135)); + } + { + uint8_t t136[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[458] = BinaryenConst(the_module, BinaryenLiteralVec128(t136)); + } + expressions[459] = BinaryenBinary(the_module, 125, expressions[458], expressions[457]); + { + uint8_t t137[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[460] = BinaryenConst(the_module, BinaryenLiteralVec128(t137)); + } + { + uint8_t t138[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[461] = BinaryenConst(the_module, BinaryenLiteralVec128(t138)); + } + expressions[462] = BinaryenBinary(the_module, 126, expressions[461], expressions[460]); + { + uint8_t t139[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[463] = BinaryenConst(the_module, BinaryenLiteralVec128(t139)); + } + { + uint8_t t140[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[464] = BinaryenConst(the_module, BinaryenLiteralVec128(t140)); + } + expressions[465] = BinaryenBinary(the_module, 127, expressions[464], expressions[463]); + { + uint8_t t141[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[466] = BinaryenConst(the_module, BinaryenLiteralVec128(t141)); + } + { + uint8_t t142[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[467] = BinaryenConst(the_module, BinaryenLiteralVec128(t142)); + } + expressions[468] = BinaryenBinary(the_module, 128, expressions[467], expressions[466]); + { + uint8_t t143[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[469] = BinaryenConst(the_module, BinaryenLiteralVec128(t143)); + } + { + uint8_t t144[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[470] = BinaryenConst(the_module, BinaryenLiteralVec128(t144)); + } + expressions[471] = BinaryenBinary(the_module, 133, expressions[470], expressions[469]); + { + uint8_t t145[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[472] = BinaryenConst(the_module, BinaryenLiteralVec128(t145)); + } + { + uint8_t t146[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[473] = BinaryenConst(the_module, BinaryenLiteralVec128(t146)); + } + expressions[474] = BinaryenBinary(the_module, 134, expressions[473], expressions[472]); + { + uint8_t t147[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[475] = BinaryenConst(the_module, BinaryenLiteralVec128(t147)); + } + { + uint8_t t148[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[476] = BinaryenConst(the_module, BinaryenLiteralVec128(t148)); + } + expressions[477] = BinaryenBinary(the_module, 135, expressions[476], expressions[475]); + { + uint8_t t149[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[478] = BinaryenConst(the_module, BinaryenLiteralVec128(t149)); + } + { + uint8_t t150[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[479] = BinaryenConst(the_module, BinaryenLiteralVec128(t150)); + } + expressions[480] = BinaryenBinary(the_module, 136, expressions[479], expressions[478]); + { + uint8_t t151[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[481] = BinaryenConst(the_module, BinaryenLiteralVec128(t151)); + } + { + uint8_t t152[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[482] = BinaryenConst(the_module, BinaryenLiteralVec128(t152)); + } + expressions[483] = BinaryenBinary(the_module, 137, expressions[482], expressions[481]); + { + uint8_t t153[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[484] = BinaryenConst(the_module, BinaryenLiteralVec128(t153)); + } + { + uint8_t t154[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[485] = BinaryenConst(the_module, BinaryenLiteralVec128(t154)); + } + expressions[486] = BinaryenBinary(the_module, 138, expressions[485], expressions[484]); + { + uint8_t t155[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[487] = BinaryenConst(the_module, BinaryenLiteralVec128(t155)); + } + { + uint8_t t156[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[488] = BinaryenConst(the_module, BinaryenLiteralVec128(t156)); + } + expressions[489] = BinaryenBinary(the_module, 139, expressions[488], expressions[487]); + { + uint8_t t157[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[490] = BinaryenConst(the_module, BinaryenLiteralVec128(t157)); + } + { + uint8_t t158[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[491] = BinaryenConst(the_module, BinaryenLiteralVec128(t158)); + } + expressions[492] = BinaryenBinary(the_module, 140, expressions[491], expressions[490]); + { + uint8_t t159[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[493] = BinaryenConst(the_module, BinaryenLiteralVec128(t159)); + } + { + uint8_t t160[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[494] = BinaryenConst(the_module, BinaryenLiteralVec128(t160)); + } + expressions[495] = BinaryenBinary(the_module, 141, expressions[494], expressions[493]); + { + uint8_t t161[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[496] = BinaryenConst(the_module, BinaryenLiteralVec128(t161)); + } + { + uint8_t t162[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[497] = BinaryenConst(the_module, BinaryenLiteralVec128(t162)); + } + expressions[498] = BinaryenBinary(the_module, 142, expressions[497], expressions[496]); + { + uint8_t t163[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[499] = BinaryenConst(the_module, BinaryenLiteralVec128(t163)); + } + { + uint8_t t164[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[500] = BinaryenConst(the_module, BinaryenLiteralVec128(t164)); + } + expressions[501] = BinaryenBinary(the_module, 143, expressions[500], expressions[499]); + { + uint8_t t165[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[502] = BinaryenConst(the_module, BinaryenLiteralVec128(t165)); + } + { + uint8_t t166[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[503] = BinaryenConst(the_module, BinaryenLiteralVec128(t166)); + } + expressions[504] = BinaryenBinary(the_module, 144, expressions[503], expressions[502]); + { + uint8_t t167[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[505] = BinaryenConst(the_module, BinaryenLiteralVec128(t167)); + } + { + uint8_t t168[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[506] = BinaryenConst(the_module, BinaryenLiteralVec128(t168)); + } + expressions[507] = BinaryenBinary(the_module, 145, expressions[506], expressions[505]); + { + uint8_t t169[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[508] = BinaryenConst(the_module, BinaryenLiteralVec128(t169)); + } + { + uint8_t t170[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[509] = BinaryenConst(the_module, BinaryenLiteralVec128(t170)); + } + expressions[510] = BinaryenBinary(the_module, 146, expressions[509], expressions[508]); + { + uint8_t t171[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[511] = BinaryenConst(the_module, BinaryenLiteralVec128(t171)); + } + { + uint8_t t172[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[512] = BinaryenConst(the_module, BinaryenLiteralVec128(t172)); + } + expressions[513] = BinaryenBinary(the_module, 129, expressions[512], expressions[511]); + { + uint8_t t173[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[514] = BinaryenConst(the_module, BinaryenLiteralVec128(t173)); + } + { + uint8_t t174[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[515] = BinaryenConst(the_module, BinaryenLiteralVec128(t174)); + } + expressions[516] = BinaryenBinary(the_module, 130, expressions[515], expressions[514]); + { + uint8_t t175[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[517] = BinaryenConst(the_module, BinaryenLiteralVec128(t175)); + } + { + uint8_t t176[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[518] = BinaryenConst(the_module, BinaryenLiteralVec128(t176)); + } + expressions[519] = BinaryenBinary(the_module, 131, expressions[518], expressions[517]); + { + uint8_t t177[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[520] = BinaryenConst(the_module, BinaryenLiteralVec128(t177)); + } + { + uint8_t t178[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[521] = BinaryenConst(the_module, BinaryenLiteralVec128(t178)); + } + expressions[522] = BinaryenBinary(the_module, 132, expressions[521], expressions[520]); + { + uint8_t t179[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[523] = BinaryenConst(the_module, BinaryenLiteralVec128(t179)); + } + { + uint8_t t180[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[524] = BinaryenConst(the_module, BinaryenLiteralVec128(t180)); + } + expressions[525] = BinaryenBinary(the_module, 152, expressions[524], expressions[523]); + { + uint8_t t181[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[526] = BinaryenConst(the_module, BinaryenLiteralVec128(t181)); + } + { + uint8_t t182[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[527] = BinaryenConst(the_module, BinaryenLiteralVec128(t182)); + } + expressions[528] = BinaryenBinary(the_module, 153, expressions[527], expressions[526]); + { + uint8_t t183[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[529] = BinaryenConst(the_module, BinaryenLiteralVec128(t183)); + } + { + uint8_t t184[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[530] = BinaryenConst(the_module, BinaryenLiteralVec128(t184)); + } + expressions[531] = BinaryenBinary(the_module, 154, expressions[530], expressions[529]); + { + uint8_t t185[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[532] = BinaryenConst(the_module, BinaryenLiteralVec128(t185)); + } + { + uint8_t t186[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[533] = BinaryenConst(the_module, BinaryenLiteralVec128(t186)); + } + expressions[534] = BinaryenBinary(the_module, 155, expressions[533], expressions[532]); + { + uint8_t t187[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[535] = BinaryenConst(the_module, BinaryenLiteralVec128(t187)); + } + { + uint8_t t188[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[536] = BinaryenConst(the_module, BinaryenLiteralVec128(t188)); + } + expressions[537] = BinaryenBinary(the_module, 156, expressions[536], expressions[535]); + { + uint8_t t189[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[538] = BinaryenConst(the_module, BinaryenLiteralVec128(t189)); + } + { + uint8_t t190[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[539] = BinaryenConst(the_module, BinaryenLiteralVec128(t190)); + } + expressions[540] = BinaryenBinary(the_module, 147, expressions[539], expressions[538]); + { + uint8_t t191[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[541] = BinaryenConst(the_module, BinaryenLiteralVec128(t191)); + } + { + uint8_t t192[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[542] = BinaryenConst(the_module, BinaryenLiteralVec128(t192)); + } + expressions[543] = BinaryenBinary(the_module, 148, expressions[542], expressions[541]); + { + uint8_t t193[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[544] = BinaryenConst(the_module, BinaryenLiteralVec128(t193)); + } + { + uint8_t t194[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[545] = BinaryenConst(the_module, BinaryenLiteralVec128(t194)); + } + expressions[546] = BinaryenBinary(the_module, 149, expressions[545], expressions[544]); + { + uint8_t t195[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[547] = BinaryenConst(the_module, BinaryenLiteralVec128(t195)); + } + { + uint8_t t196[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[548] = BinaryenConst(the_module, BinaryenLiteralVec128(t196)); + } + expressions[549] = BinaryenBinary(the_module, 150, expressions[548], expressions[547]); + { + uint8_t t197[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[550] = BinaryenConst(the_module, BinaryenLiteralVec128(t197)); + } + { + uint8_t t198[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[551] = BinaryenConst(the_module, BinaryenLiteralVec128(t198)); + } + expressions[552] = BinaryenBinary(the_module, 151, expressions[551], expressions[550]); + { + uint8_t t199[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[553] = BinaryenConst(the_module, BinaryenLiteralVec128(t199)); + } + { + uint8_t t200[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[554] = BinaryenConst(the_module, BinaryenLiteralVec128(t200)); + } + expressions[555] = BinaryenBinary(the_module, 157, expressions[554], expressions[553]); + { + uint8_t t201[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[556] = BinaryenConst(the_module, BinaryenLiteralVec128(t201)); + } + { + uint8_t t202[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[557] = BinaryenConst(the_module, BinaryenLiteralVec128(t202)); + } + expressions[558] = BinaryenBinary(the_module, 158, expressions[557], expressions[556]); + { + uint8_t t203[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[559] = BinaryenConst(the_module, BinaryenLiteralVec128(t203)); + } + { + uint8_t t204[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[560] = BinaryenConst(the_module, BinaryenLiteralVec128(t204)); + } + expressions[561] = BinaryenBinary(the_module, 159, expressions[560], expressions[559]); + { + uint8_t t205[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[562] = BinaryenConst(the_module, BinaryenLiteralVec128(t205)); + } + { + uint8_t t206[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[563] = BinaryenConst(the_module, BinaryenLiteralVec128(t206)); + } + expressions[564] = BinaryenBinary(the_module, 160, expressions[563], expressions[562]); + { + uint8_t t207[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[565] = BinaryenConst(the_module, BinaryenLiteralVec128(t207)); + } + { + uint8_t t208[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[566] = BinaryenConst(the_module, BinaryenLiteralVec128(t208)); + } + expressions[567] = BinaryenBinary(the_module, 161, expressions[566], expressions[565]); + { + uint8_t t209[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[568] = BinaryenConst(the_module, BinaryenLiteralVec128(t209)); + } + { + uint8_t t210[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[569] = BinaryenConst(the_module, BinaryenLiteralVec128(t210)); + } + expressions[570] = BinaryenBinary(the_module, 162, expressions[569], expressions[568]); + { + uint8_t t211[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[571] = BinaryenConst(the_module, BinaryenLiteralVec128(t211)); + } + { + uint8_t t212[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[572] = BinaryenConst(the_module, BinaryenLiteralVec128(t212)); + } + expressions[573] = BinaryenBinary(the_module, 163, expressions[572], expressions[571]); + { + uint8_t t213[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[574] = BinaryenConst(the_module, BinaryenLiteralVec128(t213)); + } + { + uint8_t t214[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[575] = BinaryenConst(the_module, BinaryenLiteralVec128(t214)); + } + expressions[576] = BinaryenBinary(the_module, 164, expressions[575], expressions[574]); + { + uint8_t t215[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[577] = BinaryenConst(the_module, BinaryenLiteralVec128(t215)); + } + { + uint8_t t216[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[578] = BinaryenConst(the_module, BinaryenLiteralVec128(t216)); + } + expressions[579] = BinaryenBinary(the_module, 165, expressions[578], expressions[577]); + { + uint8_t t217[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[580] = BinaryenConst(the_module, BinaryenLiteralVec128(t217)); + } + { + uint8_t t218[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[581] = BinaryenConst(the_module, BinaryenLiteralVec128(t218)); + } + expressions[582] = BinaryenBinary(the_module, 166, expressions[581], expressions[580]); + { + uint8_t t219[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[583] = BinaryenConst(the_module, BinaryenLiteralVec128(t219)); + } + { + uint8_t t220[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[584] = BinaryenConst(the_module, BinaryenLiteralVec128(t220)); + } + expressions[585] = BinaryenBinary(the_module, 167, expressions[584], expressions[583]); + { + uint8_t t221[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[586] = BinaryenConst(the_module, BinaryenLiteralVec128(t221)); + } + { + uint8_t t222[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[587] = BinaryenConst(the_module, BinaryenLiteralVec128(t222)); + } + expressions[588] = BinaryenBinary(the_module, 168, expressions[587], expressions[586]); + { + uint8_t t223[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[589] = BinaryenConst(the_module, BinaryenLiteralVec128(t223)); + } + { + uint8_t t224[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[590] = BinaryenConst(the_module, BinaryenLiteralVec128(t224)); + } + expressions[591] = BinaryenBinary(the_module, 169, expressions[590], expressions[589]); + { + uint8_t t225[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[592] = BinaryenConst(the_module, BinaryenLiteralVec128(t225)); + } + { + uint8_t t226[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[593] = BinaryenConst(the_module, BinaryenLiteralVec128(t226)); + } + expressions[594] = BinaryenBinary(the_module, 170, expressions[593], expressions[592]); + { + uint8_t t227[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[595] = BinaryenConst(the_module, BinaryenLiteralVec128(t227)); + } + expressions[596] = BinaryenSIMDExtract(the_module, 0, expressions[595], 0); + { + uint8_t t228[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[597] = BinaryenConst(the_module, BinaryenLiteralVec128(t228)); + } + expressions[598] = BinaryenSIMDExtract(the_module, 1, expressions[597], 0); + { + uint8_t t229[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[599] = BinaryenConst(the_module, BinaryenLiteralVec128(t229)); + } + expressions[600] = BinaryenSIMDExtract(the_module, 2, expressions[599], 0); + { + uint8_t t230[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[601] = BinaryenConst(the_module, BinaryenLiteralVec128(t230)); + } + expressions[602] = BinaryenSIMDExtract(the_module, 3, expressions[601], 0); + { + uint8_t t231[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[603] = BinaryenConst(the_module, BinaryenLiteralVec128(t231)); + } + expressions[604] = BinaryenSIMDExtract(the_module, 4, expressions[603], 0); + { + uint8_t t232[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[605] = BinaryenConst(the_module, BinaryenLiteralVec128(t232)); + } + expressions[606] = BinaryenSIMDExtract(the_module, 5, expressions[605], 0); + { + uint8_t t233[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[607] = BinaryenConst(the_module, BinaryenLiteralVec128(t233)); + } + expressions[608] = BinaryenSIMDExtract(the_module, 6, expressions[607], 0); + { + uint8_t t234[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[609] = BinaryenConst(the_module, BinaryenLiteralVec128(t234)); + } + expressions[610] = BinaryenSIMDExtract(the_module, 7, expressions[609], 0); + expressions[611] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + { + uint8_t t235[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[612] = BinaryenConst(the_module, BinaryenLiteralVec128(t235)); + } + expressions[613] = BinaryenSIMDReplace(the_module, 0, expressions[612], 0, expressions[611]); + expressions[614] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + { + uint8_t t236[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[615] = BinaryenConst(the_module, BinaryenLiteralVec128(t236)); + } + expressions[616] = BinaryenSIMDReplace(the_module, 1, expressions[615], 0, expressions[614]); + expressions[617] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + { + uint8_t t237[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[618] = BinaryenConst(the_module, BinaryenLiteralVec128(t237)); + } + expressions[619] = BinaryenSIMDReplace(the_module, 2, expressions[618], 0, expressions[617]); + expressions[620] = BinaryenConst(the_module, BinaryenLiteralInt64(42)); + { + uint8_t t238[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[621] = BinaryenConst(the_module, BinaryenLiteralVec128(t238)); + } + expressions[622] = BinaryenSIMDReplace(the_module, 3, expressions[621], 0, expressions[620]); + expressions[623] = BinaryenConst(the_module, BinaryenLiteralFloat32(42)); + { + uint8_t t239[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[624] = BinaryenConst(the_module, BinaryenLiteralVec128(t239)); + } + expressions[625] = BinaryenSIMDReplace(the_module, 4, expressions[624], 0, expressions[623]); + expressions[626] = BinaryenConst(the_module, BinaryenLiteralFloat64(42)); + { + uint8_t t240[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[627] = BinaryenConst(the_module, BinaryenLiteralVec128(t240)); + } + expressions[628] = BinaryenSIMDReplace(the_module, 5, expressions[627], 0, expressions[626]); + { + uint8_t t241[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[629] = BinaryenConst(the_module, BinaryenLiteralVec128(t241)); + } + expressions[630] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[631] = BinaryenSIMDShift(the_module, 0, expressions[629], expressions[630]); + { + uint8_t t242[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[632] = BinaryenConst(the_module, BinaryenLiteralVec128(t242)); + } + expressions[633] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[634] = BinaryenSIMDShift(the_module, 1, expressions[632], expressions[633]); + { + uint8_t t243[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[635] = BinaryenConst(the_module, BinaryenLiteralVec128(t243)); + } + expressions[636] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[637] = BinaryenSIMDShift(the_module, 2, expressions[635], expressions[636]); + { + uint8_t t244[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[638] = BinaryenConst(the_module, BinaryenLiteralVec128(t244)); + } + expressions[639] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[640] = BinaryenSIMDShift(the_module, 3, expressions[638], expressions[639]); + { + uint8_t t245[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[641] = BinaryenConst(the_module, BinaryenLiteralVec128(t245)); + } + expressions[642] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[643] = BinaryenSIMDShift(the_module, 4, expressions[641], expressions[642]); + { + uint8_t t246[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[644] = BinaryenConst(the_module, BinaryenLiteralVec128(t246)); + } + expressions[645] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[646] = BinaryenSIMDShift(the_module, 5, expressions[644], expressions[645]); + { + uint8_t t247[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[647] = BinaryenConst(the_module, BinaryenLiteralVec128(t247)); + } + expressions[648] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[649] = BinaryenSIMDShift(the_module, 6, expressions[647], expressions[648]); + { + uint8_t t248[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[650] = BinaryenConst(the_module, BinaryenLiteralVec128(t248)); + } + expressions[651] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[652] = BinaryenSIMDShift(the_module, 7, expressions[650], expressions[651]); + { + uint8_t t249[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[653] = BinaryenConst(the_module, BinaryenLiteralVec128(t249)); + } + expressions[654] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[655] = BinaryenSIMDShift(the_module, 8, expressions[653], expressions[654]); + { + uint8_t t250[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[656] = BinaryenConst(the_module, BinaryenLiteralVec128(t250)); + } + expressions[657] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[658] = BinaryenSIMDShift(the_module, 9, expressions[656], expressions[657]); + { + uint8_t t251[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[659] = BinaryenConst(the_module, BinaryenLiteralVec128(t251)); + } + expressions[660] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[661] = BinaryenSIMDShift(the_module, 10, expressions[659], expressions[660]); + { + uint8_t t252[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[662] = BinaryenConst(the_module, BinaryenLiteralVec128(t252)); + } + expressions[663] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[664] = BinaryenSIMDShift(the_module, 11, expressions[662], expressions[663]); + expressions[665] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[666] = BinaryenSIMDLoad(the_module, 0, 0, 1, expressions[665]); + expressions[667] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[668] = BinaryenSIMDLoad(the_module, 1, 16, 1, expressions[667]); + expressions[669] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[670] = BinaryenSIMDLoad(the_module, 2, 16, 4, expressions[669]); + expressions[671] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[672] = BinaryenSIMDLoad(the_module, 3, 0, 4, expressions[671]); + expressions[673] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[674] = BinaryenSIMDLoad(the_module, 4, 0, 8, expressions[673]); + expressions[675] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[676] = BinaryenSIMDLoad(the_module, 5, 0, 8, expressions[675]); + expressions[677] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[678] = BinaryenSIMDLoad(the_module, 6, 0, 8, expressions[677]); + expressions[679] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[680] = BinaryenSIMDLoad(the_module, 7, 0, 8, expressions[679]); + expressions[681] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[682] = BinaryenSIMDLoad(the_module, 8, 0, 8, expressions[681]); + expressions[683] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[684] = BinaryenSIMDLoad(the_module, 9, 0, 8, expressions[683]); + { + uint8_t t253[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[685] = BinaryenConst(the_module, BinaryenLiteralVec128(t253)); + } + { + uint8_t t254[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[686] = BinaryenConst(the_module, BinaryenLiteralVec128(t254)); + } + { + uint8_t mask[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + expressions[687] = BinaryenSIMDShuffle(the_module, expressions[685], expressions[686], mask); + } + { + uint8_t t255[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[688] = BinaryenConst(the_module, BinaryenLiteralVec128(t255)); + } + { + uint8_t t256[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[689] = BinaryenConst(the_module, BinaryenLiteralVec128(t256)); + } + { + uint8_t t257[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[690] = BinaryenConst(the_module, BinaryenLiteralVec128(t257)); + } + expressions[691] = BinaryenSIMDTernary(the_module, 0, expressions[688], expressions[689], expressions[690]); + { + uint8_t t258[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[692] = BinaryenConst(the_module, BinaryenLiteralVec128(t258)); + } + { + uint8_t t259[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[693] = BinaryenConst(the_module, BinaryenLiteralVec128(t259)); + } + { + uint8_t t260[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[694] = BinaryenConst(the_module, BinaryenLiteralVec128(t260)); + } + expressions[695] = BinaryenSIMDTernary(the_module, 1, expressions[692], expressions[693], expressions[694]); + { + uint8_t t261[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[696] = BinaryenConst(the_module, BinaryenLiteralVec128(t261)); + } + { + uint8_t t262[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[697] = BinaryenConst(the_module, BinaryenLiteralVec128(t262)); + } + { + uint8_t t263[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[698] = BinaryenConst(the_module, BinaryenLiteralVec128(t263)); + } + expressions[699] = BinaryenSIMDTernary(the_module, 2, expressions[696], expressions[697], expressions[698]); + { + uint8_t t264[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[700] = BinaryenConst(the_module, BinaryenLiteralVec128(t264)); + } + { + uint8_t t265[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[701] = BinaryenConst(the_module, BinaryenLiteralVec128(t265)); + } + { + uint8_t t266[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[702] = BinaryenConst(the_module, BinaryenLiteralVec128(t266)); + } + expressions[703] = BinaryenSIMDTernary(the_module, 3, expressions[700], expressions[701], expressions[702]); + { + uint8_t t267[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[704] = BinaryenConst(the_module, BinaryenLiteralVec128(t267)); + } + { + uint8_t t268[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[705] = BinaryenConst(the_module, BinaryenLiteralVec128(t268)); + } + { + uint8_t t269[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + expressions[706] = BinaryenConst(the_module, BinaryenLiteralVec128(t269)); + } + expressions[707] = BinaryenSIMDTernary(the_module, 4, expressions[704], expressions[705], expressions[706]); + expressions[708] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); + expressions[709] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[710] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); + expressions[711] = BinaryenMemoryInit(the_module, 0, expressions[708], expressions[709], expressions[710]); + expressions[712] = BinaryenDataDrop(the_module, 0); + expressions[713] = BinaryenConst(the_module, BinaryenLiteralInt32(2048)); + expressions[714] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); + expressions[715] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); + expressions[716] = BinaryenMemoryCopy(the_module, expressions[713], expressions[714], expressions[715]); + expressions[717] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[718] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + expressions[719] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); + expressions[720] = BinaryenMemoryFill(the_module, expressions[717], expressions[718], expressions[719]); + { + BinaryenExpressionRef children[] = { 0 }; + expressions[721] = BinaryenBlock(the_module, NULL, children, 0, BinaryenTypeAuto()); + } + expressions[722] = BinaryenIf(the_module, expressions[18], expressions[19], expressions[20]); + expressions[723] = BinaryenIf(the_module, expressions[21], expressions[22], expressions[0]); + expressions[724] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[725] = BinaryenLoop(the_module, "in", expressions[724]); + expressions[726] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[727] = BinaryenLoop(the_module, NULL, expressions[726]); + expressions[728] = BinaryenBreak(the_module, "the-value", expressions[23], expressions[24]); + expressions[729] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + expressions[730] = BinaryenBreak(the_module, "the-nothing", expressions[729], expressions[0]); + expressions[731] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + expressions[732] = BinaryenBreak(the_module, "the-value", expressions[0], expressions[731]); + expressions[733] = BinaryenBreak(the_module, "the-nothing", expressions[0], expressions[0]); + { + const char* names[] = { "the-value" }; + expressions[734] = BinaryenSwitch(the_module, names, 1, "the-value", expressions[25], expressions[26]); + } + expressions[735] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + const char* names[] = { "the-nothing" }; + expressions[736] = BinaryenSwitch(the_module, names, 1, "the-nothing", expressions[735], expressions[0]); + } + { + BinaryenExpressionRef operands[] = { expressions[10], expressions[11], expressions[12], expressions[13] }; + expressions[737] = BinaryenCall(the_module, "kitchen()sinker", operands, 4, 2); + } + expressions[738] = BinaryenUnary(the_module, 20, expressions[737]); + { + BinaryenExpressionRef operands[] = { expressions[8], expressions[9] }; + expressions[739] = BinaryenCall(the_module, "an-imported", operands, 2, 4); + } + expressions[740] = BinaryenUnary(the_module, 25, expressions[739]); + expressions[741] = BinaryenUnary(the_module, 20, expressions[740]); + expressions[742] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); + { + BinaryenExpressionRef operands[] = { expressions[14], expressions[15], expressions[16], expressions[17] }; + expressions[743] = BinaryenCallIndirect(the_module, expressions[742], operands, 4, 9, 2); + } + expressions[744] = BinaryenUnary(the_module, 20, expressions[743]); + expressions[745] = BinaryenLocalGet(the_module, 0, 2); + expressions[746] = BinaryenDrop(the_module, expressions[745]); + expressions[747] = BinaryenConst(the_module, BinaryenLiteralInt32(101)); + expressions[748] = BinaryenLocalSet(the_module, 0, expressions[747]); + expressions[749] = BinaryenConst(the_module, BinaryenLiteralInt32(102)); + expressions[750] = BinaryenLocalTee(the_module, 0, expressions[749]); + expressions[751] = BinaryenDrop(the_module, expressions[750]); + expressions[752] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[753] = BinaryenLoad(the_module, 4, 0, 0, 0, 2, expressions[752]); + expressions[754] = BinaryenConst(the_module, BinaryenLiteralInt32(8)); + expressions[755] = BinaryenLoad(the_module, 2, 1, 2, 1, 3, expressions[754]); + expressions[756] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + expressions[757] = BinaryenLoad(the_module, 4, 0, 0, 0, 4, expressions[756]); + expressions[758] = BinaryenConst(the_module, BinaryenLiteralInt32(9)); + expressions[759] = BinaryenLoad(the_module, 8, 0, 2, 8, 5, expressions[758]); + expressions[760] = BinaryenStore(the_module, 4, 0, 0, expressions[30], expressions[31], 2); + expressions[761] = BinaryenStore(the_module, 8, 2, 4, expressions[32], expressions[33], 3); + expressions[762] = BinaryenSelect(the_module, expressions[27], expressions[28], expressions[29]); + expressions[763] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); + expressions[764] = BinaryenReturn(the_module, expressions[763]); + { + BinaryenExpressionRef operands[] = { expressions[10], expressions[11], expressions[12], expressions[13] }; + expressions[765] = BinaryenReturnCall(the_module, "kitchen()sinker", operands, 4, 2); + } + expressions[766] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); + { + BinaryenExpressionRef operands[] = { expressions[14], expressions[15], expressions[16], expressions[17] }; + expressions[767] = BinaryenReturnCallIndirect(the_module, expressions[766], operands, 4, 9, 2); + } + expressions[768] = BinaryenTry(the_module, expressions[35], expressions[43]); + expressions[769] = BinaryenAtomicLoad(the_module, 4, 0, 2, expressions[23]); + expressions[770] = BinaryenAtomicStore(the_module, 4, 0, expressions[23], expressions[769], 2); + expressions[771] = BinaryenAtomicWait(the_module, expressions[23], expressions[23], expressions[33], 2); + expressions[772] = BinaryenDrop(the_module, expressions[771]); + expressions[773] = BinaryenAtomicNotify(the_module, expressions[23], expressions[23]); + expressions[774] = BinaryenDrop(the_module, expressions[773]); + expressions[775] = BinaryenAtomicFence(the_module); + expressions[776] = BinaryenPop(the_module, 2); + expressions[777] = BinaryenPush(the_module, expressions[776]); + expressions[778] = BinaryenPop(the_module, 3); + expressions[779] = BinaryenPush(the_module, expressions[778]); + expressions[780] = BinaryenPop(the_module, 4); + expressions[781] = BinaryenPush(the_module, expressions[780]); + expressions[782] = BinaryenPop(the_module, 5); + expressions[783] = BinaryenPush(the_module, expressions[782]); + expressions[784] = BinaryenPop(the_module, 7); + expressions[785] = BinaryenPush(the_module, expressions[784]); + expressions[786] = BinaryenPop(the_module, 8); + expressions[787] = BinaryenPush(the_module, expressions[786]); + expressions[788] = BinaryenNop(the_module); + expressions[789] = BinaryenUnreachable(the_module); + BinaryenExpressionPrint(expressions[51]); (f32.neg (f32.const -33.61199951171875) ) + { + BinaryenExpressionRef children[] = { expressions[45], expressions[47], expressions[49], expressions[51], expressions[53], + expressions[55], expressions[57], expressions[59], expressions[61], expressions[63], expressions[65], + expressions[67], expressions[69], expressions[71], expressions[73], expressions[75], expressions[77], + expressions[79], expressions[81], expressions[83], expressions[85], expressions[87], expressions[89], + expressions[91], expressions[93], expressions[95], expressions[97], expressions[99], expressions[101], + expressions[103], expressions[105], expressions[107], expressions[109], expressions[111], expressions[113], + expressions[115], expressions[117], expressions[119], expressions[121], expressions[123], expressions[125], + expressions[127], expressions[129], expressions[131], expressions[133], expressions[135], expressions[137], + expressions[139], expressions[141], expressions[143], expressions[145], expressions[147], expressions[149], + expressions[151], expressions[153], expressions[155], expressions[157], expressions[159], expressions[161], + expressions[163], expressions[165], expressions[167], expressions[169], expressions[171], expressions[173], + expressions[175], expressions[177], expressions[179], expressions[181], expressions[183], expressions[185], + expressions[187], expressions[189], expressions[191], expressions[193], expressions[195], expressions[197], + expressions[199], expressions[201], expressions[203], expressions[205], expressions[207], expressions[209], + expressions[211], expressions[213], expressions[216], expressions[219], expressions[222], expressions[225], + expressions[228], expressions[231], expressions[234], expressions[237], expressions[240], expressions[243], + expressions[246], expressions[249], expressions[252], expressions[255], expressions[258], expressions[261], + expressions[264], expressions[267], expressions[270], expressions[273], expressions[276], expressions[279], + expressions[282], expressions[285], expressions[288], expressions[291], expressions[294], expressions[297], + expressions[300], expressions[303], expressions[306], expressions[309], expressions[312], expressions[315], + expressions[318], expressions[321], expressions[324], expressions[327], expressions[330], expressions[333], + expressions[336], expressions[339], expressions[342], expressions[345], expressions[348], expressions[351], + expressions[354], expressions[357], expressions[360], expressions[363], expressions[366], expressions[369], + expressions[372], expressions[375], expressions[378], expressions[381], expressions[384], expressions[387], + expressions[390], expressions[393], expressions[396], expressions[399], expressions[402], expressions[405], + expressions[408], expressions[411], expressions[414], expressions[417], expressions[420], expressions[423], + expressions[426], expressions[429], expressions[432], expressions[435], expressions[438], expressions[441], + expressions[444], expressions[447], expressions[450], expressions[453], expressions[456], expressions[459], + expressions[462], expressions[465], expressions[468], expressions[471], expressions[474], expressions[477], + expressions[480], expressions[483], expressions[486], expressions[489], expressions[492], expressions[495], + expressions[498], expressions[501], expressions[504], expressions[507], expressions[510], expressions[513], + expressions[516], expressions[519], expressions[522], expressions[525], expressions[528], expressions[531], + expressions[534], expressions[537], expressions[540], expressions[543], expressions[546], expressions[549], + expressions[552], expressions[555], expressions[558], expressions[561], expressions[564], expressions[567], + expressions[570], expressions[573], expressions[576], expressions[579], expressions[582], expressions[585], + expressions[588], expressions[591], expressions[594], expressions[596], expressions[598], expressions[600], + expressions[602], expressions[604], expressions[606], expressions[608], expressions[610], expressions[613], + expressions[616], expressions[619], expressions[622], expressions[625], expressions[628], expressions[631], + expressions[634], expressions[637], expressions[640], expressions[643], expressions[646], expressions[649], + expressions[652], expressions[655], expressions[658], expressions[661], expressions[664], expressions[666], + expressions[668], expressions[670], expressions[672], expressions[674], expressions[676], expressions[678], + expressions[680], expressions[682], expressions[684], expressions[687], expressions[691], expressions[695], + expressions[699], expressions[703], expressions[707], expressions[711], expressions[712], expressions[716], + expressions[720], expressions[721], expressions[722], expressions[723], expressions[725], expressions[727], + expressions[728], expressions[730], expressions[732], expressions[733], expressions[734], expressions[736], + expressions[738], expressions[741], expressions[744], expressions[746], expressions[748], expressions[751], + expressions[753], expressions[755], expressions[757], expressions[759], expressions[760], expressions[761], + expressions[762], expressions[764], expressions[765], expressions[767], expressions[768], expressions[770], + expressions[772], expressions[774], expressions[775], expressions[777], expressions[779], expressions[781], + expressions[783], expressions[785], expressions[787], expressions[788], expressions[789] }; + expressions[790] = BinaryenBlock(the_module, "the-value", children, 298, BinaryenTypeAuto()); + } + expressions[791] = BinaryenDrop(the_module, expressions[790]); + { + BinaryenExpressionRef children[] = { expressions[791] }; + expressions[792] = BinaryenBlock(the_module, "the-nothing", children, 1, BinaryenTypeAuto()); + } + expressions[793] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + { + BinaryenExpressionRef children[] = { expressions[792], expressions[793] }; + expressions[794] = BinaryenBlock(the_module, "the-body", children, 2, BinaryenTypeAuto()); + } + { + BinaryenType varTypes[] = { 2, 8 }; + functions[0] = BinaryenAddFunction(the_module, "kitchen()sinker", 9, 2, varTypes, 2, expressions[794]); + } + expressions[795] = BinaryenConst(the_module, BinaryenLiteralInt32(7)); + globals[0] = BinaryenAddGlobal(the_module, "a-global", 2, 0, expressions[795]); + expressions[796] = BinaryenConst(the_module, BinaryenLiteralFloat32(7.5)); + globals[1] = BinaryenAddGlobal(the_module, "a-mutable-global", 4, 1, expressions[796]); + { + BinaryenType t270[] = {2, 5}; + BinaryenTypeCreate(t270, 2); // 10 + } + BinaryenAddFunctionImport(the_module, "an-imported", "module", "base", 10, 4); + exports[0] = BinaryenAddFunctionExport(the_module, "kitchen()sinker", "kitchen_sinker"); + BinaryenFunctionGetName(functions[0]); + expressions[797] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + const char* funcNames[] = { "kitchen()sinker" }; + BinaryenSetFunctionTable(the_module, 1, 1, funcNames, 1, expressions[797]); + } + expressions[798] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + { + const char segment0[] = { 104, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100 }; + const char segment1[] = { 73, 32, 97, 109, 32, 112, 97, 115, 115, 105, 118, 101 }; + const char* segments[] = { segment0, segment1 }; + int8_t segmentPassive[] = { 0, 1 }; + BinaryenExpressionRef segmentOffsets[] = { expressions[798], expressions[0] }; + BinaryenIndex segmentSizes[] = { 12, 12 }; + BinaryenSetMemory(the_module, 1, 256, "mem", segments, segmentPassive, segmentOffsets, segmentSizes, 2, 1); + } + expressions[799] = BinaryenNop(the_module); + { + BinaryenType varTypes[] = { 0 }; + functions[1] = BinaryenAddFunction(the_module, "starter", 0, 0, varTypes, 0, expressions[799]); + } + BinaryenSetStart(the_module, functions[1]); + BinaryenModuleAutoDrop(the_module); + BinaryenModuleSetFeatures(the_module, 511); + BinaryenModuleGetFeatures(the_module); + BinaryenModuleValidate(the_module); + BinaryenModulePrint(the_module); (module - (type $iiIfF (func (param i32 i64 f32 f64) (result i32))) - (type $fiF (func (param i32 f64) (result f32))) - (type $v (func)) - (type $3 (func)) + (type $i32_i64_f32_f64_=>_i32 (func (param i32 i64 f32 f64) (result i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $i32_f64_=>_f32 (func (param i32 f64) (result f32))) (import "module" "base" (func $an-imported (param i32 f64) (result f32))) (memory $0 (shared 1 256)) (data (i32.const 10) "hello, world") @@ -39,7 +1775,7 @@ BinaryenFeatureAll: 511 (export "kitchen_sinker" (func "$kitchen()sinker")) (export "mem" (memory $0)) (start $starter) - (func "$kitchen()sinker" (; 1 ;) (type $iiIfF) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32) + (func "$kitchen()sinker" (; 1 ;) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32) (local $4 i32) (local $5 exnref) (block $the-body (result i32) @@ -1557,7 +3293,7 @@ BinaryenFeatureAll: 511 ) (drop (i32.eqz - (call_indirect (type $iiIfF) + (call_indirect (type $i32_i64_f32_f64_=>_i32) (i32.const 13) (i64.const 37) (f32.const 1.2999999523162842) @@ -1621,7 +3357,7 @@ BinaryenFeatureAll: 511 (f32.const 1.2999999523162842) (f64.const 3.7) ) - (return_call_indirect (type $iiIfF) + (return_call_indirect (type $i32_i64_f32_f64_=>_i32) (i32.const 13) (i64.const 37) (f32.const 1.2999999523162842) @@ -1693,32 +3429,473 @@ BinaryenFeatureAll: 511 (i32.const 42) ) ) - (func $starter (; 2 ;) (type $v) + (func $starter (; 2 ;) (nop) ) ) -(module - (type $i (func (result i32))) - (type $I (func (result i64))) - (func $unreachable-fn (; 0 ;) (type $i) (result i32) - (call_indirect (type $I) - (unreachable) - ) - ) -) + BinaryenModuleDispose(the_module); + expressions.clear(); + functions.clear(); + globals.clear(); + events.clear(); + exports.clear(); + relooperBlocks.clear(); + the_module = BinaryenModuleCreate(); + expressions[size_t(NULL)] = BinaryenExpressionRef(NULL); + BinaryenAddFunctionImport(the_module, "check", "module", "check", 2, 0); + the_relooper = RelooperCreate(the_module); + expressions[1] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); + { + BinaryenExpressionRef operands[] = { expressions[1] }; + expressions[2] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[2]); + expressions[3] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[0] = BinaryenAddFunction(the_module, "just-one-block", 0, 0, varTypes, 1, expressions[3]); + } + the_relooper = RelooperCreate(the_module); + expressions[4] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[4] }; + expressions[5] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[5]); + expressions[6] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[6] }; + expressions[7] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[7]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); + expressions[8] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[1] = BinaryenAddFunction(the_module, "two-blocks", 0, 0, varTypes, 1, expressions[8]); + } + the_relooper = RelooperCreate(the_module); + expressions[9] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[9] }; + expressions[10] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[10]); + expressions[11] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[11] }; + expressions[12] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[12]); + expressions[13] = BinaryenConst(the_module, BinaryenLiteralInt32(77)); + expressions[14] = BinaryenDrop(the_module, expressions[13]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[14]); + expressions[15] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[2] = BinaryenAddFunction(the_module, "two-blocks-plus-code", 0, 0, varTypes, 1, expressions[15]); + } + the_relooper = RelooperCreate(the_module); + expressions[16] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[16] }; + expressions[17] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[17]); + expressions[18] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[18] }; + expressions[19] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[19]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[0], expressions[0], expressions[0]); + expressions[20] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[3] = BinaryenAddFunction(the_module, "loop", 0, 0, varTypes, 1, expressions[20]); + } + the_relooper = RelooperCreate(the_module); + expressions[21] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[21] }; + expressions[22] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[22]); + expressions[23] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[23] }; + expressions[24] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[24]); + expressions[25] = BinaryenConst(the_module, BinaryenLiteralInt32(33)); + expressions[26] = BinaryenDrop(the_module, expressions[25]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[26]); + expressions[27] = BinaryenConst(the_module, BinaryenLiteralInt32(-66)); + expressions[28] = BinaryenDrop(the_module, expressions[27]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[0], expressions[0], expressions[28]); + expressions[29] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[4] = BinaryenAddFunction(the_module, "loop-plus-code", 0, 0, varTypes, 1, expressions[29]); + } + the_relooper = RelooperCreate(the_module); + expressions[30] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[30] }; + expressions[31] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[31]); + expressions[32] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[32] }; + expressions[33] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[33]); + expressions[34] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[34] }; + expressions[35] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[35]); + expressions[36] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[36], expressions[0]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); + expressions[37] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[5] = BinaryenAddFunction(the_module, "split", 0, 0, varTypes, 1, expressions[37]); + } + the_relooper = RelooperCreate(the_module); + expressions[38] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[38] }; + expressions[39] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[39]); + expressions[40] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[40] }; + expressions[41] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[41]); + expressions[42] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[42] }; + expressions[43] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[43]); + expressions[44] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + expressions[45] = BinaryenDrop(the_module, expressions[44]); + expressions[46] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[46], expressions[45]); + expressions[47] = BinaryenConst(the_module, BinaryenLiteralInt32(20)); + expressions[48] = BinaryenDrop(the_module, expressions[47]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[48]); + expressions[49] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[6] = BinaryenAddFunction(the_module, "split-plus-code", 0, 0, varTypes, 1, expressions[49]); + } + the_relooper = RelooperCreate(the_module); + expressions[50] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[50] }; + expressions[51] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[51]); + expressions[52] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[52] }; + expressions[53] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[53]); + expressions[54] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[54] }; + expressions[55] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[55]); + expressions[56] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[56], expressions[0]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[0]); + expressions[57] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[7] = BinaryenAddFunction(the_module, "if", 0, 0, varTypes, 1, expressions[57]); + } + the_relooper = RelooperCreate(the_module); + expressions[58] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[58] }; + expressions[59] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[59]); + expressions[60] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[60] }; + expressions[61] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[61]); + expressions[62] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[62] }; + expressions[63] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[63]); + expressions[64] = BinaryenConst(the_module, BinaryenLiteralInt32(-1)); + expressions[65] = BinaryenDrop(the_module, expressions[64]); + expressions[66] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[66], expressions[65]); + expressions[67] = BinaryenConst(the_module, BinaryenLiteralInt32(-2)); + expressions[68] = BinaryenDrop(the_module, expressions[67]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[68]); + expressions[69] = BinaryenConst(the_module, BinaryenLiteralInt32(-3)); + expressions[70] = BinaryenDrop(the_module, expressions[69]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[70]); + expressions[71] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[8] = BinaryenAddFunction(the_module, "if-plus-code", 0, 0, varTypes, 1, expressions[71]); + } + the_relooper = RelooperCreate(the_module); + expressions[72] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[72] }; + expressions[73] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[73]); + expressions[74] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[74] }; + expressions[75] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[75]); + expressions[76] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[76] }; + expressions[77] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[77]); + expressions[78] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + { + BinaryenExpressionRef operands[] = { expressions[78] }; + expressions[79] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[3] = RelooperAddBlock(the_relooper, expressions[79]); + expressions[80] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[80], expressions[0]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[3], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[2], relooperBlocks[3], expressions[0], expressions[0]); + expressions[81] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[9] = BinaryenAddFunction(the_module, "if-else", 0, 0, varTypes, 1, expressions[81]); + } + the_relooper = RelooperCreate(the_module); + expressions[82] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[82] }; + expressions[83] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[83]); + expressions[84] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[84] }; + expressions[85] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[85]); + expressions[86] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[86] }; + expressions[87] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[87]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); + expressions[88] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[0], expressions[88], expressions[0]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[0]); + expressions[89] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[10] = BinaryenAddFunction(the_module, "loop-tail", 0, 0, varTypes, 1, expressions[89]); + } + the_relooper = RelooperCreate(the_module); + expressions[90] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[90] }; + expressions[91] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[91]); + expressions[92] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[92] }; + expressions[93] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[93]); + expressions[94] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[94] }; + expressions[95] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[95]); + expressions[96] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + { + BinaryenExpressionRef operands[] = { expressions[96] }; + expressions[97] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[3] = RelooperAddBlock(the_relooper, expressions[97]); + expressions[98] = BinaryenConst(the_module, BinaryenLiteralInt32(4)); + { + BinaryenExpressionRef operands[] = { expressions[98] }; + expressions[99] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[4] = RelooperAddBlock(the_relooper, expressions[99]); + expressions[100] = BinaryenConst(the_module, BinaryenLiteralInt32(5)); + { + BinaryenExpressionRef operands[] = { expressions[100] }; + expressions[101] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[5] = RelooperAddBlock(the_relooper, expressions[101]); + expressions[102] = BinaryenConst(the_module, BinaryenLiteralInt32(6)); + { + BinaryenExpressionRef operands[] = { expressions[102] }; + expressions[103] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[6] = RelooperAddBlock(the_relooper, expressions[103]); + expressions[104] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + expressions[105] = BinaryenDrop(the_module, expressions[104]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[105]); + expressions[106] = BinaryenConst(the_module, BinaryenLiteralInt32(-2)); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[106], expressions[0]); + expressions[107] = BinaryenConst(the_module, BinaryenLiteralInt32(20)); + expressions[108] = BinaryenDrop(the_module, expressions[107]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[6], expressions[0], expressions[108]); + expressions[109] = BinaryenConst(the_module, BinaryenLiteralInt32(-6)); + RelooperAddBranch(relooperBlocks[2], relooperBlocks[3], expressions[109], expressions[0]); + expressions[110] = BinaryenConst(the_module, BinaryenLiteralInt32(30)); + expressions[111] = BinaryenDrop(the_module, expressions[110]); + RelooperAddBranch(relooperBlocks[2], relooperBlocks[1], expressions[0], expressions[111]); + expressions[112] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); + RelooperAddBranch(relooperBlocks[3], relooperBlocks[4], expressions[112], expressions[0]); + RelooperAddBranch(relooperBlocks[3], relooperBlocks[5], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[4], relooperBlocks[5], expressions[0], expressions[0]); + expressions[113] = BinaryenConst(the_module, BinaryenLiteralInt32(40)); + expressions[114] = BinaryenDrop(the_module, expressions[113]); + RelooperAddBranch(relooperBlocks[5], relooperBlocks[6], expressions[0], expressions[114]); + expressions[115] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[11] = BinaryenAddFunction(the_module, "nontrivial-loop-plus-phi-to-head", 0, 0, varTypes, 1, expressions[115]); + } + the_relooper = RelooperCreate(the_module); + expressions[116] = BinaryenConst(the_module, BinaryenLiteralInt32(-99)); + expressions[117] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[117] }; + expressions[118] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlockWithSwitch(the_relooper, expressions[118], expressions[116]); + expressions[119] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[119] }; + expressions[120] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[120]); + expressions[121] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[121] }; + expressions[122] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[122]); + expressions[123] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + { + BinaryenExpressionRef operands[] = { expressions[123] }; + expressions[124] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[3] = RelooperAddBlock(the_relooper, expressions[124]); + { + BinaryenIndex indexes[] = { 2, 5 }; + RelooperAddBranchForSwitch(relooperBlocks[0], relooperBlocks[1], indexes, 2, expressions[0]); + } + expressions[125] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); + expressions[126] = BinaryenDrop(the_module, expressions[125]); + { + BinaryenIndex indexes[] = { 4 }; + RelooperAddBranchForSwitch(relooperBlocks[0], relooperBlocks[2], indexes, 1, expressions[126]); + } + { + BinaryenIndex indexes[] = { 0 }; + RelooperAddBranchForSwitch(relooperBlocks[0], relooperBlocks[3], indexes, 0, expressions[0]); + } + expressions[127] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[12] = BinaryenAddFunction(the_module, "switch", 0, 0, varTypes, 1, expressions[127]); + } + the_relooper = RelooperCreate(the_module); + expressions[128] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + { + BinaryenExpressionRef operands[] = { expressions[128] }; + expressions[129] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[129]); + expressions[130] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + { + BinaryenExpressionRef operands[] = { expressions[130] }; + expressions[131] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[131]); + expressions[132] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + { + BinaryenExpressionRef operands[] = { expressions[132] }; + expressions[133] = BinaryenCall(the_module, "check", operands, 1, 0); + } + relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[133]); + expressions[134] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[134], expressions[0]); + RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[0]); + RelooperAddBranch(relooperBlocks[2], relooperBlocks[1], expressions[0], expressions[0]); + expressions[135] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 3); + { + BinaryenType varTypes[] = { 2, 2, 3, 2, 4, 5, 2 }; + functions[13] = BinaryenAddFunction(the_module, "duffs-device", 0, 0, varTypes, 7, expressions[135]); + } + the_relooper = RelooperCreate(the_module); + expressions[136] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + { + BinaryenExpressionRef operands[] = { expressions[136] }; + expressions[137] = BinaryenCall(the_module, "check", operands, 1, 0); + } + expressions[138] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); + expressions[139] = BinaryenReturn(the_module, expressions[138]); + { + BinaryenExpressionRef children[] = { expressions[137], expressions[139] }; + expressions[140] = BinaryenBlock(the_module, "the-list", children, 2, BinaryenTypeAuto()); + } + relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[140]); + expressions[141] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); + { + BinaryenType varTypes[] = { 2 }; + functions[14] = BinaryenAddFunction(the_module, "return", 0, 2, varTypes, 1, expressions[141]); + } raw: + BinaryenModulePrint(the_module); (module - (type $v (func)) - (type $vi (func (param i32))) - (type $i (func (result i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "module" "check" (func $check (param i32))) - (func $just-one-block (; 1 ;) (type $v) + (func $just-one-block (; 1 ;) (local $0 i32) (call $check (i32.const 1337) ) ) - (func $two-blocks (; 2 ;) (type $v) + (func $two-blocks (; 2 ;) (local $0 i32) (block (call $check @@ -1729,7 +3906,7 @@ raw: ) ) ) - (func $two-blocks-plus-code (; 3 ;) (type $v) + (func $two-blocks-plus-code (; 3 ;) (local $0 i32) (block (block @@ -1745,7 +3922,7 @@ raw: ) ) ) - (func $loop (; 4 ;) (type $v) + (func $loop (; 4 ;) (local $0 i32) (loop $shape$0$continue (block @@ -1761,7 +3938,7 @@ raw: ) ) ) - (func $loop-plus-code (; 5 ;) (type $v) + (func $loop-plus-code (; 5 ;) (local $0 i32) (loop $shape$0$continue (block @@ -1785,7 +3962,7 @@ raw: ) ) ) - (func $split (; 6 ;) (type $v) + (func $split (; 6 ;) (local $0 i32) (call $check (i32.const 0) @@ -1804,7 +3981,7 @@ raw: ) ) ) - (func $split-plus-code (; 7 ;) (type $v) + (func $split-plus-code (; 7 ;) (local $0 i32) (call $check (i32.const 0) @@ -1833,7 +4010,7 @@ raw: ) ) ) - (func $if (; 8 ;) (type $v) + (func $if (; 8 ;) (local $0 i32) (block $block$3$break (call $check @@ -1858,7 +4035,7 @@ raw: ) ) ) - (func $if-plus-code (; 9 ;) (type $v) + (func $if-plus-code (; 9 ;) (local $0 i32) (block $block$3$break (call $check @@ -1896,7 +4073,7 @@ raw: ) ) ) - (func $if-else (; 10 ;) (type $v) + (func $if-else (; 10 ;) (local $0 i32) (block $block$4$break (call $check @@ -1928,7 +4105,7 @@ raw: ) ) ) - (func $loop-tail (; 11 ;) (type $v) + (func $loop-tail (; 11 ;) (local $0 i32) (block $block$3$break (loop $shape$0$continue @@ -1953,7 +4130,7 @@ raw: ) ) ) - (func $nontrivial-loop-plus-phi-to-head (; 12 ;) (type $v) + (func $nontrivial-loop-plus-phi-to-head (; 12 ;) (local $0 i32) (block $block$2$break (call $check @@ -2040,7 +4217,7 @@ raw: ) ) ) - (func $switch (; 13 ;) (type $v) + (func $switch (; 13 ;) (local $0 i32) (call $check (i32.const 0) @@ -2084,7 +4261,7 @@ raw: (br $switch$1$leave) ) ) - (func $duffs-device (; 14 ;) (type $v) + (func $duffs-device (; 14 ;) (local $0 i32) (local $1 i32) (local $2 i64) @@ -2159,7 +4336,7 @@ raw: ) ) ) - (func $return (; 15 ;) (type $i) (result i32) + (func $return (; 15 ;) (result i32) (local $0 i32) (block (call $check @@ -2171,1837 +4348,74 @@ raw: ) ) ) + BinaryenModuleValidate(the_module); + BinaryenModuleOptimize(the_module); + BinaryenModuleValidate(the_module); optimized: + BinaryenModulePrint(the_module); (module ) -module loaded from binary form: -(module - (type $0 (func (param i32 i32) (result i32))) - (func $adder (; 0 ;) (type $0) (param $0 i32) (param $1 i32) (result i32) - (i32.add - (local.get $0) - (local.get $1) - ) - ) -) -module s-expr printed (in memory): -(module - (type $0 (func (param i32 i32) (result i32))) - (func $adder (; 0 ;) (type $0) (param $0 i32) (param $1 i32) (result i32) - (i32.add - (local.get $0) - (local.get $1) - ) - ) -) - -module s-expr printed (in memory, caller-owned): -(module - (type $0 (func (param i32 i32) (result i32))) - (func $adder (; 0 ;) (type $0) (param $0 i32) (param $1 i32) (result i32) - (i32.add - (local.get $0) - (local.get $1) - ) - ) -) - -(module - (type $vi (func (param i32))) - (type $v (func)) - (import "spectest" "print" (func $print-i32 (param i32))) - (start $starter) - (func $starter (; 1 ;) (type $v) - (call $print-i32 - (i32.const 1234) - ) - ) -) -1234 : i32 -(module - (type $v (func)) - (func $func (; 0 ;) (type $v) - (local $0 i32) - (local.set $0 - (i64.const 1234) - ) - ) -) -validation: 0 -// beginning a Binaryen API trace -#include <math.h> -#include <map> -#include "binaryen-c.h" -int main() { - std::map<size_t, BinaryenFunctionTypeRef> functionTypes; - std::map<size_t, BinaryenExpressionRef> expressions; - std::map<size_t, BinaryenFunctionRef> functions; - std::map<size_t, BinaryenGlobalRef> globals; - std::map<size_t, BinaryenEventRef> events; - std::map<size_t, BinaryenExportRef> exports; - std::map<size_t, RelooperBlockRef> relooperBlocks; - BinaryenModuleRef the_module = NULL; - RelooperRef the_relooper = NULL; - the_module = BinaryenModuleCreate(); - expressions[size_t(NULL)] = BinaryenExpressionRef(NULL); - expressions[1] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[2] = BinaryenConst(the_module, BinaryenLiteralInt64(2)); - expressions[3] = BinaryenConst(the_module, BinaryenLiteralFloat32(3.14)); - expressions[4] = BinaryenConst(the_module, BinaryenLiteralFloat64(2.1828)); - expressions[5] = BinaryenConst(the_module, BinaryenLiteralFloat32(NAN)); - expressions[6] = BinaryenConst(the_module, BinaryenLiteralFloat64(NAN)); - { - uint8_t t0[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[7] = BinaryenConst(the_module, BinaryenLiteralVec128(t0)); - } - expressions[8] = BinaryenConst(the_module, BinaryenLiteralInt32(13)); - expressions[9] = BinaryenConst(the_module, BinaryenLiteralFloat64(3.7)); - expressions[10] = BinaryenConst(the_module, BinaryenLiteralInt32(13)); - expressions[11] = BinaryenConst(the_module, BinaryenLiteralInt64(37)); - expressions[12] = BinaryenConst(the_module, BinaryenLiteralFloat32(1.3)); - expressions[13] = BinaryenConst(the_module, BinaryenLiteralFloat64(3.7)); - expressions[14] = BinaryenConst(the_module, BinaryenLiteralInt32(13)); - expressions[15] = BinaryenConst(the_module, BinaryenLiteralInt64(37)); - expressions[16] = BinaryenConst(the_module, BinaryenLiteralFloat32(1.3)); - expressions[17] = BinaryenConst(the_module, BinaryenLiteralFloat64(3.7)); - { - BinaryenType paramTypes[] = { 2, 3, 4, 5 }; - functionTypes[0] = BinaryenAddFunctionType(the_module, "iiIfF", 2, paramTypes, 4); - } - expressions[18] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[19] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - expressions[20] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - expressions[21] = BinaryenConst(the_module, BinaryenLiteralInt32(4)); - expressions[22] = BinaryenConst(the_module, BinaryenLiteralInt32(5)); - expressions[23] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[24] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[25] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[26] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[27] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[28] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - expressions[29] = BinaryenConst(the_module, BinaryenLiteralInt32(5)); - expressions[30] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); - expressions[31] = BinaryenConst(the_module, BinaryenLiteralInt32(11)); - expressions[32] = BinaryenConst(the_module, BinaryenLiteralInt32(110)); - expressions[33] = BinaryenConst(the_module, BinaryenLiteralInt64(111)); - BinaryenAddEvent(the_module, "a-event", 0, 2, 0); - expressions[34] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[34] }; - expressions[35] = BinaryenThrow(the_module, "a-event", operands, 1); - } - expressions[36] = BinaryenPop(the_module, 8); - expressions[37] = BinaryenLocalSet(the_module, 5, expressions[36]); - expressions[38] = BinaryenLocalGet(the_module, 5, 8); - expressions[39] = BinaryenBrOnExn(the_module, "try-block", "a-event", expressions[38]); - expressions[40] = BinaryenRethrow(the_module, expressions[39]); - { - BinaryenExpressionRef children[] = { expressions[40] }; - expressions[41] = BinaryenBlock(the_module, "try-block", children, 1, 2); - } - expressions[42] = BinaryenDrop(the_module, expressions[41]); - { - BinaryenExpressionRef children[] = { expressions[37], expressions[42] }; - expressions[43] = BinaryenBlock(the_module, NULL, children, 2, 0); - } - expressions[44] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[45] = BinaryenUnary(the_module, 0, expressions[44]); - expressions[46] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[47] = BinaryenUnary(the_module, 3, expressions[46]); - expressions[48] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[49] = BinaryenUnary(the_module, 4, expressions[48]); - expressions[50] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[51] = BinaryenUnary(the_module, 6, expressions[50]); - expressions[52] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[53] = BinaryenUnary(the_module, 9, expressions[52]); - expressions[54] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[55] = BinaryenUnary(the_module, 10, expressions[54]); - expressions[56] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[57] = BinaryenUnary(the_module, 13, expressions[56]); - expressions[58] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[59] = BinaryenUnary(the_module, 14, expressions[58]); - expressions[60] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[61] = BinaryenUnary(the_module, 16, expressions[60]); - expressions[62] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[63] = BinaryenUnary(the_module, 19, expressions[62]); - expressions[64] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[65] = BinaryenUnary(the_module, 20, expressions[64]); - expressions[66] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[67] = BinaryenUnary(the_module, 22, expressions[66]); - expressions[68] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[69] = BinaryenUnary(the_module, 23, expressions[68]); - expressions[70] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[71] = BinaryenUnary(the_module, 24, expressions[70]); - expressions[72] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[73] = BinaryenUnary(the_module, 25, expressions[72]); - expressions[74] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[75] = BinaryenUnary(the_module, 26, expressions[74]); - expressions[76] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[77] = BinaryenUnary(the_module, 27, expressions[76]); - expressions[78] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[79] = BinaryenUnary(the_module, 28, expressions[78]); - expressions[80] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[81] = BinaryenUnary(the_module, 29, expressions[80]); - expressions[82] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[83] = BinaryenUnary(the_module, 30, expressions[82]); - expressions[84] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[85] = BinaryenUnary(the_module, 31, expressions[84]); - expressions[86] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[87] = BinaryenUnary(the_module, 32, expressions[86]); - expressions[88] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[89] = BinaryenUnary(the_module, 52, expressions[88]); - expressions[90] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[91] = BinaryenUnary(the_module, 56, expressions[90]); - expressions[92] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[93] = BinaryenUnary(the_module, 53, expressions[92]); - expressions[94] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[95] = BinaryenUnary(the_module, 57, expressions[94]); - expressions[96] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[97] = BinaryenUnary(the_module, 54, expressions[96]); - expressions[98] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[99] = BinaryenUnary(the_module, 58, expressions[98]); - expressions[100] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[101] = BinaryenUnary(the_module, 55, expressions[100]); - expressions[102] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[103] = BinaryenUnary(the_module, 59, expressions[102]); - expressions[104] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[105] = BinaryenUnary(the_module, 33, expressions[104]); - expressions[106] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[107] = BinaryenUnary(the_module, 34, expressions[106]); - expressions[108] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[109] = BinaryenUnary(the_module, 35, expressions[108]); - expressions[110] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[111] = BinaryenUnary(the_module, 36, expressions[110]); - expressions[112] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[113] = BinaryenUnary(the_module, 37, expressions[112]); - expressions[114] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[115] = BinaryenUnary(the_module, 38, expressions[114]); - expressions[116] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[117] = BinaryenUnary(the_module, 39, expressions[116]); - expressions[118] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[119] = BinaryenUnary(the_module, 40, expressions[118]); - expressions[120] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[121] = BinaryenUnary(the_module, 41, expressions[120]); - expressions[122] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[123] = BinaryenUnary(the_module, 42, expressions[122]); - expressions[124] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[125] = BinaryenUnary(the_module, 43, expressions[124]); - expressions[126] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[127] = BinaryenUnary(the_module, 44, expressions[126]); - expressions[128] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[129] = BinaryenUnary(the_module, 45, expressions[128]); - expressions[130] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[131] = BinaryenUnary(the_module, 46, expressions[130]); - expressions[132] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[133] = BinaryenUnary(the_module, 60, expressions[132]); - expressions[134] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[135] = BinaryenUnary(the_module, 61, expressions[134]); - expressions[136] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[137] = BinaryenUnary(the_module, 62, expressions[136]); - expressions[138] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[139] = BinaryenUnary(the_module, 63, expressions[138]); - expressions[140] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[141] = BinaryenUnary(the_module, 64, expressions[140]); - expressions[142] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[143] = BinaryenUnary(the_module, 65, expressions[142]); - { - uint8_t t1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[144] = BinaryenConst(the_module, BinaryenLiteralVec128(t1)); - } - expressions[145] = BinaryenUnary(the_module, 66, expressions[144]); - { - uint8_t t2[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[146] = BinaryenConst(the_module, BinaryenLiteralVec128(t2)); - } - expressions[147] = BinaryenUnary(the_module, 67, expressions[146]); - { - uint8_t t3[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[148] = BinaryenConst(the_module, BinaryenLiteralVec128(t3)); - } - expressions[149] = BinaryenUnary(the_module, 68, expressions[148]); - { - uint8_t t4[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[150] = BinaryenConst(the_module, BinaryenLiteralVec128(t4)); - } - expressions[151] = BinaryenUnary(the_module, 69, expressions[150]); - { - uint8_t t5[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[152] = BinaryenConst(the_module, BinaryenLiteralVec128(t5)); - } - expressions[153] = BinaryenUnary(the_module, 70, expressions[152]); - { - uint8_t t6[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[154] = BinaryenConst(the_module, BinaryenLiteralVec128(t6)); - } - expressions[155] = BinaryenUnary(the_module, 71, expressions[154]); - { - uint8_t t7[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[156] = BinaryenConst(the_module, BinaryenLiteralVec128(t7)); - } - expressions[157] = BinaryenUnary(the_module, 72, expressions[156]); - { - uint8_t t8[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[158] = BinaryenConst(the_module, BinaryenLiteralVec128(t8)); - } - expressions[159] = BinaryenUnary(the_module, 73, expressions[158]); - { - uint8_t t9[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[160] = BinaryenConst(the_module, BinaryenLiteralVec128(t9)); - } - expressions[161] = BinaryenUnary(the_module, 74, expressions[160]); - { - uint8_t t10[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[162] = BinaryenConst(the_module, BinaryenLiteralVec128(t10)); - } - expressions[163] = BinaryenUnary(the_module, 75, expressions[162]); - { - uint8_t t11[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[164] = BinaryenConst(the_module, BinaryenLiteralVec128(t11)); - } - expressions[165] = BinaryenUnary(the_module, 76, expressions[164]); - { - uint8_t t12[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[166] = BinaryenConst(the_module, BinaryenLiteralVec128(t12)); - } - expressions[167] = BinaryenUnary(the_module, 77, expressions[166]); - { - uint8_t t13[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[168] = BinaryenConst(the_module, BinaryenLiteralVec128(t13)); - } - expressions[169] = BinaryenUnary(the_module, 78, expressions[168]); - { - uint8_t t14[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[170] = BinaryenConst(the_module, BinaryenLiteralVec128(t14)); - } - expressions[171] = BinaryenUnary(the_module, 79, expressions[170]); - { - uint8_t t15[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[172] = BinaryenConst(the_module, BinaryenLiteralVec128(t15)); - } - expressions[173] = BinaryenUnary(the_module, 80, expressions[172]); - { - uint8_t t16[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[174] = BinaryenConst(the_module, BinaryenLiteralVec128(t16)); - } - expressions[175] = BinaryenUnary(the_module, 81, expressions[174]); - { - uint8_t t17[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[176] = BinaryenConst(the_module, BinaryenLiteralVec128(t17)); - } - expressions[177] = BinaryenUnary(the_module, 82, expressions[176]); - { - uint8_t t18[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[178] = BinaryenConst(the_module, BinaryenLiteralVec128(t18)); - } - expressions[179] = BinaryenUnary(the_module, 83, expressions[178]); - { - uint8_t t19[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[180] = BinaryenConst(the_module, BinaryenLiteralVec128(t19)); - } - expressions[181] = BinaryenUnary(the_module, 84, expressions[180]); - { - uint8_t t20[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[182] = BinaryenConst(the_module, BinaryenLiteralVec128(t20)); - } - expressions[183] = BinaryenUnary(the_module, 85, expressions[182]); - { - uint8_t t21[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[184] = BinaryenConst(the_module, BinaryenLiteralVec128(t21)); - } - expressions[185] = BinaryenUnary(the_module, 86, expressions[184]); - { - uint8_t t22[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[186] = BinaryenConst(the_module, BinaryenLiteralVec128(t22)); - } - expressions[187] = BinaryenUnary(the_module, 87, expressions[186]); - { - uint8_t t23[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[188] = BinaryenConst(the_module, BinaryenLiteralVec128(t23)); - } - expressions[189] = BinaryenUnary(the_module, 88, expressions[188]); - { - uint8_t t24[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[190] = BinaryenConst(the_module, BinaryenLiteralVec128(t24)); - } - expressions[191] = BinaryenUnary(the_module, 89, expressions[190]); - { - uint8_t t25[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[192] = BinaryenConst(the_module, BinaryenLiteralVec128(t25)); - } - expressions[193] = BinaryenUnary(the_module, 90, expressions[192]); - { - uint8_t t26[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[194] = BinaryenConst(the_module, BinaryenLiteralVec128(t26)); - } - expressions[195] = BinaryenUnary(the_module, 91, expressions[194]); - { - uint8_t t27[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[196] = BinaryenConst(the_module, BinaryenLiteralVec128(t27)); - } - expressions[197] = BinaryenUnary(the_module, 92, expressions[196]); - { - uint8_t t28[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[198] = BinaryenConst(the_module, BinaryenLiteralVec128(t28)); - } - expressions[199] = BinaryenUnary(the_module, 93, expressions[198]); - { - uint8_t t29[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[200] = BinaryenConst(the_module, BinaryenLiteralVec128(t29)); - } - expressions[201] = BinaryenUnary(the_module, 94, expressions[200]); - { - uint8_t t30[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[202] = BinaryenConst(the_module, BinaryenLiteralVec128(t30)); - } - expressions[203] = BinaryenUnary(the_module, 95, expressions[202]); - { - uint8_t t31[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[204] = BinaryenConst(the_module, BinaryenLiteralVec128(t31)); - } - expressions[205] = BinaryenUnary(the_module, 96, expressions[204]); - { - uint8_t t32[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[206] = BinaryenConst(the_module, BinaryenLiteralVec128(t32)); - } - expressions[207] = BinaryenUnary(the_module, 97, expressions[206]); - { - uint8_t t33[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[208] = BinaryenConst(the_module, BinaryenLiteralVec128(t33)); - } - expressions[209] = BinaryenUnary(the_module, 98, expressions[208]); - { - uint8_t t34[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[210] = BinaryenConst(the_module, BinaryenLiteralVec128(t34)); - } - expressions[211] = BinaryenUnary(the_module, 99, expressions[210]); - { - uint8_t t35[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[212] = BinaryenConst(the_module, BinaryenLiteralVec128(t35)); - } - expressions[213] = BinaryenUnary(the_module, 100, expressions[212]); - expressions[214] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[215] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[216] = BinaryenBinary(the_module, 0, expressions[215], expressions[214]); - expressions[217] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); - expressions[218] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[219] = BinaryenBinary(the_module, 64, expressions[218], expressions[217]); - expressions[220] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[221] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[222] = BinaryenBinary(the_module, 3, expressions[221], expressions[220]); - expressions[223] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[224] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[225] = BinaryenBinary(the_module, 29, expressions[224], expressions[223]); - expressions[226] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[227] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[228] = BinaryenBinary(the_module, 30, expressions[227], expressions[226]); - expressions[229] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[230] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[231] = BinaryenBinary(the_module, 6, expressions[230], expressions[229]); - expressions[232] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[233] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[234] = BinaryenBinary(the_module, 7, expressions[233], expressions[232]); - expressions[235] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[236] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[237] = BinaryenBinary(the_module, 33, expressions[236], expressions[235]); - expressions[238] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[239] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[240] = BinaryenBinary(the_module, 9, expressions[239], expressions[238]); - expressions[241] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[242] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[243] = BinaryenBinary(the_module, 35, expressions[242], expressions[241]); - expressions[244] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[245] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[246] = BinaryenBinary(the_module, 36, expressions[245], expressions[244]); - expressions[247] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[248] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[249] = BinaryenBinary(the_module, 12, expressions[248], expressions[247]); - expressions[250] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[251] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[252] = BinaryenBinary(the_module, 13, expressions[251], expressions[250]); - expressions[253] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[254] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[255] = BinaryenBinary(the_module, 39, expressions[254], expressions[253]); - expressions[256] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); - expressions[257] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[258] = BinaryenBinary(the_module, 53, expressions[257], expressions[256]); - expressions[259] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); - expressions[260] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[261] = BinaryenBinary(the_module, 67, expressions[260], expressions[259]); - expressions[262] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); - expressions[263] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[264] = BinaryenBinary(the_module, 55, expressions[263], expressions[262]); - expressions[265] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); - expressions[266] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[267] = BinaryenBinary(the_module, 69, expressions[266], expressions[265]); - expressions[268] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[269] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[270] = BinaryenBinary(the_module, 15, expressions[269], expressions[268]); - expressions[271] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); - expressions[272] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[273] = BinaryenBinary(the_module, 58, expressions[272], expressions[271]); - expressions[274] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[275] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[276] = BinaryenBinary(the_module, 17, expressions[275], expressions[274]); - expressions[277] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[278] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[279] = BinaryenBinary(the_module, 43, expressions[278], expressions[277]); - expressions[280] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[281] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[282] = BinaryenBinary(the_module, 44, expressions[281], expressions[280]); - expressions[283] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[284] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[285] = BinaryenBinary(the_module, 20, expressions[284], expressions[283]); - expressions[286] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[287] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[288] = BinaryenBinary(the_module, 46, expressions[287], expressions[286]); - expressions[289] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[290] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[291] = BinaryenBinary(the_module, 22, expressions[290], expressions[289]); - expressions[292] = BinaryenConst(the_module, BinaryenLiteralInt32(-11)); - expressions[293] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - expressions[294] = BinaryenBinary(the_module, 23, expressions[293], expressions[292]); - expressions[295] = BinaryenConst(the_module, BinaryenLiteralInt64(-23)); - expressions[296] = BinaryenConst(the_module, BinaryenLiteralInt64(-22)); - expressions[297] = BinaryenBinary(the_module, 49, expressions[296], expressions[295]); - expressions[298] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); - expressions[299] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[300] = BinaryenBinary(the_module, 59, expressions[299], expressions[298]); - expressions[301] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); - expressions[302] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[303] = BinaryenBinary(the_module, 73, expressions[302], expressions[301]); - expressions[304] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9007.33)); - expressions[305] = BinaryenConst(the_module, BinaryenLiteralFloat64(-9005.84)); - expressions[306] = BinaryenBinary(the_module, 74, expressions[305], expressions[304]); - expressions[307] = BinaryenConst(the_module, BinaryenLiteralFloat32(-62.5)); - expressions[308] = BinaryenConst(the_module, BinaryenLiteralFloat32(-33.612)); - expressions[309] = BinaryenBinary(the_module, 62, expressions[308], expressions[307]); - { - uint8_t t36[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[310] = BinaryenConst(the_module, BinaryenLiteralVec128(t36)); - } - { - uint8_t t37[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[311] = BinaryenConst(the_module, BinaryenLiteralVec128(t37)); - } - expressions[312] = BinaryenBinary(the_module, 76, expressions[311], expressions[310]); - { - uint8_t t38[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[313] = BinaryenConst(the_module, BinaryenLiteralVec128(t38)); - } - { - uint8_t t39[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[314] = BinaryenConst(the_module, BinaryenLiteralVec128(t39)); - } - expressions[315] = BinaryenBinary(the_module, 77, expressions[314], expressions[313]); - { - uint8_t t40[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[316] = BinaryenConst(the_module, BinaryenLiteralVec128(t40)); - } - { - uint8_t t41[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[317] = BinaryenConst(the_module, BinaryenLiteralVec128(t41)); - } - expressions[318] = BinaryenBinary(the_module, 78, expressions[317], expressions[316]); - { - uint8_t t42[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[319] = BinaryenConst(the_module, BinaryenLiteralVec128(t42)); - } - { - uint8_t t43[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[320] = BinaryenConst(the_module, BinaryenLiteralVec128(t43)); - } - expressions[321] = BinaryenBinary(the_module, 79, expressions[320], expressions[319]); - { - uint8_t t44[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[322] = BinaryenConst(the_module, BinaryenLiteralVec128(t44)); - } - { - uint8_t t45[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[323] = BinaryenConst(the_module, BinaryenLiteralVec128(t45)); - } - expressions[324] = BinaryenBinary(the_module, 80, expressions[323], expressions[322]); - { - uint8_t t46[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[325] = BinaryenConst(the_module, BinaryenLiteralVec128(t46)); - } - { - uint8_t t47[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[326] = BinaryenConst(the_module, BinaryenLiteralVec128(t47)); - } - expressions[327] = BinaryenBinary(the_module, 81, expressions[326], expressions[325]); - { - uint8_t t48[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[328] = BinaryenConst(the_module, BinaryenLiteralVec128(t48)); - } - { - uint8_t t49[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[329] = BinaryenConst(the_module, BinaryenLiteralVec128(t49)); - } - expressions[330] = BinaryenBinary(the_module, 82, expressions[329], expressions[328]); - { - uint8_t t50[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[331] = BinaryenConst(the_module, BinaryenLiteralVec128(t50)); - } - { - uint8_t t51[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[332] = BinaryenConst(the_module, BinaryenLiteralVec128(t51)); - } - expressions[333] = BinaryenBinary(the_module, 83, expressions[332], expressions[331]); - { - uint8_t t52[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[334] = BinaryenConst(the_module, BinaryenLiteralVec128(t52)); - } - { - uint8_t t53[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[335] = BinaryenConst(the_module, BinaryenLiteralVec128(t53)); - } - expressions[336] = BinaryenBinary(the_module, 84, expressions[335], expressions[334]); - { - uint8_t t54[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[337] = BinaryenConst(the_module, BinaryenLiteralVec128(t54)); - } - { - uint8_t t55[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[338] = BinaryenConst(the_module, BinaryenLiteralVec128(t55)); - } - expressions[339] = BinaryenBinary(the_module, 85, expressions[338], expressions[337]); - { - uint8_t t56[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[340] = BinaryenConst(the_module, BinaryenLiteralVec128(t56)); - } - { - uint8_t t57[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[341] = BinaryenConst(the_module, BinaryenLiteralVec128(t57)); - } - expressions[342] = BinaryenBinary(the_module, 86, expressions[341], expressions[340]); - { - uint8_t t58[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[343] = BinaryenConst(the_module, BinaryenLiteralVec128(t58)); - } - { - uint8_t t59[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[344] = BinaryenConst(the_module, BinaryenLiteralVec128(t59)); - } - expressions[345] = BinaryenBinary(the_module, 87, expressions[344], expressions[343]); - { - uint8_t t60[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[346] = BinaryenConst(the_module, BinaryenLiteralVec128(t60)); - } - { - uint8_t t61[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[347] = BinaryenConst(the_module, BinaryenLiteralVec128(t61)); - } - expressions[348] = BinaryenBinary(the_module, 88, expressions[347], expressions[346]); - { - uint8_t t62[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[349] = BinaryenConst(the_module, BinaryenLiteralVec128(t62)); - } - { - uint8_t t63[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[350] = BinaryenConst(the_module, BinaryenLiteralVec128(t63)); - } - expressions[351] = BinaryenBinary(the_module, 89, expressions[350], expressions[349]); - { - uint8_t t64[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[352] = BinaryenConst(the_module, BinaryenLiteralVec128(t64)); - } - { - uint8_t t65[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[353] = BinaryenConst(the_module, BinaryenLiteralVec128(t65)); - } - expressions[354] = BinaryenBinary(the_module, 90, expressions[353], expressions[352]); - { - uint8_t t66[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[355] = BinaryenConst(the_module, BinaryenLiteralVec128(t66)); - } - { - uint8_t t67[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[356] = BinaryenConst(the_module, BinaryenLiteralVec128(t67)); - } - expressions[357] = BinaryenBinary(the_module, 91, expressions[356], expressions[355]); - { - uint8_t t68[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[358] = BinaryenConst(the_module, BinaryenLiteralVec128(t68)); - } - { - uint8_t t69[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[359] = BinaryenConst(the_module, BinaryenLiteralVec128(t69)); - } - expressions[360] = BinaryenBinary(the_module, 92, expressions[359], expressions[358]); - { - uint8_t t70[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[361] = BinaryenConst(the_module, BinaryenLiteralVec128(t70)); - } - { - uint8_t t71[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[362] = BinaryenConst(the_module, BinaryenLiteralVec128(t71)); - } - expressions[363] = BinaryenBinary(the_module, 93, expressions[362], expressions[361]); - { - uint8_t t72[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[364] = BinaryenConst(the_module, BinaryenLiteralVec128(t72)); - } - { - uint8_t t73[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[365] = BinaryenConst(the_module, BinaryenLiteralVec128(t73)); - } - expressions[366] = BinaryenBinary(the_module, 94, expressions[365], expressions[364]); - { - uint8_t t74[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[367] = BinaryenConst(the_module, BinaryenLiteralVec128(t74)); - } - { - uint8_t t75[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[368] = BinaryenConst(the_module, BinaryenLiteralVec128(t75)); - } - expressions[369] = BinaryenBinary(the_module, 95, expressions[368], expressions[367]); - { - uint8_t t76[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[370] = BinaryenConst(the_module, BinaryenLiteralVec128(t76)); - } - { - uint8_t t77[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[371] = BinaryenConst(the_module, BinaryenLiteralVec128(t77)); - } - expressions[372] = BinaryenBinary(the_module, 96, expressions[371], expressions[370]); - { - uint8_t t78[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[373] = BinaryenConst(the_module, BinaryenLiteralVec128(t78)); - } - { - uint8_t t79[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[374] = BinaryenConst(the_module, BinaryenLiteralVec128(t79)); - } - expressions[375] = BinaryenBinary(the_module, 97, expressions[374], expressions[373]); - { - uint8_t t80[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[376] = BinaryenConst(the_module, BinaryenLiteralVec128(t80)); - } - { - uint8_t t81[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[377] = BinaryenConst(the_module, BinaryenLiteralVec128(t81)); - } - expressions[378] = BinaryenBinary(the_module, 98, expressions[377], expressions[376]); - { - uint8_t t82[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[379] = BinaryenConst(the_module, BinaryenLiteralVec128(t82)); - } - { - uint8_t t83[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[380] = BinaryenConst(the_module, BinaryenLiteralVec128(t83)); - } - expressions[381] = BinaryenBinary(the_module, 99, expressions[380], expressions[379]); - { - uint8_t t84[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[382] = BinaryenConst(the_module, BinaryenLiteralVec128(t84)); - } - { - uint8_t t85[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[383] = BinaryenConst(the_module, BinaryenLiteralVec128(t85)); - } - expressions[384] = BinaryenBinary(the_module, 100, expressions[383], expressions[382]); - { - uint8_t t86[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[385] = BinaryenConst(the_module, BinaryenLiteralVec128(t86)); - } - { - uint8_t t87[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[386] = BinaryenConst(the_module, BinaryenLiteralVec128(t87)); - } - expressions[387] = BinaryenBinary(the_module, 101, expressions[386], expressions[385]); - { - uint8_t t88[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[388] = BinaryenConst(the_module, BinaryenLiteralVec128(t88)); - } - { - uint8_t t89[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[389] = BinaryenConst(the_module, BinaryenLiteralVec128(t89)); - } - expressions[390] = BinaryenBinary(the_module, 102, expressions[389], expressions[388]); - { - uint8_t t90[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[391] = BinaryenConst(the_module, BinaryenLiteralVec128(t90)); - } - { - uint8_t t91[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[392] = BinaryenConst(the_module, BinaryenLiteralVec128(t91)); - } - expressions[393] = BinaryenBinary(the_module, 103, expressions[392], expressions[391]); - { - uint8_t t92[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[394] = BinaryenConst(the_module, BinaryenLiteralVec128(t92)); - } - { - uint8_t t93[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[395] = BinaryenConst(the_module, BinaryenLiteralVec128(t93)); - } - expressions[396] = BinaryenBinary(the_module, 104, expressions[395], expressions[394]); - { - uint8_t t94[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[397] = BinaryenConst(the_module, BinaryenLiteralVec128(t94)); - } - { - uint8_t t95[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[398] = BinaryenConst(the_module, BinaryenLiteralVec128(t95)); - } - expressions[399] = BinaryenBinary(the_module, 105, expressions[398], expressions[397]); - { - uint8_t t96[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[400] = BinaryenConst(the_module, BinaryenLiteralVec128(t96)); - } - { - uint8_t t97[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[401] = BinaryenConst(the_module, BinaryenLiteralVec128(t97)); - } - expressions[402] = BinaryenBinary(the_module, 106, expressions[401], expressions[400]); - { - uint8_t t98[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[403] = BinaryenConst(the_module, BinaryenLiteralVec128(t98)); - } - { - uint8_t t99[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[404] = BinaryenConst(the_module, BinaryenLiteralVec128(t99)); - } - expressions[405] = BinaryenBinary(the_module, 107, expressions[404], expressions[403]); - { - uint8_t t100[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[406] = BinaryenConst(the_module, BinaryenLiteralVec128(t100)); - } - { - uint8_t t101[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[407] = BinaryenConst(the_module, BinaryenLiteralVec128(t101)); - } - expressions[408] = BinaryenBinary(the_module, 108, expressions[407], expressions[406]); - { - uint8_t t102[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[409] = BinaryenConst(the_module, BinaryenLiteralVec128(t102)); - } - { - uint8_t t103[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[410] = BinaryenConst(the_module, BinaryenLiteralVec128(t103)); - } - expressions[411] = BinaryenBinary(the_module, 109, expressions[410], expressions[409]); - { - uint8_t t104[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[412] = BinaryenConst(the_module, BinaryenLiteralVec128(t104)); - } - { - uint8_t t105[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[413] = BinaryenConst(the_module, BinaryenLiteralVec128(t105)); - } - expressions[414] = BinaryenBinary(the_module, 110, expressions[413], expressions[412]); - { - uint8_t t106[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[415] = BinaryenConst(the_module, BinaryenLiteralVec128(t106)); - } - { - uint8_t t107[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[416] = BinaryenConst(the_module, BinaryenLiteralVec128(t107)); - } - expressions[417] = BinaryenBinary(the_module, 111, expressions[416], expressions[415]); - { - uint8_t t108[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[418] = BinaryenConst(the_module, BinaryenLiteralVec128(t108)); - } - { - uint8_t t109[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[419] = BinaryenConst(the_module, BinaryenLiteralVec128(t109)); - } - expressions[420] = BinaryenBinary(the_module, 112, expressions[419], expressions[418]); - { - uint8_t t110[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[421] = BinaryenConst(the_module, BinaryenLiteralVec128(t110)); - } - { - uint8_t t111[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[422] = BinaryenConst(the_module, BinaryenLiteralVec128(t111)); - } - expressions[423] = BinaryenBinary(the_module, 113, expressions[422], expressions[421]); - { - uint8_t t112[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[424] = BinaryenConst(the_module, BinaryenLiteralVec128(t112)); - } - { - uint8_t t113[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[425] = BinaryenConst(the_module, BinaryenLiteralVec128(t113)); - } - expressions[426] = BinaryenBinary(the_module, 114, expressions[425], expressions[424]); - { - uint8_t t114[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[427] = BinaryenConst(the_module, BinaryenLiteralVec128(t114)); - } - { - uint8_t t115[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[428] = BinaryenConst(the_module, BinaryenLiteralVec128(t115)); - } - expressions[429] = BinaryenBinary(the_module, 115, expressions[428], expressions[427]); - { - uint8_t t116[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[430] = BinaryenConst(the_module, BinaryenLiteralVec128(t116)); - } - { - uint8_t t117[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[431] = BinaryenConst(the_module, BinaryenLiteralVec128(t117)); - } - expressions[432] = BinaryenBinary(the_module, 116, expressions[431], expressions[430]); - { - uint8_t t118[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[433] = BinaryenConst(the_module, BinaryenLiteralVec128(t118)); - } - { - uint8_t t119[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[434] = BinaryenConst(the_module, BinaryenLiteralVec128(t119)); - } - expressions[435] = BinaryenBinary(the_module, 117, expressions[434], expressions[433]); - { - uint8_t t120[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[436] = BinaryenConst(the_module, BinaryenLiteralVec128(t120)); - } - { - uint8_t t121[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[437] = BinaryenConst(the_module, BinaryenLiteralVec128(t121)); - } - expressions[438] = BinaryenBinary(the_module, 118, expressions[437], expressions[436]); - { - uint8_t t122[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[439] = BinaryenConst(the_module, BinaryenLiteralVec128(t122)); - } - { - uint8_t t123[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[440] = BinaryenConst(the_module, BinaryenLiteralVec128(t123)); - } - expressions[441] = BinaryenBinary(the_module, 119, expressions[440], expressions[439]); - { - uint8_t t124[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[442] = BinaryenConst(the_module, BinaryenLiteralVec128(t124)); - } - { - uint8_t t125[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[443] = BinaryenConst(the_module, BinaryenLiteralVec128(t125)); - } - expressions[444] = BinaryenBinary(the_module, 120, expressions[443], expressions[442]); - { - uint8_t t126[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[445] = BinaryenConst(the_module, BinaryenLiteralVec128(t126)); - } - { - uint8_t t127[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[446] = BinaryenConst(the_module, BinaryenLiteralVec128(t127)); - } - expressions[447] = BinaryenBinary(the_module, 121, expressions[446], expressions[445]); - { - uint8_t t128[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[448] = BinaryenConst(the_module, BinaryenLiteralVec128(t128)); - } - { - uint8_t t129[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[449] = BinaryenConst(the_module, BinaryenLiteralVec128(t129)); - } - expressions[450] = BinaryenBinary(the_module, 122, expressions[449], expressions[448]); - { - uint8_t t130[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[451] = BinaryenConst(the_module, BinaryenLiteralVec128(t130)); - } - { - uint8_t t131[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[452] = BinaryenConst(the_module, BinaryenLiteralVec128(t131)); - } - expressions[453] = BinaryenBinary(the_module, 123, expressions[452], expressions[451]); - { - uint8_t t132[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[454] = BinaryenConst(the_module, BinaryenLiteralVec128(t132)); - } - { - uint8_t t133[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[455] = BinaryenConst(the_module, BinaryenLiteralVec128(t133)); - } - expressions[456] = BinaryenBinary(the_module, 124, expressions[455], expressions[454]); - { - uint8_t t134[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[457] = BinaryenConst(the_module, BinaryenLiteralVec128(t134)); - } - { - uint8_t t135[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[458] = BinaryenConst(the_module, BinaryenLiteralVec128(t135)); - } - expressions[459] = BinaryenBinary(the_module, 125, expressions[458], expressions[457]); - { - uint8_t t136[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[460] = BinaryenConst(the_module, BinaryenLiteralVec128(t136)); - } - { - uint8_t t137[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[461] = BinaryenConst(the_module, BinaryenLiteralVec128(t137)); - } - expressions[462] = BinaryenBinary(the_module, 126, expressions[461], expressions[460]); - { - uint8_t t138[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[463] = BinaryenConst(the_module, BinaryenLiteralVec128(t138)); - } - { - uint8_t t139[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[464] = BinaryenConst(the_module, BinaryenLiteralVec128(t139)); - } - expressions[465] = BinaryenBinary(the_module, 127, expressions[464], expressions[463]); - { - uint8_t t140[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[466] = BinaryenConst(the_module, BinaryenLiteralVec128(t140)); - } - { - uint8_t t141[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[467] = BinaryenConst(the_module, BinaryenLiteralVec128(t141)); - } - expressions[468] = BinaryenBinary(the_module, 128, expressions[467], expressions[466]); - { - uint8_t t142[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[469] = BinaryenConst(the_module, BinaryenLiteralVec128(t142)); - } - { - uint8_t t143[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[470] = BinaryenConst(the_module, BinaryenLiteralVec128(t143)); - } - expressions[471] = BinaryenBinary(the_module, 133, expressions[470], expressions[469]); - { - uint8_t t144[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[472] = BinaryenConst(the_module, BinaryenLiteralVec128(t144)); - } - { - uint8_t t145[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[473] = BinaryenConst(the_module, BinaryenLiteralVec128(t145)); - } - expressions[474] = BinaryenBinary(the_module, 134, expressions[473], expressions[472]); - { - uint8_t t146[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[475] = BinaryenConst(the_module, BinaryenLiteralVec128(t146)); - } - { - uint8_t t147[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[476] = BinaryenConst(the_module, BinaryenLiteralVec128(t147)); - } - expressions[477] = BinaryenBinary(the_module, 135, expressions[476], expressions[475]); - { - uint8_t t148[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[478] = BinaryenConst(the_module, BinaryenLiteralVec128(t148)); - } - { - uint8_t t149[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[479] = BinaryenConst(the_module, BinaryenLiteralVec128(t149)); - } - expressions[480] = BinaryenBinary(the_module, 136, expressions[479], expressions[478]); - { - uint8_t t150[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[481] = BinaryenConst(the_module, BinaryenLiteralVec128(t150)); - } - { - uint8_t t151[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[482] = BinaryenConst(the_module, BinaryenLiteralVec128(t151)); - } - expressions[483] = BinaryenBinary(the_module, 137, expressions[482], expressions[481]); - { - uint8_t t152[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[484] = BinaryenConst(the_module, BinaryenLiteralVec128(t152)); - } - { - uint8_t t153[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[485] = BinaryenConst(the_module, BinaryenLiteralVec128(t153)); - } - expressions[486] = BinaryenBinary(the_module, 138, expressions[485], expressions[484]); - { - uint8_t t154[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[487] = BinaryenConst(the_module, BinaryenLiteralVec128(t154)); - } - { - uint8_t t155[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[488] = BinaryenConst(the_module, BinaryenLiteralVec128(t155)); - } - expressions[489] = BinaryenBinary(the_module, 139, expressions[488], expressions[487]); - { - uint8_t t156[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[490] = BinaryenConst(the_module, BinaryenLiteralVec128(t156)); - } - { - uint8_t t157[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[491] = BinaryenConst(the_module, BinaryenLiteralVec128(t157)); - } - expressions[492] = BinaryenBinary(the_module, 140, expressions[491], expressions[490]); - { - uint8_t t158[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[493] = BinaryenConst(the_module, BinaryenLiteralVec128(t158)); - } - { - uint8_t t159[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[494] = BinaryenConst(the_module, BinaryenLiteralVec128(t159)); - } - expressions[495] = BinaryenBinary(the_module, 141, expressions[494], expressions[493]); - { - uint8_t t160[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[496] = BinaryenConst(the_module, BinaryenLiteralVec128(t160)); - } - { - uint8_t t161[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[497] = BinaryenConst(the_module, BinaryenLiteralVec128(t161)); - } - expressions[498] = BinaryenBinary(the_module, 142, expressions[497], expressions[496]); - { - uint8_t t162[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[499] = BinaryenConst(the_module, BinaryenLiteralVec128(t162)); - } - { - uint8_t t163[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[500] = BinaryenConst(the_module, BinaryenLiteralVec128(t163)); - } - expressions[501] = BinaryenBinary(the_module, 143, expressions[500], expressions[499]); - { - uint8_t t164[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[502] = BinaryenConst(the_module, BinaryenLiteralVec128(t164)); - } - { - uint8_t t165[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[503] = BinaryenConst(the_module, BinaryenLiteralVec128(t165)); - } - expressions[504] = BinaryenBinary(the_module, 144, expressions[503], expressions[502]); - { - uint8_t t166[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[505] = BinaryenConst(the_module, BinaryenLiteralVec128(t166)); - } - { - uint8_t t167[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[506] = BinaryenConst(the_module, BinaryenLiteralVec128(t167)); - } - expressions[507] = BinaryenBinary(the_module, 145, expressions[506], expressions[505]); - { - uint8_t t168[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[508] = BinaryenConst(the_module, BinaryenLiteralVec128(t168)); - } - { - uint8_t t169[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[509] = BinaryenConst(the_module, BinaryenLiteralVec128(t169)); - } - expressions[510] = BinaryenBinary(the_module, 146, expressions[509], expressions[508]); - { - uint8_t t170[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[511] = BinaryenConst(the_module, BinaryenLiteralVec128(t170)); - } - { - uint8_t t171[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[512] = BinaryenConst(the_module, BinaryenLiteralVec128(t171)); - } - expressions[513] = BinaryenBinary(the_module, 129, expressions[512], expressions[511]); - { - uint8_t t172[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[514] = BinaryenConst(the_module, BinaryenLiteralVec128(t172)); - } - { - uint8_t t173[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[515] = BinaryenConst(the_module, BinaryenLiteralVec128(t173)); - } - expressions[516] = BinaryenBinary(the_module, 130, expressions[515], expressions[514]); - { - uint8_t t174[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[517] = BinaryenConst(the_module, BinaryenLiteralVec128(t174)); - } - { - uint8_t t175[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[518] = BinaryenConst(the_module, BinaryenLiteralVec128(t175)); - } - expressions[519] = BinaryenBinary(the_module, 131, expressions[518], expressions[517]); - { - uint8_t t176[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[520] = BinaryenConst(the_module, BinaryenLiteralVec128(t176)); - } - { - uint8_t t177[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[521] = BinaryenConst(the_module, BinaryenLiteralVec128(t177)); - } - expressions[522] = BinaryenBinary(the_module, 132, expressions[521], expressions[520]); - { - uint8_t t178[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[523] = BinaryenConst(the_module, BinaryenLiteralVec128(t178)); - } - { - uint8_t t179[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[524] = BinaryenConst(the_module, BinaryenLiteralVec128(t179)); - } - expressions[525] = BinaryenBinary(the_module, 152, expressions[524], expressions[523]); - { - uint8_t t180[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[526] = BinaryenConst(the_module, BinaryenLiteralVec128(t180)); - } - { - uint8_t t181[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[527] = BinaryenConst(the_module, BinaryenLiteralVec128(t181)); - } - expressions[528] = BinaryenBinary(the_module, 153, expressions[527], expressions[526]); - { - uint8_t t182[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[529] = BinaryenConst(the_module, BinaryenLiteralVec128(t182)); - } - { - uint8_t t183[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[530] = BinaryenConst(the_module, BinaryenLiteralVec128(t183)); - } - expressions[531] = BinaryenBinary(the_module, 154, expressions[530], expressions[529]); - { - uint8_t t184[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[532] = BinaryenConst(the_module, BinaryenLiteralVec128(t184)); - } - { - uint8_t t185[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[533] = BinaryenConst(the_module, BinaryenLiteralVec128(t185)); - } - expressions[534] = BinaryenBinary(the_module, 155, expressions[533], expressions[532]); - { - uint8_t t186[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[535] = BinaryenConst(the_module, BinaryenLiteralVec128(t186)); - } - { - uint8_t t187[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[536] = BinaryenConst(the_module, BinaryenLiteralVec128(t187)); - } - expressions[537] = BinaryenBinary(the_module, 156, expressions[536], expressions[535]); - { - uint8_t t188[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[538] = BinaryenConst(the_module, BinaryenLiteralVec128(t188)); - } - { - uint8_t t189[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[539] = BinaryenConst(the_module, BinaryenLiteralVec128(t189)); - } - expressions[540] = BinaryenBinary(the_module, 147, expressions[539], expressions[538]); - { - uint8_t t190[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[541] = BinaryenConst(the_module, BinaryenLiteralVec128(t190)); - } - { - uint8_t t191[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[542] = BinaryenConst(the_module, BinaryenLiteralVec128(t191)); - } - expressions[543] = BinaryenBinary(the_module, 148, expressions[542], expressions[541]); - { - uint8_t t192[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[544] = BinaryenConst(the_module, BinaryenLiteralVec128(t192)); - } - { - uint8_t t193[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[545] = BinaryenConst(the_module, BinaryenLiteralVec128(t193)); - } - expressions[546] = BinaryenBinary(the_module, 149, expressions[545], expressions[544]); - { - uint8_t t194[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[547] = BinaryenConst(the_module, BinaryenLiteralVec128(t194)); - } - { - uint8_t t195[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[548] = BinaryenConst(the_module, BinaryenLiteralVec128(t195)); - } - expressions[549] = BinaryenBinary(the_module, 150, expressions[548], expressions[547]); - { - uint8_t t196[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[550] = BinaryenConst(the_module, BinaryenLiteralVec128(t196)); - } - { - uint8_t t197[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[551] = BinaryenConst(the_module, BinaryenLiteralVec128(t197)); - } - expressions[552] = BinaryenBinary(the_module, 151, expressions[551], expressions[550]); - { - uint8_t t198[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[553] = BinaryenConst(the_module, BinaryenLiteralVec128(t198)); - } - { - uint8_t t199[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[554] = BinaryenConst(the_module, BinaryenLiteralVec128(t199)); - } - expressions[555] = BinaryenBinary(the_module, 157, expressions[554], expressions[553]); - { - uint8_t t200[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[556] = BinaryenConst(the_module, BinaryenLiteralVec128(t200)); - } - { - uint8_t t201[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[557] = BinaryenConst(the_module, BinaryenLiteralVec128(t201)); - } - expressions[558] = BinaryenBinary(the_module, 158, expressions[557], expressions[556]); - { - uint8_t t202[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[559] = BinaryenConst(the_module, BinaryenLiteralVec128(t202)); - } - { - uint8_t t203[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[560] = BinaryenConst(the_module, BinaryenLiteralVec128(t203)); - } - expressions[561] = BinaryenBinary(the_module, 159, expressions[560], expressions[559]); - { - uint8_t t204[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[562] = BinaryenConst(the_module, BinaryenLiteralVec128(t204)); - } - { - uint8_t t205[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[563] = BinaryenConst(the_module, BinaryenLiteralVec128(t205)); - } - expressions[564] = BinaryenBinary(the_module, 160, expressions[563], expressions[562]); - { - uint8_t t206[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[565] = BinaryenConst(the_module, BinaryenLiteralVec128(t206)); - } - { - uint8_t t207[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[566] = BinaryenConst(the_module, BinaryenLiteralVec128(t207)); - } - expressions[567] = BinaryenBinary(the_module, 161, expressions[566], expressions[565]); - { - uint8_t t208[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[568] = BinaryenConst(the_module, BinaryenLiteralVec128(t208)); - } - { - uint8_t t209[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[569] = BinaryenConst(the_module, BinaryenLiteralVec128(t209)); - } - expressions[570] = BinaryenBinary(the_module, 162, expressions[569], expressions[568]); - { - uint8_t t210[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[571] = BinaryenConst(the_module, BinaryenLiteralVec128(t210)); - } - { - uint8_t t211[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[572] = BinaryenConst(the_module, BinaryenLiteralVec128(t211)); - } - expressions[573] = BinaryenBinary(the_module, 163, expressions[572], expressions[571]); - { - uint8_t t212[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[574] = BinaryenConst(the_module, BinaryenLiteralVec128(t212)); - } - { - uint8_t t213[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[575] = BinaryenConst(the_module, BinaryenLiteralVec128(t213)); - } - expressions[576] = BinaryenBinary(the_module, 164, expressions[575], expressions[574]); - { - uint8_t t214[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[577] = BinaryenConst(the_module, BinaryenLiteralVec128(t214)); - } - { - uint8_t t215[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[578] = BinaryenConst(the_module, BinaryenLiteralVec128(t215)); - } - expressions[579] = BinaryenBinary(the_module, 165, expressions[578], expressions[577]); - { - uint8_t t216[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[580] = BinaryenConst(the_module, BinaryenLiteralVec128(t216)); - } - { - uint8_t t217[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[581] = BinaryenConst(the_module, BinaryenLiteralVec128(t217)); - } - expressions[582] = BinaryenBinary(the_module, 166, expressions[581], expressions[580]); - { - uint8_t t218[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[583] = BinaryenConst(the_module, BinaryenLiteralVec128(t218)); - } - { - uint8_t t219[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[584] = BinaryenConst(the_module, BinaryenLiteralVec128(t219)); - } - expressions[585] = BinaryenBinary(the_module, 167, expressions[584], expressions[583]); - { - uint8_t t220[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[586] = BinaryenConst(the_module, BinaryenLiteralVec128(t220)); - } - { - uint8_t t221[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[587] = BinaryenConst(the_module, BinaryenLiteralVec128(t221)); - } - expressions[588] = BinaryenBinary(the_module, 168, expressions[587], expressions[586]); - { - uint8_t t222[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[589] = BinaryenConst(the_module, BinaryenLiteralVec128(t222)); - } - { - uint8_t t223[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[590] = BinaryenConst(the_module, BinaryenLiteralVec128(t223)); - } - expressions[591] = BinaryenBinary(the_module, 169, expressions[590], expressions[589]); - { - uint8_t t224[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[592] = BinaryenConst(the_module, BinaryenLiteralVec128(t224)); - } - { - uint8_t t225[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[593] = BinaryenConst(the_module, BinaryenLiteralVec128(t225)); - } - expressions[594] = BinaryenBinary(the_module, 170, expressions[593], expressions[592]); - { - uint8_t t226[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[595] = BinaryenConst(the_module, BinaryenLiteralVec128(t226)); - } - expressions[596] = BinaryenSIMDExtract(the_module, 0, expressions[595], 0); - { - uint8_t t227[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[597] = BinaryenConst(the_module, BinaryenLiteralVec128(t227)); - } - expressions[598] = BinaryenSIMDExtract(the_module, 1, expressions[597], 0); - { - uint8_t t228[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[599] = BinaryenConst(the_module, BinaryenLiteralVec128(t228)); - } - expressions[600] = BinaryenSIMDExtract(the_module, 2, expressions[599], 0); - { - uint8_t t229[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[601] = BinaryenConst(the_module, BinaryenLiteralVec128(t229)); - } - expressions[602] = BinaryenSIMDExtract(the_module, 3, expressions[601], 0); - { - uint8_t t230[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[603] = BinaryenConst(the_module, BinaryenLiteralVec128(t230)); - } - expressions[604] = BinaryenSIMDExtract(the_module, 4, expressions[603], 0); - { - uint8_t t231[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[605] = BinaryenConst(the_module, BinaryenLiteralVec128(t231)); - } - expressions[606] = BinaryenSIMDExtract(the_module, 5, expressions[605], 0); - { - uint8_t t232[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[607] = BinaryenConst(the_module, BinaryenLiteralVec128(t232)); - } - expressions[608] = BinaryenSIMDExtract(the_module, 6, expressions[607], 0); - { - uint8_t t233[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[609] = BinaryenConst(the_module, BinaryenLiteralVec128(t233)); - } - expressions[610] = BinaryenSIMDExtract(the_module, 7, expressions[609], 0); - expressions[611] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - { - uint8_t t234[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[612] = BinaryenConst(the_module, BinaryenLiteralVec128(t234)); - } - expressions[613] = BinaryenSIMDReplace(the_module, 0, expressions[612], 0, expressions[611]); - expressions[614] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - { - uint8_t t235[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[615] = BinaryenConst(the_module, BinaryenLiteralVec128(t235)); - } - expressions[616] = BinaryenSIMDReplace(the_module, 1, expressions[615], 0, expressions[614]); - expressions[617] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - { - uint8_t t236[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[618] = BinaryenConst(the_module, BinaryenLiteralVec128(t236)); - } - expressions[619] = BinaryenSIMDReplace(the_module, 2, expressions[618], 0, expressions[617]); - expressions[620] = BinaryenConst(the_module, BinaryenLiteralInt64(42)); - { - uint8_t t237[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[621] = BinaryenConst(the_module, BinaryenLiteralVec128(t237)); - } - expressions[622] = BinaryenSIMDReplace(the_module, 3, expressions[621], 0, expressions[620]); - expressions[623] = BinaryenConst(the_module, BinaryenLiteralFloat32(42)); - { - uint8_t t238[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[624] = BinaryenConst(the_module, BinaryenLiteralVec128(t238)); - } - expressions[625] = BinaryenSIMDReplace(the_module, 4, expressions[624], 0, expressions[623]); - expressions[626] = BinaryenConst(the_module, BinaryenLiteralFloat64(42)); - { - uint8_t t239[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[627] = BinaryenConst(the_module, BinaryenLiteralVec128(t239)); - } - expressions[628] = BinaryenSIMDReplace(the_module, 5, expressions[627], 0, expressions[626]); - { - uint8_t t240[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[629] = BinaryenConst(the_module, BinaryenLiteralVec128(t240)); - } - expressions[630] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[631] = BinaryenSIMDShift(the_module, 0, expressions[629], expressions[630]); - { - uint8_t t241[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[632] = BinaryenConst(the_module, BinaryenLiteralVec128(t241)); - } - expressions[633] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[634] = BinaryenSIMDShift(the_module, 1, expressions[632], expressions[633]); - { - uint8_t t242[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[635] = BinaryenConst(the_module, BinaryenLiteralVec128(t242)); - } - expressions[636] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[637] = BinaryenSIMDShift(the_module, 2, expressions[635], expressions[636]); - { - uint8_t t243[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[638] = BinaryenConst(the_module, BinaryenLiteralVec128(t243)); - } - expressions[639] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[640] = BinaryenSIMDShift(the_module, 3, expressions[638], expressions[639]); - { - uint8_t t244[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[641] = BinaryenConst(the_module, BinaryenLiteralVec128(t244)); - } - expressions[642] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[643] = BinaryenSIMDShift(the_module, 4, expressions[641], expressions[642]); - { - uint8_t t245[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[644] = BinaryenConst(the_module, BinaryenLiteralVec128(t245)); - } - expressions[645] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[646] = BinaryenSIMDShift(the_module, 5, expressions[644], expressions[645]); - { - uint8_t t246[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[647] = BinaryenConst(the_module, BinaryenLiteralVec128(t246)); - } - expressions[648] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[649] = BinaryenSIMDShift(the_module, 6, expressions[647], expressions[648]); - { - uint8_t t247[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[650] = BinaryenConst(the_module, BinaryenLiteralVec128(t247)); - } - expressions[651] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[652] = BinaryenSIMDShift(the_module, 7, expressions[650], expressions[651]); - { - uint8_t t248[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[653] = BinaryenConst(the_module, BinaryenLiteralVec128(t248)); - } - expressions[654] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[655] = BinaryenSIMDShift(the_module, 8, expressions[653], expressions[654]); - { - uint8_t t249[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[656] = BinaryenConst(the_module, BinaryenLiteralVec128(t249)); - } - expressions[657] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[658] = BinaryenSIMDShift(the_module, 9, expressions[656], expressions[657]); - { - uint8_t t250[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[659] = BinaryenConst(the_module, BinaryenLiteralVec128(t250)); - } - expressions[660] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[661] = BinaryenSIMDShift(the_module, 10, expressions[659], expressions[660]); - { - uint8_t t251[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[662] = BinaryenConst(the_module, BinaryenLiteralVec128(t251)); - } - expressions[663] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[664] = BinaryenSIMDShift(the_module, 11, expressions[662], expressions[663]); - expressions[665] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[666] = BinaryenSIMDLoad(the_module, 0, 0, 1, expressions[665]); - expressions[667] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[668] = BinaryenSIMDLoad(the_module, 1, 16, 1, expressions[667]); - expressions[669] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[670] = BinaryenSIMDLoad(the_module, 2, 16, 4, expressions[669]); - expressions[671] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[672] = BinaryenSIMDLoad(the_module, 3, 0, 4, expressions[671]); - expressions[673] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[674] = BinaryenSIMDLoad(the_module, 4, 0, 8, expressions[673]); - expressions[675] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[676] = BinaryenSIMDLoad(the_module, 5, 0, 8, expressions[675]); - expressions[677] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[678] = BinaryenSIMDLoad(the_module, 6, 0, 8, expressions[677]); - expressions[679] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[680] = BinaryenSIMDLoad(the_module, 7, 0, 8, expressions[679]); - expressions[681] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[682] = BinaryenSIMDLoad(the_module, 8, 0, 8, expressions[681]); - expressions[683] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); - expressions[684] = BinaryenSIMDLoad(the_module, 9, 0, 8, expressions[683]); - { - uint8_t t252[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[685] = BinaryenConst(the_module, BinaryenLiteralVec128(t252)); - } - { - uint8_t t253[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[686] = BinaryenConst(the_module, BinaryenLiteralVec128(t253)); - } - { - uint8_t mask[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - expressions[687] = BinaryenSIMDShuffle(the_module, expressions[685], expressions[686], mask); - } - { - uint8_t t254[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[688] = BinaryenConst(the_module, BinaryenLiteralVec128(t254)); - } - { - uint8_t t255[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[689] = BinaryenConst(the_module, BinaryenLiteralVec128(t255)); - } - { - uint8_t t256[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[690] = BinaryenConst(the_module, BinaryenLiteralVec128(t256)); - } - expressions[691] = BinaryenSIMDTernary(the_module, 0, expressions[688], expressions[689], expressions[690]); - { - uint8_t t257[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[692] = BinaryenConst(the_module, BinaryenLiteralVec128(t257)); - } - { - uint8_t t258[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[693] = BinaryenConst(the_module, BinaryenLiteralVec128(t258)); - } - { - uint8_t t259[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[694] = BinaryenConst(the_module, BinaryenLiteralVec128(t259)); - } - expressions[695] = BinaryenSIMDTernary(the_module, 1, expressions[692], expressions[693], expressions[694]); - { - uint8_t t260[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[696] = BinaryenConst(the_module, BinaryenLiteralVec128(t260)); - } - { - uint8_t t261[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[697] = BinaryenConst(the_module, BinaryenLiteralVec128(t261)); - } - { - uint8_t t262[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[698] = BinaryenConst(the_module, BinaryenLiteralVec128(t262)); - } - expressions[699] = BinaryenSIMDTernary(the_module, 2, expressions[696], expressions[697], expressions[698]); - { - uint8_t t263[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[700] = BinaryenConst(the_module, BinaryenLiteralVec128(t263)); - } - { - uint8_t t264[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[701] = BinaryenConst(the_module, BinaryenLiteralVec128(t264)); - } - { - uint8_t t265[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[702] = BinaryenConst(the_module, BinaryenLiteralVec128(t265)); - } - expressions[703] = BinaryenSIMDTernary(the_module, 3, expressions[700], expressions[701], expressions[702]); - { - uint8_t t266[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[704] = BinaryenConst(the_module, BinaryenLiteralVec128(t266)); - } - { - uint8_t t267[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[705] = BinaryenConst(the_module, BinaryenLiteralVec128(t267)); - } - { - uint8_t t268[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[706] = BinaryenConst(the_module, BinaryenLiteralVec128(t268)); - } - expressions[707] = BinaryenSIMDTernary(the_module, 4, expressions[704], expressions[705], expressions[706]); - expressions[708] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); - expressions[709] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[710] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); - expressions[711] = BinaryenMemoryInit(the_module, 0, expressions[708], expressions[709], expressions[710]); - expressions[712] = BinaryenDataDrop(the_module, 0); - expressions[713] = BinaryenConst(the_module, BinaryenLiteralInt32(2048)); - expressions[714] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); - expressions[715] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); - expressions[716] = BinaryenMemoryCopy(the_module, expressions[713], expressions[714], expressions[715]); - expressions[717] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[718] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - expressions[719] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); - expressions[720] = BinaryenMemoryFill(the_module, expressions[717], expressions[718], expressions[719]); - { - BinaryenExpressionRef children[] = { 0 }; - expressions[721] = BinaryenBlock(the_module, NULL, children, 0, BinaryenTypeAuto()); - } - expressions[722] = BinaryenIf(the_module, expressions[18], expressions[19], expressions[20]); - expressions[723] = BinaryenIf(the_module, expressions[21], expressions[22], expressions[0]); - expressions[724] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[725] = BinaryenLoop(the_module, "in", expressions[724]); - expressions[726] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[727] = BinaryenLoop(the_module, NULL, expressions[726]); - expressions[728] = BinaryenBreak(the_module, "the-value", expressions[23], expressions[24]); - expressions[729] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - expressions[730] = BinaryenBreak(the_module, "the-nothing", expressions[729], expressions[0]); - expressions[731] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - expressions[732] = BinaryenBreak(the_module, "the-value", expressions[0], expressions[731]); - expressions[733] = BinaryenBreak(the_module, "the-nothing", expressions[0], expressions[0]); - { - const char* names[] = { "the-value" }; - expressions[734] = BinaryenSwitch(the_module, names, 1, "the-value", expressions[25], expressions[26]); - } - expressions[735] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - const char* names[] = { "the-nothing" }; - expressions[736] = BinaryenSwitch(the_module, names, 1, "the-nothing", expressions[735], expressions[0]); - } - { - BinaryenExpressionRef operands[] = { expressions[10], expressions[11], expressions[12], expressions[13] }; - expressions[737] = BinaryenCall(the_module, "kitchen()sinker", operands, 4, 2); - } - expressions[738] = BinaryenUnary(the_module, 20, expressions[737]); - { - BinaryenExpressionRef operands[] = { expressions[8], expressions[9] }; - expressions[739] = BinaryenCall(the_module, "an-imported", operands, 2, 4); - } - expressions[740] = BinaryenUnary(the_module, 25, expressions[739]); - expressions[741] = BinaryenUnary(the_module, 20, expressions[740]); - expressions[742] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); + BinaryenModuleDispose(the_module); + expressions.clear(); + functions.clear(); + globals.clear(); + events.clear(); + exports.clear(); + relooperBlocks.clear(); + // BinaryenTypeNone: 0 + // BinaryenTypeUnreachable: 1 + // BinaryenTypeInt32: 2 + // BinaryenTypeInt64: 3 + // BinaryenTypeFloat32: 4 + // BinaryenTypeFloat64: 5 + // BinaryenTypeVec128: 6 + // BinaryenTypeAnyref: 7 + // BinaryenTypeExnref: 8 + // BinaryenTypeAuto: -1 { - BinaryenExpressionRef operands[] = { expressions[14], expressions[15], expressions[16], expressions[17] }; - expressions[743] = BinaryenCallIndirect(the_module, expressions[742], operands, 4, "iiIfF"); + BinaryenType t271[] = {2, 2}; + BinaryenTypeCreate(t271, 2); // 11 } - expressions[744] = BinaryenUnary(the_module, 20, expressions[743]); - expressions[745] = BinaryenLocalGet(the_module, 0, 2); - expressions[746] = BinaryenDrop(the_module, expressions[745]); - expressions[747] = BinaryenConst(the_module, BinaryenLiteralInt32(101)); - expressions[748] = BinaryenLocalSet(the_module, 0, expressions[747]); - expressions[749] = BinaryenConst(the_module, BinaryenLiteralInt32(102)); - expressions[750] = BinaryenLocalTee(the_module, 0, expressions[749]); - expressions[751] = BinaryenDrop(the_module, expressions[750]); - expressions[752] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[753] = BinaryenLoad(the_module, 4, 0, 0, 0, 2, expressions[752]); - expressions[754] = BinaryenConst(the_module, BinaryenLiteralInt32(8)); - expressions[755] = BinaryenLoad(the_module, 2, 1, 2, 1, 3, expressions[754]); - expressions[756] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - expressions[757] = BinaryenLoad(the_module, 4, 0, 0, 0, 4, expressions[756]); - expressions[758] = BinaryenConst(the_module, BinaryenLiteralInt32(9)); - expressions[759] = BinaryenLoad(the_module, 8, 0, 2, 8, 5, expressions[758]); - expressions[760] = BinaryenStore(the_module, 4, 0, 0, expressions[30], expressions[31], 2); - expressions[761] = BinaryenStore(the_module, 8, 2, 4, expressions[32], expressions[33], 3); - expressions[762] = BinaryenSelect(the_module, expressions[27], expressions[28], expressions[29]); - expressions[763] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); - expressions[764] = BinaryenReturn(the_module, expressions[763]); { - BinaryenExpressionRef operands[] = { expressions[10], expressions[11], expressions[12], expressions[13] }; - expressions[765] = BinaryenReturnCall(the_module, "kitchen()sinker", operands, 4, 2); + BinaryenType t272[] = {2, 2}; + BinaryenTypeCreate(t272, 2); // 11 } - expressions[766] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); { - BinaryenExpressionRef operands[] = { expressions[14], expressions[15], expressions[16], expressions[17] }; - expressions[767] = BinaryenReturnCallIndirect(the_module, expressions[766], operands, 4, "iiIfF"); + BinaryenType t273[] = {4, 4}; + BinaryenTypeCreate(t273, 2); // 12 } - expressions[768] = BinaryenTry(the_module, expressions[35], expressions[43]); - expressions[769] = BinaryenAtomicLoad(the_module, 4, 0, 2, expressions[23]); - expressions[770] = BinaryenAtomicStore(the_module, 4, 0, expressions[23], expressions[769], 2); - expressions[771] = BinaryenAtomicWait(the_module, expressions[23], expressions[23], expressions[33], 2); - expressions[772] = BinaryenDrop(the_module, expressions[771]); - expressions[773] = BinaryenAtomicNotify(the_module, expressions[23], expressions[23]); - expressions[774] = BinaryenDrop(the_module, expressions[773]); - expressions[775] = BinaryenAtomicFence(the_module); - expressions[776] = BinaryenPop(the_module, 2); - expressions[777] = BinaryenPush(the_module, expressions[776]); - expressions[778] = BinaryenPop(the_module, 3); - expressions[779] = BinaryenPush(the_module, expressions[778]); - expressions[780] = BinaryenPop(the_module, 4); - expressions[781] = BinaryenPush(the_module, expressions[780]); - expressions[782] = BinaryenPop(the_module, 5); - expressions[783] = BinaryenPush(the_module, expressions[782]); - expressions[784] = BinaryenPop(the_module, 7); - expressions[785] = BinaryenPush(the_module, expressions[784]); - expressions[786] = BinaryenPop(the_module, 8); - expressions[787] = BinaryenPush(the_module, expressions[786]); - expressions[788] = BinaryenNop(the_module); - expressions[789] = BinaryenUnreachable(the_module); - BinaryenExpressionPrint(expressions[51]); + return 0; +} +// ending a Binaryen API trace + // BinaryenTypeNone: 0 + // BinaryenTypeUnreachable: 1 + // BinaryenTypeInt32: 2 + // BinaryenTypeInt64: 3 + // BinaryenTypeFloat32: 4 + // BinaryenTypeFloat64: 5 + // BinaryenTypeVec128: 6 + // BinaryenTypeAnyref: 7 + // BinaryenTypeExnref: 8 + // BinaryenTypeAuto: -1 +BinaryenFeatureMVP: 0 +BinaryenFeatureAtomics: 1 +BinaryenFeatureBulkMemory: 16 +BinaryenFeatureMutableGlobals: 2 +BinaryenFeatureNontrappingFPToInt: 4 +BinaryenFeatureSignExt: 32 +BinaryenFeatureSIMD128: 8 +BinaryenFeatureExceptionHandling: 64 +BinaryenFeatureTailCall: 128 +BinaryenFeatureReferenceTypes: 256 +BinaryenFeatureAll: 511 (f32.neg (f32.const -33.61199951171875) ) - { - BinaryenExpressionRef children[] = { expressions[45], expressions[47], expressions[49], expressions[51], expressions[53], - expressions[55], expressions[57], expressions[59], expressions[61], expressions[63], expressions[65], - expressions[67], expressions[69], expressions[71], expressions[73], expressions[75], expressions[77], - expressions[79], expressions[81], expressions[83], expressions[85], expressions[87], expressions[89], - expressions[91], expressions[93], expressions[95], expressions[97], expressions[99], expressions[101], - expressions[103], expressions[105], expressions[107], expressions[109], expressions[111], expressions[113], - expressions[115], expressions[117], expressions[119], expressions[121], expressions[123], expressions[125], - expressions[127], expressions[129], expressions[131], expressions[133], expressions[135], expressions[137], - expressions[139], expressions[141], expressions[143], expressions[145], expressions[147], expressions[149], - expressions[151], expressions[153], expressions[155], expressions[157], expressions[159], expressions[161], - expressions[163], expressions[165], expressions[167], expressions[169], expressions[171], expressions[173], - expressions[175], expressions[177], expressions[179], expressions[181], expressions[183], expressions[185], - expressions[187], expressions[189], expressions[191], expressions[193], expressions[195], expressions[197], - expressions[199], expressions[201], expressions[203], expressions[205], expressions[207], expressions[209], - expressions[211], expressions[213], expressions[216], expressions[219], expressions[222], expressions[225], - expressions[228], expressions[231], expressions[234], expressions[237], expressions[240], expressions[243], - expressions[246], expressions[249], expressions[252], expressions[255], expressions[258], expressions[261], - expressions[264], expressions[267], expressions[270], expressions[273], expressions[276], expressions[279], - expressions[282], expressions[285], expressions[288], expressions[291], expressions[294], expressions[297], - expressions[300], expressions[303], expressions[306], expressions[309], expressions[312], expressions[315], - expressions[318], expressions[321], expressions[324], expressions[327], expressions[330], expressions[333], - expressions[336], expressions[339], expressions[342], expressions[345], expressions[348], expressions[351], - expressions[354], expressions[357], expressions[360], expressions[363], expressions[366], expressions[369], - expressions[372], expressions[375], expressions[378], expressions[381], expressions[384], expressions[387], - expressions[390], expressions[393], expressions[396], expressions[399], expressions[402], expressions[405], - expressions[408], expressions[411], expressions[414], expressions[417], expressions[420], expressions[423], - expressions[426], expressions[429], expressions[432], expressions[435], expressions[438], expressions[441], - expressions[444], expressions[447], expressions[450], expressions[453], expressions[456], expressions[459], - expressions[462], expressions[465], expressions[468], expressions[471], expressions[474], expressions[477], - expressions[480], expressions[483], expressions[486], expressions[489], expressions[492], expressions[495], - expressions[498], expressions[501], expressions[504], expressions[507], expressions[510], expressions[513], - expressions[516], expressions[519], expressions[522], expressions[525], expressions[528], expressions[531], - expressions[534], expressions[537], expressions[540], expressions[543], expressions[546], expressions[549], - expressions[552], expressions[555], expressions[558], expressions[561], expressions[564], expressions[567], - expressions[570], expressions[573], expressions[576], expressions[579], expressions[582], expressions[585], - expressions[588], expressions[591], expressions[594], expressions[596], expressions[598], expressions[600], - expressions[602], expressions[604], expressions[606], expressions[608], expressions[610], expressions[613], - expressions[616], expressions[619], expressions[622], expressions[625], expressions[628], expressions[631], - expressions[634], expressions[637], expressions[640], expressions[643], expressions[646], expressions[649], - expressions[652], expressions[655], expressions[658], expressions[661], expressions[664], expressions[666], - expressions[668], expressions[670], expressions[672], expressions[674], expressions[676], expressions[678], - expressions[680], expressions[682], expressions[684], expressions[687], expressions[691], expressions[695], - expressions[699], expressions[703], expressions[707], expressions[711], expressions[712], expressions[716], - expressions[720], expressions[721], expressions[722], expressions[723], expressions[725], expressions[727], - expressions[728], expressions[730], expressions[732], expressions[733], expressions[734], expressions[736], - expressions[738], expressions[741], expressions[744], expressions[746], expressions[748], expressions[751], - expressions[753], expressions[755], expressions[757], expressions[759], expressions[760], expressions[761], - expressions[762], expressions[764], expressions[765], expressions[767], expressions[768], expressions[770], - expressions[772], expressions[774], expressions[775], expressions[777], expressions[779], expressions[781], - expressions[783], expressions[785], expressions[787], expressions[788], expressions[789] }; - expressions[790] = BinaryenBlock(the_module, "the-value", children, 298, BinaryenTypeAuto()); - } - expressions[791] = BinaryenDrop(the_module, expressions[790]); - { - BinaryenExpressionRef children[] = { expressions[791] }; - expressions[792] = BinaryenBlock(the_module, "the-nothing", children, 1, BinaryenTypeAuto()); - } - expressions[793] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - { - BinaryenExpressionRef children[] = { expressions[792], expressions[793] }; - expressions[794] = BinaryenBlock(the_module, "the-body", children, 2, BinaryenTypeAuto()); - } - { - BinaryenType varTypes[] = { 2, 8 }; - functions[0] = BinaryenAddFunction(the_module, "kitchen()sinker", functionTypes[0], varTypes, 2, expressions[794]); - } - expressions[795] = BinaryenConst(the_module, BinaryenLiteralInt32(7)); - globals[0] = BinaryenAddGlobal(the_module, "a-global", 2, 0, expressions[795]); - expressions[796] = BinaryenConst(the_module, BinaryenLiteralFloat32(7.5)); - globals[1] = BinaryenAddGlobal(the_module, "a-mutable-global", 4, 1, expressions[796]); - { - BinaryenType paramTypes[] = { 2, 5 }; - functionTypes[1] = BinaryenAddFunctionType(the_module, "fiF", 4, paramTypes, 2); - } - BinaryenAddFunctionImport(the_module, "an-imported", "module", "base", functionTypes[1]); - exports[0] = BinaryenAddFunctionExport(the_module, "kitchen()sinker", "kitchen_sinker"); - BinaryenFunctionGetName(functions[0]); - expressions[797] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - const char* funcNames[] = { "kitchen()sinker" }; - BinaryenSetFunctionTable(the_module, 1, 1, funcNames, 1, expressions[797]); - } - expressions[798] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); - { - const char segment0[] = { 104, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100 }; - const char segment1[] = { 73, 32, 97, 109, 32, 112, 97, 115, 115, 105, 118, 101 }; - const char* segments[] = { segment0, segment1 }; - int8_t segmentPassive[] = { 0, 1 }; - BinaryenExpressionRef segmentOffsets[] = { expressions[798], expressions[0] }; - BinaryenIndex segmentSizes[] = { 12, 12 }; - BinaryenSetMemory(the_module, 1, 256, "mem", segments, segmentPassive, segmentOffsets, segmentSizes, 2, 1); - } - { - BinaryenType paramTypes[] = { 0 }; - functionTypes[2] = BinaryenAddFunctionType(the_module, "v", 0, paramTypes, 0); - } - expressions[799] = BinaryenNop(the_module); - { - BinaryenType varTypes[] = { 0 }; - functions[1] = BinaryenAddFunction(the_module, "starter", functionTypes[2], varTypes, 0, expressions[799]); - } - BinaryenSetStart(the_module, functions[1]); - { - BinaryenType paramTypes[] = { 0 }; - functionTypes[3] = BinaryenAddFunctionType(the_module, NULL, 0, paramTypes, 0); - } - BinaryenModuleAutoDrop(the_module); - BinaryenModuleSetFeatures(the_module, 511); - BinaryenModuleGetFeatures(the_module); - BinaryenModuleValidate(the_module); - BinaryenModulePrint(the_module); (module - (type $iiIfF (func (param i32 i64 f32 f64) (result i32))) - (type $fiF (func (param i32 f64) (result f32))) - (type $v (func)) - (type $3 (func)) + (type $i32_i64_f32_f64_=>_i32 (func (param i32 i64 f32 f64) (result i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $i32_f64_=>_f32 (func (param i32 f64) (result f32))) (import "module" "base" (func $an-imported (param i32 f64) (result f32))) (memory $0 (shared 1 256)) (data (i32.const 10) "hello, world") @@ -4014,7 +4428,7 @@ int main() { (export "kitchen_sinker" (func "$kitchen()sinker")) (export "mem" (memory $0)) (start $starter) - (func "$kitchen()sinker" (; 1 ;) (type $iiIfF) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32) + (func "$kitchen()sinker" (; 1 ;) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32) (local $4 i32) (local $5 exnref) (block $the-body (result i32) @@ -5532,7 +5946,7 @@ int main() { ) (drop (i32.eqz - (call_indirect (type $iiIfF) + (call_indirect (type $i32_i64_f32_f64_=>_i32) (i32.const 13) (i64.const 37) (f32.const 1.2999999523162842) @@ -5596,7 +6010,7 @@ int main() { (f32.const 1.2999999523162842) (f64.const 3.7) ) - (return_call_indirect (type $iiIfF) + (return_call_indirect (type $i32_i64_f32_f64_=>_i32) (i32.const 13) (i64.const 37) (f32.const 1.2999999523162842) @@ -5668,486 +6082,32 @@ int main() { (i32.const 42) ) ) - (func $starter (; 2 ;) (type $v) + (func $starter (; 2 ;) (nop) ) ) - BinaryenModuleDispose(the_module); - functionTypes.clear(); - expressions.clear(); - functions.clear(); - globals.clear(); - events.clear(); - exports.clear(); - relooperBlocks.clear(); - the_module = BinaryenModuleCreate(); - expressions[size_t(NULL)] = BinaryenExpressionRef(NULL); - { - BinaryenType paramTypes[] = { 0 }; - functionTypes[0] = BinaryenAddFunctionType(the_module, "v", 0, paramTypes, 0); - } - { - BinaryenType paramTypes[] = { 2 }; - functionTypes[1] = BinaryenAddFunctionType(the_module, "vi", 0, paramTypes, 1); - } - BinaryenAddFunctionImport(the_module, "check", "module", "check", functionTypes[1]); - the_relooper = RelooperCreate(the_module); - expressions[1] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); - { - BinaryenExpressionRef operands[] = { expressions[1] }; - expressions[2] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[2]); - expressions[3] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[0] = BinaryenAddFunction(the_module, "just-one-block", functionTypes[0], varTypes, 1, expressions[3]); - } - the_relooper = RelooperCreate(the_module); - expressions[4] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[4] }; - expressions[5] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[5]); - expressions[6] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[6] }; - expressions[7] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[7]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); - expressions[8] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[1] = BinaryenAddFunction(the_module, "two-blocks", functionTypes[0], varTypes, 1, expressions[8]); - } - the_relooper = RelooperCreate(the_module); - expressions[9] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[9] }; - expressions[10] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[10]); - expressions[11] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[11] }; - expressions[12] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[12]); - expressions[13] = BinaryenConst(the_module, BinaryenLiteralInt32(77)); - expressions[14] = BinaryenDrop(the_module, expressions[13]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[14]); - expressions[15] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[2] = BinaryenAddFunction(the_module, "two-blocks-plus-code", functionTypes[0], varTypes, 1, expressions[15]); - } - the_relooper = RelooperCreate(the_module); - expressions[16] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[16] }; - expressions[17] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[17]); - expressions[18] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[18] }; - expressions[19] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[19]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[0], expressions[0], expressions[0]); - expressions[20] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[3] = BinaryenAddFunction(the_module, "loop", functionTypes[0], varTypes, 1, expressions[20]); - } - the_relooper = RelooperCreate(the_module); - expressions[21] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[21] }; - expressions[22] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[22]); - expressions[23] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[23] }; - expressions[24] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[24]); - expressions[25] = BinaryenConst(the_module, BinaryenLiteralInt32(33)); - expressions[26] = BinaryenDrop(the_module, expressions[25]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[26]); - expressions[27] = BinaryenConst(the_module, BinaryenLiteralInt32(-66)); - expressions[28] = BinaryenDrop(the_module, expressions[27]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[0], expressions[0], expressions[28]); - expressions[29] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[4] = BinaryenAddFunction(the_module, "loop-plus-code", functionTypes[0], varTypes, 1, expressions[29]); - } - the_relooper = RelooperCreate(the_module); - expressions[30] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[30] }; - expressions[31] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[31]); - expressions[32] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[32] }; - expressions[33] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[33]); - expressions[34] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[34] }; - expressions[35] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[35]); - expressions[36] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[36], expressions[0]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); - expressions[37] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[5] = BinaryenAddFunction(the_module, "split", functionTypes[0], varTypes, 1, expressions[37]); - } - the_relooper = RelooperCreate(the_module); - expressions[38] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[38] }; - expressions[39] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[39]); - expressions[40] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[40] }; - expressions[41] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[41]); - expressions[42] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[42] }; - expressions[43] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[43]); - expressions[44] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); - expressions[45] = BinaryenDrop(the_module, expressions[44]); - expressions[46] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[46], expressions[45]); - expressions[47] = BinaryenConst(the_module, BinaryenLiteralInt32(20)); - expressions[48] = BinaryenDrop(the_module, expressions[47]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[48]); - expressions[49] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[6] = BinaryenAddFunction(the_module, "split-plus-code", functionTypes[0], varTypes, 1, expressions[49]); - } - the_relooper = RelooperCreate(the_module); - expressions[50] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[50] }; - expressions[51] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[51]); - expressions[52] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[52] }; - expressions[53] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[53]); - expressions[54] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[54] }; - expressions[55] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[55]); - expressions[56] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[56], expressions[0]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[0]); - expressions[57] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[7] = BinaryenAddFunction(the_module, "if", functionTypes[0], varTypes, 1, expressions[57]); - } - the_relooper = RelooperCreate(the_module); - expressions[58] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[58] }; - expressions[59] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[59]); - expressions[60] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[60] }; - expressions[61] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[61]); - expressions[62] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[62] }; - expressions[63] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[63]); - expressions[64] = BinaryenConst(the_module, BinaryenLiteralInt32(-1)); - expressions[65] = BinaryenDrop(the_module, expressions[64]); - expressions[66] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[66], expressions[65]); - expressions[67] = BinaryenConst(the_module, BinaryenLiteralInt32(-2)); - expressions[68] = BinaryenDrop(the_module, expressions[67]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[68]); - expressions[69] = BinaryenConst(the_module, BinaryenLiteralInt32(-3)); - expressions[70] = BinaryenDrop(the_module, expressions[69]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[70]); - expressions[71] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[8] = BinaryenAddFunction(the_module, "if-plus-code", functionTypes[0], varTypes, 1, expressions[71]); - } - the_relooper = RelooperCreate(the_module); - expressions[72] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[72] }; - expressions[73] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[73]); - expressions[74] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[74] }; - expressions[75] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[75]); - expressions[76] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[76] }; - expressions[77] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[77]); - expressions[78] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - { - BinaryenExpressionRef operands[] = { expressions[78] }; - expressions[79] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[3] = RelooperAddBlock(the_relooper, expressions[79]); - expressions[80] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[80], expressions[0]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[3], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[2], relooperBlocks[3], expressions[0], expressions[0]); - expressions[81] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[9] = BinaryenAddFunction(the_module, "if-else", functionTypes[0], varTypes, 1, expressions[81]); - } - the_relooper = RelooperCreate(the_module); - expressions[82] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[82] }; - expressions[83] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[83]); - expressions[84] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[84] }; - expressions[85] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[85]); - expressions[86] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[86] }; - expressions[87] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[87]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); - expressions[88] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[0], expressions[88], expressions[0]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[0]); - expressions[89] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[10] = BinaryenAddFunction(the_module, "loop-tail", functionTypes[0], varTypes, 1, expressions[89]); - } - the_relooper = RelooperCreate(the_module); - expressions[90] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[90] }; - expressions[91] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[91]); - expressions[92] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[92] }; - expressions[93] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[93]); - expressions[94] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[94] }; - expressions[95] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[95]); - expressions[96] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - { - BinaryenExpressionRef operands[] = { expressions[96] }; - expressions[97] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[3] = RelooperAddBlock(the_relooper, expressions[97]); - expressions[98] = BinaryenConst(the_module, BinaryenLiteralInt32(4)); - { - BinaryenExpressionRef operands[] = { expressions[98] }; - expressions[99] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[4] = RelooperAddBlock(the_relooper, expressions[99]); - expressions[100] = BinaryenConst(the_module, BinaryenLiteralInt32(5)); - { - BinaryenExpressionRef operands[] = { expressions[100] }; - expressions[101] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[5] = RelooperAddBlock(the_relooper, expressions[101]); - expressions[102] = BinaryenConst(the_module, BinaryenLiteralInt32(6)); - { - BinaryenExpressionRef operands[] = { expressions[102] }; - expressions[103] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[6] = RelooperAddBlock(the_relooper, expressions[103]); - expressions[104] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); - expressions[105] = BinaryenDrop(the_module, expressions[104]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[105]); - expressions[106] = BinaryenConst(the_module, BinaryenLiteralInt32(-2)); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[106], expressions[0]); - expressions[107] = BinaryenConst(the_module, BinaryenLiteralInt32(20)); - expressions[108] = BinaryenDrop(the_module, expressions[107]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[6], expressions[0], expressions[108]); - expressions[109] = BinaryenConst(the_module, BinaryenLiteralInt32(-6)); - RelooperAddBranch(relooperBlocks[2], relooperBlocks[3], expressions[109], expressions[0]); - expressions[110] = BinaryenConst(the_module, BinaryenLiteralInt32(30)); - expressions[111] = BinaryenDrop(the_module, expressions[110]); - RelooperAddBranch(relooperBlocks[2], relooperBlocks[1], expressions[0], expressions[111]); - expressions[112] = BinaryenConst(the_module, BinaryenLiteralInt32(-10)); - RelooperAddBranch(relooperBlocks[3], relooperBlocks[4], expressions[112], expressions[0]); - RelooperAddBranch(relooperBlocks[3], relooperBlocks[5], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[4], relooperBlocks[5], expressions[0], expressions[0]); - expressions[113] = BinaryenConst(the_module, BinaryenLiteralInt32(40)); - expressions[114] = BinaryenDrop(the_module, expressions[113]); - RelooperAddBranch(relooperBlocks[5], relooperBlocks[6], expressions[0], expressions[114]); - expressions[115] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[11] = BinaryenAddFunction(the_module, "nontrivial-loop-plus-phi-to-head", functionTypes[0], varTypes, 1, expressions[115]); - } - the_relooper = RelooperCreate(the_module); - expressions[116] = BinaryenConst(the_module, BinaryenLiteralInt32(-99)); - expressions[117] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[117] }; - expressions[118] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlockWithSwitch(the_relooper, expressions[118], expressions[116]); - expressions[119] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[119] }; - expressions[120] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[120]); - expressions[121] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[121] }; - expressions[122] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[122]); - expressions[123] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - { - BinaryenExpressionRef operands[] = { expressions[123] }; - expressions[124] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[3] = RelooperAddBlock(the_relooper, expressions[124]); - { - BinaryenIndex indexes[] = { 2, 5 }; - RelooperAddBranchForSwitch(relooperBlocks[0], relooperBlocks[1], indexes, 2, expressions[0]); - } - expressions[125] = BinaryenConst(the_module, BinaryenLiteralInt32(55)); - expressions[126] = BinaryenDrop(the_module, expressions[125]); - { - BinaryenIndex indexes[] = { 4 }; - RelooperAddBranchForSwitch(relooperBlocks[0], relooperBlocks[2], indexes, 1, expressions[126]); - } - { - BinaryenIndex indexes[] = { 0 }; - RelooperAddBranchForSwitch(relooperBlocks[0], relooperBlocks[3], indexes, 0, expressions[0]); - } - expressions[127] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[12] = BinaryenAddFunction(the_module, "switch", functionTypes[0], varTypes, 1, expressions[127]); - } - the_relooper = RelooperCreate(the_module); - expressions[128] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - { - BinaryenExpressionRef operands[] = { expressions[128] }; - expressions[129] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[129]); - expressions[130] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - { - BinaryenExpressionRef operands[] = { expressions[130] }; - expressions[131] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[131]); - expressions[132] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - { - BinaryenExpressionRef operands[] = { expressions[132] }; - expressions[133] = BinaryenCall(the_module, "check", operands, 1, 0); - } - relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[133]); - expressions[134] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[134], expressions[0]); - RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[1], relooperBlocks[2], expressions[0], expressions[0]); - RelooperAddBranch(relooperBlocks[2], relooperBlocks[1], expressions[0], expressions[0]); - expressions[135] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 3); - { - BinaryenType varTypes[] = { 2, 2, 3, 2, 4, 5, 2 }; - functions[13] = BinaryenAddFunction(the_module, "duffs-device", functionTypes[0], varTypes, 7, expressions[135]); - } - { - BinaryenType paramTypes[] = { 0 }; - functionTypes[2] = BinaryenAddFunctionType(the_module, "i", 2, paramTypes, 0); - } - the_relooper = RelooperCreate(the_module); - expressions[136] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - { - BinaryenExpressionRef operands[] = { expressions[136] }; - expressions[137] = BinaryenCall(the_module, "check", operands, 1, 0); - } - expressions[138] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); - expressions[139] = BinaryenReturn(the_module, expressions[138]); - { - BinaryenExpressionRef children[] = { expressions[137], expressions[139] }; - expressions[140] = BinaryenBlock(the_module, "the-list", children, 2, BinaryenTypeAuto()); - } - relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[140]); - expressions[141] = RelooperRenderAndDispose(the_relooper, relooperBlocks[0], 0); - { - BinaryenType varTypes[] = { 2 }; - functions[14] = BinaryenAddFunction(the_module, "return", functionTypes[2], varTypes, 1, expressions[141]); - } +(module + (type $none_=>_i32 (func (result i32))) + (type $none_=>_i64 (func (result i64))) + (func $unreachable-fn (; 0 ;) (result i32) + (call_indirect (type $none_=>_i64) + (unreachable) + ) + ) +) raw: - BinaryenModulePrint(the_module); (module - (type $v (func)) - (type $vi (func (param i32))) - (type $i (func (result i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "module" "check" (func $check (param i32))) - (func $just-one-block (; 1 ;) (type $v) + (func $just-one-block (; 1 ;) (local $0 i32) (call $check (i32.const 1337) ) ) - (func $two-blocks (; 2 ;) (type $v) + (func $two-blocks (; 2 ;) (local $0 i32) (block (call $check @@ -6158,7 +6118,7 @@ raw: ) ) ) - (func $two-blocks-plus-code (; 3 ;) (type $v) + (func $two-blocks-plus-code (; 3 ;) (local $0 i32) (block (block @@ -6174,7 +6134,7 @@ raw: ) ) ) - (func $loop (; 4 ;) (type $v) + (func $loop (; 4 ;) (local $0 i32) (loop $shape$0$continue (block @@ -6190,7 +6150,7 @@ raw: ) ) ) - (func $loop-plus-code (; 5 ;) (type $v) + (func $loop-plus-code (; 5 ;) (local $0 i32) (loop $shape$0$continue (block @@ -6214,7 +6174,7 @@ raw: ) ) ) - (func $split (; 6 ;) (type $v) + (func $split (; 6 ;) (local $0 i32) (call $check (i32.const 0) @@ -6233,7 +6193,7 @@ raw: ) ) ) - (func $split-plus-code (; 7 ;) (type $v) + (func $split-plus-code (; 7 ;) (local $0 i32) (call $check (i32.const 0) @@ -6262,7 +6222,7 @@ raw: ) ) ) - (func $if (; 8 ;) (type $v) + (func $if (; 8 ;) (local $0 i32) (block $block$3$break (call $check @@ -6287,7 +6247,7 @@ raw: ) ) ) - (func $if-plus-code (; 9 ;) (type $v) + (func $if-plus-code (; 9 ;) (local $0 i32) (block $block$3$break (call $check @@ -6325,7 +6285,7 @@ raw: ) ) ) - (func $if-else (; 10 ;) (type $v) + (func $if-else (; 10 ;) (local $0 i32) (block $block$4$break (call $check @@ -6357,7 +6317,7 @@ raw: ) ) ) - (func $loop-tail (; 11 ;) (type $v) + (func $loop-tail (; 11 ;) (local $0 i32) (block $block$3$break (loop $shape$0$continue @@ -6382,7 +6342,7 @@ raw: ) ) ) - (func $nontrivial-loop-plus-phi-to-head (; 12 ;) (type $v) + (func $nontrivial-loop-plus-phi-to-head (; 12 ;) (local $0 i32) (block $block$2$break (call $check @@ -6469,7 +6429,7 @@ raw: ) ) ) - (func $switch (; 13 ;) (type $v) + (func $switch (; 13 ;) (local $0 i32) (call $check (i32.const 0) @@ -6513,7 +6473,7 @@ raw: (br $switch$1$leave) ) ) - (func $duffs-device (; 14 ;) (type $v) + (func $duffs-device (; 14 ;) (local $0 i32) (local $1 i32) (local $2 i64) @@ -6588,7 +6548,7 @@ raw: ) ) ) - (func $return (; 15 ;) (type $i) (result i32) + (func $return (; 15 ;) (result i32) (local $0 i32) (block (call $check @@ -6600,47 +6560,65 @@ raw: ) ) ) - BinaryenModuleValidate(the_module); - BinaryenModuleOptimize(the_module); - BinaryenModuleValidate(the_module); optimized: - BinaryenModulePrint(the_module); (module ) - BinaryenModuleDispose(the_module); - functionTypes.clear(); - expressions.clear(); - functions.clear(); - globals.clear(); - events.clear(); - exports.clear(); - relooperBlocks.clear(); - // BinaryenTypeNone: 0 - // BinaryenTypeUnreachable: 1 - // BinaryenTypeInt32: 2 - // BinaryenTypeInt64: 3 - // BinaryenTypeFloat32: 4 - // BinaryenTypeFloat64: 5 - // BinaryenTypeVec128: 6 - // BinaryenTypeAnyref: 7 - // BinaryenTypeExnref: 8 - // BinaryenTypeAuto: -1 - { - BinaryenType t269[] = {2, 2}; - BinaryenTypeCreate(t269, 2); // 9 - } - { - BinaryenType t270[] = {2, 2}; - BinaryenTypeCreate(t270, 2); // 9 - } - { - BinaryenType t271[] = {4, 4}; - BinaryenTypeCreate(t271, 2); // 10 - } - return 0; -} +module loaded from binary form: +(module + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (func $adder (; 0 ;) (param $0 i32) (param $1 i32) (result i32) + (i32.add + (local.get $0) + (local.get $1) + ) + ) +) +module s-expr printed (in memory): +(module + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (func $adder (; 0 ;) (param $0 i32) (param $1 i32) (result i32) + (i32.add + (local.get $0) + (local.get $1) + ) + ) +) + +module s-expr printed (in memory, caller-owned): +(module + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (func $adder (; 0 ;) (param $0 i32) (param $1 i32) (result i32) + (i32.add + (local.get $0) + (local.get $1) + ) + ) +) + +(module + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (import "spectest" "print" (func $print-i32 (param i32))) + (start $starter) + (func $starter (; 1 ;) + (call $print-i32 + (i32.const 1234) + ) + ) +) +1234 : i32 +(module + (type $none_=>_none (func)) + (func $func (; 0 ;) + (local $0 i32) + (local.set $0 + (i64.const 1234) + ) + ) +) +validation: 0 (module - (type $v (func)) + (type $none_=>_none (func)) (memory $0 1 256) (data (i32.const 10) "hello, world") (data (global.get $a-global) "segment data 2") @@ -6649,13 +6627,13 @@ optimized: (export "export1" (func $fn1)) (export "export2" (func $fn2)) (export "mem" (memory $0)) - (func $fn0 (; 0 ;) (type $v) + (func $fn0 (; 0 ;) (nop) ) - (func $fn1 (; 1 ;) (type $v) + (func $fn1 (; 1 ;) (nop) ) - (func $fn2 (; 2 ;) (type $v) + (func $fn2 (; 2 ;) (nop) ) ) diff --git a/test/example/c-api-kitchen-sink.txt.txt b/test/example/c-api-kitchen-sink.txt.txt index 92f620e73..bd6ba34e4 100644 --- a/test/example/c-api-kitchen-sink.txt.txt +++ b/test/example/c-api-kitchen-sink.txt.txt @@ -2,10 +2,10 @@ (f32.const -33.61199951171875) ) (module - (type $iiIfF (func (param i32 i64 f32 f64) (result i32))) - (type $fiF (func (param i32 f64) (result f32))) - (type $v (func)) - (type $3 (func)) + (type $i32_i64_f32_f64_=>_i32 (func (param i32 i64 f32 f64) (result i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $i32_f64_=>_f32 (func (param i32 f64) (result f32))) (import "module" "base" (func $an-imported (param i32 f64) (result f32))) (memory $0 (shared 1 256)) (data (i32.const 10) "hello, world") @@ -18,7 +18,7 @@ (export "kitchen_sinker" (func "$kitchen()sinker")) (export "mem" (memory $0)) (start $starter) - (func "$kitchen()sinker" (; 1 ;) (type $iiIfF) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32) + (func "$kitchen()sinker" (; 1 ;) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32) (local $4 i32) (local $5 exnref) (block $the-body (result i32) @@ -1536,7 +1536,7 @@ ) (drop (i32.eqz - (call_indirect (type $iiIfF) + (call_indirect (type $i32_i64_f32_f64_=>_i32) (i32.const 13) (i64.const 37) (f32.const 1.2999999523162842) @@ -1600,7 +1600,7 @@ (f32.const 1.2999999523162842) (f64.const 3.7) ) - (return_call_indirect (type $iiIfF) + (return_call_indirect (type $i32_i64_f32_f64_=>_i32) (i32.const 13) (i64.const 37) (f32.const 1.2999999523162842) @@ -1672,22 +1672,22 @@ (i32.const 42) ) ) - (func $starter (; 2 ;) (type $v) + (func $starter (; 2 ;) (nop) ) ) (module - (type $v (func)) - (type $vi (func (param i32))) - (type $i (func (result i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "module" "check" (func $check (param i32))) - (func $just-one-block (; 1 ;) (type $v) + (func $just-one-block (; 1 ;) (local $0 i32) (call $check (i32.const 1337) ) ) - (func $two-blocks (; 2 ;) (type $v) + (func $two-blocks (; 2 ;) (local $0 i32) (block (call $check @@ -1698,7 +1698,7 @@ ) ) ) - (func $two-blocks-plus-code (; 3 ;) (type $v) + (func $two-blocks-plus-code (; 3 ;) (local $0 i32) (block (block @@ -1714,7 +1714,7 @@ ) ) ) - (func $loop (; 4 ;) (type $v) + (func $loop (; 4 ;) (local $0 i32) (loop $shape$0$continue (block @@ -1730,7 +1730,7 @@ ) ) ) - (func $loop-plus-code (; 5 ;) (type $v) + (func $loop-plus-code (; 5 ;) (local $0 i32) (loop $shape$0$continue (block @@ -1754,7 +1754,7 @@ ) ) ) - (func $split (; 6 ;) (type $v) + (func $split (; 6 ;) (local $0 i32) (call $check (i32.const 0) @@ -1773,7 +1773,7 @@ ) ) ) - (func $split-plus-code (; 7 ;) (type $v) + (func $split-plus-code (; 7 ;) (local $0 i32) (call $check (i32.const 0) @@ -1802,7 +1802,7 @@ ) ) ) - (func $if (; 8 ;) (type $v) + (func $if (; 8 ;) (local $0 i32) (block $block$3$break (call $check @@ -1827,7 +1827,7 @@ ) ) ) - (func $if-plus-code (; 9 ;) (type $v) + (func $if-plus-code (; 9 ;) (local $0 i32) (block $block$3$break (call $check @@ -1865,7 +1865,7 @@ ) ) ) - (func $if-else (; 10 ;) (type $v) + (func $if-else (; 10 ;) (local $0 i32) (block $block$4$break (call $check @@ -1897,7 +1897,7 @@ ) ) ) - (func $loop-tail (; 11 ;) (type $v) + (func $loop-tail (; 11 ;) (local $0 i32) (block $block$3$break (loop $shape$0$continue @@ -1922,7 +1922,7 @@ ) ) ) - (func $nontrivial-loop-plus-phi-to-head (; 12 ;) (type $v) + (func $nontrivial-loop-plus-phi-to-head (; 12 ;) (local $0 i32) (block $block$2$break (call $check @@ -2009,7 +2009,7 @@ ) ) ) - (func $switch (; 13 ;) (type $v) + (func $switch (; 13 ;) (local $0 i32) (call $check (i32.const 0) @@ -2053,7 +2053,7 @@ (br $switch$1$leave) ) ) - (func $duffs-device (; 14 ;) (type $v) + (func $duffs-device (; 14 ;) (local $0 i32) (local $1 i32) (local $2 i64) @@ -2128,7 +2128,7 @@ ) ) ) - (func $return (; 15 ;) (type $i) (result i32) + (func $return (; 15 ;) (result i32) (local $0 i32) (block (call $check diff --git a/test/example/c-api-relooper-unreachable-if.cpp b/test/example/c-api-relooper-unreachable-if.cpp index 0cd4004c5..3b35221ec 100644 --- a/test/example/c-api-relooper-unreachable-if.cpp +++ b/test/example/c-api-relooper-unreachable-if.cpp @@ -6,7 +6,6 @@ #include "binaryen-c.h" int main() { - std::map<size_t, BinaryenFunctionTypeRef> functionTypes; std::map<size_t, BinaryenExpressionRef> expressions; std::map<size_t, BinaryenFunctionRef> functions; std::map<size_t, RelooperBlockRef> relooperBlocks; @@ -33,10 +32,6 @@ int main() { expressions[5] = BinaryenBlock(the_module, "bb0", children, 2, BinaryenTypeAuto()); } relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[5]); - { - BinaryenType paramTypes[] = {BinaryenTypeNone()}; - functionTypes[0] = BinaryenAddFunctionType(the_module, "rustfn-0-40", BinaryenTypeNone(), paramTypes, 0); - } expressions[6] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[7] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[6]); expressions[8] = BinaryenLocalSet(the_module, 0, expressions[7]); @@ -46,7 +41,13 @@ int main() { { BinaryenType varTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[0] = BinaryenAddFunction(the_module, "tinycore::eh_personality", functionTypes[0], varTypes, 3, expressions[9]); + functions[0] = BinaryenAddFunction(the_module, + "tinycore::eh_personality", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 3, + expressions[9]); } BinaryenAddFunctionExport(the_module, "tinycore::eh_personality", "tinycore::eh_personality"); the_relooper = RelooperCreate(the_module); @@ -69,7 +70,13 @@ int main() { { BinaryenType varTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[1] = BinaryenAddFunction(the_module, "tinycore::eh_unwind_resume", functionTypes[0], varTypes, 3, expressions[18]); + functions[1] = BinaryenAddFunction(the_module, + "tinycore::eh_unwind_resume", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 3, + expressions[18]); } BinaryenAddFunctionExport(the_module, "tinycore::eh_unwind_resume", "tinycore::eh_unwind_resume"); the_relooper = RelooperCreate(the_module); @@ -85,10 +92,6 @@ int main() { relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[20]); RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); RelooperAddBranch(relooperBlocks[1], relooperBlocks[1], expressions[0], expressions[0]); - { - BinaryenType paramTypes[] = {BinaryenTypeNone()}; - functionTypes[1] = BinaryenAddFunctionType(the_module, "rustfn-0-42", BinaryenTypeNone(), paramTypes, 0); - } expressions[21] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[22] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[21]); expressions[23] = BinaryenLocalSet(the_module, 0, expressions[22]); @@ -98,7 +101,13 @@ int main() { { BinaryenType varTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[2] = BinaryenAddFunction(the_module, "tinycore::panic_fmt", functionTypes[1], varTypes, 3, expressions[24]); + functions[2] = BinaryenAddFunction(the_module, + "tinycore::panic_fmt", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 3, + expressions[24]); } BinaryenAddFunctionExport(the_module, "tinycore::panic_fmt", "tinycore::panic_fmt"); the_relooper = RelooperCreate(the_module); @@ -121,7 +130,13 @@ int main() { { BinaryenType varTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[3] = BinaryenAddFunction(the_module, "tinycore::rust_eh_register_frames", functionTypes[0], varTypes, 3, expressions[33]); + functions[3] = BinaryenAddFunction(the_module, + "tinycore::rust_eh_register_frames", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 3, + expressions[33]); } BinaryenAddFunctionExport(the_module, "tinycore::rust_eh_register_frames", "tinycore::rust_eh_register_frames"); the_relooper = RelooperCreate(the_module); @@ -144,7 +159,13 @@ int main() { { BinaryenType varTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[4] = BinaryenAddFunction(the_module, "tinycore::rust_eh_unregister_frames", functionTypes[0], varTypes, 3, expressions[42]); + functions[4] = BinaryenAddFunction(the_module, + "tinycore::rust_eh_unregister_frames", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 3, + expressions[42]); } BinaryenAddFunctionExport(the_module, "tinycore::rust_eh_unregister_frames", "tinycore::rust_eh_unregister_frames"); the_relooper = RelooperCreate(the_module); @@ -152,11 +173,12 @@ int main() { expressions[44] = BinaryenLocalSet(the_module, 1, expressions[43]); expressions[45] = BinaryenLocalGet(the_module, 1, BinaryenTypeInt32()); expressions[46] = BinaryenLocalSet(the_module, 2, expressions[45]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt32()}; - functionTypes[2] = BinaryenAddFunctionType(the_module, "print_i32", BinaryenTypeNone(), paramTypes, 1); - } - BinaryenAddFunctionImport(the_module, "print_i32", "spectest", "print", functionTypes[2]); + BinaryenAddFunctionImport(the_module, + "print_i32", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); expressions[47] = BinaryenLocalGet(the_module, 2, BinaryenTypeInt32()); { BinaryenExpressionRef operands[] = { expressions[47] }; @@ -178,10 +200,6 @@ int main() { } relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[54]); RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt32()}; - functionTypes[3] = BinaryenAddFunctionType(the_module, "rustfn-0-49", BinaryenTypeNone(), paramTypes, 1); - } expressions[55] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[56] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[55]); expressions[57] = BinaryenLocalSet(the_module, 3, expressions[56]); @@ -194,7 +212,13 @@ int main() { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[5] = BinaryenAddFunction(the_module, "wasm::print_i32", functionTypes[3], varTypes, 5, expressions[58]); + functions[5] = BinaryenAddFunction(the_module, + "wasm::print_i32", + BinaryenTypeInt32(), + BinaryenTypeNone(), + varTypes, + 5, + expressions[58]); } BinaryenAddFunctionExport(the_module, "wasm::print_i32", "wasm::print_i32"); the_relooper = RelooperCreate(the_module); @@ -255,10 +279,6 @@ int main() { expressions[100] = BinaryenUnreachable(the_module); relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[100]); RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); - { - BinaryenType paramTypes[] = {BinaryenTypeNone()}; - functionTypes[4] = BinaryenAddFunctionType(the_module, "rustfn-0-54", BinaryenTypeInt32(), paramTypes, 0); - } expressions[101] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[102] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[101]); expressions[103] = BinaryenLocalSet(the_module, 6, expressions[102]); @@ -275,7 +295,13 @@ int main() { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[6] = BinaryenAddFunction(the_module, "real_main", functionTypes[4], varTypes, 9, expressions[104]); + functions[6] = BinaryenAddFunction(the_module, + "real_main", + BinaryenTypeNone(), + BinaryenTypeInt32(), + varTypes, + 9, + expressions[104]); } BinaryenAddFunctionExport(the_module, "real_main", "real_main"); the_relooper = RelooperCreate(the_module); @@ -378,10 +404,6 @@ int main() { relooperBlocks[4] = RelooperAddBlock(the_relooper, expressions[152]); RelooperAddBranch(relooperBlocks[1], relooperBlocks[4], expressions[0], expressions[0]); RelooperAddBranch(relooperBlocks[2], relooperBlocks[3], expressions[0], expressions[0]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; - functionTypes[5] = BinaryenAddFunctionType(the_module, "rustfn-0-57", BinaryenTypeInt32(), paramTypes, 2); - } expressions[153] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[154] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[153]); expressions[155] = BinaryenLocalSet(the_module, 9, expressions[154]); @@ -399,14 +421,18 @@ int main() { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[7] = BinaryenAddFunction(the_module, "main", functionTypes[5], varTypes, 10, expressions[156]); + BinaryenType ii_[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; + BinaryenType ii = BinaryenTypeCreate(ii_, 2); + functions[7] = BinaryenAddFunction(the_module, + "main", + ii, + BinaryenTypeInt32(), + varTypes, + 10, + expressions[156]); } BinaryenAddFunctionExport(the_module, "main", "main"); { - BinaryenType paramTypes[] = {BinaryenTypeNone()}; - functionTypes[6] = BinaryenAddFunctionType(the_module, "__wasm_start", BinaryenTypeNone(), paramTypes, 0); - } - { const char* segments[] = { 0 }; BinaryenExpressionRef segmentOffsets[] = { 0 }; int8_t segmentPassive[] = { 0 }; @@ -437,7 +463,13 @@ int main() { BinaryenAddFunctionExport(the_module, "__wasm_start", "rust_entry"); { BinaryenType varTypes[] = {BinaryenTypeNone()}; - functions[8] = BinaryenAddFunction(the_module, "__wasm_start", functionTypes[6], varTypes, 0, expressions[164]); + functions[8] = BinaryenAddFunction(the_module, + "__wasm_start", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 0, + expressions[164]); } BinaryenSetStart(the_module, functions[8]); the_relooper = RelooperCreate(the_module); @@ -518,10 +550,6 @@ int main() { expressions[206] = BinaryenUnreachable(the_module); relooperBlocks[2] = RelooperAddBlock(the_relooper, expressions[206]); RelooperAddBranch(relooperBlocks[0], relooperBlocks[2], expressions[0], expressions[0]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; - functionTypes[7] = BinaryenAddFunctionType(the_module, "rustfn-0-13", BinaryenTypeInt32(), paramTypes, 2); - } expressions[207] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[208] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[207]); expressions[209] = BinaryenLocalSet(the_module, 8, expressions[208]); @@ -538,7 +566,15 @@ int main() { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[9] = BinaryenAddFunction(the_module, "_isize_as_tinycore::Add_::add", functionTypes[7], varTypes, 9, expressions[210]); + BinaryenType ii_[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; + BinaryenType ii = BinaryenTypeCreate(ii_, 2); + functions[9] = BinaryenAddFunction(the_module, + "_isize_as_tinycore::Add_::add", + ii, + BinaryenTypeInt32(), + varTypes, + 9, + expressions[210]); } BinaryenAddFunctionExport(the_module, "_isize_as_tinycore::Add_::add", "_isize_as_tinycore::Add_::add"); the_relooper = RelooperCreate(the_module); @@ -565,10 +601,6 @@ int main() { expressions[223] = BinaryenBlock(the_module, "bb0", children, 5, BinaryenTypeAuto()); } relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[223]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt32()}; - functionTypes[8] = BinaryenAddFunctionType(the_module, "rustfn-0-22", BinaryenTypeInt32(), paramTypes, 1); - } expressions[224] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[225] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[224]); expressions[226] = BinaryenLocalSet(the_module, 4, expressions[225]); @@ -582,7 +614,13 @@ int main() { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[10] = BinaryenAddFunction(the_module, "_bool_as_tinycore::Not_::not", functionTypes[8], varTypes, 6, expressions[227]); + functions[10] = BinaryenAddFunction(the_module, + "_bool_as_tinycore::Not_::not", + BinaryenTypeInt32(), + BinaryenTypeInt32(), + varTypes, + 6, + expressions[227]); } BinaryenAddFunctionExport(the_module, "_bool_as_tinycore::Not_::not", "_bool_as_tinycore::Not_::not"); the_relooper = RelooperCreate(the_module); @@ -614,10 +652,6 @@ int main() { expressions[245] = BinaryenBlock(the_module, "bb0", children, 7, BinaryenTypeAuto()); } relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[245]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; - functionTypes[9] = BinaryenAddFunctionType(the_module, "rustfn-0-33", BinaryenTypeInt32(), paramTypes, 2); - } expressions[246] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[247] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[246]); expressions[248] = BinaryenLocalSet(the_module, 7, expressions[247]); @@ -633,7 +667,15 @@ int main() { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[11] = BinaryenAddFunction(the_module, "_i16_as_tinycore::PartialEq_::eq", functionTypes[9], varTypes, 8, expressions[249]); + BinaryenType ii_[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; + BinaryenType ii = BinaryenTypeCreate(ii_, 2); + functions[11] = BinaryenAddFunction(the_module, + "_i16_as_tinycore::PartialEq_::eq", + ii, + BinaryenTypeInt32(), + varTypes, + 8, + expressions[249]); } BinaryenAddFunctionExport(the_module, "_i16_as_tinycore::PartialEq_::eq", "_i16_as_tinycore::PartialEq_::eq"); the_relooper = RelooperCreate(the_module); @@ -665,10 +707,6 @@ int main() { expressions[267] = BinaryenBlock(the_module, "bb0", children, 7, BinaryenTypeAuto()); } relooperBlocks[0] = RelooperAddBlock(the_relooper, expressions[267]); - { - BinaryenType paramTypes[] = {BinaryenTypeInt64(), BinaryenTypeInt64()}; - functionTypes[10] = BinaryenAddFunctionType(the_module, "rustfn-0-37", BinaryenTypeInt32(), paramTypes, 2); - } expressions[268] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[269] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt64(), expressions[268]); expressions[270] = BinaryenLocalSet(the_module, 7, expressions[269]); @@ -684,12 +722,19 @@ int main() { BinaryenTypeInt64(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[12] = BinaryenAddFunction(the_module, "_i64_as_tinycore::PartialEq_::eq", functionTypes[10], varTypes, 8, expressions[271]); + BinaryenType ii_[2] = {BinaryenTypeInt64(), BinaryenTypeInt64()}; + BinaryenType ii = BinaryenTypeCreate(ii_, 2); + functions[12] = BinaryenAddFunction(the_module, + "_i64_as_tinycore::PartialEq_::eq", + ii, + BinaryenTypeInt32(), + varTypes, + 8, + expressions[271]); } BinaryenAddFunctionExport(the_module, "_i64_as_tinycore::PartialEq_::eq", "_i64_as_tinycore::PartialEq_::eq"); assert(BinaryenModuleValidate(the_module)); BinaryenModuleDispose(the_module); - functionTypes.clear(); expressions.clear(); functions.clear(); relooperBlocks.clear(); diff --git a/test/example/c-api-unused-mem.cpp b/test/example/c-api-unused-mem.cpp index 3ca6f49e2..17e8004eb 100644 --- a/test/example/c-api-unused-mem.cpp +++ b/test/example/c-api-unused-mem.cpp @@ -7,7 +7,6 @@ #include "binaryen-c.h" int main() { - std::map<size_t, BinaryenFunctionTypeRef> functionTypes; std::map<size_t, BinaryenExpressionRef> expressions; std::map<size_t, BinaryenFunctionRef> functions; std::map<size_t, RelooperBlockRef> relooperBlocks; @@ -40,10 +39,6 @@ int main() { } relooperBlocks[1] = RelooperAddBlock(the_relooper, expressions[6]); RelooperAddBranch(relooperBlocks[0], relooperBlocks[1], expressions[0], expressions[0]); - { - BinaryenType paramTypes[] = {BinaryenTypeNone()}; - functionTypes[0] = BinaryenAddFunctionType(the_module, "rustfn-0-3", BinaryenTypeNone(), paramTypes, 0); - } expressions[7] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); expressions[8] = BinaryenLoad(the_module, 4, 0, 0, 0, BinaryenTypeInt32(), expressions[7]); @@ -54,14 +49,16 @@ int main() { { BinaryenType varTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32(), BinaryenTypeInt64()}; - functions[0] = BinaryenAddFunction(the_module, "main", functionTypes[0], varTypes, 3, expressions[10]); + functions[0] = BinaryenAddFunction(the_module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 3, + expressions[10]); } BinaryenAddFunctionExport(the_module, "main", "main"); { - BinaryenType paramTypes[] = {BinaryenTypeNone()}; - functionTypes[1] = BinaryenAddFunctionType(the_module, "__wasm_start", BinaryenTypeNone(), paramTypes, 0); - } - { const char* segments[] = { 0 }; int8_t segmentPassive[] = { 0 }; BinaryenExpressionRef segmentOffsets[] = { 0 }; @@ -83,7 +80,13 @@ int main() { BinaryenAddFunctionExport(the_module, "__wasm_start", "rust_entry"); { BinaryenType varTypes[] = {BinaryenTypeNone()}; - functions[1] = BinaryenAddFunction(the_module, "__wasm_start", functionTypes[1], varTypes, 0, expressions[15]); + functions[1] = BinaryenAddFunction(the_module, + "__wasm_start", + BinaryenTypeNone(), + BinaryenTypeNone(), + varTypes, + 0, + expressions[15]); } assert(BinaryenModuleValidate(the_module)); BinaryenModulePrint(the_module); diff --git a/test/example/c-api-unused-mem.txt b/test/example/c-api-unused-mem.txt index 56cd3a948..6a4188994 100644 --- a/test/example/c-api-unused-mem.txt +++ b/test/example/c-api-unused-mem.txt @@ -1,11 +1,10 @@ (module - (type $rustfn-0-3 (func)) - (type $__wasm_start (func)) + (type $none_=>_none (func)) (memory $0 1024 1024) (export "memory" (memory $0)) (export "main" (func $main)) (export "rust_entry" (func $__wasm_start)) - (func $main (; 0 ;) (type $rustfn-0-3) + (func $main (; 0 ;) (local $0 i32) (local $1 i32) (local $2 i64) @@ -29,7 +28,7 @@ ) ) ) - (func $__wasm_start (; 1 ;) (type $__wasm_start) + (func $__wasm_start (; 1 ;) (i32.store (i32.const 0) (i32.const 65535) @@ -39,12 +38,12 @@ ) 148 (module - (type $0 (func)) + (type $none_=>_none (func)) (memory $0 1024 1024) (export "memory" (memory $0)) (export "main" (func $main)) (export "rust_entry" (func $__wasm_start)) - (func $main (; 0 ;) (type $0) + (func $main (; 0 ;) (local $0 i32) (local $1 i32) (local $2 i64) @@ -69,7 +68,7 @@ (unreachable) ) ) - (func $__wasm_start (; 1 ;) (type $0) + (func $__wasm_start (; 1 ;) (i32.store (i32.const 0) (i32.const 65535) diff --git a/test/example/cpp-threads.cpp b/test/example/cpp-threads.cpp index 72724d8b6..e59bd5243 100644 --- a/test/example/cpp-threads.cpp +++ b/test/example/cpp-threads.cpp @@ -13,8 +13,8 @@ void worker() { BinaryenModuleRef module = BinaryenModuleCreate(); // Create a function type for i32 (i32, i32) - BinaryenType params[2] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionTypeRef iii = BinaryenAddFunctionType(module, "iii", BinaryenTypeInt32(), params, 2); + BinaryenType ii_[2] = {BinaryenTypeInt32(), BinaryenTypeInt32()}; + BinaryenType ii = BinaryenTypeCreate(ii_, 2); // Get the 0 and 1 arguments, and add them BinaryenExpressionRef x = BinaryenLocalGet(module, 0, BinaryenTypeInt32()), @@ -25,7 +25,8 @@ void worker() { // Create the add function // Note: no additional local variables // Note: no basic blocks here, we are an AST. The function body is just an expression node. - BinaryenFunctionRef adder = BinaryenAddFunction(module, "adder", iii, NULL, 0, ret); + BinaryenFunctionRef adder = + BinaryenAddFunction(module, "adder", ii, BinaryenTypeInt32(), NULL, 0, ret); // validate it assert(BinaryenModuleValidate(module)); @@ -38,8 +39,7 @@ void worker() { BinaryenModuleDispose(module); } -int main() -{ +int main() { std::vector<std::thread> threads; std::cout << "create threads...\n"; diff --git a/test/example/relooper-fuzz.c b/test/example/relooper-fuzz.c index 5691c5660..4a6330e6e 100644 --- a/test/example/relooper-fuzz.c +++ b/test/example/relooper-fuzz.c @@ -57,8 +57,13 @@ int main() { ); BinaryenExpressionRef checkBodyList[] = { halter, incer, debugger, returner }; BinaryenExpressionRef checkBody = BinaryenBlock(module, NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeAuto()); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", BinaryenTypeInt32(), NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -244,16 +249,20 @@ int main() { full[numDecisions] = body; BinaryenExpressionRef all = BinaryenBlock(module, NULL, full, numDecisions + 1, BinaryenTypeAuto()); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", BinaryenTypeNone(), NULL, 0); BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; // state, free-for-label - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, localTypes, 2, all); + BinaryenFunctionRef theMain = BinaryenAddFunction( + module, "main", BinaryenTypeNone(), BinaryenTypeNone(), localTypes, 2, all); BinaryenSetStart(module, theMain); // import BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", BinaryenTypeNone(), iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-fuzz.txt b/test/example/relooper-fuzz.txt index 1a61c71b1..950ba0d0f 100644 --- a/test/example/relooper-fuzz.txt +++ b/test/example/relooper-fuzz.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.eq (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (i32.store @@ -292,14 +292,14 @@ ) ) (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (; has Stack IR ;) (type $i) (result i32) + (func $check (; 1 ;) (; has Stack IR ;) (result i32) (if (i32.eq (i32.load @@ -334,7 +334,7 @@ ) ) ) - (func $main (; 2 ;) (; has Stack IR ;) (type $v) + (func $main (; 2 ;) (; has Stack IR ;) (local $0 i32) (local $1 i32) (i32.store diff --git a/test/example/relooper-fuzz1.c b/test/example/relooper-fuzz1.c index 55271356c..f4a049697 100644 --- a/test/example/relooper-fuzz1.c +++ b/test/example/relooper-fuzz1.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeAuto() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -309,22 +310,19 @@ int main() { numDecisions + 1, BinaryenTypeAuto()); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, all); + BinaryenFunctionRef theMain = BinaryenAddFunction( + module, "main", BinaryenTypeNone(), BinaryenTypeNone(), localTypes, 2, all); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-fuzz1.txt b/test/example/relooper-fuzz1.txt index dfdc0b08e..213d46230 100644 --- a/test/example/relooper-fuzz1.txt +++ b/test/example/relooper-fuzz1.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.eq (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (i32.store @@ -268,14 +268,14 @@ ) ) (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (; has Stack IR ;) (type $i) (result i32) + (func $check (; 1 ;) (; has Stack IR ;) (result i32) (if (i32.eq (i32.load @@ -310,7 +310,7 @@ ) ) ) - (func $main (; 2 ;) (; has Stack IR ;) (type $v) + (func $main (; 2 ;) (; has Stack IR ;) (local $0 i32) (i32.store (i32.const 8) diff --git a/test/example/relooper-fuzz2.c b/test/example/relooper-fuzz2.c index 4d5af6759..217aaf9fa 100644 --- a/test/example/relooper-fuzz2.c +++ b/test/example/relooper-fuzz2.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -240,215 +241,357 @@ int main() { } - RelooperAddBranch(b0, b1, NULL, - BinaryenStore(module, - 4, 0, 0, + RelooperAddBranch( + b0, + b1, + NULL, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 4)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranch(b1, b1, NULL, - BinaryenStore(module, - 4, 0, 0, + BinaryenConst(module, BinaryenLiteralInt32(4 * 4))), + BinaryenTypeInt32())); + + RelooperAddBranch( + b1, + b1, + NULL, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 4)) - ), - BinaryenTypeInt32() - )); + BinaryenConst(module, BinaryenLiteralInt32(4 * 4))), + BinaryenTypeInt32())); { BinaryenIndex values[] = { 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86 }; - RelooperAddBranchForSwitch(b2, b7, values, - sizeof(values) / sizeof(BinaryenIndex), - BinaryenStore(module, - 4, 0, 0, - BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, - BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), - BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 6)) - ), - BinaryenTypeInt32() - )); + RelooperAddBranchForSwitch( + b2, + b7, + values, + sizeof(values) / sizeof(BinaryenIndex), + BinaryenStore( + module, + 4, + 0, + 0, + BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenBinary( + module, + BinaryenAddInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), + BinaryenConst(module, BinaryenLiteralInt32(4))), + BinaryenConst(module, BinaryenLiteralInt32(4 * 6))), + BinaryenTypeInt32())); } - RelooperAddBranchForSwitch(b2, b4, NULL, 0, - BinaryenStore(module, - 4, 0, 0, + RelooperAddBranchForSwitch( + b2, + b4, + NULL, + 0, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 4)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranchForSwitch(b3, b6, NULL, 0, - BinaryenStore(module, - 4, 0, 0, + BinaryenConst(module, BinaryenLiteralInt32(4 * 4))), + BinaryenTypeInt32())); + + RelooperAddBranchForSwitch( + b3, + b6, + NULL, + 0, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 5)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranch(b4, b7, BinaryenBinary(module, - BinaryenEqInt32(), - BinaryenBinary(module, - BinaryenRemUInt32(), - BinaryenLocalGet(module, 0, BinaryenTypeInt32()), - BinaryenConst(module, BinaryenLiteralInt32(2)) - ), - BinaryenConst(module, BinaryenLiteralInt32(0)) - ), - BinaryenStore(module, - 4, 0, 0, - BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenConst(module, BinaryenLiteralInt32(4 * 5))), + BinaryenTypeInt32())); + + RelooperAddBranch( + b4, + b7, + BinaryenBinary( + module, + BinaryenEqInt32(), BinaryenBinary(module, + BinaryenRemUInt32(), + BinaryenLocalGet(module, 0, BinaryenTypeInt32()), + BinaryenConst(module, BinaryenLiteralInt32(2))), + BinaryenConst(module, BinaryenLiteralInt32(0))), + BinaryenStore( + module, + 4, + 0, + 0, + BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 5)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranch(b4, b3, NULL, - BinaryenStore(module, - 4, 0, 0, + BinaryenConst(module, BinaryenLiteralInt32(4 * 5))), + BinaryenTypeInt32())); + + RelooperAddBranch( + b4, + b3, + NULL, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 3)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranchForSwitch(b5, b1, NULL, 0, - BinaryenStore(module, - 4, 0, 0, + BinaryenConst(module, BinaryenLiteralInt32(4 * 3))), + BinaryenTypeInt32())); + + RelooperAddBranchForSwitch( + b5, + b1, + NULL, + 0, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 4)) - ), - BinaryenTypeInt32() - )); + BinaryenConst(module, BinaryenLiteralInt32(4 * 4))), + BinaryenTypeInt32())); { BinaryenIndex values[] = { 0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99,102,105,108 }; - RelooperAddBranchForSwitch(b6, b1, values, - sizeof(values) / sizeof(BinaryenIndex), - BinaryenStore(module, - 4, 0, 0, - BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, - BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), - BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 2)) - ), - BinaryenTypeInt32() - )); + RelooperAddBranchForSwitch( + b6, + b1, + values, + sizeof(values) / sizeof(BinaryenIndex), + BinaryenStore( + module, + 4, + 0, + 0, + BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenBinary( + module, + BinaryenAddInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), + BinaryenConst(module, BinaryenLiteralInt32(4))), + BinaryenConst(module, BinaryenLiteralInt32(4 * 2))), + BinaryenTypeInt32())); } { BinaryenIndex values[] = { 1,4,7,10,13,16,19,22,25,28,31,34,37,40,43,46,49,52,55,58,61,64,67,70,73,76,79,82,85,88,91,94,97,100,103,106,109,112,115,118,121,124,127,130,133,136,139,142,145,148,151,154,157,160 }; - RelooperAddBranchForSwitch(b6, b7, values, - sizeof(values) / sizeof(BinaryenIndex), - BinaryenStore(module, - 4, 0, 0, - BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, - BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), - BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 3)) - ), - BinaryenTypeInt32() - )); + RelooperAddBranchForSwitch( + b6, + b7, + values, + sizeof(values) / sizeof(BinaryenIndex), + BinaryenStore( + module, + 4, + 0, + 0, + BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenBinary( + module, + BinaryenAddInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), + BinaryenConst(module, BinaryenLiteralInt32(4))), + BinaryenConst(module, BinaryenLiteralInt32(4 * 3))), + BinaryenTypeInt32())); } - RelooperAddBranchForSwitch(b6, b2, NULL, 0, - BinaryenStore(module, - 4, 0, 0, + RelooperAddBranchForSwitch( + b6, + b2, + NULL, + 0, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 3)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranch(b7, b5, BinaryenBinary(module, - BinaryenEqInt32(), - BinaryenBinary(module, - BinaryenRemUInt32(), - BinaryenLocalGet(module, 0, BinaryenTypeInt32()), - BinaryenConst(module, BinaryenLiteralInt32(2)) - ), - BinaryenConst(module, BinaryenLiteralInt32(0)) - ), - BinaryenStore(module, - 4, 0, 0, - BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenConst(module, BinaryenLiteralInt32(4 * 3))), + BinaryenTypeInt32())); + + RelooperAddBranch( + b7, + b5, + BinaryenBinary( + module, + BinaryenEqInt32(), BinaryenBinary(module, + BinaryenRemUInt32(), + BinaryenLocalGet(module, 0, BinaryenTypeInt32()), + BinaryenConst(module, BinaryenLiteralInt32(2))), + BinaryenConst(module, BinaryenLiteralInt32(0))), + BinaryenStore( + module, + 4, + 0, + 0, + BinaryenConst(module, BinaryenLiteralInt32(4)), + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 1)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranch(b7, b1, NULL, - BinaryenStore(module, - 4, 0, 0, + BinaryenConst(module, BinaryenLiteralInt32(4 * 1))), + BinaryenTypeInt32())); + + RelooperAddBranch( + b7, + b1, + NULL, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 4)) - ), - BinaryenTypeInt32() - )); - - RelooperAddBranch(b8, b8, NULL, - BinaryenStore(module, - 4, 0, 0, + BinaryenConst(module, BinaryenLiteralInt32(4 * 4))), + BinaryenTypeInt32())); + + RelooperAddBranch( + b8, + b8, + NULL, + BinaryenStore( + module, + 4, + 0, + 0, BinaryenConst(module, BinaryenLiteralInt32(4)), - BinaryenBinary(module, + BinaryenBinary( + module, BinaryenAddInt32(), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), + BinaryenLoad(module, + 4, + 0, + 0, + 0, + BinaryenTypeInt32(), BinaryenConst(module, BinaryenLiteralInt32(4))), - BinaryenConst(module, BinaryenLiteralInt32(4 * 2)) - ), - BinaryenTypeInt32() - )); + BinaryenConst(module, BinaryenLiteralInt32(4 * 2))), + BinaryenTypeInt32())); BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); @@ -474,22 +617,19 @@ int main() { numDecisions + 1, BinaryenTypeNone()); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, all); + BinaryenFunctionRef theMain = BinaryenAddFunction( + module, "main", BinaryenTypeNone(), BinaryenTypeNone(), localTypes, 2, all); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-fuzz2.txt b/test/example/relooper-fuzz2.txt index 6ceb1f9cf..17e9461e7 100644 --- a/test/example/relooper-fuzz2.txt +++ b/test/example/relooper-fuzz2.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (i32.store diff --git a/test/example/relooper-merge1.c b/test/example/relooper-merge1.c index 320e73efa..68796a6f6 100644 --- a/test/example/relooper-merge1.c +++ b/test/example/relooper-merge1.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -176,22 +177,24 @@ int main() { BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, body); + BinaryenFunctionRef theMain = BinaryenAddFunction(module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 2, + body); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-merge1.txt b/test/example/relooper-merge1.txt index 87f91523f..913570949 100644 --- a/test/example/relooper-merge1.txt +++ b/test/example/relooper-merge1.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (block diff --git a/test/example/relooper-merge2.c b/test/example/relooper-merge2.c index 9387d572b..c4ac11a14 100644 --- a/test/example/relooper-merge2.c +++ b/test/example/relooper-merge2.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -188,22 +189,24 @@ int main() { BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, body); + BinaryenFunctionRef theMain = BinaryenAddFunction(module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 2, + body); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-merge2.txt b/test/example/relooper-merge2.txt index e11281f5d..a1f12b61a 100644 --- a/test/example/relooper-merge2.txt +++ b/test/example/relooper-merge2.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (block diff --git a/test/example/relooper-merge3.c b/test/example/relooper-merge3.c index 1bb650391..276ab3c3c 100644 --- a/test/example/relooper-merge3.c +++ b/test/example/relooper-merge3.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -175,22 +176,24 @@ int main() { BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, body); + BinaryenFunctionRef theMain = BinaryenAddFunction(module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 2, + body); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-merge3.txt b/test/example/relooper-merge3.txt index 32c669a06..8975a9967 100644 --- a/test/example/relooper-merge3.txt +++ b/test/example/relooper-merge3.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (block diff --git a/test/example/relooper-merge4.c b/test/example/relooper-merge4.c index 86ba272f2..b168a2db6 100644 --- a/test/example/relooper-merge4.c +++ b/test/example/relooper-merge4.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -175,22 +176,24 @@ int main() { BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, body); + BinaryenFunctionRef theMain = BinaryenAddFunction(module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 2, + body); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-merge4.txt b/test/example/relooper-merge4.txt index ff3c75881..b6d560555 100644 --- a/test/example/relooper-merge4.txt +++ b/test/example/relooper-merge4.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (block diff --git a/test/example/relooper-merge5.c b/test/example/relooper-merge5.c index 67048159f..deee2afee 100644 --- a/test/example/relooper-merge5.c +++ b/test/example/relooper-merge5.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -175,22 +176,24 @@ int main() { BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, body); + BinaryenFunctionRef theMain = BinaryenAddFunction(module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 2, + body); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-merge5.txt b/test/example/relooper-merge5.txt index bd3a68310..9b5a752c8 100644 --- a/test/example/relooper-merge5.txt +++ b/test/example/relooper-merge5.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (block diff --git a/test/example/relooper-merge6.c b/test/example/relooper-merge6.c index d51504d68..a9b26e8e1 100644 --- a/test/example/relooper-merge6.c +++ b/test/example/relooper-merge6.c @@ -1,5 +1,3 @@ - - #include <assert.h> #include <stdio.h> @@ -67,10 +65,13 @@ int main() { NULL, checkBodyList, sizeof(checkBodyList) / sizeof(BinaryenExpressionRef), BinaryenTypeInt32() ); - BinaryenFunctionTypeRef i = BinaryenAddFunctionType(module, "i", - BinaryenTypeInt32(), - NULL, 0); - BinaryenAddFunction(module, "check", i, NULL, 0, checkBody); + BinaryenAddFunction(module, + "check", + BinaryenTypeNone(), + BinaryenTypeInt32(), + NULL, + 0, + checkBody); // contents of main() begin here @@ -166,22 +167,24 @@ int main() { BinaryenExpressionRef body = RelooperRenderAndDispose(relooper, b0, 1); - BinaryenFunctionTypeRef v = BinaryenAddFunctionType(module, "v", - BinaryenTypeNone(), - NULL, 0); // locals: state, free-for-label BinaryenType localTypes[] = { BinaryenTypeInt32(), BinaryenTypeInt32() }; - BinaryenFunctionRef theMain = BinaryenAddFunction(module, "main", v, - localTypes, 2, body); + BinaryenFunctionRef theMain = BinaryenAddFunction(module, + "main", + BinaryenTypeNone(), + BinaryenTypeNone(), + localTypes, + 2, + body); BinaryenSetStart(module, theMain); // import - - BinaryenType iparams[] = { BinaryenTypeInt32() }; - BinaryenFunctionTypeRef vi = BinaryenAddFunctionType(module, "vi", - BinaryenTypeNone(), - iparams, 1); - BinaryenAddFunctionImport(module, "print", "spectest", "print", vi); + BinaryenAddFunctionImport(module, + "print", + "spectest", + "print", + BinaryenTypeInt32(), + BinaryenTypeNone()); // memory BinaryenSetMemory(module, 1, 1, "mem", NULL, NULL, NULL, NULL, 0, 0); diff --git a/test/example/relooper-merge6.txt b/test/example/relooper-merge6.txt index 67d99802c..d34029759 100644 --- a/test/example/relooper-merge6.txt +++ b/test/example/relooper-merge6.txt @@ -1,12 +1,12 @@ (module - (type $i (func (result i32))) - (type $v (func)) - (type $vi (func (param i32))) + (type $none_=>_none (func)) + (type $i32_=>_none (func (param i32))) + (type $none_=>_i32 (func (result i32))) (import "spectest" "print" (func $print (param i32))) (memory $0 1 1) (export "mem" (memory $0)) (start $main) - (func $check (; 1 ;) (type $i) (result i32) + (func $check (; 1 ;) (result i32) (if (i32.ge_u (i32.load @@ -41,7 +41,7 @@ ) ) ) - (func $main (; 2 ;) (type $v) + (func $main (; 2 ;) (local $0 i32) (local $1 i32) (block |