Closed Bug 1913950 Opened 3 months ago Closed 3 months ago

Add recover support for MInt64ToBigInt

Categories

(Core :: JavaScript Engine: JIT, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
131 Branch
Tracking Status
firefox131 --- fixed

People

(Reporter: anba, Assigned: anba)

References

(Blocks 1 open bug)

Details

Attachments

(3 files)

Adding recover support for MInt64ToBigInt will allow to (more reliably) omit BigInt allocations when reading from BigInt64Array (and others).

The code is based on the existing recover support for boxed values, with the
exception of INT64_CST, which is stored as two Int32Values in the constant
pool.

This is no longer needed now that MInt64ToBigInt is recoverable. We still need
to have this special case for MIonToWasmCall, because MIonToWasmCall's resume
point includes MInt64ToBigInt, but when lowering MIonToWasmCall, the safepoint
assumes all operands covered by the resume point have already been lowered, which
isn't the case for MIonToWasmCall, because MInt64ToBigInt is lowered after
MIonToWasmCall.

Blocks: sm-jits
Severity: -- → N/A
Priority: -- → P1
Pushed by andre.bargull@gmail.com: https://hg.mozilla.org/integration/autoland/rev/b8fa5fd04ff4 Part 1: Support recovering MIRType::Int64. r=spidermonkey-reviewers,iain https://hg.mozilla.org/integration/autoland/rev/ad036d0540b0 Part 2: Add recover support for MInt64ToBigInt. r=spidermonkey-reviewers,iain https://hg.mozilla.org/integration/autoland/rev/5601a4469a98 Part 3: Remove MInt64ToBigInt special case when loading from BigInt TypedArray. r=spidermonkey-reviewers,iain
Status: ASSIGNED → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → 131 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: