Open
Bug 1742718
Opened 3 years ago
Updated 7 months ago
CacheIR: Consider splitting up ops
Categories
(Core :: JavaScript Engine: JIT, task, P3)
Core
JavaScript Engine: JIT
Tracking
()
NEW
People
(Reporter: iain, Unassigned)
References
(Blocks 1 open bug)
Details
In a patch for bug 1742594, anba added loadArgumentsObjectExistsResult. With a bit of massaging, we could replace it with something along the lines of:
GuardInt32IsNonNegative
GuardArgumentsObjectFlags
LoadArgumentsObjectLength
CompareInt32Result
If we did that, then we wouldn't need any specialized code for x in arguments in Warp; we would just use the existing implementation for those ops.
The slightly tricky part is that LoadArgumentsObjectLength currently doesn't exist; we only have LoadArgumentsObjectLengthResult, which returns the value immediately. Splitting that up into LoadArgumentsObjectLength and Int32Result is straightforward, but if we're going to do that then it seems worthwhile to survey the existing ops and see if there are any other opportunities to implement complicated CacheIR ops in terms of simpler primitives.
| Reporter | ||
Updated•3 years ago
|
Updated•7 months ago
|
Blocks: sm-opt-jits
You need to log in
before you can comment on or make changes to this bug.
Description
•