Bug 141398 - DFG call codegen should resolve the callee operand as late as possible
Summary: DFG call codegen should resolve the callee operand as late as possible
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
Depends on:
Blocks: 141332
  Show dependency treegraph
Reported: 2015-02-09 13:25 PST by Filip Pizlo
Modified: 2015-02-09 15:40 PST (History)
0 users

See Also:

the patch (4.32 KB, patch)
2015-02-09 13:28 PST, Filip Pizlo
mark.lam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2015-02-09 13:25:26 PST
This will make it easier to structure https://bugs.webkit.org/show_bug.cgi?id=141332.  I want to do this separately to make sure that there aren't any hidden gremlins in the ordering.  Intuitively, this change shouldn't affect performance, although the only hypothetical cases I can think of where codegen would be affected, this change would be a progression.  Right now in trunk we lock down the register for the callee before doing anything else, and so we might spill one of the arguments to do this.  Then we would have to refill the argument into something else.  With this change, we get at the callee last, so the argument would stay in a register.  We might spill and refill the callee in the process with this change, but in any case where such a conflict occured, then without the change we would be spilling and then filling some argument.
Comment 1 Filip Pizlo 2015-02-09 13:28:00 PST
Created attachment 246284 [details]
the patch
Comment 2 Mark Lam 2015-02-09 13:31:04 PST
Comment on attachment 246284 [details]
the patch

Comment 3 Filip Pizlo 2015-02-09 15:40:42 PST
Landed in http://trac.webkit.org/changeset/179851