OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 2654 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2665 inline void PrintTransitions() { | 2665 inline void PrintTransitions() { |
2666 PrintTransitions(stdout); | 2666 PrintTransitions(stdout); |
2667 } | 2667 } |
2668 void PrintTransitions(FILE* out); | 2668 void PrintTransitions(FILE* out); |
2669 #endif | 2669 #endif |
2670 | 2670 |
2671 void PrintElementsTransition( | 2671 void PrintElementsTransition( |
2672 FILE* file, ElementsKind from_kind, FixedArrayBase* from_elements, | 2672 FILE* file, ElementsKind from_kind, FixedArrayBase* from_elements, |
2673 ElementsKind to_kind, FixedArrayBase* to_elements); | 2673 ElementsKind to_kind, FixedArrayBase* to_elements); |
2674 | 2674 |
| 2675 void PrintInstanceMigration(FILE* file, Map* original_map, Map* new_map); |
| 2676 |
2675 #ifdef DEBUG | 2677 #ifdef DEBUG |
2676 // Structure for collecting spill information about JSObjects. | 2678 // Structure for collecting spill information about JSObjects. |
2677 class SpillInformation { | 2679 class SpillInformation { |
2678 public: | 2680 public: |
2679 void Clear(); | 2681 void Clear(); |
2680 void Print(); | 2682 void Print(); |
2681 int number_of_objects_; | 2683 int number_of_objects_; |
2682 int number_of_objects_with_fast_properties_; | 2684 int number_of_objects_with_fast_properties_; |
2683 int number_of_objects_with_fast_elements_; | 2685 int number_of_objects_with_fast_elements_; |
2684 int number_of_fast_used_fields_; | 2686 int number_of_fast_used_fields_; |
(...skipping 2931 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5616 int target_unused); | 5618 int target_unused); |
5617 static Handle<Map> GeneralizeRepresentation( | 5619 static Handle<Map> GeneralizeRepresentation( |
5618 Handle<Map> map, | 5620 Handle<Map> map, |
5619 int modify_index, | 5621 int modify_index, |
5620 Representation new_representation); | 5622 Representation new_representation); |
5621 MUST_USE_RESULT MaybeObject* GeneralizeRepresentation( | 5623 MUST_USE_RESULT MaybeObject* GeneralizeRepresentation( |
5622 int modify_index, | 5624 int modify_index, |
5623 Representation representation); | 5625 Representation representation); |
5624 MUST_USE_RESULT MaybeObject* CopyGeneralizeAllRepresentations(); | 5626 MUST_USE_RESULT MaybeObject* CopyGeneralizeAllRepresentations(); |
5625 | 5627 |
| 5628 void PrintGeneralization(FILE* file, |
| 5629 int modify_index, |
| 5630 int split, |
| 5631 int descriptors, |
| 5632 Representation old_representation, |
| 5633 Representation new_representation); |
| 5634 |
| 5635 // Returns the constructor name (the name (possibly, inferred name) of the |
| 5636 // function that was used to instantiate the object). |
| 5637 String* constructor_name(); |
| 5638 |
5626 // Tells whether the map is attached to SharedFunctionInfo | 5639 // Tells whether the map is attached to SharedFunctionInfo |
5627 // (for inobject slack tracking). | 5640 // (for inobject slack tracking). |
5628 inline void set_attached_to_shared_function_info(bool value); | 5641 inline void set_attached_to_shared_function_info(bool value); |
5629 | 5642 |
5630 inline bool attached_to_shared_function_info(); | 5643 inline bool attached_to_shared_function_info(); |
5631 | 5644 |
5632 // Tells whether the map is shared between objects that may have different | 5645 // Tells whether the map is shared between objects that may have different |
5633 // behavior. If true, the map should never be modified, instead a clone | 5646 // behavior. If true, the map should never be modified, instead a clone |
5634 // should be created and modified. | 5647 // should be created and modified. |
5635 inline void set_is_shared(bool value); | 5648 inline void set_is_shared(bool value); |
(...skipping 4535 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10171 } else { | 10184 } else { |
10172 value &= ~(1 << bit_position); | 10185 value &= ~(1 << bit_position); |
10173 } | 10186 } |
10174 return value; | 10187 return value; |
10175 } | 10188 } |
10176 }; | 10189 }; |
10177 | 10190 |
10178 } } // namespace v8::internal | 10191 } } // namespace v8::internal |
10179 | 10192 |
10180 #endif // V8_OBJECTS_H_ | 10193 #endif // V8_OBJECTS_H_ |
OLD | NEW |