Closed Bug 1433126 (FJCVTZS) Opened 7 years ago Closed 4 years ago

Investigate using FJCVTZS in the ARM64 JIT

Categories

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

ARM64
Android
enhancement

Tracking

()

RESOLVED DUPLICATE of bug 1556571

People

(Reporter: gcp, Unassigned)

References

Details

Severity: normal → enhancement
Priority: -- → P3
An Apple developer says he plans to add support for FJCVTZS in JavaScriptCore this week: https://bugs.webkit.org/show_bug.cgi?id=184023
Hardware: ARM → ARM64
Summary: Investigate using FJCVTZS in the JIT → Investigate using FJCVTZS in the ARM64 JIT
At least plausibly we could also use this in implementing ToUnsignedInteger/ToSignedInteger in js/public/Conversions.h. We already have an ARM-specific definition for ToSignedInteger<int32_t>, and we could perhaps use it more. We could also do the same for mfbt/FloatingPoint.h's NumberIsInt32 and NumberEqualsInt32, with some care for -0 in the latter case. Making use of this instruction in any of those cases -- in code not generated at runtime -- would require some care, given we presumably want to support ARM versions that don't have this instruction. So it might not be worth it. But we should at least consider the possibility if it could be used reasonably efficiently somehow.
Alias: FJCVTZS
I'm aware of this. Our existing VIXL implementation doesn't support encoding it yet, so it will require upgrading to trunk (or backporting, but I'd rather upgrade).
Depends on: 1503407
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.