Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 4fe899fe5f825e9cd97e0fa5e8f050a0eb58b2b8..7dc440862ba102b4bd75282cb3b7bb1bdea5c030 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -840,6 +840,7 @@ class KeyAccumulator; |
class LayoutDescriptor; |
class LiteralsArray; |
class LookupIterator; |
+class FieldType; |
class ObjectHashTable; |
class ObjectVisitor; |
class PropertyCell; |
@@ -852,11 +853,6 @@ class TypeFeedbackVector; |
class WeakCell; |
class TransitionArray; |
-// We cannot just say "class HeapType;" if it is created from a template... =8-? |
-template<class> class TypeImpl; |
-struct HeapTypeConfig; |
-typedef TypeImpl<HeapTypeConfig> HeapType; |
- |
// A template-ized version of the IsXXX functions. |
template <class C> inline bool Is(Object* obj); |
@@ -1098,7 +1094,8 @@ class Object { |
inline bool FilterKey(PropertyFilter filter); |
- Handle<HeapType> OptimalType(Isolate* isolate, Representation representation); |
+ Handle<FieldType> OptimalType(Isolate* isolate, |
+ Representation representation); |
inline static Handle<Object> NewStorageFor(Isolate* isolate, |
Handle<Object> object, |
@@ -2917,7 +2914,7 @@ class DescriptorArray: public FixedArray { |
inline PropertyDetails GetDetails(int descriptor_number); |
inline PropertyType GetType(int descriptor_number); |
inline int GetFieldIndex(int descriptor_number); |
- inline HeapType* GetFieldType(int descriptor_number); |
+ inline FieldType* GetFieldType(int descriptor_number); |
inline Object* GetConstant(int descriptor_number); |
inline Object* GetCallbacksObject(int descriptor_number); |
inline AccessorDescriptor* GetCallbacks(int descriptor_number); |
@@ -5708,17 +5705,17 @@ class Map: public HeapObject { |
int* old_number_of_fields); |
// TODO(ishell): moveit! |
static Handle<Map> GeneralizeAllFieldRepresentations(Handle<Map> map); |
- MUST_USE_RESULT static Handle<HeapType> GeneralizeFieldType( |
- Representation rep1, Handle<HeapType> type1, Representation rep2, |
- Handle<HeapType> type2, Isolate* isolate); |
+ MUST_USE_RESULT static Handle<FieldType> GeneralizeFieldType( |
+ Representation rep1, Handle<FieldType> type1, Representation rep2, |
+ Handle<FieldType> type2, Isolate* isolate); |
static void GeneralizeFieldType(Handle<Map> map, int modify_index, |
Representation new_representation, |
- Handle<HeapType> new_field_type); |
+ Handle<FieldType> new_field_type); |
static Handle<Map> ReconfigureProperty(Handle<Map> map, int modify_index, |
PropertyKind new_kind, |
PropertyAttributes new_attributes, |
Representation new_representation, |
- Handle<HeapType> new_field_type, |
+ Handle<FieldType> new_field_type, |
StoreMode store_mode); |
static Handle<Map> CopyGeneralizeAllRepresentations( |
Handle<Map> map, int modify_index, StoreMode store_mode, |
@@ -5840,11 +5837,8 @@ class Map: public HeapObject { |
TransitionFlag flag); |
MUST_USE_RESULT static MaybeHandle<Map> CopyWithField( |
- Handle<Map> map, |
- Handle<Name> name, |
- Handle<HeapType> type, |
- PropertyAttributes attributes, |
- Representation representation, |
+ Handle<Map> map, Handle<Name> name, Handle<FieldType> type, |
+ PropertyAttributes attributes, Representation representation, |
TransitionFlag flag); |
MUST_USE_RESULT static MaybeHandle<Map> CopyWithConstant( |
@@ -6178,16 +6172,14 @@ class Map: public HeapObject { |
void PrintReconfiguration(FILE* file, int modify_index, PropertyKind kind, |
PropertyAttributes attributes); |
- void PrintGeneralization(FILE* file, |
- const char* reason, |
- int modify_index, |
- int split, |
- int descriptors, |
- bool constant_to_field, |
+ void PrintGeneralization(FILE* file, const char* reason, int modify_index, |
+ int split, int descriptors, bool constant_to_field, |
Representation old_representation, |
Representation new_representation, |
- HeapType* old_field_type, |
- HeapType* new_field_type); |
+ MaybeHandle<FieldType> old_field_type, |
+ MaybeHandle<Object> old_value, |
+ MaybeHandle<FieldType> new_field_type, |
+ MaybeHandle<Object> new_value); |
static const int kFastPropertiesSoftLimit = 12; |
static const int kMaxFastProperties = 128; |