From 7459e5af01fbe3a8e75e73783794b4cdffda34e9 Mon Sep 17 00:00:00 2001 From: JF Bastien Date: Fri, 5 Feb 2016 05:11:50 -0800 Subject: 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. --- test/unit.2asm.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test/unit.2asm.js') 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); -- cgit v1.2.3