| 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_SNAPSHOT_H_ | 5 #ifndef VM_SNAPSHOT_H_ |
| 6 #define VM_SNAPSHOT_H_ | 6 #define VM_SNAPSHOT_H_ |
| 7 | 7 |
| 8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
| 9 #include "vm/allocation.h" | 9 #include "vm/allocation.h" |
| 10 #include "vm/bitfield.h" | 10 #include "vm/bitfield.h" |
| (...skipping 659 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 670 friend class RawUserTag; | 670 friend class RawUserTag; |
| 671 friend class SnapshotWriterVisitor; | 671 friend class SnapshotWriterVisitor; |
| 672 friend class WriteInlinedObjectVisitor; | 672 friend class WriteInlinedObjectVisitor; |
| 673 DISALLOW_COPY_AND_ASSIGN(SnapshotWriter); | 673 DISALLOW_COPY_AND_ASSIGN(SnapshotWriter); |
| 674 }; | 674 }; |
| 675 | 675 |
| 676 | 676 |
| 677 class FullSnapshotWriter : public SnapshotWriter { | 677 class FullSnapshotWriter : public SnapshotWriter { |
| 678 public: | 678 public: |
| 679 static const intptr_t kInitialSize = 64 * KB; | 679 static const intptr_t kInitialSize = 64 * KB; |
| 680 FullSnapshotWriter(uint8_t** buffer, ReAlloc alloc) | 680 FullSnapshotWriter(uint8_t** vm_isolate_snapshot_buffer, |
| 681 : SnapshotWriter(Snapshot::kFull, buffer, alloc, kInitialSize, true) { | 681 uint8_t** isolate_snapshot_buffer, |
| 682 ASSERT(buffer != NULL); | 682 ReAlloc alloc) |
| 683 : SnapshotWriter(Snapshot::kFull, |
| 684 isolate_snapshot_buffer, |
| 685 alloc, |
| 686 kInitialSize, |
| 687 true) { |
| 688 ASSERT(vm_isolate_snapshot_buffer != NULL); |
| 689 ASSERT(isolate_snapshot_buffer != NULL); |
| 683 ASSERT(alloc != NULL); | 690 ASSERT(alloc != NULL); |
| 684 } | 691 } |
| 685 ~FullSnapshotWriter() { } | 692 ~FullSnapshotWriter() { } |
| 686 | 693 |
| 687 // Writes a full snapshot of the Isolate. | 694 // Writes a full snapshot of the Isolate. |
| 688 void WriteFullSnapshot(); | 695 void WriteFullSnapshot(); |
| 689 | 696 |
| 697 intptr_t VmIsolateSnapshotSize() const { return 0; } |
| 698 intptr_t IsolateSnapshotSize() const { return BytesWritten(); } |
| 699 |
| 690 private: | 700 private: |
| 691 DISALLOW_COPY_AND_ASSIGN(FullSnapshotWriter); | 701 DISALLOW_COPY_AND_ASSIGN(FullSnapshotWriter); |
| 692 }; | 702 }; |
| 693 | 703 |
| 694 | 704 |
| 695 class ScriptSnapshotWriter : public SnapshotWriter { | 705 class ScriptSnapshotWriter : public SnapshotWriter { |
| 696 public: | 706 public: |
| 697 static const intptr_t kInitialSize = 64 * KB; | 707 static const intptr_t kInitialSize = 64 * KB; |
| 698 ScriptSnapshotWriter(uint8_t** buffer, ReAlloc alloc) | 708 ScriptSnapshotWriter(uint8_t** buffer, ReAlloc alloc) |
| 699 : SnapshotWriter(Snapshot::kScript, buffer, alloc, kInitialSize, true) { | 709 : SnapshotWriter(Snapshot::kScript, buffer, alloc, kInitialSize, true) { |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 750 private: | 760 private: |
| 751 SnapshotWriter* writer_; | 761 SnapshotWriter* writer_; |
| 752 bool as_references_; | 762 bool as_references_; |
| 753 | 763 |
| 754 DISALLOW_COPY_AND_ASSIGN(SnapshotWriterVisitor); | 764 DISALLOW_COPY_AND_ASSIGN(SnapshotWriterVisitor); |
| 755 }; | 765 }; |
| 756 | 766 |
| 757 } // namespace dart | 767 } // namespace dart |
| 758 | 768 |
| 759 #endif // VM_SNAPSHOT_H_ | 769 #endif // VM_SNAPSHOT_H_ |
| OLD | NEW |