Transition call and construct JITStubs to CCallHelper functions
https://bugs.webkit.org/show_bug.cgi?id=122453

Reviewed by Geoffrey Garen.

Transitioned cti_op_call_eval to operationCallEval.  Migrated baseline JIT to use the same 
call thunks as the DFG.  Eliminated all of the "oldStyle" thunks and related functions.

* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::unlink):
* jit/JIT.cpp:
(JSC::JIT::linkFor):
(JSC::JIT::linkSlowCall):
* jit/JIT.h:
* jit/JITCall.cpp:
(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::privateCompileClosureCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::privateCompileClosureCall):
* jit/JITInlines.h:
(JSC::JIT::callOperationWithCallFrameRollbackOnException):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* jit/JITStubs.cpp:
* jit/JITStubs.h:
* jit/ThunkGenerators.cpp:
* jit/ThunkGenerators.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157164 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[ATK] Implement new API in AtkText: atk_text_get_string_at_offset()
https://bugs.webkit.org/show_bug.cgi?id=120638

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Implemented new atk_text_get_string_at_offset() API, introduced in
ATK 2.9.4 to simplify how text at a given offset is retrieved.

* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextGetStringAtOffset): New function implementing
the new API, which basically translates calls to the new API to
calls to the old API using 'at' positions and START boundaries.
(webkitAccessibleTextInterfaceInit): Hook the new function.

Source/WebKit/gtk:

Update ATK unit test to check the new API as well if the version
of ATK is new enough.

* tests/testatk.c:
(testGetStringFunction): New helper function, to check the new API.
(runGetStringTests): Ditto.
(testWebkitAtkGetStringAtOffset): New unit test, similar to the
one already present to check the old API but focused in the new one.
(testWebkitAtkGetStringAtOffsetNewlines): Ditto.
(testWebkitAtkGetStringAtOffsetTextarea): Ditto.
(testWebkitAtkGetStringAtOffsetTextInput): Ditto.
(testWebkitAtkGetStringAtOffsetWithPreformattedText): Ditto.
(testWebkitAtkGetStringAtOffsetWithSpecialCharacters): Ditto.
(testWebkitAtkGetStringAtOffsetWithWrappedLines): Ditto.
(testWebkitAtkGetStringAtOffsetWithEmbeddedObjects): Ditto.
(testWebkitAtkGetExtents): Add checks for the new API, if possible.
(testWebkitAtkLinksWithInlineImages): Ditto.
(main): Add the new unit tests to check the new API, if possible.

Tools:

* gtk/jhbuild.modules: Raised ATK and AT-SPI versions to 2.10.0, so we
can check both the old and new APIs to retrieve text at a given offset.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157165 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Add timeout as expected result for mathml/very-large-stretchy-operators.html,
since it times out on the bots.

* platform/gtk/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Add timeout as expected result for fast/history/go-back-to-iframe-with-plugin.html,
since it times out sometimes.

* platform/gtk/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove RunLoopMac.mm
https://bugs.webkit.org/show_bug.cgi?id=122527

Reviewed by Antti Koivisto.

RunLoop::setUseApplicationRunLoopOnMainRunLoop() is no longer used, so we can just use the run() and stop()
implementations from RunLoopCF.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/RunLoop.cpp:
* platform/RunLoop.h:
* platform/cf/RunLoopCF.cpp:
(WebCore::RunLoop::stop):
* platform/mac/RunLoopMac.mm: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157168 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Frédéric Wang's blog to the planet
https://bugs.webkit.org/show_bug.cgi?id=122541

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-10-09
Reviewed by Martin Robinson.

* config.ini: Add my blog to the planet.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Update GObject DOM symbols file after r157163.

* bindings/gobject/webkitdom.symbols:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: VoiceOver does not speak aria-expanded state on iOS
https://bugs.webkit.org/show_bug.cgi?id=122540

Expose aria-pressed state for iOS.

Reviewed by Mario Sanchez Prada.

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityIsExpanded]):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157171 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Some accessibility tests are failing
https://bugs.webkit.org/show_bug.cgi?id=122553

Unreviewed EFL gardening

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-10-09

* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157172 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[arm] Inverted src and dest FP registers in DFG speculative JIT when using hardfp.
https://bugs.webkit.org/show_bug.cgi?id=122555

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-09
Reviewed by Michael Saboff.

* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157173 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Win] BeginPaint should only be called in response to WM_PAINT.
https://bugs.webkit.org/show_bug.cgi?id=122549

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-09
Reviewed by Brent Fulgham.

According to the documentation, the Win32 api function BeginPaint should only be called in response to a WM_PAINT message.
Currently, the WebView window procedure might call this function (via WebView::paint(0, 0)) for all types of messages.
Also, there is potential for double drawing. If some message is dispatched before WM_PAINT, WebView::paint(0, 0) will be called.
This call does not validate the area drawn, so later the WM_PAINT will arrive, drawing the same area.
This can be fixed by calling the Win32 function UpdateWindow(), which will do a synchronous window update, and validate the area.

* WebView.cpp:
(WebView::WebViewWndProc): Use Win32 function UpdateWindow() to draw invalid area.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add GTK 64 bits release to the buildbot dashboard
https://bugs.webkit.org/show_bug.cgi?id=122548

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-10-09
Reviewed by Darin Adler.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot): add 64 bits release wk2 and wk1 testers.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.linux-gtk img.logo): use the GTK+ logo in its dashboard line.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157175 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change to std::unique_ptr breaks wtf/DataLog.cpp when DATA_LOG_TO_FILE set to 1
https://bugs.webkit.org/show_bug.cgi?id=122557

Reviewed by Filip Pizlo.

Changed the leakPtr() to release().

* wtf/DataLog.cpp:
(WTF::initializeLogFileOnce):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rename EventRetargeter::adjustForRelatedTarget to EventPath::setRelatedTarget
https://bugs.webkit.org/show_bug.cgi?id=122539

Reviewed by Darin Adler.

Renamed EventRetargeter::adjustForRelatedTarget to EventPath::setRelatedTarget and got rid of
EventDispatchMediators for focus events. We set the related target inside EventDispatcher's
dispatch via Event::relatedTarget, which is now virtual and overridden by mouse/focus events.

* dom/Element.cpp: The following functions no longer use FocusEventDispatchMediators.
(WebCore::Element::dispatchFocusInEvent):
(WebCore::Element::dispatchFocusOutEvent):
(WebCore::Element::dispatchFocusEvent):
(WebCore::Element::dispatchBlurEvent):

* dom/Event.h:
(WebCore::Event::relatedTarget): Added as a virtual function.

* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchEvent): Cache Event*.
(WebCore::EventDispatcher::dispatch): Call setRelatedTargetToPath at the beginning to update
related targets in the path.

* dom/EventDispatcher.h:

* dom/EventRetargeter.cpp:
(WebCore::EventPath::EventPath): Initialize m_origin, used in EventPath::setRelatedTarget.
(WebCore::EventRetargeter::adjustTouchList):
(WebCore::EventPath::setRelatedTarget): Renamed from EventRetargeter::adjustForRelatedTarget.
Delegated the nullity checks to callers by taking references instead of pointers.
(WebCore::EventRetargeter::calculateAdjustedNodes):

* dom/EventRetargeter.h: Removed AdjustedNodes typedef. It's just a Vector of RefPtr<Node>.

* dom/FocusEvent.cpp: Removed FocusEventDispatchMediators for focus events.
* dom/FocusEvent.h:

* dom/MouseEvent.cpp:
(WebCore::MouseEvent::toElement): Cache the related target now that relatedTarget() is virtual.
(WebCore::MouseEvent::fromElement): Ditto.
(WebCore::MouseEventDispatchMediator::mediateAndDispatchEvent): No longer sets the related
targets since that's done in EventDispatcher::dispatch now.

* dom/MouseEvent.h:

* dom/Node.cpp: Removed obnoxious Node::dispatchScopedEventDispatchMediator.
(WebCore::Node::dispatchScopedEvent):
* dom/Node.h:

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlVolumeSliderContainerElement::defaultEventHandler): Cache the related
target in a local variable now that relatedTarget() is virtual.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157177 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Set view to active in ViewClientEfl after WebProcess has relaunched
https://bugs.webkit.org/show_bug.cgi?id=118650

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-10-09
Reviewed by Noam Rosenthal.

Once WebProcess relaunches, the underlying scene from the view is recreated
and is not active by default, which means it will be in `background'. In
practice, from that point on we are going to get a blank screen, unless we
set it to active.

In the normal flow, the view is set to active during its initialization; this
patch sets it to active also in ViewClientEfl, in the webProcessDidRelaunch
callback.

* UIProcess/efl/ViewClientEfl.cpp:
(WebKit::ViewClientEfl::webProcessDidRelaunch): Added WKViewSetIsActive call.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157178 268f45cc-cd09-0410-ab3c-d52691b4dbfc
http://build.webkit.org/dashboard/ links to a wrong jscore-test results page
https://bugs.webkit.org/show_bug.cgi?id=122569

Reviewed by Tim Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot.prototype.javascriptTestResultsURLForIteration): "actual.html" used
to be produced by the old Mozilla test harness that we don't use any more.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157179 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CoordinatedGraphics: Fix integer rounding when computing pixel alignment
https://bugs.webkit.org/show_bug.cgi?id=122565

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-10-09
Reviewed by Noam Rosenthal.

Source/WebCore:

Replace roundedIntRect call in computePixelAlignment() with enclosingIntRect,
so that very small rectangles (after content scaling) don't appear to be empty,
creating a crash later.

Test: transforms/3d/general/rotate-45-degrees-long-inner-text-in-dt.html

* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::computePixelAlignment):

LayoutTests:

Added test that rotates 45 degrees a very long text in a dt tag that
might crash the browser depending on how it handles the integer
rounding when computing pixel alignment.

* transforms/3d/general/rotate-45-degrees-long-inner-text-in-dt-expected.txt: Added.
* transforms/3d/general/rotate-45-degrees-long-inner-text-in-dt.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157180 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. A couple of paste tests began timing out after
http://trac.webkit.org/changeset/156678.

* platform/gtk/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157181 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Many inspector protocol tests are timing out on the bots, unreproducible locally.

* platform/gtk/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157182 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: VoiceOver double speaks all items in <li> nodes
https://bugs.webkit.org/show_bug.cgi?id=122564

Reviewed by Brent Fulgham.

Source/WebCore: 

Test: platform/mac/accessibility/native-list-item-should-not-expose-label.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::visibleText):

LayoutTests: 

Make a mac specific expectation for listitem-title on Mac.
Make a more directed test for Mac regarding listitem labeling.

* platform/mac/accessibility/lists-expected.txt:
* platform/mac/accessibility/listitem-title-expected.txt: Added.
* platform/mac/accessibility/native-list-item-should-not-expose-label-expected.txt: Added.
* platform/mac/accessibility/native-list-item-should-not-expose-label.html: Added.



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