diff options
Diffstat (limited to 'test/example')
-rw-r--r-- | test/example/c-api-kitchen-sink.c | 10 | ||||
-rw-r--r-- | test/example/c-api-kitchen-sink.txt | 289 | ||||
-rw-r--r-- | test/example/c-api-kitchen-sink.txt.txt | 20 |
3 files changed, 198 insertions, 121 deletions
diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c index 1c45b90b5..ae037a14d 100644 --- a/test/example/c-api-kitchen-sink.c +++ b/test/example/c-api-kitchen-sink.c @@ -1,4 +1,3 @@ - // We always need asserts here #ifdef NDEBUG #undef NDEBUG @@ -482,6 +481,15 @@ void test_core() { makeSIMDShift(module, BinaryenShlVecI64x2()), makeSIMDShift(module, BinaryenShrSVecI64x2()), makeSIMDShift(module, BinaryenShrUVecI64x2()), + // SIMD load + BinaryenSIMDLoad( + module, BinaryenLoadSplatVec8x16(), 0, 1, makeInt32(module, 128)), + BinaryenSIMDLoad( + module, BinaryenLoadSplatVec16x8(), 16, 1, makeInt32(module, 128)), + BinaryenSIMDLoad( + module, BinaryenLoadSplatVec32x4(), 16, 4, makeInt32(module, 128)), + BinaryenSIMDLoad( + module, BinaryenLoadSplatVec64x2(), 0, 4, makeInt32(module, 128)), // Other SIMD makeSIMDShuffle(module), makeSIMDTernary(module, BinaryenBitselectVec128()), diff --git a/test/example/c-api-kitchen-sink.txt b/test/example/c-api-kitchen-sink.txt index 040eb2b45..12e8887ae 100644 --- a/test/example/c-api-kitchen-sink.txt +++ b/test/example/c-api-kitchen-sink.txt @@ -1293,6 +1293,26 @@ BinaryenFeatureAll: 511 ) ) (drop + (v8x16.load_splat + (i32.const 128) + ) + ) + (drop + (v16x8.load_splat offset=16 align=1 + (i32.const 128) + ) + ) + (drop + (v32x4.load_splat offset=16 + (i32.const 128) + ) + ) + (drop + (v64x2.load_splat align=4 + (i32.const 128) + ) + ) + (drop (v8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) @@ -3390,177 +3410,185 @@ int main() { } expressions[618] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); expressions[619] = BinaryenSIMDShift(the_module, 11, expressions[617], expressions[618]); + expressions[620] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[621] = BinaryenSIMDLoad(the_module, 0, 0, 1, expressions[620]); + expressions[622] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[623] = BinaryenSIMDLoad(the_module, 1, 16, 1, expressions[622]); + expressions[624] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[625] = BinaryenSIMDLoad(the_module, 2, 16, 4, expressions[624]); + expressions[626] = BinaryenConst(the_module, BinaryenLiteralInt32(128)); + expressions[627] = BinaryenSIMDLoad(the_module, 3, 0, 4, expressions[626]); { uint8_t t222[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[620] = BinaryenConst(the_module, BinaryenLiteralVec128(t222)); + expressions[628] = 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[621] = BinaryenConst(the_module, BinaryenLiteralVec128(t223)); + expressions[629] = BinaryenConst(the_module, BinaryenLiteralVec128(t223)); } { uint8_t mask[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - expressions[622] = BinaryenSIMDShuffle(the_module, expressions[620], expressions[621], mask); + expressions[630] = BinaryenSIMDShuffle(the_module, expressions[628], expressions[629], mask); } { uint8_t t224[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[623] = BinaryenConst(the_module, BinaryenLiteralVec128(t224)); + expressions[631] = 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[624] = BinaryenConst(the_module, BinaryenLiteralVec128(t225)); + expressions[632] = 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[625] = BinaryenConst(the_module, BinaryenLiteralVec128(t226)); + expressions[633] = BinaryenConst(the_module, BinaryenLiteralVec128(t226)); } - expressions[626] = BinaryenSIMDTernary(the_module, 0, expressions[623], expressions[624], expressions[625]); + expressions[634] = BinaryenSIMDTernary(the_module, 0, expressions[631], expressions[632], expressions[633]); { uint8_t t227[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[627] = BinaryenConst(the_module, BinaryenLiteralVec128(t227)); + expressions[635] = BinaryenConst(the_module, BinaryenLiteralVec128(t227)); } { uint8_t t228[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[628] = BinaryenConst(the_module, BinaryenLiteralVec128(t228)); + expressions[636] = BinaryenConst(the_module, BinaryenLiteralVec128(t228)); } { uint8_t t229[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[629] = BinaryenConst(the_module, BinaryenLiteralVec128(t229)); + expressions[637] = BinaryenConst(the_module, BinaryenLiteralVec128(t229)); } - expressions[630] = BinaryenSIMDTernary(the_module, 1, expressions[627], expressions[628], expressions[629]); + expressions[638] = BinaryenSIMDTernary(the_module, 1, expressions[635], expressions[636], expressions[637]); { uint8_t t230[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[631] = BinaryenConst(the_module, BinaryenLiteralVec128(t230)); + expressions[639] = BinaryenConst(the_module, BinaryenLiteralVec128(t230)); } { uint8_t t231[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[632] = BinaryenConst(the_module, BinaryenLiteralVec128(t231)); + expressions[640] = BinaryenConst(the_module, BinaryenLiteralVec128(t231)); } { uint8_t t232[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[633] = BinaryenConst(the_module, BinaryenLiteralVec128(t232)); + expressions[641] = BinaryenConst(the_module, BinaryenLiteralVec128(t232)); } - expressions[634] = BinaryenSIMDTernary(the_module, 2, expressions[631], expressions[632], expressions[633]); + expressions[642] = BinaryenSIMDTernary(the_module, 2, expressions[639], expressions[640], expressions[641]); { uint8_t t233[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[635] = BinaryenConst(the_module, BinaryenLiteralVec128(t233)); + expressions[643] = BinaryenConst(the_module, BinaryenLiteralVec128(t233)); } { uint8_t t234[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[636] = BinaryenConst(the_module, BinaryenLiteralVec128(t234)); + expressions[644] = BinaryenConst(the_module, BinaryenLiteralVec128(t234)); } { uint8_t t235[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[637] = BinaryenConst(the_module, BinaryenLiteralVec128(t235)); + expressions[645] = BinaryenConst(the_module, BinaryenLiteralVec128(t235)); } - expressions[638] = BinaryenSIMDTernary(the_module, 3, expressions[635], expressions[636], expressions[637]); + expressions[646] = BinaryenSIMDTernary(the_module, 3, expressions[643], expressions[644], expressions[645]); { uint8_t t236[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[639] = BinaryenConst(the_module, BinaryenLiteralVec128(t236)); + expressions[647] = BinaryenConst(the_module, BinaryenLiteralVec128(t236)); } { uint8_t t237[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[640] = BinaryenConst(the_module, BinaryenLiteralVec128(t237)); + expressions[648] = BinaryenConst(the_module, BinaryenLiteralVec128(t237)); } { uint8_t t238[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - expressions[641] = BinaryenConst(the_module, BinaryenLiteralVec128(t238)); - } - expressions[642] = BinaryenSIMDTernary(the_module, 4, expressions[639], expressions[640], expressions[641]); - expressions[643] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); - expressions[644] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[645] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); - expressions[646] = BinaryenMemoryInit(the_module, 0, expressions[643], expressions[644], expressions[645]); - expressions[647] = BinaryenDataDrop(the_module, 0); - expressions[648] = BinaryenConst(the_module, BinaryenLiteralInt32(2048)); - expressions[649] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); - expressions[650] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); - expressions[651] = BinaryenMemoryCopy(the_module, expressions[648], expressions[649], expressions[650]); + expressions[649] = BinaryenConst(the_module, BinaryenLiteralVec128(t238)); + } + expressions[650] = BinaryenSIMDTernary(the_module, 4, expressions[647], expressions[648], expressions[649]); + expressions[651] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); expressions[652] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[653] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); - expressions[654] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); - expressions[655] = BinaryenMemoryFill(the_module, expressions[652], expressions[653], expressions[654]); + expressions[653] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); + expressions[654] = BinaryenMemoryInit(the_module, 0, expressions[651], expressions[652], expressions[653]); + expressions[655] = BinaryenDataDrop(the_module, 0); + expressions[656] = BinaryenConst(the_module, BinaryenLiteralInt32(2048)); + expressions[657] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); + expressions[658] = BinaryenConst(the_module, BinaryenLiteralInt32(12)); + expressions[659] = BinaryenMemoryCopy(the_module, expressions[656], expressions[657], expressions[658]); + expressions[660] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[661] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + expressions[662] = BinaryenConst(the_module, BinaryenLiteralInt32(1024)); + expressions[663] = BinaryenMemoryFill(the_module, expressions[660], expressions[661], expressions[662]); { BinaryenExpressionRef children[] = { 0 }; - expressions[656] = BinaryenBlock(the_module, NULL, children, 0, BinaryenTypeAuto()); - } - expressions[657] = BinaryenIf(the_module, expressions[18], expressions[19], expressions[20]); - expressions[658] = BinaryenIf(the_module, expressions[21], expressions[22], expressions[0]); - expressions[659] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[660] = BinaryenLoop(the_module, "in", expressions[659]); - expressions[661] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); - expressions[662] = BinaryenLoop(the_module, NULL, expressions[661]); - expressions[663] = BinaryenBreak(the_module, "the-value", expressions[23], expressions[24]); - expressions[664] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - expressions[665] = BinaryenBreak(the_module, "the-nothing", expressions[664], expressions[0]); - expressions[666] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); - expressions[667] = BinaryenBreak(the_module, "the-value", expressions[0], expressions[666]); - expressions[668] = BinaryenBreak(the_module, "the-nothing", expressions[0], expressions[0]); + expressions[664] = BinaryenBlock(the_module, NULL, children, 0, BinaryenTypeAuto()); + } + expressions[665] = BinaryenIf(the_module, expressions[18], expressions[19], expressions[20]); + expressions[666] = BinaryenIf(the_module, expressions[21], expressions[22], expressions[0]); + expressions[667] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[668] = BinaryenLoop(the_module, "in", expressions[667]); + expressions[669] = BinaryenConst(the_module, BinaryenLiteralInt32(0)); + expressions[670] = BinaryenLoop(the_module, NULL, expressions[669]); + expressions[671] = BinaryenBreak(the_module, "the-value", expressions[23], expressions[24]); + expressions[672] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + expressions[673] = BinaryenBreak(the_module, "the-nothing", expressions[672], expressions[0]); + expressions[674] = BinaryenConst(the_module, BinaryenLiteralInt32(3)); + expressions[675] = BinaryenBreak(the_module, "the-value", expressions[0], expressions[674]); + expressions[676] = BinaryenBreak(the_module, "the-nothing", expressions[0], expressions[0]); { const char* names[] = { "the-value" }; - expressions[669] = BinaryenSwitch(the_module, names, 1, "the-value", expressions[25], expressions[26]); + expressions[677] = BinaryenSwitch(the_module, names, 1, "the-value", expressions[25], expressions[26]); } - expressions[670] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + expressions[678] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); { const char* names[] = { "the-nothing" }; - expressions[671] = BinaryenSwitch(the_module, names, 1, "the-nothing", expressions[670], expressions[0]); + expressions[679] = BinaryenSwitch(the_module, names, 1, "the-nothing", expressions[678], expressions[0]); } { BinaryenExpressionRef operands[] = { expressions[10], expressions[11], expressions[12], expressions[13] }; - expressions[672] = BinaryenCall(the_module, "kitchen()sinker", operands, 4, 1); + expressions[680] = BinaryenCall(the_module, "kitchen()sinker", operands, 4, 1); } - expressions[673] = BinaryenUnary(the_module, 20, expressions[672]); + expressions[681] = BinaryenUnary(the_module, 20, expressions[680]); { BinaryenExpressionRef operands[] = { expressions[8], expressions[9] }; - expressions[674] = BinaryenCall(the_module, "an-imported", operands, 2, 3); + expressions[682] = BinaryenCall(the_module, "an-imported", operands, 2, 3); } - expressions[675] = BinaryenUnary(the_module, 25, expressions[674]); - expressions[676] = BinaryenUnary(the_module, 20, expressions[675]); - expressions[677] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); + expressions[683] = BinaryenUnary(the_module, 25, expressions[682]); + expressions[684] = BinaryenUnary(the_module, 20, expressions[683]); + expressions[685] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); { BinaryenExpressionRef operands[] = { expressions[14], expressions[15], expressions[16], expressions[17] }; - expressions[678] = BinaryenCallIndirect(the_module, expressions[677], operands, 4, "iiIfF"); - } - expressions[679] = BinaryenUnary(the_module, 20, expressions[678]); - expressions[680] = BinaryenLocalGet(the_module, 0, 1); - expressions[681] = BinaryenDrop(the_module, expressions[680]); - expressions[682] = BinaryenConst(the_module, BinaryenLiteralInt32(101)); - expressions[683] = BinaryenLocalSet(the_module, 0, expressions[682]); - expressions[684] = BinaryenConst(the_module, BinaryenLiteralInt32(102)); - expressions[685] = BinaryenLocalTee(the_module, 0, expressions[684]); - expressions[686] = BinaryenDrop(the_module, expressions[685]); - expressions[687] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); - expressions[688] = BinaryenLoad(the_module, 4, 0, 0, 0, 1, expressions[687]); - expressions[689] = BinaryenConst(the_module, BinaryenLiteralInt32(8)); - expressions[690] = BinaryenLoad(the_module, 2, 1, 2, 1, 2, expressions[689]); - expressions[691] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); - expressions[692] = BinaryenLoad(the_module, 4, 0, 0, 0, 3, expressions[691]); - expressions[693] = BinaryenConst(the_module, BinaryenLiteralInt32(9)); - expressions[694] = BinaryenLoad(the_module, 8, 0, 2, 8, 4, expressions[693]); - expressions[695] = BinaryenStore(the_module, 4, 0, 0, expressions[30], expressions[31], 1); - expressions[696] = BinaryenStore(the_module, 8, 2, 4, expressions[32], expressions[33], 2); - expressions[697] = BinaryenSelect(the_module, expressions[27], expressions[28], expressions[29]); - expressions[698] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); - expressions[699] = BinaryenReturn(the_module, expressions[698]); + expressions[686] = BinaryenCallIndirect(the_module, expressions[685], operands, 4, "iiIfF"); + } + expressions[687] = BinaryenUnary(the_module, 20, expressions[686]); + expressions[688] = BinaryenLocalGet(the_module, 0, 1); + expressions[689] = BinaryenDrop(the_module, expressions[688]); + expressions[690] = BinaryenConst(the_module, BinaryenLiteralInt32(101)); + expressions[691] = BinaryenLocalSet(the_module, 0, expressions[690]); + expressions[692] = BinaryenConst(the_module, BinaryenLiteralInt32(102)); + expressions[693] = BinaryenLocalTee(the_module, 0, expressions[692]); + expressions[694] = BinaryenDrop(the_module, expressions[693]); + expressions[695] = BinaryenConst(the_module, BinaryenLiteralInt32(1)); + expressions[696] = BinaryenLoad(the_module, 4, 0, 0, 0, 1, expressions[695]); + expressions[697] = BinaryenConst(the_module, BinaryenLiteralInt32(8)); + expressions[698] = BinaryenLoad(the_module, 2, 1, 2, 1, 2, expressions[697]); + expressions[699] = BinaryenConst(the_module, BinaryenLiteralInt32(2)); + expressions[700] = BinaryenLoad(the_module, 4, 0, 0, 0, 3, expressions[699]); + expressions[701] = BinaryenConst(the_module, BinaryenLiteralInt32(9)); + expressions[702] = BinaryenLoad(the_module, 8, 0, 2, 8, 4, expressions[701]); + expressions[703] = BinaryenStore(the_module, 4, 0, 0, expressions[30], expressions[31], 1); + expressions[704] = BinaryenStore(the_module, 8, 2, 4, expressions[32], expressions[33], 2); + expressions[705] = BinaryenSelect(the_module, expressions[27], expressions[28], expressions[29]); + expressions[706] = BinaryenConst(the_module, BinaryenLiteralInt32(1337)); + expressions[707] = BinaryenReturn(the_module, expressions[706]); { BinaryenExpressionRef operands[] = { expressions[10], expressions[11], expressions[12], expressions[13] }; - expressions[700] = BinaryenReturnCall(the_module, "kitchen()sinker", operands, 4, 1); + expressions[708] = BinaryenReturnCall(the_module, "kitchen()sinker", operands, 4, 1); } - expressions[701] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); + expressions[709] = BinaryenConst(the_module, BinaryenLiteralInt32(2449)); { BinaryenExpressionRef operands[] = { expressions[14], expressions[15], expressions[16], expressions[17] }; - expressions[702] = BinaryenReturnCallIndirect(the_module, expressions[701], operands, 4, "iiIfF"); - } - expressions[703] = BinaryenTry(the_module, expressions[35], expressions[43]); - expressions[704] = BinaryenAtomicLoad(the_module, 4, 0, 1, expressions[23]); - expressions[705] = BinaryenAtomicStore(the_module, 4, 0, expressions[23], expressions[704], 1); - expressions[706] = BinaryenAtomicWait(the_module, expressions[23], expressions[23], expressions[33], 1); - expressions[707] = BinaryenDrop(the_module, expressions[706]); - expressions[708] = BinaryenAtomicNotify(the_module, expressions[23], expressions[23]); - expressions[709] = BinaryenDrop(the_module, expressions[708]); - expressions[710] = BinaryenAtomicFence(the_module); - expressions[711] = BinaryenNop(the_module); - expressions[712] = BinaryenUnreachable(the_module); + expressions[710] = BinaryenReturnCallIndirect(the_module, expressions[709], operands, 4, "iiIfF"); + } + expressions[711] = BinaryenTry(the_module, expressions[35], expressions[43]); + expressions[712] = BinaryenAtomicLoad(the_module, 4, 0, 1, expressions[23]); + expressions[713] = BinaryenAtomicStore(the_module, 4, 0, expressions[23], expressions[712], 1); + expressions[714] = BinaryenAtomicWait(the_module, expressions[23], expressions[23], expressions[33], 1); + expressions[715] = BinaryenDrop(the_module, expressions[714]); + expressions[716] = BinaryenAtomicNotify(the_module, expressions[23], expressions[23]); + expressions[717] = BinaryenDrop(the_module, expressions[716]); + expressions[718] = BinaryenAtomicFence(the_module); + expressions[719] = BinaryenNop(the_module); + expressions[720] = BinaryenUnreachable(the_module); BinaryenExpressionPrint(expressions[51]); (f32.neg (f32.const -33.61199951171875) @@ -3603,34 +3631,35 @@ int main() { expressions[563], expressions[565], expressions[568], expressions[571], expressions[574], expressions[577], expressions[580], expressions[583], expressions[586], expressions[589], expressions[592], expressions[595], expressions[598], expressions[601], expressions[604], expressions[607], expressions[610], expressions[613], - expressions[616], expressions[619], expressions[622], expressions[626], expressions[630], expressions[634], - expressions[638], expressions[642], expressions[646], expressions[647], expressions[651], expressions[655], - expressions[656], expressions[657], expressions[658], expressions[660], expressions[662], expressions[663], - expressions[665], expressions[667], expressions[668], expressions[669], expressions[671], expressions[673], - expressions[676], expressions[679], expressions[681], expressions[683], expressions[686], expressions[688], - expressions[690], expressions[692], expressions[694], expressions[695], expressions[696], expressions[697], - expressions[699], expressions[700], expressions[702], expressions[703], expressions[705], expressions[707], - expressions[709], expressions[710], expressions[711], expressions[712] }; - expressions[713] = BinaryenBlock(the_module, "the-value", children, 267, BinaryenTypeAuto()); + expressions[616], expressions[619], expressions[621], expressions[623], expressions[625], expressions[627], + expressions[630], expressions[634], expressions[638], expressions[642], expressions[646], expressions[650], + expressions[654], expressions[655], expressions[659], expressions[663], expressions[664], expressions[665], + expressions[666], expressions[668], expressions[670], expressions[671], expressions[673], expressions[675], + expressions[676], expressions[677], expressions[679], expressions[681], expressions[684], expressions[687], + expressions[689], expressions[691], expressions[694], expressions[696], expressions[698], expressions[700], + expressions[702], expressions[703], expressions[704], expressions[705], expressions[707], expressions[708], + expressions[710], expressions[711], expressions[713], expressions[715], expressions[717], expressions[718], + expressions[719], expressions[720] }; + expressions[721] = BinaryenBlock(the_module, "the-value", children, 271, BinaryenTypeAuto()); } - expressions[714] = BinaryenDrop(the_module, expressions[713]); + expressions[722] = BinaryenDrop(the_module, expressions[721]); { - BinaryenExpressionRef children[] = { expressions[714] }; - expressions[715] = BinaryenBlock(the_module, "the-nothing", children, 1, BinaryenTypeAuto()); + BinaryenExpressionRef children[] = { expressions[722] }; + expressions[723] = BinaryenBlock(the_module, "the-nothing", children, 1, BinaryenTypeAuto()); } - expressions[716] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); + expressions[724] = BinaryenConst(the_module, BinaryenLiteralInt32(42)); { - BinaryenExpressionRef children[] = { expressions[715], expressions[716] }; - expressions[717] = BinaryenBlock(the_module, "the-body", children, 2, BinaryenTypeAuto()); + BinaryenExpressionRef children[] = { expressions[723], expressions[724] }; + expressions[725] = BinaryenBlock(the_module, "the-body", children, 2, BinaryenTypeAuto()); } { BinaryenType varTypes[] = { 1, 7 }; - functions[0] = BinaryenAddFunction(the_module, "kitchen()sinker", functionTypes[0], varTypes, 2, expressions[717]); + functions[0] = BinaryenAddFunction(the_module, "kitchen()sinker", functionTypes[0], varTypes, 2, expressions[725]); } - expressions[718] = BinaryenConst(the_module, BinaryenLiteralInt32(7)); - globals[0] = BinaryenAddGlobal(the_module, "a-global", 1, 0, expressions[718]); - expressions[719] = BinaryenConst(the_module, BinaryenLiteralFloat32(7.5)); - globals[1] = BinaryenAddGlobal(the_module, "a-mutable-global", 3, 1, expressions[719]); + expressions[726] = BinaryenConst(the_module, BinaryenLiteralInt32(7)); + globals[0] = BinaryenAddGlobal(the_module, "a-global", 1, 0, expressions[726]); + expressions[727] = BinaryenConst(the_module, BinaryenLiteralFloat32(7.5)); + globals[1] = BinaryenAddGlobal(the_module, "a-mutable-global", 3, 1, expressions[727]); { BinaryenType paramTypes[] = { 1, 4 }; functionTypes[2] = BinaryenAddFunctionType(the_module, "fiF", 3, paramTypes, 2); @@ -3642,13 +3671,13 @@ int main() { const char* funcNames[] = { "kitchen()sinker" }; BinaryenSetFunctionTable(the_module, 1, 1, funcNames, 1); } - expressions[720] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); + expressions[728] = 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[720], expressions[0] }; + BinaryenExpressionRef segmentOffsets[] = { expressions[728], expressions[0] }; BinaryenIndex segmentSizes[] = { 12, 12 }; BinaryenSetMemory(the_module, 1, 256, "mem", segments, segmentPassive, segmentOffsets, segmentSizes, 2, 1); } @@ -3656,10 +3685,10 @@ int main() { BinaryenType paramTypes[] = { 0 }; functionTypes[3] = BinaryenAddFunctionType(the_module, "v", 0, paramTypes, 0); } - expressions[721] = BinaryenNop(the_module); + expressions[729] = BinaryenNop(the_module); { BinaryenType varTypes[] = { 0 }; - functions[1] = BinaryenAddFunction(the_module, "starter", functionTypes[3], varTypes, 0, expressions[721]); + functions[1] = BinaryenAddFunction(the_module, "starter", functionTypes[3], varTypes, 0, expressions[729]); } BinaryenSetStart(the_module, functions[1]); { @@ -4942,6 +4971,26 @@ int main() { ) ) (drop + (v8x16.load_splat + (i32.const 128) + ) + ) + (drop + (v16x8.load_splat offset=16 align=1 + (i32.const 128) + ) + ) + (drop + (v32x4.load_splat offset=16 + (i32.const 128) + ) + ) + (drop + (v64x2.load_splat align=4 + (i32.const 128) + ) + ) + (drop (v8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) diff --git a/test/example/c-api-kitchen-sink.txt.txt b/test/example/c-api-kitchen-sink.txt.txt index 568134304..4e259802f 100644 --- a/test/example/c-api-kitchen-sink.txt.txt +++ b/test/example/c-api-kitchen-sink.txt.txt @@ -1272,6 +1272,26 @@ ) ) (drop + (v8x16.load_splat + (i32.const 128) + ) + ) + (drop + (v16x8.load_splat offset=16 align=1 + (i32.const 128) + ) + ) + (drop + (v32x4.load_splat offset=16 + (i32.const 128) + ) + ) + (drop + (v64x2.load_splat align=4 + (i32.const 128) + ) + ) + (drop (v8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) |