| 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_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 1976 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1987 // owner of the clone is new_owner. | 1987 // owner of the clone is new_owner. |
| 1988 RawFunction* Clone(const Class& new_owner) const; | 1988 RawFunction* Clone(const Class& new_owner) const; |
| 1989 | 1989 |
| 1990 // Slow function, use in asserts to track changes in important library | 1990 // Slow function, use in asserts to track changes in important library |
| 1991 // functions. | 1991 // functions. |
| 1992 int32_t SourceFingerprint() const; | 1992 int32_t SourceFingerprint() const; |
| 1993 | 1993 |
| 1994 // Return false and report an error if the fingerprint does not match. | 1994 // Return false and report an error if the fingerprint does not match. |
| 1995 bool CheckSourceFingerprint(int32_t fp) const; | 1995 bool CheckSourceFingerprint(int32_t fp) const; |
| 1996 | 1996 |
| 1997 // Works with map [deopt-id] -> ICData. |
| 1998 void SaveICDataMap( |
| 1999 const ZoneGrowableArray<const ICData*>& deopt_id_to_ic_data) const; |
| 2000 RawArray* RestoreICDataMap() const; |
| 2001 |
| 2002 RawArray* ic_data_array() const; |
| 2003 void ClearICData() const; |
| 2004 |
| 1997 static const int kCtorPhaseInit = 1 << 0; | 2005 static const int kCtorPhaseInit = 1 << 0; |
| 1998 static const int kCtorPhaseBody = 1 << 1; | 2006 static const int kCtorPhaseBody = 1 << 1; |
| 1999 static const int kCtorPhaseAll = (kCtorPhaseInit | kCtorPhaseBody); | 2007 static const int kCtorPhaseAll = (kCtorPhaseInit | kCtorPhaseBody); |
| 2000 | 2008 |
| 2001 private: | 2009 private: |
| 2010 void set_ic_data_array(const Array& value) const; |
| 2011 |
| 2002 enum KindTagBits { | 2012 enum KindTagBits { |
| 2003 kKindTagPos = 0, | 2013 kKindTagPos = 0, |
| 2004 kKindTagSize = 4, | 2014 kKindTagSize = 4, |
| 2005 kStaticBit = kKindTagPos + kKindTagSize, // = 4 | 2015 kStaticBit = kKindTagPos + kKindTagSize, // = 4 |
| 2006 kConstBit = 5, | 2016 kConstBit = 5, |
| 2007 kAbstractBit = 6, | 2017 kAbstractBit = 6, |
| 2008 kVisibleBit = 7, | 2018 kVisibleBit = 7, |
| 2009 kOptimizableBit = 8, | 2019 kOptimizableBit = 8, |
| 2010 kInlinableBit = 9, | 2020 kInlinableBit = 9, |
| 2011 kIntrinsicBit = 10, | 2021 kIntrinsicBit = 10, |
| (...skipping 5103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7115 | 7125 |
| 7116 | 7126 |
| 7117 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, | 7127 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, |
| 7118 intptr_t index) { | 7128 intptr_t index) { |
| 7119 return array.At((index * kEntryLength) + kTargetFunctionIndex); | 7129 return array.At((index * kEntryLength) + kTargetFunctionIndex); |
| 7120 } | 7130 } |
| 7121 | 7131 |
| 7122 } // namespace dart | 7132 } // namespace dart |
| 7123 | 7133 |
| 7124 #endif // VM_OBJECT_H_ | 7134 #endif // VM_OBJECT_H_ |
| OLD | NEW |