| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
| 6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
| 7 | 7 |
| 8 #include <iosfwd> | 8 #include <iosfwd> |
| 9 | 9 |
| 10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
| (...skipping 5831 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5842 // Returns true if the current map doesn't have DICTIONARY_ELEMENTS but if a | 5842 // Returns true if the current map doesn't have DICTIONARY_ELEMENTS but if a |
| 5843 // map with DICTIONARY_ELEMENTS was found in the prototype chain. | 5843 // map with DICTIONARY_ELEMENTS was found in the prototype chain. |
| 5844 bool DictionaryElementsInPrototypeChainOnly(); | 5844 bool DictionaryElementsInPrototypeChainOnly(); |
| 5845 | 5845 |
| 5846 inline bool HasTransitionArray() const; | 5846 inline bool HasTransitionArray() const; |
| 5847 inline bool HasElementsTransition(); | 5847 inline bool HasElementsTransition(); |
| 5848 inline Map* elements_transition_map(); | 5848 inline Map* elements_transition_map(); |
| 5849 | 5849 |
| 5850 inline Map* GetTransition(int transition_index); | 5850 inline Map* GetTransition(int transition_index); |
| 5851 inline int SearchSpecialTransition(Symbol* name); | 5851 inline int SearchSpecialTransition(Symbol* name); |
| 5852 inline int SearchTransition(PropertyType type, Name* name, | 5852 inline int SearchTransition(PropertyKind kind, Name* name, |
| 5853 PropertyAttributes attributes); | 5853 PropertyAttributes attributes); |
| 5854 inline FixedArrayBase* GetInitialElements(); | 5854 inline FixedArrayBase* GetInitialElements(); |
| 5855 | 5855 |
| 5856 DECL_ACCESSORS(transitions, TransitionArray) | 5856 DECL_ACCESSORS(transitions, TransitionArray) |
| 5857 | 5857 |
| 5858 static inline Handle<String> ExpectedTransitionKey(Handle<Map> map); | 5858 static inline Handle<String> ExpectedTransitionKey(Handle<Map> map); |
| 5859 static inline Handle<Map> ExpectedTransitionTarget(Handle<Map> map); | 5859 static inline Handle<Map> ExpectedTransitionTarget(Handle<Map> map); |
| 5860 | 5860 |
| 5861 // Try to follow an existing transition to a field with attributes NONE. The | 5861 // Try to follow an existing transition to a field with attributes NONE. The |
| 5862 // return value indicates whether the transition was successful. | 5862 // return value indicates whether the transition was successful. |
| (...skipping 556 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6419 // Zaps the contents of backing data structures. Note that the | 6419 // Zaps the contents of backing data structures. Note that the |
| 6420 // heap verifier (i.e. VerifyMarkingVisitor) relies on zapping of objects | 6420 // heap verifier (i.e. VerifyMarkingVisitor) relies on zapping of objects |
| 6421 // holding weak references when incremental marking is used, because it also | 6421 // holding weak references when incremental marking is used, because it also |
| 6422 // iterates over objects that are otherwise unreachable. | 6422 // iterates over objects that are otherwise unreachable. |
| 6423 // In general we only want to call these functions in release mode when | 6423 // In general we only want to call these functions in release mode when |
| 6424 // heap verification is turned on. | 6424 // heap verification is turned on. |
| 6425 void ZapPrototypeTransitions(); | 6425 void ZapPrototypeTransitions(); |
| 6426 void ZapTransitions(); | 6426 void ZapTransitions(); |
| 6427 | 6427 |
| 6428 void DeprecateTransitionTree(); | 6428 void DeprecateTransitionTree(); |
| 6429 bool DeprecateTarget(PropertyType type, Name* key, | 6429 bool DeprecateTarget(PropertyKind kind, Name* key, |
| 6430 PropertyAttributes attributes, | 6430 PropertyAttributes attributes, |
| 6431 DescriptorArray* new_descriptors, | 6431 DescriptorArray* new_descriptors, |
| 6432 LayoutDescriptor* new_layout_descriptor); | 6432 LayoutDescriptor* new_layout_descriptor); |
| 6433 | 6433 |
| 6434 Map* FindLastMatchMap(int verbatim, int length, DescriptorArray* descriptors); | 6434 Map* FindLastMatchMap(int verbatim, int length, DescriptorArray* descriptors); |
| 6435 | 6435 |
| 6436 void UpdateFieldType(int descriptor_number, Handle<Name> name, | 6436 void UpdateFieldType(int descriptor_number, Handle<Name> name, |
| 6437 Representation new_representation, | 6437 Representation new_representation, |
| 6438 Handle<HeapType> new_type); | 6438 Handle<HeapType> new_type); |
| 6439 | 6439 |
| (...skipping 4603 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11043 } else { | 11043 } else { |
| 11044 value &= ~(1 << bit_position); | 11044 value &= ~(1 << bit_position); |
| 11045 } | 11045 } |
| 11046 return value; | 11046 return value; |
| 11047 } | 11047 } |
| 11048 }; | 11048 }; |
| 11049 | 11049 |
| 11050 } } // namespace v8::internal | 11050 } } // namespace v8::internal |
| 11051 | 11051 |
| 11052 #endif // V8_OBJECTS_H_ | 11052 #endif // V8_OBJECTS_H_ |
| OLD | NEW |