gecko-dev/layout
Nicholas Nethercote fb0b046a21 Bug 1387958 - Measure the stylist during memory reporting. r=heycam.
Example output from the Obama Wikipedia page:

> ├──2,315,600 B (01.16%) -- stylist
> │  ├──1,916,928 B (00.96%) ── invalidation-map
> │  ├────228,800 B (00.11%) ── rule-tree
> │  ├────142,336 B (00.07%) ── element-and-pseudos-maps
> │  ├─────14,336 B (00.01%) ── revalidation-selectors
> │  ├──────9,648 B (00.00%) ── other
> │  └──────3,552 B (00.00%) ── precomputed-pseudos

This change requires new code to measure HashMaps, which uses the new
'malloc_enclosing_size_of' functions that can measure a heap block from an
interior pointer.

The patch changes MallocSizeOfFn to a newtype, and introduces
MallocEnclosingSizeOfFn alongside.

It also adds new traits: MallocSizeOfBox, MallocSizeOfVec, MallocSizeOfHash.
These each contain a single method that does shallow measurement of the
relevant type, which is often useful. (This is a different style to the
existing MallocSizeOf trait, which does deep measurement, but I'm moving away
from the always-deep-measurement style because it's less flexible.)

MozReview-Commit-ID: FgJCCmdw0ZF

--HG--
extra : rebase_source : c692c2073aa66020224489b97247c49de95a99a4
2017-09-05 11:38:45 +10:00
..
base Bug 1352238 Part 1 - Make box construction and layout for radio/checkbox elements work the same on Android as on other platforms. r=mats 2017-09-05 22:44:24 +08:00
build Bug 1393189 part 1 - Statically initialize builtin style table with their name atom included. r=dholbert 2017-08-29 14:44:14 +10:00
doc
forms Bug 1352238 Part 5 - Remove painting related methods in nsGfxCheckbox/RadioControlFrame.cpp. r=mats 2017-09-05 22:45:13 +08:00
generic merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-09-02 10:54:44 +02:00
inspector Merge m-c to inbound, a=merge 2017-08-29 16:17:13 -07:00
ipc Bug 1389143 - Send event regions override information to APZ in layers-free mode. r=jrmuizel 2017-08-18 13:06:31 -04:00
mathml Backed out changeset 8f2dd8f13b53 (bug 1388161) for failing chrome's test_animation_performance_warning.html | preserve-3d transform. r=backout 2017-08-10 14:40:21 +02:00
media
painting Bug 1396489 - Part 3. Use gfxContext::GetClipExtents(false) when clipped rect in device space is needed. r=mstange 2017-09-04 14:04:17 +08:00
printing Bug 1391645 - Make nsPrintEngine::SetupToPrintContent() proceed with the print even when mPrt->mPrintObject->mPresShell and mPrt->mPrintObject->mPresContext are nullptr but mIsCreatingPrintPreview is false r=dholbert 2017-08-21 14:56:07 +09:00
reftests Bug 1352238 Part 8 - Make fuzzy and unexpected tests passed. r=mats 2017-09-05 22:47:09 +08:00
style Bug 1387958 - Measure the stylist during memory reporting. r=heycam. 2017-09-05 11:38:45 +10:00
svg Bug 1396489 - Part 3. Use gfxContext::GetClipExtents(false) when clipped rect in device space is needed. r=mstange 2017-09-04 14:04:17 +08:00
tables Bug 1389295 - Confine BCDamageArea while appending cells to within the table area and remove assert for test 460637-2.xhtml r=mats 2017-08-24 17:39:44 -07:00
tools Bug 1394957 - Fix logging of number of tests when running chunked reftests; r=ahal 2017-08-30 10:11:28 -06:00
xul Bug 1352238 Part 7 - Check if native theme supports the widget before using it. r=mats 2017-09-05 22:47:01 +08:00
moz.build