WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
148895
baseline JIT should emit better code for UnresolvedProperty in resolve_scope/get_from_scope/put_to_scope
https://bugs.webkit.org/show_bug.cgi?id=148895
Summary
baseline JIT should emit better code for UnresolvedProperty in resolve_scope/...
Saam Barati
Reported
2015-09-05 00:54:54 PDT
Specifically: We should emit code that checks the current resolve type of the instruction stream. The first execution of a UnresolvedProperty will call into the slow path, then, the slow path will do its best to update the ResolveType from UnresolvedProperty to GlobalProperty/GlobalLexicalVar. The current baseline implementation will always go to the slow path, where it will transition the ResolveType to something more useful, but then, the executing code will still always take the slow path because it never checks for the updated ResolveType. The updated ResolveType will only ever get noticed when DFG compiling. Instead, the baseline code we emit should check for updated ResolveTypes, and if it finds that the ResolveType was updated, it can prevent going down the slow path and execute the code it normally would. This is greatly beneficial because the slow path will update the ResolveType with high probability.
Attachments
patch
(25.79 KB, patch)
2015-09-05 02:34 PDT
,
Saam Barati
no flags
Details
Formatted Diff
Diff
patch
(48.87 KB, patch)
2015-09-05 14:46 PDT
,
Saam Barati
no flags
Details
Formatted Diff
Diff
patch
(48.89 KB, patch)
2015-09-05 15:03 PDT
,
Saam Barati
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Saam Barati
Comment 1
2015-09-05 02:34:33 PDT
Created
attachment 260682
[details]
patch Almost done, just needs 32-bit.
Saam Barati
Comment 2
2015-09-05 14:46:24 PDT
Created
attachment 260700
[details]
patch
WebKit Commit Bot
Comment 3
2015-09-05 14:47:09 PDT
Attachment 260700
[details]
did not pass style-queue: ERROR: Source/JavaScriptCore/jit/JITPropertyAccess.cpp:693: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess.cpp:819: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess.cpp:964: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:723: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:852: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:998: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 6 in 9 files If any of these errors are false positives, please file a bug against check-webkit-style.
Saam Barati
Comment 4
2015-09-05 15:03:47 PDT
Created
attachment 260701
[details]
patch
WebKit Commit Bot
Comment 5
2015-09-05 15:06:19 PDT
Attachment 260701
[details]
did not pass style-queue: ERROR: Source/JavaScriptCore/jit/JITPropertyAccess.cpp:693: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess.cpp:819: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess.cpp:964: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:723: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:852: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:998: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 6 in 9 files If any of these errors are false positives, please file a bug against check-webkit-style.
Geoffrey Garen
Comment 6
2015-09-08 11:10:53 PDT
Comment on
attachment 260701
[details]
patch r=me
WebKit Commit Bot
Comment 7
2015-09-08 12:11:14 PDT
Comment on
attachment 260701
[details]
patch Clearing flags on attachment: 260701 Committed
r189501
: <
http://trac.webkit.org/changeset/189501
>
WebKit Commit Bot
Comment 8
2015-09-08 12:11:19 PDT
All reviewed patches have been landed. Closing bug.
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