diff options
-rw-r--r-- | src/wasm2asm.h | 9 | ||||
-rw-r--r-- | test/unit.2asm.js | 2 |
2 files changed, 3 insertions, 8 deletions
diff --git a/src/wasm2asm.h b/src/wasm2asm.h index f139b58dd..a336c4a50 100644 --- a/src/wasm2asm.h +++ b/src/wasm2asm.h @@ -710,12 +710,7 @@ Ref Wasm2AsmBuilder::processFunctionBody(Expression* curr, IString result) { Unary fakeUnary = *curr; fakeUnary.value = &fakeLocal; Ref ret = blockify(visitAndAssign(curr->value, temp)); - ret[1]->push_back(ValueBuilder::makeStatement( - ValueBuilder::makeAssign( - result, - visit(&fakeUnary, result) - ) - )); + ret[1]->push_back(visitAndAssign(&fakeUnary, result)); return ret; } // normal unary @@ -768,7 +763,7 @@ Ref Wasm2AsmBuilder::processFunctionBody(Expression* curr, IString result) { fakeBinary.right = &fakeLocalRight; Ref ret = blockify(visitAndAssign(curr->left, tempLeft)); ret[1]->push_back(visitAndAssign(curr->right, tempRight)); - ret[1]->push_back(visit(&fakeBinary, result)); + ret[1]->push_back(visitAndAssign(&fakeBinary, result)); return ret; } // normal binary diff --git a/test/unit.2asm.js b/test/unit.2asm.js index f85c89f0c..3b33b2a86 100644 --- a/test/unit.2asm.js +++ b/test/unit.2asm.js @@ -76,7 +76,7 @@ function asmFunc() { 3.2; wasm2asm_f64$2 = 4.2; } - +(wasm2asm_f64$1 - wasm2asm_f64$2) + wasm2asm_f64$0 = +(wasm2asm_f64$1 - wasm2asm_f64$2); J = wasm2asm_f64$0; } } |