Nicholas Nethercote
9ab2597a8d
Bug 1387956 (part 2) - Overhaul handling of nsWindowSizes. r=mccr8.
...
This patch does the following.
- Moves nsWindowSizes from nsWindowMemoryReporter.h to its own file,
nsWindowSizes.h, so it can be included more widely without exposing
nsWindowMemoryReporter.
- Merges nsArenaMemoryStats.h (which defines nsTabSizes and nsArenaMemoryStats)
into nsWindowSizes.h.
- Renames nsArenaMemoryStats as nsArenaSizes, and nsWindowSizes::mArenaStats as
nsWindowSizes::mArenaSizes. This is the more usual naming scheme for such
types.
- Renames FRAME_ID_STAT_FIELD as NS_ARENA_SIZES_FIELD.
- Passes nsWindowSizes to PresShell::AddSizeOfIncludingThis() and
nsPresArena::AddSizeOfExcludingThis(), instead of a bunch of smaller things.
One nice consequence is that the odd nsArenaMemoryStats::mOther field is no
longer necessary, because we can update nsWindowSizes::mLayoutPresShellSize
directly in nsPresArena::AddSizeOfExcludingThis().
- Adds |const| to a few methods.
MozReview-Commit-ID: EpgFWKFqy7Y
2017-08-10 14:14:09 +10:00
L. David Baron
76b64757a7
Bug 1367190
patch 3 - Store nsPresArena::mFreeLists as an array. r=mats
...
MozReview-Commit-ID: DDJetJaJMb4
--HG--
extra : transplant_source : r%2C1%CA%1B%3B%816/%A7%1A%82%28%E3%B6%EDj%A2W%B1
2017-05-24 09:41:41 -04:00
L. David Baron
e50b00e813
Bug 1367190
patch 2 - Remove nsPresArena::AllocateBySize, nsIPresShell::AllocateMisc, and nsPresContext::AllocateFromShell. r=mats
...
MozReview-Commit-ID: l2UQC7qOQ0
--HG--
extra : transplant_source : L%29d%C1%7Cc%86%2B%A2%B3%FE%EC%9D%A5%D9%CEdQ%2CL
2017-05-24 09:36:11 -04:00
Eric Rahm
861a58d5a4
Bug 1351904
- Switch layout over to ArenaAllocator. r=xidorn
...
This switches over layout's usage of PLArena to ArenaAllocator. This allows
us to build more files in unified sources and gets rid of various CONST masks.
MozReview-Commit-ID: Aaf3Dl2kaoz
2017-03-31 14:06:33 -07:00
Cameron McCormack
5cd9b296f7
Bug 1203766 - Part 3: Add ArenaRefPtr support to nsStyleContext. r=bzbarsky
2015-09-17 12:08:20 +10:00
Cameron McCormack
f503baef93
Bug 1203766 - Part 2: Add an ArenaRefPtr class that can have its pointer cleared out when an object's owning nsPresArena goes away. r=bzbarsky
2015-09-17 12:08:19 +10:00
Cameron McCormack
be6487a748
Bug 1203766 - Part 1: Generate nsPresArena::ObjectIDs with a preprocessor-included file. r=bzbarsky
2015-09-17 12:08:19 +10:00
Nicholas Nethercote
87b80f8c66
Bug 1188745 - Rename nsTArray::SizeOfExcludingThis() as ShallowSizeOfExcludingThis(). r=froydnj.
...
This makes it clearer that, unlike how SizeOf*() functions usually work, this
doesn't measure any children hanging off the array.
And do likewise for nsTObserverArray.
--HG--
extra : rebase_source : 6a8c8d8ffb53ad51b5773afea77126cdd767f149
2015-07-28 23:24:24 -07:00
Ting-Yu Lin
ffd909a0f6
Bug 1182963 - Use nsTHashTable::Iterator in nsPresArena. r=njn
...
--HG--
extra : commitid : DuQQI9pWHsg
extra : rebase_source : a6ab8377a5a61808aa593ff2dba8ad52d1e8834c
2015-07-15 17:05:06 +08:00
Cameron McCormack
56634d96ba
Bug 804975 - Part 3: Support conditional cached reset structs on rule nodes. r=dbaron
2015-06-23 11:48:18 +10:00
Xidorn Quan
69835869dc
Bug 1077718 - Switch dynamic CounterStyle objects to use arena allocation. r=mats
2014-10-16 16:10:00 -04:00
Ehsan Akhgari
2b84010cb8
Bug 1048246
- Fix more bad implicit constructors in layout; r=roc
...
--HG--
extra : rebase_source : ed828993139bc70232508364a9f046e38b7d3e06
2014-08-07 19:48:38 -04:00
Andrew McCreight
228d194059
Bug 1046281 - Use the simpler version of nsTHashtable memory reporters. r=njn
2014-08-05 13:27:41 -07:00
L. David Baron
374118e754
Bug 1041060: Use AllocateByObjectID/FreeByObjectID for nsInheritedStyleData and nsResetStyleData. r=heycam
...
This is similar to bug 1038488, which did the same for style structs.
This means the entire path from frame to style struct should be
allocated using frame IDs or object IDs.
2014-07-18 21:22:20 -07:00
L. David Baron
6b85a58773
Bug 1038488 patch 3 - Use AllocateByObjectID/FreeByObjectID for style structs. r=heycam
2014-07-15 22:27:13 -07:00
Robert O'Callahan
cbb8fdebfc
Bug 1015664
. Part 1: Remove NS_HIDDEN_() usage. r=bsmedberg
2014-06-03 00:08:21 +12:00
Nicholas Nethercote
75f194c48c
Bug 921923 (part 3) - Make multi-output sizeOfFoo() functions more consistent in content/, dom/ and layout/. r=till.
...
--HG--
extra : rebase_source : ac8aebe86b4b7ee5acc0f541be5645abf73b6a98
2013-09-30 16:20:23 -07:00
Ehsan Akhgari
c2149cd1cf
Bug 906790 follow-up: Unbreak ASAN builds
2013-08-20 17:48:00 -04:00
Ehsan Akhgari
2621b190f1
Bug 906790 - Minimize layout/base #includes; r=roc
2013-08-19 18:55:18 -04:00
Ehsan Akhgari
ef4b479714
Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted
2013-07-30 10:25:31 -04:00
Catalin Iacob
6f4758d23e
Bug 798914 (part 5) - Use newly introduced mozilla::MallocSizeOf instead of nsMallocSizeOfFun. r=njn.
...
--HG--
extra : rebase_source : fc472490dd978d165f02f77ed37f07aed6e5bb61
2013-06-23 14:03:39 +02:00
Mats Palmgren
a72cd1a4d3
Bug 867530 - Move PresArena poisoning code to MFBT. r=roc
...
--HG--
rename : layout/base/tests/cpp-tests/TestPoisonArea.cpp => mfbt/tests/TestPoisonArea.cpp
2013-05-07 20:48:59 +02:00
Mats Palmgren
479bcdbb38
Bug 856368 - Convert some comments into proper doc-comments. r=roc
2013-04-15 22:00:06 +02:00
Mats Palmgren
d7cb6e0ea4
Bug 856368 - Inline the AllocateBy* and FreeBy* methods into the header. r=roc
2013-04-15 22:00:06 +02:00
Mats Palmgren
11a4e4ae9f
Bug 856368 - Adjust memory reporter SizeOf methods accordingly. r=roc
2013-04-15 22:00:06 +02:00
Mats Palmgren
62e2d164d6
Bug 856368 - Merge nsPresArena::mState into nsPresArena itself. r=roc
2013-04-15 22:00:06 +02:00
Mats Palmgren
6ce54168af
Bug 856368 - Remove DEBUG_TRACEMALLOC_PRESARENA. r=roc
2013-04-15 22:00:06 +02:00
Mats Palmgren
b3ddf199bb
Bug 729519 - Allocate heap nsFrameLists from the shell arena. r=bzbarsky
...
"new nsFrameList()" becomes "new (shell) nsFrameList()".
"delete list" becomes "if (list) list->Delete(shell)" - note also that
an additional assertion was added that list is empty when deleted.
"nsAutoPtr<nsFrameList> list(StealSomeFrames())" becomes
"AutoFrameListPtr list(aPresContext, StealSomeFrames())"
2013-04-01 17:26:02 +02:00
Siddharth Agarwal [
1522fc9c00
Bug 764376 - Fix references to |class nsArenaMemoryStats|; r=ehsan
2012-06-13 10:43:38 -04:00
Nathan Froyd
d2af2caa01
Bug 674922 - report on most common objects allocated in a PresShell's arena; r=roc,njn
2012-06-06 13:35:40 -04:00
Nathan Froyd
620badd810
Bug 674922 - report per-frame-type numbers in about:memory; r=njn,roc
2012-06-06 13:29:16 -04:00
Gervase Markham
82ff7027aa
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Mats Palmgren
84561c7f26
Bug 750745 - Allocate nsLineBoxes from their own presshell arena list. part=3/3 r=roc
2012-05-04 02:14:02 +02:00
Mats Palmgren
0f5b4c9982
Bug 750745 - Introduce AllocateByObjectID/FreeByObjectID for allocating non-frame objects from per-type lists in the PresArena. part=2/3 r=roc
2012-05-04 02:14:02 +02:00
Mats Palmgren
453616011e
Bug 750745 - Rename nsPresArena::AllocateByCode/FreeByCode to AllocateByFrameID/FreeByFrameID. part=1/3 r=roc
2012-05-04 02:14:02 +02:00
Mark Capella
bb0cb90d39
Bug 740688 - Use uintptr_t instead of PRUword, and intptr_t instead of PRWord. r=jwalden
...
--HG--
extra : rebase_source : 648a581323d2c2893df780f71fe34dadcc4bbaab
2012-04-11 17:17:44 -07:00
Nicholas Nethercote
8ea852b335
Bug 705987 - Use mallocSizeOf in the layout memory reporters. r=khuey,bzbarsky
2011-12-08 21:01:52 -08:00
Ehsan Akhgari
92064e6d3f
Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
...
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
L. David Baron
401e3dc9b6
Add poisoning for nsRuleData::mValueOffsets. (Bug 636039, patch 19) r=bzbarsky
...
I tested manually that after:
(a) removing the |ruleData.mValueOffsets[aSID] = 0;| in
nsRuleNode::WalkRuleTree
(b) removing the NS_ABORT_IF_FALSE(aRuleData->mValueOffsets[aSID] == 0,
...) from nsRuleNode::CheckSpecifiedProperties and
UnsetPropertiesWithoutFlags
that we crash dereferencing the poison address in a SetCoord call inside
nsRuleNode::ComputeTextResetData
2011-03-17 20:14:31 -07:00
Vladimir Vukicevic
73cbd73f4a
b=566447; add presshell memory reporter; r=bz
2010-05-31 19:19:35 -07:00
Zack Weinberg
adeb8f5a6b
Bug 497495 (frame poisoning) part 4: Change nsPresArena to maintain separate free lists for every frame class, based on its FrameIID. Pass the necessary information in from AllocateFrame and FreeFrame. r=roc sr=dbaron
2009-09-16 10:00:04 +12:00
Justin Dolske
4a4ac8be36
Backed out changeset a3f33def2dca (bug 497495 part 4)
2009-09-14 17:26:08 -07:00
Boris Zbarsky
3ded15f4d3
Bug 497495 (frame poisoning) part 4: Change nsPresArena to maintain separate free lists for every frame class, based on its FrameIID. Pass the necessary information in from AllocateFrame and FreeFrame. r=roc sr=dbaron
2009-09-14 17:29:56 -04:00
Zack Weinberg
8d369053f7
Bug 497495 (frame poisoning) part 1: Move the frame arena code to its own file and rename the class to nsPresArena. r=roc
2009-08-17 20:21:06 -07:00