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_ISOLATE_H_ | 5 #ifndef VM_ISOLATE_H_ |
6 #define VM_ISOLATE_H_ | 6 #define VM_ISOLATE_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/thread.h" | 10 #include "platform/thread.h" |
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 InterruptableThreadState* thread_state() const { | 444 InterruptableThreadState* thread_state() const { |
445 return thread_state_; | 445 return thread_state_; |
446 } | 446 } |
447 | 447 |
448 void ProfileInterrupt(); | 448 void ProfileInterrupt(); |
449 | 449 |
450 VMTagCounters* vm_tag_counters() { | 450 VMTagCounters* vm_tag_counters() { |
451 return &vm_tag_counters_; | 451 return &vm_tag_counters_; |
452 } | 452 } |
453 | 453 |
| 454 uword user_tag() const { |
| 455 return user_tag_; |
| 456 } |
| 457 void set_user_tag(uword tag) { |
| 458 user_tag_ = tag; |
| 459 } |
| 460 |
454 #if defined(DEBUG) | 461 #if defined(DEBUG) |
455 #define REUSABLE_HANDLE_SCOPE_ACCESSORS(object) \ | 462 #define REUSABLE_HANDLE_SCOPE_ACCESSORS(object) \ |
456 void set_reusable_##object##_handle_scope_active(bool value) { \ | 463 void set_reusable_##object##_handle_scope_active(bool value) { \ |
457 reusable_##object##_handle_scope_active_ = value; \ | 464 reusable_##object##_handle_scope_active_ = value; \ |
458 } \ | 465 } \ |
459 bool reusable_##object##_handle_scope_active() const { \ | 466 bool reusable_##object##_handle_scope_active() const { \ |
460 return reusable_##object##_handle_scope_active_; \ | 467 return reusable_##object##_handle_scope_active_; \ |
461 } | 468 } |
462 REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_SCOPE_ACCESSORS) | 469 REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_SCOPE_ACCESSORS) |
463 #undef REUSABLE_HANDLE_SCOPE_ACCESSORS | 470 #undef REUSABLE_HANDLE_SCOPE_ACCESSORS |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
525 bool cha_used_; | 532 bool cha_used_; |
526 | 533 |
527 // Ring buffer of objects assigned an id. | 534 // Ring buffer of objects assigned an id. |
528 ObjectIdRing* object_id_ring_; | 535 ObjectIdRing* object_id_ring_; |
529 | 536 |
530 IsolateProfilerData* profiler_data_; | 537 IsolateProfilerData* profiler_data_; |
531 Mutex profiler_data_mutex_; | 538 Mutex profiler_data_mutex_; |
532 InterruptableThreadState* thread_state_; | 539 InterruptableThreadState* thread_state_; |
533 | 540 |
534 VMTagCounters vm_tag_counters_; | 541 VMTagCounters vm_tag_counters_; |
| 542 uword user_tag_; |
535 | 543 |
536 // Isolate list next pointer. | 544 // Isolate list next pointer. |
537 Isolate* next_; | 545 Isolate* next_; |
538 | 546 |
539 // Reusable handles support. | 547 // Reusable handles support. |
540 #define REUSABLE_HANDLE_FIELDS(object) \ | 548 #define REUSABLE_HANDLE_FIELDS(object) \ |
541 object* object##_handle_; | 549 object* object##_handle_; |
542 REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_FIELDS) | 550 REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_FIELDS) |
543 #undef REUSABLE_HANDLE_FIELDS | 551 #undef REUSABLE_HANDLE_FIELDS |
544 | 552 |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
667 char* script_url_; | 675 char* script_url_; |
668 char* library_url_; | 676 char* library_url_; |
669 char* class_name_; | 677 char* class_name_; |
670 char* function_name_; | 678 char* function_name_; |
671 char* exception_callback_name_; | 679 char* exception_callback_name_; |
672 }; | 680 }; |
673 | 681 |
674 } // namespace dart | 682 } // namespace dart |
675 | 683 |
676 #endif // VM_ISOLATE_H_ | 684 #endif // VM_ISOLATE_H_ |
OLD | NEW |