| 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 1758 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1769 value = kMaxInstructionCount; | 1769 value = kMaxInstructionCount; |
| 1770 } | 1770 } |
| 1771 raw_ptr()->optimized_call_site_count_ = static_cast<uint16_t>(value); | 1771 raw_ptr()->optimized_call_site_count_ = static_cast<uint16_t>(value); |
| 1772 } | 1772 } |
| 1773 | 1773 |
| 1774 bool IsOptimizable() const; | 1774 bool IsOptimizable() const; |
| 1775 bool IsNativeAutoSetupScope() const; | 1775 bool IsNativeAutoSetupScope() const; |
| 1776 void SetIsOptimizable(bool value) const; | 1776 void SetIsOptimizable(bool value) const; |
| 1777 void SetIsNativeAutoSetupScope(bool value) const; | 1777 void SetIsNativeAutoSetupScope(bool value) const; |
| 1778 | 1778 |
| 1779 bool has_finally() const { | |
| 1780 return HasFinallyBit::decode(raw_ptr()->kind_tag_); | |
| 1781 } | |
| 1782 void set_has_finally(bool value) const; | |
| 1783 | |
| 1784 bool is_native() const { return NativeBit::decode(raw_ptr()->kind_tag_); } | 1779 bool is_native() const { return NativeBit::decode(raw_ptr()->kind_tag_); } |
| 1785 void set_is_native(bool value) const; | 1780 void set_is_native(bool value) const; |
| 1786 | 1781 |
| 1787 bool is_abstract() const { return AbstractBit::decode(raw_ptr()->kind_tag_); } | 1782 bool is_abstract() const { return AbstractBit::decode(raw_ptr()->kind_tag_); } |
| 1788 void set_is_abstract(bool value) const; | 1783 void set_is_abstract(bool value) const; |
| 1789 | 1784 |
| 1790 bool IsInlineable() const; | 1785 bool IsInlineable() const; |
| 1791 void set_is_inlinable(bool value) const; | 1786 void set_is_inlinable(bool value) const; |
| 1792 | 1787 |
| 1793 bool is_visible() const { | 1788 bool is_visible() const { |
| (...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1970 kKindTagBit = 0, | 1965 kKindTagBit = 0, |
| 1971 kKindTagSize = 4, | 1966 kKindTagSize = 4, |
| 1972 kStaticBit = 4, | 1967 kStaticBit = 4, |
| 1973 kConstBit = 5, | 1968 kConstBit = 5, |
| 1974 kAbstractBit = 6, | 1969 kAbstractBit = 6, |
| 1975 kVisibleBit = 7, | 1970 kVisibleBit = 7, |
| 1976 kOptimizableBit = 8, | 1971 kOptimizableBit = 8, |
| 1977 kInlinableBit = 9, | 1972 kInlinableBit = 9, |
| 1978 kIntrinsicBit = 10, | 1973 kIntrinsicBit = 10, |
| 1979 kRecognizedBit = 11, | 1974 kRecognizedBit = 11, |
| 1980 kHasFinallyBit = 12, | 1975 kNativeBit = 12, |
| 1981 kNativeBit = 13, | 1976 kRedirectingBit = 13, |
| 1982 kRedirectingBit = 14, | 1977 kExternalBit = 14, |
| 1983 kExternalBit = 15, | |
| 1984 }; | 1978 }; |
| 1985 class KindBits : | 1979 class KindBits : |
| 1986 public BitField<RawFunction::Kind, kKindTagBit, kKindTagSize> {}; // NOLINT | 1980 public BitField<RawFunction::Kind, kKindTagBit, kKindTagSize> {}; // NOLINT |
| 1987 class StaticBit : public BitField<bool, kStaticBit, 1> {}; | 1981 class StaticBit : public BitField<bool, kStaticBit, 1> {}; |
| 1988 class ConstBit : public BitField<bool, kConstBit, 1> {}; | 1982 class ConstBit : public BitField<bool, kConstBit, 1> {}; |
| 1989 class AbstractBit : public BitField<bool, kAbstractBit, 1> {}; | 1983 class AbstractBit : public BitField<bool, kAbstractBit, 1> {}; |
| 1990 class VisibleBit : public BitField<bool, kVisibleBit, 1> {}; | 1984 class VisibleBit : public BitField<bool, kVisibleBit, 1> {}; |
| 1991 class OptimizableBit : public BitField<bool, kOptimizableBit, 1> {}; | 1985 class OptimizableBit : public BitField<bool, kOptimizableBit, 1> {}; |
| 1992 class InlinableBit : public BitField<bool, kInlinableBit, 1> {}; | 1986 class InlinableBit : public BitField<bool, kInlinableBit, 1> {}; |
| 1993 class IntrinsicBit : public BitField<bool, kIntrinsicBit, 1> {}; | 1987 class IntrinsicBit : public BitField<bool, kIntrinsicBit, 1> {}; |
| 1994 class RecognizedBit : public BitField<bool, kRecognizedBit, 1> {}; | 1988 class RecognizedBit : public BitField<bool, kRecognizedBit, 1> {}; |
| 1995 class HasFinallyBit : public BitField<bool, kHasFinallyBit, 1> {}; | |
| 1996 class NativeBit : public BitField<bool, kNativeBit, 1> {}; | 1989 class NativeBit : public BitField<bool, kNativeBit, 1> {}; |
| 1997 class ExternalBit : public BitField<bool, kExternalBit, 1> {}; | 1990 class ExternalBit : public BitField<bool, kExternalBit, 1> {}; |
| 1998 class RedirectingBit : public BitField<bool, kRedirectingBit, 1> {}; | 1991 class RedirectingBit : public BitField<bool, kRedirectingBit, 1> {}; |
| 1999 | 1992 |
| 2000 void set_name(const String& value) const; | 1993 void set_name(const String& value) const; |
| 2001 void set_kind(RawFunction::Kind value) const; | 1994 void set_kind(RawFunction::Kind value) const; |
| 2002 void set_is_static(bool value) const; | 1995 void set_is_static(bool value) const; |
| 2003 void set_is_const(bool value) const; | 1996 void set_is_const(bool value) const; |
| 2004 void set_is_external(bool value) const; | 1997 void set_is_external(bool value) const; |
| 2005 void set_parent_function(const Function& value) const; | 1998 void set_parent_function(const Function& value) const; |
| (...skipping 4629 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6635 | 6628 |
| 6636 | 6629 |
| 6637 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, | 6630 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, |
| 6638 intptr_t index) { | 6631 intptr_t index) { |
| 6639 return array.At((index * kEntryLength) + kTargetFunctionIndex); | 6632 return array.At((index * kEntryLength) + kTargetFunctionIndex); |
| 6640 } | 6633 } |
| 6641 | 6634 |
| 6642 } // namespace dart | 6635 } // namespace dart |
| 6643 | 6636 |
| 6644 #endif // VM_OBJECT_H_ | 6637 #endif // VM_OBJECT_H_ |
| OLD | NEW |