Closed
Bug 578917
Opened 14 years ago
Closed 14 years ago
inline js_UnboxDouble
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
DUPLICATE
of bug 580534
People
(Reporter: luke, Unassigned)
References
Details
With fatvals, phi nodes, and uint64-to-double conversion, we can inline js_UnboxDouble on both 32 and 64 bit.
Reporter | ||
Comment 1•14 years ago
|
||
I was investigating fatval slowdowns on individual SS benchmarks math-cordic was one (2ms slowdown). Shark seems to indicate that this is entirely due to js_UnboxDouble. This bug should improve things.
Comment 2•14 years ago
|
||
Note that accesses to type-specific arrays, ie. arrays-of-doubles (bug 566767) don't have the js_UnboxDouble call. So this bug and that bug are both eating into the same inefficiency, but not in a complementary way.
Comment 3•14 years ago
|
||
There are two ways to fix this. Not doing d2i would allow us to not emit a call for UnboxDouble (which we currently need to detect it and turn it into UnboxInt32 where needed). Nick owns a bug on that, but it seems hard. Another approach would be to finish the call inlining patch and inline with that: https://bugzilla.mozilla.org/show_bug.cgi?id=522593
Reporter | ||
Comment 4•14 years ago
|
||
(In reply to comment #3) > There are two ways to fix this. Not doing d2i would allow us to not emit a call > for UnboxDouble (which we currently need to detect it and turn it into > UnboxInt32 where needed). Nick owns a bug on that, but it seems hard. I'm not sure which approach you are referring to, but all I want to do is: 1. generate the little diamond graph to unbox the double, using a phi node 2. replace the places where we ask "is it a js_UnboxDouble" with a structural match on the diamond generated in (1)
Updated•14 years ago
|
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•