Fix an issue in DoMulI and address mjsunit test failure.
authorsgjesse@chromium.org <sgjesse@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 7 Feb 2011 07:39:40 +0000 (07:39 +0000)
committersgjesse@chromium.org <sgjesse@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 7 Feb 2011 07:39:40 +0000 (07:39 +0000)
BUG=v8:1098
TEST=mjsunit/compiler/regress-intoverflow.js

Patch by Rodolph Perfetta from ARM Ltd.

Review URL: http://codereview.chromium.org/6312151

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6655 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/arm/lithium-codegen-arm.cc

index 2707d03..855ed46 100644 (file)
@@ -1174,7 +1174,7 @@ void LCodeGen::DoMulI(LMulI* instr) {
 
   if (instr->hydrogen()->CheckFlag(HValue::kCanOverflow)) {
     // scratch:left = left * right.
-    __ smull(scratch, left, left, right);
+    __ smull(left, scratch, left, right);
     __ mov(ip, Operand(left, ASR, 31));
     __ cmp(ip, Operand(scratch));
     DeoptimizeIf(ne, instr->environment());
@@ -3412,7 +3412,6 @@ void LCodeGen::DoDoubleToI(LDoubleToI* instr) {
   VFPRoundingMode rounding_mode = instr->truncating() ? kRoundToMinusInf
                                                       : kRoundToNearest;
 
-
   EmitVFPTruncate(rounding_mode,
                   single_scratch,
                   double_input,