| Index: src/fast-codegen.cc
|
| ===================================================================
|
| --- src/fast-codegen.cc (revision 3610)
|
| +++ src/fast-codegen.cc (working copy)
|
| @@ -639,9 +639,6 @@
|
| void FastCodeGenerator::VisitAssignment(Assignment* expr) {
|
| Comment cmnt(masm_, "[ Assignment");
|
|
|
| - // Record source code position of the (possible) IC call.
|
| - SetSourcePosition(expr->position());
|
| -
|
| // Left-hand side can only be a property, a global or a (parameter or local)
|
| // slot. Variables with rewrite to .arguments are treated as KEYED_PROPERTY.
|
| enum LhsKind { VARIABLE, NAMED_PROPERTY, KEYED_PROPERTY };
|
| @@ -682,10 +679,12 @@
|
| Expression::kValue);
|
| break;
|
| case NAMED_PROPERTY:
|
| - EmitNamedPropertyLoad(prop, Expression::kValue);
|
| + EmitNamedPropertyLoad(prop);
|
| + __ push(result_register());
|
| break;
|
| case KEYED_PROPERTY:
|
| - EmitKeyedPropertyLoad(prop, Expression::kValue);
|
| + EmitKeyedPropertyLoad(prop);
|
| + __ push(result_register());
|
| break;
|
| }
|
| }
|
| @@ -700,6 +699,9 @@
|
| EmitCompoundAssignmentOp(expr->binary_op(), Expression::kValue);
|
| }
|
|
|
| + // Record source position before possible IC call.
|
| + SetSourcePosition(expr->position());
|
| +
|
| // Store the value.
|
| switch (assign_type) {
|
| case VARIABLE:
|
|
|