Index: src/interpreter/source-position-table.cc |
diff --git a/src/interpreter/source-position-table.cc b/src/interpreter/source-position-table.cc |
index 99a865b84ef6344dae6620ffbd62459d60080dfe..7a599abbb58643cc7de1140ae206bb2288446a8f 100644 |
--- a/src/interpreter/source-position-table.cc |
+++ b/src/interpreter/source-position-table.cc |
@@ -128,40 +128,27 @@ void SourcePositionTableBuilder::AddExpressionPosition(size_t bytecode_offset, |
} |
void SourcePositionTableBuilder::AddEntry(const PositionTableEntry& entry) { |
- // Don't encode a new entry if this bytecode already has a source position |
- // assigned. |
- if (candidate_.bytecode_offset == entry.bytecode_offset) { |
- if (entry.is_statement) candidate_ = entry; |
- return; |
- } |
- |
- CommitEntry(); |
- candidate_ = entry; |
-} |
- |
-void SourcePositionTableBuilder::CommitEntry() { |
- if (candidate_.bytecode_offset == kUninitializedCandidateOffset) return; |
- PositionTableEntry tmp(candidate_); |
+ if (entry.bytecode_offset == kUninitializedCandidateOffset) return; |
rmcilroy
2016/05/10 11:14:10
You can remove this line
oth
2016/05/11 13:17:31
Done.
|
+ PositionTableEntry tmp(entry); |
SubtractFromEntry(tmp, previous_); |
EncodeEntry(bytes_, tmp); |
- previous_ = candidate_; |
+ previous_ = entry; |
- if (candidate_.is_statement) { |
+ if (entry.is_statement) { |
LOG_CODE_EVENT(isolate_, CodeLinePosInfoAddStatementPositionEvent( |
- jit_handler_data_, candidate_.bytecode_offset, |
- candidate_.source_position)); |
+ jit_handler_data_, entry.bytecode_offset, |
+ entry.source_position)); |
} |
LOG_CODE_EVENT(isolate_, CodeLinePosInfoAddPositionEvent( |
- jit_handler_data_, candidate_.bytecode_offset, |
- candidate_.source_position)); |
+ jit_handler_data_, entry.bytecode_offset, |
+ entry.source_position)); |
#ifdef ENABLE_SLOW_DCHECKS |
- raw_entries_.push_back(candidate_); |
+ raw_entries_.push_back(entry); |
#endif |
} |
Handle<ByteArray> SourcePositionTableBuilder::ToSourcePositionTable() { |
- CommitEntry(); |
if (bytes_.empty()) return isolate_->factory()->empty_byte_array(); |
Handle<ByteArray> table = isolate_->factory()->NewByteArray( |