Closed
Bug 782358
Opened 13 years ago
Closed 12 years ago
Move interpreter argument type checks from the caller to the callee
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: jandem, Assigned: jandem)
Details
(Whiteboard: [js:t])
Attachments
(1 file)
|
16.03 KB,
patch
|
Details | Diff | Splinter Review |
Currently TypeMonitorCall is used at the call site to monitor the types of the callee's |this| and arguments. This can cause problems in two cases:
(1) When a native like array.sort calls a scripted function, we always monitor the argument types in InvokeKernel - it would be more efficient to do it in JIT code if the function is hot enough to be compiled. This helps string-tagcloud.
(2) When an interpreted function calls another function many times, the callee will be hot before the caller, so it's more efficient to have the callee do the argument type checks (since the JITs can inline them). This helps crypto-md5.
The attached WIP patch does this, passes jit-tests and wins 10% on crypto-md5 and 5% on string-tagcloud. It's just a few ms of course, but the difference between us and v8 on SS is less than 10 ms anyway..
Updated•13 years ago
|
Whiteboard: [js:t]
| Assignee | ||
Comment 1•12 years ago
|
||
Not worth it with baseline.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•