Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 62251fb32dbed76a7d3f7e510a41c94be01b5179..4b5462dc3985e72c44d8c5dd1b850ad408173db1 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -8252,8 +8252,9 @@ class AllocationSite: public Struct { |
class DoNotInlineBit: public BitField<bool, 29, 1> {}; |
// Bitfields for pretenure_data |
- class MementoFoundCountBits: public BitField<int, 0, 28> {}; |
- class PretenureDecisionBits: public BitField<PretenureDecision, 28, 2> {}; |
+ class MementoFoundCountBits: public BitField<int, 0, 27> {}; |
+ class PretenureDecisionBits: public BitField<PretenureDecision, 27, 2> {}; |
+ class DeoptDependentCodeBit: public BitField<bool, 29, 1> {}; |
STATIC_ASSERT(PretenureDecisionBits::kMax >= kLastPretenureDecisionValue); |
// Increments the mementos found counter and returns true when the first |
@@ -8278,6 +8279,18 @@ class AllocationSite: public Struct { |
SKIP_WRITE_BARRIER); |
} |
+ bool deopt_dependent_code() { |
+ int value = pretenure_data()->value(); |
+ return DeoptDependentCodeBit::decode(value); |
+ } |
+ |
+ void set_deopt_dependent_code(bool deopt) { |
+ int value = pretenure_data()->value(); |
+ set_pretenure_data( |
+ Smi::FromInt(DeoptDependentCodeBit::update(value, deopt)), |
+ SKIP_WRITE_BARRIER); |
+ } |
+ |
int memento_found_count() { |
int value = pretenure_data()->value(); |
return MementoFoundCountBits::decode(value); |