| Index: src/mark-compact.cc
|
| diff --git a/src/mark-compact.cc b/src/mark-compact.cc
|
| index 0e6b9804e09fe6776b0b61d97362d1d3ecf223ab..bc14bb495a307acf75079b88bc93a535a3e8e2cd 100644
|
| --- a/src/mark-compact.cc
|
| +++ b/src/mark-compact.cc
|
| @@ -1068,7 +1068,8 @@ void CodeFlusher::ProcessOptimizedCodeMaps() {
|
| static const int kContextOffset = 0;
|
| static const int kCodeOffset = 1;
|
| static const int kLiteralsOffset = 2;
|
| - STATIC_ASSERT(kEntryLength == 3);
|
| + static const int kOsrAstIdOffset = 3;
|
| + STATIC_ASSERT(kEntryLength == 4);
|
|
|
| SharedFunctionInfo* holder = optimized_code_map_holder_head_;
|
| SharedFunctionInfo* next_holder;
|
| @@ -1112,6 +1113,10 @@ void CodeFlusher::ProcessOptimizedCodeMaps() {
|
| Marking::MarkBitFrom(HeapObject::cast(*literals_slot))));
|
| isolate_->heap()->mark_compact_collector()->
|
| RecordSlot(literals_slot, literals_slot, *literals_slot);
|
| +
|
| + // Update and record the osr ast id slot in the optimized code map.
|
| + code_map->set(new_length++, code_map->get(i + kOsrAstIdOffset));
|
| + ASSERT(code_map->get(i + kOsrAstIdOffset)->IsSmi());
|
| }
|
|
|
| // Trim the optimized code map if entries have been removed.
|
|
|