Phil Ringnalda
e39f0adeca
Backed out 2 changesets (bug 1121304) for consistent b2g hangs in webgl-color-test.html?frame=1&__&preserve&premult&_____
...
Backed out changeset 20651ac19549 (bug 1121304)
Backed out changeset 758afec77c95 (bug 1121304)
2015-01-14 22:02:23 -08:00
Nicholas Nethercote
e9735966fa
Bug 1121304 (part 2) - Remove PLDHashTableOps::{alloc,free}Table. r=froydnj.
2015-01-14 14:35:56 -08:00
Nicholas Nethercote
47221bc7f9
Bug 1120476 (part 4) - Remove PLDHashTableOps::finalize. r=froydnj.
...
--HG--
extra : rebase_source : b14dda8cdd5cd896d1e32950e38b2a9f7da4d99e
2015-01-13 19:02:35 -08:00
Nicholas Nethercote
c7538c9776
Bug 1120476 (part 3) - Remove PLDHashTable::data. r=froydnj.
...
--HG--
extra : rebase_source : 24d10af3dbce3ada5252503bc80bb1a4e31bc1c9
2015-01-13 16:42:13 -08:00
Andrew McCreight
c9b9054838
Backout bug 1052793 for exposing bad decommitting behavior for compartmental GCs.
2015-01-08 09:54:13 -08:00
Michael Pruett
62960a5119
Bug 1118024 - Add explicit PL_DHashTable{Add,Lookup,Remove} functions. r=nfroyd
2015-01-05 20:26:50 -06:00
Ehsan Akhgari
f32bb086bc
Bug 1117035 - Mark virtual overridden functions as MOZ_OVERRIDE in XPCOM; r=froydnj
2015-01-05 11:25:41 -05:00
Andrew McCreight
9df62aaa5e
Bug 1109928, part 6 - Define CCGraphBuilder::SetFirstChild() for consistency. r=smaug
2014-12-20 13:35:24 -05:00
Andrew McCreight
625a523a2c
Bug 1109928, part 5 - Inline CCGraphBuilder::DescribeNode because it is silly. r=smaug
2014-12-20 13:35:24 -05:00
Andrew McCreight
dfe6e19690
Bug 1109928, part 4 - Make CCBuilder::AddNode private by adding a new AddPurpleRoot method. r=smaug
2014-12-20 13:35:23 -05:00
Andrew McCreight
03be1f7aee
Bug 1109928, part 3 - Make CCGraphBuilder::AddWeakMapNode and ::NoteJSChild methods private. r=smaug
2014-12-20 13:35:23 -05:00
Andrew McCreight
930cb53323
Bug 1109928, part 2 - Inline some CCGraphBuilder methods now that the builder is doing the building. r=smaug
...
Also, make SetLastChild a private method defined in the class declaration.
2014-12-20 13:35:23 -05:00
Andrew McCreight
119b181592
Bug 1109928, part 1 - Move graph building inside CCGraphBuilder. r=smaug
...
This lets us hide a lot of the internal state of graph building from other classes.
2014-12-20 13:35:23 -05:00
Terrence Cole
4b6a74fbf2
Bug 1105069 - Part 21: Remove AsCell in preference of GCCellPtr; r=jonco, r=mccr8
...
--HG--
extra : rebase_source : 5c4470f3efbd9dbe3caee08ed88b07da549912e0
2014-12-14 08:27:52 -08:00
Terrence Cole
20e03ef2a5
Bug 1105069 - Part 17: Convert xpc_IsGrayGCThing to GCCellPtr; r=mccr8, j=jonco
...
--HG--
extra : rebase_source : 9fdc5ac9ca8de9c12a399532db7e77bc34abb7da
2014-12-05 09:38:34 -08:00
Terrence Cole
a99f92dd64
Bug 1105069 - Part 15: Convert xpc_GCThingIsGrayCCThing to GCCellPtr; r=mccr8, r=jonco
...
--HG--
extra : rebase_source : 096b8eaf5b46afc1c40b0b9e8b233ec13c638c85
2014-12-09 16:22:51 -08:00
Terrence Cole
e4a4d0c7fa
Bug 1105069 - Part 14: Convert NoteJSChild to GCCellPtr; r=mccr8, r=jonco
...
--HG--
extra : rebase_source : 2338e0a57779401f9bc4744bc2fa59a4b31d76bf
2014-12-05 09:38:34 -08:00
Andrew McCreight
9d83b26756
Bug 1052793 - Do per-zone GC for CC_WAITING triggers. r=smaug
2014-12-13 21:17:35 -08:00
Andrew McCreight
0779204bd5
Bug 1097850 - ChildFinder::NoteNativeChild() should call CanSkip(). r=smaug
2014-12-12 13:42:21 -08:00
Andrew McCreight
a6fce3e639
Bug 1110243 - CCGraphBuilder::NoteNativeChild should call CanSkipThis(). r=smaug
2014-12-12 13:42:21 -08:00
Terrence Cole
b3fb25bc3f
Bug 1105069 - Part 10: Convert NoteWeakMapping to GCCellPtr; r=jonco, r=mccr8
...
--HG--
extra : rebase_source : b660a676c03c4a0bbdc521a6401a2a619543aa2a
2014-12-05 09:38:32 -08:00
Nicholas Nethercote
2e23aeecb5
Bug 1102525 (part 3) - Replace SegmentedArray with mozilla::SegmentedVector in the cycle collector. r=smaug.
...
--HG--
extra : rebase_source : fb8b9f52958d6823dc011892b06bf42989a60a75
2014-12-08 14:45:13 -08:00
Olli Pettay
bed81b1fde
Bug 1105089
, try to have shorter ICC slices during animations, r=mccr8
...
--HG--
extra : rebase_source : bfe8cc2825b7cb2ec86f6e8f5ba590593e1c378b
2014-11-27 13:47:51 +02:00
Nicholas Nethercote
6b3fdce6bc
Bug 1096624 - Use a SegmentedArray in nsCycleCollector::CollectWhite. r=smaug.
...
This patch does the following.
- Moves the logic for computing the ideal capacity for a SegmentedArray out of
SnowWhiteKiller into its own class, SegmentedArrayCapacity.
- Replaces the nsTArray in CollectWhite(), which can be very large and is
complicit in ~1% of OOM crashes, with a SegmentedArray.
--HG--
extra : rebase_source : 732743311a08fcc3dfe43a1b308846b93d30e6ed
2014-11-11 16:02:34 -08:00
Andrew McCreight
86f277bb36
Bug 1093278 - Null check in nsPurpleBuffer::VisitEntries. r=smaug
2014-11-03 16:50:00 -05:00
Emanuel Hoogeveen
fbc3e91445
Bug 1084651 - Part 5: Simplify Cycle Collector logic now that SliceBudget makes more sense. r=mccr8
2014-11-06 10:14:00 +01:00
Emanuel Hoogeveen
b7672edb91
Bug 1084651 - Part 2: Clean up SliceBudget and require explicitly choosing between TimeBudget and WorkBudget. r=billm r=mccr8
2014-10-22 14:13:00 +02:00
Nicholas Nethercote
c881cf722e
Bug 1094564 - Used SegmentedArray in SnowWhiteKiller. r=smaug.
...
This patch generalizes SegmentedArray a little, and then uses it instead of
nsTArray in SnowWhiteKiller. This avoids some large (sometimes 1 MiB or more)
allocations which were usually mostly unused.
2014-11-09 14:57:09 -08:00
Carsten "Tomcat" Book
ba5a7941af
Backed out changeset ebdebc9251be (bug 1084651)
2014-11-07 15:30:49 +01:00
Carsten "Tomcat" Book
d87e8af66c
Backed out changeset 77959236fb15 (bug 1084651)
2014-11-07 15:30:16 +01:00
Emanuel Hoogeveen
0d92fda72d
Bug 1084651 - Part 5: Simplify Cycle Collector logic now that SliceBudget makes more sense. r=mccr8
2014-11-06 10:14:00 +01:00
Emanuel Hoogeveen
2efb3493a7
Bug 1084651 - Part 2: Clean up SliceBudget and require explicitly choosing between TimeBudget and WorkBudget. r=wmccloskey r=mccr8
2014-10-22 14:13:00 +02:00
Carsten "Tomcat" Book
13de0f42c9
Backed out 7 changesets (bug 1084651) for ASAN Bustage on a CLOSED TREE
...
Backed out changeset dd2b3e78b425 (bug 1084651)
Backed out changeset 2711fbd91819 (bug 1084651)
Backed out changeset 59a163addd79 (bug 1084651)
Backed out changeset d36f6dbbf925 (bug 1084651)
Backed out changeset 78102b62a4a0 (bug 1084651)
Backed out changeset 06387a2343a0 (bug 1084651)
Backed out changeset 2f8e7c39573e (bug 1084651)
2014-11-05 15:20:25 +01:00
Emanuel Hoogeveen
dd0cdda357
Bug 1084651 - Part 5: Simplify Cycle Collector logic now that SliceBudget makes more sense. r=mccr8
2014-10-21 11:54:00 +02:00
Emanuel Hoogeveen
f6218097c0
Bug 1084651 - Part 2: Clean up SliceBudget and require explicitly choosing between TimeBudget and WorkBudget. r=wmccloskey r=mccr8
2014-10-22 14:13:00 +02:00
Andrew McCreight
526df61329
Bug 1087799, part 3 - Do not include any JS things in the list of white nodes. r=smaug
...
Root() does not actually root JS things, so if some other class's Unlink() method ends
up calling the GC, whiteNodes will end up containing dead pointers. (This is safe right
now because the Unlink and Unroot methods do not do anything to JS things.) It is less
error prone to simply never store those pointers.
Also, add some asserts to enforce that we never call any of the white-object methods
for JS things.
2014-10-24 15:06:56 -07:00
Andrew McCreight
04f4e49d61
Bug 1087799, part 2 - Rename count to numWhiteNodes in nsCycleCollector::CollectWhite(). r=smaug
2014-10-24 15:06:56 -07:00
Andrew McCreight
14343f4a96
Bug 1087799, part 1 - Loosen the invariant in nsCycleCollector::FinishAnyCurrentCollection(). r=smaug
...
If an Unlink() method ends up running JS, it can cause a GC, which will make us reenter the CC,
which will not do anything because we're already in a CC. Therefore, FinishAnyCurrentCollection()
won't finish the CC. This is safe because the CC only touches things it actually holds alive via
the Root() method.
2014-10-24 15:06:55 -07:00
Andrew McCreight
cc506c4751
Bug 727965 - Trigger CC_WAITING GCs based on number of freed JS objects and zones. r=smaug
2014-10-20 10:07:52 -07:00
Nicholas Nethercote
df1c26a45e
Bug 1057912 - Privatize most of PLDHashTable's fields. r=roc.
...
--HG--
extra : rebase_source : 0f55e70b63d9c191fbd9418cb1177ff534deeed9
2014-08-25 16:56:33 -07:00
Birunthan Mohanathas
80ef08ccd8
Bug 1046841 - Fix more style violations in previously touched .cpp files in xpcom/. r=froydnj
2014-08-25 12:17:15 -07:00
Trevor Saunders
fd5e9d1fcc
bug 1047696 - mark a number of classes MOZ_FINAL to get compilers to devirtualize more r=froydnj
2014-08-05 13:33:55 -04:00
Nicholas Nethercote
a7cf4142b4
Bug 1050009 - Initialize pldhash tables with a length, not a capacity. r=roc.
...
* * *
imported patch rm-dummy-params
--HG--
extra : rebase_source : c25987eb11bae197218d5fc53b77def19afa36ac
2014-08-06 06:31:21 -07:00
Terrence Cole
3718c92afc
Bug 1047120 - PurpleBuffer doesn't actually need to use Heap<T>; r=mccr8,jonco
2014-07-31 14:43:45 -07:00
Ehsan Akhgari
520fd897ed
Bug 1045065 - Fix some bad implicit constructors in xpcom; r=froydnj
2014-07-28 13:19:06 -04:00
Jon Coppeard
c71e29bdb6
Bug 1043888 - Make GetObjetZone() work on nursery objects and rename GetGCThingZone() to GetTenuredGCThingZone() r=terrence
2014-07-28 10:39:36 +01:00
Andrew McCreight
6b5301fe94
Bug 1033654 - Rename GCGraphBuilder to CCGraphBuilder. r=smaug
2014-07-09 21:31:00 +02:00
Benoit Jacob
81effa4bca
Bug 1028588 - Fix dangerous public destructors in xpcom/ - r=bsmedberg,khuey,nfroyd
2014-06-30 18:11:53 -04:00
Andrew McCreight
330696db42
Bug 1023758, part 2 - Dead traversed objects should be treated as incremental roots and colored. r=smaug
2014-06-30 16:18:47 -07:00
Andrew McCreight
9e6d927b37
Bug 1023758, part 1 - Refactor the node scanning loop in nsCycleCollector::ScanIncrementalRoots(). r=smaug
...
This will make it easier to scan for things besides gray JS nodes. It slightly
reorders the tests we do, but it shouldn't really matter.
2014-06-30 16:18:46 -07:00