Patch forthcoming.
Created attachment 204777 [details] the patch
Attachment 204777 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp', u'Source/JavaScriptCore/runtime/JSCJSValue.h', u'Source/JavaScriptCore/runtime/JSCJSValueInlines.h']" exit_code: 1 Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp:313: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp:320: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp:327: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Total errors found: 3 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 204777 [details] the patch Attachment 204777 [details] did not pass efl-ews (efl): Output: http://webkit-queues.appspot.com/results/922198
Comment on attachment 204777 [details] the patch Attachment 204777 [details] did not pass qt-ews (qt): Output: http://webkit-queues.appspot.com/results/890288
Comment on attachment 204777 [details] the patch Attachment 204777 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/873251
Comment on attachment 204777 [details] the patch Attachment 204777 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/873249
Created attachment 204778 [details] the patch Fix style
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass efl-ews (efl): Output: http://webkit-queues.appspot.com/results/846441
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/855477
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass qt-ews (qt): Output: http://webkit-queues.appspot.com/results/890289
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/855478
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/920181
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/906209
Comment on attachment 204778 [details] the patch Attachment 204778 [details] did not pass win-ews (win): Output: http://webkit-queues.appspot.com/results/906212
It would be nice for the ChangeLog to have a bit of information in it, like why this is a good idea, and if it speeds anything up.
(In reply to comment #15) > It would be nice for the ChangeLog to have a bit of information in it, like why this is a good idea, and if it speeds anything up. It's for completeness. It only speeds up a microbenchmark at this point. But broadly, we want all control constructs to be known to the CFG simplifier. I'll add that text to the ChangeLog.
Created attachment 204780 [details] the ptach And now with tests.
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass efl-ews (efl): Output: http://webkit-queues.appspot.com/results/924189
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass qt-ews (qt): Output: http://webkit-queues.appspot.com/results/867478
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/902228
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass qt-wk2-ews (qt-wk2): Output: http://webkit-queues.appspot.com/results/920203
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/920201
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/906242
Comment on attachment 204780 [details] the ptach Attachment 204780 [details] did not pass win-ews (win): Output: http://webkit-queues.appspot.com/results/873287
Comment on attachment 204780 [details] the ptach View in context: https://bugs.webkit.org/attachment.cgi?id=204780&action=review r=me > Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp:190 > + for (unsigned i = data->cases.size(); found == FalseTriState && i--;) { What happens if there are multiple case statements with the same constants?
(In reply to comment #25) > (From update of attachment 204780 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=204780&action=review > > r=me > > > Source/JavaScriptCore/dfg/DFGCFGSimplificationPhase.cpp:190 > > + for (unsigned i = data->cases.size(); found == FalseTriState && i--;) { > > What happens if there are multiple case statements with the same constants? Won't happen since the bytecode's jump tables never have duplicates. I'll add a comment at the declaration of SwitchCase.
Landed in http://trac.webkit.org/changeset/151644