OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_OBJECT_H_ | 5 #ifndef VM_OBJECT_H_ |
6 #define VM_OBJECT_H_ | 6 #define VM_OBJECT_H_ |
7 | 7 |
8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
9 #include "platform/assert.h" | 9 #include "platform/assert.h" |
10 #include "platform/utils.h" | 10 #include "platform/utils.h" |
(...skipping 461 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
472 static const LanguageError& snapshot_writer_error() { | 472 static const LanguageError& snapshot_writer_error() { |
473 ASSERT(snapshot_writer_error_ != NULL); | 473 ASSERT(snapshot_writer_error_ != NULL); |
474 return *snapshot_writer_error_; | 474 return *snapshot_writer_error_; |
475 } | 475 } |
476 | 476 |
477 static const LanguageError& branch_offset_error() { | 477 static const LanguageError& branch_offset_error() { |
478 ASSERT(branch_offset_error_ != NULL); | 478 ASSERT(branch_offset_error_ != NULL); |
479 return *branch_offset_error_; | 479 return *branch_offset_error_; |
480 } | 480 } |
481 | 481 |
| 482 static const Array& vm_isolate_snapshot_object_table() { |
| 483 ASSERT(vm_isolate_snapshot_object_table_ != NULL); |
| 484 return *vm_isolate_snapshot_object_table_; |
| 485 } |
| 486 static void InitVmIsolateSnapshotObjectTable(intptr_t len); |
| 487 |
482 static RawClass* class_class() { return class_class_; } | 488 static RawClass* class_class() { return class_class_; } |
483 static RawClass* dynamic_class() { return dynamic_class_; } | 489 static RawClass* dynamic_class() { return dynamic_class_; } |
484 static RawClass* void_class() { return void_class_; } | 490 static RawClass* void_class() { return void_class_; } |
485 static RawType* dynamic_type() { return dynamic_type_; } | 491 static RawType* dynamic_type() { return dynamic_type_; } |
486 static RawType* void_type() { return void_type_; } | 492 static RawType* void_type() { return void_type_; } |
487 static RawClass* unresolved_class_class() { return unresolved_class_class_; } | 493 static RawClass* unresolved_class_class() { return unresolved_class_class_; } |
488 static RawClass* type_arguments_class() { return type_arguments_class_; } | 494 static RawClass* type_arguments_class() { return type_arguments_class_; } |
489 static RawClass* patch_class_class() { return patch_class_class_; } | 495 static RawClass* patch_class_class() { return patch_class_class_; } |
490 static RawClass* function_class() { return function_class_; } | 496 static RawClass* function_class() { return function_class_; } |
491 static RawClass* closure_data_class() { return closure_data_class_; } | 497 static RawClass* closure_data_class() { return closure_data_class_; } |
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
783 static Array* extractor_parameter_names_; | 789 static Array* extractor_parameter_names_; |
784 static Instance* sentinel_; | 790 static Instance* sentinel_; |
785 static Instance* transition_sentinel_; | 791 static Instance* transition_sentinel_; |
786 static Instance* unknown_constant_; | 792 static Instance* unknown_constant_; |
787 static Instance* non_constant_; | 793 static Instance* non_constant_; |
788 static Bool* bool_true_; | 794 static Bool* bool_true_; |
789 static Bool* bool_false_; | 795 static Bool* bool_false_; |
790 static Smi* smi_illegal_cid_; | 796 static Smi* smi_illegal_cid_; |
791 static LanguageError* snapshot_writer_error_; | 797 static LanguageError* snapshot_writer_error_; |
792 static LanguageError* branch_offset_error_; | 798 static LanguageError* branch_offset_error_; |
| 799 static Array* vm_isolate_snapshot_object_table_; |
793 | 800 |
794 friend void ClassTable::Register(const Class& cls); | 801 friend void ClassTable::Register(const Class& cls); |
795 friend void RawObject::Validate(Isolate* isolate) const; | 802 friend void RawObject::Validate(Isolate* isolate) const; |
796 friend class Closure; | 803 friend class Closure; |
797 friend class SnapshotReader; | 804 friend class SnapshotReader; |
798 friend class OneByteString; | 805 friend class OneByteString; |
799 friend class TwoByteString; | 806 friend class TwoByteString; |
800 friend class ExternalOneByteString; | 807 friend class ExternalOneByteString; |
801 friend class ExternalTwoByteString; | 808 friend class ExternalTwoByteString; |
802 friend class Isolate; | 809 friend class Isolate; |
(...skipping 6968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7771 | 7778 |
7772 | 7779 |
7773 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, | 7780 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, |
7774 intptr_t index) { | 7781 intptr_t index) { |
7775 return array.At((index * kEntryLength) + kTargetFunctionIndex); | 7782 return array.At((index * kEntryLength) + kTargetFunctionIndex); |
7776 } | 7783 } |
7777 | 7784 |
7778 } // namespace dart | 7785 } // namespace dart |
7779 | 7786 |
7780 #endif // VM_OBJECT_H_ | 7787 #endif // VM_OBJECT_H_ |
OLD | NEW |