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_TRANSITIONS_H_ | 5 #ifndef V8_TRANSITIONS_H_ |
6 #define V8_TRANSITIONS_H_ | 6 #define V8_TRANSITIONS_H_ |
7 | 7 |
8 #include "src/checks.h" | 8 #include "src/checks.h" |
9 #include "src/elements-kind.h" | 9 #include "src/elements-kind.h" |
10 #include "src/heap/heap.h" | 10 #include "src/heap/heap.h" |
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
292 | 292 |
293 // Compares two details, returns -1 if details1 is "less" than details2, | 293 // Compares two details, returns -1 if details1 is "less" than details2, |
294 // 0 if details1 equal to details2 and 1 otherwise. | 294 // 0 if details1 equal to details2 and 1 otherwise. |
295 static inline int CompareDetails(PropertyKind kind1, | 295 static inline int CompareDetails(PropertyKind kind1, |
296 PropertyAttributes attributes1, | 296 PropertyAttributes attributes1, |
297 PropertyKind kind2, | 297 PropertyKind kind2, |
298 PropertyAttributes attributes2); | 298 PropertyAttributes attributes2); |
299 | 299 |
300 inline void Set(int transition_number, Name* key, Map* target); | 300 inline void Set(int transition_number, Name* key, Map* target); |
301 | 301 |
302 // Copy a single transition from the origin array. | |
303 inline void NoIncrementalWriteBarrierCopyFrom(TransitionArray* origin, | |
304 int origin_transition, | |
305 int target_transition); | |
306 | |
307 #ifdef DEBUG | 302 #ifdef DEBUG |
308 static void CheckNewTransitionsAreConsistent(Handle<Map> map, | 303 static void CheckNewTransitionsAreConsistent(Handle<Map> map, |
309 TransitionArray* old_transitions, | 304 TransitionArray* old_transitions, |
310 Object* transitions); | 305 Object* transitions); |
311 #endif | 306 #endif |
312 | 307 |
313 DISALLOW_IMPLICIT_CONSTRUCTORS(TransitionArray); | 308 DISALLOW_IMPLICIT_CONSTRUCTORS(TransitionArray); |
314 }; | 309 }; |
315 | 310 |
316 | 311 |
317 } // namespace internal | 312 } // namespace internal |
318 } // namespace v8 | 313 } // namespace v8 |
319 | 314 |
320 #endif // V8_TRANSITIONS_H_ | 315 #endif // V8_TRANSITIONS_H_ |
OLD | NEW |