Index: runtime/vm/object.h |
diff --git a/runtime/vm/object.h b/runtime/vm/object.h |
index 30f6ca037d8f925b8cfe0e40a3d38fb4df1d3641..a78a0f47cc5c60510dad5509bc8c34983c16b939 100644 |
--- a/runtime/vm/object.h |
+++ b/runtime/vm/object.h |
@@ -1362,22 +1362,29 @@ class Class : public Object { |
kEnumBit = 13, |
kIsAllocatedBit = 15, |
}; |
- class ConstBit : public BitField<bool, kConstBit, 1> {}; |
- class ImplementedBit : public BitField<bool, kImplementedBit, 1> {}; |
- class TypeFinalizedBit : public BitField<bool, kTypeFinalizedBit, 1> {}; |
- class ClassFinalizedBits : public BitField<RawClass::ClassFinalizedState, |
- kClassFinalizedPos, kClassFinalizedSize> {}; // NOLINT |
- class AbstractBit : public BitField<bool, kAbstractBit, 1> {}; |
- class PatchBit : public BitField<bool, kPatchBit, 1> {}; |
- class SynthesizedClassBit : public BitField<bool, kSynthesizedClassBit, 1> {}; |
- class MarkedForParsingBit : public BitField<bool, kMarkedForParsingBit, 1> {}; |
- class MixinAppAliasBit : public BitField<bool, kMixinAppAliasBit, 1> {}; |
- class MixinTypeAppliedBit : public BitField<bool, kMixinTypeAppliedBit, 1> {}; |
- class FieldsMarkedNullableBit : public BitField<bool, |
- kFieldsMarkedNullableBit, 1> {}; // NOLINT |
- class CycleFreeBit : public BitField<bool, kCycleFreeBit, 1> {}; |
- class EnumBit : public BitField<bool, kEnumBit, 1> {}; |
- class IsAllocatedBit : public BitField<bool, kIsAllocatedBit, 1> {}; |
+ class ConstBit : public BitField<uint16_t, bool, kConstBit, 1> {}; |
+ class ImplementedBit : public BitField<uint16_t, bool, kImplementedBit, 1> {}; |
+ class TypeFinalizedBit : |
+ public BitField<uint16_t, bool, kTypeFinalizedBit, 1> {}; |
+ class ClassFinalizedBits : public BitField<uint16_t, |
+ RawClass::ClassFinalizedState, |
+ kClassFinalizedPos, |
+ kClassFinalizedSize> {}; |
+ class AbstractBit : public BitField<uint16_t, bool, kAbstractBit, 1> {}; |
+ class PatchBit : public BitField<uint16_t, bool, kPatchBit, 1> {}; |
+ class SynthesizedClassBit : |
+ public BitField<uint16_t, bool, kSynthesizedClassBit, 1> {}; |
+ class MarkedForParsingBit : |
+ public BitField<uint16_t, bool, kMarkedForParsingBit, 1> {}; |
+ class MixinAppAliasBit : |
+ public BitField<uint16_t, bool, kMixinAppAliasBit, 1> {}; |
+ class MixinTypeAppliedBit : |
+ public BitField<uint16_t, bool, kMixinTypeAppliedBit, 1> {}; |
+ class FieldsMarkedNullableBit : |
+ public BitField<uint16_t, bool, kFieldsMarkedNullableBit, 1> {}; |
+ class CycleFreeBit : public BitField<uint16_t, bool, kCycleFreeBit, 1> {}; |
+ class EnumBit : public BitField<uint16_t, bool, kEnumBit, 1> {}; |
+ class IsAllocatedBit : public BitField<uint16_t, bool, kIsAllocatedBit, 1> {}; |
void set_name(const String& value) const; |
void set_pretty_name(const String& value) const; |
@@ -2037,12 +2044,19 @@ class ICData : public Object { |
}; |
class NumArgsTestedBits : public BitField<uint32_t, |
- kNumArgsTestedPos, kNumArgsTestedSize> {}; // NOLINT |
+ uint32_t, |
+ kNumArgsTestedPos, |
+ kNumArgsTestedSize> {}; |
class DeoptReasonBits : public BitField<uint32_t, |
- ICData::kDeoptReasonPos, ICData::kDeoptReasonSize> {}; // NOLINT |
- class IssuedJSWarningBit : public BitField<bool, kIssuedJSWarningBit, 1> {}; |
+ uint32_t, |
+ ICData::kDeoptReasonPos, |
+ ICData::kDeoptReasonSize> {}; |
+ class IssuedJSWarningBit : |
+ public BitField<uint32_t, bool, kIssuedJSWarningBit, 1> {}; |
class RangeFeedbackBits : public BitField<uint32_t, |
- ICData::kRangeFeedbackPos, ICData::kRangeFeedbackSize> {}; // NOLINT |
+ uint32_t, |
+ ICData::kRangeFeedbackPos, |
+ ICData::kRangeFeedbackSize> {}; |
#if defined(DEBUG) |
// Used in asserts to verify that a check is not added twice. |
@@ -2732,18 +2746,19 @@ FOR_EACH_FUNCTION_KIND_BIT(DECLARE_BIT) |
(kBitsPerByte * sizeof(static_cast<RawFunction*>(0)->kind_tag_))); |
class KindBits : |
- public BitField<RawFunction::Kind, kKindTagPos, kKindTagSize> {}; // NOLINT |
+ public BitField<uint32_t, RawFunction::Kind, kKindTagPos, kKindTagSize> {}; |
- class RecognizedBits : public BitField<MethodRecognizer::Kind, |
+ class RecognizedBits : public BitField<uint32_t, |
+ MethodRecognizer::Kind, |
kRecognizedTagPos, |
kRecognizedTagSize> {}; |
- class ModifierBits : |
- public BitField<RawFunction::AsyncModifier, |
- kModifierPos, |
- kModifierSize> {}; // NOLINT |
+ class ModifierBits : public BitField<uint32_t, |
+ RawFunction::AsyncModifier, |
+ kModifierPos, |
+ kModifierSize> {}; |
#define DEFINE_BIT(name, _) \ |
- class name##Bit : public BitField<bool, k##name##Bit, 1> {}; |
+ class name##Bit : public BitField<uint32_t, bool, k##name##Bit, 1> {}; |
FOR_EACH_FUNCTION_KIND_BIT(DEFINE_BIT) |
#undef DEFINE_BIT |
@@ -3080,15 +3095,16 @@ class Field : public Object { |
kReflectableBit, |
kDoubleInitializedBit, |
}; |
- class ConstBit : public BitField<bool, kConstBit, 1> {}; |
- class StaticBit : public BitField<bool, kStaticBit, 1> {}; |
- class FinalBit : public BitField<bool, kFinalBit, 1> {}; |
- class HasInitializerBit : public BitField<bool, kHasInitializerBit, 1> {}; |
- class UnboxingCandidateBit : public BitField<bool, |
- kUnboxingCandidateBit, 1> {}; |
- class ReflectableBit : public BitField<bool, kReflectableBit, 1> {}; |
- class DoubleInitializedBit : public BitField<bool, |
- kDoubleInitializedBit, 1> {}; |
+ class ConstBit : public BitField<uint8_t, bool, kConstBit, 1> {}; |
+ class StaticBit : public BitField<uint8_t, bool, kStaticBit, 1> {}; |
+ class FinalBit : public BitField<uint8_t, bool, kFinalBit, 1> {}; |
+ class HasInitializerBit : |
+ public BitField<uint8_t, bool, kHasInitializerBit, 1> {}; |
+ class UnboxingCandidateBit : |
+ public BitField<uint8_t, bool, kUnboxingCandidateBit, 1> {}; |
+ class ReflectableBit : public BitField<uint8_t, bool, kReflectableBit, 1> {}; |
+ class DoubleInitializedBit : |
+ public BitField<uint8_t, bool, kDoubleInitializedBit, 1> {}; |
// Update guarded cid and guarded length for this field. Returns true, if |
// deoptimization of dependent code is required. |
@@ -3110,8 +3126,8 @@ class Field : public Object { |
void set_token_pos(TokenPosition token_pos) const { |
StoreNonPointer(&raw_ptr()->token_pos_, token_pos); |
} |
- void set_kind_bits(intptr_t value) const { |
- StoreNonPointer(&raw_ptr()->kind_bits_, static_cast<uint8_t>(value)); |
+ void set_kind_bits(uint8_t value) const { |
+ StoreNonPointer(&raw_ptr()->kind_bits_, value); |
} |
static RawField* New(); |
@@ -4520,9 +4536,10 @@ class Code : public Object { |
kPtrOffSize = 30, |
}; |
- class OptimizedBit : public BitField<bool, kOptimizedBit, 1> {}; |
- class AliveBit : public BitField<bool, kAliveBit, 1> {}; |
- class PtrOffBits : public BitField<intptr_t, kPtrOffBit, kPtrOffSize> {}; |
+ class OptimizedBit : public BitField<int32_t, bool, kOptimizedBit, 1> {}; |
+ class AliveBit : public BitField<int32_t, bool, kAliveBit, 1> {}; |
+ class PtrOffBits : |
+ public BitField<int32_t, intptr_t, kPtrOffBit, kPtrOffSize> {}; |
class SlowFindRawCodeVisitor : public FindObjectVisitor { |
public: |
@@ -8016,8 +8033,8 @@ class JSRegExp : public Instance { |
kFlagsSize = 4, |
}; |
- class TypeBits : public BitField<RegExType, kTypePos, kTypeSize> {}; |
- class FlagsBits : public BitField<intptr_t, kFlagsPos, kFlagsSize> {}; |
+ class TypeBits : public BitField<int8_t, RegExType, kTypePos, kTypeSize> {}; |
+ class FlagsBits : public BitField<int8_t, intptr_t, kFlagsPos, kFlagsSize> {}; |
bool is_initialized() const { return (type() != kUnitialized); } |
bool is_simple() const { return (type() == kSimple); } |