⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



May 9, 2009:

10:54 PM Changeset in webkit [43456] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Optimized a few more cases to use memory operands instead of loading
into registers.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
10:38 PM Changeset in webkit [43455] by ggaren@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Build fix.

  • jit/JIT.h:
  • jit/JITCode.h:
10:36 PM Changeset in webkit [43454] by ggaren@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


A little more opcode action.


Added a set8 and deployed it.


Optimized op_bitnot to do a bitnot directly in memory if possible.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::not32): (JSC::MacroAssemblerX86Common::set8):
  • assembler/X86Assembler.h: (JSC::X86Assembler::notl_m):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
10:21 PM Changeset in webkit [43453] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Rubber-stamped by Geoffrey Garen.

Merge over the new JITStubs implementation from ToT.

  • jit/JITStubs.cpp:
  • jit/JITStubs.h:
10:14 PM Changeset in webkit [43452] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Don't test for a slow case if the operand of an arithmetic op is
known to be an integer constant.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): (JSC::JIT::emitSub32): (JSC::JIT::emitMul32): (JSC::JIT::emitMod32): (JSC::JIT::emitBitAnd32): (JSC::JIT::emitBitOr32): (JSC::JIT::emitBitXor32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
10:04 PM Changeset in webkit [43451] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Geoffrey Garen and Mark Rowe.

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.

  • fast/dom/HTMLFormElement/adopt-assertion-expected.txt: Added.
  • fast/dom/HTMLFormElement/adopt-assertion.html: Added.
10:01 PM Changeset in webkit [43450] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Fixed accidental reversal of opcodes part 2.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::neg32):
9:27 PM Changeset in webkit [43449] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Fixed accidental reversal of opcodes.

  • assembler/X86Assembler.h: (JSC::X86Assembler::negl_r): (JSC::X86Assembler::notl_r):
9:23 PM Changeset in webkit [43448] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): Restored accidentally snipped out code from my last patch.
7:52 PM Changeset in webkit [43447] by ggaren@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Miscellaneous work on our existing opcodes.


Removed unnecessary load into register from mul32.


Fixed a bug where mod32 calculated the quotient instead of the remainder.


Fixed the debug build.


Added optimized cases for subtraction.


Established consistent naming of emitOp32[Details], removing cases of
emitOp[Details]32.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAdd32): (JSC::JIT::emitAdd32Constant): (JSC::JIT::emitSub32): (JSC::JIT::emitSub32ConstantLeft): (JSC::JIT::emitSub32ConstantRight): (JSC::JIT::emitSub32InPlaceLeft): (JSC::JIT::emitSub32InPlaceRight): (JSC::JIT::emitMul32): (JSC::JIT::emitMul32Constant): (JSC::JIT::emitMul32InPlace): (JSC::JIT::emitMod32): (JSC::JIT::emitBitAnd32): (JSC::JIT::emitBitAnd32Constant): (JSC::JIT::emitBitOr32): (JSC::JIT::emitBitOr32Constant): (JSC::JIT::emitBitXor32): (JSC::JIT::emitBitXor32Constant):
7:44 PM Changeset in webkit [43446] by ggaren@apple.com
  • 3 edits in trunk/LayoutTests

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:
7:28 PM Changeset in webkit [43445] by jmalonzo@webkit.org
  • 2 edits in trunk

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:
7:10 PM Changeset in webkit [43444] by jmalonzo@webkit.org
  • 4 edits in trunk

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:
6:13 PM Changeset in webkit [43443] by ggaren@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Cleaned up postfix ++/-- operators. 23% speedup in postfix operations.


The old code did an increment/decrement, and then stored to dst and srcDst,
dst getting the original value and srcDst getting the incremented value.
In order to pull that off, it needed to move a copy of the original
value to a second register, and do things in a generally inefficient
order. Instead, you can just store to dst before you do the increment.


Also fixed the build.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
3:41 PM Changeset in webkit [43442] by kevino@webkit.org
  • 5 edits in trunk

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

3:05 PM Changeset in webkit [43441] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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.
9:01 AM Changeset in webkit [43440] by kov@webkit.org
  • 2 edits in trunk/JavaScriptCore

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:
8:44 AM Changeset in webkit [43439] by kov@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Gustavo Noronha Silva <Gustavo Noronha Silva>

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:
8:14 AM Changeset in webkit [43438] by weinig@apple.com
  • 3 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Cleanup. Switch uses of known int immediate access from using low
level u.asBits.payload to using asInt32().

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITArithmetic.cpp: (JSC::JIT::emitAddConstant32): (JSC::JIT::emitSub32): (JSC::JIT::emitMulConstant32): (JSC::JIT::emitMod32): (JSC::JIT::emitBitAndConstant32): (JSC::JIT::emitBitOrConstant32): (JSC::JIT::emitBitXorConstant32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
7:38 AM Changeset in webkit [43437] by kov@webkit.org
  • 4 edits in trunk

Build fix, adding missing files to make dist.

2:26 AM Changeset in webkit [43436] by mitz@apple.com
  • 22 edits in trunk/LayoutTests

Correct the results from the previous patch

2:19 AM Changeset in webkit [43435] by mitz@apple.com
  • 22 edits in trunk/LayoutTests

Update Windows-specific layout test results for textarea intrinsic
margins following r43355

1:54 AM Changeset in webkit [43434] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Windows build fix.

  • assembler/X86Assembler.h: (JSC::X86Assembler::patchLoadToLEA):
1:49 AM Changeset in webkit [43433] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-09 Geoffrey Garen <ggaren@apple.com>

Windows build fix.

  • assembler/X86Assembler.h: (JSC::X86Assembler::patchLoadToLEA):
1:35 AM Changeset in webkit [43432] by mjs@apple.com
  • 12 edits in trunk/JavaScriptCore

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:
1:24 AM Changeset in webkit [43431] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

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::):
12:02 AM Changeset in webkit [43430] by weinig@apple.com
  • 4 edits in branches/nitro-extreme/JavaScriptCore

2009-05-09 Sam Weinig <sam@webkit.org>

Implement op_mod.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitMod32):

May 8, 2009:

11:12 PM Changeset in webkit [43429] by jmalonzo@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-08 Jan Michael Alonzo <jmalonzo@webkit.org>

Skip failing render tree test that was added in r43420.

  • platform/gtk/Skipped:
10:25 PM Changeset in webkit [43428] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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.
7:17 PM Changeset in webkit [43427] by jmalonzo@webkit.org
  • 4 edits in trunk/JavaScriptCore

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.

7:05 PM Changeset in webkit [43426] by Nikolas Zimmermann
  • 4 edits in trunk/LayoutTests

Rubber-stamped by George Staikos.
Update WML <input> layout test result, as input field metrics have changed recently.

6:34 PM Changeset in webkit [43425] by Nikolas Zimmermann
  • 2 edits in trunk/WebKit/mac

Not reviewed. Fix clean builds, forgot to land name() -> formControlName() rename patch in WebKit. Only landed the WebCore side.

6:01 PM Changeset in webkit [43424] by oliver@apple.com
  • 5 edits
    2 adds in trunk/JavaScriptCore

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.

5:51 PM Changeset in webkit [43423] by Simon Fraser
  • 2 edits in trunk/WebCore

2009-05-08 Simon Fraser <Simon Fraser>

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:
5:29 PM Changeset in webkit [43422] by Nikolas Zimmermann
  • 2 edits in trunk/WebCore

Not reviewed. Used sort-Xcode-project-file to sort the XCode project file - it hasn't been done for a while.

5:19 PM Changeset in webkit [43421] by weinig@apple.com
  • 2 edits in branches/nitro-extreme/JavaScriptCore

2009-05-08 Sam Weinig <sam@webkit.org>

Implement constant operand cases for op_sub, op_lshift and op_rshift.

  • jit/JITArithmetic.cpp: (JSC::JIT::emitSub32): (JSC::JIT::emitLeftShift32): (JSC::JIT::emitRightShift32):
4:49 PM Changeset in webkit [43420] by mitz@apple.com
  • 3 edits
    2 adds in trunk

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.
4:40 PM Changeset in webkit [43419] by Beth Dakin
  • 2 edits in trunk/WebCore

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):
3:53 PM Changeset in webkit [43418] by kevino@webkit.org
  • 2 edits in trunk/WebCore

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

3:49 PM Changeset in webkit [43417] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Fix memory leak for wxMac.

2:47 PM Changeset in webkit [43416] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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):
2:37 PM Changeset in webkit [43415] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

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:
2:37 PM Changeset in webkit [43414] by kov@webkit.org
  • 3 edits in trunk

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:
2:35 PM Changeset in webkit [43413] by Beth Dakin
  • 2 edits in trunk/WebCore

2009-05-08 Beth Dakin <Beth Dakin>

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):
2:12 PM Changeset in webkit [43412] by harrison@apple.com
  • 6 edits in trunk

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:
2:12 PM Changeset in webkit [43411] by timothy@apple.com
  • 4 edits in trunk

Versioning.

2:03 PM HackingGtk edited by amd@store20.com
Gtk+ uses libsoup backend instead of curl (diff)
1:53 PM Changeset in webkit [43410] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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):
1:51 PM Changeset in webkit [43409] by ggaren@apple.com
  • 9 edits in trunk/JavaScriptCore

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):
1:44 PM Changeset in webkit [43408] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disable more new tests that are failing.

  • platform/gtk/Skipped:
1:40 PM Changeset in webkit [43407] by timothy@apple.com
  • 2 edits in tags/Safari-6530.9/WebCore

Merge r43394.

1:20 PM Changeset in webkit [43406] by timothy@apple.com
  • 1 copy in tags/Safari-6530.9

New tag.

12:19 PM QtWebKitTodo edited by tonikitoo@gmail.com
(diff)
12:13 PM Changeset in webkit [43405] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

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:
12:08 PM Changeset in webkit [43404] by kov@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

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.
11:54 AM HackingGtk edited by kov@webkit.org
(diff)
11:37 AM Changeset in webkit [43403] by eric.carlson@apple.com
  • 15 edits
    2 adds in trunk

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:
8:56 AM Changeset in webkit [43402] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disable new test that is failing.

  • platform/gtk/Skipped:
8:08 AM Changeset in webkit [43401] by cwzwarich@webkit.org
  • 10 edits in trunk/JavaScriptCore

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:
6:42 AM Changeset in webkit [43400] by mitz@apple.com
  • 4 edits
    4 adds in trunk

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.
6:19 AM Changeset in webkit [43399] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

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.
5:58 AM Changeset in webkit [43398] by ap@webkit.org
  • 7 edits in trunk

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).
4:30 AM Changeset in webkit [43397] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

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):
3:23 AM Changeset in webkit [43396] by Simon Hausmann
  • 2 edits in trunk/WebCore

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.

3:18 AM Changeset in webkit [43395] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

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):
1:20 AM Changeset in webkit [43394] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

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:
12:58 AM Changeset in webkit [43393] by ap@webkit.org
  • 3 edits in trunk/WebCore

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.
Note: See TracTimeline for information about the timeline view.