Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 1ee31b6dee9c58f8a9c41b36c6210577ebf75bca..6c3b732bdd07daacdbeb621cde254de679d2b54a 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -4980,6 +4980,8 @@ class Code: public HeapObject { |
}; |
+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 |
@@ -5033,8 +5035,14 @@ class DependentCode: public FixedArray { |
bool Contains(DependencyGroup group, Code* code); |
static Handle<DependentCode> Insert(Handle<DependentCode> entries, |
- DependencyGroup group, |
- Handle<Code> value); |
+ DependencyGroup group, |
+ Handle<Object> object); |
+ void UpdateToFinishedCode(DependencyGroup group, |
+ CompilationInfo* info, |
+ Code* code); |
+ void RemoveCompilationInfo(DependentCode::DependencyGroup group, |
+ CompilationInfo* info); |
+ |
void DeoptimizeDependentCodeGroup(Isolate* isolate, |
DependentCode::DependencyGroup group); |
@@ -5042,10 +5050,14 @@ class DependentCode: public FixedArray { |
// and the mark compact collector. |
inline int number_of_entries(DependencyGroup group); |
inline void set_number_of_entries(DependencyGroup group, int value); |
+ inline bool is_code_at(int i); |
inline Code* code_at(int i); |
- inline void set_code_at(int i, Code* value); |
- inline Object** code_slot_at(int i); |
- inline void clear_code_at(int i); |
+ inline CompilationInfo* compilation_info_at(int i); |
+ inline void set_object_at(int i, Object* object); |
+ inline Object** slot_at(int i); |
+ inline Object* object_at(int i); |
+ inline void clear_at(int i); |
+ inline void copy(int from, int to); |
static inline DependentCode* cast(Object* object); |
private: |
@@ -5554,8 +5566,11 @@ class Map: public HeapObject { |
inline bool CanOmitPrototypeChecks(); |
- inline void AddDependentCode(DependentCode::DependencyGroup group, |
- Handle<Code> code); |
+ void AddDependentCompilationInfo(DependentCode::DependencyGroup group, |
+ CompilationInfo* info); |
+ |
+ void AddDependentCode(DependentCode::DependencyGroup group, |
+ Handle<Code> code); |
bool IsMapInArrayPrototypeChain(); |