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_OBJECT_H_ | 5 #ifndef VM_OBJECT_H_ |
6 #define VM_OBJECT_H_ | 6 #define VM_OBJECT_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/utils.h" | 10 #include "platform/utils.h" |
(...skipping 2403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2414 kNumberOfEntries = 5, | 2414 kNumberOfEntries = 5, |
2415 }; | 2415 }; |
2416 | 2416 |
2417 public: | 2417 public: |
2418 enum Kind { | 2418 enum Kind { |
2419 kDeopt, // Deoptimization continuation point. | 2419 kDeopt, // Deoptimization continuation point. |
2420 kEntryPatch, // Location where to patch entry. | 2420 kEntryPatch, // Location where to patch entry. |
2421 kPatchCode, // Buffer for patching code entry. | 2421 kPatchCode, // Buffer for patching code entry. |
2422 kLazyDeoptJump, // Lazy deoptimization trampoline. | 2422 kLazyDeoptJump, // Lazy deoptimization trampoline. |
2423 kIcCall, // IC call. | 2423 kIcCall, // IC call. |
2424 kFuncCall, // Call to known target, e.g. static call, closure call. | 2424 kFuncCall, // Call to known target, e.g. static call. |
| 2425 kClosureCall, // Closure call. |
2425 kReturn, // Return from function. | 2426 kReturn, // Return from function. |
2426 kOther | 2427 kOther |
2427 }; | 2428 }; |
2428 | 2429 |
2429 intptr_t Length() const; | 2430 intptr_t Length() const; |
2430 | 2431 |
2431 uword PC(intptr_t index) const; | 2432 uword PC(intptr_t index) const; |
2432 PcDescriptors::Kind DescriptorKind(intptr_t index) const; | 2433 PcDescriptors::Kind DescriptorKind(intptr_t index) const; |
2433 const char* KindAsStr(intptr_t index) const; | 2434 const char* KindAsStr(intptr_t index) const; |
2434 intptr_t DeoptId(intptr_t index) const; | 2435 intptr_t DeoptId(intptr_t index) const; |
(...skipping 3303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5738 | 5739 |
5739 | 5740 |
5740 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, | 5741 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, |
5741 intptr_t index) { | 5742 intptr_t index) { |
5742 return array.At((index * kEntryLength) + kTargetFunctionIndex); | 5743 return array.At((index * kEntryLength) + kTargetFunctionIndex); |
5743 } | 5744 } |
5744 | 5745 |
5745 } // namespace dart | 5746 } // namespace dart |
5746 | 5747 |
5747 #endif // VM_OBJECT_H_ | 5748 #endif // VM_OBJECT_H_ |
OLD | NEW |