Index: src/x87/full-codegen-x87.cc |
diff --git a/src/x87/full-codegen-x87.cc b/src/x87/full-codegen-x87.cc |
index f8176c0d2555acfa9704c968c1b40406f4d5579a..5f245f6f5ef1c04c09b679a41a7073d1fe6697f1 100644 |
--- a/src/x87/full-codegen-x87.cc |
+++ b/src/x87/full-codegen-x87.cc |
@@ -1950,18 +1950,14 @@ void FullCodeGenerator::VisitAssignment(Assignment* expr) { |
__ push(eax); // Left operand goes on the stack. |
VisitForAccumulatorValue(expr->value()); |
- OverwriteMode mode = expr->value()->ResultOverwriteAllowed() |
- ? OVERWRITE_RIGHT |
- : NO_OVERWRITE; |
SetSourcePosition(expr->position() + 1); |
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. |
@@ -2342,7 +2338,6 @@ void FullCodeGenerator::EmitKeyedSuperPropertyLoad(Property* prop) { |
void FullCodeGenerator::EmitInlineSmiBinaryOp(BinaryOperation* expr, |
Token::Value op, |
- OverwriteMode mode, |
Expression* left, |
Expression* right) { |
// Do combined smi check of the operands. Left operand is on the |
@@ -2356,7 +2351,7 @@ void FullCodeGenerator::EmitInlineSmiBinaryOp(BinaryOperation* expr, |
__ bind(&stub_call); |
__ mov(eax, ecx); |
- 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, Label::kNear); |
@@ -2488,11 +2483,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(edx); |
- 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(); |
@@ -4763,8 +4756,8 @@ void FullCodeGenerator::VisitCountOperation(CountOperation* expr) { |
__ bind(&stub_call); |
__ mov(edx, eax); |
__ mov(eax, Immediate(Smi::FromInt(1))); |
- Handle<Code> code = CodeFactory::BinaryOpIC(isolate(), expr->binary_op(), |
- NO_OVERWRITE).code(); |
+ Handle<Code> code = |
+ CodeFactory::BinaryOpIC(isolate(), expr->binary_op()).code(); |
CallIC(code, expr->CountBinOpFeedbackId()); |
patch_site.EmitPatchInfo(); |
__ bind(&done); |