WebKit-https.git
11 years ago2009-05-11 Darin Adler <darin@apple.com>
darin@apple.com [Mon, 11 May 2009 16:10:05 +0000 (16:10 +0000)]
2009-05-11  Darin Adler  <darin@apple.com>

        Reviewed by Dan Bernstein.

        Fix failure seen on most of the buildbots.

        * fast/forms/text-control-intrinsic-widths-expected.txt: Rolled back to the
        version before Hyatt's recent intrinsic margin check-in. According to Dan,
        that should not have had any effect on this test, so these results reflect
        some other sort of difference on Hyatt's computer.

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

11 years ago2009-05-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Mon, 11 May 2009 15:17:11 +0000 (15:17 +0000)]
2009-05-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Reviewed by NOBODY (build fix).

        Also add ParserArena, in addition to AllInOne, for release builds,
        since adding it to AllInOne breaks Mac.

        * GNUmakefile.am:

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

11 years ago2009-05-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Mon, 11 May 2009 14:55:58 +0000 (14:55 +0000)]
2009-05-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Unreviewed build fix. Adding ParserArena to the autotools build.

        * GNUmakefile.am:

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

11 years ago More Windows build fixes after r43479
aroben@apple.com [Mon, 11 May 2009 14:50:21 +0000 (14:50 +0000)]
    More Windows build fixes after r43479

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
        Export ParserArena::reset.

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

11 years ago Windows build fixes after r43479
aroben@apple.com [Mon, 11 May 2009 14:36:20 +0000 (14:36 +0000)]
    Windows build fixes after r43479

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Added
        ParserArena to the project.

        * parser/NodeConstructors.h: Added a missing include.
        (JSC::ParserArenaDeletable::operator new): Marked these as inline.

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

11 years ago2009-05-11 Anton Shestakov <engored@ya.ru>
kov@webkit.org [Mon, 11 May 2009 13:57:35 +0000 (13:57 +0000)]
2009-05-11  Anton Shestakov  <engored@ya.ru>

        Rubber-stamped by Gustavo Noronha.

        New Russian translation.

        * ru.po: Added.

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

11 years agoRevert "2009-05-11 Jan Michael Alonzo <jmalonzo@webkit.org>"
jmalonzo@webkit.org [Mon, 11 May 2009 10:55:25 +0000 (10:55 +0000)]
Revert "2009-05-11  Jan Michael Alonzo  <jmalonzo@webkit.org>"

This reverts commit r43485 as it fails the mac bots.

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

11 years ago2009-05-11 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Mon, 11 May 2009 10:34:16 +0000 (10:34 +0000)]
2009-05-11  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by NOBODY (BuildFix).

        Add ParserArena to AllInOneFile as well as gtk, qt and wx build
        scripts.

        * AllInOneFile.cpp:
        * GNUmakefile.am:
        * JavaScriptCore.pri:
        * JavaScriptCoreSources.bkl:

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

11 years ago2009-05-10 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Mon, 11 May 2009 06:06:30 +0000 (06:06 +0000)]
2009-05-10  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Geoff Garen.

        - fixed REGRESSION(r43432): Many JavaScriptCore tests crash in 64-bit
        https://bugs.webkit.org/show_bug.cgi?id=25680

        Accound for the 64-bit instruction prefix when rewriting mov to lea on 64-bit.

        * jit/JIT.h:
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::patchGetByIdSelf):
        (JSC::JIT::patchPutByIdReplace):

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

11 years ago2009-05-10 Darin Adler <darin@apple.com>
darin@apple.com [Mon, 11 May 2009 04:30:14 +0000 (04:30 +0000)]
2009-05-10  Darin Adler  <darin@apple.com>

        Reviewed by Cameron Zwarich.

        Bug 25674: syntax tree nodes should use arena allocation
        https://bugs.webkit.org/show_bug.cgi?id=25674

        Part two: Remove reference counting from most nodes.

        * JavaScriptCore.exp: Updated.

        * JavaScriptCore.xcodeproj/project.pbxproj: Added ParserArena.h and .cpp.

        * parser/Grammar.y: Replaced uses of ParserRefCountedData with uses of
        ParserArenaData. Took out now-nonfunctional code that tries to manually
        release declaration list. Changed the new calls that create FuncDeclNode
        and FuncExprNode so that they use the proper version of operator new for
        the reference-counted idiom, not the deletion idiom.

        * parser/NodeConstructors.h:
        (JSC::ParserArenaDeletable::operator new): Added.
        (JSC::ParserArenaRefCounted::ParserArenaRefCounted): Added.
        (JSC::Node::Node): Removed ParserRefCounted initializer.
        (JSC::ElementNode::ElementNode): Ditto.
        (JSC::PropertyNode::PropertyNode): Ditto.
        (JSC::ArgumentsNode::ArgumentsNode): Ditto.
        (JSC::SourceElements::SourceElements): Ditto.
        (JSC::ParameterNode::ParameterNode): Ditto.
        (JSC::FuncExprNode::FuncExprNode): Added ParserArenaRefCounted initializer.
        (JSC::FuncDeclNode::FuncDeclNode): Ditto.
        (JSC::CaseClauseNode::CaseClauseNode): Removed ParserRefCounted initializer.
        (JSC::ClauseListNode::ClauseListNode): Ditto.
        (JSC::CaseBlockNode::CaseBlockNode): Ditto.

        * parser/NodeInfo.h: Replaced uses of ParserRefCountedData with uses of
        ParserArenaData.

        * parser/Nodes.cpp:
        (JSC::ScopeNode::ScopeNode): Added ParserArenaRefCounted initializer.
        (JSC::ProgramNode::create): Use the proper version of operator new for
        the reference-counted idiom, not the deletion idiom. Use the arena
        contains function instead of the vecctor find function.
        (JSC::EvalNode::create): Use the proper version of operator new for
        the reference-counted idiom, not the deletion idiom. Use the arena
        reset function instead of the vector shrink function.
        (JSC::FunctionBodyNode::createNativeThunk): Use the proper version
        of operator new for the reference-counted idiom, not the deletion idiom.
        (JSC::FunctionBodyNode::create): More of the same.

        * parser/Nodes.h: Added ParserArenaDeletable and ParserArenaRefCounted
        to replace ParserRefCounted. Fixed inheritance so only the classes that
        need reference counting inherit from ParserArenaRefCounted.

        * parser/Parser.cpp:
        (JSC::Parser::parse): Set m_sourceElements to 0 since it now starts
        uninitialized. Just set it to 0 again in the failure case, since it's
        now just a raw pointer, not an owning one.
        (JSC::Parser::reparseInPlace): Removed now-unneeded get() function.
        (JSC::Parser::didFinishParsing): Replaced uses of ParserRefCountedData
        with uses of ParserArenaData.

        * parser/Parser.h: Less RefPtr, more arena.

        * parser/ParserArena.cpp: Added.
        * parser/ParserArena.h: Added.

        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::~JSGlobalData): Removed arena-related code, since it's
        now in the Parser.
        (JSC::JSGlobalData::createLeaked): Removed unneeded #ifndef.
        (JSC::JSGlobalData::createNativeThunk): Tweaked #if a bit.

        * runtime/JSGlobalData.h: Removed parserArena, which is now in Parser.

        * wtf/RefCounted.h: Added deletionHasBegun function, for use in
        assertions to catch deletion not done by the deref function.

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

11 years ago Part 2: Try to fix the Windows build by adding a symbol which is really just...
ddkilzer@apple.com [Mon, 11 May 2009 00:48:31 +0000 (00:48 +0000)]
    Part 2: Try to fix the Windows build by adding a symbol which is really just a re-mangling of a changed method signature

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:

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

11 years agoWebCore:
mitz@apple.com [Mon, 11 May 2009 00:43:05 +0000 (00:43 +0000)]
WebCore:

        Reviewed by Darin Adler.

        - fix a crash when deactivating a document that had adopted a <form>
          element

        Test: fast/dom/HTMLFormElement/document-deactivation-callback-crash.html

        * html/HTMLFormElement.cpp:
        (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Corrected the
        logic here: <form> elements should be registered for document activation
        callbacks if and only if autocomplete is off.

LayoutTests:

        Reviewed by Darin Adler.

        - test for a crash when deactivating a document that had adopted a
          <form> element

        * fast/dom/HTMLFormElement/document-deactivation-callback-crash-expected.txt: Added.
        * fast/dom/HTMLFormElement/document-deactivation-callback-crash.html: Added.

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

11 years ago Try to fix the Windows build by removing an unknown symbol
ddkilzer@apple.com [Mon, 11 May 2009 00:36:15 +0000 (00:36 +0000)]
    Try to fix the Windows build by removing an unknown symbol

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:

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

11 years ago Touch Nodes.cpp to try to fix Windows build
ddkilzer@apple.com [Mon, 11 May 2009 00:27:40 +0000 (00:27 +0000)]
    Touch Nodes.cpp to try to fix Windows build

        * parser/Nodes.cpp: Removed whitespace.

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

11 years ago Test for Bug 23741: StyleRareNonInheritedData::operator==() should not compar...
ddkilzer@apple.com [Mon, 11 May 2009 00:03:04 +0000 (00:03 +0000)]
    Test for Bug 23741: StyleRareNonInheritedData::operator==() should not compare ContentData objects by pointer

        Rubber-stamped by Geoff Garen.

        Original test by Simon Fraser.

        * fast/css/compare-content-style.html: Added.
        * platform/mac/fast/css/compare-content-style-expected.txt: Added.

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

11 years ago2009-05-10 Darin Adler <darin@apple.com>
darin@apple.com [Sun, 10 May 2009 22:46:23 +0000 (22:46 +0000)]
2009-05-10  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        Quick fix for failures seen on buildbot. Maciej plans a better fix later.

        * wtf/dtoa.cpp: Change the hardcoded number of 32-bit words in a BigInt
        from 32 to 64. Parsing "1e500", for example, requires more than 32 words.

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

11 years ago2009-05-10 Darin Adler <darin@apple.com>
darin@apple.com [Sun, 10 May 2009 22:32:34 +0000 (22:32 +0000)]
2009-05-10  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        Bug 25674: syntax tree nodes should use arena allocation
        Part one: Change lifetimes so we won't have to use reference
        counting so much, but don't eliminate the reference counts
        entirely yet.

        * JavaScriptCore.exp: Updated.

        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::BytecodeGenerator): Update for use of raw pointers
        instead of RefPtr.
        (JSC::BytecodeGenerator::emitCall): Ditto.
        (JSC::BytecodeGenerator::emitConstruct): Ditto.

        * parser/Grammar.y: Update node creating code to use new (JSGlobalData*)
        instead of the plain new. At the moment this is just a hook for future
        arena allocation; it's inline and JSGlobalData* is not used.

        * parser/NodeConstructors.h: Updated for name change of parserObjects to
        parserArena. Also added explicit initialization for raw pointers that used
        to be RefPtr. Also removed some uses of get() that aren't needed now that
        the pointers are raw pointers. Also eliminated m_parameter from FuncExprNode
        and FuncDeclNode. Also changed node-creating code to use new (JSGlobalData*)
        as above.

        * parser/Nodes.cpp: Eliminated NodeReleaser and all use of it.
        (JSC::ParserRefCounted::ParserRefCounted): Updated for name change of
        parserObjects to parserArena.
        (JSC::SourceElements::append): Use raw pointers.
        (JSC::ArrayNode::emitBytecode): Ditto.
        (JSC::ArrayNode::isSimpleArray): Ditto.
        (JSC::ArrayNode::toArgumentList): Ditto.
        (JSC::ObjectLiteralNode::emitBytecode): Ditto.
        (JSC::PropertyListNode::emitBytecode): Ditto.
        (JSC::BracketAccessorNode::emitBytecode): Ditto.
        (JSC::DotAccessorNode::emitBytecode): Ditto.
        (JSC::ArgumentListNode::emitBytecode): Ditto.
        (JSC::NewExprNode::emitBytecode): Ditto.
        (JSC::EvalFunctionCallNode::emitBytecode): Ditto.
        (JSC::FunctionCallValueNode::emitBytecode): Ditto.
        (JSC::FunctionCallResolveNode::emitBytecode): Ditto.
        (JSC::FunctionCallBracketNode::emitBytecode): Ditto.
        (JSC::FunctionCallDotNode::emitBytecode): Ditto.
        (JSC::CallFunctionCallDotNode::emitBytecode): Ditto.
        (JSC::ApplyFunctionCallDotNode::emitBytecode): Ditto.
        (JSC::PostfixBracketNode::emitBytecode): Ditto.
        (JSC::PostfixDotNode::emitBytecode): Ditto.
        (JSC::DeleteBracketNode::emitBytecode): Ditto.
        (JSC::DeleteDotNode::emitBytecode): Ditto.
        (JSC::DeleteValueNode::emitBytecode): Ditto.
        (JSC::VoidNode::emitBytecode): Ditto.
        (JSC::TypeOfValueNode::emitBytecode): Ditto.
        (JSC::PrefixBracketNode::emitBytecode): Ditto.
        (JSC::PrefixDotNode::emitBytecode): Ditto.
        (JSC::UnaryOpNode::emitBytecode): Ditto.
        (JSC::BinaryOpNode::emitStrcat): Ditto.
        (JSC::BinaryOpNode::emitBytecode): Ditto.
        (JSC::EqualNode::emitBytecode): Ditto.
        (JSC::StrictEqualNode::emitBytecode): Ditto.
        (JSC::ReverseBinaryOpNode::emitBytecode): Ditto.
        (JSC::ThrowableBinaryOpNode::emitBytecode): Ditto.
        (JSC::InstanceOfNode::emitBytecode): Ditto.
        (JSC::LogicalOpNode::emitBytecode): Ditto.
        (JSC::ConditionalNode::emitBytecode): Ditto.
        (JSC::ReadModifyResolveNode::emitBytecode): Ditto.
        (JSC::AssignResolveNode::emitBytecode): Ditto.
        (JSC::AssignDotNode::emitBytecode): Ditto.
        (JSC::ReadModifyDotNode::emitBytecode): Ditto.
        (JSC::AssignBracketNode::emitBytecode): Ditto.
        (JSC::ReadModifyBracketNode::emitBytecode): Ditto.
        (JSC::CommaNode::emitBytecode): Ditto.
        (JSC::ConstDeclNode::emitCodeSingle): Ditto.
        (JSC::ConstDeclNode::emitBytecode): Ditto.
        (JSC::ConstStatementNode::emitBytecode): Ditto.
        (JSC::statementListEmitCode): Ditto.
        (JSC::BlockNode::emitBytecode): Ditto.
        (JSC::ExprStatementNode::emitBytecode): Ditto.
        (JSC::VarStatementNode::emitBytecode): Ditto.
        (JSC::IfNode::emitBytecode): Ditto.
        (JSC::IfElseNode::emitBytecode): Ditto.
        (JSC::DoWhileNode::emitBytecode): Ditto.
        (JSC::WhileNode::emitBytecode): Ditto.
        (JSC::ForNode::emitBytecode): Ditto.
        (JSC::ForInNode::emitBytecode): Ditto.
        (JSC::ReturnNode::emitBytecode): Ditto.
        (JSC::WithNode::emitBytecode): Ditto.
        (JSC::CaseBlockNode::tryOptimizedSwitch): Ditto.
        (JSC::CaseBlockNode::emitBytecodeForBlock): Ditto.
        (JSC::SwitchNode::emitBytecode): Ditto.
        (JSC::LabelNode::emitBytecode): Ditto.
        (JSC::ThrowNode::emitBytecode): Ditto.
        (JSC::TryNode::emitBytecode): Ditto.
        (JSC::ScopeNodeData::ScopeNodeData): Use swap to transfer ownership
        of the arena, varStack and functionStack.
        (JSC::ScopeNode::ScopeNode): Pass in the arena when creating the
        ScopeNodeData.
        (JSC::ProgramNode::ProgramNode): Made this inline since it's used
        in only one place.
        (JSC::ProgramNode::create): Changed this to return a PassRefPtr since
        we plan to have the scope nodes be outside the arena, so they will need
        some kind of ownership transfer (maybe auto_ptr instead of PassRefPtr
        in the future, though). Remove the node from the newly-created arena to
        avoid a circular reference. Later we'll keep the node out of the arena
        by using a different operator new, but for now it's the ParserRefCounted
        constructor that puts the node into the arena, and there's no way to
        bypass that.
        (JSC::EvalNode::EvalNode): Ditto.
        (JSC::EvalNode::create): Ditto.
        (JSC::FunctionBodyNode::FunctionBodyNode): Ditto.
        (JSC::FunctionBodyNode::createNativeThunk): Moved the code that
        reseets the arena here instead of the caller.
        (JSC::FunctionBodyNode::create): Same change as the other create
        functions above.
        (JSC::FunctionBodyNode::emitBytecode): Use raw pointers.

        * parser/Nodes.h: Removed NodeReleaser. Changed FunctionStack to
        use raw pointers. Removed the releaseNodes function. Added an override
        of operator new that takes a JSGlobalData* to prepare for future arena use.
        Use raw pointers instead of RefPtr everywhere possible.

        * parser/Parser.cpp:
        (JSC::Parser::reparseInPlace): Pass the arena in.

        * parser/Parser.h:
        (JSC::Parser::parse): Updated for name change of parserObjects to parserArena.
        (JSC::Parser::reparse): Ditto.
        * runtime/FunctionConstructor.cpp:
        (JSC::extractFunctionBody): Ditto.
        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::~JSGlobalData): Ditto.
        (JSC::JSGlobalData::createNativeThunk): Moved arena manipulation into the
        FunctionBodyNode::createNativeThunk function.

        * runtime/JSGlobalData.h: Tweaked formatting and renamed parserObjects to
        parserArena.

        * wtf/NotFound.h: Added the usual "using WTF" to this header to match the
        rest of WTF.

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

11 years ago2009-05-10 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Sun, 10 May 2009 18:49:10 +0000 (18:49 +0000)]
2009-05-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Geoffrey Garen.

        https://bugs.webkit.org/show_bug.cgi?id=25670
        Remove no longer valid chunk of code from dtoa.

        * wtf/dtoa.cpp:
        (WTF::dtoa): Removed invalid code.

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

11 years ago Reviewed by Dan Bernstein.
ap@webkit.org [Sun, 10 May 2009 17:53:22 +0000 (17:53 +0000)]
    Reviewed by Dan Bernstein.

        <rdar://problem/6867598> REGRESSION (r42483): Have to enter credentials twice when trying
        to view protected MobileMe video

        Add a temporary workaround.

        * platform/network/ResourceHandleInternal.h:
        (WebCore::ResourceHandleInternal::ResourceHandleInternal):
        Added an m_useSiteSpecificQuirks boolean (Mac-only). A Frame pointer is only available when
        starting a request, so we need to store this data for later use.

        * platform/network/mac/ResourceHandleMac.mm:
        (WebCore::ResourceHandle::start): Initialize m_useSiteSpecificQuirks.
        (WebCore::ResourceHandle::receivedCredential): Use per-session credentials with gallery.me.com.

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

11 years ago Reviewed by Geoff Garen.
ap@webkit.org [Sun, 10 May 2009 17:32:44 +0000 (17:32 +0000)]
    Reviewed by Geoff Garen.

        "Class const *" is the same as "const Class*", use the latter syntax consistently.

        See <http://www.parashift.com/c++-faq-lite/const-correctness.html#faq-18.9>.

        * pcre/pcre_compile.cpp:
        (calculateCompiledPatternLength):
        * runtime/JSObject.h:
        (JSC::JSObject::offsetForLocation):
        (JSC::JSObject::locationForOffset):

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

11 years ago Reviewed by Dan Bernstein.
ap@webkit.org [Sun, 10 May 2009 17:01:40 +0000 (17:01 +0000)]
    Reviewed by Dan Bernstein.

        <rdar://problem/6870383> Have to enter credentials twice when downloading from a protected page

        Use credentials from WebCore storage when downloading.

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

11 years ago Reviewed by Dan Bernstein.
ap@webkit.org [Sun, 10 May 2009 16:57:06 +0000 (16:57 +0000)]
    Reviewed by Dan Bernstein.

        Match newer XMLHttpRequest draft and make withCredential setter raise an exception when
        called at a wrong time.

        No test, because we are waiting for a newer version of system frameworks to test the attribute.

        * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::setWithCredentials):
        * xml/XMLHttpRequest.h:
        * xml/XMLHttpRequest.idl:
        Raise INVALID_STATE_ERR if the state is not OPENED, or if the send() flag is true.

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

11 years agoWebCore:
mitz@apple.com [Sun, 10 May 2009 16:26:10 +0000 (16:26 +0000)]
WebCore:

        Reviewed by Dave Kilzer.

        - fix https://bugs.webkit.org/show_bug.cgi?id=25602
          REGRESSION: fast/overflow/overflow-focus-ring.html seems double-drawn
          on ToT

        Test: fast/layers/self-painting-outline.html

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paintLayer): Paint the layer's own outline only
        if it is a self-painting layer.

LayoutTests:

        Reviewed by Dave Kilzer.

        - new test and correct results for https://bugs.webkit.org/show_bug.cgi?id=25602
          REGRESSION: fast/overflow/overflow-focus-ring.html seems double-drawn
          on ToT

        * fast/layers/self-painting-outline.html: Added.
        * platform/mac/fast/overflow/overflow-focus-ring-expected.checksum: Updated.
        * platform/mac/fast/overflow/overflow-focus-ring-expected.png: Updated.
        * platform/mac/fast/layers/self-painting-outline-expected.checksum: Added.
        * platform/mac/fast/layers/self-painting-outline-expected.png: Added.
        * platform/mac/fast/layers/self-painting-outline-expected.txt: Added.

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

11 years ago2009-05-10 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 10 May 2009 11:32:31 +0000 (11:32 +0000)]
2009-05-10  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Alexey Proskuryakov.

        - speedup dtoa/strtod

        Added a bunch of inlining, and replaced malloc with stack allocation.

        0.5% SunSpider speedup (7% on string-tagcloud).

        * runtime/NumberPrototype.cpp:
        (JSC::integerPartNoExp):
        (JSC::numberProtoFuncToExponential):
        * runtime/UString.cpp:
        (JSC::concatenate):
        (JSC::UString::from):
        * wtf/dtoa.cpp:
        (WTF::BigInt::BigInt):
        (WTF::BigInt::operator=):
        (WTF::Balloc):
        (WTF::Bfree):
        (WTF::multadd):
        (WTF::s2b):
        (WTF::i2b):
        (WTF::mult):
        (WTF::pow5mult):
        (WTF::lshift):
        (WTF::cmp):
        (WTF::diff):
        (WTF::b2d):
        (WTF::d2b):
        (WTF::ratio):
        (WTF::strtod):
        (WTF::quorem):
        (WTF::freedtoa):
        (WTF::dtoa):
        * wtf/dtoa.h:

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

11 years agoWebCore:
mitz@apple.com [Sun, 10 May 2009 05:04:30 +0000 (05:04 +0000)]
WebCore:

        Reviewed by Geoffrey Garen and Mark Rowe.

        - fix https://bugs.webkit.org/show_bug.cgi?id=25666
          Assertion failure in Node::setDocument()
          (willMoveToNewOwnerDocumentWasCalled) when adopting a <form> element

        Test: fast/dom/HTMLFormElement/adopt-assertion.html

        * html/HTMLFormElement.cpp:
        (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Overrides of
        this method are required to call the base class implementation. Do it.
        (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.

LayoutTests:

        Reviewed by Geoffrey Garen and Mark Rowe.

        - test for https://bugs.webkit.org/show_bug.cgi?id=25666
          Assertion failure in Node::setDocument()
          (willMoveToNewOwnerDocumentWasCalled) when adopting a <form> element

        * fast/dom/HTMLFormElement/adopt-assertion-expected.txt: Added.
        * fast/dom/HTMLFormElement/adopt-assertion.html: Added.

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

11 years ago2009-05-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sun, 10 May 2009 02:44:51 +0000 (02:44 +0000)]
2009-05-09  Geoffrey Garen  <ggaren@apple.com>

        Rubber stamped by Beth Dakin.

        Added a test for a math edge case I just came across.

        * fast/js/postfix-syntax-expected.txt:
        * fast/js/resources/postfix-syntax.js:

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

11 years ago2009-05-09 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Sun, 10 May 2009 02:28:15 +0000 (02:28 +0000)]
2009-05-09  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Gustavo Noronha.

        WebKit-r43163 won't build for gtk-directfb
        https://bugs.webkit.org/show_bug.cgi?id=25538

        Move the ENCHANT check out of the with_target conditional since it
        applies to all targets

        * configure.ac:

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

11 years ago2009-05-09 Mike Hommey <glandium@debian.org>
jmalonzo@webkit.org [Sun, 10 May 2009 02:10:17 +0000 (02:10 +0000)]
2009-05-09  Mike Hommey  <glandium@debian.org>

        Reviewed by Geoffrey Garen. Landed by Jan Alonzo.

        Enable JIT on x86-64 gtk+
        https://bugs.webkit.org/show_bug.cgi?id=24724

        * configure.ac:

2009-05-09  Mike Hommey  <glandium@debian.org>

        Reviewed by Geoffrey Garen. Landed by Jan Alonzo.

        Enable JIT on x86-64 gtk+
        https://bugs.webkit.org/show_bug.cgi?id=24724

        * GNUmakefile.am:

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

11 years agoReviewed by Maciej Stachowiak.
kevino@webkit.org [Sat, 9 May 2009 22:41:36 +0000 (22:41 +0000)]
Reviewed by Maciej Stachowiak.

WebCore::DocumentLoader::mainReceivedError now asserts if error.isNull(), so
make sure wx does not create empty ResourceError() objects.

https://bugs.webkit.org/show_bug.cgi?id=24927

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

11 years ago2009-05-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 9 May 2009 22:05:34 +0000 (22:05 +0000)]
2009-05-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Removed the last non-call-related manually managed JIT stub call.

        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_rshift): Fully use the JITStubCall
        abstraction, instead of emitPutJITStubArg.

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

11 years ago2009-05-09 Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
kov@webkit.org [Sat, 9 May 2009 16:01:17 +0000 (16:01 +0000)]
2009-05-09  Sebastian Andrzej Siewior  <sebastian@breakpoint.cc>

        Reviewed by Gustavo Noronha.

        https://bugs.webkit.org/show_bug.cgi?id=25653
        PLATFORM(X86_64) inherits ia64

        __ia64__ is defined by gcc in an IA64 arch and has completely
        nothing in common with X86-64 exept both are from Intel and have
        an 64bit address space. That's it. Since code seems to expect x86
        here, ia64 has to go.

        * wtf/Platform.h:

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

11 years ago2009-05-09 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Sat, 9 May 2009 15:44:28 +0000 (15:44 +0000)]
2009-05-09  Gustavo Noronha Silva  <gns@gnome.org>

        Suggested by Geoffrey Garen.

        Assume SSE2 is present on X86-64 and on MAC X86-32. This fixes a
        build breakage on non-Mac X86-64 when JIT is enabled.

        * jit/JITArithmetic.cpp:

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

11 years agoBuild fix, adding missing files to make dist.
kov@webkit.org [Sat, 9 May 2009 14:38:59 +0000 (14:38 +0000)]
Build fix, adding missing files to make dist.

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

11 years agoCorrect the results from the previous patch
mitz@apple.com [Sat, 9 May 2009 09:26:09 +0000 (09:26 +0000)]
Correct the results from the previous patch

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

11 years agoUpdate Windows-specific layout test results for textarea intrinsic
mitz@apple.com [Sat, 9 May 2009 09:19:42 +0000 (09:19 +0000)]
Update Windows-specific layout test results for textarea intrinsic
margins following r43355

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

11 years ago2009-05-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 9 May 2009 08:54:50 +0000 (08:54 +0000)]
2009-05-09  Geoffrey Garen  <ggaren@apple.com>

        Windows build fix.

        * assembler/X86Assembler.h:
        (JSC::X86Assembler::patchLoadToLEA):

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

11 years ago2009-05-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 9 May 2009 08:49:22 +0000 (08:49 +0000)]
2009-05-09  Geoffrey Garen  <ggaren@apple.com>

        Windows build fix.

        * assembler/X86Assembler.h:
        (JSC::X86Assembler::patchLoadToLEA):

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

11 years ago2009-05-09 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sat, 9 May 2009 08:35:57 +0000 (08:35 +0000)]
2009-05-09  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Gavin Barraclough.

        Original patch by John McCall. Updated by Cameron Zwarich. Further refined by me.

        - Assorted speedups to property access

        ~.3%-1% speedup on SunSpider

        1) When we know from the structure ID that an object is using inline storage, plant direct
        loads and stores against it; no need to indirect through storage pointer.

        2) Also because of the above, union the property storage pointer with the first inline property
        slot and add an extra inline property slot.

        * assembler/AbstractMacroAssembler.h:
        (JSC::AbstractMacroAssembler::CodeLocationInstruction::CodeLocationInstruction):
        (JSC::AbstractMacroAssembler::CodeLocationInstruction::patchLoadToLEA):
        (JSC::::CodeLocationCommon::instructionAtOffset):
        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::storePtr):
        * assembler/MacroAssemblerX86.h:
        (JSC::MacroAssemblerX86::store32):
        * assembler/MacroAssemblerX86_64.h:
        (JSC::MacroAssemblerX86_64::storePtr):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::movq_EAXm):
        (JSC::X86Assembler::movl_rm):
        (JSC::X86Assembler::patchLoadToLEA):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        * jit/JIT.h:
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compilePutByIdHotPath):
        (JSC::JIT::compilePutDirectOffset):
        (JSC::JIT::compileGetDirectOffset):
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::patchGetByIdSelf):
        (JSC::JIT::patchPutByIdReplace):
        (JSC::JIT::privateCompileGetByIdSelf):
        (JSC::JIT::privateCompileGetByIdProto):
        (JSC::JIT::privateCompileGetByIdSelfList):
        (JSC::JIT::privateCompileGetByIdProtoList):
        (JSC::JIT::privateCompileGetByIdChainList):
        (JSC::JIT::privateCompileGetByIdChain):
        (JSC::JIT::privateCompilePutByIdReplace):
        * runtime/JSObject.cpp:
        (JSC::JSObject::mark):
        (JSC::JSObject::removeDirect):
        * runtime/JSObject.h:
        (JSC::JSObject::propertyStorage):
        (JSC::JSObject::getDirect):
        (JSC::JSObject::getOffset):
        (JSC::JSObject::offsetForLocation):
        (JSC::JSObject::locationForOffset):
        (JSC::JSObject::getDirectOffset):
        (JSC::JSObject::putDirectOffset):
        (JSC::JSObject::isUsingInlineStorage):
        (JSC::JSObject::):
        (JSC::JSObject::JSObject):
        (JSC::JSObject::~JSObject):
        (JSC::Structure::isUsingInlineStorage):
        (JSC::JSObject::putDirect):
        (JSC::JSObject::putDirectWithoutTransition):
        (JSC::JSObject::allocatePropertyStorageInline):
        * runtime/Structure.h:

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

11 years ago2009-05-09 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 9 May 2009 08:24:49 +0000 (08:24 +0000)]
2009-05-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Gavin Barraclough.

        Changed all our JIT stubs so that they return a maximum of 1 JS value or
        two non-JS pointers, and do all other value returning through out
        parameters, in preparation for 64bit JS values on a 32bit system.

        Stubs that used to return two JSValues now return one JSValue and take
        and out parameter specifying where in the register array the second
        value should go.

        SunSpider reports no change.

        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_post_inc):
        (JSC::JIT::compileFastArithSlow_op_post_dec):
        * jit/JITStubs.cpp:
        (JSC::JITStubs::cti_op_call_arityCheck):
        (JSC::JITStubs::cti_op_resolve_func):
        (JSC::JITStubs::cti_op_post_inc):
        (JSC::JITStubs::cti_op_resolve_with_base):
        (JSC::JITStubs::cti_op_post_dec):
        * jit/JITStubs.h:
        (JSC::):

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

11 years ago2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Sat, 9 May 2009 06:12:36 +0000 (06:12 +0000)]
2009-05-08  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Skip failing render tree test that was added in r43420.

        * platform/gtk/Skipped:

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

11 years ago2009-05-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 9 May 2009 05:25:53 +0000 (05:25 +0000)]
2009-05-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Fixed <rdar://problem/6634956> CrashTracer: [REGRESSION] >400 crashes
        in Safari at com.apple.JavaScriptCore • JSC::BytecodeGenerator::emitComplexJumpScopes + 468
        https://bugs.webkit.org/show_bug.cgi?id=25658

        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::emitComplexJumpScopes): Guard the whole loop
        with a bounds check. The old loop logic would decrement and read topScope
        without a bounds check, which could cause crashes on page boundaries.

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

11 years ago2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Sat, 9 May 2009 02:17:20 +0000 (02:17 +0000)]
2009-05-08  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by NOBODY (BuildFix).

        Gtk fix: add LiteralParser to the build script per r43424.

        Add LiteralParser to the Qt and Wx build scripts too.

        * GNUmakefile.am:
        * JavaScriptCore.pri:
        * JavaScriptCoreSources.bkl:

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

11 years agoRubber-stamped by George Staikos.
zimmermann@webkit.org [Sat, 9 May 2009 02:05:33 +0000 (02:05 +0000)]
Rubber-stamped by George Staikos.
Update WML <input> layout test result, as input field metrics have changed recently.

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

11 years agoNot reviewed. Fix clean builds, forgot to land name() -> formControlName() rename...
zimmermann@webkit.org [Sat, 9 May 2009 01:34:48 +0000 (01:34 +0000)]
Not reviewed. Fix clean builds, forgot to land name() -> formControlName() rename patch in WebKit. Only landed the WebCore side.

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

11 years agoAdd a limited literal parser for eval to handle object and array literals fired at...
oliver@apple.com [Sat, 9 May 2009 01:01:16 +0000 (01:01 +0000)]
Add a limited literal parser for eval to handle object and array literals fired at eval

Reviewed by Gavin Barraclough and Darin Adler.

This is a simplified parser and lexer that we can throw at strings passed to eval
in case a site is using eval to parse JSON (eg. json2.js).  The lexer is intentionally
limited (in effect it's whitelisting a limited "common" subset of the JSON grammar)
as this decreases the likelihood of us wating time attempting to parse any significant
amount of non-JSON content.

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

11 years ago2009-05-08 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Sat, 9 May 2009 00:51:47 +0000 (00:51 +0000)]
2009-05-08  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein

        https://bugs.webkit.org/show_bug.cgi?id=25656

        Reduce the inline capacity of CSSParserValueList's m_values
        vector to reduce the size of CSSParserValueList from 544 to 160 bytes in 64-bit.

        * css/CSSParserValues.h:

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

11 years agoNot reviewed. Used sort-Xcode-project-file to sort the XCode project file - it hasn...
zimmermann@webkit.org [Sat, 9 May 2009 00:29:15 +0000 (00:29 +0000)]
Not reviewed. Used sort-Xcode-project-file to sort the XCode project file - it hasn't been done for a while.

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

11 years agoWebCore:
mitz@apple.com [Fri, 8 May 2009 23:49:19 +0000 (23:49 +0000)]
WebCore:

        Reviewed by Darin Adler.

        - fix <rdar://problem/6864786> REGRESSION: Crash below
          ApplyStyleCommand::applyInlineStyleToRange when reviewing a patch in
          Bugzilla

        Test: editing/style/apply-through-end-of-document.html

        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Added a null
        check for the case of a range extending through the end of the document,
        in which pastEndNode is 0.

LayoutTests:

        Reviewed by Darin Adler.

        - test for <rdar://problem/6864786> REGRESSION: Crash below
          ApplyStyleCommand::applyInlineStyleToRange when reviewing a patch in
          Bugzilla

        * editing/style/apply-through-end-of-document-expected.txt: Added.
        * editing/style/apply-through-end-of-document.html: Added.

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

11 years ago2009-05-08 Douglas R. Davidson <ddavidso@apple.com>
bdakin@apple.com [Fri, 8 May 2009 23:40:39 +0000 (23:40 +0000)]
2009-05-08  Douglas R. Davidson  <ddavidso@apple.com>

        Reviewed by Beth Dakin.

        <rdar://problem/6857446> REGRESSION (Safari 3-4): Contraction base
        marked as misspelled even though contraction is a word
        Make sure spelling underline does not persist on words like
        <doesn't>.

        * editing/TypingCommand.cpp:
        (WebCore::TypingCommand::typingAddedToOpenCommand):

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

11 years agoReviewed by Kevin Ollivier.
kevino@webkit.org [Fri, 8 May 2009 22:53:29 +0000 (22:53 +0000)]
Reviewed by Kevin Ollivier.

Make sure the path's refdata isn't deleted before we're done with the object.

https://bugs.webkit.org/show_bug.cgi?id=25652

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

11 years agoFix memory leak for wxMac.
kevino@webkit.org [Fri, 8 May 2009 22:49:10 +0000 (22:49 +0000)]
Fix memory leak for wxMac.

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

11 years ago2009-05-08 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 8 May 2009 21:47:23 +0000 (21:47 +0000)]
2009-05-08  Anders Carlsson  <andersca@apple.com>

        Reviewed by Kevin Decker.

        - Fix <rdar://problem/6866712>.

        Instead of just caching whether a plug-in object _has_ a field or method, also add an entry to the cache
        if it _doesn't_ have a certain field or method. This way we have to make fewer calls to the plug-in host.

        * Plugins/Hosted/ProxyInstance.mm:
        (WebKit::ProxyInstance::methodsNamed):
        (WebKit::ProxyInstance::fieldNamed):

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

11 years ago2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Fri, 8 May 2009 21:37:43 +0000 (21:37 +0000)]
2009-05-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Reviewed by Xan Lopez.

        Make the scan program call g_thread_init(NULL) in addition to
        g_type_init(), so that it actually works.

        * docs/GNUmakefile.am:

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

11 years ago2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Fri, 8 May 2009 21:37:09 +0000 (21:37 +0000)]
2009-05-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Reviewed by Xan Lopez.

        Ship the gtk-doc.make file, so as to not depend on gtkdoc-tools.

        * GNUmakefile.am:
        * autogen.sh:

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

11 years ago2009-05-08 Beth Dakin <bdakin@apple.com>
bdakin@apple.com [Fri, 8 May 2009 21:35:48 +0000 (21:35 +0000)]
2009-05-08  Beth Dakin  <bdakin@apple.com>

        Reviewed by Dan Bernstein.

        <rdar://problem/6857446> REGRESSION (r37591): Cannot print or
        preview from maps.yandex.ru

        We need to fall into the stretchesToViewHeight() quirk when we are
        printing and we are the root and the root has percentage height OR
        when we are the body and the root has percentage height. Otherwise
        we have a height of 0 and can run into painting troubles.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::calcHeight):

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

11 years agoWebCore:
harrison@apple.com [Fri, 8 May 2009 21:12:43 +0000 (21:12 +0000)]
WebCore:

2009-05-08  Douglas Davidson  <ddavidso@apple.com>

        Reviewed by Darin Adler.

        Fixes for <rdar://problem/6852771>.
        Prevent text checking replacement immediately after an apostrophe
        and automatic link addition except immediately after typing.

        * editing/Editor.cpp:
        (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):

WebKit/mac:

2009-05-08  Douglas R. Davidson  <ddavidso@apple.com>

        Reviewed by Darin Adler.

        Fixes for <rdar://problem/6852771>.
        Disable text checking menu items if view is not editable.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
        (-[WebHTMLView smartInsertDeleteEnabled]):
        (-[WebHTMLView setSmartInsertDeleteEnabled:]):
        (-[WebHTMLView toggleSmartInsertDelete:]):
        * WebView/WebHTMLViewInternal.h:

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

11 years agoVersioning.
timothy@apple.com [Fri, 8 May 2009 21:12:27 +0000 (21:12 +0000)]
Versioning.

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

11 years ago2009-05-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 8 May 2009 20:53:15 +0000 (20:53 +0000)]
2009-05-08  Geoffrey Garen  <ggaren@apple.com>

        Not reviewed.

        Restored a Mozilla JS test I accidentally gutted.

        * tests/mozilla/ecma/Array/15.4.4.2.js:
        (getTestCases):
        (test):

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

11 years ago2009-05-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 8 May 2009 20:51:53 +0000 (20:51 +0000)]
2009-05-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Gavin Barraclough.

        More abstraction for JITStub calls from JITed code.

        Added a JITStubCall class that automatically handles things like assigning
        arguments to different stack slots and storing return values. Deployed
        the class in about a billion places. A bunch more places remain to be
        fixed up, but this is a good stopping point for now.

        * jit/JIT.cpp:
        (JSC::JIT::emitTimeoutCheck):
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompileSlowCases):
        (JSC::JIT::privateCompile):
        * jit/JIT.h:
        (JSC::JIT::JSRInfo::JSRInfo):
        (JSC::JITStubCall::JITStubCall):
        (JSC::JITStubCall::addArgument):
        (JSC::JITStubCall::call):
        (JSC::JITStubCall::):
        (JSC::CallEvalJITStub::CallEvalJITStub):
        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_lshift):
        (JSC::JIT::compileFastArithSlow_op_rshift):
        (JSC::JIT::compileFastArithSlow_op_jnless):
        (JSC::JIT::compileFastArithSlow_op_bitand):
        (JSC::JIT::compileFastArithSlow_op_mod):
        (JSC::JIT::compileFastArith_op_mod):
        (JSC::JIT::compileFastArithSlow_op_post_inc):
        (JSC::JIT::compileFastArithSlow_op_post_dec):
        (JSC::JIT::compileFastArithSlow_op_pre_inc):
        (JSC::JIT::compileFastArithSlow_op_pre_dec):
        (JSC::JIT::compileFastArith_op_add):
        (JSC::JIT::compileFastArith_op_mul):
        (JSC::JIT::compileFastArith_op_sub):
        (JSC::JIT::compileBinaryArithOpSlowCase):
        (JSC::JIT::compileFastArithSlow_op_add):
        (JSC::JIT::compileFastArithSlow_op_mul):
        * jit/JITCall.cpp:
        (JSC::JIT::compileOpCall):
        (JSC::):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compilePutByIdHotPath):
        (JSC::JIT::compileGetByIdSlowCase):
        (JSC::JIT::compilePutByIdSlowCase):
        * jit/JITStubs.cpp:
        (JSC::JITStubs::cti_op_resolve_func):
        (JSC::JITStubs::cti_op_resolve_with_base):

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

11 years ago2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Fri, 8 May 2009 20:44:50 +0000 (20:44 +0000)]
2009-05-06  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Disable more new tests that are failing.

        * platform/gtk/Skipped:

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

11 years ago2009-05-08 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Fri, 8 May 2009 19:13:42 +0000 (19:13 +0000)]
2009-05-08  Eric Carlson  <eric.carlson@apple.com>

        No review, update tests results missed in r43403.

        * fast/dom/Window/window-properties-expected.txt:
        * platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:

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

11 years ago2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Fri, 8 May 2009 19:08:26 +0000 (19:08 +0000)]
2009-05-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        GTK+ test results for two new tests.

        * platform/gtk/fast/layers/remove-only-this-layer-update-expected.txt: Added.
        * platform/gtk/fast/repaint/selection-clear-expected.txt: Added.

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

11 years ago2009-05-08 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Fri, 8 May 2009 18:37:59 +0000 (18:37 +0000)]
2009-05-08  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=25627
        Bug 25627: HTMLMediaElement: some errors should fire on <source> elements

        Update for HTML5 spec change to fire 'error' events on <source> element
        when there is a failure while processing/loading a <source>.

        Test: media/video-source-error.html

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::enqueueEvent): Remove white-space.
        (WebCore::HTMLMediaElement::loadInternal): Call cancelPendingEventsAndCallbacks instead
        of just calling m_pendingEvents.clear() as we now also need to cancel pending errors on
        all <source> element.
        (WebCore::HTMLMediaElement::selectMediaResource): Call isSafeToLoadURL() here instead of in
        loadResource() as we need to report errors differently depending on the type of failure. Use
        KURL instead of String.
        (WebCore::HTMLMediaElement::loadNextSourceChild): nextSourceChild -> selectNextSourceChild.
        Fail silently when there are no more <source> canditates because that is what spec mandates.
        Keep url as KURL instead of converting to String.
        (WebCore::HTMLMediaElement::loadResource): ASSERT that the URL is safe to load as we now
        assume the safety check now done before this function. Takes KURL instead of String.
        (WebCore::HTMLMediaElement::isSafeToLoadURL): New, checks to see if a url is safe to load, logs
        failure if not.
        (WebCore::HTMLMediaElement::noneSupported): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
        (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): New, clear all events pending on
        the media and all source elements.
        (WebCore::HTMLMediaElement::setNetworkState): Fire an error on the source element when the
        the failure happened while processing one. Only call nonSupported() when the failure happened
        while processing media element 'src' attribute.
        (WebCore::HTMLMediaElement::havePotentialSourceChild): nextSourceChild -> selectNextSourceChild.
        Deal with selectNextSourceChild returning a KURL instead of a String.
        (WebCore::HTMLMediaElement::selectNextSourceChild): Renamed from nextSourceChild, add optional
        param to control whether or not errors are fired on a source element when it will not be used.
        Check safety of url here instead of waiting until loadResource(). Return a KURL instead of a
        String.
        (WebCore::HTMLMediaElement::initialURL): nextSourceChild -> selectNextSourceChild. Keep url as
        a KURL instead of a String.
        * html/HTMLMediaElement.h:
        (WebCore::HTMLMediaElement::):

        * html/HTMLSourceElement.cpp:
        (WebCore::HTMLSourceElement::HTMLSourceElement): Initialize timer related variables.
        (WebCore::HTMLSourceElement::scheduleErrorEvent): New, start one-shot timer to fire an error
        event ASAP.
        (WebCore::HTMLSourceElement::cancelPendingErrorEvent): New, cancel pending error event.
        (WebCore::HTMLSourceElement::errorEventTimerFired): New, fire error event if it has not been
        cancelled.
        * html/HTMLSourceElement.h:

        * html/MediaError.h:
        (WebCore::MediaError::): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
        * html/MediaError.idl: Ditto

2009-05-08  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=25627
        Bug 25627: HTMLMediaElement: some errors should fire on <source> elements

        Update tests for MEDIA_ERR_NONE_SUPPORTED change to MEDIA_ERR_SRC_NOT_SUPPORTED.
        Add video-source-error.html to test errors fired on <source> elements .

        * media/media-constants-expected.txt:
        * media/media-constants.html:
        * media/unsupported-rtsp.html:
        * media/video-error-does-not-exist.html:
        * media/video-source-error.html: Added.
        * media/video-src-change.html:
        * media/video-src-invalid-remove.html:
        * media/video-src-plus-source.html:

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

11 years ago2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
kov@webkit.org [Fri, 8 May 2009 15:56:43 +0000 (15:56 +0000)]
2009-05-06  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        Disable new test that is failing.

        * platform/gtk/Skipped:

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

11 years ago2009-05-08 Cameron Zwarich <cwzwarich@uwaterloo.ca>
cwzwarich@webkit.org [Fri, 8 May 2009 15:08:41 +0000 (15:08 +0000)]
2009-05-08  Cameron Zwarich  <cwzwarich@uwaterloo.ca>

        Reviewed by Maciej Stachowiak.

        Add a new opcode jnlesseq, and optimize its compilation in the JIT using
        techniques similar to what were used to optimize jnless in r43363.

        This gives a 0.7% speedup on SunSpider, particularly on the tests 3d-cube,
        control-flow-recursive, date-format-xparb, and string-base64.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dump): Add support for dumping op_jnlesseq.
        * bytecode/Opcode.h: Add op_jnlesseq to the list of opcodes.
        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::emitJumpIfFalse): Add a peephole optimization
        for op_jnlesseq when emitting lesseq followed by a jump.
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::privateExecute): Add case for op_jnlesseq.
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass): Add case for op_jnlesseq.
        (JSC::JIT::privateCompileSlowCases): Add case for op_jnlesseq.
        * jit/JIT.h:
        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArith_op_jnlesseq): Added.
        (JSC::JIT::compileFastArithSlow_op_jnlesseq): Added.
        * jit/JITStubs.cpp:
        (JSC::JITStubs::cti_op_jlesseq): Added.
        * jit/JITStubs.h:

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

11 years agoWebCore:
mitz@apple.com [Fri, 8 May 2009 13:42:59 +0000 (13:42 +0000)]
WebCore:

        Reviewed by Maciej Stachowiak.

        - fix <rdar://problem/6859955> Undoing typed text after selecting all
          leaves non-text areas highlighted

        Test: fast/repaint/selection-clear.html

        When RenderView::clearSelection() is called from
        SelectionController::nodeWillBeRemoved(), selected renderers may already
        be marked for layout, which means that they can no longer compute
        their selection repaint info. Instead, an empty IntRect (or GapRects) is
        returned, leading to incomplete repaint.

        The fix is not to rely on individual renderers when clearing the
        selection, but instead, cache the bounding rectangle of the selected
        blocks' GapRects when setting the selection, and invalidate that
        entire rectangle when clearing it.

        * rendering/RenderView.cpp:
        (WebCore::RenderView::setSelection): Added a parameter saying whether
        the repainting of selected blocks should include both
        previously-selected areas and newly-selected areas or only
        newly-selected areas. The default is both. Also compute
        m_cachedSelectionBounds to be the bounding rectangle of the
        new selection's BlockSelectionInfos' GapRects.
        (WebCore::RenderView::clearSelection): Repaint m_cachedSelectionBounds,
        and tell setSelection() that it should not paint areas that were in
        the old selection's BlockSelectionInfos' GapRects.
        * rendering/RenderView.h:
        (WebCore::RenderView::):

LayoutTests:

        Reviewed by Maciej Stachowiak.

        - test for <rdar://problem/6859955> Undoing typed text after selecting
          all leaves non-text areas highlighted

        * fast/repaint/selection-clear.html: Added.
        * platform/mac/fast/repaint/selection-clear-expected.checksum: Added.
        * platform/mac/fast/repaint/selection-clear-expected.png: Added.
        * platform/mac/fast/repaint/selection-clear-expected.txt: Added.

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

11 years ago2009-05-08 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 8 May 2009 13:19:49 +0000 (13:19 +0000)]
2009-05-08  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Cameron Zwarich.

        - fix test failures on 64-bit

        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_jnless): Avoid accidentaly treating an
        immediate int as an immediate float in the 64-bit value representation.

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

11 years ago Reviewed by Maciej Stachowiak.
ap@webkit.org [Fri, 8 May 2009 12:58:22 +0000 (12:58 +0000)]
    Reviewed by Maciej Stachowiak.

        <rdar://problem/6868773> NPN_GetAuthenticationInfo does not work with non-permanent credentials

WebCore:
        * WebCore.base.exp:
        * platform/network/mac/AuthenticationMac.h:
        (WebCore::WebCoreCredentialStorage::set):
        (WebCore::WebCoreCredentialStorage::get):
        * platform/network/mac/AuthenticationMac.mm:
        * platform/network/mac/ResourceHandleMac.mm:
        Moved WebCoreCredentialStorage to AuthenticationMac, so that it could be used from WebKit.

WebKit:
        * Plugins/WebBaseNetscapePluginView.mm: (WebKit::getAuthenticationInfo): Ask WebCore for
        credentials first (but also ask NSURLCredentialStorage, because WebCore won't know about
        permanent credentials).

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

11 years ago2009-05-08 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 8 May 2009 11:30:32 +0000 (11:30 +0000)]
2009-05-08  Gavin Barraclough  <barraclough@apple.com>

        Rubber stamped by Oliver Hunt.

        Removing an empty constructor and an uncalled, empty function seems to be a
        pretty solid 1% regeression on my machine, so I'm going to put them back.
        Um.  Yeah, this this pretty pointles and makes no sense at all.  I officially
        lose the will to live in 3... 2...

        * bytecode/SamplingTool.cpp:
        (JSC::SamplingTool::notifyOfScope):
        * bytecode/SamplingTool.h:
        (JSC::SamplingTool::~SamplingTool):

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

11 years ago2009-05-08 Jedrzej Nowacki <jedrzej.nowacki@nokia.com>
hausmann@webkit.org [Fri, 8 May 2009 10:23:58 +0000 (10:23 +0000)]
2009-05-08  Jedrzej Nowacki  <jedrzej.nowacki@nokia.com>

        Reviewed by Simon Hausmann.

        Fix the Qt build, add missing JSC_HOST_CALL macros to the runtime
        call methods.

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

11 years ago2009-05-08 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 8 May 2009 10:18:34 +0000 (10:18 +0000)]
2009-05-08  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver "I see lots of ifdefs" Hunt.

        Fix (kinda) for sampling tool breakage.  The codeblock sampling tool has become
        b0rked due to recent changes in native function calling.  The initialization of
        a ScopeNode appears to now occur before the sampling tool (or possibly the
        interpreter has been brought into existence, wihich leads to crashyness).

        This patch doesn't fix the problem.  The crash occurs when tracking a Scope, but
        we shouldn't need to track scopes when we're just sampling opcodes, not
        codeblocks.  Not retaining Scopes when just opcode sampling will reduce sampling
        overhead reducing any instrumentation skew, which is a good thing.  As a side
        benefit this patch also gets the opcode sampling going again, albeit in a bit of
        a lame way.  Will come back later with a proper fix from codeblock sampling.

        * JavaScriptCore.exp:
        * bytecode/SamplingTool.cpp:
        (JSC::compareLineCountInfoSampling):
        (JSC::SamplingTool::dump):
        * bytecode/SamplingTool.h:
        (JSC::SamplingTool::SamplingTool):
        * parser/Nodes.cpp:
        (JSC::ScopeNode::ScopeNode):

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

11 years ago2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Fri, 8 May 2009 08:20:59 +0000 (08:20 +0000)]
2009-05-08  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Mark Rowe.

        Add missing strings to localizedStrings.js
        https://bugs.webkit.org/show_bug.cgi?id=25635

        Add the strings "Delete", "Key", "Refresh" and "Value".

        * English.lproj/localizedStrings.js:

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

11 years ago2009-05-08 Robert Hogan <robert@roberthogan.net>
ap@webkit.org [Fri, 8 May 2009 07:58:08 +0000 (07:58 +0000)]
2009-05-08  Robert Hogan  <robert@roberthogan.net>

        Reviewed, tweaked and landed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=24992
        [Qt] crash at http://browserspy.dk/browser.php

        This cannot be easily tested in DRT, because it relies on interaction with QApplication,
        but the added assertions guard against re-introducing this issue.

        * loader/FrameLoader.cpp: (WebCore::FrameLoader::didOpenURL): Don't make client calls
        while the frame is being constructed, because the intermediate state without a document
        is something we don't want to expose.

        * page/Frame.cpp:
        (WebCore::Frame::setJSStatusBarText): Assert that the frame has a document, which is an
        approximation of it being in a consistent state for client calls.
        (WebCore::Frame::setJSDefaultStatusBarText): Ditto.

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

11 years agoFix <https://bugs.webkit.org/show_bug.cgi?id=25640>.
mrowe@apple.com [Fri, 8 May 2009 06:47:19 +0000 (06:47 +0000)]
Fix <https://bugs.webkit.org/show_bug.cgi?id=25640>.
Bug 25640: Crash on quit in r43384 nightly build on Leopard w/ Safari 4 beta installed

Rubber-stamped by Oliver Hunt.

Roll out r43366 as it removed symbols that Safari 4 Beta uses.

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

11 years agoWebCore:
xan@webkit.org [Fri, 8 May 2009 06:18:05 +0000 (06:18 +0000)]
WebCore:

2009-05-08  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Gustavo Noronha.

        Unify scrolling code via adjustments and keys. Use the WebCore
        defined constants, since that's what people are most used to at
        this point.

        * platform/gtk/ScrollViewGtk.cpp:
        (WebCore::ScrollView::platformHandleHorizontalAdjustment):
        (WebCore::ScrollView::platformHandleVerticalAdjustment):

WebKit/gtk:

2009-05-08  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Gustavo Noronha.

        Unify scrolling code via adjustments and keys. Use the WebCore
        defined constants, since that's what people are most used to at
        this point.

        * ChangeLog:
        * webkit/webkitwebview.cpp:
        (webkit_web_view_real_move_cursor):

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

11 years agoWebCore:
levin@chromium.org [Fri, 8 May 2009 05:58:45 +0000 (05:58 +0000)]
WebCore:

2009-05-07  David Levin  <levin@chromium.org>

        Reviewed by NOBODY.
        Suggested by Oliver Hunt.

        Rolling back http://trac.webkit.org/changeset/43385
        because we have to use mac artwork for the underline on OSX.

        * platform/graphics/cg/GraphicsContextCG.cpp:
        * platform/graphics/mac/GraphicsContextMac.mm:
        (WebCore::createPatternColor):
        (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
        * platform/graphics/win/GraphicsContextCGWin.cpp:
        (WebCore::setCGStrokeColor):
        (WebCore::spellingPatternColor):
        (WebCore::grammarPatternColor):
        (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):

LayoutTests:

2009-05-07  David Levin  <levin@chromium.org>

        Reviewed by NOBODY.
        Suggested by Oliver Hunt.

        Rolling back http://trac.webkit.org/changeset/43385
        because we have to use mac artwork for the underline on OSX.

        * platform/mac/editing/spelling/inline_spelling_markers-expected.checksum:
        * platform/mac/editing/spelling/inline_spelling_markers-expected.png:
        * platform/mac/editing/spelling/spellcheck-attribute-expected.checksum:
        * platform/mac/editing/spelling/spellcheck-attribute-expected.png:
        * platform/mac/editing/spelling/spelling-expected.checksum:
        * platform/mac/editing/spelling/spelling-expected.png:
        * platform/mac/editing/spelling/spelling-linebreak-expected.checksum:
        * platform/mac/editing/spelling/spelling-linebreak-expected.png:

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

11 years agoWebCore:
levin@chromium.org [Fri, 8 May 2009 05:13:24 +0000 (05:13 +0000)]
WebCore:

2009-05-07  John Grabowski  <jrg@chromium.org>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=25573
        Unify use of CG-common routine for drawLineForMisspellingOrBadGrammar.
        Cleanup for WebKit, but required for Chromium happiness.

        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::spellingPatternColor):
        (WebCore::grammarPatternColor):
        (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
        * platform/graphics/mac/GraphicsContextMac.mm:
        * platform/graphics/win/GraphicsContextCGWin.cpp:

LayoutTests:

2009-05-07  John Grabowski  <jrg@chromium.org>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=25573
        Rebaseline of spelling tests for Mac.  Tests pass even without this
        change but checksums don't match.  Non-Mac does not need a new baseline.

        * platform/mac/editing/spelling/inline_spelling_markers-expected.checksum:
        * platform/mac/editing/spelling/inline_spelling_markers-expected.png:
        * platform/mac/editing/spelling/spellcheck-attribute-expected.checksum:
        * platform/mac/editing/spelling/spellcheck-attribute-expected.png:
        * platform/mac/editing/spelling/spelling-expected.checksum:
        * platform/mac/editing/spelling/spelling-expected.png:
        * platform/mac/editing/spelling/spelling-linebreak-expected.checksum:
        * platform/mac/editing/spelling/spelling-linebreak-expected.png:

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

11 years ago2009-05-07 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Fri, 8 May 2009 03:04:03 +0000 (03:04 +0000)]
2009-05-07  Gustavo Noronha Silva  <gns@gnome.org>

        Suggested by Oliver Hunt.

        Also check for Linux for the special-cased calling convention.

        * jit/JIT.cpp:
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * wtf/Platform.h:

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

11 years ago2009-05-07 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 8 May 2009 01:58:47 +0000 (01:58 +0000)]
2009-05-07  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Maciej Stachowiak.

        Previously, when appending to an existing string and growing the underlying buffer,
        we would actually allocate 110% of the required size in order to give us some space
        to expand into.  Now we treat strings differently based on their size:

        Small Strings (up to 4 pages):
        Expand the allocation size to 112.5% of the amount requested.  This is largely sicking
        to our previous policy, however 112.5% is cheaper to calculate.

        Medium Strings (up to 128 pages):
        For pages covering multiple pages over-allocation is less of a concern - any unused
        space will not be paged in if it is not used, so this is purely a VM overhead.  For
        these strings allocate 2x the requested size.

        Large Strings (to infinity and beyond!):
        Revert to our 112.5% policy - probably best to limit the amount of unused VM we allow
        any individual string be responsible for.

        Additionally, round small allocations up to a multiple of 16 bytes, and medium and
        large allocations up to a multiple of page size.

        ~1.5% progression on Sunspider, due to 5% improvement on tagcloud & 15% on validate.

        * runtime/UString.cpp:
        (JSC::expandedSize):

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 8 May 2009 01:42:06 +0000 (01:42 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Fixed a minor sequencing error introduced by recent Parser speedups.

        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::createNativeThunk): Missed a spot in my last patch.

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

11 years agoWebCore:
darin@apple.com [Fri, 8 May 2009 01:31:45 +0000 (01:31 +0000)]
WebCore:

2009-05-07  Darin Adler  <darin@apple.com>

        Reviewed by Simon Fraser.

        Bug 25575: Registered mutation event listener crashes HTMLMediaElement
        https://bugs.webkit.org/show_bug.cgi?id=25575

        Test: fast/media/video-controls-with-mutation-event-handler.html

        * rendering/MediaControlElements.cpp:
        (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Don't call setAttribute.
        * rendering/RenderMedia.cpp:
        (WebCore::RenderMedia::createTimeline): Call setAttribute here.

LayoutTests:

2009-05-07  Darin Adler  <darin@apple.com>

        Reviewed by Simon Fraser.

        Bug 25575: Registered mutation event listener crashes HTMLMediaElement
        https://bugs.webkit.org/show_bug.cgi?id=25575

        * fast/media/video-controls-with-mutation-event-handler-expected.txt: Added.
        * fast/media/video-controls-with-mutation-event-handler.html: Added.

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

11 years ago2009-05-07 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 8 May 2009 01:23:32 +0000 (01:23 +0000)]
2009-05-07  Simon Fraser  <simon.fraser@apple.com>

        Rubber Stamped by Dave Hyatt

        Shuffle the data members to minimize padding.

        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::RenderTableSection):
        * rendering/RenderTableSection.h:

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

11 years ago2009-05-07 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 8 May 2009 01:23:27 +0000 (01:23 +0000)]
2009-05-07  Simon Fraser  <simon.fraser@apple.com>

        Rubber Stamped by Dave Hyatt

        Shuffle the data members to make Events 8 bytes smaller in 64-bit.

        * dom/Event.cpp:
        (WebCore::Event::Event):
        * dom/Event.h:

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

11 years agoWebCore:
bdakin@apple.com [Fri, 8 May 2009 00:16:35 +0000 (00:16 +0000)]
WebCore:

2009-05-07  Eric Seidel  <eric@webkit.org>

        Reviewed by Beth Dakin.

        Fix regression caused by r41469, add test case to prevent it from
        happening again.
        https://bugs.webkit.org/show_bug.cgi?id=25252

        hasLayer() was true during removeOnlyThisLayer()/
        updateLayerPositions()
        which caused updateLayerPosition()'s walk up the render tree to
        include offsets from the layer we were about to remove.

        I'm not 100% convinced that this wasn't a bug in
        updateLayerPosition() or in RenderBoxModelObject::styleDidChange,
        because the layer in question is not the containing block for the
        block which gets laid out wrong. But this restores the previous
        behavior and adds a test.  So the next time someone is in here re-
        factoring, they will at least know if they break something.

        Test: fast/layers/remove-only-this-layer-update.html

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::destroyLayer):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::removeOnlyThisLayer):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::destroy):
        * rendering/RenderWidget.cpp:
        (WebCore::RenderWidget::destroy):

LayoutTests:

2009-05-07  Eric Seidel  <eric@webkit.org>

        Reviewed by Beth Dakin.

        Fix regression caused by r41469, add test case to prevent it from
        happening again.
        https://bugs.webkit.org/show_bug.cgi?id=25252

        * fast/layers/remove-only-this-layer-update.html: Added.
        * platform/mac/fast/layers/remove-only-this-layer-update-expected.checksum: Added.
        * platform/mac/fast/layers/remove-only-this-layer-update-expected.png: Added.
        * platform/mac/fast/layers/remove-only-this-layer-update-expected.txt: Added.

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 8 May 2009 00:02:45 +0000 (00:02 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Not reviewed.

        * wtf/Platform.h: Reverted an accidental (and performance-catastrophic)
        change.

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 8 May 2009 00:01:19 +0000 (00:01 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Fixed a minor sequencing error introduced by recent Parser speedups.

        * parser/Parser.cpp:
        (JSC::Parser::reparseInPlace): Missed a spot in my last patch.

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Thu, 7 May 2009 23:51:12 +0000 (23:51 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Fixed a minor sequencing error introduced by recent Parser speedups.

        * parser/Parser.cpp:
        (JSC::Parser::parse):
        * parser/Parser.h:
        (JSC::Parser::parse):
        (JSC::Parser::reparse): Shrink the parsedObjects vector after allocating
        the root node, to avoid leaving a stray node in the vector, since that's
        a slight memory leak, and it causes problems during JSGlobalData teardown.

        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::~JSGlobalData): ASSERT that we're not being torn
        down while we think we're still parsing, since that would cause lots of
        bad memory references during our destruction.

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Thu, 7 May 2009 23:33:00 +0000 (23:33 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Replaced two more macros with references to the JITStackFrame structure.

        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        * jit/JITInlineMethods.h:
        (JSC::JIT::restoreArgumentReference):
        * jit/JITStubs.cpp:
        (JSC::):
        * jit/JITStubs.h:

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

11 years ago2009-05-07 Dmitry Titov <dimich@chromium.org>
dimich@chromium.org [Thu, 7 May 2009 23:11:37 +0000 (23:11 +0000)]
2009-05-07  Dmitry Titov  <dimich@chromium.org>

        Attempt to fix GTK build.

        * platform/graphics/GlyphPageTreeNode.h: add #include <string.h> to ensure memcpy and memset are defined.

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

11 years agoImprove native call performance
oliver@apple.com [Thu, 7 May 2009 22:52:19 +0000 (22:52 +0000)]
Improve native call performance

Reviewed by Gavin Barraclough.

Fix the windows build by adding calling convention declarations everywhere,
chose fastcall as that seemed most sensible given we were having to declare
the convention explicitly.  In addition switched to fastcall on mac in the
deluded belief that documented fastcall behavior on windows would match
actual its actual behavior.

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Thu, 7 May 2009 22:26:29 +0000 (22:26 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Not reviewed.

        Rolled out a portion of r43352 because it broke 64bit.

        * jit/JITStubs.h:

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

11 years ago2009-05-07 Dmitry Titov <dimich@chromium.org>
dimich@chromium.org [Thu, 7 May 2009 22:25:06 +0000 (22:25 +0000)]
2009-05-07  Dmitry Titov  <dimich@chromium.org>

        Attempt to fix Win build.

        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_jnless):

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

11 years agoBuild fix for functions reaturning ThreadIdentifier.
kevino@webkit.org [Thu, 7 May 2009 22:21:13 +0000 (22:21 +0000)]
Build fix for functions reaturning ThreadIdentifier.

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

11 years ago2009-05-07 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Thu, 7 May 2009 22:07:25 +0000 (22:07 +0000)]
2009-05-07  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by John Honeycutt.

        - enable optimization case im the last patch that I accidentally had disabled.

        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArithSlow_op_jnless):

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

11 years agoReviewed by Dave Hyatt.
zimmermann@webkit.org [Thu, 7 May 2009 21:43:11 +0000 (21:43 +0000)]
Reviewed by Dave Hyatt.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=25617

Fix memory/performance regression because of too much form control related abstraction just for WMLs sake.

Remove FormControlElement and FormControlElementWithState base classes, as the overhead is too high for the
gain. HTML has no benefit of that kind of abstraction, so we're going to move the functionality to Element directly.

The functions now living in FormControlElement(WithState) lived in Node/Element/HTMLFormControlElement before.
This patches moves all of them in a central place in Element.h, as virtual functions with an inline default implementation.
To avoid confusion like isEnabled() living on Node, before the creation of the FormControlElement abstraction layer, all
methods are renamed to clarify where they belong to. (Detailed list in ChangeLog)

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

11 years agoJavaScriptCore:
dimich@chromium.org [Thu, 7 May 2009 21:24:36 +0000 (21:24 +0000)]
JavaScriptCore:

2009-05-07  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov and Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=25348
        Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.

        * wtf/Threading.h:
        (WTF::ThreadIdentifier::ThreadIdentifier):
        (WTF::ThreadIdentifier::isValid):
        (WTF::ThreadIdentifier::invalidate):
        (WTF::ThreadIdentifier::platformId):
        ThreadIdentifier is now a class, containing a PlatformThreadIdentifier and
        methods that are used across the code on thread ids: construction, comparisons,
        check for 'valid' state etc. '0' is used as invalid id, which happens to just work
        with all platform-specific thread id implementations.

        All the following files repeatedly reflect the new ThreadIdentifier for each platform.
        We remove ThreadMap and threadMapMutex from all of them, remove the functions that
        populated/searched/cleared the map and add platform-specific comparison operators
        for ThreadIdentifier.

        * wtf/gtk/ThreadingGtk.cpp:
        (WTF::ThreadIdentifier::operator==):
        (WTF::ThreadIdentifier::operator!=):
        (WTF::initializeThreading):
        (WTF::createThreadInternal):
        (WTF::waitForThreadCompletion):
        (WTF::currentThread):

        * wtf/ThreadingNone.cpp:
        (WTF::ThreadIdentifier::operator==):
        (WTF::ThreadIdentifier::operator!=):

        * wtf/ThreadingPthreads.cpp:
        (WTF::ThreadIdentifier::operator==):
        (WTF::ThreadIdentifier::operator!=):
        (WTF::initializeThreading):
        (WTF::createThreadInternal):
        (WTF::waitForThreadCompletion):
        (WTF::detachThread):
        (WTF::currentThread):

        * wtf/qt/ThreadingQt.cpp:
        (WTF::ThreadIdentifier::operator==):
        (WTF::ThreadIdentifier::operator!=):
        (WTF::initializeThreading):
        (WTF::createThreadInternal):
        (WTF::waitForThreadCompletion):
        (WTF::currentThread):

        * wtf/ThreadingWin.cpp:
        (WTF::ThreadIdentifier::operator==):
        (WTF::ThreadIdentifier::operator!=):
        (WTF::initializeThreading):
        (WTF::createThreadInternal): All the platforms (except Windows) used a sequential
        counter as a thread ID and mapped it into platform ID. Windows was using native thread
        id and mapped it into thread handle. Since we can always obtain a thread handle
        by thread id, createThread now closes the handle.
        (WTF::waitForThreadCompletion): obtains another one using OpenThread(id) API. If can not obtain a handle,
        it means the thread already exited.
        (WTF::detachThread):
        (WTF::currentThread):
        (WTF::detachThreadDeprecated): old function, renamed (for Win Safari 4 beta which uses it for now).
        (WTF::waitForThreadCompletionDeprecated): same.
        (WTF::currentThreadDeprecated): same.
        (WTF::createThreadDeprecated): same.

        * bytecode/SamplingTool.h:
        * bytecode/SamplingTool.cpp: Use DEFINE_STATIC_LOCAL for a static ThreadIdentifier variable, to avoid static constructor.

        * JavaScriptCore.exp: export lists - updated the WTF threading functions decorated names
        since they now take a different type as a parameter.
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: ditto for Windows, plus added "deprecated" functions
        that take old parameter type - turns out public beta of Safari 4 uses those, so they need to be kept along for a while.
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def: ditto.

WebCore:

2009-05-07  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov and Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=25348
        Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.

        Most of the change is in WTF.
        Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
        method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
        is now a class rather then an integer.
        Also, there is no need to initialize threadID in constructors to 0 now.

        * dom/XMLTokenizerLibxml2.cpp:
        (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id,
        since now ThreadIdentifier needs construction and we avoid having global initializers.
        (WebCore::matchFunc): use the new accessor function.
        (WebCore::openFunc): ditto.
        (WebCore::createStringParser): ditto.
        (WebCore::createMemoryParser): ditto.
        * loader/icon/IconDatabase.cpp:
        (WebCore::IconDatabase::open):
        * platform/sql/SQLiteDatabase.cpp:
        (WebCore::SQLiteDatabase::SQLiteDatabase):
        (WebCore::SQLiteDatabase::close):
        * storage/DatabaseThread.cpp:
        (WebCore::DatabaseThread::start):
        (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
        * storage/LocalStorageThread.cpp:
        (WebCore::LocalStorageThread::start):
        (WebCore::LocalStorageThread::scheduleImport):
        (WebCore::LocalStorageThread::scheduleSync):
        (WebCore::LocalStorageThread::terminate):
        * workers/WorkerThread.cpp:
        (WebCore::WorkerThread::start):
        (WebCore::WorkerThread::WorkerThread):
        (WebCore::WorkerThread::start):

WebKit/win:

2009-05-07  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov and Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=25348
        Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.

        Most of the change is in WTF and WebCore.

        * WebKit.vcproj/WebKit.def: replaced decorated names of WTF threading functions with new ones.
        Also, aliased the old implementations so the public Safari 4 beta can load the old WTF functions
        which it uses. Next time Safari 4 builds, it will pick up new functions and the deprecated ones
        can be removed.
        * WebKit.vcproj/WebKit_debug.def: same.

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

11 years ago2009-05-07 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 7 May 2009 21:21:45 +0000 (21:21 +0000)]
2009-05-07  Simon Fraser  <simon.fraser@apple.com>

        Rubber Stamped by Dave Hyatt

        Shuffle the data members to minimize padding.

        * dom/ClassNames.h:

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

11 years ago2009-05-07 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 7 May 2009 21:10:34 +0000 (21:10 +0000)]
2009-05-07  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler

        <rdar://problem/6864062> Shrink GlyphPage from 4112 to 2576 bytes in 64-bit
        https://bugs.webkit.org/show_bug.cgi?id=25605

        Shrink GlyphPage by splitting the array of GlyphData, which has lots
        of padding, into separate Glyph and SimpleFontData* arrays.

        * platform/graphics/Font.h:
        glyphDataForCharacter has to return a GlyphData by value now.

        * platform/graphics/FontFastPath.cpp:
        (WebCore::Font::glyphDataForCharacter):
        Return GlyphData by value.

        * platform/graphics/GlyphPageTreeNode.cpp:
        (WebCore::GlyphPageTreeNode::initializePage):
        Better encapsulation of GlyphPage, using the new methods.

        * platform/graphics/Font.h:
        * platform/graphics/FontFastPath.cpp:
        (WebCore::Font::glyphDataForCharacter):
        * platform/graphics/GlyphPageTreeNode.cpp:
        (WebCore::GlyphPageTreeNode::initializePage):
        * platform/graphics/GlyphPageTreeNode.h:
        (WebCore::GlyphData::GlyphData):
        (WebCore::GlyphPage::indexForCharacter):
        (WebCore::GlyphPage::glyphDataForCharacter):
        (WebCore::GlyphPage::glyphDataForIndex):
        (WebCore::GlyphPage::glyphAt):
        (WebCore::GlyphPage::fontDataForCharacter):
        (WebCore::GlyphPage::setGlyphDataForCharacter):
        (WebCore::GlyphPage::setGlyphDataForIndex):
        (WebCore::GlyphPage::copyFrom):
        (WebCore::GlyphPage::clear):

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

11 years ago2009-05-07 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Thu, 7 May 2009 20:42:59 +0000 (20:42 +0000)]
2009-05-07  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Sam Weinig.

        - optimize various cases of branch-fused less

        1% speedup on SunSpider overall
        13% speedup on math-cordic

        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        op_loop_if_less: Optimize case of constant as first operand, just as case of constant as
        second operand.
        op_jnless: Factored out into compileFastArith_op_jnless.
        (JSC::JIT::privateCompileSlowCases):
        op_jnless: Factored out into compileFastArithSlow_op_jnless.
        * jit/JIT.h:
        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArith_op_jnless): Factored out from main compile loop.
        - Generate inline code for comparison of constant immediate int as first operand to another
        immediate int, as for loop_if_less

        (JSC::JIT::compileFastArithSlow_op_jnless):
        - Generate inline code for comparing two floating point numbers.
        - Generate code for both cases of comparing a floating point number to a constant immediate
        int.
        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dump): Fix dumping of op_jnless (tangentially related bugfix).

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

11 years ago2009-05-07 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Thu, 7 May 2009 20:22:55 +0000 (20:22 +0000)]
2009-05-07  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Added the return address of a stub function to the JITStackFrame abstraction.

        * jit/JIT.cpp:
        * jit/JIT.h:
        * jit/JITStubs.cpp:
        (JSC::):
        (JSC::StackHack::StackHack):
        (JSC::StackHack::~StackHack):
        (JSC::returnToThrowTrampoline):
        (JSC::JITStubs::cti_op_convert_this):
        (JSC::JITStubs::cti_op_end):
        (JSC::JITStubs::cti_op_add):
        (JSC::JITStubs::cti_op_pre_inc):
        (JSC::JITStubs::cti_timeout_check):
        (JSC::JITStubs::cti_register_file_check):
        (JSC::JITStubs::cti_op_loop_if_less):
        (JSC::JITStubs::cti_op_loop_if_lesseq):
        (JSC::JITStubs::cti_op_new_object):
        (JSC::JITStubs::cti_op_put_by_id_generic):
        (JSC::JITStubs::cti_op_get_by_id_generic):
        (JSC::JITStubs::cti_op_put_by_id):
        (JSC::JITStubs::cti_op_put_by_id_second):
        (JSC::JITStubs::cti_op_put_by_id_fail):
        (JSC::JITStubs::cti_op_get_by_id):
        (JSC::JITStubs::cti_op_get_by_id_second):
        (JSC::JITStubs::cti_op_get_by_id_self_fail):
        (JSC::JITStubs::cti_op_get_by_id_proto_list):
        (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
        (JSC::JITStubs::cti_op_get_by_id_proto_fail):
        (JSC::JITStubs::cti_op_get_by_id_array_fail):
        (JSC::JITStubs::cti_op_get_by_id_string_fail):
        (JSC::JITStubs::cti_op_instanceof):
        (JSC::JITStubs::cti_op_del_by_id):
        (JSC::JITStubs::cti_op_mul):
        (JSC::JITStubs::cti_op_new_func):
        (JSC::JITStubs::cti_op_call_JSFunction):
        (JSC::JITStubs::cti_op_call_arityCheck):
        (JSC::JITStubs::cti_vm_dontLazyLinkCall):
        (JSC::JITStubs::cti_vm_lazyLinkCall):
        (JSC::JITStubs::cti_op_push_activation):
        (JSC::JITStubs::cti_op_call_NotJSFunction):
        (JSC::JITStubs::cti_op_create_arguments):
        (JSC::JITStubs::cti_op_create_arguments_no_params):
        (JSC::JITStubs::cti_op_tear_off_activation):
        (JSC::JITStubs::cti_op_tear_off_arguments):
        (JSC::JITStubs::cti_op_profile_will_call):
        (JSC::JITStubs::cti_op_profile_did_call):
        (JSC::JITStubs::cti_op_ret_scopeChain):
        (JSC::JITStubs::cti_op_new_array):
        (JSC::JITStubs::cti_op_resolve):
        (JSC::JITStubs::cti_op_construct_JSConstruct):
        (JSC::JITStubs::cti_op_construct_NotJSConstruct):
        (JSC::JITStubs::cti_op_get_by_val):
        (JSC::JITStubs::cti_op_get_by_val_string):
        (JSC::JITStubs::cti_op_get_by_val_byte_array):
        (JSC::JITStubs::cti_op_resolve_func):
        (JSC::JITStubs::cti_op_sub):
        (JSC::JITStubs::cti_op_put_by_val):
        (JSC::JITStubs::cti_op_put_by_val_array):
        (JSC::JITStubs::cti_op_put_by_val_byte_array):
        (JSC::JITStubs::cti_op_lesseq):
        (JSC::JITStubs::cti_op_loop_if_true):
        (JSC::JITStubs::cti_op_load_varargs):
        (JSC::JITStubs::cti_op_negate):
        (JSC::JITStubs::cti_op_resolve_base):
        (JSC::JITStubs::cti_op_resolve_skip):
        (JSC::JITStubs::cti_op_resolve_global):
        (JSC::JITStubs::cti_op_div):
        (JSC::JITStubs::cti_op_pre_dec):
        (JSC::JITStubs::cti_op_jless):
        (JSC::JITStubs::cti_op_not):
        (JSC::JITStubs::cti_op_jtrue):
        (JSC::JITStubs::cti_op_post_inc):
        (JSC::JITStubs::cti_op_eq):
        (JSC::JITStubs::cti_op_lshift):
        (JSC::JITStubs::cti_op_bitand):
        (JSC::JITStubs::cti_op_rshift):
        (JSC::JITStubs::cti_op_bitnot):
        (JSC::JITStubs::cti_op_resolve_with_base):
        (JSC::JITStubs::cti_op_new_func_exp):
        (JSC::JITStubs::cti_op_mod):
        (JSC::JITStubs::cti_op_less):
        (JSC::JITStubs::cti_op_neq):
        (JSC::JITStubs::cti_op_post_dec):
        (JSC::JITStubs::cti_op_urshift):
        (JSC::JITStubs::cti_op_bitxor):
        (JSC::JITStubs::cti_op_new_regexp):
        (JSC::JITStubs::cti_op_bitor):
        (JSC::JITStubs::cti_op_call_eval):
        (JSC::JITStubs::cti_op_throw):
        (JSC::JITStubs::cti_op_get_pnames):
        (JSC::JITStubs::cti_op_next_pname):
        (JSC::JITStubs::cti_op_push_scope):
        (JSC::JITStubs::cti_op_pop_scope):
        (JSC::JITStubs::cti_op_typeof):
        (JSC::JITStubs::cti_op_is_undefined):
        (JSC::JITStubs::cti_op_is_boolean):
        (JSC::JITStubs::cti_op_is_number):
        (JSC::JITStubs::cti_op_is_string):
        (JSC::JITStubs::cti_op_is_object):
        (JSC::JITStubs::cti_op_is_function):
        (JSC::JITStubs::cti_op_stricteq):
        (JSC::JITStubs::cti_op_to_primitive):
        (JSC::JITStubs::cti_op_strcat):
        (JSC::JITStubs::cti_op_nstricteq):
        (JSC::JITStubs::cti_op_to_jsnumber):
        (JSC::JITStubs::cti_op_in):
        (JSC::JITStubs::cti_op_push_new_scope):
        (JSC::JITStubs::cti_op_jmp_scopes):
        (JSC::JITStubs::cti_op_put_by_index):
        (JSC::JITStubs::cti_op_switch_imm):
        (JSC::JITStubs::cti_op_switch_char):
        (JSC::JITStubs::cti_op_switch_string):
        (JSC::JITStubs::cti_op_del_by_val):
        (JSC::JITStubs::cti_op_put_getter):
        (JSC::JITStubs::cti_op_put_setter):
        (JSC::JITStubs::cti_op_new_error):
        (JSC::JITStubs::cti_op_debug):
        (JSC::JITStubs::cti_vm_throw):
        * jit/JITStubs.h:
        (JSC::JITStackFrame::returnAddressSlot):

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