Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(285)

Side by Side Diff: runtime/vm/object_store.h

Issue 2646443005: Track async causal stack traces (Closed)
Patch Set: rebase Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « runtime/vm/object_service.cc ('k') | runtime/vm/object_store.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 RUNTIME_VM_OBJECT_STORE_H_ 5 #ifndef RUNTIME_VM_OBJECT_STORE_H_
6 #define RUNTIME_VM_OBJECT_STORE_H_ 6 #define RUNTIME_VM_OBJECT_STORE_H_
7 7
8 #include "vm/object.h" 8 #include "vm/object.h"
9 9
10 namespace dart { 10 namespace dart {
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after
431 431
432 RawFunction* simple_instance_of_function() const { 432 RawFunction* simple_instance_of_function() const {
433 return simple_instance_of_function_; 433 return simple_instance_of_function_;
434 } 434 }
435 RawFunction* simple_instance_of_true_function() const { 435 RawFunction* simple_instance_of_true_function() const {
436 return simple_instance_of_true_function_; 436 return simple_instance_of_true_function_;
437 } 437 }
438 RawFunction* simple_instance_of_false_function() const { 438 RawFunction* simple_instance_of_false_function() const {
439 return simple_instance_of_false_function_; 439 return simple_instance_of_false_function_;
440 } 440 }
441 RawFunction* async_clear_thread_stack_trace() const {
442 return async_clear_thread_stack_trace_;
443 }
444 void set_async_clear_thread_stack_trace(const Function& func) {
445 async_clear_thread_stack_trace_ = func.raw();
446 ASSERT(async_clear_thread_stack_trace_ != Object::null());
447 }
448 RawFunction* async_set_thread_stack_trace() const {
449 return async_set_thread_stack_trace_;
450 }
451 void set_async_set_thread_stack_trace(const Function& func) {
452 async_set_thread_stack_trace_ = func.raw();
453 ASSERT(async_set_thread_stack_trace_ != Object::null());
454 }
441 455
442 // Visit all object pointers. 456 // Visit all object pointers.
443 void VisitObjectPointers(ObjectPointerVisitor* visitor); 457 void VisitObjectPointers(ObjectPointerVisitor* visitor);
444 458
445 // Called to initialize objects required by the vm but which invoke 459 // Called to initialize objects required by the vm but which invoke
446 // dart code. If an error occurs the error object is returned otherwise 460 // dart code. If an error occurs the error object is returned otherwise
447 // a null object is returned. 461 // a null object is returned.
448 RawError* PreallocateObjects(); 462 RawError* PreallocateObjects();
449 463
450 void InitKnownObjects(); 464 void InitKnownObjects();
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 V(RawInstance*, stack_overflow_) \ 547 V(RawInstance*, stack_overflow_) \
534 V(RawInstance*, out_of_memory_) \ 548 V(RawInstance*, out_of_memory_) \
535 V(RawUnhandledException*, preallocated_unhandled_exception_) \ 549 V(RawUnhandledException*, preallocated_unhandled_exception_) \
536 V(RawStackTrace*, preallocated_stack_trace_) \ 550 V(RawStackTrace*, preallocated_stack_trace_) \
537 V(RawFunction*, lookup_port_handler_) \ 551 V(RawFunction*, lookup_port_handler_) \
538 V(RawTypedData*, empty_uint32_array_) \ 552 V(RawTypedData*, empty_uint32_array_) \
539 V(RawFunction*, handle_message_function_) \ 553 V(RawFunction*, handle_message_function_) \
540 V(RawFunction*, simple_instance_of_function_) \ 554 V(RawFunction*, simple_instance_of_function_) \
541 V(RawFunction*, simple_instance_of_true_function_) \ 555 V(RawFunction*, simple_instance_of_true_function_) \
542 V(RawFunction*, simple_instance_of_false_function_) \ 556 V(RawFunction*, simple_instance_of_false_function_) \
557 V(RawFunction*, async_clear_thread_stack_trace_) \
558 V(RawFunction*, async_set_thread_stack_trace_) \
543 V(RawArray*, library_load_error_table_) \ 559 V(RawArray*, library_load_error_table_) \
544 V(RawArray*, unique_dynamic_targets_) \ 560 V(RawArray*, unique_dynamic_targets_) \
545 V(RawGrowableObjectArray*, token_objects_) \ 561 V(RawGrowableObjectArray*, token_objects_) \
546 V(RawArray*, token_objects_map_) \ 562 V(RawArray*, token_objects_map_) \
547 V(RawGrowableObjectArray*, megamorphic_cache_table_) \ 563 V(RawGrowableObjectArray*, megamorphic_cache_table_) \
548 V(RawCode*, megamorphic_miss_code_) \ 564 V(RawCode*, megamorphic_miss_code_) \
549 V(RawFunction*, megamorphic_miss_function_) \ 565 V(RawFunction*, megamorphic_miss_function_) \
550 // Please remember the last entry must be referred in the 'to' function below. 566 // Please remember the last entry must be referred in the 'to' function below.
551 567
552 RawObject** from() { return reinterpret_cast<RawObject**>(&object_class_); } 568 RawObject** from() { return reinterpret_cast<RawObject**>(&object_class_); }
(...skipping 22 matching lines...) Expand all
575 591
576 friend class Serializer; 592 friend class Serializer;
577 friend class Deserializer; 593 friend class Deserializer;
578 594
579 DISALLOW_COPY_AND_ASSIGN(ObjectStore); 595 DISALLOW_COPY_AND_ASSIGN(ObjectStore);
580 }; 596 };
581 597
582 } // namespace dart 598 } // namespace dart
583 599
584 #endif // RUNTIME_VM_OBJECT_STORE_H_ 600 #endif // RUNTIME_VM_OBJECT_STORE_H_
OLDNEW
« no previous file with comments | « runtime/vm/object_service.cc ('k') | runtime/vm/object_store.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698