From f506019e8b6500357530f1c83176525fcec6e061 Mon Sep 17 00:00:00 2001 From: David Aurelio Date: Tue, 29 Jan 2019 10:30:14 -0800 Subject: [PATCH] count cache hits Summary: @public Adds cache hit counts to layout stats. Reviewed By: SidharthGuglani Differential Revision: D13844022 fbshipit-source-id: 906b4ec5fe3314287911cee2c37d77c4aac76455 --- ReactCommon/yoga/yoga/YGMarker.h | 2 ++ ReactCommon/yoga/yoga/Yoga.cpp | 3 +++ 2 files changed, 5 insertions(+) diff --git a/ReactCommon/yoga/yoga/YGMarker.h b/ReactCommon/yoga/yoga/YGMarker.h index 15280927282..60de5120a99 100644 --- a/ReactCommon/yoga/yoga/YGMarker.h +++ b/ReactCommon/yoga/yoga/YGMarker.h @@ -20,6 +20,8 @@ typedef YG_ENUM_BEGIN(YGMarker){ typedef struct { int layouts; int measures; + int cachedLayouts; + int cachedMeasures; } YGMarkerLayoutData; typedef union { diff --git a/ReactCommon/yoga/yoga/Yoga.cpp b/ReactCommon/yoga/yoga/Yoga.cpp index 9461bb3faba..9ae16401e06 100644 --- a/ReactCommon/yoga/yoga/Yoga.cpp +++ b/ReactCommon/yoga/yoga/Yoga.cpp @@ -3803,6 +3803,9 @@ bool YGLayoutNodeInternal( layout->measuredDimensions[YGDimensionHeight] = cachedResults->computedHeight; + (performLayout ? layoutMarkerData.cachedLayouts + : layoutMarkerData.cachedMeasures) += 1; + if (gPrintChanges && gPrintSkips) { YGLog( node,