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 4346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4357 | 4357 |
4358 RawCodeSourceMap* code_source_map() const { | 4358 RawCodeSourceMap* code_source_map() const { |
4359 return raw_ptr()->code_source_map_; | 4359 return raw_ptr()->code_source_map_; |
4360 } | 4360 } |
4361 | 4361 |
4362 void set_code_source_map(const CodeSourceMap& code_source_map) const { | 4362 void set_code_source_map(const CodeSourceMap& code_source_map) const { |
4363 ASSERT(code_source_map.IsOld()); | 4363 ASSERT(code_source_map.IsOld()); |
4364 StorePointer(&raw_ptr()->code_source_map_, code_source_map.raw()); | 4364 StorePointer(&raw_ptr()->code_source_map_, code_source_map.raw()); |
4365 } | 4365 } |
4366 | 4366 |
| 4367 TokenPosition GetTokenPositionAt(intptr_t offset) const; |
| 4368 |
4367 // Array of DeoptInfo objects. | 4369 // Array of DeoptInfo objects. |
4368 RawArray* deopt_info_array() const { | 4370 RawArray* deopt_info_array() const { |
4369 return raw_ptr()->deopt_info_array_; | 4371 return raw_ptr()->deopt_info_array_; |
4370 } | 4372 } |
4371 void set_deopt_info_array(const Array& array) const; | 4373 void set_deopt_info_array(const Array& array) const; |
4372 | 4374 |
4373 RawArray* stackmaps() const { | 4375 RawArray* stackmaps() const { |
4374 return raw_ptr()->stackmaps_; | 4376 return raw_ptr()->stackmaps_; |
4375 } | 4377 } |
4376 void set_stackmaps(const Array& maps) const; | 4378 void set_stackmaps(const Array& maps) const; |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4455 | 4457 |
4456 RawArray* GetInlinedIdToFunction() const; | 4458 RawArray* GetInlinedIdToFunction() const; |
4457 void SetInlinedIdToFunction(const Array& value) const; | 4459 void SetInlinedIdToFunction(const Array& value) const; |
4458 | 4460 |
4459 RawArray* GetInlinedIdToTokenPos() const; | 4461 RawArray* GetInlinedIdToTokenPos() const; |
4460 void SetInlinedIdToTokenPos(const Array& value) const; | 4462 void SetInlinedIdToTokenPos(const Array& value) const; |
4461 | 4463 |
4462 RawArray* GetInlinedCallerIdMap() const; | 4464 RawArray* GetInlinedCallerIdMap() const; |
4463 void SetInlinedCallerIdMap(const Array& value) const; | 4465 void SetInlinedCallerIdMap(const Array& value) const; |
4464 | 4466 |
| 4467 // If |token_positions| is not NULL it will be populated with the token |
| 4468 // positions of the inlined calls. |
4465 void GetInlinedFunctionsAt( | 4469 void GetInlinedFunctionsAt( |
4466 intptr_t offset, GrowableArray<Function*>* fs) const; | 4470 intptr_t offset, |
| 4471 GrowableArray<Function*>* fs, |
| 4472 GrowableArray<TokenPosition>* token_positions = NULL) const; |
4467 | 4473 |
4468 void DumpInlinedIntervals() const; | 4474 void DumpInlinedIntervals() const; |
4469 | 4475 |
4470 RawLocalVarDescriptors* var_descriptors() const { | 4476 RawLocalVarDescriptors* var_descriptors() const { |
4471 return raw_ptr()->var_descriptors_; | 4477 return raw_ptr()->var_descriptors_; |
4472 } | 4478 } |
4473 void set_var_descriptors(const LocalVarDescriptors& value) const { | 4479 void set_var_descriptors(const LocalVarDescriptors& value) const { |
4474 ASSERT(value.IsOld()); | 4480 ASSERT(value.IsOld()); |
4475 StorePointer(&raw_ptr()->var_descriptors_, value.raw()); | 4481 StorePointer(&raw_ptr()->var_descriptors_, value.raw()); |
4476 } | 4482 } |
(...skipping 3989 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8466 | 8472 |
8467 | 8473 |
8468 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, | 8474 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, |
8469 intptr_t index) { | 8475 intptr_t index) { |
8470 return array.At((index * kEntryLength) + kTargetFunctionIndex); | 8476 return array.At((index * kEntryLength) + kTargetFunctionIndex); |
8471 } | 8477 } |
8472 | 8478 |
8473 } // namespace dart | 8479 } // namespace dart |
8474 | 8480 |
8475 #endif // VM_OBJECT_H_ | 8481 #endif // VM_OBJECT_H_ |
OLD | NEW |