diff options
Diffstat (limited to 'deps/v8/src/feedback-vector.h')
-rw-r--r-- | deps/v8/src/feedback-vector.h | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/deps/v8/src/feedback-vector.h b/deps/v8/src/feedback-vector.h index f40ffcd742..880e4713d4 100644 --- a/deps/v8/src/feedback-vector.h +++ b/deps/v8/src/feedback-vector.h @@ -140,8 +140,13 @@ class FeedbackMetadata; // - optimized code cell (weak cell or Smi marker) // followed by an array of feedback slots, of length determined by the feedback // metadata. -class FeedbackVector : public HeapObject { +class FeedbackVector : public HeapObject, public NeverReadOnlySpaceObject { public: + // Use the mixin methods over the HeapObject methods. + // TODO(v8:7786) Remove once the HeapObject methods are gone. + using NeverReadOnlySpaceObject::GetHeap; + using NeverReadOnlySpaceObject::GetIsolate; + // Casting. static inline FeedbackVector* cast(Object* obj); @@ -243,12 +248,7 @@ class FeedbackVector : public HeapObject { return GetLanguageModeFromSlotKind(GetKind(slot)); } -#ifdef OBJECT_PRINT - // For gdb debugging. - void Print(); -#endif // OBJECT_PRINT - - static void AssertNoLegacyTypes(Object* object); + static void AssertNoLegacyTypes(MaybeObject* object); DECL_PRINTER(FeedbackVector) DECL_VERIFIER(FeedbackVector) @@ -445,11 +445,6 @@ class FeedbackMetadata : public HeapObject { V8_EXPORT_PRIVATE static Handle<FeedbackMetadata> New( Isolate* isolate, const FeedbackVectorSpec* spec = nullptr); -#ifdef OBJECT_PRINT - // For gdb debugging. - void Print(); -#endif // OBJECT_PRINT - DECL_PRINTER(FeedbackMetadata) DECL_VERIFIER(FeedbackMetadata) @@ -609,7 +604,7 @@ class FeedbackNexus final { void ConfigurePremonomorphic(); bool ConfigureMegamorphic(IcCheckType property_type); - inline Object* GetFeedback() const; + inline MaybeObject* GetFeedback() const; inline MaybeObject* GetFeedbackExtra() const; inline Isolate* GetIsolate() const; @@ -684,6 +679,8 @@ class FeedbackNexus final { protected: inline void SetFeedback(Object* feedback, WriteBarrierMode mode = UPDATE_WRITE_BARRIER); + inline void SetFeedback(MaybeObject* feedback, + WriteBarrierMode mode = UPDATE_WRITE_BARRIER); inline void SetFeedbackExtra(Object* feedback_extra, WriteBarrierMode mode = UPDATE_WRITE_BARRIER); inline void SetFeedbackExtra(MaybeObject* feedback_extra, |