Closed
Bug 1653246
Opened 4 years ago
Closed 4 years ago
Optimize DataView get/set methods in CacheIR and Warp
Categories
(Core :: JavaScript Engine: JIT, enhancement, P1)
Core
JavaScript Engine: JIT
Tracking
()
RESOLVED
FIXED
81 Branch
Tracking | Status | |
---|---|---|
firefox81 | --- | fixed |
People
(Reporter: jandem, Assigned: jandem)
References
(Blocks 1 open bug)
Details
Attachments
(6 files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
anba added Ion optimizations for this in bug 1065894. I started looking into porting the get* methods to CacheIR and it seems doable.
Updated•4 years ago
|
Severity: normal → N/A
Type: task → enhancement
Priority: -- → P1
Assignee | ||
Comment 1•4 years ago
|
||
Some refactoring to move the bounds check out of getDataPointer into the
callers (read and write). This seems a bit more natural and this way
getDataPointer is infallible (can assert offset is in bounds), doesn't need
the cx argument, and can be non-static.
This also factors out an infallible DataViewObject::read method, it will be used
in the next patch.
Assignee | ||
Comment 2•4 years ago
|
||
Depends on D83904
Assignee | ||
Comment 3•4 years ago
|
||
Depends on D83905
Assignee | ||
Comment 4•4 years ago
|
||
Depends on D83906
Assignee | ||
Updated•4 years ago
|
Keywords: leave-open
Assignee | ||
Comment 5•4 years ago
|
||
Pretty similar to the last patch. The register situation on 32-bit x86 complicates
this a bit unfortunately.
Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c41eb4ac1688
part 1 - Add offsetIsInBounds and infallible read methods to DataViewObject. r=anba
https://hg.mozilla.org/integration/autoland/rev/f38994f1ae8c
part 2 - Add a helper method for Uint32 to Int32Value/DoubleValue. r=anba
https://hg.mozilla.org/integration/autoland/rev/750770bf3191
part 3 - Add GuardClassKind::DataView. r=anba
https://hg.mozilla.org/integration/autoland/rev/4410c368a84a
part 4 - Optimize DataView get* methods in CacheIR. r=anba
Comment 7•4 years ago
|
||
bugherder |
Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/79a8c6e09dbf
part 5 - Optimize DataView set* methods in CacheIR. r=anba
Comment 9•4 years ago
|
||
bugherder |
Assignee | ||
Comment 10•4 years ago
|
||
Assignee | ||
Updated•4 years ago
|
Keywords: leave-open
Comment 11•4 years ago
|
||
Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/11c2cba699e4
part 6 - Transpile DataView instructions. r=anba
Comment 12•4 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
status-firefox81:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 81 Branch
You need to log in
before you can comment on or make changes to this bug.
Description
•