diff options
Diffstat (limited to 'test/binaryen.js')
-rw-r--r-- | test/binaryen.js/sideffects.js | 12 | ||||
-rw-r--r-- | test/binaryen.js/sideffects.js.txt | 3 |
2 files changed, 14 insertions, 1 deletions
diff --git a/test/binaryen.js/sideffects.js b/test/binaryen.js/sideffects.js index a486099dc..7db9ab329 100644 --- a/test/binaryen.js/sideffects.js +++ b/test/binaryen.js/sideffects.js @@ -9,6 +9,7 @@ console.log("SideEffects.ReadsMemory=" + binaryen.SideEffects.ReadsMemory); console.log("SideEffects.WritesMemory=" + binaryen.SideEffects.WritesMemory); console.log("SideEffects.ImplicitTrap=" + binaryen.SideEffects.ImplicitTrap); console.log("SideEffects.IsAtomic=" + binaryen.SideEffects.IsAtomic); +console.log("SideEffects.Throws=" + binaryen.SideEffects.Throws); console.log("SideEffects.Any=" + binaryen.SideEffects.Any); var module = new binaryen.Module(); @@ -92,3 +93,14 @@ assert( == binaryen.SideEffects.ImplicitTrap ); + +// If exception handling feature is enabled, calls can throw +var module_all_features = new binaryen.Module(); +module_all_features.setFeatures(binaryen.Features.All); +assert( + binaryen.getSideEffects( + module.call("test", [], binaryen.i32) + ) + == + binaryen.SideEffects.Calls | binaryen.SideEffects.Throws +); diff --git a/test/binaryen.js/sideffects.js.txt b/test/binaryen.js/sideffects.js.txt index 54a1e14bc..4aca0ac46 100644 --- a/test/binaryen.js/sideffects.js.txt +++ b/test/binaryen.js/sideffects.js.txt @@ -9,4 +9,5 @@ SideEffects.ReadsMemory=64 SideEffects.WritesMemory=128 SideEffects.ImplicitTrap=256 SideEffects.IsAtomic=512 -SideEffects.Any=1023 +SideEffects.Throws=1024 +SideEffects.Any=2047 |