Bug 106027 - CallLinkStatus should be aware of closure calls, and the DFG bytecode parser should use that as its sole internal notion of how to optimize calls
Summary: CallLinkStatus should be aware of closure calls, and the DFG bytecode parser ...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-03 12:13 PST by Filip Pizlo
Modified: 2013-02-08 05:24 PST (History)
12 users (show)

See Also:


Attachments
the patch (24.69 KB, patch)
2013-01-03 12:15 PST, Filip Pizlo
mhahnenberg: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2013-01-03 12:13:15 PST
Patch forthcoming.
Comment 1 Filip Pizlo 2013-01-03 12:15:44 PST
Created attachment 181200 [details]
the patch
Comment 2 WebKit Review Bot 2013-01-03 12:19:36 PST
Attachment 181200 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source..." exit_code: 1
Source/JavaScriptCore/bytecode/CallLinkStatus.cpp:83:  Declaration has space between type name and & in CallLinkStatus &CallLinkStatus  [whitespace/declaration] [3]
Source/JavaScriptCore/bytecode/CallLinkStatus.h:58:  The parameter name "value" adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Mark Hahnenberg 2013-01-03 12:44:01 PST
Comment on attachment 181200 [details]
the patch

r=me
Comment 4 Mark Hahnenberg 2013-01-03 12:44:34 PST
(modulo style, of course)
Comment 5 Filip Pizlo 2013-01-03 14:06:15 PST
Landed in http://trac.webkit.org/changeset/138737
Comment 6 Ryosuke Niwa 2013-01-03 14:15:00 PST
This patch appears to have broken Windows builds:
http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/41862

>   Creating library C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\lib\JavaScriptCore.lib and object C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\lib\JavaScriptCore.exp
5>CallLinkStatus.obj : error LNK2019: unresolved external symbol "public: enum JSC::Intrinsic __thiscall JSC::ExecutableBase::intrinsic(void)const " (?intrinsic@ExecutableBase@JSC@@QBE?AW4Intrinsic@2@XZ) referenced in function "public: enum JSC::Intrinsic __thiscall JSC::ExecutableBase::intrinsicFor(enum JSC::CodeSpecializationKind)const " (?intrinsicFor@ExecutableBase@JSC@@QBE?AW4Intrinsic@2@W4CodeSpecializationKind@2@@Z)
5>C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\bin\JavaScriptCore.dll : fatal error LNK1120: 1 unresolved externals
Comment 7 Filip Pizlo 2013-01-03 14:17:27 PST
(In reply to comment #6)
> This patch appears to have broken Windows builds:
> http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/41862
> 
> >   Creating library C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\lib\JavaScriptCore.lib and object C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\lib\JavaScriptCore.exp
> 5>CallLinkStatus.obj : error LNK2019: unresolved external symbol "public: enum JSC::Intrinsic __thiscall JSC::ExecutableBase::intrinsic(void)const " (?intrinsic@ExecutableBase@JSC@@QBE?AW4Intrinsic@2@XZ) referenced in function "public: enum JSC::Intrinsic __thiscall JSC::ExecutableBase::intrinsicFor(enum JSC::CodeSpecializationKind)const " (?intrinsicFor@ExecutableBase@JSC@@QBE?AW4Intrinsic@2@W4CodeSpecializationKind@2@@Z)
> 5>C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\bin\JavaScriptCore.dll : fatal error LNK1120: 1 unresolved externals

Build fix on the way.
Comment 8 Filip Pizlo 2013-01-03 14:25:10 PST
Build fix landed in http://trac.webkit.org/changeset/138741
Comment 9 Csaba Osztrogonác 2013-02-08 05:24:33 PST
(In reply to comment #8)
> Build fix landed in http://trac.webkit.org/changeset/138741

And one more buildfix (!ENABLE_JIT case) landed in https://trac.webkit.org/changeset/141185/trunk/Source/JavaScriptCore/runtime/Executable.h