| 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_RAW_OBJECT_H_ | 5 #ifndef VM_RAW_OBJECT_H_ |
| 6 #define VM_RAW_OBJECT_H_ | 6 #define VM_RAW_OBJECT_H_ |
| 7 | 7 |
| 8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
| 9 #include "vm/globals.h" | 9 #include "vm/globals.h" |
| 10 #include "vm/token.h" | 10 #include "vm/token.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 CLASS_LIST_ARRAYS(V) \ | 108 CLASS_LIST_ARRAYS(V) \ |
| 109 CLASS_LIST_STRINGS(V) | 109 CLASS_LIST_STRINGS(V) |
| 110 | 110 |
| 111 #define CLASS_LIST(V) \ | 111 #define CLASS_LIST(V) \ |
| 112 V(Object) \ | 112 V(Object) \ |
| 113 CLASS_LIST_NO_OBJECT(V) | 113 CLASS_LIST_NO_OBJECT(V) |
| 114 | 114 |
| 115 | 115 |
| 116 // Forward declarations. | 116 // Forward declarations. |
| 117 class Isolate; | 117 class Isolate; |
| 118 class TraceBuffer; | |
| 119 | |
| 120 #define DEFINE_FORWARD_DECLARATION(clazz) \ | 118 #define DEFINE_FORWARD_DECLARATION(clazz) \ |
| 121 class Raw##clazz; | 119 class Raw##clazz; |
| 122 CLASS_LIST(DEFINE_FORWARD_DECLARATION) | 120 CLASS_LIST(DEFINE_FORWARD_DECLARATION) |
| 123 #undef DEFINE_FORWARD_DECLARATION | 121 #undef DEFINE_FORWARD_DECLARATION |
| 124 | 122 |
| 125 | 123 |
| 126 enum ClassId { | 124 enum ClassId { |
| 127 // Illegal class id. | 125 // Illegal class id. |
| 128 kIllegalCid = 0, | 126 kIllegalCid = 0, |
| 129 | 127 |
| (...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 617 RawObject** to() { | 615 RawObject** to() { |
| 618 return reinterpret_cast<RawObject**>(&ptr()->unoptimized_code_); | 616 return reinterpret_cast<RawObject**>(&ptr()->unoptimized_code_); |
| 619 } | 617 } |
| 620 RawObject** to_no_code() { | 618 RawObject** to_no_code() { |
| 621 return reinterpret_cast<RawObject**>(&ptr()->data_); | 619 return reinterpret_cast<RawObject**>(&ptr()->data_); |
| 622 } | 620 } |
| 623 | 621 |
| 624 intptr_t token_pos_; | 622 intptr_t token_pos_; |
| 625 intptr_t end_token_pos_; | 623 intptr_t end_token_pos_; |
| 626 intptr_t usage_counter_; // Incremented while function is running. | 624 intptr_t usage_counter_; // Incremented while function is running. |
| 627 TraceBuffer* log_; | |
| 628 int16_t num_fixed_parameters_; | 625 int16_t num_fixed_parameters_; |
| 629 int16_t num_optional_parameters_; // > 0: positional; < 0: named. | 626 int16_t num_optional_parameters_; // > 0: positional; < 0: named. |
| 630 int16_t deoptimization_counter_; | 627 int16_t deoptimization_counter_; |
| 631 uint16_t kind_tag_; // See Function::KindTagBits. | 628 uint16_t kind_tag_; // See Function::KindTagBits. |
| 632 uint16_t optimized_instruction_count_; | 629 uint16_t optimized_instruction_count_; |
| 633 uint16_t optimized_call_site_count_; | 630 uint16_t optimized_call_site_count_; |
| 634 }; | 631 }; |
| 635 | 632 |
| 636 | 633 |
| 637 class RawClosureData : public RawObject { | 634 class RawClosureData : public RawObject { |
| (...skipping 1170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1808 // Make sure this is updated when new TypedData types are added. | 1805 // Make sure this is updated when new TypedData types are added. |
| 1809 ASSERT(kTypedDataInt8ArrayViewCid == kTypedDataInt8ArrayCid + 14); | 1806 ASSERT(kTypedDataInt8ArrayViewCid == kTypedDataInt8ArrayCid + 14); |
| 1810 ASSERT(kExternalTypedDataInt8ArrayCid == kTypedDataInt8ArrayViewCid + 15); | 1807 ASSERT(kExternalTypedDataInt8ArrayCid == kTypedDataInt8ArrayViewCid + 15); |
| 1811 ASSERT(kNullCid == kExternalTypedDataInt8ArrayCid + 14); | 1808 ASSERT(kNullCid == kExternalTypedDataInt8ArrayCid + 14); |
| 1812 return (kNullCid - kTypedDataInt8ArrayCid); | 1809 return (kNullCid - kTypedDataInt8ArrayCid); |
| 1813 } | 1810 } |
| 1814 | 1811 |
| 1815 } // namespace dart | 1812 } // namespace dart |
| 1816 | 1813 |
| 1817 #endif // VM_RAW_OBJECT_H_ | 1814 #endif // VM_RAW_OBJECT_H_ |
| OLD | NEW |