summaryrefslogtreecommitdiff
path: root/src/js
diff options
context:
space:
mode:
Diffstat (limited to 'src/js')
-rw-r--r--src/js/binaryen.js-post.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js
index 8fbd2b7ec..29729c4b1 100644
--- a/src/js/binaryen.js-post.js
+++ b/src/js/binaryen.js-post.js
@@ -93,6 +93,7 @@ function initializeConstants() {
'RefEq',
'TableGet',
'TableSet',
+ 'TableSize',
'Try',
'Throw',
'Rethrow',
@@ -671,6 +672,9 @@ function wrapModule(module, self = {}) {
},
'set'(name, index, value) {
return Module['_BinaryenTableSet'](module, strToStack(name), index, value);
+ },
+ 'size'(name) {
+ return Module['_BinaryenTableSize'](module, strToStack(name));
}
}
@@ -2825,6 +2829,12 @@ Module['getExpressionInfo'] = function(expr) {
'index': Module['_BinaryenTableSetGetIndex'](expr),
'value': Module['_BinaryenTableSetGetValue'](expr)
};
+ case Module['TableSizeId']:
+ return {
+ 'id': id,
+ 'type': type,
+ 'table': UTF8ToString(Module['_BinaryenTableSizeGetTable'](expr)),
+ };
case Module['LoadId']:
return {
'id': id,
@@ -3831,6 +3841,15 @@ Module['TableSet'] = makeExpressionWrapper({
}
});
+Module['TableSize'] = makeExpressionWrapper({
+ 'getTable'(expr) {
+ return UTF8ToString(Module['_BinaryenTableSizeGetTable'](expr));
+ },
+ 'setTable'(expr, name) {
+ preserveStack(() => { Module['_BinaryenTableSizeSetTable'](expr, strToStack(name)) });
+ },
+});
+
Module['MemorySize'] = makeExpressionWrapper({});
Module['MemoryGrow'] = makeExpressionWrapper({