WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
72546
De-virtualize ScriptExecutable::unlinkCalls
https://bugs.webkit.org/show_bug.cgi?id=72546
Summary
De-virtualize ScriptExecutable::unlinkCalls
Mark Hahnenberg
Reported
2011-11-16 14:17:13 PST
We'll add some extra type info to JSType to include the subclasses of ScriptExecutable and test them to determine which function to call.
Attachments
Patch
(8.45 KB, patch)
2011-11-16 14:23 PST
,
Mark Hahnenberg
ggaren
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Mark Hahnenberg
Comment 1
2011-11-16 14:23:31 PST
Created
attachment 115447
[details]
Patch
Geoffrey Garen
Comment 2
2011-11-16 15:22:33 PST
Comment on
attachment 115447
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=115447&action=review
r=me
> Source/JavaScriptCore/runtime/Executable.h:692 > + switch (structure()->typeInfo().type()) {
i'd like to understand better when we use ClassInfo and when we use a JSType. Do you have a rule for that?
> Source/JavaScriptCore/runtime/JSType.h:56 > + StaticScopeObjectType = 22,
Yeah, I really think you want to remove the explicit numeric values for these enumerated constants.
Mark Hahnenberg
Comment 3
2011-11-16 15:30:11 PST
> i'd like to understand better when we use ClassInfo and when we use a JSType. Do you have a rule for that?
I don't have a specific rule. I figured it might be easier for the compiler to optimize a switch with JSType since the values we're testing are clustered together. This patch does actually seem to be a small perf win according to bencher.
Mark Hahnenberg
Comment 4
2011-11-16 17:36:44 PST
Committed
r100537
: <
http://trac.webkit.org/changeset/100537
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug