| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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_PROFILER_H_ | 5 #ifndef VM_PROFILER_H_ |
| 6 #define VM_PROFILER_H_ | 6 #define VM_PROFILER_H_ |
| 7 | 7 |
| 8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
| 9 #include "vm/bitfield.h" | 9 #include "vm/bitfield.h" |
| 10 #include "vm/code_observers.h" | 10 #include "vm/code_observers.h" |
| (...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 349 static intptr_t pcs_length_; | 349 static intptr_t pcs_length_; |
| 350 enum StateBits { | 350 enum StateBits { |
| 351 kHeadSampleBit = 0, | 351 kHeadSampleBit = 0, |
| 352 kLeafFrameIsDartBit = 1, | 352 kLeafFrameIsDartBit = 1, |
| 353 kIgnoreBit = 2, | 353 kIgnoreBit = 2, |
| 354 kExitFrameBit = 3, | 354 kExitFrameBit = 3, |
| 355 kMissingFrameInsertedBit = 4, | 355 kMissingFrameInsertedBit = 4, |
| 356 kTruncatedTraceBit = 5, | 356 kTruncatedTraceBit = 5, |
| 357 kClassAllocationSampleBit = 6, | 357 kClassAllocationSampleBit = 6, |
| 358 kContinuationSampleBit = 7, | 358 kContinuationSampleBit = 7, |
| 359 kThreadTaskBit = 8, // 5 bits. | 359 kThreadTaskBit = 8, // 4 bits. |
| 360 kNextFreeBit = 13, | 360 kNextFreeBit = 12, |
| 361 }; | 361 }; |
| 362 class HeadSampleBit : public BitField<uword, bool, kHeadSampleBit, 1> {}; | 362 class HeadSampleBit : public BitField<uword, bool, kHeadSampleBit, 1> {}; |
| 363 class LeafFrameIsDart : | 363 class LeafFrameIsDart : |
| 364 public BitField<uword, bool, kLeafFrameIsDartBit, 1> {}; | 364 public BitField<uword, bool, kLeafFrameIsDartBit, 1> {}; |
| 365 class IgnoreBit : public BitField<uword, bool, kIgnoreBit, 1> {}; | 365 class IgnoreBit : public BitField<uword, bool, kIgnoreBit, 1> {}; |
| 366 class ExitFrameBit : public BitField<uword, bool, kExitFrameBit, 1> {}; | 366 class ExitFrameBit : public BitField<uword, bool, kExitFrameBit, 1> {}; |
| 367 class MissingFrameInsertedBit | 367 class MissingFrameInsertedBit |
| 368 : public BitField<uword, bool, kMissingFrameInsertedBit, 1> {}; | 368 : public BitField<uword, bool, kMissingFrameInsertedBit, 1> {}; |
| 369 class TruncatedTraceBit : | 369 class TruncatedTraceBit : |
| 370 public BitField<uword, bool, kTruncatedTraceBit, 1> {}; | 370 public BitField<uword, bool, kTruncatedTraceBit, 1> {}; |
| 371 class ClassAllocationSampleBit | 371 class ClassAllocationSampleBit |
| 372 : public BitField<uword, bool, kClassAllocationSampleBit, 1> {}; | 372 : public BitField<uword, bool, kClassAllocationSampleBit, 1> {}; |
| 373 class ContinuationSampleBit | 373 class ContinuationSampleBit |
| 374 : public BitField<uword, bool, kContinuationSampleBit, 1> {}; | 374 : public BitField<uword, bool, kContinuationSampleBit, 1> {}; |
| 375 class ThreadTaskBit | 375 class ThreadTaskBit |
| 376 : public BitField<uword, Thread::TaskKind, kThreadTaskBit, 5> {}; | 376 : public BitField<uword, Thread::TaskKind, kThreadTaskBit, 4> {}; |
| 377 | 377 |
| 378 int64_t timestamp_; | 378 int64_t timestamp_; |
| 379 ThreadId tid_; | 379 ThreadId tid_; |
| 380 Isolate* isolate_; | 380 Isolate* isolate_; |
| 381 uword pc_marker_; | 381 uword pc_marker_; |
| 382 uword stack_buffer_[kStackBufferSizeInWords]; | 382 uword stack_buffer_[kStackBufferSizeInWords]; |
| 383 uword vm_tag_; | 383 uword vm_tag_; |
| 384 uword user_tag_; | 384 uword user_tag_; |
| 385 uword metadata_; | 385 uword metadata_; |
| 386 uword lr_; | 386 uword lr_; |
| (...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 655 private: | 655 private: |
| 656 ZoneGrowableArray<ProcessedSample*> samples_; | 656 ZoneGrowableArray<ProcessedSample*> samples_; |
| 657 CodeLookupTable* code_lookup_table_; | 657 CodeLookupTable* code_lookup_table_; |
| 658 | 658 |
| 659 DISALLOW_COPY_AND_ASSIGN(ProcessedSampleBuffer); | 659 DISALLOW_COPY_AND_ASSIGN(ProcessedSampleBuffer); |
| 660 }; | 660 }; |
| 661 | 661 |
| 662 } // namespace dart | 662 } // namespace dart |
| 663 | 663 |
| 664 #endif // VM_PROFILER_H_ | 664 #endif // VM_PROFILER_H_ |
| OLD | NEW |