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_HEAP_MARK_COMPACT_H_ | 5 #ifndef V8_HEAP_MARK_COMPACT_H_ |
6 #define V8_HEAP_MARK_COMPACT_H_ | 6 #define V8_HEAP_MARK_COMPACT_H_ |
7 | 7 |
8 #include "src/base/bits.h" | 8 #include "src/base/bits.h" |
9 #include "src/heap/spaces.h" | 9 #include "src/heap/spaces.h" |
10 | 10 |
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
312 if (slot >= reinterpret_cast<ObjectSlot>(NUMBER_OF_SLOT_TYPES)) { | 312 if (slot >= reinterpret_cast<ObjectSlot>(NUMBER_OF_SLOT_TYPES)) { |
313 DCHECK_NOT_NULL(*slot); | 313 DCHECK_NOT_NULL(*slot); |
314 } | 314 } |
315 #endif | 315 #endif |
316 slots_[idx_++] = slot; | 316 slots_[idx_++] = slot; |
317 } | 317 } |
318 | 318 |
319 enum SlotType { | 319 enum SlotType { |
320 EMBEDDED_OBJECT_SLOT, | 320 EMBEDDED_OBJECT_SLOT, |
321 RELOCATED_CODE_OBJECT, | 321 RELOCATED_CODE_OBJECT, |
| 322 CELL_TARGET_SLOT, |
322 CODE_TARGET_SLOT, | 323 CODE_TARGET_SLOT, |
323 CODE_ENTRY_SLOT, | 324 CODE_ENTRY_SLOT, |
324 DEBUG_TARGET_SLOT, | 325 DEBUG_TARGET_SLOT, |
325 JS_RETURN_SLOT, | 326 JS_RETURN_SLOT, |
326 NUMBER_OF_SLOT_TYPES | 327 NUMBER_OF_SLOT_TYPES |
327 }; | 328 }; |
328 | 329 |
329 static const char* SlotTypeToString(SlotType type) { | 330 static const char* SlotTypeToString(SlotType type) { |
330 switch (type) { | 331 switch (type) { |
331 case EMBEDDED_OBJECT_SLOT: | 332 case EMBEDDED_OBJECT_SLOT: |
332 return "EMBEDDED_OBJECT_SLOT"; | 333 return "EMBEDDED_OBJECT_SLOT"; |
333 case RELOCATED_CODE_OBJECT: | 334 case RELOCATED_CODE_OBJECT: |
334 return "RELOCATED_CODE_OBJECT"; | 335 return "RELOCATED_CODE_OBJECT"; |
| 336 case CELL_TARGET_SLOT: |
| 337 return "CELL_TARGET_SLOT"; |
335 case CODE_TARGET_SLOT: | 338 case CODE_TARGET_SLOT: |
336 return "CODE_TARGET_SLOT"; | 339 return "CODE_TARGET_SLOT"; |
337 case CODE_ENTRY_SLOT: | 340 case CODE_ENTRY_SLOT: |
338 return "CODE_ENTRY_SLOT"; | 341 return "CODE_ENTRY_SLOT"; |
339 case DEBUG_TARGET_SLOT: | 342 case DEBUG_TARGET_SLOT: |
340 return "DEBUG_TARGET_SLOT"; | 343 return "DEBUG_TARGET_SLOT"; |
341 case JS_RETURN_SLOT: | 344 case JS_RETURN_SLOT: |
342 return "JS_RETURN_SLOT"; | 345 return "JS_RETURN_SLOT"; |
343 case NUMBER_OF_SLOT_TYPES: | 346 case NUMBER_OF_SLOT_TYPES: |
344 return "NUMBER_OF_SLOT_TYPES"; | 347 return "NUMBER_OF_SLOT_TYPES"; |
(...skipping 651 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
996 private: | 999 private: |
997 MarkCompactCollector* collector_; | 1000 MarkCompactCollector* collector_; |
998 }; | 1001 }; |
999 | 1002 |
1000 | 1003 |
1001 const char* AllocationSpaceName(AllocationSpace space); | 1004 const char* AllocationSpaceName(AllocationSpace space); |
1002 } | 1005 } |
1003 } // namespace v8::internal | 1006 } // namespace v8::internal |
1004 | 1007 |
1005 #endif // V8_HEAP_MARK_COMPACT_H_ | 1008 #endif // V8_HEAP_MARK_COMPACT_H_ |
OLD | NEW |