Closed Bug 1672650 Opened 4 years ago Closed 4 years ago

Transpile TypeOf ICs

Categories

(Core :: JavaScript Engine: JIT, task, P2)

task

Tracking

()

RESOLVED FIXED
84 Branch
Tracking Status
firefox84 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

(Blocks 1 open bug)

Details

Attachments

(4 files)

This is a measurable speedup on some tests like the hash-map test in JetStream2.

Instead of always boxing the input, we now allow unboxed objects and use
LTypeOfO instead of LTypeOfV in that case.

This will let us transpile LoadTypeOfObjectResult more efficiently.

This is a small improvement on the hash-map test in JetStream 2 because we can
fold more MIR instructions and don't unbox to double.

Depends on D94429

Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2ab695d09f52 part 1 - Optimize MTypeOf with known-object input better. r=anba https://hg.mozilla.org/integration/autoland/rev/73b7bc28e9af part 2 - Support LoadConstantStringResult and LoadTypeOfObjectResult in the transpiler. r=anba https://hg.mozilla.org/integration/autoland/rev/e8571ec1606b part 3 - Support transpiling TypeOf CacheIR. r=anba https://hg.mozilla.org/integration/autoland/rev/0e882aaf85ab part 4 - Don't use GuardIsNumber for typeof on int32 values. r=anba
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: