Bug 21732 - improve performance by eliminating JSValue as a base class for JSCell
: improve performance by eliminating JSValue as a base class for JSCell
Status: RESOLVED FIXED
: WebKit
JavaScriptCore
: 528+ (Nightly build)
: Macintosh Mac OS X 10.5
: P2 Normal
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2008-10-18 11:47 PST by
Modified: 2008-10-20 00:30 PST (History)


Attachments
patch for step 1 (222.27 KB, patch)
2008-10-18 15:48 PST, Darin Adler
no flags Review Patch | Details | Formatted Diff | Diff
patch for step 2 (729.17 KB, patch)
2008-10-18 16:43 PST, Darin Adler
no flags Review Patch | Details | Formatted Diff | Diff
patch for step 3 (120.67 KB, patch)
2008-10-18 23:04 PST, Darin Adler
no flags Review Patch | Details | Formatted Diff | Diff
patch for step 4 (67.05 KB, patch)
2008-10-19 17:19 PST, Darin Adler
no flags Review Patch | Details | Formatted Diff | Diff
patch for step 5 (28.11 KB, patch)
2008-10-19 22:51 PST, Darin Adler
no flags Review Patch | Details | Formatted Diff | Diff
patch (last part) (7.71 KB, patch)
2008-10-19 23:43 PST, Darin Adler
zwarich: review+
Review Patch | Details | Formatted Diff | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2008-10-18 11:47:39 PST
Looking at profiles I realized that it would speed up both creation and destruction of JSCell and all classes derived from it if we don't have JSValue as a base class. I can do this by replacing JSValue* with JSValue and making it hold a pointer rather than being a pointer. I'll do this in a few separate steps.
------- Comment #1 From 2008-10-18 15:48:06 PST -------
Created an attachment (id=24491) [details]
patch for step 1
------- Comment #2 From 2008-10-18 16:06:29 PST -------
(From update of attachment 24491 [details])
r=me
------- Comment #3 From 2008-10-18 16:42:24 PST -------
(From update of attachment 24491 [details])
Landed as http://trac.webkit.org/changeset/37681
------- Comment #4 From 2008-10-18 16:43:25 PST -------
Created an attachment (id=24492) [details]
patch for step 2
------- Comment #5 From 2008-10-18 16:50:08 PST -------
(From update of attachment 24492 [details])
r=me
------- Comment #6 From 2008-10-18 18:53:20 PST -------
(From update of attachment 24492 [details])
Landed as http://trac.webkit.org/changeset/37684
------- Comment #7 From 2008-10-18 23:04:04 PST -------
Created an attachment (id=24500) [details]
patch for step 3
------- Comment #8 From 2008-10-18 23:18:09 PST -------
(From update of attachment 24500 [details])
r=me
------- Comment #9 From 2008-10-19 10:00:23 PST -------
(From update of attachment 24500 [details])
Landed as http://trac.webkit.org/changeset/37705
------- Comment #10 From 2008-10-19 17:19:10 PST -------
Created an attachment (id=24515) [details]
patch for step 4
------- Comment #11 From 2008-10-19 17:29:52 PST -------
(From update of attachment 24515 [details])
Landed as http://trac.webkit.org/changeset/37706
------- Comment #12 From 2008-10-19 22:51:51 PST -------
Created an attachment (id=24516) [details]
patch for step 5
------- Comment #13 From 2008-10-19 22:55:41 PST -------
(From update of attachment 24516 [details])
r=me if performance is fine.
------- Comment #14 From 2008-10-19 22:58:43 PST -------
(From update of attachment 24516 [details])
Landed as http://trac.webkit.org/changeset/37712
------- Comment #15 From 2008-10-19 23:43:14 PST -------
Created an attachment (id=24517) [details]
patch (last part)
------- Comment #16 From 2008-10-19 23:46:16 PST -------
(From update of attachment 24517 [details])
r=me
------- Comment #17 From 2008-10-20 00:30:16 PST -------
http://trac.webkit.org/changeset/37714