Closed Bug 1688910 Opened 5 years ago Closed 5 years ago

Replace direct use of barrier tracer with calls to barrier functions

Categories

(Core :: JavaScript: GC, task)

task

Tracking

()

RESOLVED FIXED
87 Branch
Tracking Status
firefox87 --- fixed

People

(Reporter: jonco, Assigned: jonco)

Details

Attachments

(2 files)

There are a few places where we perform barriers using the barrier tracer directly (e.g. calling TraceEdge or traceChildren methods with it as an argument) rather than calling one of the barrier functions.

This has two problems:

  • it has to dispatch on the tracer kind even though it's known in advance
  • it skips the assertions in the barrier functions

This adds an API for the case where we need to barrier all the edges out of a structure. This reduces direct usage of the barrier tracer and adds the assertions that are present in calls to the barrier functions.

Assignee: nobody → jcoppeard
Status: NEW → ASSIGNED

This avoids dispatching on the known tracer kind.

Depends on D103054

Pushed by jcoppeard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/cc6967c473c6 Add an API for performing write barriers on structures that have GC thing children r=jandem https://hg.mozilla.org/integration/autoland/rev/d884487b2661 Call barrier functions rather than using barrier tracer for JIT barriers r=jandem
Pushed by jcoppeard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1ff5310b9fa0 Add an API for performing write barriers on structures that have GC thing children r=jandem https://hg.mozilla.org/integration/autoland/rev/68057585ebe7 Call barrier functions rather than using barrier tracer for JIT barriers r=jandem
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 87 Branch
Flags: needinfo?(jcoppeard)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: