diff options
author | JF Bastien <jfb@chromium.org> | 2016-02-05 05:11:50 -0800 |
---|---|---|
committer | JF Bastien <jfb@chromium.org> | 2016-02-05 05:11:50 -0800 |
commit | 7459e5af01fbe3a8e75e73783794b4cdffda34e9 (patch) | |
tree | aae2c28eb1cc465a4582208d6c713584a51a1bcf /test/unit.2asm.js | |
parent | 8f67b6e27a38c93fbca7f3c44a88889b3896952f (diff) | |
download | binaryen-7459e5af01fbe3a8e75e73783794b4cdffda34e9.tar.gz binaryen-7459e5af01fbe3a8e75e73783794b4cdffda34e9.tar.bz2 binaryen-7459e5af01fbe3a8e75e73783794b4cdffda34e9.zip |
Fix select
The ordering changed in: https://github.com/WebAssembly/spec/pull/221
Which changed the spec tests, breaking sexpr-wasm because it pulls in the spec tests. This was then fixed:
https://github.com/WebAssembly/sexpr-wasm-prototype/commit/23dc368148fc7827a603e3853f5a40287eb9effe
Which in turn breaks when binaryen feeds sexpr-wasm .wast files with the old select operand ordering.
Note that this PR has new failures when running the torture tests in binaryen-shell: the order of evaluation is correct in binaryen-shell but isn't emitted properly by LLVM in the .s files. This will require another patch to fix LLVM.
Diffstat (limited to 'test/unit.2asm.js')
-rw-r--r-- | test/unit.2asm.js | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/unit.2asm.js b/test/unit.2asm.js index 027d4fce5..83ff9f819 100644 --- a/test/unit.2asm.js +++ b/test/unit.2asm.js @@ -194,7 +194,7 @@ function asmFunc(global, env, buffer) { block0 : { block1 : { asm2wasm_i32_temp = 0; - wasm2asm_i32$0 = (wasm2asm_i32$1 = (asm2wasm_i32_temp | 0) < (0 | 0), wasm2asm_i32$2 = 0 - asm2wasm_i32_temp | 0, wasm2asm_i32$3 = asm2wasm_i32_temp, wasm2asm_i32$1 ? wasm2asm_i32$2 : wasm2asm_i32$3); + wasm2asm_i32$0 = (wasm2asm_i32$3 = (asm2wasm_i32_temp | 0) < (0 | 0), wasm2asm_i32$1 = 0 - asm2wasm_i32_temp | 0, wasm2asm_i32$2 = asm2wasm_i32_temp, wasm2asm_i32$3 ? wasm2asm_i32$1 : wasm2asm_i32$2); } x = wasm2asm_i32$0; y = Math_abs(0.0); |