| Index: src/full-codegen.cc
|
| diff --git a/src/full-codegen.cc b/src/full-codegen.cc
|
| index 58ad3dc814914efe555a8e9eed1924cd4c991555..5061a30b543d3660c3f771d4a76740c9cbc33231 100644
|
| --- a/src/full-codegen.cc
|
| +++ b/src/full-codegen.cc
|
| @@ -849,10 +849,10 @@ void FullCodeGenerator::SetStatementPosition(Statement* stmt) {
|
| }
|
|
|
|
|
| -void FullCodeGenerator::SetExpressionPosition(Expression* expr, int pos) {
|
| +void FullCodeGenerator::SetExpressionPosition(Expression* expr) {
|
| #ifdef ENABLE_DEBUGGER_SUPPORT
|
| if (!isolate()->debugger()->IsDebuggerActive()) {
|
| - CodeGenerator::RecordPositions(masm_, pos);
|
| + CodeGenerator::RecordPositions(masm_, expr->position());
|
| } else {
|
| // Check if the expression will be breakable without adding a debug break
|
| // slot.
|
| @@ -866,7 +866,7 @@ void FullCodeGenerator::SetExpressionPosition(Expression* expr, int pos) {
|
| // statement positions this is used for e.g. the condition expression of
|
| // a do while loop.
|
| bool position_recorded = CodeGenerator::RecordPositions(
|
| - masm_, pos, !checker.is_breakable());
|
| + masm_, expr->position(), !checker.is_breakable());
|
| // If the position recording did record a new position generate a debug
|
| // break slot to make the statement breakable.
|
| if (position_recorded) {
|
| @@ -1293,7 +1293,7 @@ void FullCodeGenerator::VisitDoWhileStatement(DoWhileStatement* stmt) {
|
| // possible to break on the condition.
|
| __ bind(loop_statement.continue_label());
|
| PrepareForBailoutForId(stmt->ContinueId(), NO_REGISTERS);
|
| - SetExpressionPosition(stmt->cond(), stmt->condition_position());
|
| + SetExpressionPosition(stmt->cond());
|
| VisitForControl(stmt->cond(),
|
| &book_keeping,
|
| loop_statement.break_label(),
|
| @@ -1522,8 +1522,7 @@ void FullCodeGenerator::VisitConditional(Conditional* expr) {
|
|
|
| PrepareForBailoutForId(expr->ThenId(), NO_REGISTERS);
|
| __ bind(&true_case);
|
| - SetExpressionPosition(expr->then_expression(),
|
| - expr->then_expression_position());
|
| + SetExpressionPosition(expr->then_expression());
|
| if (context()->IsTest()) {
|
| const TestContext* for_test = TestContext::cast(context());
|
| VisitForControl(expr->then_expression(),
|
| @@ -1537,8 +1536,7 @@ void FullCodeGenerator::VisitConditional(Conditional* expr) {
|
|
|
| PrepareForBailoutForId(expr->ElseId(), NO_REGISTERS);
|
| __ bind(&false_case);
|
| - SetExpressionPosition(expr->else_expression(),
|
| - expr->else_expression_position());
|
| + SetExpressionPosition(expr->else_expression());
|
| VisitInDuplicateContext(expr->else_expression());
|
| // If control flow falls through Visit, merge it with true case here.
|
| if (!context()->IsTest()) {
|
|
|