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

Timeline



May 19, 2009:

9:32 PM Changeset in webkit [43888] by staikos@webkit.org
  • 7 edits in trunk/WebCore

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Add WCSS marquee extension support to Webkit
refer to the specification: WAP-239-WCSS-20011026-a.pdf


Since WCSS is the companion of XHTML Mobile Profile (XHTML MP),
this change depends on https://bugs.webkit.org/show_bug.cgi?id=23452

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

8:49 PM Changeset in webkit [43887] by staikos@webkit.org
  • 5 edits
    5 adds in trunk/LayoutTests

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Add tests for WCSS marquee extension support
https://bugs.webkit.org/show_bug.cgi?id=23727

8:31 PM Changeset in webkit [43886] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Windows build fix.

  • interpreter/RegisterFile.cpp: (JSC::RegisterFile::releaseExcessCapacity): Copy-paste typo.
8:25 PM Changeset in webkit [43885] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Reviewed by Sam Weinig.


Fixed <rdar://problem/6885680> CrashTracer: [USER] 1 crash in Install
Mac OS X at <unknown binary> • 0x9274241c


(Original patch by Joe Sokol and Ronnie Misra.)


SunSpider says 1.004x faster.

  • interpreter/RegisterFile.cpp: (JSC::RegisterFile::releaseExcessCapacity): Instead of doing complicated math that sometimes used to overflow, just release the full range of the register file.
  • interpreter/RegisterFile.h: (JSC::isPageAligned): (JSC::RegisterFile::RegisterFile): Added ASSERTs to verify that it's safe to release the full range of the register file.

(JSC::RegisterFile::shrink): No need to releaseExcessCapacity() if the
new end is not smaller than the old end. (Also, doing so used to cause
numeric overflow, unmapping basically the whole process from memory.)

8:02 PM Changeset in webkit [43884] by eric@webkit.org
  • 2 edits in trunk/BugsSite

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

Reviewed by Adam Roben.

Make PrettyPatch understand quoted filenames in git diffs.
https://bugs.webkit.org/show_bug.cgi?id=25881

  • PrettyPatch/PrettyPatch.rb:
7:33 PM Changeset in webkit [43883] by weinig@apple.com
  • 5 edits in branches/nitro-extreme/JavaScriptCore

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

Reviewed by Geoffrey Garen.

Implement and enable optimized calls.

  • jit/JIT.cpp: (JSC::JIT::privateCompileCTIMachineTrampolines): Add ENABLE(JIT_OPTIMIZE_CALL) guards around the the optimize call only trampolines (virtualCallPreLink and virtualCallLink). Update the trampolines to account for the new JSValue representation. (JSC::JIT::unlinkCall): Use NULL instead of JSValue noValue.
  • jit/JITCall.cpp: (JSC::JIT::compileOpCall): Update to account for the new JSValue representation (JSC::JIT::compileOpCallSlowCase): Ditto.
  • jit/JITStubs.h: Remove incorrect !ENABLE(JIT_OPTIMIZE_CALL) guard.
  • wtf/Platform.h: Enable ENABLE_JIT_OPTIMIZE_CALL.
7:02 PM Changeset in webkit [43882] by staikos@webkit.org
  • 5 edits in trunk/WebCore

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Add XHTMLMP support to Webkit
Update the configure files for building XHTMLMP-enabled WebKit on different platform
https://bugs.webkit.org/show_bug.cgi?id=23452

6:18 PM Changeset in webkit [43881] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

<rdar://problem/6888393> REGRESSION: Start Debugging JavaScript crashes browser (nightly builds only?)
<https://bugs.webkit.org/show_bug.cgi?id=25717>

RS=Mark Rowe.

Remove JSC_FAST_CALL as it wasn't gaining us anything, and was
resulting in weird bugs in the nightly builds.

5:44 PM Changeset in webkit [43880] by Antti Koivisto
  • 2 edits
    1 add
    1 delete in trunk

WebCore:

2009-05-19 Antti Koivisto <Antti Koivisto>

I can't figure out how to make this not timing dependent, making it manual test instead.

  • manual-tests/preload-scanner-entities.html: Added.

LayoutTests:

2009-05-19 Antti Koivisto <Antti Koivisto>

I can't figure out how to make this not timing dependent, making it manual test instead.

  • fast/tokenizer/preload-scanner-entities-expected.txt: Removed.
  • fast/tokenizer/preload-scanner-entities.html: Removed.
5:43 PM Changeset in webkit [43879] by Darin Adler
  • 1 edit
    1 move in trunk/LayoutTests

2009-05-19 Darin Adler <Darin Adler>

Renamed test failing on many buildbots to disable it.
Antti can move it back once he gets it working more consistently.

  • fast/tokenizer/preload-scanner-entities.html: Removed.
  • fast/tokenizer/preload-scanner-entities.html-disabled: Copied from fast/tokenizer/preload-scanner-entities.html.
4:41 PM Changeset in webkit [43878] by beidson@apple.com
  • 4 edits in trunk/WebCore

2009-05-19 Brady Eidson <beidson@apple.com>

Reviewed by Antti Koivisto.

<rdar://problem/6886382> REGRESSION (Safari 4PB -> ToT): HTTP cache revalidation broken.

This was caused in http://trac.webkit.org/changeset/41425, which fixed an image caching bug
in QuickLooks (rdar://problem/6619630).

We need to respect the DocumentLoader's request cache policy when deciding the cache policy
for subresources, but the check (originally removed in r39304 and added back in in the same
place in r41424) needs to be tweaked and relocated a bit.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::subresourceCachePolicy): Renamed from cachePolicy(). Move checking the DocumentLoader's request to a more appropriate place. Add code to handle the recently added FIXME regarding POSTs. Add a new FIXME describing a great way to make this code cleaner in the future.
  • loader/FrameLoader.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::cachePolicy): Calls the newly renamed subresourceCachePolicy().
3:31 PM Changeset in webkit [43877] by Chris Fleizach
  • 5 edits
    2 adds in trunk

Bug 25872: aria-labeledby appends all siblings instead of all children to aria name
https://bugs.webkit.org/show_bug.cgi?id=25872

2:57 PM Changeset in webkit [43876] by Antti Koivisto
  • 3 edits
    2 adds in trunk

WebCore:

2009-05-19 Antti Koivisto <Antti Koivisto>

Reviewed by Darin Adler).


<rdar://problem/6902674> REGRESSION: Query parameters are sometimes incorrect in URL (23135)


Push characters back in correct order when entity parsing fails after 3 characters.

Test: fast/tokenizer/preload-scanner-entities.html

  • html/PreloadScanner.cpp: (WebCore::PreloadScanner::consumeEntity):

LayoutTests:

2009-05-19 Antti Koivisto <Antti Koivisto>

Reviewed by Darin Adler.


<rdar://problem/6902674> REGRESSION: Query parameters are sometimes incorrect in URL (23135)

  • fast/tokenizer/preload-scanner-entities-expected.txt: Added.
  • fast/tokenizer/preload-scanner-entities.html: Added.
2:53 PM Changeset in webkit [43875] by weinig@apple.com
  • 12 edits in branches/nitro-extreme/JavaScriptCore

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

Reviewed by Geoffrey Garen.

Implement and enable optimized property access.

  • assembler/AbstractMacroAssembler.h: Fix comment.
  • jit/JIT.cpp: (JSC::JIT::privateCompileCTIMachineTrampolines): Remove array length trampoline and implement the string length trampoline.
  • jit/JIT.h: Add new constants for patch offsets.
  • jit/JITInlineMethods.h: Remove FIELD_OFFSET which is now in StdLibExtras.h.
  • jit/JITPropertyAccess.cpp: (JSC::JIT::emit_op_get_by_id): (JSC::JIT::emitSlow_op_get_by_id): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::emitSlow_op_put_by_id): (JSC::JIT::compilePutDirectOffset): (JSC::JIT::compileGetDirectOffset): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
  • jit/JITStubCall.h: (JSC::JITStubCall::addArgument): Add version of addArgument that takes two registers for the tag and payload.
  • jit/JITStubs.cpp: (JSC::JITStubs::JITStubs): Remove array length trampoline pointer. (JSC::JITStubs::cti_op_get_by_id_self_fail):
  • jit/JITStubs.h:
  • runtime/JSObject.h: (JSC::JSObject::JSObject): Move m_inheritorID below the property storage to align it to a 16 byte boundary.
  • wtf/Platform.h: Enable ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS
  • wtf/StdLibExtras.h: Move FIELD_OFFSET here.
2:13 PM Changeset in webkit [43874] by Dimitri Glazkov
  • 2 edits in trunk/WebCore

2009-05-19 Paul Godavari <paul@chromium.org>

Reviewed by Dimitri Glazkov.

Fix a crash in Mac Chromium when displaying an HTML select element
with no items.
https://bugs.webkit.org/show_bug.cgi?id=25874

  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupContainer::showExternal):
1:54 PM Changeset in webkit [43873] by kevino@webkit.org
  • 3 edits in trunk/WebKitTools

wxMSW build fixes for DRT.

1:53 PM Changeset in webkit [43872] by darin@chromium.org
  • 1 edit in trunk/WebCore/ChangeLog

Restore mistaken deletion of an entry in ChangeLog

1:51 PM Changeset in webkit [43871] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-05-19 Nate Chapin <japhet@google.com>

Reviewed by Darin Fisher.

Upstream V8 bindings for CanvasRenderingContext2D.
https://bugs.webkit.org/show_bug.cgi?id=25858

  • bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Moved bindings from v8_custom.cpp.
1:46 PM Changeset in webkit [43870] by mrowe@apple.com
  • 2 edits in trunk/WebCore

2009-05-19 Jessie Berlin <jberlin@apple.com>

Reviewed by Mark Rowe.

Windows Build Fix.

  • WebCore.vcproj/WebCore.vcproj: Copy accessibility headers from WebCore.
12:18 PM Changeset in webkit [43869] by timothy@apple.com
  • 5 edits in trunk

Add a new private API method that will dispatch pending loads that have been scheduled because of recent DOM additions or style changes.

<rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not loaded because willSendRequest doesn't happen immediately

WebCore:

2009-05-19 Timothy Hatcher <timothy@apple.com>

<rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not
loaded because willSendRequest doesn't happen immediately

Reviewed by Antti Koivisto.

  • WebCore.base.exp: Export Loader::servePendingRequests().

WebKit/mac:

2009-05-19 Timothy Hatcher <timothy@apple.com>

Add a new private API method that will dispatch pending loads that have been scheduled
because of recent DOM additions or style changes.

<rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not
loaded because willSendRequest doesn't happen immediately

Reviewed by Antti Koivisto.

  • WebView/WebView.mm: (-[WebView _dispatchPendingLoadRequests]): Call Loader::servePendingRequests().
  • WebView/WebViewPrivate.h: Added _dispatchPendingLoadRequests.
12:08 PM Changeset in webkit [43868] by levin@chromium.org
  • 2 edits in trunk/WebCore

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

Reviewed by Dimitri Glazkov.

Bug 25859: Need to upstream ScriptController.* for v8.
https://bugs.webkit.org/show_bug.cgi?id=25859

Fixing the header file (which I accidentally made identical to the cpp file).

  • bindings/v8/ScriptController.h:
11:54 AM Changeset in webkit [43867] by ap@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Adding a Radar URL.

11:14 AM Changeset in webkit [43866] by ap@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler and Brady Eidson.

REGRESSION (r42446?): UA Profiler in http://stevesouders.com/ua/ stalls

The problem was that Document::removeAllEventListeners() was called for a wrong document
when a CachedFrame was destroyed.

Cannot be tested automatically, because DRT doesn't have a b/f cache.

  • dom/Document.cpp: (WebCore::Document::domWindow): Make sure that this doesn't return an unrelated window even if document's m_frame pointer is stale.
  • history/CachedFrame.cpp: (WebCore::CachedFrame::clear): Added a FIXME about strange behavior.
10:53 AM Changeset in webkit [43865] by staikos@webkit.org
  • 5 edits
    6 adds in trunk/LayoutTests

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.


Add the XHTML MP tests but put them in skipped since they are not active
by default on any platforms.
https://bugs.webkit.org/show_bug.cgi?id=23452

9:58 AM Changeset in webkit [43864] by Dimitri Glazkov
  • 16 edits
    2 adds in trunk/WebCore

2009-05-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Split InspectorController into InspectorController and InspectorFrontend. Latter encapsulates all frontend interaction and is the only entity allowed to make ScriptFunctionCalls. The further plan is to serialize these script function calls.

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole):
  • inspector/ConsoleMessage.h:
  • inspector/InspectorController.cpp: (WebCore::InspectorController::~InspectorController): (WebCore::InspectorController::inspect): (WebCore::InspectorController::focusNode): (WebCore::InspectorController::setWindowVisible): (WebCore::InspectorController::addConsoleMessage): (WebCore::InspectorController::setAttachedWindow): (WebCore::InspectorController::inspectedWindowScriptObjectCleared): (WebCore::InspectorController::scriptObjectReady): (WebCore::InspectorController::showPanel): (WebCore::InspectorController::close): (WebCore::InspectorController::populateScriptObjects): (WebCore::InspectorController::resetScriptObjects): (WebCore::InspectorController::pruneResources): (WebCore::InspectorController::didCommitLoad): (WebCore::InspectorController::didLoadResourceFromMemoryCache): (WebCore::InspectorController::identifierForInitialRequest): (WebCore::InspectorController::willSendRequest): (WebCore::InspectorController::didReceiveResponse): (WebCore::InspectorController::didReceiveContentLength): (WebCore::InspectorController::didFinishLoading): (WebCore::InspectorController::didFailLoading): (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): (WebCore::InspectorController::scriptImported): (WebCore::InspectorController::didOpenDatabase): (WebCore::InspectorController::didUseDOMStorage): (WebCore::InspectorController::addScriptProfile): (WebCore::InspectorController::toggleRecordButton): (WebCore::InspectorController::enableProfiler): (WebCore::InspectorController::disableProfiler): (WebCore::InspectorController::enableDebugger): (WebCore::InspectorController::disableDebugger): (WebCore::InspectorController::didParseSource): (WebCore::InspectorController::failedToParseSource): (WebCore::InspectorController::didPause): (WebCore::InspectorController::didContinue):
  • inspector/InspectorController.h:
  • inspector/InspectorDOMStorageResource.cpp: (WebCore::InspectorDOMStorageResource::bind):
  • inspector/InspectorDOMStorageResource.h:
  • inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::bind):
  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorFrontend.cpp: Added. (WebCore::callSimpleFunction): (WebCore::InspectorFrontend::InspectorFrontend): (WebCore::InspectorFrontend::~InspectorFrontend): (WebCore::InspectorFrontend::newJSONObject): (WebCore::InspectorFrontend::addMessageToConsole): (WebCore::InspectorFrontend::addResource): (WebCore::InspectorFrontend::updateResource): (WebCore::InspectorFrontend::removeResource): (WebCore::InspectorFrontend::updateFocusedNode): (WebCore::InspectorFrontend::setAttachedWindow): (WebCore::InspectorFrontend::inspectedWindowScriptObjectCleared): (WebCore::InspectorFrontend::showPanel): (WebCore::InspectorFrontend::populateInterface): (WebCore::InspectorFrontend::reset): (WebCore::InspectorFrontend::debuggerWasEnabled): (WebCore::InspectorFrontend::debuggerWasDisabled): (WebCore::InspectorFrontend::profilerWasEnabled): (WebCore::InspectorFrontend::profilerWasDisabled): (WebCore::InspectorFrontend::parsedScriptSource): (WebCore::InspectorFrontend::failedToParseScriptSource): (WebCore::InspectorFrontend::addProfile): (WebCore::InspectorFrontend::setRecordingProfile): (WebCore::InspectorFrontend::pausedScript): (WebCore::InspectorFrontend::resumedScript): (WebCore::InspectorFrontend::addDatabase): (WebCore::InspectorFrontend::addDOMStorage):
  • inspector/InspectorFrontend.h: Added.
  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject): (WebCore::InspectorResource::releaseScriptObject):
  • inspector/InspectorResource.h:
9:50 AM Changeset in webkit [43863] by mrowe@apple.com
  • 9 moves in branches/old

Clean up some old, unused branches.

9:47 AM Changeset in webkit [43862] by mrowe@apple.com
  • 1 copy in branches/WWDC-2009-branch

New branch.

9:45 AM Changeset in webkit [43861] by Dimitri Glazkov
  • 10 edits
    1 copy
    1 add in trunk/WebCore

2009-05-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Introduce JSONObject that wraps ScriptObject and ScriptState* for further serialization

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole):
  • inspector/InspectorDOMStorageResource.cpp: (WebCore::InspectorDOMStorageResource::bind):
  • inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::bind):
  • inspector/InspectorResource.cpp: (WebCore::populateHeadersObject): (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject):
  • inspector/JSONObject.cpp: Added. (WebCore::JSONObject::JSONObject): (WebCore::JSONObject::set): (WebCore::JSONObject::scriptObject): (WebCore::JSONObject::createNew):
  • inspector/JSONObject.h: Added.
9:36 AM Changeset in webkit [43860] by staikos@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Correct two changelog entries to show the bug report

9:08 AM Changeset in webkit [43859] by Dimitri Glazkov
  • 11 edits in trunk/WebCore

2009-05-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Refactor InpectorController so that it does not instantiate resource/console/database/domresource javascript objects. Move instantiation into the javascript.

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

  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole):
  • inspector/InspectorController.cpp: (WebCore::InspectorController::didReceiveResponse): (WebCore::InspectorController::didReceiveContentLength): (WebCore::InspectorController::didFinishLoading): (WebCore::InspectorController::didFailLoading): (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): (WebCore::InspectorController::scriptImported):
  • inspector/InspectorDOMStorageResource.cpp: (WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource): (WebCore::InspectorDOMStorageResource::bind): (WebCore::InspectorDOMStorageResource::unbind):
  • inspector/InspectorDOMStorageResource.h:
  • inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::InspectorDatabaseResource): (WebCore::InspectorDatabaseResource::bind): (WebCore::InspectorDatabaseResource::unbind):
  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::InspectorResource): (WebCore::populateHeadersObject): (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject): (WebCore::InspectorResource::releaseScriptObject):
  • inspector/InspectorResource.h:
  • inspector/front-end/Console.js: (WebInspector.ConsoleMessage):
  • inspector/front-end/inspector.js: (WebInspector.addResource): (WebInspector.updateResource): (WebInspector.removeResource): (WebInspector.addDatabase): (WebInspector.addDOMStorage): (WebInspector.reset): (WebInspector.addMessageToConsole):
8:11 AM Changeset in webkit [43858] by ariya@webkit.org
  • 4 edits in trunk/WebCore

2009-05-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Ariya Hidayat.

The Qt port has code that disables scrolling optimizations
when the root contains native windows, such as windowed plugins.

This code broke when detaching iframes containing windowed
plugins.

Each ScrollView now knows how many native windows it and its
children contain, and when it is detached, that number is
substracted from its old parents.

4:45 AM Changeset in webkit [43857] by xan@webkit.org
  • 2 edits in trunk/WebKit/gtk

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

Reviewed by Jan Alonzo.

Do not try to free enchant broker and dictionary if they do not
exist, those functions aren't NULL-safe.

  • webkit/webkitwebsettings.cpp: (free_spell_checking_language):
1:01 AM Changeset in webkit [43856] by mjs@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-05-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by Gavin Barraclough.


  • speed up string comparison, especially for short strings


~1% on SunSpider

  • JavaScriptCore.exp:
  • runtime/UString.cpp:
  • runtime/UString.h: (JSC::operator==): Inline UString's operator==, since it is called from hot places in the runtime. Also, specialize 2-char strings in a similar way to 1-char, since we're taking the hit of a switch anyway.

May 18, 2009:

11:06 PM Changeset in webkit [43855] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-18 Maciej Stachowiak <mjs@apple.com>

Reviewed by Gavin Barraclough.


  • for polymorphic prototype lookups, increase the number of slots from 4 to 8


~4% faster on v8 raytrace benchmark

  • bytecode/Instruction.h:
10:39 PM Changeset in webkit [43854] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-18 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver Hunt.


  • tighten up the code for the load_varargs stub


~1-2% on v8-raytrace


  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_load_varargs): Hoist some loop invariants that the compiler didn't feel like hoisting for us. Remove unneeded exception check.
10:17 PM Changeset in webkit [43853] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

Added cookie test to Skipped list for Windows

See Bug 25861. <https://bugs.webkit.org/show_bug.cgi?id=25861>

  • platform/win/Skipped: Added http/tests/cookies/simple-cookies-expired.html.
10:02 PM Changeset in webkit [43852] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Tiger build fix for r43850

  • platform/mac/ClipboardMac.mm: Added typedef for NSUinteger when building on Tiger.
9:52 PM Changeset in webkit [43851] by ddkilzer@apple.com
  • 4 edits
    18 adds in trunk

Bug 24569: Add some cookies tests

<https://bugs.webkit.org/show_bug.cgi?id=24569>

LayoutTests:

Reviewed and tweaked by David Kilzer.

This modification adds a cookie framework to check setting cookies.
It is a simple modification over the js test framework. It uses some XHRs and custom server-side script
to set / get / clear cookies.

It also adds some very basic tests to check that everything works.

  • http/tests/cookies: Added.
  • http/tests/cookies/multiple-cookies-expected.txt: Added.
  • http/tests/cookies/multiple-cookies.html: Added.
  • http/tests/cookies/resources: Added.
  • http/tests/cookies/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
  • http/tests/cookies/resources/clearCookies.cgi: Added.
  • http/tests/cookies/resources/cookies-test-post.js: Copied from LayoutTests/fast/js/resources/js-test-post.js.
  • http/tests/cookies/resources/cookies-test-pre.js: Copied from LayoutTests/fast/js/resources/js-test-pre.js. (setCookies): Internal method to set a cookie (multiple cookies are not supported). (testCookies): Internal method to check if the cookie were set.

(clearAllCookies): Used to clear all pre-existing cookies for this domain.
(clearCookies): Used to clear the cookies set with cookiesShouldBe.
(cookiesShouldBe): Used to set a cookie and check the "Cookie" header sent. It is inspired from shouldBe from the js test framework.

  • http/tests/cookies/resources/cookies-test-style.css: Copied from LayoutTests/fast/js/resources/js-test-style.css.
  • http/tests/cookies/resources/getCookies.cgi: Added.
  • http/tests/cookies/resources/multiple-cookies.js: Added.
  • http/tests/cookies/resources/setCookies.cgi: Added.
  • http/tests/cookies/resources/simple-cookies-expired.js: Added.
  • http/tests/cookies/resources/simple-cookies-max-age.js: Added.
  • http/tests/cookies/simple-cookies-expired-expected.txt: Added.
  • http/tests/cookies/simple-cookies-expired.html: Added.
  • http/tests/cookies/simple-cookies-max-age-expected.txt: Added.
  • http/tests/cookies/simple-cookies-max-age.html: Added.
  • platform/mac-tiger/Skipped: Added http/tests/cookies/simple-cookies-max-age.html since CFNetwork on Tiger doesn't support expiring cookies with Max-Age=0.

WebKitTools:

Patch by David Kilzer.

  • Scripts/make-js-test-wrappers: Added regex to skip cookies-test-(post|pre).js files.
9:17 PM Changeset in webkit [43850] by eric@webkit.org
  • 2 edits in trunk/WebCore

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

Reviewed by Darin Adler.

ClipboardMac cleanup
https://bugs.webkit.org/show_bug.cgi?id=25847

I'm mostly just moving code, however there are 3 changes I made while moving, detailed below.

No functional changes, so no tests.

  • platform/mac/ClipboardMac.mm: (WebCore::ClipboardMac::clearData): (WebCore::absoluteURLsFromPasteboardFilenames): Broke out logic for filenames into its own function to make the caller more readable. (WebCore::absoluteURLsFromPasteboard): Broke out logic from getData into absoluteURLsFromPasteboard. This returns an NSArray so that we can use -[NSArray componentsJoinedByString] in the caller (which is cleaner than the manual "\n" addition before). This also access to the full list of file urls for future callers. (WebCore::ClipboardMac::getData): unsigned count = (type == "URL") ? 1 : [fileList count]; is now an explicit check for "URL", before it was a check for != "text/uri-list" which was much more confusing in my opinion. text/uri-list and URL are the only two types which map to NSURLPboardType in cocoaTypeFromMIMEType(). (WebCore::ClipboardMac::types): I removed an extra if (!types) check, right before [types count]. In Obj-C messaging nil will return 0 (size of a pointer), so it's safe to message nil here and expect it to return 0.
8:40 PM Changeset in webkit [43849] by mjs@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-18 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff Garen.

  • Improve code generation for access to prototype properties


~0.4% speedup on SunSpider.


Based on a suggestion from Geoff Garen.

  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::compileGetDirectOffset): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
8:23 PM Changeset in webkit [43848] by sfalken@apple.com
  • 4 edits in trunk/WebKit

WebKit/mac:

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

<rdar://problem/6899044> Can't see Apple ad on nytimes.com unless I spoof the user agent


Add user agent hack for pointroll.com.

Reviewed by Steve Falkenburg.

  • WebView/WebView.mm: (-[WebView WebCore::_userAgentForURL:WebCore::]):

WebKit/win:

2009-05-18 Steve Falkenburg <sfalken@apple.com>

<rdar://problem/6899044> Can't see Apple ad on nytimes.com unless I spoof the user agent


Add user agent hack for pointroll.com.


Reviewed by Sam Weinig.

  • WebView.cpp:
5:42 PM Changeset in webkit [43847] by levin@chromium.org
  • 1 edit
    2 adds in trunk/WebCore

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

Reviewed by Darin Fisher.

Bug 25859: Need to upstream ScriptController.* for v8.
https://bugs.webkit.org/show_bug.cgi?id=25859

  • bindings/v8/ScriptController.cpp: Added.
  • bindings/v8/ScriptController.h: Added.
5:27 PM Changeset in webkit [43846] by kov@webkit.org
  • 5 edits in trunk

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

Reviewed by Gavin Barraclough.

Enable YARR, and disable WREC for GTK+.

  • configure.ac:
5:10 PM Changeset in webkit [43845] by staikos@webkit.org
  • 4 edits in trunk/WebCore

2009-05-18 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Change ScriptElement to support XHTMLMP in a better way

5:00 PM Changeset in webkit [43844] by kevino@webkit.org
  • 4 edits in trunk

wx build fix. Use python-config to get Python linking info on Unix OSes.

4:51 PM Changeset in webkit [43843] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix, finish up changes after the accessibility dir split.

4:48 PM Changeset in webkit [43842] by staikos@webkit.org
  • 16 edits
    2 adds in trunk/WebCore

2009-05-18 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos (and others).

Add XHTMLMP support to Webkit
XHTMLMP is a strict subset of XHTML 1.1. It extends XHTML Basic and add enhanced
functionality. Most of the functionalities have already been implemented by Webkit.

The changes include:
1) Adding <noscript> support
2) Document conformance validation
3) User Agent conformance validation

3:35 PM Changeset in webkit [43841] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Fix the build.

  • WebCore.xcodeproj/project.pbxproj:
1:40 PM Changeset in webkit [43840] by kov@webkit.org
  • 2 edits in trunk/WebCore

2009-05-18 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Rubber-stamped by Gustavo Noronha.

Fixed build for the Qt port by adding the WebCore/accessibility
directory to the includepath.

  • WebCore.pro:
1:22 PM Changeset in webkit [43839] by barraclough@apple.com
  • 17 edits in trunk/JavaScriptCore

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

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add -no-install and -no-fast-install to programs and tests that we
don't install. Also remove -O2 since this is already handled at
configure time.

  • GNUmakefile.am:
1:12 PM Changeset in webkit [43838] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-05-18 Gavin Barraclough <barraclough@apple.com>

Reviewed by NOBODY (speculative build fix).

12:46 PM Changeset in webkit [43837] by barraclough@apple.com
  • 16 edits in trunk/JavaScriptCore

2009-05-15 Gavin Barraclough <barraclough@apple.com>

Reviewed by Darin Adler.

Refactor JIT code-handle objects. The representation of generated code is currently
a bit of a mess. We have a class JITCode which wraps the pointer to a block of
generated code, but this object does not reference the executable pool meaning that
external events (the pool being derefed) could make the pointer become invalid.
To overcome this both the JIT and Yarr implement further (and similar) objects to
wrap the code pointer with a RefPtr to the pool. To add to the mire, as well as the
CodeBlock containing a handle onto the code the FunctionBodyNode also contains a
copy of the code pointer which is used almost (but not entirely) uniquely to access
the JIT code for a function.

Rationalization of all this:

  • Add a new type 'MacroAssembler::CodeRef' as a handle for a block of JIT generated code.
  • Change the JIT & Yarr to internally handle code using CodeRefs.
  • Move the CodeRef (formerly anow defunct JITCodeRef) from CodeBlock to its owner node.
  • Remove the (now) redundant code pointer from FunctionBodyNode.

While tidying this up I've made the PatchBuffer return code in new allocations using a CodeRef,
and have enforced an interface that the PatchBuffer will always be used, and 'finalizeCode()' or
'finalizeCodeAddendum()' will always be called exactly once on the PatchBuffer to complete code generation.

This gives us a potentially useful hook ('PatchBuffer::performFinalization()') at the end of generation,
which may have a number of uses. It may be helpful should we wish to switch our generation
model to allow RW/RX exclusive memory, and it may be useful on non-cache-coherent platforms to
give us an oportunity to cache flush as necessary.

No performance impact.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline): (JSC::AbstractMacroAssembler::CodeRef::CodeRef): (JSC::AbstractMacroAssembler::CodeRef::trampolineAt): (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::link): (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive): (JSC::AbstractMacroAssembler::PatchBuffer::patch): (JSC::AbstractMacroAssembler::PatchBuffer::complete): (JSC::AbstractMacroAssembler::PatchBuffer::finalize): (JSC::AbstractMacroAssembler::PatchBuffer::entry):
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::CodeBlock): (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): (JSC::CodeBlock::setJITCode):
  • bytecode/CodeBlock.h: (JSC::CodeBlock::getBytecodeIndex): (JSC::CodeBlock::executablePool):
  • interpreter/CallFrameClosure.h:
  • interpreter/Interpreter.cpp: (JSC::Interpreter::execute): (JSC::Interpreter::prepareForRepeatCall):
  • jit/JIT.cpp: (JSC::JIT::privateCompile): (JSC::JIT::privateCompileCTIMachineTrampolines): (JSC::JIT::linkCall):
  • jit/JIT.h:
  • jit/JITCode.h: (JSC::JITCode::JITCode): (JSC::JITCode::operator bool): (JSC::JITCode::addressForCall): (JSC::JITCode::offsetOf): (JSC::JITCode::execute): (JSC::JITCode::size): (JSC::JITCode::executablePool): (JSC::JITCode::HostFunction):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_vm_dontLazyLinkCall): (JSC::JITStubs::cti_vm_lazyLinkCall):
  • parser/Nodes.cpp: (JSC::ProgramNode::generateJITCode): (JSC::EvalNode::generateJITCode): (JSC::FunctionBodyNode::FunctionBodyNode): (JSC::FunctionBodyNode::createNativeThunk): (JSC::FunctionBodyNode::generateJITCode):
  • parser/Nodes.h: (JSC::ScopeNode::generatedJITCode): (JSC::ScopeNode::getExecutablePool): (JSC::ScopeNode::setJITCode): (JSC::ProgramNode::jitCode): (JSC::EvalNode::jitCode): (JSC::FunctionBodyNode::jitCode):
  • runtime/RegExp.cpp: (JSC::RegExp::match):
  • yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::compile): (JSC::Yarr::jitCompileRegex): (JSC::Yarr::executeRegex):
  • yarr/RegexJIT.h: (JSC::Yarr::RegexCodeBlock::RegexCodeBlock): (JSC::Yarr::RegexCodeBlock::pcreFallback): (JSC::Yarr::RegexCodeBlock::setFallback): (JSC::Yarr::RegexCodeBlock::operator bool): (JSC::Yarr::RegexCodeBlock::set): (JSC::Yarr::RegexCodeBlock::execute):
12:11 PM Changeset in webkit [43836] by kevino@webkit.org
  • 2 edits in trunk/WebKitTools

wx build fix, initialize variable that doesn't get set on Windows.

12:10 PM Changeset in webkit [43835] by Chris Fleizach
  • 2 edits in trunk/WebCore

Bug 25776: accessibility should have its own folder in WebCore project
https://bugs.webkit.org/show_bug.cgi?id=25776

Speculative fix for windows build failure.

11:59 AM Changeset in webkit [43834] by ddkilzer@apple.com
  • 8 edits
    2 adds in trunk

Bug 20652: WebKit doesn't display favicons with MIME type image/vnd.microsoft.icon

<https://bugs.webkit.org/show_bug.cgi?id=20652>

Reviewed by Darin Adler.

WebCore:

Test: http/tests/misc/favicon-as-image.html

  • inspector/front-end/inspector.js: Added image/vnd.microsoft.icon to WebInspector.MIMETypes.
  • platform/MIMETypeRegistry.cpp: (WebCore::initializeSupportedImageMIMETypes): Added image/vnd.microsoft.icon to list of supported image and image resource MIME types.

LayoutTests:

Updated existing favicon-as-image.html test to display a third
image having MIME type image/vnd.microsoft.icon.

  • http/tests/misc/favicon-as-image.html: Updated.
  • http/tests/misc/resources/.htaccess: Added.
  • http/tests/misc/resources/favicon-vnd-ms.ico: Copied from LayoutTests/fast/images/resources/favicon.ico.
  • platform/mac/http/tests/misc/favicon-as-image-expected.checksum: Updated.
  • platform/mac/http/tests/misc/favicon-as-image-expected.png: Updated.
  • platform/mac/http/tests/misc/favicon-as-image-expected.txt: Updated.
11:48 AM Changeset in webkit [43833] by Chris Fleizach
  • 6 edits
    46 moves
    7 adds in trunk/WebCore

Bug 25776: accessibility should have its own folder in WebCore project
https://bugs.webkit.org/show_bug.cgi?id=25776

10:26 AM Changeset in webkit [43832] by kov@webkit.org
  • 2 edits in trunk/WebCore

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

Reviewed by Jan Alonzo.

https://bugs.webkit.org/show_bug.cgi?id=25854
[GTK] Should tell servers we only support identity as content encoding

Let servers know we only support identity as content
encoding. We will implement this in libsoup.

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandle::startHttp):
8:30 AM Changeset in webkit [43831] by ap@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

<rdar://problem/6881160> REGRESSION (r41425): Unable to create battle.net account due to
CAPTCHA failure.

The problem was that after loading and displaying a CAPTCHA image, it was loaded from
the server again due to preloading. So, the server expected the last loaded (invisible)
CAPTCHA text to be typed and posted back.

I don't know how to make tests for preloading.

  • loader/DocLoader.cpp: (WebCore::DocLoader::checkForPendingPreloads): There is never a reason to preload after loading for real - and if cache policy is CachePolicyReload, that actually results in another load from network layer.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::cachePolicy): It's not good for cachePolicy() to lie, but I don't know how to re-do r41425 properly. Added a FIXME.
7:13 AM Changeset in webkit [43830] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-05-18 Ariya Hidayat <ariya.hidayat@nokia.com>

Reviewed by Simon Hausmann.

Done together with Balazs Kelemen <kelemen.balazs@stud.u-szeged.hu>.

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

[Qt] Reuse FontPlatformData for the same FontDescription.
This effectively prevents growing heap usage for loading every web page.

  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::qHash): Necessary for FontPlatformDataCache. (WebCore::FontCache::getCachedFontPlatformData): Reuse the instance if it exists, otherwise create a new one and insert it in the cache.
5:11 AM Changeset in webkit [43829] by ariya@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-05-18 Zoltan Horvath <horvath.zoltan.6@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

Makes QtLauncher to accept multiple urls in command line and opens these in separate windows.

  • QtLauncher/main.cpp: (MainWindow::newWindow): (main):
4:33 AM Changeset in webkit [43828] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-05-18 Balazs Kelemen <kelemen.balazs@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

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

[Qt] Fix the leak in FontFallbackList::fontDataAt() function.
When creating a new instance of SimpleFontData, put it in the font list
so that it can deleted later on.

  • platform/graphics/qt/FontFallbackListQt.cpp: (WebCore::FontFallbackList::invalidate): (WebCore::FontFallbackList::releaseFontData): (WebCore::FontFallbackList::fontDataAt):
4:30 AM Changeset in webkit [43827] by jmalonzo@webkit.org
  • 2 edits in trunk

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

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add support for running unit tests. Also run the tests whenever
the 'check' target runs.

  • GNUmakefile.am:
4:30 AM Changeset in webkit [43826] by jmalonzo@webkit.org
  • 4 edits in trunk

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

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Style fixes

  • GNUmakefile.am:
  • WebCore/GNUmakefile.am
4:30 AM Changeset in webkit [43825] by jmalonzo@webkit.org
  • 6 edits in trunk

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

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add -no-install and -no-fast-install to programs and tests that we
don't install. Also remove -O2 since this is already handled at
configure time.

  • GNUmakefile.am:
  • JavaScriptCore/GNUmakefile.am:
  • WebKitTools/GNUmakefile.am:
4:30 AM Changeset in webkit [43824] by jmalonzo@webkit.org
  • 4 edits in trunk

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

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add JavaScriptCore/ to JSC include path only since it's not
required when building WebCore.

  • GNUmakefile.am:

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

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Refactor library cflags

  • GNUmakefile.am:
4:11 AM Changeset in webkit [43823] by eric@webkit.org
  • 2 edits in trunk/LayoutTests

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

Skip new tests from r43822 on Gtk
https://bugs.webkit.org/show_bug.cgi?id=25780

  • platform/gtk/Skipped:
3:55 AM Changeset in webkit [43822] by eric@webkit.org
  • 1 edit
    6 adds in trunk/LayoutTests

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Oliver Hunt.

Add missing files from r43821
https://bugs.webkit.org/show_bug.cgi?id=25780

  • editing/pasteboard/get-data-text-plain-drop-expected.txt: Added.
  • editing/pasteboard/get-data-text-plain-drop.html: Added.
  • editing/pasteboard/get-data-text-plain-paste-expected.txt: Added.
  • editing/pasteboard/get-data-text-plain-paste.html: Added.
  • editing/pasteboard/resources/TEMPLATE.html: Copied from LayoutTests/editing/execCommand/resources/TEMPLATE.html.
  • editing/pasteboard/resources/get-data-text-plain-paste.js: Added. (handlePaste):
3:29 AM Changeset in webkit [43821] by eric@webkit.org
  • 5 edits in trunk

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

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

  • Scripts/make-js-test-wrappers: Added exception to avoid overwriting a custom-written test.
3:11 AM Changeset in webkit [43820] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

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

  • Scripts/make-js-test-wrappers: Added exception to avoid overwriting a custom-written test.
Note: See TracTimeline for information about the timeline view.