Bug 21296
Summary: | Remove profiling hooks when not profiling | ||
---|---|---|---|
Product: | WebKit | Reporter: | Cameron Zwarich (cpst) <zwarich> |
Component: | JavaScriptCore | Assignee: | Geoffrey Garen <ggaren> |
Status: | RESOLVED DUPLICATE | ||
Severity: | Normal | ||
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | All | ||
OS: | All | ||
Bug Depends on: | |||
Bug Blocks: | 20812 |
Cameron Zwarich (cpst)
We currently always emit profiling hooks, even when we are not profiling. This adds unnecessary branches to function calls and returns. The solution is to regenerate code when profiling is enabled.
Geoff has already done some preliminary work in this direction in bug 21281.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Cameron Zwarich (cpst)
Removing all branches (both the profiling branch and the activation / 'arguments' branch) from op_ret is at least a 4.3% speedup on Richards and a 1.0% speedup on DeltaBlue.
Cameron Zwarich (cpst)
*** This bug has been marked as a duplicate of 21735 ***