Граф коммитов

44 Коммитов

Автор SHA1 Сообщение Дата
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