Bug 91337 - DFG PutById transition should handle storage allocation, and inline it
Summary: DFG PutById transition should handle storage allocation, and inline it
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: 2012-07-15 00:06 PDT by Filip Pizlo
Modified: 2012-07-16 15:18 PDT (History)
8 users (show)

See Also:


Attachments
work in progress (25.86 KB, patch)
2012-07-15 00:12 PDT, Filip Pizlo
no flags Details | Formatted Diff | Diff
more! (46.41 KB, patch)
2012-07-15 15:33 PDT, Filip Pizlo
no flags Details | Formatted Diff | Diff
it's starting to work (56.63 KB, patch)
2012-07-15 17:59 PDT, Filip Pizlo
no flags Details | Formatted Diff | Diff
the patch (65.78 KB, patch)
2012-07-15 23:57 PDT, Filip Pizlo
no flags Details | Formatted Diff | Diff
the patch (65.81 KB, patch)
2012-07-16 00:07 PDT, Filip Pizlo
buildbot: commit-queue-
Details | Formatted Diff | Diff
the patch (65.92 KB, patch)
2012-07-16 12:01 PDT, Filip Pizlo
oliver: 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 2012-07-15 00:06:21 PDT
Work in progress patch forthcoming.
Comment 1 Filip Pizlo 2012-07-15 00:12:12 PDT
Created attachment 152452 [details]
work in progress
Comment 2 Filip Pizlo 2012-07-15 15:33:30 PDT
Created attachment 152465 [details]
more!

Most likely doesn't compile at this point.  The scaffolding is mostly done.  Now it's time to actually write the fast paths.
Comment 3 Filip Pizlo 2012-07-15 17:59:03 PDT
Created attachment 152467 [details]
it's starting to work

It works for very simple programs.  Haven't tried the bigger ones yet.
Comment 4 Filip Pizlo 2012-07-15 23:57:27 PDT
Created attachment 152487 [details]
the patch
Comment 5 WebKit Review Bot 2012-07-16 00:01:45 PDT
Attachment 152487 [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/dfg/DFGGPRInfo.h:33:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/dfg/DFGRegisterSet.h:33:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 2 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 6 Filip Pizlo 2012-07-16 00:07:39 PDT
Created attachment 152489 [details]
the patch

Fixed style issues.
Comment 7 Build Bot 2012-07-16 00:30:32 PDT
Comment on attachment 152489 [details]
the patch

Attachment 152489 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/13253196
Comment 8 Early Warning System Bot 2012-07-16 00:32:19 PDT
Comment on attachment 152489 [details]
the patch

Attachment 152489 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13253198
Comment 9 Early Warning System Bot 2012-07-16 00:37:48 PDT
Comment on attachment 152489 [details]
the patch

Attachment 152489 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/13238862
Comment 10 Filip Pizlo 2012-07-16 12:01:52 PDT
Created attachment 152580 [details]
the patch

Fix build on gcc.
Comment 11 Filip Pizlo 2012-07-16 15:08:44 PDT
Landed in http://trac.webkit.org/changeset/122768
Comment 12 Ryosuke Niwa 2012-07-16 15:12:39 PDT
This patch broke builds:
http://build.webkit.org/builders/Apple%20SnowLeopard%20Debug%20%28Build%29/builds/1455/steps/compile-webkit/logs/stdio
In file included from /Volumes/Data/slave/snowleopard-debug/build/Source/JavaScriptCore/bytecode/CodeBlock.h:65:
In file included from /Volumes/Data/slave/snowleopard-debug/build/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
/Volumes/Data/slave/snowleopard-debug/build/Source/JavaScriptCore/bytecode/StructureStubInfo.h:34:10: fatal error: 'DFGRegisterSet.h' file not found [2]
 #include "DFGRegisterSet.h"
          ^
1 error generated.
Comment 13 Ryosuke Niwa 2012-07-16 15:13:21 PDT
Qt
http://build.webkit.org/builders/Qt%20Windows%2032-bit%20Debug/builds/46297/steps/compile-webkit/logs/stdio
In file included from /home/webkitbuildbot/slaves/windowsCrossDebug/buildslave/qt-windows-32bit-debug/build/Source/JavaScriptCore/bytecode/CodeBlock.h:65:0,
                 from /home/webkitbuildbot/slaves/windowsCrossDebug/buildslave/qt-windows-32bit-debug/build/Source/JavaScriptCore/API/JSCallbackFunction.cpp:31:
/home/webkitbuildbot/slaves/windowsCrossDebug/buildslave/qt-windows-32bit-debug/build/Source/JavaScriptCore/bytecode/StructureStubInfo.h:34:28: fatal error: DFGRegisterSet.h: No such file or directory
compilation terminated.

GTK:
http://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release/builds/26527/steps/compile-webkit/logs/stdio

make: *** No rule to make target `Source/JavaScriptCore/dfg/DFGRegisterSet.h', needed by `DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h'.  Stop.
Comment 14 Ryosuke Niwa 2012-07-16 15:14:19 PDT
It appears that you forgot svn add DFGRegisterSet.h and DFGScratchRegisterAllocator.h?
Comment 15 Filip Pizlo 2012-07-16 15:18:01 PDT
Added forgotten files in http://trac.webkit.org/changeset/122771