Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index a5d0dbf4398fe0b53b5fa14c12f18522d96bf5da..35fae13d37af345b892f0ac7e347c27dc1f92eae 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -4547,7 +4547,9 @@ Handle<Map> NormalizedMapCache::Get(Handle<NormalizedMapCache> cache, |
Map::kCodeCacheOffset) == 0); |
STATIC_ASSERT(Map::kDependentCodeOffset == |
Map::kCodeCacheOffset + kPointerSize); |
- int offset = Map::kDependentCodeOffset + kPointerSize; |
+ STATIC_ASSERT(Map::kDependentICOffset == |
+ Map::kDependentCodeOffset + kPointerSize); |
+ int offset = Map::kDependentICOffset + kPointerSize; |
ASSERT(memcmp(fresh->address() + offset, |
Handle<Map>::cast(result)->address() + offset, |
Map::kSize - offset) == 0); |
@@ -11535,6 +11537,13 @@ void Map::AddDependentCode(DependentCode::DependencyGroup group, |
} |
+void Map::AddDependentIC(Handle<Code> stub) { |
+ ASSERT(stub->next_code_link()->IsUndefined()); |
+ stub->set_next_code_link(dependent_ic()); |
+ set_dependent_ic(*stub); |
+} |
+ |
+ |
DependentCode::GroupStartIndexes::GroupStartIndexes(DependentCode* entries) { |
Recompute(entries); |
} |