Index: runtime/vm/code_descriptors.cc |
diff --git a/runtime/vm/code_descriptors.cc b/runtime/vm/code_descriptors.cc |
index a286a044cca111565289eee13814bea270ed26ce..c64ba70c90d935b27454ca90f5f0a464da25fa0f 100644 |
--- a/runtime/vm/code_descriptors.cc |
+++ b/runtime/vm/code_descriptors.cc |
@@ -46,6 +46,9 @@ RawPcDescriptors* DescriptorList::FinalizePcDescriptors(uword entry_point) { |
void CodeSourceMapBuilder::AddEntry(intptr_t pc_offset, |
TokenPosition token_pos) { |
+ // Require pc offset to monotonically increase. |
+ ASSERT((prev_pc_offset < pc_offset) || |
+ ((prev_pc_offset == 0) && (pc_offset == 0))); |
CodeSourceMap::EncodeInteger(&encoded_data_, pc_offset - prev_pc_offset); |
CodeSourceMap::EncodeInteger(&encoded_data_, |
token_pos.value() - prev_token_pos); |