Bug 1254108 - Remove incorrect assertion about heap size r=terrence

This commit is contained in:
Jon Coppeard 2016-03-15 11:16:13 +00:00
Родитель 20196ad4ea
Коммит 083cea5e81
3 изменённых файлов: 9 добавлений и 3 удалений

Просмотреть файл

@ -0,0 +1,4 @@
function testChangeParam(key) {
gcparam(key, 0x22222222);
}
testChangeParam("lowFrequencyHeapGrowth");

Просмотреть файл

@ -1475,6 +1475,7 @@ JS_UpdateWeakPointerAfterGCUnbarriered(JSObject** objp)
JS_PUBLIC_API(void)
JS_SetGCParameter(JSRuntime* rt, JSGCParamKey key, uint32_t value)
{
rt->gc.waitBackgroundSweepEnd();
AutoLockGC lock(rt);
MOZ_ALWAYS_TRUE(rt->gc.setParameter(key, value, lock));
}

Просмотреть файл

@ -1919,12 +1919,13 @@ void
ZoneHeapThreshold::updateForRemovedArena(const GCSchedulingTunables& tunables)
{
size_t amount = ArenaSize * gcHeapGrowthFactor_;
MOZ_ASSERT(amount > 0);
MOZ_ASSERT(gcTriggerBytes_ >= amount);
if (gcTriggerBytes_ - amount < tunables.gcZoneAllocThresholdBase() * gcHeapGrowthFactor_)
if ((gcTriggerBytes_ < amount) ||
(gcTriggerBytes_ - amount < tunables.gcZoneAllocThresholdBase() * gcHeapGrowthFactor_))
{
return;
}
gcTriggerBytes_ -= amount;
}