Bug 747508 - Count PresContexts in about:memory; r=njn

This commit is contained in:
Nathan Froyd 2012-05-07 16:09:11 -04:00
parent bbcef6a2d6
commit 5db1917152
6 changed files with 16 additions and 4 deletions

View File

@ -9698,7 +9698,8 @@ nsIDocument::DocSizeOfExcludingThis(nsWindowSizes* aWindowSizes) const
mPresShell->SizeOfIncludingThis(aWindowSizes->mMallocSizeOf,
&aWindowSizes->mLayoutArenas,
&aWindowSizes->mLayoutStyleSets,
&aWindowSizes->mLayoutTextRuns);
&aWindowSizes->mLayoutTextRuns,
&aWindowSizes->mLayoutPresContext);
}
// Measurement of the following members may be added later if DMD finds it

View File

@ -210,6 +210,11 @@ CollectWindowReports(nsGlobalWindow *aWindow,
"tree, within a window.");
aWindowTotalSizes->mLayoutTextRuns += windowSizes.mLayoutTextRuns;
REPORT("/layout/pres-contexts", windowSizes.mLayoutPresContext,
"Memory used for the PresContext in the PresShell's frame "
"within a window.");
aWindowTotalSizes->mLayoutPresContext += windowSizes.mLayoutPresContext;
#undef REPORT
return NS_OK;

View File

@ -64,6 +64,7 @@ public:
size_t mLayoutArenas;
size_t mLayoutStyleSets;
size_t mLayoutTextRuns;
size_t mLayoutPresContext;
};
/**

View File

@ -1221,7 +1221,8 @@ public:
virtual void SizeOfIncludingThis(nsMallocSizeOfFun aMallocSizeOf,
size_t *aArenasSize,
size_t *aStyleSetsSize,
size_t *aTextRunsSize) const = 0;
size_t *aTextRunsSize,
size_t *aPresContextSize) const = 0;
/**
* Refresh observer management.

View File

@ -8976,7 +8976,8 @@ void
PresShell::SizeOfIncludingThis(nsMallocSizeOfFun aMallocSizeOf,
size_t *aArenasSize,
size_t *aStyleSetsSize,
size_t *aTextRunsSize) const
size_t *aTextRunsSize,
size_t *aPresContextSize) const
{
*aArenasSize = aMallocSizeOf(this);
*aArenasSize += mFrameArena.SizeOfExcludingThis(aMallocSizeOf);
@ -8984,6 +8985,8 @@ PresShell::SizeOfIncludingThis(nsMallocSizeOfFun aMallocSizeOf,
*aStyleSetsSize = StyleSet()->SizeOfIncludingThis(aMallocSizeOf);
*aTextRunsSize = SizeOfTextRuns(aMallocSizeOf);
*aPresContextSize = mPresContext->SizeOfIncludingThis(aMallocSizeOf);
}
size_t

View File

@ -822,7 +822,8 @@ public:
void SizeOfIncludingThis(nsMallocSizeOfFun aMallocSizeOf,
size_t *aArenasSize,
size_t *aStyleSetsSize,
size_t *aTextRunsSize) const;
size_t *aTextRunsSize,
size_t *aPresContextSize) const;
size_t SizeOfTextRuns(nsMallocSizeOfFun aMallocSizeOf) const;
protected: