diff options
Diffstat (limited to 'src/js/binaryen.js-post.js')
-rw-r--r-- | src/js/binaryen.js-post.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js index 2993573d1..54f21ed07 100644 --- a/src/js/binaryen.js-post.js +++ b/src/js/binaryen.js-post.js @@ -457,6 +457,24 @@ function initializeConstants() { ].forEach(function(name) { Module['Operations'][name] = Module[name] = Module['_Binaryen' + name](); }); + + // Expression side effects + Module['SideEffects'] = {}; + [ 'None', + 'Branches', + 'Calls', + 'ReadsLocal', + 'WritesLocal', + 'ReadsGlobal', + 'WritesGlobal', + 'ReadsMemory', + 'WritesMemory', + 'ImplicitTrap', + 'IsAtomic', + 'Any' + ].forEach(function(name) { + Module['SideEffects'][name] = Module['_BinaryenSideEffect' + name](); + }); } // 'Module' interface @@ -2739,6 +2757,11 @@ Module['getExpressionInfo'] = function(expr) { } }; +// Gets the side effects of the specified expression +Module['getSideEffects'] = function(expr) { + return Module['_BinaryenExpressionGetSideEffects'](expr); +}; + Module['createType'] = function(types) { return preserveStack(function() { var array = i32sToStack(types); |