Open
Bug 1887052
Opened 1 year ago
Updated 11 months ago
Avoid checking for i31ref in pre/post write barriers if the stored ValType does not contain it
Categories
(Core :: JavaScript: WebAssembly, enhancement, P3)
Core
JavaScript: WebAssembly
Tracking
()
NEW
People
(Reporter: rhunt, Unassigned)
References
(Blocks 1 open bug)
Details
EmitWasmPreBarrierGuard and EmitWasmPostBarrierGuard both eventually call branchWasmAnyRefIsGCThing which performs a check to see if the value is an i31ref or not. If we're performing a store to a structref or (ref null 0) field, this check should always fail as those fields cannot contain i31ref. Tracking this type information would help us eliminate this.
Another alternative would be to find a way to optimize branchWasmAnyRefIsGCThing so that the i31ref check is folded into the 'is GC thing' check somehow.
| Reporter | ||
Updated•1 year ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•