[GTK] Get rid of use of deleteAllValues in GtkDragAndDropHelper
https://bugs.webkit.org/show_bug.cgi?id=122417

Reviewed by Andreas Kling.

* platform/gtk/GtkDragAndDropHelper.cpp: Removed unneeded typedefs.
(WebCore::GtkDragAndDropHelper::~GtkDragAndDropHelper): Removed call to
deleteAllValues.
(WebCore::GtkDragAndDropHelper::handleDragEnd): Use remove directly instead
of using find then remove. I believe this fixes a storage leak.
(WebCore::GtkDragAndDropHelper::handleGetDragData): Use get instead of find.
(WebCore::GtkDragAndDropHelper::handleDragLeaveLater): Remove the explicit
delete since remove will automatically delete.
(WebCore::GtkDragAndDropHelper::handleDragLeave): Use get instead of find.
(WebCore::GtkDragAndDropHelper::handleDragMotion): Use add instead of a
combination of find and set. Also user nullptr instead of 0.
(WebCore::GtkDragAndDropHelper::handleDragDataReceived): Use get instead of find.
(WebCore::GtkDragAndDropHelper::handleDragDrop): Use get instead of find.

* platform/gtk/GtkDragAndDropHelper.h: Use nullptr instead of 0. Change value
type of m_droppingContexts to be a std::unique_ptr.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157013 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unified test infrastructure via the jsc shell
https://bugs.webkit.org/show_bug.cgi?id=120696

Source/JavaScriptCore: 

Reviewed by Oliver Hunt.
        
Add a mozilla-tests.yaml list. This is autogenerated by create-mozilla-js-test-list.
I think it's better to leave this checked in; we may even just edit it directly in
the future. Also generating it is not cheap.
        
Fix some low-hanging fruit bugs that I caught by introducing more test coverage.
        
- We were not emitting labels for CFA-unreachable blocks, which caused link errors.
  It's possible for a CFA-unreachable block to be jumped to, if the thing that causes
  it to be unreachable is a speculation in a Branch or peephole compare.
        
- The register allocation assertions didn't handle peephole branches correctly. Since
  the peephole branch handling returns early from compile(), the clearBlahbittyBlah()
  method wasn't being called.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* tests/mozilla/mozilla-tests.yaml: Added.

Tools: 

Reviewed by Oliver Hunt.
        
Make run-jsc-stress-tests smart enough to be able to handle different styles of test
output (silent or noisy) and different styles of test failure (just bad exit code,
text diff, filtering for some magical text, etc.). This allows me to get rid of the
layout-test-helper. It also allows me to switch all of the old Mozilla tests to
running in run-jsc-stress-tests.
        
Also removes all of the code paths that defended against not having shellwords. Just
install the shellwords gem if you want to run tests.
        
Also removes the non-parallel test running code. No reason for it to exist anymore.
        
This is a massive increase in test coverage. It uncovered bugs. I fixed two of them
as part of this patch, and left three more as new bugzillas.

* Scripts/create-mozilla-js-test-list: Added.
* Scripts/jsc-stress-test-helpers/check-mozilla-failure: Added.
* Scripts/jsc-stress-test-helpers/layout-test-helper: Removed.
* Scripts/run-javascriptcore-tests:
* Scripts/run-jsc-stress-tests:

LayoutTests: 

Reviewed by Oliver Hunt.
        
Suppress running the no-cjit and dfg-eager variants of these tests because there are
still some hard bugs to fix; they were revealed by the increase in test coverage.

* js/script-tests/dfg-inline-arguments-capture-throw-exception.js:
* js/script-tests/dfg-uint32-to-number-in-middle-of-copy-propagation.js:
* js/script-tests/integer-division-neg2tothe32-by-neg1.js:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Factor text paint style computation out from InlineTextBox
https://bugs.webkit.org/show_bug.cgi?id=122433

Reviewed by Andreas Kling.

Move it to TextPaintStyle.h/cpp. Other parts of the code may use it in the future.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157015 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, fix build on old Rubies.

* Scripts/run-jsc-stress-tests:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157016 268f45cc-cd09-0410-ab3c-d52691b4dbfc
jsc-layout-tests.yaml/js/script-tests/dfg-arguments-osr-exit.js.layout-dfg-eager-no-cjit fails in release mode on the bots
https://bugs.webkit.org/show_bug.cgi?id=122436

Unreviewed, green the bots by not running the eager variants of these tests.
        
Will unskip when I land the fix for https://bugs.webkit.org/show_bug.cgi?id=122418.

* js/script-tests/dfg-arguments-osr-exit-multiple-blocks-before-exit.js:
* js/script-tests/dfg-arguments-osr-exit-multiple-blocks.js:
* js/script-tests/dfg-arguments-osr-exit.js:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157017 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Range constructors should take a Document&.
<https://webkit.org/b/122435>

Reviewed by Sam Weinig.

Source/WebCore:

Make all Range constructors take Document& instead of a PassRefPtr.
This removes one null check at every call site.

Also use a Ref<Document> for storage in Range.

Source/WTF:

Give Ref an assignment operator.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157018 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Build against the Xcode default toolchain when targeting OS X 10.8.

This fixes the build after r156632 in configurations that use another toolchain
by default.

* gtest/xcode/Config/General.xcconfig:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157019 268f45cc-cd09-0410-ab3c-d52691b4dbfc
results.html doesn't support non-HTML reference tests or references with external resources
https://bugs.webkit.org/show_bug.cgi?id=122426

Reviewed by Ryosuke Niwa.

* fast/harness/results.html:
Factor splitExtension() out of stripExtension(), so we can retrieve
the extension as well as strip it.

Factor layoutTestsBasePath() out of testLink(), so we can use it for
ref test expectation files as well.

Use layoutTestsBasePath() to link to ref test expectation files, and
use the extension of the test for the expectation, instead of hardcoding
HTML reference files.

This will work on the bots because we already use the same mechanism for
the link to the test itself.

* fast/harness/resources/results-test.js:
Update the harness result viewer test results.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157020 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove an unnecessary test expectation, as the test was removed
along with the code it tested.

* platform/mac/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157021 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Attempt to fix the Windows build.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157022 268f45cc-cd09-0410-ab3c-d52691b4dbfc
No? Okay, let's try that again..

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157023 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Generate toCSSFooValue() for CSSCursorImageValue, CSSCubicBezierTimingFunctionValue, CSSStepsTimingFunctionValue and CSSUnicodeRangeValue
https://bugs.webkit.org/show_bug.cgi?id=122408

Reviewed by Andreas Kling.

As a step to use toCSSFooValue, this patch generates toCSSFooValue() for CSSCursorImageValue,
CSSCubicBezierTimingFunctionValue, CSSStepsTimingFunctionValue and CSSUnicodeRangeValue.
This will help to detect bad type cast.

No new tests, no behavior changes.

* css/CSSCursorImageValue.h:
* css/CSSTimingFunctionValue.h:
* css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationTimingFunction):
* css/CSSUnicodeRangeValue.h:
* css/CSSValue.cpp:
(WebCore::CSSValue::destroy):
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyCursor::applyValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleImage):
(WebCore::StyleResolver::styleShader):
* rendering/style/StylePendingImage.h:
(WebCore::StylePendingImage::cssCursorImageValue):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157024 268f45cc-cd09-0410-ab3c-d52691b4dbfc
MediaStreamTrack can't be FINAL
https://bugs.webkit.org/show_bug.cgi?id=122322

Reviewed by Darin Adler.

Marked the MediaStreamTrack subclasses as final.

* Modules/mediastream/AudioStreamTrack.h:
* Modules/mediastream/MediaStreamTrack.h:
* Modules/mediastream/VideoStreamTrack.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157030 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Build fix after r157002
https://bugs.webkit.org/show_bug.cgi?id=122434

Reviewed by Sam Weinig.

* editing/markup.cpp: Changed override to OVERRIDE.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157032 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed debug build fix for ports enabling the <template> element support.

* html/HTMLTagNames.in: Generate type helpers for the <template> element as they're required
by the assertions in the Element type casts for HTMLTemplateElement.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157033 268f45cc-cd09-0410-ab3c-d52691b4dbfc
context-menu-suggestions-multiword-selection.html and context-menu-suggestions-subword-selection.html are flaky after r156901.
https://bugs.webkit.org/show_bug.cgi?id=122414

Unreviewed gardening.

* platform/mac/TestExpectations:
Similarly to r156990, mark context-menu-suggestions-subword-selection.html as flaky.

Change-Id: I787b1d5a5a328f747799434fd7b984eec6947cd1

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157034 268f45cc-cd09-0410-ab3c-d52691b4dbfc