diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-07-18 16:25:24 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-07-18 16:26:26 -0700 |
commit | 2ffa3a82fadc40552a01312857c9b5dbfe2a3ddb (patch) | |
tree | fa80d82750f4f453dffd83370a6e5222abcbba4e /tools/js-optimizer.js | |
parent | 698b0c53ebe4b06e3a7b848811cde9272c7c26d1 (diff) |
add coercions on return proxying in outliner
Diffstat (limited to 'tools/js-optimizer.js')
-rw-r--r-- | tools/js-optimizer.js | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js index 5c80abb6..550bd685 100644 --- a/tools/js-optimizer.js +++ b/tools/js-optimizer.js @@ -3210,13 +3210,13 @@ function outline(ast) { if (codeInfo.hasReturnInt) { reps.push(makeIf( makeComparison(makeAsmCoercion(makeStackAccess(ASM_INT, asmData.controlStackPos), ASM_INT), '==', ['num', CONTROL_RETURN_INT]), - [['stat', ['return', makeStackAccess(ASM_INT, asmData.controlDataStackPos)]]] + [['stat', ['return', makeAsmCoercion(makeStackAccess(ASM_INT, asmData.controlDataStackPos), ASM_INT)]]] )); } if (codeInfo.hasReturnDouble) { reps.push(makeIf( makeComparison(makeAsmCoercion(makeStackAccess(ASM_INT, asmData.controlStackPos), ASM_INT), '==', ['num', CONTROL_RETURN_DOUBLE]), - [['stat', ['return', makeStackAccess(ASM_DOUBLE, asmData.controlDataStackPos)]]] + [['stat', ['return', makeAsmCoercion(makeStackAccess(ASM_DOUBLE, asmData.controlDataStackPos), ASM_DOUBLE)]]] )); } if (codeInfo.hasBreak) { |