diff options
author | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2019-07-15 17:12:10 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-15 17:12:10 -0700 |
commit | f6ca3828aca8e7da966ba158dd9dab16205206db (patch) | |
tree | 899995b7072e31039b435d679a66d11b56fb8730 /test/example/c-api-kitchen-sink.c | |
parent | c7e927179b4ce67bbf4f4c10a62e0fb0f7960750 (diff) | |
download | binaryen-f6ca3828aca8e7da966ba158dd9dab16205206db.tar.gz binaryen-f6ca3828aca8e7da966ba158dd9dab16205206db.tar.bz2 binaryen-f6ca3828aca8e7da966ba158dd9dab16205206db.zip |
Tail call C/JS API (#2223)
Diffstat (limited to 'test/example/c-api-kitchen-sink.c')
-rw-r--r-- | test/example/c-api-kitchen-sink.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c index f686a1493..8b2d3ae8d 100644 --- a/test/example/c-api-kitchen-sink.c +++ b/test/example/c-api-kitchen-sink.c @@ -459,12 +459,20 @@ void test_core() { BinaryenDrop(module, BinaryenLocalTee(module, 0, makeInt32(module, 102))), BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeInt32(), makeInt32(module, 1)), BinaryenLoad(module, 2, 1, 2, 1, BinaryenTypeInt64(), makeInt32(module, 8)), - BinaryenLoad(module, 4, 0, 0, 0, BinaryenTypeFloat32(), makeInt32(module, 2)), - BinaryenLoad(module, 8, 0, 2, 8, BinaryenTypeFloat64(), makeInt32(module, 9)), + BinaryenLoad( + module, 4, 0, 0, 0, BinaryenTypeFloat32(), makeInt32(module, 2)), + BinaryenLoad( + module, 8, 0, 2, 8, BinaryenTypeFloat64(), makeInt32(module, 9)), BinaryenStore(module, 4, 0, 0, temp13, temp14, BinaryenTypeInt32()), BinaryenStore(module, 8, 2, 4, temp15, temp16, BinaryenTypeInt64()), BinaryenSelect(module, temp10, temp11, temp12), BinaryenReturn(module, makeInt32(module, 1337)), + // Tail call + BinaryenReturnCall( + module, "kitchen()sinker", callOperands4, 4, BinaryenTypeInt32()), + BinaryenReturnCallIndirect( + module, makeInt32(module, 2449), callOperands4b, 4, "iiIfF"), + // TODO: Host BinaryenNop(module), BinaryenUnreachable(module), |