Index: src/arm/full-codegen-arm.cc |
diff --git a/src/arm/full-codegen-arm.cc b/src/arm/full-codegen-arm.cc |
index 9bf4d8e3efb6c6496507baffe7ea725d9bae1b74..f6a7414fb525af093d8232c35228ce649ec4fa2c 100644 |
--- a/src/arm/full-codegen-arm.cc |
+++ b/src/arm/full-codegen-arm.cc |
@@ -2041,19 +2041,15 @@ void FullCodeGenerator::VisitAssignment(Assignment* expr) { |
__ push(r0); // Left operand goes on the stack. |
VisitForAccumulatorValue(expr->value()); |
- OverwriteMode mode = expr->value()->ResultOverwriteAllowed() |
- ? OVERWRITE_RIGHT |
- : NO_OVERWRITE; |
SetSourcePosition(expr->position() + 1); |
AccumulatorValueContext context(this); |
if (ShouldInlineSmiCase(op)) { |
EmitInlineSmiBinaryOp(expr->binary_operation(), |
op, |
- mode, |
expr->target(), |
expr->value()); |
} else { |
- EmitBinaryOp(expr->binary_operation(), op, mode); |
+ EmitBinaryOp(expr->binary_operation(), op); |
} |
// Deoptimization point in case the binary operation may have side effects. |
@@ -2444,7 +2440,6 @@ void FullCodeGenerator::EmitKeyedSuperPropertyLoad(Property* prop) { |
void FullCodeGenerator::EmitInlineSmiBinaryOp(BinaryOperation* expr, |
Token::Value op, |
- OverwriteMode mode, |
Expression* left_expr, |
Expression* right_expr) { |
Label done, smi_case, stub_call; |
@@ -2464,7 +2459,7 @@ void FullCodeGenerator::EmitInlineSmiBinaryOp(BinaryOperation* expr, |
patch_site.EmitJumpIfSmi(scratch1, &smi_case); |
__ bind(&stub_call); |
- Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), op, mode).code(); |
+ Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), op).code(); |
CallIC(code, expr->BinaryOperationFeedbackId()); |
patch_site.EmitPatchInfo(); |
__ jmp(&done); |
@@ -2596,11 +2591,9 @@ void FullCodeGenerator::EmitClassDefineProperties(ClassLiteral* lit) { |
} |
-void FullCodeGenerator::EmitBinaryOp(BinaryOperation* expr, |
- Token::Value op, |
- OverwriteMode mode) { |
+void FullCodeGenerator::EmitBinaryOp(BinaryOperation* expr, Token::Value op) { |
__ pop(r1); |
- Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), op, mode).code(); |
+ Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), op).code(); |
JumpPatchSite patch_site(masm_); // unbound, signals no inlined smi code. |
CallIC(code, expr->BinaryOperationFeedbackId()); |
patch_site.EmitPatchInfo(); |
@@ -4846,8 +4839,7 @@ void FullCodeGenerator::VisitCountOperation(CountOperation* expr) { |
// Record position before stub call. |
SetSourcePosition(expr->position()); |
- Handle<Code> code = |
- CodeFactory::BinaryOpIC(isolate(), Token::ADD, NO_OVERWRITE).code(); |
+ Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), Token::ADD).code(); |
CallIC(code, expr->CountBinOpFeedbackId()); |
patch_site.EmitPatchInfo(); |
__ bind(&done); |