The DFG graph has the ability to store predictions about program statements and variables. It can even merge multiple different predictions; for example if one data point indicates that something is likely integer and another data point indicates that it is likely double, then the graph is smart enough to mark the prediction as "numeric", which indicates that can be either int or double but probably not anything else. But what the graph cannot do is deal with a combination of dynamic and static predictions. A dynamic prediction should always take precedence over a static one. But if for some reason no dynamic prediction can be made (for example because we have not yet seen the relevant statement(s) execute) then a static prediction is probably better than no prediction. The DFG graph should have a mechanism for tracking where a prediction came from (static guess or dynamic profiling) and be able to merge static predictions with dynamic ones, so that a dynamic prediction always takes precedence.
Created attachment 105865 [details] the patch
Attachment 105865 [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/DFGNode.h:479: Should have only a single space after a punctuation in a comment. [whitespace/comments] [5] Total errors found: 1 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 105867 [details] the patch - fix style
Comment on attachment 105867 [details] the patch - fix style Tests pass.
Comment on attachment 105867 [details] the patch - fix style Clearing flags on attachment: 105867 Committed r94449: <http://trac.webkit.org/changeset/94449>
All reviewed patches have been landed. Closing bug.