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 #include "vm/snapshot.h" | 5 #include "vm/snapshot.h" |
6 | 6 |
7 #include "platform/assert.h" | 7 #include "platform/assert.h" |
8 #include "vm/bootstrap.h" | 8 #include "vm/bootstrap.h" |
9 #include "vm/class_finalizer.h" | 9 #include "vm/class_finalizer.h" |
10 #include "vm/dart.h" | 10 #include "vm/dart.h" |
(...skipping 16 matching lines...) Expand all Loading... |
27 isolate()->AssertCurrentThreadIsMutator(); \ | 27 isolate()->AssertCurrentThreadIsMutator(); \ |
28 ASSERT(thread()->no_safepoint_scope_depth() != 0) | 28 ASSERT(thread()->no_safepoint_scope_depth() != 0) |
29 | 29 |
30 namespace dart { | 30 namespace dart { |
31 | 31 |
32 static const int kNumInitialReferences = 32; | 32 static const int kNumInitialReferences = 32; |
33 | 33 |
34 static bool IsSingletonClassId(intptr_t class_id) { | 34 static bool IsSingletonClassId(intptr_t class_id) { |
35 // Check if this is a singleton object class which is shared by all isolates. | 35 // Check if this is a singleton object class which is shared by all isolates. |
36 return ((class_id >= kClassCid && class_id <= kUnwindErrorCid) || | 36 return ((class_id >= kClassCid && class_id <= kUnwindErrorCid) || |
| 37 (class_id == kTypeArgumentsCid) || |
37 (class_id >= kNullCid && class_id <= kVoidCid)); | 38 (class_id >= kNullCid && class_id <= kVoidCid)); |
38 } | 39 } |
39 | 40 |
40 static bool IsObjectStoreClassId(intptr_t class_id) { | 41 static bool IsObjectStoreClassId(intptr_t class_id) { |
41 // Check if this is a class which is stored in the object store. | 42 // Check if this is a class which is stored in the object store. |
42 return (class_id == kObjectCid || | 43 return (class_id == kObjectCid || |
43 (class_id >= kInstanceCid && class_id <= kUserTagCid) || | 44 (class_id >= kInstanceCid && class_id <= kUserTagCid) || |
44 class_id == kArrayCid || class_id == kImmutableArrayCid || | 45 class_id == kArrayCid || class_id == kImmutableArrayCid || |
45 RawObject::IsStringClassId(class_id) || | 46 RawObject::IsStringClassId(class_id) || |
46 RawObject::IsTypedDataClassId(class_id) || | 47 RawObject::IsTypedDataClassId(class_id) || |
(...skipping 1919 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1966 if (buffer_len_ != NULL) { | 1967 if (buffer_len_ != NULL) { |
1967 *buffer_len_ = BytesWritten(); | 1968 *buffer_len_ = BytesWritten(); |
1968 } | 1969 } |
1969 } else { | 1970 } else { |
1970 FreeBuffer(); | 1971 FreeBuffer(); |
1971 ThrowException(exception_type(), exception_msg()); | 1972 ThrowException(exception_type(), exception_msg()); |
1972 } | 1973 } |
1973 } | 1974 } |
1974 | 1975 |
1975 } // namespace dart | 1976 } // namespace dart |
OLD | NEW |