[CMake] Fix building with bison-3.0.
https://bugs.webkit.org/show_bug.cgi?id=119788

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-14
Reviewed by Zoltan Herczeg.

No new tests, just build fix.

* CMakeLists.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154051 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DFG_JIT implementation for sh4 architecture.
https://bugs.webkit.org/show_bug.cgi?id=119737

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-14
Reviewed by Oliver Hunt.

Source/JavaScriptCore:

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::invert):
(JSC::MacroAssemblerSH4::add32):
(JSC::MacroAssemblerSH4::and32):
(JSC::MacroAssemblerSH4::lshift32):
(JSC::MacroAssemblerSH4::mul32):
(JSC::MacroAssemblerSH4::or32):
(JSC::MacroAssemblerSH4::rshift32):
(JSC::MacroAssemblerSH4::sub32):
(JSC::MacroAssemblerSH4::xor32):
(JSC::MacroAssemblerSH4::store32):
(JSC::MacroAssemblerSH4::swapDouble):
(JSC::MacroAssemblerSH4::storeDouble):
(JSC::MacroAssemblerSH4::subDouble):
(JSC::MacroAssemblerSH4::mulDouble):
(JSC::MacroAssemblerSH4::divDouble):
(JSC::MacroAssemblerSH4::negateDouble):
(JSC::MacroAssemblerSH4::zeroExtend32ToPtr):
(JSC::MacroAssemblerSH4::branchTruncateDoubleToUint32):
(JSC::MacroAssemblerSH4::truncateDoubleToUint32):
(JSC::MacroAssemblerSH4::swap):
(JSC::MacroAssemblerSH4::jump):
(JSC::MacroAssemblerSH4::branchNeg32):
(JSC::MacroAssemblerSH4::branchAdd32):
(JSC::MacroAssemblerSH4::branchMul32):
(JSC::MacroAssemblerSH4::urshift32):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::SH4Assembler):
(JSC::SH4Assembler::labelForWatchpoint):
(JSC::SH4Assembler::label):
(JSC::SH4Assembler::debugOffset):
* dfg/DFGAssemblyHelpers.h:
(JSC::DFG::AssemblyHelpers::preserveReturnAddressAfterCall):
(JSC::DFG::AssemblyHelpers::restoreReturnAddressBeforeReturn):
(JSC::DFG::AssemblyHelpers::debugCall):
* dfg/DFGCCallHelpers.h:
(JSC::DFG::CCallHelpers::setupArguments):
(JSC::DFG::CCallHelpers::setupArgumentsWithExecState):
* dfg/DFGFPRInfo.h:
(JSC::DFG::FPRInfo::toRegister):
(JSC::DFG::FPRInfo::toIndex):
(JSC::DFG::FPRInfo::debugName):
* dfg/DFGGPRInfo.h:
(JSC::DFG::GPRInfo::toRegister):
(JSC::DFG::GPRInfo::toIndex):
(JSC::DFG::GPRInfo::debugName):
* dfg/DFGOperations.cpp:
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* jit/JITStubs.h:
* jit/JITStubsSH4.h:

Source/WTF:

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154052 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Activate visibility API layout tests
https://bugs.webkit.org/show_bug.cgi?id=119790

Patch by Benjamin Dupont <bdupont@nds.com> on 2013-08-14
Reviewed by Allan Sandfeld Jensen.

Tools:

* DumpRenderTree/qt/TestRunnerQt.cpp:
(TestRunner::resetPageVisibility):
(TestRunner::setPageVisibility):

LayoutTests:

* platform/qt/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154053 268f45cc-cd09-0410-ab3c-d52691b4dbfc
createAttribute/setAttributeNode does not properly normalize case
https://bugs.webkit.org/show_bug.cgi?id=90341

Reviewed by Darin Adler.

Source/WebCore:

setAttributeNode() verifies for existing attributes in a case sensitive
manner. Thus, it would add another attribute if specified in a case
different from the existing one. Instead, like setAttribute(), it too
should modify the existing attribute's value.

Tests: fast/dom/Element/setAttributeNode-case-insensitivity-xhtml.xhtml
       fast/dom/Element/setAttributeNode-case-insensitivity.html

* dom/Element.cpp:
(WebCore::Element::setAttributeNode):
Passing the second param (shouldIgnoreAttributeCase) to
findAttributeIndexByNameForAttributeNode() method. We are now letting
findAttributeIndexByNameForAttributeNode() handle the case-sensitive/insensitive
checking.

(WebCore::ElementData::findAttributeIndexByNameForAttributeNode):
* dom/Element.h:
Added shouldIgnoreAttributeCase boolean param to the method. It passes
this on to QualifiedName::matchesIgnoringCaseForLocalName() method.

* dom/QualifiedName.h:
(WebCore::QualifiedName::matchesIgnoringCaseForLocalName):
New method added for doing a case-insensitive comparison based on the
shouldIgnoreCase param passed to this method.

LayoutTests:

* fast/dom/Element/setAttributeNode-case-insensitivity.html: Added.
* fast/dom/Element/setAttributeNode-case-insensitivity-expected.txt: Added.
Testcase for verifying that setAttributeNode() checks against existing
attributes in a case insensitive manner. It updates the value of an
existing attribute (in lower case) with that of the one set using
setAttributeNode() (in upper case).
The test also verifies the behavior of attributes when specified with
namespace and prefix.

* fast/dom/Element/setAttributeNode-case-insensitivity-xhtml-expected.txt: Added.
* fast/dom/Element/setAttributeNode-case-insensitivity-xhtml.xhtml: Added.
Testcase added for verifying that the default behavior for xhtml documents
does not change with this fix.
For xhtml documents, attributes can be added case sensitively. This testcase
verifies that two attributes with the same name but different case are
allowed for an xhtml document.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154054 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move id attribute to parent Element interface
https://bugs.webkit.org/show_bug.cgi?id=119706

Reviewed by Ryosuke Niwa.

Source/WebCore:

Move id attribute from SVGElement / HTMLElement to their Element parent
interface to match the latest DOM specification and avoid duplication:
http://dom.spec.whatwg.org/#dom-element-id

There is no web-exposed behavior change because we haven't moved
properties from instances to their prototype, as per the Web IDL
specification (http://dev.w3.org/2006/webapi/WebIDL/#es-attributes).

Firefox already exposes the id property of Element's prototype.

This patch also drops the comment about returning the empty string when
no id is present (introduced in http://trac.webkit.org/changeset/4417).
This comment is redundant since the id property is already marked to
"reflect" the id attribute. Returning the empty string when the
attribute is not present is the normal behavior when reflecting:
http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#reflect

No new test, no web-exposed behavior change.

* dom/Element.idl:
* html/HTMLElement.idl:
* svg/SVGElement.idl:

LayoutTests:

Rebaseline fast/js/dom-static-property-for-in-iteration.html as
the order has changed.

* fast/js/dom-static-property-for-in-iteration-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154057 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Headings not longer have an AXTitle if they have a link as the only child
https://bugs.webkit.org/show_bug.cgi?id=119699

Reviewed by Anders Carlsson.

Source/WebCore: 

Normally, focusable content is not incuded when looking at the visible text of an element.
One case where we need an exception is with headings, where there is usually link content inside the heading
that we want to be used as the visible text.

Test: accessibility/heading-title-includes-links.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::visibleText):
(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::AccessibilityNodeObject::title):
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityTextUnderElementMode::AccessibilityTextUnderElementMode):
(WebCore::AccessibilityObject::textUnderElement):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement):
* accessibility/AccessibilityRenderObject.h:

LayoutTests: 

* accessibility/heading-title-includes-links.html: Added.
* platform/mac/accessibility/heading-title-includes-links-expected.txt: Added.
* platform/mac/accessibility/internal-link-anchors2-expected.txt:



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