Open Bug 1755034 Opened 3 years ago Updated 3 years ago

List of deterministic GC reasons is out of date

Categories

(Core :: JavaScript: GC, task, P3)

task

Tracking

()

People

(Reporter: jonco, Unassigned)

References

(Blocks 1 open bug)

Details

The function IsDeterministicGCReason it seems a bit out of date:

https://searchfox.org/mozilla-central/source/js/src/gc/GC.cpp#3690-3711

CC_FORCED is used by the cycle collector to fix gray bits at the start of CC and I'm pretty sure this occurs in response to a timer and so is not determinisitic. Also the full store buffer reasons are not present and they are deterministic (edit: I guess we don't care about minor GC reasons here though).

I think the idea here is to support the fuzzers by making testcases reproduce reliably. Is this used for browser testing or only the shell? If the latter we can dispense with browser reasons entirely.

Flags: needinfo?(choller)

I don't know how this is used at all.

Fwiw, the browser uses this interface only to perform GCs:

https://searchfox.org/mozilla-central/source/dom/webidl/FuzzingFunctions.webidl

Flags: needinfo?(choller)

(In reply to Christian Holler (:decoder) from comment #2)
Ah, I thought that you had asked for this originally. Looks like it was jruderman and was added in bug 731094.

Blocks: GC
Severity: -- → N/A
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.