Simplify ShouldMark predicate a little
Categories
(Core :: JavaScript: GC, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox86 | --- | fixed |
People
(Reporter: jonco, Assigned: jonco)
Details
Attachments
(1 file)
This is currently implemented using separate overloaded functions for different GC thing types. This is unnecessary and we can replace it with a single templated function.
Assignee | ||
Comment 1•3 years ago
|
||
isTenured is implemented on both Cell and TenuredCell, so if T is not nursery
allocatable the check will be skipped. This allows us to use a single template
function for ShouldMark. I updated a couple of other uses of IsInsideNursery
too.
Depends on D101357
Pushed by jcoppeard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bbc59e848889 Use T::isTenured() rather than IsInsideNursery to simplify ShouldMark r=sfink
Comment 3•3 years ago
|
||
Backed out 2 changesets (bug 1686020, bug 1686021) for sm rootanalysis getting out of memory.
Backout link: https://hg.mozilla.org/integration/autoland/rev/174f04320dc892b8d76b43a07c0141c2e083f12e
Failure log: https://treeherder.mozilla.org/logviewer?job_id=326379071&repo=autoland&lineNumber=45771
...
[task 2021-01-11T17:22:38.104Z] TEST-PASS | js/src/jit-test/tests/xdr/trivial.js | Success (code 0, args "--ion-eager --ion-offthread-compile=off --ion-check-range-analysis --ion-extra-checks --no-sse3 --no-threads") [0.2 s]
[task 2021-01-11T17:22:38.104Z] PASSED ALL
[task 2021-01-11T17:22:38.104Z] Result summary:
[task 2021-01-11T17:22:38.104Z] Passed: 41358
[task 2021-01-11T17:22:38.104Z] Failed: 0
[task 2021-01-11T17:22:38.135Z] make[1]: Leaving directory '/builds/worker/workspace/obj-spider/js/src'
[task 2021-01-11T17:22:38.136Z] in directory /builds/worker/workspace/obj-spider, running ['setarch', 'x86_64', '-R', '/builds/worker/workspace/obj-spider/dist/bin/jsapi-tests']
[task 2021-01-11T17:22:40.322Z] /builds/worker/checkouts/gecko/js/src/jsapi-tests/testGCOutOfMemory.cpp:54:(function() { var array = []; for (var i = max >> 2; i != 0;) { --i; array.push({}); }})(); -- out of memory
[task 2021-01-11T17:22:41.784Z] testIntlAvailableLocales
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testIntlAvailableLocales | ok
[task 2021-01-11T17:22:41.784Z] testPinAcrossGC
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testPinAcrossGC | ok
[task 2021-01-11T17:22:41.784Z] testAtomizedIsNotPinned
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testAtomizedIsNotPinned | ok
[task 2021-01-11T17:22:41.784Z] testIntString_bug515273
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testIntString_bug515273 | ok
[task 2021-01-11T17:22:41.784Z] testInformalValueTypeName
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testInformalValueTypeName | ok
[task 2021-01-11T17:22:41.784Z] testStringToPropertyName
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testStringToPropertyName | ok
[task 2021-01-11T17:22:41.784Z] testStringIsIndex
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testStringIsIndex | ok
[task 2021-01-11T17:22:41.784Z] testIndexToString
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testIndexToString | ok
[task 2021-01-11T17:22:41.784Z] testOrderedHashSetWithoutInit
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testOrderedHashSetWithoutInit | ok
[task 2021-01-11T17:22:41.784Z] testHashLazyStorage
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testHashLazyStorage | ok
[task 2021-01-11T17:22:41.784Z] testHashTableMovableModIterator
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testHashTableMovableModIterator | ok
[task 2021-01-11T17:22:41.784Z] testHashMapGrowOOM
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testHashMapGrowOOM | ok
[task 2021-01-11T17:22:41.784Z] testHashSetOfMoveOnlyType
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testHashSetOfMoveOnlyType | ok
[task 2021-01-11T17:22:41.784Z] testHashRekeyManualRemoval
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testHashRekeyManualRemoval | ok
[task 2021-01-11T17:22:41.784Z] testHashRekeyManual
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testHashRekeyManual | ok
[task 2021-01-11T17:22:41.784Z] test_GetPropertyDescriptor
[task 2021-01-11T17:22:41.784Z] TEST-PASS | test_GetPropertyDescriptor | ok
[task 2021-01-11T17:22:41.784Z] testIncrementalWeakCacheSweeping
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testIncrementalWeakCacheSweeping | ok
[task 2021-01-11T17:22:41.784Z] testWeakCacheGCVector
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testWeakCacheGCVector | ok
[task 2021-01-11T17:22:41.784Z] testWeakCacheMap
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testWeakCacheMap | ok
[task 2021-01-11T17:22:41.784Z] testWeakCacheSet
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testWeakCacheSet | ok
[task 2021-01-11T17:22:41.784Z] testGCUID
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testGCUID | ok
[task 2021-01-11T17:22:41.784Z] testGCStoreBufferRemoval
[task 2021-01-11T17:22:41.784Z] TEST-PASS | testGCStoreBufferRemoval | ok
[task 2021-01-11T17:22:41.784Z] testGCOutOfMemory
[task 2021-01-11T17:22:41.784Z] TEST-UNEXPECTED-FAIL | testGCOutOfMemory | /builds/worker/checkouts/gecko/js/src/jsapi-tests/testGCOutOfMemory.cpp:54:(function() { var array = []; for (var i = max >> 2; i != 0;) { --i; array.push({}); }})(); -- out of memory
[task 2021-01-11T17:22:41.785Z] testIncrementalRoots
[task 2021-01-11T17:22:41.785Z] TEST-PASS | testIncrementalRoots | ok
...
Pushed by jcoppeard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fa83b32c51b5 Use T::isTenured() rather than IsInsideNursery to simplify ShouldMark r=sfink
Assignee | ||
Comment 5•3 years ago
|
||
The test failure was caused by the patch in bug 1686020 which landed at the same time.
Comment 6•3 years ago
|
||
bugherder |
Description
•