| 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 21 matching lines...) Expand all Loading... |
| 32 V(Code) \ | 32 V(Code) \ |
| 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(ICData) \ | 43 V(ICData) \ |
| 43 V(MegamorphicCache) \ | 44 V(MegamorphicCache) \ |
| 44 V(SubtypeTestCache) \ | 45 V(SubtypeTestCache) \ |
| 45 V(Error) \ | 46 V(Error) \ |
| 46 V(ApiError) \ | 47 V(ApiError) \ |
| 47 V(LanguageError) \ | 48 V(LanguageError) \ |
| 48 V(UnhandledException) \ | 49 V(UnhandledException) \ |
| 49 V(UnwindError) \ | 50 V(UnwindError) \ |
| 50 V(Instance) \ | 51 V(Instance) \ |
| 51 V(LibraryPrefix) \ | 52 V(LibraryPrefix) \ |
| (...skipping 1421 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1473 // 'end' is the address just beyond the last descriptor, so step back. | 1474 // 'end' is the address just beyond the last descriptor, so step back. |
| 1474 return reinterpret_cast<RawObject**>(end - kWordSize); | 1475 return reinterpret_cast<RawObject**>(end - kWordSize); |
| 1475 } | 1476 } |
| 1476 | 1477 |
| 1477 friend class Object; | 1478 friend class Object; |
| 1478 friend class RawClosureData; | 1479 friend class RawClosureData; |
| 1479 friend class SnapshotReader; | 1480 friend class SnapshotReader; |
| 1480 }; | 1481 }; |
| 1481 | 1482 |
| 1482 | 1483 |
| 1484 class RawSingleTargetCache : public RawObject { |
| 1485 RAW_HEAP_OBJECT_IMPLEMENTATION(SingleTargetCache); |
| 1486 RawObject** from() { |
| 1487 return reinterpret_cast<RawObject**>(&ptr()->target_); |
| 1488 } |
| 1489 RawCode* target_; |
| 1490 RawObject** to() { |
| 1491 return reinterpret_cast<RawObject**>(&ptr()->target_); |
| 1492 } |
| 1493 uword entry_point_; |
| 1494 classid_t lower_limit_; |
| 1495 classid_t upper_limit_; |
| 1496 }; |
| 1497 |
| 1498 |
| 1483 class RawICData : public RawObject { | 1499 class RawICData : public RawObject { |
| 1484 RAW_HEAP_OBJECT_IMPLEMENTATION(ICData); | 1500 RAW_HEAP_OBJECT_IMPLEMENTATION(ICData); |
| 1485 | 1501 |
| 1486 RawObject** from() { | 1502 RawObject** from() { |
| 1487 return reinterpret_cast<RawObject**>(&ptr()->ic_data_); | 1503 return reinterpret_cast<RawObject**>(&ptr()->ic_data_); |
| 1488 } | 1504 } |
| 1489 RawArray* ic_data_; // Contains class-ids, target and count. | 1505 RawArray* ic_data_; // Contains class-ids, target and count. |
| 1490 RawString* target_name_; // Name of target function. | 1506 RawString* target_name_; // Name of target function. |
| 1491 RawArray* args_descriptor_; // Arguments descriptor. | 1507 RawArray* args_descriptor_; // Arguments descriptor. |
| 1492 RawObject* owner_; // Parent/calling function or original IC of cloned IC. | 1508 RawObject* owner_; // Parent/calling function or original IC of cloned IC. |
| (...skipping 945 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2438 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == | 2454 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == |
| 2439 kTypedDataInt8ArrayViewCid + 15); | 2455 kTypedDataInt8ArrayViewCid + 15); |
| 2440 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); | 2456 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); |
| 2441 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); | 2457 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); |
| 2442 return (kNullCid - kTypedDataInt8ArrayCid); | 2458 return (kNullCid - kTypedDataInt8ArrayCid); |
| 2443 } | 2459 } |
| 2444 | 2460 |
| 2445 } // namespace dart | 2461 } // namespace dart |
| 2446 | 2462 |
| 2447 #endif // VM_RAW_OBJECT_H_ | 2463 #endif // VM_RAW_OBJECT_H_ |
| OLD | NEW |