summaryrefslogtreecommitdiff
path: root/test/example
diff options
context:
space:
mode:
Diffstat (limited to 'test/example')
-rw-r--r--test/example/c-api-kitchen-sink.c10
-rw-r--r--test/example/c-api-kitchen-sink.txt289
-rw-r--r--test/example/c-api-kitchen-sink.txt.txt20
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)