Bug 25210 - don't use ObjC methods to wrap/unwrap DOM objects with ObjC
Summary: don't use ObjC methods to wrap/unwrap DOM objects with ObjC
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit API (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Darin Adler
URL:
Keywords:
Depends on:
Blocks: 25266
  Show dependency treegraph
 
Reported: 2009-04-15 09:57 PDT by Darin Adler
Modified: 2009-05-04 12:55 PDT (History)
5 users (show)

See Also:


Attachments
some work in progress (3.05 KB, patch)
2009-04-15 09:59 PDT, Darin Adler
no flags Details | Formatted Diff | Diff
more work in progress (162.16 KB, patch)
2009-04-16 17:43 PDT, Darin Adler
no flags Details | Formatted Diff | Diff
patch (166.95 KB, patch)
2009-04-17 06:00 PDT, Darin Adler
no flags Details | Formatted Diff | Diff
patch with path in Xcode project file fixed (166.91 KB, patch)
2009-04-17 10:11 PDT, Darin Adler
koivisto: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Darin Adler 2009-04-15 09:57:30 PDT
ObjC methods have considerable cost both at load and runtime (long method names due to long C++ argument types). We can wrap and unwrap with functions instead.
Comment 1 Darin Adler 2009-04-15 09:59:33 PDT
Created attachment 29501 [details]
some work in progress
Comment 2 Darin Adler 2009-04-16 17:43:01 PDT
Created attachment 29565 [details]
more work in progress
Comment 3 Darin Adler 2009-04-17 06:00:28 PDT
Created attachment 29574 [details]
patch
Comment 4 Greg Bolsinga 2009-04-17 09:03:32 PDT
Cool. What does size -m say for the WebCore and WebKit binary's cstring section before and after this change?
Comment 5 Darin Adler 2009-04-17 10:05:11 PDT
(In reply to comment #4)
> Cool. What does size -m say for the WebCore and WebKit binary's cstring section
> before and after this change?

WebCore’s cstring section got 77% smaller. Down from 753,076 bytes to 176,328 bytes.
WebKit’s cstring section stayed essentially the same size (down by about 0.14%).

I assume that more work on bug 25266 would address the problem further and make the cstring sections even smaller.
Comment 6 Darin Adler 2009-04-17 10:11:57 PDT
Created attachment 29582 [details]
patch with path in Xcode project file fixed
Comment 7 Greg Bolsinga 2009-04-17 10:19:49 PDT
This is very good news! Thanks!
Comment 8 Antti Koivisto 2009-04-17 10:36:01 PDT
Comment on attachment 29582 [details]
patch with path in Xcode project file fixed

r=me, nice!
Comment 9 Darin Adler 2009-04-17 12:23:12 PDT
http://trac.webkit.org/changeset/42618