Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index f16dc98a13e7ca3a1b6b2a1952c0c062e90a1cb8..722a5424c03dd86386af88cc41f5caf5c2d063b9 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -5696,6 +5696,8 @@ |
}; |
+class CompilationInfo; |
+ |
// This class describes the layout of dependent codes array of a map. The |
// array is partitioned into several groups of dependent codes. Each group |
// contains codes with the same dependency on the map. The array has the |
@@ -5765,7 +5767,7 @@ |
bool Contains(DependencyGroup group, WeakCell* code_cell); |
- static Handle<DependentCode> InsertCompilationDependencies( |
+ static Handle<DependentCode> InsertCompilationInfo( |
Handle<DependentCode> entries, DependencyGroup group, |
Handle<Foreign> info); |
@@ -5776,8 +5778,8 @@ |
void UpdateToFinishedCode(DependencyGroup group, Foreign* info, |
WeakCell* code_cell); |
- void RemoveCompilationDependencies(DependentCode::DependencyGroup group, |
- Foreign* info); |
+ void RemoveCompilationInfo(DependentCode::DependencyGroup group, |
+ Foreign* info); |
void DeoptimizeDependentCodeGroup(Isolate* isolate, |
DependentCode::DependencyGroup group); |
@@ -5794,6 +5796,9 @@ |
inline void clear_at(int i); |
inline void copy(int from, int to); |
DECLARE_CAST(DependentCode) |
+ |
+ static DependentCode* ForObject(Handle<HeapObject> object, |
+ DependencyGroup group); |
static const char* DependencyGroupName(DependencyGroup group); |
static void SetMarkedForDeoptimization(Code* code, DependencyGroup group); |
@@ -6351,6 +6356,10 @@ |
} |
inline bool CanOmitMapChecks(); |
+ |
+ static void AddDependentCompilationInfo(Handle<Map> map, |
+ DependentCode::DependencyGroup group, |
+ CompilationInfo* info); |
static void AddDependentCode(Handle<Map> map, |
DependentCode::DependencyGroup group, |
@@ -8554,6 +8563,12 @@ |
static void DigestTransitionFeedback(Handle<AllocationSite> site, |
ElementsKind to_kind); |
+ static void RegisterForDeoptOnTenureChange(Handle<AllocationSite> site, |
+ CompilationInfo* info); |
+ |
+ static void RegisterForDeoptOnTransitionChange(Handle<AllocationSite> site, |
+ CompilationInfo* info); |
+ |
DECLARE_PRINTER(AllocationSite) |
DECLARE_VERIFIER(AllocationSite) |
@@ -8584,6 +8599,10 @@ |
kSize> BodyDescriptor; |
private: |
+ static void AddDependentCompilationInfo(Handle<AllocationSite> site, |
+ DependentCode::DependencyGroup group, |
+ CompilationInfo* info); |
+ |
bool PretenuringDecisionMade() { |
return pretenure_decision() != kUndecided; |
} |
@@ -9816,6 +9835,9 @@ |
static Handle<PropertyCell> InvalidateEntry(Handle<NameDictionary> dictionary, |
int entry); |
+ static void AddDependentCompilationInfo(Handle<PropertyCell> cell, |
+ CompilationInfo* info); |
+ |
DECLARE_CAST(PropertyCell) |
// Dispatched behavior. |