Commit 9d463bd6 authored by sgjesse@chromium.org's avatar sgjesse@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 97f09782
...@@ -2695,7 +2695,9 @@ void TypeRecordingBinaryOpStub::GenerateGeneric(MacroAssembler* masm) { ...@@ -2695,7 +2695,9 @@ void TypeRecordingBinaryOpStub::GenerateGeneric(MacroAssembler* masm) {
__ bind(&call_runtime); __ bind(&call_runtime);
// Try to add strings before calling runtime. // Try to add strings before calling runtime.
GenerateAddStrings(masm); if (op_ == Token::ADD) {
GenerateAddStrings(masm);
}
GenericBinaryOpStub stub(op_, mode_, r1, r0); GenericBinaryOpStub stub(op_, mode_, r1, r0);
__ TailCallStub(&stub); __ TailCallStub(&stub);
...@@ -2703,6 +2705,8 @@ void TypeRecordingBinaryOpStub::GenerateGeneric(MacroAssembler* masm) { ...@@ -2703,6 +2705,8 @@ void TypeRecordingBinaryOpStub::GenerateGeneric(MacroAssembler* masm) {
void TypeRecordingBinaryOpStub::GenerateAddStrings(MacroAssembler* masm) { void TypeRecordingBinaryOpStub::GenerateAddStrings(MacroAssembler* masm) {
ASSERT(op_ == Token::ADD);
Register left = r1; Register left = r1;
Register right = r0; Register right = r0;
Label call_runtime; Label call_runtime;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment