[meta] Implement proper GC support for wasm

RESOLVED FIXED

Status

()

enhancement
P2
normal
RESOLVED FIXED
a year ago
5 months ago

People

(Reporter: bbouvier, Unassigned)

Tracking

({meta})

unspecified
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox62 fix-optional)

Details

We made a hack that disables GCs while wasm is running, but this lead to a flurry of fuzz bugs because many places in the engine check that GC can happen (either explicitly through `!suppressedGC` or implicitly after a check that an incremental GC has actually happened, for instance). At some point we should implement proper GC support.

At this point, we need stack maps at the following locations:
- before a call (direct or indirect, internal or external; except for leaf functions)
- before an interrupt check (which could trigger an urgent GC)
- before a memory allocation (when we implement gc.new in wasm)
- (other places I can't think of right now)
Reporter

Updated

a year ago
Blocks: 1458217
Reporter

Updated

a year ago
Blocks: 1459633
Priority: -- → P2
Reporter

Updated

a year ago
Blocks: 1462335
Reporter

Updated

a year ago
Blocks: 1462333

Updated

11 months ago
Component: JavaScript Engine: JIT → Javascript: Web Assembly

Updated

9 months ago
Blocks: 1487329

Updated

9 months ago
Depends on: 1476251

Updated

9 months ago
Depends on: 1488162

Updated

9 months ago
Summary: wasm: Implement actual GC support in wasm → [meta] Implement proper GC support for wasm

Updated

9 months ago
Blocks: 1488205

Updated

9 months ago
No longer blocks: 1487329
All those hacks were just removed.
Status: NEW → RESOLVED
Last Resolved: 5 months ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.