Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: vm/object.h

Issue 10797021: - Start using the collected store buffer entries to find (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/runtime/
Patch Set: Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « vm/isolate.h ('k') | vm/object.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_OBJECT_H_ 5 #ifndef VM_OBJECT_H_
6 #define VM_OBJECT_H_ 6 #define VM_OBJECT_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "platform/utils.h" 10 #include "platform/utils.h"
(...skipping 3699 matching lines...) Expand 10 before | Expand all | Expand 10 after
3710 } 3710 }
3711 void SetAt(intptr_t index, const Object& value) const { 3711 void SetAt(intptr_t index, const Object& value) const {
3712 // TODO(iposva): Add storing NoGCScope. 3712 // TODO(iposva): Add storing NoGCScope.
3713 StorePointer(ObjectAddr(index), value.raw()); 3713 StorePointer(ObjectAddr(index), value.raw());
3714 } 3714 }
3715 3715
3716 virtual RawAbstractTypeArguments* GetTypeArguments() const { 3716 virtual RawAbstractTypeArguments* GetTypeArguments() const {
3717 return raw_ptr()->type_arguments_; 3717 return raw_ptr()->type_arguments_;
3718 } 3718 }
3719 virtual void SetTypeArguments(const AbstractTypeArguments& value) const { 3719 virtual void SetTypeArguments(const AbstractTypeArguments& value) const {
3720 raw_ptr()->type_arguments_ = value.raw(); 3720 StorePointer(&raw_ptr()->type_arguments_, value.raw());
3721 } 3721 }
3722 3722
3723 virtual bool Equals(const Instance& other) const; 3723 virtual bool Equals(const Instance& other) const;
3724 3724
3725 static intptr_t type_arguments_offset() { 3725 static intptr_t type_arguments_offset() {
3726 return OFFSET_OF(RawArray, type_arguments_); 3726 return OFFSET_OF(RawArray, type_arguments_);
3727 } 3727 }
3728 3728
3729 static intptr_t InstanceSize() { 3729 static intptr_t InstanceSize() {
3730 ASSERT(sizeof(RawArray) == OFFSET_OF_RETURNED_VALUE(RawArray, data)); 3730 ASSERT(sizeof(RawArray) == OFFSET_OF_RETURNED_VALUE(RawArray, data));
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
3840 3840
3841 virtual RawAbstractTypeArguments* GetTypeArguments() const { 3841 virtual RawAbstractTypeArguments* GetTypeArguments() const {
3842 ASSERT(AbstractTypeArguments::AreEqual( 3842 ASSERT(AbstractTypeArguments::AreEqual(
3843 AbstractTypeArguments::Handle(Array::Handle(data()).GetTypeArguments()), 3843 AbstractTypeArguments::Handle(Array::Handle(data()).GetTypeArguments()),
3844 AbstractTypeArguments::Handle(raw_ptr()->type_arguments_))); 3844 AbstractTypeArguments::Handle(raw_ptr()->type_arguments_)));
3845 return raw_ptr()->type_arguments_; 3845 return raw_ptr()->type_arguments_;
3846 } 3846 }
3847 virtual void SetTypeArguments(const AbstractTypeArguments& value) const { 3847 virtual void SetTypeArguments(const AbstractTypeArguments& value) const {
3848 const Array& contents = Array::Handle(data()); 3848 const Array& contents = Array::Handle(data());
3849 contents.SetTypeArguments(value); 3849 contents.SetTypeArguments(value);
3850 raw_ptr()->type_arguments_ = value.raw(); 3850 StorePointer(&raw_ptr()->type_arguments_, value.raw());
3851 } 3851 }
3852 3852
3853 virtual bool Equals(const Instance& other) const; 3853 virtual bool Equals(const Instance& other) const;
3854 3854
3855 static intptr_t type_arguments_offset() { 3855 static intptr_t type_arguments_offset() {
3856 return OFFSET_OF(RawGrowableObjectArray, type_arguments_); 3856 return OFFSET_OF(RawGrowableObjectArray, type_arguments_);
3857 } 3857 }
3858 3858
3859 static intptr_t length_offset() { 3859 static intptr_t length_offset() {
3860 return OFFSET_OF(RawGrowableObjectArray, length_); 3860 return OFFSET_OF(RawGrowableObjectArray, length_);
(...skipping 1097 matching lines...) Expand 10 before | Expand all | Expand 10 after
4958 return OFFSET_OF(RawClosure, function_); 4958 return OFFSET_OF(RawClosure, function_);
4959 } 4959 }
4960 4960
4961 RawContext* context() const { return raw_ptr()->context_; } 4961 RawContext* context() const { return raw_ptr()->context_; }
4962 static intptr_t context_offset() { return OFFSET_OF(RawClosure, context_); } 4962 static intptr_t context_offset() { return OFFSET_OF(RawClosure, context_); }
4963 4963
4964 virtual RawAbstractTypeArguments* GetTypeArguments() const { 4964 virtual RawAbstractTypeArguments* GetTypeArguments() const {
4965 return raw_ptr()->type_arguments_; 4965 return raw_ptr()->type_arguments_;
4966 } 4966 }
4967 virtual void SetTypeArguments(const AbstractTypeArguments& value) const { 4967 virtual void SetTypeArguments(const AbstractTypeArguments& value) const {
4968 raw_ptr()->type_arguments_ = value.raw(); 4968 StorePointer(&raw_ptr()->type_arguments_, value.raw());
4969 } 4969 }
4970 static intptr_t type_arguments_offset() { 4970 static intptr_t type_arguments_offset() {
4971 return OFFSET_OF(RawClosure, type_arguments_); 4971 return OFFSET_OF(RawClosure, type_arguments_);
4972 } 4972 }
4973 4973
4974 // TODO(iposva): Remove smrck support once mapping to arbitrary is available. 4974 // TODO(iposva): Remove smrck support once mapping to arbitrary is available.
4975 RawInteger* smrck() const { return raw_ptr()->smrck_; } 4975 RawInteger* smrck() const { return raw_ptr()->smrck_; }
4976 void set_smrck(const Integer& smrck) const { 4976 void set_smrck(const Integer& smrck) const {
4977 StorePointer(&raw_ptr()->smrck_, smrck.raw()); 4977 StorePointer(&raw_ptr()->smrck_, smrck.raw());
4978 } 4978 }
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
5203 if (this->CharAt(i) != str.CharAt(begin_index + i)) { 5203 if (this->CharAt(i) != str.CharAt(begin_index + i)) {
5204 return false; 5204 return false;
5205 } 5205 }
5206 } 5206 }
5207 return true; 5207 return true;
5208 } 5208 }
5209 5209
5210 } // namespace dart 5210 } // namespace dart
5211 5211
5212 #endif // VM_OBJECT_H_ 5212 #endif // VM_OBJECT_H_
OLDNEW
« no previous file with comments | « vm/isolate.h ('k') | vm/object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698