[Webkit-unassigned] [Bug 63505] DFG JIT lacks array.length caching

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jun 28 15:45:49 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=63505


Gavin Barraclough <barraclough at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #98973|review?                     |review-
               Flag|                            |




--- Comment #8 from Gavin Barraclough <barraclough at apple.com>  2011-06-28 15:45:48 PST ---
(From update of attachment 98973)
Hey Filip, 2 issues.

First, I'd like like to keep the JIT implementation separate from the C helper functions, so the code that performs JIT generation shouldn't be in DFGOperations - that's really what the file DFGRepatch is for.  (The stub generation could even be in a new DFGStubs file if we wished, but DFGRepatch seems right for patching the instruction stream).  Please move the new code in tryCacheGetByID out into a separate function.

Second, this patch introduces a bunch of new code to allow us to overwrite the instruction stream, which is a little messy.  I'm okay with us doing this provided that there is a benefit to doing so, but it seems like a bad idea to introduce this complexity if it's not a performance win, and I think you need to prove this.  I think you need to gather performance numbers with this patch, and I think you need to also roll a version of this optimization that just patches the offset of the branch instruction (as the old JIT does), and attach a performance comparison (you can get this by running sun spider in both forms, cat'ing the results to files, then using the sunspider-compare-results script passing the two results files as arguments).

Hope this all sounds reasonable.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list