summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/example/c-api-kitchen-sink.c10
-rw-r--r--test/example/c-api-kitchen-sink.txt1
2 files changed, 11 insertions, 0 deletions
diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c
index f91733a8d..6db92276e 100644
--- a/test/example/c-api-kitchen-sink.c
+++ b/test/example/c-api-kitchen-sink.c
@@ -1417,6 +1417,16 @@ void test_core() {
BinaryenFunctionRef sinker = BinaryenAddFunction(
module, "kitchen()sinker", iIfF, BinaryenTypeInt32(), localTypes, 2, body);
+ BinaryenIndex numLocals = BinaryenFunctionGetNumLocals(sinker);
+ BinaryenIndex numParams =
+ BinaryenTypeArity(BinaryenFunctionGetParams(sinker));
+ BinaryenIndex newLocalIdx =
+ BinaryenFunctionAddVar(sinker, BinaryenTypeFloat32());
+ assert(newLocalIdx == numLocals);
+ assert(BinaryenFunctionGetNumLocals(sinker) == numLocals + 1);
+ assert(BinaryenFunctionGetVar(sinker, newLocalIdx - numParams) ==
+ BinaryenTypeFloat32());
+
// Globals
BinaryenAddGlobal(
diff --git a/test/example/c-api-kitchen-sink.txt b/test/example/c-api-kitchen-sink.txt
index 75c71b4ab..5342236e1 100644
--- a/test/example/c-api-kitchen-sink.txt
+++ b/test/example/c-api-kitchen-sink.txt
@@ -102,6 +102,7 @@ BinaryenFeatureAll: 131071
(func $"kitchen()sinker" (type $2) (param $0 i32) (param $1 i64) (param $2 f32) (param $3 f64) (result i32)
(local $4 i32)
(local $5 externref)
+ (local $6 f32)
(block $the-body (result i32)
(block $the-nothing
(drop