diff options
Diffstat (limited to 'js/src/jit-test/tests/gc/gcparam.js')
-rw-r--r-- | js/src/jit-test/tests/gc/gcparam.js | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/gc/gcparam.js b/js/src/jit-test/tests/gc/gcparam.js new file mode 100644 index 0000000000..a1584fc39b --- /dev/null +++ b/js/src/jit-test/tests/gc/gcparam.js @@ -0,0 +1,64 @@ +gczeal(0); + +function testGetParam(key) { + gcparam(key); +} + +function testChangeParam(key, diff) { + if (!diff) { + diff = 1; + } + + let prev = gcparam(key); + + let newValue = prev > 0 ? prev - diff : prev + diff; + gcparam(key, newValue); + assertEq(gcparam(key), newValue); + + gcparam(key, prev); + assertEq(gcparam(key), prev); +} + +testGetParam("gcBytes"); +testGetParam("gcNumber"); +testGetParam("unusedChunks"); +testGetParam("totalChunks"); +testGetParam("nurseryBytes"); +testGetParam("majorGCNumber"); +testGetParam("minorGCNumber"); +testGetParam("chunkBytes"); +testGetParam("helperThreadCount"); + +testChangeParam("maxBytes"); +testChangeParam("minNurseryBytes", 16 * 1024); +testChangeParam("maxNurseryBytes", 1024 * 1024); +testChangeParam("incrementalGCEnabled"); +testChangeParam("perZoneGCEnabled"); +testChangeParam("sliceTimeBudgetMS"); +testChangeParam("highFrequencyTimeLimit"); +testChangeParam("smallHeapSizeMax"); +testChangeParam("largeHeapSizeMin"); +testChangeParam("highFrequencySmallHeapGrowth"); +testChangeParam("highFrequencyLargeHeapGrowth"); +testChangeParam("lowFrequencyHeapGrowth"); +testChangeParam("balancedHeapLimitsEnabled"); +testChangeParam("heapGrowthFactor"); +testChangeParam("allocationThreshold"); +testChangeParam("smallHeapIncrementalLimit"); +testChangeParam("largeHeapIncrementalLimit"); +testChangeParam("minEmptyChunkCount"); +testChangeParam("maxEmptyChunkCount"); +testChangeParam("compactingEnabled"); +testChangeParam("parallelMarkingEnabled"); +testChangeParam("parallelMarkingThresholdKB"); +testChangeParam("minLastDitchGCPeriod"); +testChangeParam("nurseryFreeThresholdForIdleCollection"); +testChangeParam("nurseryFreeThresholdForIdleCollectionPercent"); +testChangeParam("nurseryTimeoutForIdleCollectionMS"); +testChangeParam("pretenureThreshold"); +testChangeParam("zoneAllocDelayKB"); +testChangeParam("mallocThresholdBase"); +testChangeParam("urgentThreshold"); +testChangeParam("nurseryTimeoutForIdleCollectionMS"); +testChangeParam("helperThreadRatio"); +testChangeParam("maxHelperThreads"); |