Commit c2eb6956 authored by keishi@chromium.org's avatar keishi@chromium.org

Revert of Oilpan: Remove raw pointer to DescendantInvalidationSet from...

Revert of Oilpan: Remove raw pointer to DescendantInvalidationSet from StyleInvalidator::RecursionData (patchset #4 id:60001 of https://codereview.chromium.org/1225233005/ )

Reason for revert:
blink_perf.css regression
https://code.google.com/p/chromium/issues/detail?id=513378#makechanges

Original issue's description:
> Oilpan: Remove raw pointer to DescendantInvalidationSet from StyleInvalidator::RecursionData
> 
> BUG=509911
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=199288
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=199294

TBR=haraken@chromium.org,yutak@chromium.org,oilpan-reviews@chromium.org,sigbjornf@opera.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=509911

Review URL: https://codereview.chromium.org/1330763002

git-svn-id: svn://svn.chromium.org/blink/trunk@201869 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 49a1acc0
...@@ -29,9 +29,7 @@ public: ...@@ -29,9 +29,7 @@ public:
DECLARE_TRACE(); DECLARE_TRACE();
private: private:
class RecursionData { struct RecursionData {
STACK_ALLOCATED();
public:
RecursionData() RecursionData()
: m_invalidateCustomPseudo(false) : m_invalidateCustomPseudo(false)
, m_wholeSubtreeInvalid(false) , m_wholeSubtreeInvalid(false)
...@@ -49,7 +47,7 @@ private: ...@@ -49,7 +47,7 @@ private:
bool treeBoundaryCrossing() const { return m_treeBoundaryCrossing; } bool treeBoundaryCrossing() const { return m_treeBoundaryCrossing; }
bool insertionPointCrossing() const { return m_insertionPointCrossing; } bool insertionPointCrossing() const { return m_insertionPointCrossing; }
using InvalidationSets = WillBeHeapVector<RawPtrWillBeMember<const DescendantInvalidationSet>, 16>; using InvalidationSets = Vector<const DescendantInvalidationSet*, 16>;
InvalidationSets m_invalidationSets; InvalidationSets m_invalidationSets;
bool m_invalidateCustomPseudo; bool m_invalidateCustomPseudo;
bool m_wholeSubtreeInvalid; bool m_wholeSubtreeInvalid;
...@@ -62,7 +60,6 @@ private: ...@@ -62,7 +60,6 @@ private:
bool checkInvalidationSetsAgainstElement(Element&, RecursionData&); bool checkInvalidationSetsAgainstElement(Element&, RecursionData&);
class RecursionCheckpoint { class RecursionCheckpoint {
STACK_ALLOCATED();
public: public:
RecursionCheckpoint(RecursionData* data) RecursionCheckpoint(RecursionData* data)
: m_prevInvalidationSetsSize(data->m_invalidationSets.size()) : m_prevInvalidationSetsSize(data->m_invalidationSets.size())
...@@ -87,7 +84,6 @@ private: ...@@ -87,7 +84,6 @@ private:
bool m_prevWholeSubtreeInvalid; bool m_prevWholeSubtreeInvalid;
bool m_treeBoundaryCrossing; bool m_treeBoundaryCrossing;
bool m_insertionPointCrossing; bool m_insertionPointCrossing;
// This is a stack reference and need not separate tracing.
RecursionData* m_data; RecursionData* m_data;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment