Chromium Code Reviews| 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 744 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 755 RawArray* deopt_info_array_; | 755 RawArray* deopt_info_array_; |
| 756 RawArray* object_table_; | 756 RawArray* object_table_; |
| 757 RawArray* stackmaps_; | 757 RawArray* stackmaps_; |
| 758 RawLocalVarDescriptors* var_descriptors_; | 758 RawLocalVarDescriptors* var_descriptors_; |
| 759 RawArray* comments_; | 759 RawArray* comments_; |
| 760 RawObject** to() { | 760 RawObject** to() { |
| 761 return reinterpret_cast<RawObject**>(&ptr()->comments_); | 761 return reinterpret_cast<RawObject**>(&ptr()->comments_); |
| 762 } | 762 } |
| 763 | 763 |
| 764 intptr_t pointer_offsets_length_; | 764 intptr_t pointer_offsets_length_; |
| 765 // This cannot be boolean because of alignment issues on x64 architectures. | 765 // These fields cannot be boolean because of alignment issues on x64 |
| 766 // architectures. | |
| 766 intptr_t is_optimized_; | 767 intptr_t is_optimized_; |
| 768 // If true, the embedded object pointers will be visited during GC. | |
| 769 intptr_t is_alive_; | |
|
siva
2012/09/06 16:57:55
Not for this CL but at some point we should consid
srdjan
2012/09/06 17:06:03
Agree.
| |
| 767 | 770 |
| 768 // Variable length data follows here. | 771 // Variable length data follows here. |
| 769 int32_t data_[0]; | 772 int32_t data_[0]; |
| 770 | 773 |
| 771 friend class StackFrame; | 774 friend class StackFrame; |
| 772 }; | 775 }; |
| 773 | 776 |
| 774 | 777 |
| 775 class RawInstructions : public RawObject { | 778 class RawInstructions : public RawObject { |
| 776 RAW_HEAP_OBJECT_IMPLEMENTATION(Instructions); | 779 RAW_HEAP_OBJECT_IMPLEMENTATION(Instructions); |
| (...skipping 809 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1586 kExternalUint64ArrayCid == kByteArrayCid + 18 && | 1589 kExternalUint64ArrayCid == kByteArrayCid + 18 && |
| 1587 kExternalFloat32ArrayCid == kByteArrayCid + 19 && | 1590 kExternalFloat32ArrayCid == kByteArrayCid + 19 && |
| 1588 kExternalFloat64ArrayCid == kByteArrayCid + 20 && | 1591 kExternalFloat64ArrayCid == kByteArrayCid + 20 && |
| 1589 kStacktraceCid == kByteArrayCid + 21); | 1592 kStacktraceCid == kByteArrayCid + 21); |
| 1590 return (index >= kByteArrayCid && index <= kExternalFloat64ArrayCid); | 1593 return (index >= kByteArrayCid && index <= kExternalFloat64ArrayCid); |
| 1591 } | 1594 } |
| 1592 | 1595 |
| 1593 } // namespace dart | 1596 } // namespace dart |
| 1594 | 1597 |
| 1595 #endif // VM_RAW_OBJECT_H_ | 1598 #endif // VM_RAW_OBJECT_H_ |
| OLD | NEW |