Index: src/assembler.cc |
diff --git a/src/assembler.cc b/src/assembler.cc |
index 91577c69723f42da63311f16a0678c047b523f84..e6aaa914bfe308e290f60f79718d3d750d9b005d 100644 |
--- a/src/assembler.cc |
+++ b/src/assembler.cc |
@@ -1617,20 +1617,19 @@ bool PositionsRecorder::WriteRecordedPositions() { |
EnsureSpace ensure_space(assembler_); |
assembler_->RecordRelocInfo(RelocInfo::STATEMENT_POSITION, |
state_.current_statement_position); |
+ state_.written_position = state_.current_statement_position; |
+ state_.written_statement_position = state_.current_statement_position; |
written = true; |
} |
- state_.written_statement_position = state_.current_statement_position; |
// Write the position if it is different from what was written last time and |
// also different from the statement position that was just written. |
- if (state_.current_position != state_.written_position && |
- (state_.current_position != state_.written_statement_position || |
- !written)) { |
+ if (state_.current_position != state_.written_position) { |
EnsureSpace ensure_space(assembler_); |
assembler_->RecordRelocInfo(RelocInfo::POSITION, state_.current_position); |
+ state_.written_position = state_.current_position; |
written = true; |
} |
- state_.written_position = state_.current_position; |
// Return whether something was written. |
return written; |
@@ -1869,7 +1868,6 @@ void Assembler::RecordJSReturn() { |
void Assembler::RecordDebugBreakSlot() { |
- positions_recorder()->WriteRecordedPositions(); |
EnsureSpace ensure_space(this); |
RecordRelocInfo(RelocInfo::DEBUG_BREAK_SLOT); |
} |