Revision: 6488
Author: [email protected]
Date: Wed Jan 26 04:31:35 2011
Log: ARM: Fix the type recording binary operation stub subtract

Failure exposed by Sputning tests where the generic case tried to string add for subtract.
Review URL: http://codereview.chromium.org/6339013
http://code.google.com/p/v8/source/detail?r=6488

Modified:
 /branches/bleeding_edge/src/arm/code-stubs-arm.cc

=======================================
--- /branches/bleeding_edge/src/arm/code-stubs-arm.cc Wed Jan 26 01:52:25 2011 +++ /branches/bleeding_edge/src/arm/code-stubs-arm.cc Wed Jan 26 04:31:35 2011
@@ -2695,7 +2695,9 @@
   __ bind(&call_runtime);

   // Try to add strings before calling runtime.
-  GenerateAddStrings(masm);
+  if (op_ == Token::ADD) {
+    GenerateAddStrings(masm);
+  }

   GenericBinaryOpStub stub(op_, mode_, r1, r0);
   __ TailCallStub(&stub);
@@ -2703,6 +2705,8 @@


 void TypeRecordingBinaryOpStub::GenerateAddStrings(MacroAssembler* masm) {
+  ASSERT(op_ == Token::ADD);
+
   Register left = r1;
   Register right = r0;
   Label call_runtime;

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to