Bug 31383 - [V8] De-inline lots of V8Bindings functions to save 450k of code
Summary: [V8] De-inline lots of V8Bindings functions to save 450k of code
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P3 Enhancement
Assignee: Jens Alfke
URL:
Keywords:
Depends on:
Blocks: 31217
  Show dependency treegraph
 
Reported: 2009-11-11 15:43 PST by Jens Alfke
Modified: 2009-11-12 16:25 PST (History)
0 users

See Also:


Attachments
patch (25.73 KB, patch)
2009-11-11 16:03 PST, Jens Alfke
dglazkov: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jens Alfke 2009-11-11 15:43:22 PST
De-inlining a bunch of V8Bindings' utility functions that are used ubiquitously by the generated V8 bindings, saves about 450k of code.
For the most part these simply had their bodies moved intact from the .h to the .cpp file, but I added a few small speed optimizations after looking at Shark profile data, e.g. in v8ExternalString.

This includes:
v8DOMWrapperToNative
v8ValueToWebCoreString
v8ValueToAtomicWebCoreString
toInt32
toWebCoreString
toWebCoreStringWithNullCheck
toAtomicWebCoreStringWithNullCheck
toWebCoreStringWithNullOrUndefinedCheck
isUndefinedOrNull
v8Boolean
v8UndetectableString
v8StringOrNull
v8StringOrUndefined
v8StringOrFalse
v8StringToWebCoreString
v8ExternalString

And a new function:
createRawTemplate
Comment 1 Jens Alfke 2009-11-11 16:03:04 PST
Created attachment 43017 [details]
patch
Comment 2 Jens Alfke 2009-11-11 16:11:38 PST
Committed revision 50846.