Closed Bug 1659724 Opened 4 years ago Closed 4 years ago

Transpile primitive conversion ops

Categories

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

task

Tracking

()

RESOLVED FIXED
82 Branch
Tracking Status
firefox82 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

(Blocks 1 open bug)

Details

Attachments

(5 files)

It would be nice to support these:

GuardAndGetIndexFromString
GuardAndGetInt32FromString
GuardAndGetNumberFromString
GuardAndGetNumberFromBoolean

GuardAndGetNumberFromBoolean is infallible, so that was renamed to BooleanToNumber.
That's consistent with BooleanToString.

Depends on D87704

This is useful for example when for-in is used to iterate over an array.

Depends on D87705

CacheIRCompiler using int32-or-double and MIR always using double makes it annoying
to share more code like in the previous patch. Hopefully we can align this more in
the future.

Depends on D87707

Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/fd13391609b8
part 1 - Rename some GuardAndGetXFromY CacheIR ops to GuardYToX. r=anba
https://hg.mozilla.org/integration/autoland/rev/a0cbc5dcadf9
part 2 - Transpile BooleanToNumber. r=anba
https://hg.mozilla.org/integration/autoland/rev/ace4a495182f
part 3 - Transpile GuardStringToIndex. r=anba
https://hg.mozilla.org/integration/autoland/rev/deebea3d7156
part 4 - Transpile GuardStringToInt32. r=anba
https://hg.mozilla.org/integration/autoland/rev/5e2e50c4fe87
part 5 - Transpile GuardStringToNumber. r=anba
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: