| 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/object.h" |      5 #include "vm/object.h" | 
|      6  |      6  | 
|      7 #include "include/dart_api.h" |      7 #include "include/dart_api.h" | 
|      8 #include "platform/assert.h" |      8 #include "platform/assert.h" | 
|      9 #include "vm/assembler.h" |      9 #include "vm/assembler.h" | 
|     10 #include "vm/cpu.h" |     10 #include "vm/cpu.h" | 
| (...skipping 1716 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   1727     RawObject* raw = Object::Allocate(Class::kClassId, |   1727     RawObject* raw = Object::Allocate(Class::kClassId, | 
|   1728                                       Class::InstanceSize(), |   1728                                       Class::InstanceSize(), | 
|   1729                                       Heap::kOld); |   1729                                       Heap::kOld); | 
|   1730     NoGCScope no_gc; |   1730     NoGCScope no_gc; | 
|   1731     result ^= raw; |   1731     result ^= raw; | 
|   1732   } |   1732   } | 
|   1733   FakeObject fake; |   1733   FakeObject fake; | 
|   1734   result.set_handle_vtable(fake.vtable()); |   1734   result.set_handle_vtable(fake.vtable()); | 
|   1735   result.set_instance_size(FakeObject::InstanceSize()); |   1735   result.set_instance_size(FakeObject::InstanceSize()); | 
|   1736   result.set_next_field_offset(FakeObject::NextFieldOffset()); |   1736   result.set_next_field_offset(FakeObject::NextFieldOffset()); | 
|   1737   ASSERT((FakeObject::kClassId != kInstanceCid)); |   1737   COMPILE_ASSERT((FakeObject::kClassId != kInstanceCid)); | 
|   1738   result.set_id(FakeObject::kClassId); |   1738   result.set_id(FakeObject::kClassId); | 
|   1739   result.set_state_bits(0); |   1739   result.set_state_bits(0); | 
|   1740   if (FakeObject::kClassId < kInstanceCid) { |   1740   if (FakeObject::kClassId < kInstanceCid) { | 
|   1741     // VM internal classes are done. There is no finalization needed or |   1741     // VM internal classes are done. There is no finalization needed or | 
|   1742     // possible in this case. |   1742     // possible in this case. | 
|   1743     result.set_is_finalized(); |   1743     result.set_is_finalized(); | 
|   1744   } else { |   1744   } else { | 
|   1745     // VM backed classes are almost ready: run checks and resolve class |   1745     // VM backed classes are almost ready: run checks and resolve class | 
|   1746     // references, but do not recompute size. |   1746     // references, but do not recompute size. | 
|   1747     result.set_is_prefinalized(); |   1747     result.set_is_prefinalized(); | 
| (...skipping 2904 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   4652     RawObject* raw = Object::Allocate(TypeArguments::kClassId, |   4652     RawObject* raw = Object::Allocate(TypeArguments::kClassId, | 
|   4653                                       TypeArguments::InstanceSize(len), |   4653                                       TypeArguments::InstanceSize(len), | 
|   4654                                       space); |   4654                                       space); | 
|   4655     NoGCScope no_gc; |   4655     NoGCScope no_gc; | 
|   4656     result ^= raw; |   4656     result ^= raw; | 
|   4657     // Length must be set before we start storing into the array. |   4657     // Length must be set before we start storing into the array. | 
|   4658     result.SetLength(len); |   4658     result.SetLength(len); | 
|   4659   } |   4659   } | 
|   4660   // The zero array should have been initialized. |   4660   // The zero array should have been initialized. | 
|   4661   ASSERT(Object::zero_array().raw() != Array::null()); |   4661   ASSERT(Object::zero_array().raw() != Array::null()); | 
|   4662   COMPILE_ASSERT(StubCode::kNoInstantiator == 0, kNoInstantiator_must_be_zero); |   4662   COMPILE_ASSERT(StubCode::kNoInstantiator == 0); | 
|   4663   result.set_instantiations(Object::zero_array()); |   4663   result.set_instantiations(Object::zero_array()); | 
|   4664   return result.raw(); |   4664   return result.raw(); | 
|   4665 } |   4665 } | 
|   4666  |   4666  | 
|   4667  |   4667  | 
|   4668  |   4668  | 
|   4669 RawAbstractType** TypeArguments::TypeAddr(intptr_t index) const { |   4669 RawAbstractType** TypeArguments::TypeAddr(intptr_t index) const { | 
|   4670   // TODO(iposva): Determine if we should throw an exception here. |   4670   // TODO(iposva): Determine if we should throw an exception here. | 
|   4671   ASSERT((index >= 0) && (index < Length())); |   4671   ASSERT((index >= 0) && (index < Length())); | 
|   4672   return &raw_ptr()->types_[index]; |   4672   return &raw_ptr()->types_[index]; | 
| (...skipping 14237 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  18910   return tag_label.ToCString(); |  18910   return tag_label.ToCString(); | 
|  18911 } |  18911 } | 
|  18912  |  18912  | 
|  18913  |  18913  | 
|  18914 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const { |  18914 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const { | 
|  18915   Instance::PrintJSONImpl(stream, ref); |  18915   Instance::PrintJSONImpl(stream, ref); | 
|  18916 } |  18916 } | 
|  18917  |  18917  | 
|  18918  |  18918  | 
|  18919 }  // namespace dart |  18919 }  // namespace dart | 
| OLD | NEW |