| Index: third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| index 34394d9fefa93349d81016ebb644b680f17f947e..ef8626b3c40d7e45661b705fa02867c03c5ac480 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| @@ -250,6 +250,7 @@ LayoutBlockFlow::LayoutBlockFlow(ContainerNode* node) : LayoutBlock(node) {
|
| static_assert(sizeof(MarginInfo) == sizeof(SameSizeAsMarginInfo),
|
| "MarginInfo should stay small");
|
| setChildrenInline(true);
|
| + m_rareStat.addReason(ReasonLBFAll);
|
| }
|
|
|
| LayoutBlockFlow::~LayoutBlockFlow() {}
|
| @@ -286,6 +287,7 @@ void LayoutBlockFlow::setBreakAtLineToAvoidWidow(int lineToBreak) {
|
| ensureRareData();
|
| ASSERT(!m_rareData->m_didBreakAtLineToAvoidWidow);
|
| m_rareData->m_lineBreakToAvoidWidow = lineToBreak;
|
| + m_rareStat.addReason(ReasonLBFLineBreakToAvoidWidow);
|
| }
|
|
|
| void LayoutBlockFlow::setDidBreakAtLineToAvoidWidow() {
|
| @@ -2229,6 +2231,9 @@ void LayoutBlockFlow::setMustDiscardMarginBefore(bool value) {
|
| m_rareData = WTF::makeUnique<LayoutBlockFlowRareData>(this);
|
|
|
| m_rareData->m_discardMarginBefore = value;
|
| +
|
| + if (value)
|
| + m_rareStat.addReason(ReasonLBFDiscardMargin);
|
| }
|
|
|
| void LayoutBlockFlow::setMustDiscardMarginAfter(bool value) {
|
| @@ -2244,6 +2249,9 @@ void LayoutBlockFlow::setMustDiscardMarginAfter(bool value) {
|
| m_rareData = WTF::makeUnique<LayoutBlockFlowRareData>(this);
|
|
|
| m_rareData->m_discardMarginAfter = value;
|
| +
|
| + if (value)
|
| + m_rareStat.addReason(ReasonLBFDiscardMargin);
|
| }
|
|
|
| bool LayoutBlockFlow::mustDiscardMarginBefore() const {
|
| @@ -2304,6 +2312,7 @@ void LayoutBlockFlow::setMaxMarginBeforeValues(LayoutUnit pos, LayoutUnit neg) {
|
| }
|
| m_rareData->m_margins.setPositiveMarginBefore(pos);
|
| m_rareData->m_margins.setNegativeMarginBefore(neg);
|
| + m_rareStat.addReason(ReasonLBFMargin);
|
| }
|
|
|
| void LayoutBlockFlow::setMaxMarginAfterValues(LayoutUnit pos, LayoutUnit neg) {
|
| @@ -2315,6 +2324,7 @@ void LayoutBlockFlow::setMaxMarginAfterValues(LayoutUnit pos, LayoutUnit neg) {
|
| }
|
| m_rareData->m_margins.setPositiveMarginAfter(pos);
|
| m_rareData->m_margins.setNegativeMarginAfter(neg);
|
| + m_rareStat.addReason(ReasonLBFMargin);
|
| }
|
|
|
| bool LayoutBlockFlow::mustSeparateMarginBeforeForChild(
|
| @@ -4137,6 +4147,7 @@ void LayoutBlockFlow::setPaginationStrutPropagatedFromChild(LayoutUnit strut) {
|
| m_rareData = WTF::makeUnique<LayoutBlockFlowRareData>(this);
|
| }
|
| m_rareData->m_paginationStrutPropagatedFromChild = strut;
|
| + m_rareStat.addReason(ReasonLBFPaginationStrutFromChild);
|
| }
|
|
|
| void LayoutBlockFlow::setFirstForcedBreakOffset(LayoutUnit blockOffset) {
|
| @@ -4299,6 +4310,7 @@ void LayoutBlockFlow::createOrDestroyMultiColumnFlowThreadIfNeeded(
|
| LayoutBlockFlowRareData& rareData = ensureRareData();
|
| ASSERT(!rareData.m_multiColumnFlowThread);
|
| rareData.m_multiColumnFlowThread = flowThread;
|
| + m_rareStat.addReason(ReasonLBFMultiColumnFlowThread);
|
| }
|
|
|
| LayoutBlockFlow::LayoutBlockFlowRareData& LayoutBlockFlow::ensureRareData() {
|
|
|