summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/binaryen.js/kitchen-sink.js34
-rw-r--r--test/binaryen.js/kitchen-sink.js.txt32
2 files changed, 65 insertions, 1 deletions
diff --git a/test/binaryen.js/kitchen-sink.js b/test/binaryen.js/kitchen-sink.js
index a62766e17..f1848aee5 100644
--- a/test/binaryen.js/kitchen-sink.js
+++ b/test/binaryen.js/kitchen-sink.js
@@ -43,6 +43,36 @@ function test_types() {
console.log("BinaryenFloat64: " + Binaryen.f64);
}
+function test_ids() {
+ console.log("BinaryenInvalidId: " + Binaryen.InvalidId);
+ console.log("BinaryenBlockId: " + Binaryen.BlockId);
+ console.log("BinaryenIfId: " + Binaryen.IfId);
+ console.log("BinaryenLoopId: " + Binaryen.LoopId);
+ console.log("BinaryenBreakId: " + Binaryen.BreakId);
+ console.log("BinaryenSwitchId: " + Binaryen.SwitchId);
+ console.log("BinaryenCallId: " + Binaryen.CallId);
+ console.log("BinaryenCallImportId: " + Binaryen.CallImportId);
+ console.log("BinaryenCallIndirectId: " + Binaryen.CallIndirectId);
+ console.log("BinaryenGetLocalId: " + Binaryen.GetLocalId);
+ console.log("BinaryenSetLocalId: " + Binaryen.SetLocalId);
+ console.log("BinaryenGetGlobalId: " + Binaryen.GetGlobalId);
+ console.log("BinaryenSetGlobalId: " + Binaryen.SetGlobalId);
+ console.log("BinaryenLoadId: " + Binaryen.LoadId);
+ console.log("BinaryenStoreId: " + Binaryen.StoreId);
+ console.log("BinaryenConstId: " + Binaryen.ConstId);
+ console.log("BinaryenUnaryId: " + Binaryen.UnaryId);
+ console.log("BinaryenBinaryId: " + Binaryen.BinaryId);
+ console.log("BinaryenSelectId: " + Binaryen.SelectId);
+ console.log("BinaryenReturnId: " + Binaryen.ReturnId);
+ console.log("BinaryenHostId: " + Binaryen.HostId);
+ console.log("BinaryenNopId: " + Binaryen.NopId);
+ console.log("BinaryenUnreachableId: " + Binaryen.UnreachableId);
+ console.log("BinaryenAtomicCmpxchgId: " + Binaryen.AtomicCmpxchgId);
+ console.log("BinaryenAtomicRMWId: " + Binaryen.AtomicRMWId);
+ console.log("BinaryenAtomicWaitId: " + Binaryen.AtomicWaitId);
+ console.log("BinaryenAtomicWakeId: " + Binaryen.AtomicWakeId);
+}
+
function test_core() {
// Module creation
@@ -178,6 +208,9 @@ function test_core() {
module.unreachable(),
];
+ // Test expression utility
+ console.log("getExpressionId=" + Binaryen.getExpressionId(valueList[3]));
+ console.log("getExpressionType=" + Binaryen.getExpressionType(valueList[3]));
console.log(Binaryen.emitText(valueList[3])); // test printing a standalone expression
// Make the main body of the function. and one block with a return value, one without
@@ -524,6 +557,7 @@ function test_parsing() {
function main() {
test_types();
+ test_ids();
test_core();
test_relooper();
test_binaries();
diff --git a/test/binaryen.js/kitchen-sink.js.txt b/test/binaryen.js/kitchen-sink.js.txt
index 1a4e6c417..c16b13770 100644
--- a/test/binaryen.js/kitchen-sink.js.txt
+++ b/test/binaryen.js/kitchen-sink.js.txt
@@ -3,6 +3,36 @@ BinaryenInt32: 1
BinaryenInt64: 2
BinaryenFloat32: 3
BinaryenFloat64: 4
+BinaryenInvalidId: 0
+BinaryenBlockId: 1
+BinaryenIfId: 2
+BinaryenLoopId: 3
+BinaryenBreakId: 4
+BinaryenSwitchId: 5
+BinaryenCallId: 6
+BinaryenCallImportId: 7
+BinaryenCallIndirectId: 8
+BinaryenGetLocalId: 9
+BinaryenSetLocalId: 10
+BinaryenGetGlobalId: 11
+BinaryenSetGlobalId: 12
+BinaryenLoadId: 13
+BinaryenStoreId: 14
+BinaryenConstId: 15
+BinaryenUnaryId: 16
+BinaryenBinaryId: 17
+BinaryenSelectId: 18
+BinaryenDropId: 19
+BinaryenReturnId: 20
+BinaryenHostId: 21
+BinaryenNopId: 22
+BinaryenUnreachableId: 23
+BinaryenAtomicCmpxchgId: 24
+BinaryenAtomicRMWId: 25
+BinaryenAtomicWaitId: 26
+BinaryenAtomicWakeId: 27
+getExpressionId=16
+getExpressionType=3
(f32.neg
(f32.const -33.61199951171875)
)
@@ -1068,7 +1098,7 @@ module loaded from binary form:
)
)
-[wasm-validator error in function $func] 1 != 2: set_local type must match function, on
+[wasm-validator error in function $func] 1 != 2: set_local type must match function, on
[none] (set_local $0
[i64] (i64.const 1234)
)