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/atomic.h" | 9 #include "vm/atomic.h" |
10 #include "vm/globals.h" | 10 #include "vm/globals.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 V(Instructions) \ | 33 V(Instructions) \ |
34 V(ObjectPool) \ | 34 V(ObjectPool) \ |
35 V(PcDescriptors) \ | 35 V(PcDescriptors) \ |
36 V(CodeSourceMap) \ | 36 V(CodeSourceMap) \ |
37 V(Stackmap) \ | 37 V(Stackmap) \ |
38 V(LocalVarDescriptors) \ | 38 V(LocalVarDescriptors) \ |
39 V(ExceptionHandlers) \ | 39 V(ExceptionHandlers) \ |
40 V(Context) \ | 40 V(Context) \ |
41 V(ContextScope) \ | 41 V(ContextScope) \ |
42 V(SingleTargetCache) \ | 42 V(SingleTargetCache) \ |
| 43 V(UnlinkedCall) \ |
43 V(ICData) \ | 44 V(ICData) \ |
44 V(MegamorphicCache) \ | 45 V(MegamorphicCache) \ |
45 V(SubtypeTestCache) \ | 46 V(SubtypeTestCache) \ |
46 V(Error) \ | 47 V(Error) \ |
47 V(ApiError) \ | 48 V(ApiError) \ |
48 V(LanguageError) \ | 49 V(LanguageError) \ |
49 V(UnhandledException) \ | 50 V(UnhandledException) \ |
50 V(UnwindError) \ | 51 V(UnwindError) \ |
51 V(Instance) \ | 52 V(Instance) \ |
52 V(LibraryPrefix) \ | 53 V(LibraryPrefix) \ |
(...skipping 1449 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1502 RawCode* target_; | 1503 RawCode* target_; |
1503 RawObject** to() { | 1504 RawObject** to() { |
1504 return reinterpret_cast<RawObject**>(&ptr()->target_); | 1505 return reinterpret_cast<RawObject**>(&ptr()->target_); |
1505 } | 1506 } |
1506 uword entry_point_; | 1507 uword entry_point_; |
1507 classid_t lower_limit_; | 1508 classid_t lower_limit_; |
1508 classid_t upper_limit_; | 1509 classid_t upper_limit_; |
1509 }; | 1510 }; |
1510 | 1511 |
1511 | 1512 |
| 1513 class RawUnlinkedCall : public RawObject { |
| 1514 RAW_HEAP_OBJECT_IMPLEMENTATION(UnlinkedCall); |
| 1515 RawObject** from() { |
| 1516 return reinterpret_cast<RawObject**>(&ptr()->target_name_); |
| 1517 } |
| 1518 RawString* target_name_; |
| 1519 RawArray* args_descriptor_; |
| 1520 RawObject** to() { |
| 1521 return reinterpret_cast<RawObject**>(&ptr()->args_descriptor_); |
| 1522 } |
| 1523 }; |
| 1524 |
| 1525 |
1512 class RawICData : public RawObject { | 1526 class RawICData : public RawObject { |
1513 RAW_HEAP_OBJECT_IMPLEMENTATION(ICData); | 1527 RAW_HEAP_OBJECT_IMPLEMENTATION(ICData); |
1514 | 1528 |
1515 RawObject** from() { | 1529 RawObject** from() { |
1516 return reinterpret_cast<RawObject**>(&ptr()->ic_data_); | 1530 return reinterpret_cast<RawObject**>(&ptr()->ic_data_); |
1517 } | 1531 } |
1518 RawArray* ic_data_; // Contains class-ids, target and count. | 1532 RawArray* ic_data_; // Contains class-ids, target and count. |
1519 RawString* target_name_; // Name of target function. | 1533 RawString* target_name_; // Name of target function. |
1520 RawArray* args_descriptor_; // Arguments descriptor. | 1534 RawArray* args_descriptor_; // Arguments descriptor. |
1521 RawObject* owner_; // Parent/calling function or original IC of cloned IC. | 1535 RawObject* owner_; // Parent/calling function or original IC of cloned IC. |
(...skipping 949 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2471 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == | 2485 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == |
2472 kTypedDataInt8ArrayViewCid + 15); | 2486 kTypedDataInt8ArrayViewCid + 15); |
2473 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); | 2487 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); |
2474 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); | 2488 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); |
2475 return (kNullCid - kTypedDataInt8ArrayCid); | 2489 return (kNullCid - kTypedDataInt8ArrayCid); |
2476 } | 2490 } |
2477 | 2491 |
2478 } // namespace dart | 2492 } // namespace dart |
2479 | 2493 |
2480 #endif // VM_RAW_OBJECT_H_ | 2494 #endif // VM_RAW_OBJECT_H_ |
OLD | NEW |