diff options
Diffstat (limited to 'test/binaryen.js/optimize-levels.js')
-rw-r--r-- | test/binaryen.js/optimize-levels.js | 90 |
1 files changed, 41 insertions, 49 deletions
diff --git a/test/binaryen.js/optimize-levels.js b/test/binaryen.js/optimize-levels.js index b3ae66a43..b3dd2adbd 100644 --- a/test/binaryen.js/optimize-levels.js +++ b/test/binaryen.js/optimize-levels.js @@ -1,7 +1,3 @@ -function assert(x) { - if (!x) throw 'error!'; -} - var wast = ` (module (type $i (func (param i32) (result i32))) @@ -19,51 +15,47 @@ var wast = ` ) `; -function test() { - console.log("=== input wast ===" + wast); - - function printOptions() { - console.log("optimizeLevel=" + Binaryen.getOptimizeLevel()); - console.log("shrinkLevel=" + Binaryen.getShrinkLevel()); - } - - // Use defaults (should be equal to -Os below) - var module = Binaryen.parseText(wast); - - console.log("=== unoptimized ==="); - assert(module.validate()); - console.log(module.emitText()); - - module.optimize(); - console.log("=== optimized using defaults ==="); - printOptions(); - assert(module.validate()); - console.log(module.emitText()); - module.dispose(); - - // Use -O0 (should remove the block) - module = Binaryen.parseText(wast); - - Binaryen.setOptimizeLevel(0); - Binaryen.setShrinkLevel(0); - module.optimize(); - console.log("=== optimized with -O0 ==="); - printOptions(); - assert(module.validate()); - console.log(module.emitText()); - module.dispose(); - - // Use -Os (should remove the block and convert to a select) - module = Binaryen.parseText(wast); +console.log("=== input wast ===" + wast); - Binaryen.setOptimizeLevel(2); - Binaryen.setShrinkLevel(1); - module.optimize(); - console.log("=== optimized with -Os ==="); - printOptions(); - assert(module.validate()); - console.log(module.emitText()); - module.dispose(); +function printOptions() { + console.log("optimizeLevel=" + binaryen.getOptimizeLevel()); + console.log("shrinkLevel=" + binaryen.getShrinkLevel()); } -Binaryen.ready.then(test); +// Use defaults (should be equal to -Os below) +var module = binaryen.parseText(wast); + +console.log("=== unoptimized ==="); +assert(module.validate()); +console.log(module.emitText()); + +module.optimize(); +console.log("=== optimized using defaults ==="); +printOptions(); +assert(module.validate()); +console.log(module.emitText()); +module.dispose(); + +// Use -O0 (should remove the block) +module = binaryen.parseText(wast); + +binaryen.setOptimizeLevel(0); +binaryen.setShrinkLevel(0); +module.optimize(); +console.log("=== optimized with -O0 ==="); +printOptions(); +assert(module.validate()); +console.log(module.emitText()); +module.dispose(); + +// Use -Os (should remove the block and convert to a select) +module = binaryen.parseText(wast); + +binaryen.setOptimizeLevel(2); +binaryen.setShrinkLevel(1); +module.optimize(); +console.log("=== optimized with -Os ==="); +printOptions(); +assert(module.validate()); +console.log(module.emitText()); +module.dispose(); |