Chromium Code Reviews| Index: src/heap.cc |
| diff --git a/src/heap.cc b/src/heap.cc |
| index 83da35c9cd735979d08e7320dbc0f1b8706fa958..e8b03b4232ce87ba52c5db78974f8a71e2277cef 100644 |
| --- a/src/heap.cc |
| +++ b/src/heap.cc |
| @@ -467,6 +467,16 @@ intptr_t Heap::SizeOfObjects() { |
| } |
| +void Heap::ClearAllKeyedStoreICs() { |
|
danno
2013/10/23 12:22:11
Can you please add a parameter of the IC type and
mvstanton
2013/10/30 10:42:42
Done.
|
| + HeapObjectIterator it(code_space()); |
| + |
| + for (Object* object = it.Next(); object != NULL; object = it.Next()) { |
| + Code* code = Code::cast(object); |
| + code->ClearInlineCaches(Code::KEYED_STORE_IC); |
|
danno
2013/10/23 12:22:11
You don't have to do this if the code is not a nor
mvstanton
2013/10/30 10:42:42
Done.
|
| + } |
| +} |
| + |
| + |
| void Heap::RepairFreeListsAfterBoot() { |
| PagedSpaces spaces(this); |
| for (PagedSpace* space = spaces.next(); |
| @@ -2453,6 +2463,7 @@ MaybeObject* Heap::AllocatePartialMap(InstanceType instance_type, |
| int bit_field3 = Map::EnumLengthBits::encode(Map::kInvalidEnumCache) | |
| Map::OwnsDescriptors::encode(true); |
| reinterpret_cast<Map*>(result)->set_bit_field3(bit_field3); |
| + reinterpret_cast<Map*>(result)->set_bit_field4(0); |
| return result; |
| } |
| @@ -2486,6 +2497,7 @@ MaybeObject* Heap::AllocateMap(InstanceType instance_type, |
| Map::OwnsDescriptors::encode(true); |
| map->set_bit_field3(bit_field3); |
| map->set_elements_kind(elements_kind); |
| + map->set_bit_field4(0); |
| return map; |
| } |