Bug 141398

Summary: DFG call codegen should resolve the callee operand as late as possible
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal    
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 141332    
Attachments:
Description Flags
the patch mark.lam: review+

Filip Pizlo
Reported 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.
Attachments
the patch (4.32 KB, patch)
2015-02-09 13:28 PST, Filip Pizlo
mark.lam: review+
Filip Pizlo
Comment 1 2015-02-09 13:28:00 PST
Created attachment 246284 [details] the patch
Mark Lam
Comment 2 2015-02-09 13:31:04 PST
Comment on attachment 246284 [details] the patch r=me
Filip Pizlo
Comment 3 2015-02-09 15:40:42 PST
Note You need to log in before you can comment on or make changes to this bug.