| OLD | NEW |
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_LAYOUT_DESCRIPTOR_H_ | 5 #ifndef V8_LAYOUT_DESCRIPTOR_H_ |
| 6 #define V8_LAYOUT_DESCRIPTOR_H_ | 6 #define V8_LAYOUT_DESCRIPTOR_H_ |
| 7 | 7 |
| 8 #include <iosfwd> | 8 #include <iosfwd> |
| 9 | 9 |
| 10 #include "src/objects.h" | 10 #include "src/objects.h" |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 // |map|'s layout descriptor and if it is still fast then returns it. | 54 // |map|'s layout descriptor and if it is still fast then returns it. |
| 55 // Otherwise the |full_layout_descriptor| is returned. | 55 // Otherwise the |full_layout_descriptor| is returned. |
| 56 static Handle<LayoutDescriptor> AppendIfFastOrUseFull( | 56 static Handle<LayoutDescriptor> AppendIfFastOrUseFull( |
| 57 Handle<Map> map, PropertyDetails details, | 57 Handle<Map> map, PropertyDetails details, |
| 58 Handle<LayoutDescriptor> full_layout_descriptor); | 58 Handle<LayoutDescriptor> full_layout_descriptor); |
| 59 | 59 |
| 60 // Layout descriptor that corresponds to an object all fields of which are | 60 // Layout descriptor that corresponds to an object all fields of which are |
| 61 // tagged (FastPointerLayout). | 61 // tagged (FastPointerLayout). |
| 62 V8_INLINE static LayoutDescriptor* FastPointerLayout(); | 62 V8_INLINE static LayoutDescriptor* FastPointerLayout(); |
| 63 | 63 |
| 64 #ifdef DEBUG | 64 #ifdef ENABLE_SLOW_DCHECKS |
| 65 // Check that this layout descriptor corresponds to given map. | 65 // Check that this layout descriptor corresponds to given map. |
| 66 bool IsConsistentWithMap(Map* map); | 66 bool IsConsistentWithMap(Map* map); |
| 67 #endif | 67 #endif |
| 68 | 68 |
| 69 #ifdef OBJECT_PRINT | 69 #ifdef OBJECT_PRINT |
| 70 // For our gdb macros, we should perhaps change these in the future. | 70 // For our gdb macros, we should perhaps change these in the future. |
| 71 void Print(); | 71 void Print(); |
| 72 | 72 |
| 73 void Print(std::ostream& os); // NOLINT | 73 void Print(std::ostream& os); // NOLINT |
| 74 #endif | 74 #endif |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 | 118 |
| 119 private: | 119 private: |
| 120 bool all_fields_tagged_; | 120 bool all_fields_tagged_; |
| 121 int header_size_; | 121 int header_size_; |
| 122 LayoutDescriptor* layout_descriptor_; | 122 LayoutDescriptor* layout_descriptor_; |
| 123 }; | 123 }; |
| 124 } | 124 } |
| 125 } // namespace v8::internal | 125 } // namespace v8::internal |
| 126 | 126 |
| 127 #endif // V8_LAYOUT_DESCRIPTOR_H_ | 127 #endif // V8_LAYOUT_DESCRIPTOR_H_ |
| OLD | NEW |