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/dart_api_message.h" | 5 #include "vm/dart_api_message.h" |
6 #include "vm/object.h" | 6 #include "vm/object.h" |
7 #include "vm/snapshot_ids.h" | 7 #include "vm/snapshot_ids.h" |
8 #include "vm/symbols.h" | 8 #include "vm/symbols.h" |
9 #include "vm/unicode.h" | 9 #include "vm/unicode.h" |
10 | 10 |
(...skipping 1006 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1017 // Write out the class and tags information. | 1017 // Write out the class and tags information. |
1018 intptr_t class_id; | 1018 intptr_t class_id; |
1019 switch (object->value.as_typed_data.type) { | 1019 switch (object->value.as_typed_data.type) { |
1020 case Dart_CObject::kInt8Array: | 1020 case Dart_CObject::kInt8Array: |
1021 class_id = kTypedDataInt8ArrayCid; | 1021 class_id = kTypedDataInt8ArrayCid; |
1022 break; | 1022 break; |
1023 case Dart_CObject::kUint8Array: | 1023 case Dart_CObject::kUint8Array: |
1024 class_id = kTypedDataUint8ArrayCid; | 1024 class_id = kTypedDataUint8ArrayCid; |
1025 break; | 1025 break; |
1026 default: | 1026 default: |
| 1027 class_id = kTypedDataUint8ArrayCid; |
1027 UNIMPLEMENTED(); | 1028 UNIMPLEMENTED(); |
1028 } | 1029 } |
1029 | 1030 |
1030 WriteIndexedObject(class_id); | 1031 WriteIndexedObject(class_id); |
1031 WriteIntptrValue(RawObject::ClassIdTag::update(class_id, 0)); | 1032 WriteIntptrValue(RawObject::ClassIdTag::update(class_id, 0)); |
1032 uint8_t* bytes = object->value.as_typed_data.values; | 1033 uint8_t* bytes = object->value.as_typed_data.values; |
1033 intptr_t len = object->value.as_typed_data.length; | 1034 intptr_t len = object->value.as_typed_data.length; |
1034 WriteSmi(len); | 1035 WriteSmi(len); |
1035 for (intptr_t i = 0; i < len; i++) { | 1036 for (intptr_t i = 0; i < len; i++) { |
1036 Write<uint8_t>(bytes[i]); | 1037 Write<uint8_t>(bytes[i]); |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1082 if (!success) { | 1083 if (!success) { |
1083 UnmarkAllCObjects(object); | 1084 UnmarkAllCObjects(object); |
1084 return false; | 1085 return false; |
1085 } | 1086 } |
1086 } | 1087 } |
1087 UnmarkAllCObjects(object); | 1088 UnmarkAllCObjects(object); |
1088 return true; | 1089 return true; |
1089 } | 1090 } |
1090 | 1091 |
1091 } // namespace dart | 1092 } // namespace dart |
OLD | NEW |