Timeline


and

11/19/08:

20:46 Changeset [38616] by darin@chromium.org
  • 2 edits in trunk/WebKit/qt

2008-11-19 Darin Fisher <darin@chromium.org>

Fix bustage.

https://bugs.webkit.org/show_bug.cgi?id=22373
Ports busted by addition of ScriptValue.{h,cpp}

  • Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript):
19:31 Changeset [38615] by darin@chromium.org
  • 2 edits in trunk/WebKit/qt

2008-11-19 Darin Fisher <darin@chromium.org>

Fix bustage.

https://bugs.webkit.org/show_bug.cgi?id=22373
Ports busted by addition of ScriptValue.{h,cpp}

  • Api/qwebframe.cpp:
19:27 Changeset [38614] by darin@chromium.org
  • 2 edits in trunk/WebCore

2008-11-19 Darin Fisher <darin@chromium.org>

Fix bustage.

https://bugs.webkit.org/show_bug.cgi?id=22373
Ports busted by addition of ScriptValue.{h,cpp}


  • plugins/PluginView.cpp: (WebCore::PluginView::performRequest):
19:19 Changeset [38613] by darin@chromium.org
  • 8 edits in trunk

2008-11-19 Darin Fisher <darin@chromium.org>

Bustage fix.

https://bugs.webkit.org/show_bug.cgi?id=22373
Ports busted by addition of ScriptValue.{h,cpp}

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCoreSources.bkl:
  • dom/XMLTokenizerQt.cpp:
  • plugins/PluginView.cpp:
18:44 Changeset [38612] by simon.fraser@apple.com
  • 4 edits
    2 adds in trunk

Reviewed by Antti Koivisto

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

Fix hit testing in controls on transformed video elements
by replacing absoluteBoundingBoxRect().contains() with
code that maps the point into local coords, taking
transforms into account.

Test: media/video-controls-transformed.html

  • platform/graphics/MediaPlayer.h:
  • rendering/RenderMedia.cpp: (WebCore::rendererContainsPoint): (WebCore::RenderMedia::forwardEvent):
18:33 Changeset [38611] by andersca@apple.com
  • 3 edits
    1 copy
    1 add in trunk

WebKit/mac:

2008-11-19 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Test: plugins/netscape-plugin-setwindow-size-2.html


Fix bug where NPP_SetWindow wasn't getting called for some plug-ins.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView updateAndSetWindow]): Don't bail if the drawing model is not the CA drawing model. Remove some code that was doing the wrong thing.

LayoutTests:

2008-11-19 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Add NPP_SetWindow test.


  • plugins/netscape-plugin-setwindow-size-2-expected.txt: Added.
  • plugins/netscape-plugin-setwindow-size-2.html: Copied from plugins/netscape-plugin-setwindow-size.html.
18:05 Changeset [38610] by darin@chromium.org
  • 19 edits
    2 adds in trunk

2008-11-18 Darin Fisher <darin@chromium.org>

Reviewed by Geoff Garen.

https://bugs.webkit.org/show_bug.cgi?id=22345
Define ScriptValue as a thin container for a JSC::Value*.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ScheduledAction.cpp:
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate):
  • bindings/js/ScriptController.h:
  • bindings/js/ScriptValue.cpp: Added. (WebCore::ScriptValue::getString):
  • bindings/js/ScriptValue.h: Added. (WebCore::ScriptValue::ScriptValue): (WebCore::ScriptValue::jsValue):
  • dom/ScriptElement.cpp:
  • dom/XMLTokenizer.cpp:
  • dom/XMLTokenizerLibxml2.cpp:
  • html/HTMLTokenizer.cpp:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::executeIfJavaScriptURL): (WebCore::FrameLoader::executeScript):
  • loader/FrameLoader.h:
17:53 Changeset [38609] by wsiegrist@apple.com
  • 1 edit in trunk/BugsSite/data/params

2008-11-19 William Siegrist <wsiegrist@apple.com>

Reviewed by David Kilzer

Sync config changes made to bugzilla on the server

17:33 Changeset [38608] by bdakin@apple.com
  • 2 edits in trunk/WebCore

2008-11-19 Beth Dakin <bdakin@apple.com>

Reviewed by Justin Garcia.

Fix for <rdar://problem/5472507> Remove color property when a user
sets color to black

This patch prevents us from inserting font nodes during the
ApplyStyleCommand if they will not change the computed style of an
element.

  • editing/ApplyStyleCommand.cpp: (WebCore::fontColorChangesComputedStyle): (WebCore::fontSizeChangesComputedStyle): (WebCore::fontFaceChangesComputedStyle): (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
17:30 Changeset [38607] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-11-19 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

<rdar://problem/6383762> WebKit r38340 crash on key press in plugin


Set the value to 0 before calling NPP_GetValue, in case the plug-in returns NPERR_NO_ERROR but does not
update the value.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView createPlugin]):
16:45 Changeset [38606] by adele@apple.com
  • 2 edits in trunk/WebKit/win

2008-11-19 Adele Peterson <adele@apple.com>

Reviewed by Darin Adler.

For transparent views, clear the dirty rect instead of painting it white.


  • WebView.cpp: (WebView::paintIntoBackingStore):
14:11 Changeset [38605] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-11-19 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Make sure to copy the MIME type.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
13:59 Changeset [38604] by ggaren@apple.com
  • 4 edits in trunk/WebKit/mac

2008-11-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


First step toward fixing <rdar://problem/6263293> WebScriptDebugDelegate
should use intptr_t for sourceId, not int


Added a conditional typedef (currently disabled) to switch sourceId to
intptr_t in non-Tiger, non-Leopard builds.

  • DefaultDelegates/WebDefaultScriptDebugDelegate.m: (-[WebDefaultScriptDebugDelegate webView:didParseSource:fromURL:sourceId:forWebFrame:]): (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): (-[WebDefaultScriptDebugDelegate webView:didEnterCallFrame:sourceId:line:forWebFrame:]): (-[WebDefaultScriptDebugDelegate webView:willExecuteStatement:sourceId:line:forWebFrame:]): (-[WebDefaultScriptDebugDelegate webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
  • WebView/WebScriptDebugDelegate.h:
  • WebView/WebScriptDebugger.mm: (WebScriptDebugger::sourceParsed): (WebScriptDebugger::callEvent): (WebScriptDebugger::atStatement): (WebScriptDebugger::returnEvent): (WebScriptDebugger::exception):
13:08 Changeset [38603] by ggaren@apple.com
  • 6 edits
    2 adds in trunk

JavaScriptCore:

2008-11-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=22361
A little more RegExp refactoring.


Consistently named variables holding the starting position at which
regexp matching should begin to "startOffset".


A few more "regExpObject" => "regExpConstructor" changes.


Refactored RegExpObject::match for clarity, and replaced a slow "get"
of the "global" property with a fast access to the global bit.


Made the error message you see when RegExpObject::match has no input a
little more informative, as in Firefox.

  • runtime/RegExp.cpp: (JSC::RegExp::match):
  • runtime/RegExp.h:
  • runtime/RegExpObject.cpp: (JSC::RegExpObject::match):
  • runtime/StringPrototype.cpp: (JSC::stringProtoFuncReplace): (JSC::stringProtoFuncMatch): (JSC::stringProtoFuncSearch):

LayoutTests:

2008-11-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


Test for https://bugs.webkit.org/show_bug.cgi?id=22361
A little more RegExp refactoring

  • fast/js/regexp-test-null-string.html: Added.
  • fast/js/regexp-test-null-expected.txt: Added.
13:07 Changeset [38602] by simon.fraser@apple.com
  • 5 edits in trunk/WebCore

2008-11-19 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

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

Need to educate style sharing about autofill, so that style does not
get shared between input elements that are autofilled, and those
that are not. Setting autofill should also do a setChanged on the node.

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::canShareStyleWithElement): (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
  • dom/Node.h: (WebCore::Node::isAutofilled):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setAutofilled):
  • html/HTMLInputElement.h: (WebCore::HTMLInputElement::isAutofilled):
12:44 Changeset [38601] by brettw@chromium.org
  • 2 edits in trunk/WebCore

Reviewed by Antti Koivisto.

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

Clear the subresource loader client when the client is removed in
response to a 304 (not modified). This prevents an inconsistent state
where the loader thinks it's active and the loader::Host doesn't.

11:16 Changeset [38600] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-11-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


A little more refactoring.


Removed the "emit" and "emitUnlinked" prefixes from the assembler.


Moved the JmpSrc and JmpDst class definitions to the top of the X86
assembler class, in accordance with WebKit style guidelines.

  • assembler/X86Assembler.h: (JSC::X86Assembler::JmpSrc::JmpSrc): (JSC::X86Assembler::JmpDst::JmpDst): (JSC::X86Assembler::int3): (JSC::X86Assembler::pushl_m): (JSC::X86Assembler::popl_m): (JSC::X86Assembler::movl_rr): (JSC::X86Assembler::addl_rr): (JSC::X86Assembler::addl_i8r): (JSC::X86Assembler::addl_i8m): (JSC::X86Assembler::addl_i32r): (JSC::X86Assembler::addl_mr): (JSC::X86Assembler::andl_rr): (JSC::X86Assembler::andl_i32r): (JSC::X86Assembler::cmpl_i8r): (JSC::X86Assembler::cmpl_rr): (JSC::X86Assembler::cmpl_rm): (JSC::X86Assembler::cmpl_mr): (JSC::X86Assembler::cmpl_i32r): (JSC::X86Assembler::cmpl_i32m): (JSC::X86Assembler::cmpl_i8m): (JSC::X86Assembler::cmpw_rm): (JSC::X86Assembler::orl_rr): (JSC::X86Assembler::orl_mr): (JSC::X86Assembler::orl_i32r): (JSC::X86Assembler::subl_rr): (JSC::X86Assembler::subl_i8r): (JSC::X86Assembler::subl_i8m): (JSC::X86Assembler::subl_i32r): (JSC::X86Assembler::subl_mr): (JSC::X86Assembler::testl_i32r): (JSC::X86Assembler::testl_i32m): (JSC::X86Assembler::testl_rr): (JSC::X86Assembler::xorl_i8r): (JSC::X86Assembler::xorl_rr): (JSC::X86Assembler::sarl_i8r): (JSC::X86Assembler::sarl_CLr): (JSC::X86Assembler::shl_i8r): (JSC::X86Assembler::shll_CLr): (JSC::X86Assembler::imull_rr): (JSC::X86Assembler::imull_i32r): (JSC::X86Assembler::idivl_r): (JSC::X86Assembler::negl_r): (JSC::X86Assembler::movl_mr): (JSC::X86Assembler::movzbl_rr): (JSC::X86Assembler::movzwl_mr): (JSC::X86Assembler::movl_rm): (JSC::X86Assembler::movl_i32r): (JSC::X86Assembler::movl_i32m): (JSC::X86Assembler::leal_mr): (JSC::X86Assembler::jmp_r): (JSC::X86Assembler::jmp_m): (JSC::X86Assembler::movsd_mr): (JSC::X86Assembler::xorpd_mr): (JSC::X86Assembler::movsd_rm): (JSC::X86Assembler::movd_rr): (JSC::X86Assembler::cvtsi2sd_rr): (JSC::X86Assembler::cvttsd2si_rr): (JSC::X86Assembler::addsd_mr): (JSC::X86Assembler::subsd_mr): (JSC::X86Assembler::mulsd_mr): (JSC::X86Assembler::addsd_rr): (JSC::X86Assembler::subsd_rr): (JSC::X86Assembler::mulsd_rr): (JSC::X86Assembler::ucomis_rr): (JSC::X86Assembler::pextrw_irr): (JSC::X86Assembler::call): (JSC::X86Assembler::jmp): (JSC::X86Assembler::jne): (JSC::X86Assembler::jnz): (JSC::X86Assembler::je): (JSC::X86Assembler::jl): (JSC::X86Assembler::jb): (JSC::X86Assembler::jle): (JSC::X86Assembler::jbe): (JSC::X86Assembler::jge): (JSC::X86Assembler::jg): (JSC::X86Assembler::ja): (JSC::X86Assembler::jae): (JSC::X86Assembler::jo): (JSC::X86Assembler::jp): (JSC::X86Assembler::js): (JSC::X86Assembler::predictNotTaken): (JSC::X86Assembler::convertToFastCall): (JSC::X86Assembler::restoreArgumentReference): (JSC::X86Assembler::restoreArgumentReferenceForTrampoline): (JSC::X86Assembler::modRm_rr): (JSC::X86Assembler::modRm_rr_Unchecked): (JSC::X86Assembler::modRm_rm): (JSC::X86Assembler::modRm_rm_Unchecked): (JSC::X86Assembler::modRm_rmsib): (JSC::X86Assembler::modRm_opr): (JSC::X86Assembler::modRm_opr_Unchecked): (JSC::X86Assembler::modRm_opm): (JSC::X86Assembler::modRm_opm_Unchecked): (JSC::X86Assembler::modRm_opmsib):
  • jit/JIT.cpp: (JSC::JIT::emitNakedCall): (JSC::JIT::emitNakedFastCall): (JSC::JIT::emitCTICall): (JSC::JIT::emitJumpSlowCaseIfNotJSCell): (JSC::JIT::emitJumpSlowCaseIfNotImmNum): (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero): (JSC::JIT::emitFastArithIntToImmOrSlowCase): (JSC::JIT::emitArithIntToImmWithJump): (JSC::JIT::compileOpCall): (JSC::JIT::compileOpStrictEq): (JSC::JIT::emitSlowScriptCheck): (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate): (JSC::JIT::compileBinaryArithOp): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompile): (JSC::JIT::privateCompileGetByIdSelf): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdChain): (JSC::JIT::privateCompilePutByIdReplace): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::privateCompileCTIMachineTrampolines): (JSC::JIT::privateCompilePatchGetArrayLength):
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp):
  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generateBackreferenceQuantifier): (JSC::WREC::Generator::generateNonGreedyQuantifier): (JSC::WREC::Generator::generateGreedyQuantifier): (JSC::WREC::Generator::generatePatternCharacter): (JSC::WREC::Generator::generateCharacterClassInvertedRange): (JSC::WREC::Generator::generateCharacterClassInverted): (JSC::WREC::Generator::generateCharacterClass): (JSC::WREC::Generator::generateParentheses): (JSC::WREC::Generator::generateParenthesesNonGreedy): (JSC::WREC::Generator::generateParenthesesResetTrampoline): (JSC::WREC::Generator::generateAssertionBOL): (JSC::WREC::Generator::generateAssertionEOL): (JSC::WREC::Generator::generateAssertionWordBoundary): (JSC::WREC::Generator::generateBackreference): (JSC::WREC::Generator::generateDisjunction):
10:28 Changeset [38599] by ap@webkit.org
  • 4 edits
    2 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22355
Systematize code for replacing global constructors

Test: fast/workers/worker-replace-global-constructor.html

  • bindings/js/JSDOMWindowBase.cpp: (setJSDOMWindowBaseEvent): Changed to put the value as property, matching what generated code for global constructor setters does. (setJSDOMWindowBaseAudio): Ditto. (setJSDOMWindowBaseImage): Ditto. (setJSDOMWindowBaseMessageChannel): Ditto. (setJSDOMWindowBaseOption): Ditto. (setJSDOMWindowBaseWorker): Ditto. (setJSDOMWindowBaseXMLHttpRequest): Ditto. (setJSDOMWindowBaseXSLTProcessor): Ditto. (WebCore::JSDOMWindowBase::put): Removed special cases for global constructors.
  • bindings/js/JSWorkerContext.cpp: (WebCore::JSWorkerContext::getOwnPropertySlot): Look up overrides before own properties, as it is done for Window. (WebCore::setJSWorkerContextMessageEvent): Implemented in the same way as Window global constructors are. (WebCore::setJSWorkerContextWorkerLocation): Ditto.
10:09 Changeset [38598] by bolsinga@apple.com
  • 2 edits in trunk/WebKitTools

2008-11-19 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

All static C++ objects that create atexit calls are gone. Update script
to indicate how to fix the problem should a new one appear.


  • Scripts/check-for-exit-time-destructors:
09:57 Changeset [38597] by ap@webkit.org
  • 4 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22341
Text codecs should not use static data without locking

  • platform/text/TextCodecICU.cpp:
  • platform/text/mac/TextCodecMac.cpp: Made cached converters per-thread.
  • platform/text/TextEncodingRegistry.cpp: (WebCore::encodingRegistryMutex): Added a mutex for codec maps access. (WebCore::addToTextCodecMap): Don't use TextEncoding just to cacnonicalize the name, as it causes a dedalock due to a recursive call into registry. (WebCore::buildBaseTextCodecMaps): Added assertions. (WebCore::newTextCodec): Take a lock to avoid concurrent access to codec maps. (WebCore::atomicCanonicalTextEncodingName): Ditto. (WebCore::noExtendedTextEncodingNameUsed): Added a comment, explaining why locking is not necessary here.
09:57 Changeset [38596] by ap@webkit.org
  • 2 edits in trunk/WebCore

Touch WebCorePrefix.h to force a rebuild, needed because of changed feature defines.

  • WebCorePrefix.h:
09:42 Changeset [38595] by ap@webkit.org
  • 25 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22310
Worker exceptions should be printed to console

  • dom/Document.cpp: (WebCore::Document::reportException):
  • dom/Document.h:
  • dom/ScriptExecutionContext.h:
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::reportException):
  • dom/WorkerContext.h: Added a reportException() method on ScriptExecutionContext. It forwards the exception info up until it finds a Document context, and then it prints it to console.
  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): Don't talk to Console directly, use ScriptExecutionContext::reportException. Also, fixed a bug where Document::updateDocumentsRendering() could be called from workers. (WebCore::JSLazyEventListener::parseCode): Moved variable declaration inside if block for clarity.
  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate): Report exceptions to ScriptExecutionContext.
  • dom/WorkerMessagingProxy.cpp: (WebCore::MessageWorkerTask::performTask): (WebCore::WorkerExceptionTask::create): (WebCore::WorkerExceptionTask::WorkerExceptionTask): (WebCore::WorkerExceptionTask::performTask): (WebCore::WorkerMessagingProxy::postWorkerException):
  • dom/WorkerMessagingProxy.h: Added a task for posting exception information.
  • bindings/js/JSDOMBinding.cpp: (WebCore::reportException): (WebCore::reportCurrentException):
  • bindings/js/JSDOMBinding.h: Added helper methods for reporting exceptions via ScriptExecutionContext.
  • page/Console.cpp:
  • page/Console.h: Removed methods for directly reporting exceptions to console.
  • bindings/js/JSCustomPositionCallback.cpp: (WebCore::JSCustomPositionCallback::handleEvent):
  • bindings/js/JSCustomPositionErrorCallback.cpp: (WebCore::JSCustomPositionErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent):
  • bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent):
  • bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::execute):
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate):
  • bindings/objc/WebScriptObject.mm: (WebCore::addExceptionToConsole): Switch to JSDOMBinding methods for reporting exceptions.
08:19 Changeset [38594] by hausmann@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-11-19 Simon Hausmann <hausmann@webkit.org>

Sun CC build fix, removed trailing comman for last enum value.

04:17 Changeset [38593] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2008-11-19 Simon Hausmann <hausmann@webkit.org>

Fix the Qt build, remove file referenced in the qrc file that does not
exist and is not needed.

01:06 Changeset [38592] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Expand the workaround for Apple GCC compiler bug <rdar://problem/6354696> to all versions of GCC 4.0.1.
It has been observed with builds 5465 (Xcode 3.0) and 5484 (Xcode 3.1), and there is no evidence
that it has been fixed in newer builds of GCC 4.0.1.

This addresses <https://bugs.webkit.org/show_bug.cgi?id=22351> (WebKit nightly crashes on launch on 10.4.11).

Reviewed by Alexey Proskuryakov.

  • wtf/StdLibExtras.h:

11/18/08:

23:51 Changeset [38591] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Mark Rowe.

  • platform/ContextMenuItem.h: (WebCore::ContextMenuAction): Reorder this enum to keep it in sync with the one in WebUIDelegate.h.
20:04 Changeset [38590] by cwzwarich@webkit.org
  • 3 edits
    3 adds in trunk

2008-11-18 Cameron Zwarich <zwarich@apple.com>

Reviewed by Maciej Stachowiak and Geoff Garen.

Bug 22287: ASSERTION FAILED: Not enough jumps linked in slow case codegen in CTI::privateCompileSlowCases())
<https://bugs.webkit.org/show_bug.cgi?id=22287>

Fix a typo in the number cell reuse code where the first and second
operands are sometimes confused.

JavaScriptcore:

  • jit/JIT.cpp: (JSC::JIT::compileBinaryArithOpSlowCase):

LayoutTests:

  • fast/js/number-cell-reuse-expected.txt: Added.
  • fast/js/number-cell-reuse.html: Added.
  • fast/js/resources/number-cell-reuse.js: Added.
17:58 Changeset [38589] by darin@chromium.org
  • 2 edits in trunk/WebCore

2008-11-18 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22346
PlatformString should also include HashSet.h for non-JSC builds

  • platform/text/PlatformString.h:
17:22 Changeset [38588] by adele@apple.com
  • 2 edits in trunk/WebKit/win

2008-11-18 Adele Peterson <adele@apple.com>

Reverting last change. I just realized it causes the view to never get cleared out.

  • WebView.cpp: (WebView::paintIntoBackingStore):
17:11 Changeset [38587] by adele@apple.com
  • 2 edits in trunk/WebKit/win

2008-11-18 Adele Peterson <adele@apple.com>

Reviewed by John Sullivan.

Don't fill the view with white if its transparent.


  • WebView.cpp: (WebView::paintIntoBackingStore):
16:57 Changeset [38586] by mitz@apple.com
  • 2 edits in trunk/WebKit/mac

Reviewed by Mark Rowe.

  • WebView/WebUIDelegatePrivate.h: Reorder new enum values after existing ones.
16:46 Changeset [38585] by zecke@webkit.org
  • 2 edits in trunk/LayoutTests

2008-11-18 Holger Hans Peter Freyther <zecke@selfish.org>

Rubber-stamped by Mark Rowe.

Skip some more tests to make the Gtk+ build bot pass. We will
have to investigate why some tests only fail on the build bot.

  • platform/gtk/Skipped:
16:25 Changeset [38584] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-11-18 Adele Peterson <adele@apple.com>

Reviewed by Holger Hans Peter Freyther.

Flip check added in recent refactoring so the background gets updated when the background color is valid, not invalid.

  • loader/FrameLoaderClient.cpp: (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
16:05 Changeset [38583] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

2008-11-18 Sam Weinig <sam@webkit.org>

Fix incorrect result.

  • fast/dom/Window/window-properties-expected.txt:
15:52 Changeset [38582] by darin@chromium.org
  • 2 edits in trunk/WebCore

Reverting r38574 since it caused some layout test failures.

15:51 Changeset [38581] by zimmermann@webkit.org
  • 2 edits in trunk/LayoutTests

Not reviewed. Checked in wrong result in last commit.

15:39 Changeset [38580] by darin@chromium.org
  • 2 edits in trunk/WebCore

2008-11-18 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=22343
Remove unused runtime/Collector, JSLock includes in Page.cpp

  • page/Page.cpp:
15:30 Changeset [38579] by adachan@apple.com
  • 2 edits in trunk/WebCore

Bug 22344: Make select popup window opaque
https://bugs.webkit.org/show_bug.cgi?id=22344

Reviewed by Steve Falkenburg.

  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::show):
15:16 Changeset [38578] by darin@chromium.org
  • 2 edits in trunk/WebCore

2008-11-18 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=22342
Remove unused JSLock.h include

  • dom/Document.cpp:
14:15 Changeset [38577] by zimmermann@webkit.org
  • 14 edits
    93 adds in trunk

Reviewed by Sam Weinig.

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

Add WMLBRElement, correcting <br/> behaviour in WML.
Enable entity replacment for WML documents.
Handle WML specific <p> 'mode' attribute.

Generate layout tests results for fast/wml.

Tests cases that pass now:
fast/wml/br-element-in-table.wml
fast/wml/br-element-in-text.wml
fast/wml/case-sensitivity.wml
fast/wml/cdata-section.wml
fast/wml/comment.wml
fast/wml/entity.wml
fast/wml/p-align.wml
fast/wml/p-mode.wml
fast/wml/text-emphasis.wml
fast/wml/validate-dtd.wml

14:04 Changeset [38576] by mitz@apple.com
  • 2 edits in trunk/JavaScriptCore
  • try to fix the Windows build
  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
13:52 Changeset [38575] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2008-11-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Minor RegExp cleanup.


SunSpider says no change.

  • runtime/RegExpObject.cpp: (JSC::RegExpObject::match): Renamed "regExpObj" to "regExpConstructor".
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp): Instead of checking for a NULL output vector, ASSERT that the output vector is not NULL. (The rest of WREC is not safe to use with a NULL output vector, and we probably don't want to spend the time and/or performance to make it safe.)
13:21 Changeset [38574] by darin@chromium.org
  • 2 edits in trunk/WebCore

2008-11-18 Aaron Boodman aa@chromium.org

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=22301
Always call dispatchDidFinishDocumentLoad before Window's onload event.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::finishedParsing):
12:38 Changeset [38573] by ggaren@apple.com
  • 2 edits in trunk/LayoutTests

2008-11-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Alexey Proskuryakov.


Updated layout test result for addition of window.Worker.

  • fast/js/global-constructors-expected.txt:
12:07 Changeset [38572] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-11-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


A little more renaming and refactoring.


VM_CHECK_EXCEPTION() => CHECK_FOR_EXCEPTION().
NEXT_INSTRUCTION => NEXT_INSTRUCTION().

Removed the "Error_" and "TempError_" prefixes from WREC error types.

Refactored the WREC parser so it doesn't need a "setError" function,
and changed "isEndOfPattern" and its use -- they read kind of backwards
before.


Changed our "TODO:" error messages at least to say something, since you
can't say "TODO:" in shipping software.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute): (JSC::Interpreter::cti_op_convert_this): (JSC::Interpreter::cti_op_add): (JSC::Interpreter::cti_op_pre_inc): (JSC::Interpreter::cti_op_loop_if_less): (JSC::Interpreter::cti_op_loop_if_lesseq): (JSC::Interpreter::cti_op_put_by_id): (JSC::Interpreter::cti_op_put_by_id_second): (JSC::Interpreter::cti_op_put_by_id_generic): (JSC::Interpreter::cti_op_put_by_id_fail): (JSC::Interpreter::cti_op_get_by_id): (JSC::Interpreter::cti_op_get_by_id_second): (JSC::Interpreter::cti_op_get_by_id_generic): (JSC::Interpreter::cti_op_get_by_id_fail): (JSC::Interpreter::cti_op_instanceof): (JSC::Interpreter::cti_op_del_by_id): (JSC::Interpreter::cti_op_mul): (JSC::Interpreter::cti_op_call_NotJSFunction): (JSC::Interpreter::cti_op_resolve): (JSC::Interpreter::cti_op_construct_NotJSConstruct): (JSC::Interpreter::cti_op_get_by_val): (JSC::Interpreter::cti_op_resolve_func): (JSC::Interpreter::cti_op_sub): (JSC::Interpreter::cti_op_put_by_val): (JSC::Interpreter::cti_op_put_by_val_array): (JSC::Interpreter::cti_op_lesseq): (JSC::Interpreter::cti_op_loop_if_true): (JSC::Interpreter::cti_op_negate): (JSC::Interpreter::cti_op_resolve_skip): (JSC::Interpreter::cti_op_resolve_global): (JSC::Interpreter::cti_op_div): (JSC::Interpreter::cti_op_pre_dec): (JSC::Interpreter::cti_op_jless): (JSC::Interpreter::cti_op_not): (JSC::Interpreter::cti_op_jtrue): (JSC::Interpreter::cti_op_post_inc): (JSC::Interpreter::cti_op_eq): (JSC::Interpreter::cti_op_lshift): (JSC::Interpreter::cti_op_bitand): (JSC::Interpreter::cti_op_rshift): (JSC::Interpreter::cti_op_bitnot): (JSC::Interpreter::cti_op_resolve_with_base): (JSC::Interpreter::cti_op_mod): (JSC::Interpreter::cti_op_less): (JSC::Interpreter::cti_op_neq): (JSC::Interpreter::cti_op_post_dec): (JSC::Interpreter::cti_op_urshift): (JSC::Interpreter::cti_op_bitxor): (JSC::Interpreter::cti_op_bitor): (JSC::Interpreter::cti_op_push_scope): (JSC::Interpreter::cti_op_to_jsnumber): (JSC::Interpreter::cti_op_in): (JSC::Interpreter::cti_op_del_by_val):
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp):
  • wrec/WRECParser.cpp: (JSC::WREC::Parser::parseGreedyQuantifier): (JSC::WREC::Parser::parseParentheses): (JSC::WREC::Parser::parseCharacterClass): (JSC::WREC::Parser::parseEscape):
  • wrec/WRECParser.h: (JSC::WREC::Parser::): (JSC::WREC::Parser::atEndOfPattern):
11:58 Changeset [38571] by bdakin@apple.com
  • 1 edit in trunk/WebKit/mac/ChangeLog

2008-11-17 Beth Dakin <bdakin@apple.com>

Reviewed by Adele Peterson.

Fix for <rdar://problem/6373102> REGRESSION (r36919): In a new mail
message, the caret appears in message body by default

This fixes a regression caused by http://trac.webkit.org/changeset/36919.
That change was too sweeping; we do not want to
unconditionally set the page to be active, but we can be looser
than the original constraints. This patch set the window active if
the first responder is or is a descendant of the main frame's frame
view.

  • WebView/WebView.mm: (-[WebView _updateFocusedAndActiveStateForFrame:]):
11:57 Changeset [38570] by bdakin@apple.com
  • 2 edits in trunk/WebKit/mac

2008-11-17 Beth Dakin <bdakin@apple.com>

Reviewed by Adele Peterson.

Fix for <rdar://problem/6373102> REGRESSION (r36919): In a new mail
message, the caret appears in message body by default

This fixes a regression caused by http://trac.webkit.org/changeset/

  1. That change was too sweeping; we do not want to unconditionally set the page to be active, but we can be looser than the original constraints. This patch set the window active if the first responder is or is a descendant of the main frame's frame view.
  • WebView/WebView.mm: (-[WebView _updateFocusedAndActiveStateForFrame:]):
11:23 Changeset [38569] by ap@webkit.org
  • 2 edits in trunk/WebCore

Windows build fix.

  • WebCore.vcproj/WebCore.vcproj: Fix relative paths to use $(WebKitOutputDir).
10:26 Changeset [38568] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-11-18 Darin Adler <darin@apple.com>

  • try to fix Wx build
  • WebCoreSources.bkl: Added FrameLoaderClient.cpp.
10:25 Changeset [38567] by ap@webkit.org
  • 11 edits
    12 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22337
Enable workers by default

10:23 Changeset [38566] by darin@apple.com
  • 11 edits
    3 adds in trunk

WebCore:

2008-11-18 Darin Adler <darin@apple.com>

Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/get-dangerous-headers.html

No test for HTTP-only support in JavaScript yet, since the Mac and Win changes
require an updated CFNetwork.

  • platform/mac/CookieJar.mm: (WebCore::isHTTPOnly): Added. (WebCore::filterCookies): Added. (WebCore::cookies): Use filterCookies to prevent getting HTTP-only cookies. (WebCore::setCookies): Use filterCookies to prevent setting HTTP-only cookies.
  • platform/network/win/CookieJarCFNetWin.cpp: (WebCore::isHTTPOnly): Added. (WebCore::filterCookies): Added. (WebCore::setCookies): Use filterCookies to prevent getting HTTP-only cookies. (WebCore::cookies): Use filterCookies to prevent getting HTTP-only cookies.
  • xml/XMLHttpRequest.cpp: (WebCore::isSetCookieHeader): Added. (WebCore::XMLHttpRequest::getAllResponseHeaders): Hide Set-Cookie headers from clients that don't have local-resource privileges. (WebCore::XMLHttpRequest::getResponseHeader): Ditto.
  • clean soup-specific details out of shared cookie jar header
  • platform/CookieJar.h: Removed the soup-specific parts of this.
  • platform/network/soup/CookieJarSoup.cpp: Changed to include CookieJarSoup.h. Tweaked implementation a bit to handle UTF-8 better.
  • platform/network/soup/CookieJarSoup.h: Added. Has the Soup-specified part of CookieJar.h.
  • platform/network/soup/ResourceHandleSoup.cpp: Changed to include CookieJarSoup.h.

LayoutTests:

2008-11-18 Darin Adler <darin@apple.com>

Reviewed by Alexey Proskuryakov.

  • add a test for XMLHttpRequest Set-Cookie blocking
  • http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers-expected.txt: Updated since we now log attempts to get headers that are not allowed cross-domain to the console.
  • http/tests/xmlhttprequest/get-dangerous-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/get-dangerous-headers.html: Added.
  • http/tests/xmlhttprequest/resources/get-set-cookie.cgi: Tweak script a bit.
09:59 Changeset [38565] by sfalken@apple.com
  • 2 edits in trunk/WebCore

2008-11-18 Steve Falkenburg <sfalken@apple.com>

https://bugs.webkit.org/show_bug.cgi?id=22329
Improper bitwise and tests against 0 in Windows context menu code

Reviewed by John Sullivan.

  • platform/win/ContextMenuItemWin.cpp: (WebCore::ContextMenuItem::type): (WebCore::ContextMenuItem::enabled):
09:32 Changeset [38564] by sullivan@apple.com
  • 2 edits in trunk/WebCore

2008-11-18 John Sullivan <sullivan@apple.com>

Yet more Mac build fixing

  • WebCore.base.exp: Export ZTVN7WebCore17FrameLoaderClientE
08:19 Changeset [38563] by vestbo@webkit.org
  • 2 edits
    1 add in trunk/WebKit/qt

2008-11-18 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Tor Arne Vestbø.

Missing file in new unit test for QWebFrame (r38493).

  • tests/qwebframe/qwebframe.pro:
  • tests/qwebframe/qwebframe.qrc: Added.
08:09 Changeset [38562] by vestbo@webkit.org
  • 2 edits in trunk/WebKit/qt

2008-11-18 Tor Arne Vestbø <tavestbo@trolltech.com>

Rubber-stamped by Simon Hausmann.

Make sure QWidget based plugins are invisible until placed into the layout

06:43 Changeset [38561] by ap@webkit.org
  • 4 edits in trunk/JavaScriptCore
  • Windows build fix
  • wrec/WRECFunctors.h:
  • wrec/WRECGenerator.h:
  • wrec/WRECParser.h: CharacterClass is a struct, not a class, fix forward declarations.
06:41 Changeset [38560] by vestbo@webkit.org
  • 4 edits in trunk

2008-11-18 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon Hausmann.

React properly to frame rect changes for QWidget based plugins

We now set the geometry of the QWidget in frameRectsChanged,
intead of setFrameRect, which means we pick up the changes to
the frame rect when scrolling. We also set a mask on the
widget to keep it from painting over scrollbars and the like

06:41 Changeset [38559] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2008-11-18 Tor Arne Vestbø <tavestbo@trolltech.com>

Rubber-stamped by Simon Hausmann.

Don't mark scrollbars as focused in QtWebKit

When initing from the widget we also got the focus state,
but this does not make sense for scrollbars.

06:30 Changeset [38558] by zecke@webkit.org
  • 2 edits in trunk/WebKit/win

Try to fix the Windows build.

05:46 Changeset [38557] by ap@webkit.org
  • 2 edits in trunk/WebCore

More Mac build fixing.

  • WebCore.base.exp: Export FrameLoaderClient destructor.
04:53 Changeset [38556] by ap@webkit.org
  • 2 edits in trunk/WebCore

Mac build fix.

  • WebCore.xcodeproj/project.pbxproj: Add FrameLoaderClient.cpp for now.
04:37 Changeset [38555] by vestbo@webkit.org
  • 2 edits in trunk/WebKit/qt

2008-11-18 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Tor Arne Vestbø.

Fix crash when trying to pick a file using the file chooser.

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::runOpenPanel):

2008-11-17 Geoffrey Garen <ggaren@apple.com>

04:33 Changeset [38554] by zecke@webkit.org
  • 14 edits
    1 add in trunk

Attempt to share transitionToCommittedForNewPage of FrameLoaderClient with the different ports

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

After Hyatt's work on Widget and ScrollView there is little difference
between the implementation of Qt, Gtk+ and Win. In fact any kind of
difference is mostly a bug. Alp has fixed two of such errors for the Gtk+
port and the Qt port has at least one of them left.

The only difference between the implementations is in getting the the
IntSize for the new FrameView, the background color to be applied and
eventually some post processing.

Unify the implementations by providing a static helper function that
takes a Frame, IntSize, color and transparency bit and calling it from
the Gtk+, the Qt and the Windows port.

04:32 Changeset [38553] by zecke@webkit.org
  • 5 edits in trunk

Move setting the background color and transparency to WebCore

Move setting the background color and transparency from WebKit/win
to WebCore. This allows WebKit/win, WebKit/Qt and WebKit/Gtk+
to share this code.

03:36 Changeset [38552] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2008-11-17 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Tor Arne Vestbø.

Fix the bug where select elements are painted without border.
http://trolltech.com/developer/task-tracker/index_html?id=218957&method=entry

  • platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::paintMenuList):
02:06 Changeset [38551] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2008-11-18 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix. Not reviewed.

  • GNUmakefile.am: Fix USER_AGENT_STYLESHEETS, wml.css is in css/, not in wml/.
00:53 Changeset [38550] by ap@webkit.org
  • 2 edits in trunk/WebKitTools

Rubber-stamped by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22306
Disable channel messaging support

  • Scripts/build-webkit: Add an option to enable channel messaging.
00:44 Changeset [38549] by ap@webkit.org
  • 12 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22308
Improve Worker GC behavior

  • dom/ActiveDOMObject.cpp: (WebCore::ActiveDOMObject::hasPendingActivity):
  • dom/ActiveDOMObject.h: Made hasPendingActivity() virtual, letting Worker add behavior to it.
  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate):
  • dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread): Tell message proxy whether there are active objects in the worker whenever JS execution finishes.
  • dom/ScriptExecutionContext.h: (WebCore::ScriptExecutionContext::activeDOMObjects): Added a typedef for activeDOMObjects() return type, necessary to declare iterators.
  • dom/Worker.h:
  • dom/Worker.cpp: (WebCore::Worker::hasPendingActivity): A Worker is active if it is still loading, or if it has unconfirmed messages, or it the worker thread has pending activity.
  • dom/WorkerContext.h:
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::hasPendingActivity): Check all registered active objects for pending activity.
  • dom/WorkerMessagingProxy.cpp: (WebCore::MessageWorkerContextTask::performTask): (WebCore::WorkerThreadActivityReportTask::create): (WebCore::WorkerThreadActivityReportTask::WorkerThreadActivityReportTask): (WebCore::WorkerThreadActivityReportTask::performTask): (WebCore::WorkerMessagingProxy::WorkerMessagingProxy): (WebCore::WorkerMessagingProxy::postMessageToWorkerContext): (WebCore::WorkerMessagingProxy::workerObjectDestroyed): (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal): (WebCore::WorkerMessagingProxy::confirmWorkerThreadMessage): (WebCore::WorkerMessagingProxy::reportWorkerThreadActivity): (WebCore::WorkerMessagingProxy::reportWorkerThreadActivityInternal): (WebCore::WorkerMessagingProxy::workerThreadHasPendingActivity):
  • dom/WorkerMessagingProxy.h: Track outstanding messages, and activity reported by worker thread.
00:25 Changeset [38548] by mitz@apple.com
  • 2 edits in trunk/JavaScriptCore
  • Windows build fix
  • assembler/X86Assembler.h:
00:03 Changeset [38547] by ap@webkit.org
  • 8 edits
    12 moves
    1 add in trunk

Rubber-stamped by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22306
Disable channel messaging support

WebCore:

  • bindings/js/JSDOMWindowBase.cpp: (jsDOMWindowBaseMessageChannel):
  • page/DOMWindow.idl: Hide MesssagePort and MessageChannel global constructors. Due to the way MessageChannel constructor is added, it remains enumerable, but undefined.

LayoutTests:

  • fast/events/message-port-no-wrapper.html-disabled: Added a test that I had in my tree.
  • fast/dom/Window/window-properties-expected.txt:
  • fast/dom/constructors-cached-expected.txt:
  • fast/dom/constructors-cached-navigate-expected.txt:
  • fast/js/global-constructors-expected.txt: Updated results.
  • fast/events/destroyed-atomic-string.html: Removed.
  • fast/events/destroyed-atomic-string.html-disabled: Copied from LayoutTests/fast/events/destroyed-atomic-string.html.
  • fast/events/message-channel-gc-2.html: Removed.
  • fast/events/message-channel-gc-2.html-disabled: Copied from LayoutTests/fast/events/message-channel-gc-2.html.
  • fast/events/message-channel-gc-3.html: Removed.
  • fast/events/message-channel-gc-3.html-disabled: Copied from LayoutTests/fast/events/message-channel-gc-3.html.
  • fast/events/message-channel-gc.html: Removed.
  • fast/events/message-channel-gc.html-disabled: Copied from LayoutTests/fast/events/message-channel-gc.html.
  • fast/events/message-channel-listener-circular-ownership.html: Removed.
  • fast/events/message-channel-listener-circular-ownership.html-disabled: Copied from LayoutTests/fast/events/message-channel-listener-circular-ownership.html.
  • fast/events/message-port-constructor-for-deleted-document.html: Removed.
  • fast/events/message-port-constructor-for-deleted-document.html-disabled: Copied from LayoutTests/fast/events/message-port-constructor-for-deleted-document.html.
  • fast/events/message-port-deleted-document.html: Removed.
  • fast/events/message-port-deleted-document.html-disabled: Copied from LayoutTests/fast/events/message-port-deleted-document.html.
  • fast/events/message-port-deleted-frame.html: Removed.
  • fast/events/message-port-deleted-frame.html-disabled: Copied from LayoutTests/fast/events/message-port-deleted-frame.html.
  • fast/events/message-port-inactive-document.html: Removed.
  • fast/events/message-port-inactive-document.html-disabled: Copied from LayoutTests/fast/events/message-port-inactive-document.html.
  • fast/events/message-port-onclose.html: Removed.
  • fast/events/message-port-onclose.html-disabled: Copied from LayoutTests/fast/events/message-port-onclose.html.
  • fast/events/message-port.html: Removed.
  • fast/events/message-port.html-disabled: Copied from LayoutTests/fast/events/message-port.html.
  • http/tests/security/MessagePort/event-listener-context.html: Removed.
  • http/tests/security/MessagePort/event-listener-context.html-disabled: Copied from LayoutTests/http/tests/security/MessagePort/event-listener-context.html. Disabled MessagePort tests.

11/17/08:

19:34 Changeset [38546] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • wrec/Quantifier.h:
19:25 Changeset [38545] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • assembler/AssemblerBuffer.h:
19:17 Changeset [38544] by ggaren@apple.com
  • 11 edits
    9 copies in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Split WREC classes out into individual files, with a few modifications
to more closely match the WebKit coding style.

  • GNUmakefile.am:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/X86Assembler.h:
  • runtime/RegExp.cpp:
  • wrec/CharacterClass.cpp: Copied from wrec/CharacterClassConstructor.cpp. (JSC::WREC::CharacterClass::newline): (JSC::WREC::CharacterClass::digits): (JSC::WREC::CharacterClass::spaces): (JSC::WREC::CharacterClass::wordchar): (JSC::WREC::CharacterClass::nondigits): (JSC::WREC::CharacterClass::nonspaces): (JSC::WREC::CharacterClass::nonwordchar):
  • wrec/CharacterClass.h: Copied from wrec/CharacterClassConstructor.h.
  • wrec/CharacterClassConstructor.cpp: (JSC::WREC::CharacterClassConstructor::addSortedRange): (JSC::WREC::CharacterClassConstructor::append):
  • wrec/CharacterClassConstructor.h:
  • wrec/Quantifier.h: Copied from wrec/WREC.h.
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp):
  • wrec/WREC.h:
  • wrec/WRECFunctors.cpp: Copied from wrec/WREC.cpp.
  • wrec/WRECFunctors.h: Copied from wrec/WREC.cpp. (JSC::WREC::GenerateAtomFunctor::~GenerateAtomFunctor): (JSC::WREC::GeneratePatternCharacterFunctor::GeneratePatternCharacterFunctor): (JSC::WREC::GenerateCharacterClassFunctor::GenerateCharacterClassFunctor): (JSC::WREC::GenerateBackreferenceFunctor::GenerateBackreferenceFunctor): (JSC::WREC::GenerateParenthesesNonGreedyFunctor::GenerateParenthesesNonGreedyFunctor):
  • wrec/WRECGenerator.cpp: Copied from wrec/WREC.cpp. (JSC::WREC::Generator::generatePatternCharacter): (JSC::WREC::Generator::generateCharacterClassInvertedRange): (JSC::WREC::Generator::generateCharacterClassInverted): (JSC::WREC::Generator::generateCharacterClass): (JSC::WREC::Generator::generateParentheses): (JSC::WREC::Generator::generateAssertionBOL): (JSC::WREC::Generator::generateAssertionEOL): (JSC::WREC::Generator::generateAssertionWordBoundary):
  • wrec/WRECGenerator.h: Copied from wrec/WREC.h.
  • wrec/WRECParser.cpp: Copied from wrec/WREC.cpp. (JSC::WREC::Parser::parseGreedyQuantifier): (JSC::WREC::Parser::parseCharacterClassQuantifier): (JSC::WREC::Parser::parseParentheses): (JSC::WREC::Parser::parseCharacterClass): (JSC::WREC::Parser::parseEscape): (JSC::WREC::Parser::parseTerm):
  • wrec/WRECParser.h: Copied from wrec/WREC.h. (JSC::WREC::Parser::): (JSC::WREC::Parser::Parser): (JSC::WREC::Parser::setError): (JSC::WREC::Parser::error): (JSC::WREC::Parser::recordSubpattern): (JSC::WREC::Parser::numSubpatterns): (JSC::WREC::Parser::ignoreCase): (JSC::WREC::Parser::multiline):
16:46 Changeset [38543] by zimmermann@webkit.org
  • 5 edits in trunk/WebCore

Reviewed by Mark Rowe.

Remove WBXML code. MainResourceLoader is not an appropriate location.
Revert until we find a better place.

The mime type which belongs to wmlc should be enabled anyway so WML documents get build.
Remove the ENABLE(WBXML) blocks around these types in MIMETypeRegistry / DOMImplementation.

16:23 Changeset [38542] by zimmermann@webkit.org
  • 2 edits in trunk/WebCore

Not reviewed. Build fix.
Oops, disable WML by default on Qt.

16:04 Changeset [38541] by zimmermann@webkit.org
  • 33 edits
    84 adds in trunk

Reviewed by George Staikos.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=22324 (Add basic subset of WML elements)

Add first bits of WML support. Only <card> & <p> and <a> elements are supported in this first patch.
Support for most other elements will be added step-by-step (merging in small chunks from a big patch).

WML is not build by default. Enabling possible in Qt, Gtk & Mac. Win/Wx are TODO.

15:57 Changeset [38540] by mitz@apple.com
  • 3 edits in trunk/LayoutTests

Reviewed by Mark Rowe.

Updated the expected results to the correct ones.

  • platform/mac/svg/text/text-text-08-b-expected.checksum:
  • platform/mac/svg/text/text-text-08-b-expected.png:
15:50 Changeset [38539] by ggaren@apple.com
  • 2 edits in trunk/WebKitSite

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig and Antti Koivisto.


Clarified the last coding style rule, which was a baffling in its
initial form.


(Now let's see if our code ever starts following this rule!)

  • coding/coding-style.html:
15:39 Changeset [38538] by beidson@apple.com
  • 2 edits in trunk/WebKitSite

2008-11-17 Brady Eidson <beidson@apple.com>

Reviewed by Mark Rowe

Clarify an edge case for acronym capitalization.

  • coding/coding-style.html:
15:37 Changeset [38537] by ggaren@apple.com
  • 2 edits in trunk/WebKit/qt

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix qt build.

  • Api/qwebframe.cpp:
15:36 Changeset [38536] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix a few builds.

  • JavaScriptCoreSources.bkl:
15:35 Changeset [38535] by ggaren@apple.com
  • 2 edits in trunk/WebKitTools

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::pauseAnimationAtTimeOnElementWithId): (LayoutTestController::pauseTransitionAtTimeOnElementWithId):
15:24 Changeset [38534] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix a few builds.

15:23 Changeset [38533] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

15:20 Changeset [38532] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.27.1

New tag.

15:16 Changeset [38531] by ggaren@apple.com
  • 18 edits
    2 copies
    1 add
    1 delete in trunk

JavaScriptCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved VM/CTI.* => jit/JIT.*.


Removed VM.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • VM/CTI.cpp: Removed.
  • VM/CTI.h: Removed.
  • bytecode/CodeBlock.cpp:
  • interpreter/Interpreter.cpp:
  • jit: Added.
  • jit/JIT.cpp: Copied from VM/CTI.cpp.
  • jit/JIT.h: Copied from VM/CTI.h.
  • runtime/RegExp.cpp:

WebCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • WebCore.pro:
  • webcore-base.bkl:

WebKit/wx:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • presets/wxwebkit.bkl:
14:58 Changeset [38530] by ggaren@apple.com
  • 2 edits in trunk/WebKit/mac

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Mac build.

  • WebView/WebScriptDebugDelegate.mm:
14:40 Changeset [38529] by justin.garcia@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

2008-11-17 Justin Garcia <justin.garcia@apple.com>

Reviewed by Beth Dakin.

<rdar://problem/4922709> Copying less than a paragraph of quoted text and pasting it doesn't retain quote level


There was code to intentionally avoid quoting pasted content if less than a paragraph of
it was copied. That was added for <rdar://problem/5006779>, but was unnecessary because
that bug was about Paste and Match style for single paragraphs. And quote stripping for
Paste and Match style is handled elsewhere.

  • editing/markup.cpp: (WebCore::createMarkup):

LayoutTests:

2008-11-17 Justin Garcia <justin.garcia@apple.com>

Reviewed by Beth Dakin.


<rdar://problem/4922709> Copying less than a paragraph of quoted text and pasting it doesn't retain quote level

  • editing/pasteboard/4922709-expected.txt: Added.
  • editing/pasteboard/4922709.html: Added.
  • editing/pasteboard/5006779.html:
14:11 Changeset [38528] by ggaren@apple.com
  • 35 edits
    4 moves in trunk

JavaScriptCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved runtime/ExecState.* => interpreter/CallFrame.*.

  • API/JSBase.cpp:
  • API/OpaqueJSString.cpp:
  • GNUmakefile.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • debugger/DebuggerCallFrame.h:
  • interpreter/CallFrame.cpp: Copied from runtime/ExecState.cpp.
  • interpreter/CallFrame.h: Copied from runtime/ExecState.h.
  • interpreter/Interpreter.cpp:
  • parser/Nodes.cpp:
  • profiler/ProfileGenerator.cpp:
  • profiler/Profiler.cpp:
  • runtime/ClassInfo.h:
  • runtime/Collector.cpp:
  • runtime/Completion.cpp:
  • runtime/ExceptionHelpers.cpp:
  • runtime/ExecState.cpp: Removed.
  • runtime/ExecState.h: Removed.
  • runtime/Identifier.cpp:
  • runtime/JSFunction.cpp:
  • runtime/JSGlobalObjectFunctions.cpp:
  • runtime/JSLock.cpp:
  • runtime/JSNumberCell.h:
  • runtime/JSObject.h:
  • runtime/JSString.h:
  • runtime/Lookup.h:
  • runtime/PropertyNameArray.h:

JavaScriptGlue:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore rename.

  • ForwardingHeaders/runtime/CallFrame.h: Copied from JavaScriptGlue/ForwardingHeaders/runtime/ExecState.h.
  • ForwardingHeaders/runtime/ExecState.h: Removed.
  • config.h:

WebCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore rename.

  • ForwardingHeaders/interpreter/CallFrame.h: Copied from WebCore/ForwardingHeaders/runtime/ExecState.h.
  • ForwardingHeaders/runtime/ExecState.h: Removed.
  • bindings/objc/WebScriptObject.mm:
  • bridge/c/c_instance.cpp:
  • bridge/jni/jni_jsobject.mm:
  • dom/Node.cpp:
  • dom/NodeFilter.cpp:
  • dom/NodeIterator.cpp:
  • dom/TreeWalker.cpp:
  • inspector/JavaScriptCallFrame.h:
14:10 Changeset [38527] by dino@apple.com
  • 2 edits in trunk/WebKitTools

2008-11-17 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Maciej.

Pixel tests should use a default tolerance of 0.1% on Leopard and 1.0%
on Tiger.

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

  • Scripts/run-webkit-tests:
14:05 Changeset [38526] by dino@apple.com
  • 20 edits
    5 adds in trunk

WebCore:
2008-11-17 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Sam Weinig.

Added functionality to AnimationController to allow pausing a running
animation or transition at a given time for testing purposes.

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

Tests: animations/animation-drt-api.html

transitions/transition-drt-api.html

  • WebCore.base.exp:
  • WebCore.xcodeproj/project.pbxproj:
  • page/animation/AnimationBase.cpp: (WebCore::AnimationBase::updateStateMachine): (WebCore::AnimationBase::progress): (WebCore::AnimationBase::pauseAtTime):
  • page/animation/AnimationBase.h:
  • page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::pauseAnimationAtTime): (WebCore::AnimationControllerPrivate::pauseTransitionAtTime): (WebCore::AnimationController::pauseAnimationAtTime): (WebCore::AnimationController::pauseTransitionAtTime):
  • page/animation/AnimationController.h:
  • page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimationPrivate::isAnimating): (WebCore::CompositeAnimationPrivate::pauseAnimationAtTime): (WebCore::CompositeAnimationPrivate::pauseTransitionAtTime): (WebCore::CompositeAnimation::pauseAnimationAtTime): (WebCore::CompositeAnimation::pauseTransitionAtTime):
  • page/animation/CompositeAnimation.h:
  • page/animation/ImplicitAnimation.cpp: (WebCore::ImplicitAnimation::animate):

WebKit/mac:
2008-11-17 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Sam Weinig.

Added SPI to allow pausing a running CSS transition or animation
at a given time for testing purposes.

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

  • WebView/WebFrame.mm: (-[WebFrame _pauseAnimation:onNode:atTime:]): (-[WebFrame _pauseTransitionOfProperty:onNode:atTime:]):
  • WebView/WebFramePrivate.h:

WebKitTools:
2008-11-17 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Sam Weinig.

Added new JavaScript API on LayoutController to pause a running
CSS transition or animation at a given time.

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

  • DumpRenderTree/LayoutTestController.cpp: (pauseAnimationAtTimeOnElementWithIdCallback): (pauseTransitionAtTimeOnElementWithIdCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::pauseAnimationAtTimeOnElementWithId): (LayoutTestController::pauseTransitionAtTimeOnElementWithId):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::pauseAnimationAtTimeOnElementWithId): (LayoutTestController::pauseTransitionAtTimeOnElementWithId):

LayoutTests:
2008-11-17 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Sam Weinig.

Added tests to cover the new LayoutController JavaScript API available
in DRT (Mac only).

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

  • animations/animation-drt-api.html: Added.
  • platform/mac/animations/animation-drt-api-expected.txt: Added.
  • platform/mac/transitions/transition-drt-api-expected.txt: Added.
  • platform/win/Skipped:
  • transitions/transition-drt-api.html: Added.
13:53 Changeset [38525] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

  • API/APICast.h:
13:51 Changeset [38524] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

  • API/APICast.h:
  • runtime/ExecState.h:
13:44 Changeset [38523] by ggaren@apple.com
  • 8 edits
    2 moves in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved VM/SamplingTool.* => bytecode/SamplingTool.*.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/SamplingTool.cpp: Removed.
  • VM/SamplingTool.h: Removed.
  • bytecode/SamplingTool.cpp: Copied from VM/SamplingTool.cpp.
  • bytecode/SamplingTool.h: Copied from VM/SamplingTool.h.
  • jsc.cpp: (runWithScripts):
13:35 Changeset [38522] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

  • runtime/ExecState.h:
13:34 Changeset [38521] by ggaren@apple.com
  • 7 edits
    1 move in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved VM/ExceptionHelpers.cpp => runtime/ExceptionHelpers.cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/ExceptionHelpers.cpp: Removed.
  • runtime/ExceptionHelpers.cpp: Copied from VM/ExceptionHelpers.cpp.
13:29 Changeset [38520] by ggaren@apple.com
  • 8 edits
    1 move in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved VM/RegisterFile.cpp => interpreter/RegisterFile.cpp.

  • AllInOneFile.cpp:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/RegisterFile.cpp: Removed.
  • interpreter/RegisterFile.cpp: Copied from VM/RegisterFile.cpp.
13:28 Changeset [38519] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch/WebKit/mac

Merge r31925.

13:28 Changeset [38518] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

13:22 Changeset [38517] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

13:20 Changeset [38516] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

13:19 Changeset [38515] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

13:09 Changeset [38514] by ggaren@apple.com
  • 4 edits
    3 moves in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved:

VM/ExceptionHelpers.h => runtime/ExceptionHelpers.h
VM/Register.h => interpreter/Register.h
VM/RegisterFile.h => interpreter/RegisterFile.h



  • GNUmakefile.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • VM/ExceptionHelpers.h: Removed.
  • VM/Register.h: Removed.
  • VM/RegisterFile.h: Removed.
  • interpreter/Register.h: Copied from VM/Register.h.
  • interpreter/RegisterFile.h: Copied from VM/RegisterFile.h.
  • runtime/ExceptionHelpers.h: Copied from VM/ExceptionHelpers.h.
13:03 Changeset [38513] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Qt build.

13:02 Changeset [38512] by ggaren@apple.com
  • 8 edits
    1 move in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved VM/Machine.cpp => interpreter/Interpreter.cpp.

  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp: Removed.
  • interpreter/Interpreter.cpp: Copied from VM/Machine.cpp.
12:57 Changeset [38511] by ggaren@apple.com
  • 34 edits
    1 copy
    1 move
    2 adds
    1 delete in trunk

JavaScriptCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved VM/Machine.h => interpreter/Interpreter.h

  • GNUmakefile.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • VM/CTI.cpp:
  • VM/CTI.h:
  • VM/ExceptionHelpers.cpp:
  • VM/Machine.cpp:
  • VM/Machine.h: Removed.
  • VM/SamplingTool.cpp:
  • bytecode/CodeBlock.cpp:
  • bytecompiler/BytecodeGenerator.cpp:
  • bytecompiler/BytecodeGenerator.h:
  • debugger/DebuggerCallFrame.cpp:
  • interpreter: Added.
  • interpreter/Interpreter.h: Copied from VM/Machine.h.
  • profiler/ProfileGenerator.cpp:
  • runtime/Arguments.h:
  • runtime/ArrayPrototype.cpp:
  • runtime/Collector.cpp:
  • runtime/Completion.cpp:
  • runtime/ExecState.h:
  • runtime/FunctionPrototype.cpp:
  • runtime/JSActivation.cpp:
  • runtime/JSFunction.cpp:
  • runtime/JSGlobalData.cpp:
  • runtime/JSGlobalObject.cpp:
  • runtime/JSGlobalObjectFunctions.cpp:
  • wrec/WREC.cpp:

WebCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • ForwardingHeaders/VM: Removed.
  • ForwardingHeaders/VM/Machine.h: Removed.
  • ForwardingHeaders/interpreter: Added.
  • ForwardingHeaders/interpreter/Interpreter.h: Copied from ForwardingHeaders/VM/Machine.h.
  • WebCore.pro:
  • bindings/js/JSXMLHttpRequestCustom.cpp:
  • page/Console.cpp:
  • webcore-base.bkl:

WebKit/wx:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • presets/wxwebkit.bkl:
10:32 Changeset [38510] by ggaren@apple.com
  • 2 edits in trunk/WebKit/wx

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix wx build.

  • presets/wxwebkit.bkl:
09:55 Changeset [38509] by ggaren@apple.com
  • 24 edits
    2 moves
    2 deletes in trunk

JavaScriptCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved runtime/Interpreter.cpp => runtime/Completion.cpp.

Moved functions from Interpreter.h to Completion.h, and removed
Interpreter.h from the project.

  • API/JSBase.cpp:
  • AllInOneFile.cpp:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • jsc.cpp:
  • runtime/Completion.cpp: Copied from runtime/Interpreter.cpp.
  • runtime/Completion.h:
  • runtime/Interpreter.cpp: Removed.
  • runtime/Interpreter.h: Removed.

WebCore:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Updated for JavaScriptCore renames.

  • ForwardingHeaders/runtime/Interpreter.h: Removed.
  • WebCore.vcproj/WebCore.vcproj:
  • bindings/js/JSDOMBinding.h:
  • bindings/js/WorkerScriptController.cpp:
  • bindings/objc/WebScriptObject.mm:
  • bridge/NP_jsobject.cpp:
  • bridge/jni/jni_jsobject.mm:
  • html/CanvasRenderingContext2D.cpp:
  • inspector/JavaScriptCallFrame.cpp:
  • page/Console.cpp:

WebKit/mac:

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Updated for JavaScriptCore renames.

  • ForwardingHeaders/runtime/Completion.h: Copied from ForwardingHeaders/runtime/Interpreter.h.
  • ForwardingHeaders/runtime/Interpreter.h: Removed.
  • WebView/WebScriptDebugDelegate.mm:
09:36 Changeset [38508] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Gabor Loki <loki@inf.u-szeged.hu>

Reviewed by Darin Adler.

<https://bugs.webkit.org/show_bug.cgi?id=22312>
Fix PCRE include path problem on Qt-port

09:34 Changeset [38507] by ggaren@apple.com
  • 3 edits in trunk/WebKitTools

2008-11-17 Gabor Loki <loki@inf.u-szeged.hu>

Reviewed by Darin Adler.

<https://bugs.webkit.org/show_bug.cgi?id=22309>
Pass the remaining options to build system on Qt-port

  • Scripts/build-webkit:
  • Scripts/webkitdirs.pm:
09:34 Changeset [38506] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Gabor Loki <loki@inf.u-szeged.hu>

Reviewed by Darin Adler.

<https://bugs.webkit.org/show_bug.cgi?id=22313>
Add missing CTI source to the build system on Qt-port

09:31 Changeset [38505] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix JSGlue build.

09:23 Changeset [38504] by ggaren@apple.com
  • 2 edits in trunk/WebCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

Try to fix wx build.

  • webcore-base.bkl:
09:22 Changeset [38503] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Qt build.

  • jsc.pro:
09:11 Changeset [38502] by bolsinga@apple.com
  • 6 edits in trunk/WebCore

2008-11-17 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Find some missing DEFINE_STATIC_LOCAL use cases.

09:00 Changeset [38501] by ggaren@apple.com
  • 2 edits in trunk/WebCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

Try to fix Qt build.

  • WebCore.pro:
08:55 Changeset [38500] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Qt build.

08:50 Changeset [38499] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Qt build.

08:43 Changeset [38498] by ggaren@apple.com
  • 9 edits
    6 moves
    1 add in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


More file moves:


VM/CodeBlock.* => bytecode/CodeBlock.*
VM/EvalCodeCache.h => bytecode/EvalCodeCache.h
VM/Instruction.h => bytecode/Instruction.h
VM/Opcode.* => bytecode/Opcode.*

  • GNUmakefile.am:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.vcproj/jsc/jsc.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/CodeBlock.cpp: Removed.
  • VM/CodeBlock.h: Removed.
  • VM/EvalCodeCache.h: Removed.
  • VM/Instruction.h: Removed.
  • VM/Opcode.cpp: Removed.
  • VM/Opcode.h: Removed.
  • bytecode: Added.
  • bytecode/CodeBlock.cpp: Copied from VM/CodeBlock.cpp.
  • bytecode/CodeBlock.h: Copied from VM/CodeBlock.h.
  • bytecode/EvalCodeCache.h: Copied from VM/EvalCodeCache.h.
  • bytecode/Instruction.h: Copied from VM/Instruction.h.
  • bytecode/Opcode.cpp: Copied from VM/Opcode.cpp.
  • bytecode/Opcode.h: Copied from VM/Opcode.h.
  • jsc.pro:
  • jscore.bkl:
08:24 Changeset [38497] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix a few more builds.

08:22 Changeset [38496] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • GNUmakefile.am:
08:20 Changeset [38495] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

08:18 Changeset [38494] by ggaren@apple.com
  • 6 edits
    5 moves in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Some file moves:


VM/LabelID.h => bytecompiler/Label.h
VM/RegisterID.h => bytecompiler/RegisterID.h
VM/SegmentedVector.h => bytecompiler/SegmentedVector.h
bytecompiler/CodeGenerator.* => bytecompiler/BytecodeGenerator.*

  • AllInOneFile.cpp:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • VM/LabelID.h: Removed.
  • VM/RegisterID.h: Removed.
  • VM/SegmentedVector.h: Removed.
  • bytecompiler/BytecodeGenerator.cpp: Copied from bytecompiler/CodeGenerator.cpp.
  • bytecompiler/BytecodeGenerator.h: Copied from bytecompiler/CodeGenerator.h.
  • bytecompiler/CodeGenerator.cpp: Removed.
  • bytecompiler/CodeGenerator.h: Removed.
  • bytecompiler/Label.h: Copied from VM/LabelID.h.
  • bytecompiler/LabelScope.h:
  • bytecompiler/RegisterID.h: Copied from VM/RegisterID.h.
  • bytecompiler/SegmentedVector.h: Copied from VM/SegmentedVector.h.
  • jsc.cpp:
  • parser/Nodes.cpp:
07:13 Changeset [38493] by hausmann@webkit.org
  • 3 edits
    1 add in trunk/WebKit/qt

2008-11-17 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Tor Arne Vestbø and Simon Hausmann.

Fix regression when loading resources from Qt resource system using qrc:/.

Added a unit test to catch future regression.

  • Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate):
  • tests/qwebframe/image.png: Added.
  • tests/qwebframe/tst_qwebframe.cpp:
00:46 Changeset [38492] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

00:34 Changeset [38491] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

00:03 Changeset [38490] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-17 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

11/16/08:

22:53 Changeset [38489] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

22:34 Changeset [38488] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

22:27 Changeset [38487] by ggaren@apple.com
  • 4 edits
    2 copies
    1 add
    1 delete in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved masm => assembler and split "AssemblerBuffer.h" out of "X86Assembler.h".


Also renamed ENABLE_MASM to ENABLE_ASSEMBLER.

  • GNUmakefile.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler: Added.
  • assembler/AssemblerBuffer.h: Copied from masm/X86Assembler.h. (JSC::AssemblerBuffer::AssemblerBuffer): (JSC::AssemblerBuffer::~AssemblerBuffer): (JSC::AssemblerBuffer::ensureSpace): (JSC::AssemblerBuffer::isAligned): (JSC::AssemblerBuffer::putByteUnchecked): (JSC::AssemblerBuffer::putByte): (JSC::AssemblerBuffer::putShortUnchecked): (JSC::AssemblerBuffer::putShort): (JSC::AssemblerBuffer::putIntUnchecked): (JSC::AssemblerBuffer::putInt): (JSC::AssemblerBuffer::data): (JSC::AssemblerBuffer::size): (JSC::AssemblerBuffer::reset): (JSC::AssemblerBuffer::executableCopy): (JSC::AssemblerBuffer::grow):
  • assembler/X86Assembler.h: Copied from masm/X86Assembler.h.
  • masm: Removed.
  • masm/X86Assembler.h: Removed.
  • wtf/Platform.h:
22:19 Changeset [38486] by ggaren@apple.com
  • 3 edits in trunk/LayoutTests

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Changed "window." to "this." to unbreak these test I just broke in
non-browser builds.

  • fast/js/resources/duplicate-param-gc-crash.js: (gc):
  • fast/js/resources/var-shadows-arg-gc-crash.js: (gc):
22:15 Changeset [38485] by ggaren@apple.com
  • 3 edits in trunk/LayoutTests

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Sped up two of the slowest JS layout tests by replacing some hand-rolled
"force GC" code with something orders of magnitude faster.

  • fast/js/resources/duplicate-param-gc-crash.js: (gc):
  • fast/js/resources/var-shadows-arg-gc-crash.js: (gc):
21:52 Changeset [38484] by ggaren@apple.com
  • 2 edits in trunk

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • configure.ac:
21:49 Changeset [38483] by ggaren@apple.com
  • 2 edits in trunk/WebKit/win

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Windows build.

  • WebCoreSupport/WebFrameLoaderClient.cpp:
21:44 Changeset [38482] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • GNUmakefile.am:
21:30 Changeset [38481] by ggaren@apple.com
  • 1 edit
    3 deletes in trunk/LayoutTests

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Removed ascii-regexp-subject.html because it was the slowest JS test (20s
on my iMac) and it didn't actually verify anything.


Filed https://bugs.webkit.org/show_bug.cgi?id=22303 to cover fixing
the bug that ascii-regexp-subject.html purported to test for, and
then relanding a faster version of ascii-regexp-subject.html once it
would pass (currently, it would fail).

  • fast/js/ascii-regexp-subject-expected.txt: Removed.
  • fast/js/ascii-regexp-subject.html: Removed.
  • fast/js/resources/ascii-regexp-subject.js: Removed.
21:03 Changeset [38480] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Fixed tyop.

  • VM/CTI.cpp:
20:59 Changeset [38479] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix windows build.

  • VM/CTI.cpp:
20:50 Changeset [38478] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • GNUmakefile.am:
20:25 Changeset [38477] by ggaren@apple.com
  • 13 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Renamed ENABLE_CTI and ENABLE(CTI) to ENABLE_JIT and ENABLE(JIT).

  • VM/CTI.cpp:
  • VM/CTI.h:
  • VM/CodeBlock.cpp: (JSC::CodeBlock::~CodeBlock):
  • VM/CodeBlock.h: (JSC::CodeBlock::CodeBlock):
  • VM/Machine.cpp: (JSC::Interpreter::Interpreter): (JSC::Interpreter::initialize): (JSC::Interpreter::~Interpreter): (JSC::Interpreter::execute): (JSC::Interpreter::privateExecute):
  • VM/Machine.h:
  • bytecompiler/CodeGenerator.cpp: (JSC::prepareJumpTableForStringSwitch):
  • runtime/JSFunction.cpp: (JSC::JSFunction::~JSFunction):
  • runtime/JSGlobalData.h:
  • wrec/WREC.h:
  • wtf/Platform.h:
  • wtf/TCSystemAlloc.cpp:
20:17 Changeset [38476] by bolsinga@apple.com
  • 2 edits in trunk/WebKitTools

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Remove .o files from the exclude list that have had their exit-time destructors removed.
Handle case when there is no current symbol.

20:09 Changeset [38475] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix gtk build.

  • VM/CTI.cpp:
19:44 Changeset [38474] by simon.fraser@apple.com
  • 5 edits
    4 adds in trunk

2008-11-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein

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

Fix resize corner tracking in transformed elements by using
mapping the point into local coords using absoluteToLocal,
rather than convertToLayerCoords.

Test: fast/css/resize-corner-tracking-transformed.html

  • page/EventHandler.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::absoluteToContents): (WebCore::RenderLayer::offsetFromResizeCorner): (WebCore::RenderLayer::isPointInResizeControl):
  • rendering/RenderLayer.h:
19:34 Changeset [38473] by ggaren@apple.com
  • 20 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by a few people on squirrelfish-dev.


Renamed CTI => JIT.

  • VM/CTI.cpp: (JSC::JIT::killLastResultRegister): (JSC::JIT::emitGetVirtualRegister): (JSC::JIT::emitGetVirtualRegisters): (JSC::JIT::emitPutCTIArgFromVirtualRegister): (JSC::JIT::emitPutCTIArg): (JSC::JIT::emitGetCTIArg): (JSC::JIT::emitPutCTIArgConstant): (JSC::JIT::getConstantImmediateNumericArg): (JSC::JIT::emitPutCTIParam): (JSC::JIT::emitGetCTIParam): (JSC::JIT::emitPutToCallFrameHeader): (JSC::JIT::emitGetFromCallFrameHeader): (JSC::JIT::emitPutVirtualRegister): (JSC::JIT::emitInitRegister): (JSC::JIT::printBytecodeOperandTypes): (JSC::JIT::emitAllocateNumber): (JSC::JIT::emitNakedCall): (JSC::JIT::emitNakedFastCall): (JSC::JIT::emitCTICall): (JSC::JIT::emitJumpSlowCaseIfNotJSCell): (JSC::JIT::linkSlowCaseIfNotJSCell): (JSC::JIT::emitJumpSlowCaseIfNotImmNum): (JSC::JIT::emitJumpSlowCaseIfNotImmNums): (JSC::JIT::getDeTaggedConstantImmediate): (JSC::JIT::emitFastArithDeTagImmediate): (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero): (JSC::JIT::emitFastArithReTagImmediate): (JSC::JIT::emitFastArithPotentiallyReTagImmediate): (JSC::JIT::emitFastArithImmToInt): (JSC::JIT::emitFastArithIntToImmOrSlowCase): (JSC::JIT::emitFastArithIntToImmNoCheck): (JSC::JIT::emitArithIntToImmWithJump): (JSC::JIT::emitTagAsBoolImmediate): (JSC::JIT::JIT): (JSC::JIT::compileOpCallInitializeCallFrame): (JSC::JIT::compileOpCallSetupArgs): (JSC::JIT::compileOpCallEvalSetupArgs): (JSC::JIT::compileOpConstructSetupArgs): (JSC::JIT::compileOpCall): (JSC::JIT::compileOpStrictEq): (JSC::JIT::emitSlowScriptCheck): (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate): (JSC::JIT::compileBinaryArithOp): (JSC::JIT::compileBinaryArithOpSlowCase): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileLinkPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompile): (JSC::JIT::privateCompileGetByIdSelf): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdChain): (JSC::JIT::privateCompilePutByIdReplace): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::unlinkCall): (JSC::JIT::linkCall): (JSC::JIT::privateCompileCTIMachineTrampolines): (JSC::JIT::freeCTIMachineTrampolines): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::emitGetVariableObjectRegister): (JSC::JIT::emitPutVariableObjectRegister):
  • VM/CTI.h: (JSC::JIT::compile): (JSC::JIT::compileGetByIdSelf): (JSC::JIT::compileGetByIdProto): (JSC::JIT::compileGetByIdChain): (JSC::JIT::compilePutByIdReplace): (JSC::JIT::compilePutByIdTransition): (JSC::JIT::compileCTIMachineTrampolines): (JSC::JIT::compilePatchGetArrayLength):
  • VM/CodeBlock.cpp: (JSC::CodeBlock::unlinkCallers):
  • VM/Machine.cpp: (JSC::Interpreter::initialize): (JSC::Interpreter::~Interpreter): (JSC::Interpreter::execute): (JSC::Interpreter::tryCTICachePutByID): (JSC::Interpreter::tryCTICacheGetByID): (JSC::Interpreter::cti_op_call_JSFunction): (JSC::Interpreter::cti_vm_dontLazyLinkCall): (JSC::Interpreter::cti_vm_lazyLinkCall):
  • VM/Machine.h:
  • VM/RegisterFile.h:
  • parser/Nodes.h:
  • runtime/JSArray.h:
  • runtime/JSCell.h:
  • runtime/JSFunction.h:
  • runtime/JSImmediate.h:
  • runtime/JSNumberCell.h:
  • runtime/JSObject.h:
  • runtime/JSString.h:
  • runtime/JSVariableObject.h:
  • runtime/ScopeChain.h:
  • runtime/Structure.h:
  • runtime/TypeInfo.h:
  • runtime/UString.h:
19:28 Changeset [38472] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix wx build.

  • jscore.bkl:
19:21 Changeset [38471] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Nixed X86
and X86Assembler:: prefixes in a lot of places using typedefs.
  • VM/CTI.cpp: (JSC::CTI::emitGetVirtualRegister): (JSC::CTI::emitGetVirtualRegisters): (JSC::CTI::emitPutCTIArgFromVirtualRegister): (JSC::CTI::emitPutCTIArg): (JSC::CTI::emitGetCTIArg): (JSC::CTI::emitPutCTIParam): (JSC::CTI::emitGetCTIParam): (JSC::CTI::emitPutToCallFrameHeader): (JSC::CTI::emitGetFromCallFrameHeader): (JSC::CTI::emitPutVirtualRegister): (JSC::CTI::emitNakedCall): (JSC::CTI::emitNakedFastCall): (JSC::CTI::emitCTICall): (JSC::CTI::emitJumpSlowCaseIfNotJSCell): (JSC::CTI::emitJumpSlowCaseIfNotImmNum): (JSC::CTI::emitJumpSlowCaseIfNotImmNums): (JSC::CTI::emitFastArithDeTagImmediate): (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero): (JSC::CTI::emitFastArithReTagImmediate): (JSC::CTI::emitFastArithPotentiallyReTagImmediate): (JSC::CTI::emitFastArithImmToInt): (JSC::CTI::emitFastArithIntToImmOrSlowCase): (JSC::CTI::emitFastArithIntToImmNoCheck): (JSC::CTI::emitArithIntToImmWithJump): (JSC::CTI::emitTagAsBoolImmediate): (JSC::CTI::compileOpCall): (JSC::CTI::compileOpStrictEq): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate): (JSC::CTI::compileBinaryArithOp): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::privateCompilePatchGetArrayLength): (JSC::CTI::emitGetVariableObjectRegister): (JSC::CTI::emitPutVariableObjectRegister):
  • VM/CTI.h: (JSC::CallRecord::CallRecord): (JSC::JmpTable::JmpTable): (JSC::SlowCaseEntry::SlowCaseEntry): (JSC::CTI::JSRInfo::JSRInfo):
  • wrec/WREC.h:
19:17 Changeset [38470] by ggaren@apple.com
  • 2 edits in trunk/WebCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

Try to fix Qt build.

  • WebCore.pro:
19:13 Changeset [38469] by bolsinga@apple.com
  • 4 edits in trunk/WebKit/mac

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Use DEFINE_STATIC_LOCAL for static RetainPtr<T>

19:05 Changeset [38468] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Try to fix Qt build.

19:02 Changeset [38467] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed OBJECT_OFFSET => FIELD_OFFSET

Nixed use of OBJECT_OFFSET outside of CTI.cpp by making CTI a friend in
more places.

  • VM/CTI.cpp: (JSC::CTI::compileOpCallInitializeCallFrame): (JSC::CTI::compileOpCall): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate): (JSC::CTI::compileBinaryArithOp): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::privateCompilePatchGetArrayLength): (JSC::CTI::emitGetVariableObjectRegister): (JSC::CTI::emitPutVariableObjectRegister):
  • runtime/JSValue.h:
  • runtime/JSVariableObject.h:
18:40 Changeset [38466] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renames:


X86Assembler::copy => X86Assembler::executableCopy
AssemblerBuffer::copy => AssemblerBuffer::executableCopy

  • VM/CTI.cpp: (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::privateCompilePatchGetArrayLength):
  • masm/X86Assembler.h: (JSC::AssemblerBuffer::executableCopy): (JSC::X86Assembler::executableCopy):
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp):
18:33 Changeset [38465] by ggaren@apple.com
  • 7 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed WREC => JSC::WREC, removing JSC:: prefix in a lot of places.
Renamed WRECFunction => WREC::CompiledRegExp, and deployed this type
name in place of a few casts.

  • runtime/RegExp.cpp: (JSC::RegExp::RegExp): (JSC::RegExp::~RegExp): (JSC::RegExp::match):
  • runtime/RegExp.h:
  • wrec/CharacterClassConstructor.cpp:
  • wrec/CharacterClassConstructor.h:
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp):
  • wrec/WREC.h: (JSC::WREC::Generator::Generator): (JSC::WREC::Parser::Parser): (JSC::WREC::Parser::parseAlternative):
18:21 Changeset [38464] by ggaren@apple.com
  • 19 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed BytecodeInterpreter => Interpreter.

  • JavaScriptCore.exp:
  • VM/CTI.cpp: (JSC::): (JSC::CTI::compileOpCall): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::freeCTIMachineTrampolines): (JSC::CTI::patchGetByIdSelf): (JSC::CTI::patchPutByIdReplace): (JSC::CTI::privateCompilePatchGetArrayLength):
  • VM/CTI.h:
  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructures): (JSC::CodeBlock::derefStructures): (JSC::CodeBlock::refStructures):
  • VM/Machine.cpp: (JSC::jsLess): (JSC::jsLessEq): (JSC::Interpreter::resolve): (JSC::Interpreter::resolveSkip): (JSC::Interpreter::resolveGlobal): (JSC::Interpreter::resolveBase): (JSC::Interpreter::resolveBaseAndProperty): (JSC::Interpreter::resolveBaseAndFunc): (JSC::Interpreter::slideRegisterWindowForCall): (JSC::Interpreter::callEval): (JSC::Interpreter::Interpreter): (JSC::Interpreter::initialize): (JSC::Interpreter::~Interpreter): (JSC::Interpreter::dumpCallFrame): (JSC::Interpreter::dumpRegisters): (JSC::Interpreter::isOpcode): (JSC::Interpreter::unwindCallFrame): (JSC::Interpreter::throwException): (JSC::Interpreter::execute): (JSC::Interpreter::debug): (JSC::Interpreter::resetTimeoutCheck): (JSC::Interpreter::checkTimeout): (JSC::Interpreter::createExceptionScope): (JSC::Interpreter::tryCachePutByID): (JSC::Interpreter::uncachePutByID): (JSC::Interpreter::tryCacheGetByID): (JSC::Interpreter::uncacheGetByID): (JSC::Interpreter::privateExecute): (JSC::Interpreter::retrieveArguments): (JSC::Interpreter::retrieveCaller): (JSC::Interpreter::retrieveLastCaller): (JSC::Interpreter::findFunctionCallFrame): (JSC::Interpreter::tryCTICachePutByID): (JSC::Interpreter::tryCTICacheGetByID): (JSC::Interpreter::cti_op_convert_this): (JSC::Interpreter::cti_op_end): (JSC::Interpreter::cti_op_add): (JSC::Interpreter::cti_op_pre_inc): (JSC::Interpreter::cti_timeout_check): (JSC::Interpreter::cti_register_file_check): (JSC::Interpreter::cti_op_loop_if_less): (JSC::Interpreter::cti_op_loop_if_lesseq): (JSC::Interpreter::cti_op_new_object): (JSC::Interpreter::cti_op_put_by_id): (JSC::Interpreter::cti_op_put_by_id_second): (JSC::Interpreter::cti_op_put_by_id_generic): (JSC::Interpreter::cti_op_put_by_id_fail): (JSC::Interpreter::cti_op_get_by_id): (JSC::Interpreter::cti_op_get_by_id_second): (JSC::Interpreter::cti_op_get_by_id_generic): (JSC::Interpreter::cti_op_get_by_id_fail): (JSC::Interpreter::cti_op_instanceof): (JSC::Interpreter::cti_op_del_by_id): (JSC::Interpreter::cti_op_mul): (JSC::Interpreter::cti_op_new_func): (JSC::Interpreter::cti_op_call_JSFunction): (JSC::Interpreter::cti_op_call_arityCheck): (JSC::Interpreter::cti_vm_dontLazyLinkCall): (JSC::Interpreter::cti_vm_lazyLinkCall): (JSC::Interpreter::cti_op_push_activation): (JSC::Interpreter::cti_op_call_NotJSFunction): (JSC::Interpreter::cti_op_create_arguments): (JSC::Interpreter::cti_op_create_arguments_no_params): (JSC::Interpreter::cti_op_tear_off_activation): (JSC::Interpreter::cti_op_tear_off_arguments): (JSC::Interpreter::cti_op_profile_will_call): (JSC::Interpreter::cti_op_profile_did_call): (JSC::Interpreter::cti_op_ret_scopeChain): (JSC::Interpreter::cti_op_new_array): (JSC::Interpreter::cti_op_resolve): (JSC::Interpreter::cti_op_construct_JSConstruct): (JSC::Interpreter::cti_op_construct_NotJSConstruct): (JSC::Interpreter::cti_op_get_by_val): (JSC::Interpreter::cti_op_resolve_func): (JSC::Interpreter::cti_op_sub): (JSC::Interpreter::cti_op_put_by_val): (JSC::Interpreter::cti_op_put_by_val_array): (JSC::Interpreter::cti_op_lesseq): (JSC::Interpreter::cti_op_loop_if_true): (JSC::Interpreter::cti_op_negate): (JSC::Interpreter::cti_op_resolve_base): (JSC::Interpreter::cti_op_resolve_skip): (JSC::Interpreter::cti_op_resolve_global): (JSC::Interpreter::cti_op_div): (JSC::Interpreter::cti_op_pre_dec): (JSC::Interpreter::cti_op_jless): (JSC::Interpreter::cti_op_not): (JSC::Interpreter::cti_op_jtrue): (JSC::Interpreter::cti_op_post_inc): (JSC::Interpreter::cti_op_eq): (JSC::Interpreter::cti_op_lshift): (JSC::Interpreter::cti_op_bitand): (JSC::Interpreter::cti_op_rshift): (JSC::Interpreter::cti_op_bitnot): (JSC::Interpreter::cti_op_resolve_with_base): (JSC::Interpreter::cti_op_new_func_exp): (JSC::Interpreter::cti_op_mod): (JSC::Interpreter::cti_op_less): (JSC::Interpreter::cti_op_neq): (JSC::Interpreter::cti_op_post_dec): (JSC::Interpreter::cti_op_urshift): (JSC::Interpreter::cti_op_bitxor): (JSC::Interpreter::cti_op_new_regexp): (JSC::Interpreter::cti_op_bitor): (JSC::Interpreter::cti_op_call_eval): (JSC::Interpreter::cti_op_throw): (JSC::Interpreter::cti_op_get_pnames): (JSC::Interpreter::cti_op_next_pname): (JSC::Interpreter::cti_op_push_scope): (JSC::Interpreter::cti_op_pop_scope): (JSC::Interpreter::cti_op_typeof): (JSC::Interpreter::cti_op_is_undefined): (JSC::Interpreter::cti_op_is_boolean): (JSC::Interpreter::cti_op_is_number): (JSC::Interpreter::cti_op_is_string): (JSC::Interpreter::cti_op_is_object): (JSC::Interpreter::cti_op_is_function): (JSC::Interpreter::cti_op_stricteq): (JSC::Interpreter::cti_op_nstricteq): (JSC::Interpreter::cti_op_to_jsnumber): (JSC::Interpreter::cti_op_in): (JSC::Interpreter::cti_op_push_new_scope): (JSC::Interpreter::cti_op_jmp_scopes): (JSC::Interpreter::cti_op_put_by_index): (JSC::Interpreter::cti_op_switch_imm): (JSC::Interpreter::cti_op_switch_char): (JSC::Interpreter::cti_op_switch_string): (JSC::Interpreter::cti_op_del_by_val): (JSC::Interpreter::cti_op_put_getter): (JSC::Interpreter::cti_op_put_setter): (JSC::Interpreter::cti_op_new_error): (JSC::Interpreter::cti_op_debug): (JSC::Interpreter::cti_vm_throw):
  • VM/Machine.h:
  • VM/Register.h:
  • VM/SamplingTool.h: (JSC::SamplingTool::SamplingTool):
  • bytecompiler/CodeGenerator.cpp: (JSC::BytecodeGenerator::generate): (JSC::BytecodeGenerator::BytecodeGenerator):
  • jsc.cpp: (runWithScripts):
  • runtime/ExecState.h: (JSC::ExecState::interpreter):
  • runtime/JSCell.h:
  • runtime/JSFunction.h:
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData):
  • runtime/JSGlobalData.h:
  • runtime/JSString.h:
  • wrec/WREC.cpp: (WREC::compileRegExp):
  • wrec/WREC.h:
18:08 Changeset [38463] by ggaren@apple.com
  • 27 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Roll out r38461 (my last patch) because it broke the world.

18:03 Changeset [38462] by bolsinga@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Geoffrey Garen.

Use RefPtr and PassRefPtr where appropriate.

17:48 Changeset [38461] by ggaren@apple.com
  • 27 edits in trunk/JavaScriptCore

2008-11-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

A few more renames:

BytecodeInterpreter => Interpreter
WREC => JSC::WREC, removing JSC:: prefix in a lot of places
X86Assembler::copy => X86Assembler::executableCopy
AssemblerBuffer::copy => AssemblerBuffer::executableCopy
WRECFunction => WREC::RegExpFunction
OBJECT_OFFSET => FIELD_OFFSET


Also:

Nixed use of OBJECT_OFFSET outside of CTI.cpp by making CTI a friend in more places.

Nixed X86
and X86Assembler:: prefixes in a lot of places using typedefs
  • JavaScriptCore.exp:
  • VM/CTI.cpp: (JSC::): (JSC::CTI::emitGetVirtualRegister): (JSC::CTI::emitGetVirtualRegisters): (JSC::CTI::emitPutCTIArgFromVirtualRegister): (JSC::CTI::emitPutCTIArg): (JSC::CTI::emitGetCTIArg): (JSC::CTI::emitPutCTIParam): (JSC::CTI::emitGetCTIParam): (JSC::CTI::emitPutToCallFrameHeader): (JSC::CTI::emitGetFromCallFrameHeader): (JSC::CTI::emitPutVirtualRegister): (JSC::CTI::emitNakedCall): (JSC::CTI::emitNakedFastCall): (JSC::CTI::emitCTICall): (JSC::CTI::emitJumpSlowCaseIfNotJSCell): (JSC::CTI::emitJumpSlowCaseIfNotImmNum): (JSC::CTI::emitJumpSlowCaseIfNotImmNums): (JSC::CTI::emitFastArithDeTagImmediate): (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero): (JSC::CTI::emitFastArithReTagImmediate): (JSC::CTI::emitFastArithPotentiallyReTagImmediate): (JSC::CTI::emitFastArithImmToInt): (JSC::CTI::emitFastArithIntToImmOrSlowCase): (JSC::CTI::emitFastArithIntToImmNoCheck): (JSC::CTI::emitArithIntToImmWithJump): (JSC::CTI::emitTagAsBoolImmediate): (JSC::CTI::compileOpCallInitializeCallFrame): (JSC::CTI::compileOpCall): (JSC::CTI::compileOpStrictEq): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate): (JSC::CTI::compileBinaryArithOp): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::freeCTIMachineTrampolines): (JSC::CTI::patchGetByIdSelf): (JSC::CTI::patchPutByIdReplace): (JSC::CTI::privateCompilePatchGetArrayLength): (JSC::CTI::emitGetVariableObjectRegister): (JSC::CTI::emitPutVariableObjectRegister):
  • VM/CTI.h: (JSC::CallRecord::CallRecord): (JSC::JmpTable::JmpTable): (JSC::SlowCaseEntry::SlowCaseEntry): (JSC::CTI::JSRInfo::JSRInfo):
  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructures): (JSC::CodeBlock::derefStructures): (JSC::CodeBlock::refStructures):
  • VM/Machine.cpp: (JSC::jsLess): (JSC::jsLessEq): (JSC::Interpreter::resolve): (JSC::Interpreter::resolveSkip): (JSC::Interpreter::resolveGlobal): (JSC::Interpreter::resolveBase): (JSC::Interpreter::resolveBaseAndProperty): (JSC::Interpreter::resolveBaseAndFunc): (JSC::Interpreter::slideRegisterWindowForCall): (JSC::Interpreter::callEval): (JSC::Interpreter::Interpreter): (JSC::Interpreter::initialize): (JSC::Interpreter::~Interpreter): (JSC::Interpreter::dumpCallFrame): (JSC::Interpreter::dumpRegisters): (JSC::Interpreter::isOpcode): (JSC::Interpreter::unwindCallFrame): (JSC::Interpreter::throwException): (JSC::Interpreter::execute): (JSC::Interpreter::debug): (JSC::Interpreter::resetTimeoutCheck): (JSC::Interpreter::checkTimeout): (JSC::Interpreter::createExceptionScope): (JSC::Interpreter::tryCachePutByID): (JSC::Interpreter::uncachePutByID): (JSC::Interpreter::tryCacheGetByID): (JSC::Interpreter::uncacheGetByID): (JSC::Interpreter::privateExecute): (JSC::Interpreter::retrieveArguments): (JSC::Interpreter::retrieveCaller): (JSC::Interpreter::retrieveLastCaller): (JSC::Interpreter::findFunctionCallFrame): (JSC::Interpreter::tryCTICachePutByID): (JSC::Interpreter::tryCTICacheGetByID): (JSC::): (JSC::Interpreter::cti_op_convert_this): (JSC::Interpreter::cti_op_end): (JSC::Interpreter::cti_op_add): (JSC::Interpreter::cti_op_pre_inc): (JSC::Interpreter::cti_timeout_check): (JSC::Interpreter::cti_register_file_check): (JSC::Interpreter::cti_op_loop_if_less): (JSC::Interpreter::cti_op_loop_if_lesseq): (JSC::Interpreter::cti_op_new_object): (JSC::Interpreter::cti_op_put_by_id): (JSC::Interpreter::cti_op_put_by_id_second): (JSC::Interpreter::cti_op_put_by_id_generic): (JSC::Interpreter::cti_op_put_by_id_fail): (JSC::Interpreter::cti_op_get_by_id): (JSC::Interpreter::cti_op_get_by_id_second): (JSC::Interpreter::cti_op_get_by_id_generic): (JSC::Interpreter::cti_op_get_by_id_fail): (JSC::Interpreter::cti_op_instanceof): (JSC::Interpreter::cti_op_del_by_id): (JSC::Interpreter::cti_op_mul): (JSC::Interpreter::cti_op_new_func): (JSC::Interpreter::cti_op_call_JSFunction): (JSC::Interpreter::cti_op_call_arityCheck): (JSC::Interpreter::cti_vm_dontLazyLinkCall): (JSC::Interpreter::cti_vm_lazyLinkCall): (JSC::Interpreter::cti_op_push_activation): (JSC::Interpreter::cti_op_call_NotJSFunction): (JSC::Interpreter::cti_op_create_arguments): (JSC::Interpreter::cti_op_create_arguments_no_params): (JSC::Interpreter::cti_op_tear_off_activation): (JSC::Interpreter::cti_op_tear_off_arguments): (JSC::Interpreter::cti_op_profile_will_call): (JSC::Interpreter::cti_op_profile_did_call): (JSC::Interpreter::cti_op_ret_scopeChain): (JSC::Interpreter::cti_op_new_array): (JSC::Interpreter::cti_op_resolve): (JSC::Interpreter::cti_op_construct_JSConstruct): (JSC::Interpreter::cti_op_construct_NotJSConstruct): (JSC::Interpreter::cti_op_get_by_val): (JSC::Interpreter::cti_op_resolve_func): (JSC::Interpreter::cti_op_sub): (JSC::Interpreter::cti_op_put_by_val): (JSC::Interpreter::cti_op_put_by_val_array): (JSC::Interpreter::cti_op_lesseq): (JSC::Interpreter::cti_op_loop_if_true): (JSC::Interpreter::cti_op_negate): (JSC::Interpreter::cti_op_resolve_base): (JSC::Interpreter::cti_op_resolve_skip): (JSC::Interpreter::cti_op_resolve_global): (JSC::Interpreter::cti_op_div): (JSC::Interpreter::cti_op_pre_dec): (JSC::Interpreter::cti_op_jless): (JSC::Interpreter::cti_op_not): (JSC::Interpreter::cti_op_jtrue): (JSC::Interpreter::cti_op_post_inc): (JSC::Interpreter::cti_op_eq): (JSC::Interpreter::cti_op_lshift): (JSC::Interpreter::cti_op_bitand): (JSC::Interpreter::cti_op_rshift): (JSC::Interpreter::cti_op_bitnot): (JSC::Interpreter::cti_op_resolve_with_base): (JSC::Interpreter::cti_op_new_func_exp): (JSC::Interpreter::cti_op_mod): (JSC::Interpreter::cti_op_less): (JSC::Interpreter::cti_op_neq): (JSC::Interpreter::cti_op_post_dec): (JSC::Interpreter::cti_op_urshift): (JSC::Interpreter::cti_op_bitxor): (JSC::Interpreter::cti_op_new_regexp): (JSC::Interpreter::cti_op_bitor): (JSC::Interpreter::cti_op_call_eval): (JSC::Interpreter::cti_op_throw): (JSC::Interpreter::cti_op_get_pnames): (JSC::Interpreter::cti_op_next_pname): (JSC::Interpreter::cti_op_push_scope): (JSC::Interpreter::cti_op_pop_scope): (JSC::Interpreter::cti_op_typeof): (JSC::Interpreter::cti_op_is_undefined): (JSC::Interpreter::cti_op_is_boolean): (JSC::Interpreter::cti_op_is_number): (JSC::Interpreter::cti_op_is_string): (JSC::Interpreter::cti_op_is_object): (JSC::Interpreter::cti_op_is_function): (JSC::Interpreter::cti_op_stricteq): (JSC::Interpreter::cti_op_nstricteq): (JSC::Interpreter::cti_op_to_jsnumber): (JSC::Interpreter::cti_op_in): (JSC::Interpreter::cti_op_push_new_scope): (JSC::Interpreter::cti_op_jmp_scopes): (JSC::Interpreter::cti_op_put_by_index): (JSC::Interpreter::cti_op_switch_imm): (JSC::Interpreter::cti_op_switch_char): (JSC::Interpreter::cti_op_switch_string): (JSC::Interpreter::cti_op_del_by_val): (JSC::Interpreter::cti_op_put_getter): (JSC::Interpreter::cti_op_put_setter): (JSC::Interpreter::cti_op_new_error): (JSC::Interpreter::cti_op_debug): (JSC::Interpreter::cti_vm_throw):
  • VM/Machine.h:
  • VM/Register.h:
  • VM/SamplingTool.cpp: (JSC::SamplingTool::dump):
  • VM/SamplingTool.h: (JSC::SamplingTool::SamplingTool):
  • bytecompiler/CodeGenerator.cpp: (JSC::BytecodeGenerator::generate): (JSC::BytecodeGenerator::BytecodeGenerator):
  • jsc.cpp: (runWithScripts):
  • masm/X86Assembler.h: (JSC::AssemblerBuffer::executableCopy): (JSC::X86Assembler::executableCopy):
  • runtime/ExecState.h: (JSC::ExecState::interpreter):
  • runtime/JSCell.h:
  • runtime/JSFunction.h:
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData):
  • runtime/JSGlobalData.h:
  • runtime/JSImmediate.h:
  • runtime/JSString.h:
  • runtime/JSValue.h:
  • runtime/JSVariableObject.h:
  • runtime/RegExp.cpp: (JSC::RegExp::RegExp): (JSC::RegExp::~RegExp): (JSC::RegExp::match):
  • runtime/RegExp.h:
  • wrec/CharacterClassConstructor.cpp:
  • wrec/CharacterClassConstructor.h:
  • wrec/WREC.cpp: (JSC::WREC::compileRegExp):
  • wrec/WREC.h: (JSC::WREC::Generator::Generator): (JSC::WREC::Parser::): (JSC::WREC::Parser::Parser): (JSC::WREC::Parser::parseAlternative):
17:43 Changeset [38460] by bolsinga@apple.com
  • 2 edits in trunk/WebCore

Fix build break for real.

17:38 Changeset [38459] by bolsinga@apple.com
  • 2 edits in trunk/WebCore

Fix build break and bug.

17:05 Changeset [38458] by bolsinga@apple.com
  • 16 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Use DEFINE_STATIC_LOCAL for static RetainPtr<T>, RefPtr<T>. Add additional
uses of DEFINE_STATIC_LOCAL where appropriate.

15:07 Changeset [38457] by bolsinga@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Conditionally have the DEFINE_STATIC_LOCAL workaround <rdar://problem/6354696>
(Codegen issue with C++ static reference in gcc build 5465) based upon the compiler
build versions. It will use the:
static T& = *new T;
style for all other compilers.

14:17 Changeset [38456] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

2008-11-16 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Disable XHR upload progress event tests on Tiger due to race condition causing
intermittent failure reported in https://bugs.webkit.org/show_bug.cgi?id=22298

  • platform/mac-tiger/Skipped:
13:53 Changeset [38455] by zecke@webkit.org
  • 2 edits in trunk/WebCore

Do not spit Curl errors into the stdout as this is used by DRT

We have failing tests results due the curl errors printed to stdout,
move them to stderr to be able to pass those tests.

13:49 Changeset [38454] by zecke@webkit.org
  • 2 edits in trunk/WebCore

Gtk+ build fix

12:07 Changeset [38453] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-11-16 Darin Adler <darin@apple.com>

  • try to fix Qt build
  • WebCore.pro: Add the worker-related source files.
11:58 Changeset [38452] by darin@apple.com
  • 3 edits in trunk/WebCore

2008-11-16 Darin Adler <darin@apple.com>

Suggested by Alexey Proskuryakov.

  • fix the GTK build another way
  • GNUmakefile.am: Add the worker-related source files.
  • bindings/js/JSEventTarget.cpp: Take the #if back out.
11:51 Changeset [38451] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-11-16 Darin Adler <darin@apple.com>

  • try to fix GTK build
  • bindings/js/JSEventTarget.cpp: Put worker includes inside an #if.
11:49 Changeset [38450] by darin@apple.com
  • 2 edits in trunk/WebKit/qt

2008-11-16 Darin Adler <darin@apple.com>

  • try to fix build
  • Api/qwebhistory.cpp: Added include of "KURL.h".
11:39 Changeset [38449] by darin@apple.com
  • 15 edits in trunk

WebCore:

2008-11-16 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

  • history/HistoryItem.cpp: Sort includes, add newly needed ones, and remove no-longer-needed ones. (WebCore::HistoryItem::HistoryItem): Initialize m_lastVisitWasFailure to false. (WebCore::HistoryItem::showTreeWithIndent): Rewrote to avoid appending to a String, since that's not efficient.
  • history/HistoryItem.h: Removed unneeded includes. Added lastVisitWasFailure, setLastVisitWasFailure, and m_lastVisitWasFailure.
  • history/mac/HistoryItemMac.mm: Add newly-needed include (WebCore::HistoryItem::setTransientProperty): Rewrote to avoid keeping a m_transientProperties map around when it is empty.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::createHistoryItem): Call setLastVisitWasFailure when the page was unreachable or an HTTP page with a status code that indicates failure.

WebKit/mac:

2008-11-16 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

  • History/WebHistoryItem.mm: Added lastVisitWasFailureKey. (-[WebHistoryItem initFromDictionaryRepresentation:]): Set the lastVisitWasFailure flag in the history item if the dictionary had lastVisitWasFailureKey true. (-[WebHistoryItem dictionaryRepresentation]): Set the lastVisitWasFailureKey boolean in the dictionary if the history item had the lastVisitWasFailure flag. (-[WebHistoryItem lastVisitWasFailure]): Added.
  • History/WebHistoryItemInternal.h: Moved include of WebBackForwardList here from WebHistoryItemPrivate.h; removed other unneeded includes.
  • History/WebHistoryItemPrivate.h: Added lastVisitWasFailure method. Removed unneeded includes.
  • Misc/WebNSDictionaryExtras.h: Added _webkit_boolForKey.
  • Misc/WebNSDictionaryExtras.m: (-[NSDictionary _webkit_boolForKey:]): Added.

WebKit/win:

2008-11-16 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

  • Interfaces/IWebHistoryItemPrivate.idl: Added lastVisitWasFailure function.
  • WebHistoryItem.cpp: (WebHistoryItem::initFromDictionaryRepresentation): Set the lastVisitWasFailure flag in the history item if the dictionary had an entry for lastVisitWasFailureKey. (WebHistoryItem::dictionaryRepresentation): Set the lastVisitWasFailureKey key in the dictionary if the history item had the lastVisitWasFailure flag. (WebHistoryItem::lastVisitWasFailure): Added.
  • WebHistoryItem.h: Added lastVisitWasFailure function.
10:43 Changeset [38448] by weinig@apple.com
  • 2 edits in trunk/WebKitTools

2008-11-16 Sam Weinig <sam@webkit.org>

  • Scripts/do-webcore-rename: Remove now fixed renames.
10:21 Changeset [38447] by darin@apple.com
  • 2 edits in trunk/WebKitTools

2008-11-16 Darin Adler <darin@apple.com>

  • Scripts/do-webcore-rename: Plan some future renames.
06:10 Changeset [38446] by christian@webkit.org
  • 2 edits in trunk/WebKit/gtk

2008-11-16 Christian Dywan <christian@twoasts.de>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=22207
[Gtk] Font sizes are not handled properly when updated at runtime

  • webkit/webkitwebview.cpp: Move the DPI/ conversion into a helper function and apply the logic in the notification callback.
04:45 Changeset [38445] by staikos@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Timothy Hatcher.

Optimization: don't relayout, repaint, or emit a DOM event if the
scroll event didn't scroll anywhere.

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): add early exit
02:05 Changeset [38444] by ap@webkit.org
  • 13 edits in trunk

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=22290
Remove cross-heap GC and MessagePort multi-threading support

It is broken (and may not be implementable at all), and no longer needed, as we
don't use MessagePorts for communication with workers any more.

JavaScriptCore:

  • JavaScriptCore.exp:
  • runtime/Collector.cpp: (JSC::Heap::collect):
  • runtime/JSGlobalObject.cpp:
  • runtime/JSGlobalObject.h: Remove hooks for cross-heap GC.

WebCore:

  • bindings/js/JSDOMBinding.cpp:
  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/JSDOMWindowBase.h: Removed cross-heap GC implementation.
  • dom/MessagePort.cpp: (WebCore::MessagePort::hasPendingActivity):
  • dom/MessagePort.h: Made objects RefCounted instead of ThreadSafeShared, added FIXME comments for code that is unnecessarily complicated for single threaded case.
01:11 Changeset [38443] by ap@webkit.org
  • 14 edits
    6 moves
    2 adds in trunk/WebCore

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=22266
Stop using MessagePort for communication with workers

The current MessagePort specification is not well suited for being implemented in a
multi-threaded or multi-process environment, and this doesn't appear to be easily fixable.
This patch implements a simpler Mozilla API for workers instead.

  • WebCore.xcodeproj/project.pbxproj:
  • DerivedSources.make:
  • bindings/js/JSDOMWindowBase.cpp: (jsDOMWindowBaseWorker):
  • bindings/js/JSDedicatedWorkerConstructor.cpp: Removed.
  • bindings/js/JSDedicatedWorkerConstructor.h: Removed.
  • bindings/js/JSDedicatedWorkerCustom.cpp: Removed.
  • bindings/js/JSWorkerConstructor.cpp: Copied from WebCore/bindings/js/JSDedicatedWorkerConstructor.cpp.
  • bindings/js/JSWorkerConstructor.h: Copied from WebCore/bindings/js/JSDedicatedWorkerConstructor.h.
  • bindings/js/JSWorkerCustom.cpp: Copied from WebCore/bindings/js/JSDedicatedWorkerCustom.cpp.
  • dom/DedicatedWorker.cpp: Removed.
  • dom/DedicatedWorker.h: Removed.
  • dom/DedicatedWorker.idl: Removed. Renamed DedicatedWorker to Worker to match Mozilla and current WHATWG cpec.
  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): Clear worker exceptions to avoid hitting an assertion.
  • dom/EventTarget.cpp: (WebCore::EventTarget::toWorker):
  • dom/EventTarget.h:
  • bindings/js/JSEventTarget.cpp: (WebCore::toJS): WorkerContext is now an EventTarget, too.
  • bindings/js/JSWorkerContext.cpp: Removed onconnect, constructors for MessageChannel and MessagePort. Added postMessage() and onmessage.
  • dom/ScriptExecutionContext.cpp: (WebCore::performTask): Do not reference ScriptExecutionContext when posting a task - this operation is not thread safe. It is also not necessary any more, as the context is kept alive by WorkerMessagingProxy.
  • dom/Worker.cpp: Copied from WebCore/dom/DedicatedWorker.cpp. (WebCore::Worker::Worker): Start loading the script right away - there is no reason to do that on a timer. (WebCore::Worker::~Worker): Notify messaging proxy. (WebCore::Worker::postMessage): Just ask the proxy to post the message. (WebCore::Worker::notifyFinished): Notify messaging proxy when a thread object becomes available. Also, it is now safe to unsetPendingActivity(), making the object collectable. I'm not sure if this is the right lifetime for workers, as unreachable workers with event listeners should probably be kept alive, but it at least lets the object be collected. (WebCore::Worker::addEventListener): Added an EventTarget implementation. (WebCore::Worker::removeEventListener): Added an EventTarget implementation. (WebCore::Worker::dispatchEvent): Added an EventTarget implementation.
  • dom/Worker.h: Copied from WebCore/dom/DedicatedWorker.h.
  • dom/Worker.idl: Copied from WebCore/dom/DedicatedWorker.idl. Removed onclose, made an EventListener. Actual messaging is now handled by WorkerMessagingProxy.
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::~WorkerContext): Notify messaging proxy that the context was shut down successfully. (WebCore::WorkerContext::postMessage): Added. Post the message via messaging proxy.
  • dom/WorkerContext.h: Added postMessage and onmessage, removed onconnect.
  • dom/WorkerMessagingProxy.cpp: Added.
  • dom/WorkerMessagingProxy.h: Added. This new class implements actual messaging. It is notified when a Worker is garbage collected, and asks the thread to shut down. It also owns the thread object, and references script execution context, making it safe to post messages to it remotely.
  • dom/WorkerThread.cpp:
  • dom/WorkerThread.h: Keep a reference to messaging proxy, not to Worker itself. Also, the thread object no longer keeps itself alive - it is now the job of messaging proxy.

11/15/08:

22:04 Changeset [38442] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-15 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Cleanup jsc command line code a little.

  • jsc.cpp: (functionQuit): (main): Use standard exit status macros (cleanupGlobalData): Factor out cleanup code into this function. (printUsageStatement): Use standard exit status macros.
21:36 Changeset [38441] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-11-15 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Cleanup BytecodeGenerator constructors.

  • bytecompiler/CodeGenerator.cpp: (JSC::BytecodeGenerator::BytecodeGenerator):
  • bytecompiler/CodeGenerator.h:
  • parser/Nodes.cpp: (JSC::ProgramNode::generateBytecode):
20:40 Changeset [38440] by darin@apple.com
  • 150 edits
    6 moves in trunk

JavaScriptCore:

2008-11-15 Darin Adler <darin@apple.com>

Rubber stamped by Geoff Garen.

  • do the long-planned StructureID -> Structure rename
  • API/JSCallbackConstructor.cpp: (JSC::JSCallbackConstructor::JSCallbackConstructor):
  • API/JSCallbackConstructor.h: (JSC::JSCallbackConstructor::createStructure):
  • API/JSCallbackFunction.h: (JSC::JSCallbackFunction::createStructure):
  • API/JSCallbackObject.h: (JSC::JSCallbackObject::createStructure):
  • API/JSCallbackObjectFunctions.h: (JSC::::JSCallbackObject):
  • API/JSValueRef.cpp: (JSValueIsInstanceOfConstructor):
  • GNUmakefile.am:
  • JavaScriptCore.exp:
  • JavaScriptCore.pri:
  • JavaScriptCore.scons:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/CTI.cpp: (JSC::CTI::compileBinaryArithOp): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::transitionWillNeedStorageRealloc): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::patchGetByIdSelf): (JSC::CTI::patchPutByIdReplace):
  • VM/CTI.h: (JSC::CTI::compileGetByIdSelf): (JSC::CTI::compileGetByIdProto): (JSC::CTI::compileGetByIdChain): (JSC::CTI::compilePutByIdReplace): (JSC::CTI::compilePutByIdTransition):
  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructure): (JSC::CodeBlock::printStructures): (JSC::CodeBlock::dump): (JSC::CodeBlock::~CodeBlock): (JSC::CodeBlock::derefStructures): (JSC::CodeBlock::refStructures):
  • VM/CodeBlock.h:
  • VM/Instruction.h: (JSC::Instruction::Instruction): (JSC::Instruction::):
  • VM/Machine.cpp: (JSC::jsTypeStringForValue): (JSC::jsIsObjectType): (JSC::BytecodeInterpreter::resolveGlobal): (JSC::BytecodeInterpreter::BytecodeInterpreter): (JSC::cachePrototypeChain): (JSC::BytecodeInterpreter::tryCachePutByID): (JSC::BytecodeInterpreter::uncachePutByID): (JSC::BytecodeInterpreter::tryCacheGetByID): (JSC::BytecodeInterpreter::uncacheGetByID): (JSC::BytecodeInterpreter::privateExecute): (JSC::BytecodeInterpreter::tryCTICachePutByID): (JSC::BytecodeInterpreter::tryCTICacheGetByID): (JSC::BytecodeInterpreter::cti_op_instanceof): (JSC::BytecodeInterpreter::cti_op_construct_JSConstruct): (JSC::BytecodeInterpreter::cti_op_resolve_global): (JSC::BytecodeInterpreter::cti_op_is_undefined):
  • runtime/Arguments.h: (JSC::Arguments::createStructure):
  • runtime/ArrayConstructor.cpp: (JSC::ArrayConstructor::ArrayConstructor):
  • runtime/ArrayConstructor.h:
  • runtime/ArrayPrototype.cpp: (JSC::ArrayPrototype::ArrayPrototype):
  • runtime/ArrayPrototype.h:
  • runtime/BatchedTransitionOptimizer.h: (JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer): (JSC::BatchedTransitionOptimizer::~BatchedTransitionOptimizer):
  • runtime/BooleanConstructor.cpp: (JSC::BooleanConstructor::BooleanConstructor):
  • runtime/BooleanConstructor.h:
  • runtime/BooleanObject.cpp: (JSC::BooleanObject::BooleanObject):
  • runtime/BooleanObject.h:
  • runtime/BooleanPrototype.cpp: (JSC::BooleanPrototype::BooleanPrototype):
  • runtime/BooleanPrototype.h:
  • runtime/DateConstructor.cpp: (JSC::DateConstructor::DateConstructor):
  • runtime/DateConstructor.h:
  • runtime/DateInstance.cpp: (JSC::DateInstance::DateInstance):
  • runtime/DateInstance.h:
  • runtime/DatePrototype.cpp: (JSC::DatePrototype::DatePrototype):
  • runtime/DatePrototype.h: (JSC::DatePrototype::createStructure):
  • runtime/ErrorConstructor.cpp: (JSC::ErrorConstructor::ErrorConstructor):
  • runtime/ErrorConstructor.h:
  • runtime/ErrorInstance.cpp: (JSC::ErrorInstance::ErrorInstance):
  • runtime/ErrorInstance.h:
  • runtime/ErrorPrototype.cpp: (JSC::ErrorPrototype::ErrorPrototype):
  • runtime/ErrorPrototype.h:
  • runtime/FunctionConstructor.cpp: (JSC::FunctionConstructor::FunctionConstructor):
  • runtime/FunctionConstructor.h:
  • runtime/FunctionPrototype.cpp: (JSC::FunctionPrototype::FunctionPrototype): (JSC::FunctionPrototype::addFunctionProperties):
  • runtime/FunctionPrototype.h: (JSC::FunctionPrototype::createStructure):
  • runtime/GlobalEvalFunction.cpp: (JSC::GlobalEvalFunction::GlobalEvalFunction):
  • runtime/GlobalEvalFunction.h:
  • runtime/Identifier.h:
  • runtime/InternalFunction.cpp: (JSC::InternalFunction::InternalFunction):
  • runtime/InternalFunction.h: (JSC::InternalFunction::createStructure): (JSC::InternalFunction::InternalFunction):
  • runtime/JSActivation.cpp: (JSC::JSActivation::JSActivation):
  • runtime/JSActivation.h: (JSC::JSActivation::createStructure):
  • runtime/JSArray.cpp: (JSC::JSArray::JSArray):
  • runtime/JSArray.h: (JSC::JSArray::createStructure):
  • runtime/JSCell.h: (JSC::JSCell::JSCell): (JSC::JSCell::isObject): (JSC::JSCell::isString): (JSC::JSCell::structure): (JSC::JSValue::needsThisConversion):
  • runtime/JSFunction.cpp: (JSC::JSFunction::construct):
  • runtime/JSFunction.h: (JSC::JSFunction::JSFunction): (JSC::JSFunction::createStructure):
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): (JSC::JSGlobalData::createLeaked):
  • runtime/JSGlobalData.h:
  • runtime/JSGlobalObject.cpp: (JSC::markIfNeeded): (JSC::JSGlobalObject::reset):
  • runtime/JSGlobalObject.h: (JSC::JSGlobalObject::JSGlobalObject): (JSC::JSGlobalObject::argumentsStructure): (JSC::JSGlobalObject::arrayStructure): (JSC::JSGlobalObject::booleanObjectStructure): (JSC::JSGlobalObject::callbackConstructorStructure): (JSC::JSGlobalObject::callbackFunctionStructure): (JSC::JSGlobalObject::callbackObjectStructure): (JSC::JSGlobalObject::dateStructure): (JSC::JSGlobalObject::emptyObjectStructure): (JSC::JSGlobalObject::errorStructure): (JSC::JSGlobalObject::functionStructure): (JSC::JSGlobalObject::numberObjectStructure): (JSC::JSGlobalObject::prototypeFunctionStructure): (JSC::JSGlobalObject::regExpMatchesArrayStructure): (JSC::JSGlobalObject::regExpStructure): (JSC::JSGlobalObject::stringObjectStructure): (JSC::JSGlobalObject::createStructure): (JSC::Structure::prototypeForLookup):
  • runtime/JSNotAnObject.h: (JSC::JSNotAnObject::createStructure):
  • runtime/JSNumberCell.h: (JSC::JSNumberCell::createStructure): (JSC::JSNumberCell::JSNumberCell):
  • runtime/JSObject.cpp: (JSC::JSObject::mark): (JSC::JSObject::put): (JSC::JSObject::deleteProperty): (JSC::JSObject::defineGetter): (JSC::JSObject::defineSetter): (JSC::JSObject::getPropertyAttributes): (JSC::JSObject::getPropertyNames): (JSC::JSObject::removeDirect): (JSC::JSObject::createInheritorID):
  • runtime/JSObject.h: (JSC::JSObject::getDirect): (JSC::JSObject::getDirectLocation): (JSC::JSObject::hasCustomProperties): (JSC::JSObject::hasGetterSetterProperties): (JSC::JSObject::createStructure): (JSC::JSObject::JSObject): (JSC::JSObject::~JSObject): (JSC::JSObject::prototype): (JSC::JSObject::setPrototype): (JSC::JSObject::setStructure): (JSC::JSObject::inheritorID): (JSC::JSObject::inlineGetOwnPropertySlot): (JSC::JSObject::getOwnPropertySlotForWrite): (JSC::JSCell::fastGetOwnPropertySlot): (JSC::JSObject::putDirect): (JSC::JSObject::putDirectWithoutTransition): (JSC::JSObject::transitionTo):
  • runtime/JSPropertyNameIterator.h: (JSC::JSPropertyNameIterator::next):
  • runtime/JSStaticScopeObject.h: (JSC::JSStaticScopeObject::JSStaticScopeObject): (JSC::JSStaticScopeObject::createStructure):
  • runtime/JSString.h: (JSC::JSString::JSString): (JSC::JSString::createStructure):
  • runtime/JSVariableObject.h: (JSC::JSVariableObject::JSVariableObject):
  • runtime/JSWrapperObject.h: (JSC::JSWrapperObject::JSWrapperObject):
  • runtime/MathObject.cpp: (JSC::MathObject::MathObject):
  • runtime/MathObject.h: (JSC::MathObject::createStructure):
  • runtime/NativeErrorConstructor.cpp: (JSC::NativeErrorConstructor::NativeErrorConstructor):
  • runtime/NativeErrorConstructor.h:
  • runtime/NativeErrorPrototype.cpp: (JSC::NativeErrorPrototype::NativeErrorPrototype):
  • runtime/NativeErrorPrototype.h:
  • runtime/NumberConstructor.cpp: (JSC::NumberConstructor::NumberConstructor):
  • runtime/NumberConstructor.h: (JSC::NumberConstructor::createStructure):
  • runtime/NumberObject.cpp: (JSC::NumberObject::NumberObject):
  • runtime/NumberObject.h:
  • runtime/NumberPrototype.cpp: (JSC::NumberPrototype::NumberPrototype):
  • runtime/NumberPrototype.h:
  • runtime/ObjectConstructor.cpp: (JSC::ObjectConstructor::ObjectConstructor):
  • runtime/ObjectConstructor.h:
  • runtime/ObjectPrototype.cpp: (JSC::ObjectPrototype::ObjectPrototype):
  • runtime/ObjectPrototype.h:
  • runtime/Operations.h: (JSC::equalSlowCaseInline):
  • runtime/PropertyNameArray.h: (JSC::PropertyNameArrayData::setCachedStructure): (JSC::PropertyNameArrayData::cachedStructure): (JSC::PropertyNameArrayData::setCachedPrototypeChain): (JSC::PropertyNameArrayData::cachedPrototypeChain): (JSC::PropertyNameArrayData::PropertyNameArrayData):
  • runtime/PrototypeFunction.cpp: (JSC::PrototypeFunction::PrototypeFunction):
  • runtime/PrototypeFunction.h:
  • runtime/RegExpConstructor.cpp: (JSC::RegExpConstructor::RegExpConstructor):
  • runtime/RegExpConstructor.h: (JSC::RegExpConstructor::createStructure):
  • runtime/RegExpObject.cpp: (JSC::RegExpObject::RegExpObject):
  • runtime/RegExpObject.h: (JSC::RegExpObject::createStructure):
  • runtime/RegExpPrototype.cpp: (JSC::RegExpPrototype::RegExpPrototype):
  • runtime/RegExpPrototype.h:
  • runtime/StringConstructor.cpp: (JSC::StringConstructor::StringConstructor):
  • runtime/StringConstructor.h:
  • runtime/StringObject.cpp: (JSC::StringObject::StringObject):
  • runtime/StringObject.h: (JSC::StringObject::createStructure):
  • runtime/StringObjectThatMasqueradesAsUndefined.h: (JSC::StringObjectThatMasqueradesAsUndefined::create): (JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined): (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
  • runtime/StringPrototype.cpp: (JSC::StringPrototype::StringPrototype):
  • runtime/StringPrototype.h:
  • runtime/Structure.cpp: Copied from JavaScriptCore/runtime/StructureID.cpp. (JSC::Structure::dumpStatistics): (JSC::Structure::Structure): (JSC::Structure::~Structure): (JSC::Structure::startIgnoringLeaks): (JSC::Structure::stopIgnoringLeaks): (JSC::Structure::materializePropertyMap): (JSC::Structure::getEnumerablePropertyNames): (JSC::Structure::clearEnumerationCache): (JSC::Structure::growPropertyStorageCapacity): (JSC::Structure::addPropertyTransitionToExistingStructure): (JSC::Structure::addPropertyTransition): (JSC::Structure::removePropertyTransition): (JSC::Structure::changePrototypeTransition): (JSC::Structure::getterSetterTransition): (JSC::Structure::toDictionaryTransition): (JSC::Structure::fromDictionaryTransition): (JSC::Structure::addPropertyWithoutTransition): (JSC::Structure::removePropertyWithoutTransition): (JSC::Structure::createCachedPrototypeChain): (JSC::Structure::checkConsistency): (JSC::Structure::copyPropertyTable): (JSC::Structure::get): (JSC::Structure::put): (JSC::Structure::remove): (JSC::Structure::insertIntoPropertyMapHashTable): (JSC::Structure::createPropertyMapHashTable): (JSC::Structure::expandPropertyMapHashTable): (JSC::Structure::rehashPropertyMapHashTable): (JSC::Structure::getEnumerablePropertyNamesInternal):
  • runtime/Structure.h: Copied from JavaScriptCore/runtime/StructureID.h. (JSC::Structure::create): (JSC::Structure::previousID): (JSC::Structure::setCachedPrototypeChain): (JSC::Structure::cachedPrototypeChain): (JSC::Structure::): (JSC::Structure::get):
  • runtime/StructureChain.cpp: Copied from JavaScriptCore/runtime/StructureIDChain.cpp. (JSC::StructureChain::StructureChain): (JSC::structureChainsAreEqual):
  • runtime/StructureChain.h: Copied from JavaScriptCore/runtime/StructureIDChain.h. (JSC::StructureChain::create): (JSC::StructureChain::head):
  • runtime/StructureID.cpp: Removed.
  • runtime/StructureID.h: Removed.
  • runtime/StructureIDChain.cpp: Removed.
  • runtime/StructureIDChain.h: Removed.
  • runtime/StructureIDTransitionTable.h: Removed.
  • runtime/StructureTransitionTable.h: Copied from JavaScriptCore/runtime/StructureIDTransitionTable.h.

JavaScriptGlue:

2008-11-15 Darin Adler <darin@apple.com>

Rubber stamped by Geoff Garen.

  • do the long-planned StructureID -> Structure rename
  • JSRun.cpp: (JSGlueGlobalObject::JSGlueGlobalObject): (JSRun::JSRun):
  • JSRun.h: (JSGlueGlobalObject::userObjectStructure):
  • JSUtils.cpp: (getThreadGlobalObject):
  • UserObjectImp.cpp: (UserObjectImp::UserObjectImp):
  • UserObjectImp.h: (UserObjectImp::createStructure):

WebCore:

2008-11-15 Darin Adler <darin@apple.com>

Rubber stamped by Geoff Garen.

  • do the long-planned StructureID -> Structure rename
  • ForwardingHeaders/runtime/Structure.h: Copied from WebCore/ForwardingHeaders/runtime/StructureID.h.
  • ForwardingHeaders/runtime/StructureID.h: Removed.
  • bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::JSAudioConstructor):
  • bindings/js/JSDOMBinding.cpp: (WebCore::getCachedDOMStructure): (WebCore::cacheDOMStructure):
  • bindings/js/JSDOMBinding.h: (WebCore::DOMObject::DOMObject): (WebCore::getDOMStructure):
  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::JSDOMWindowBase):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell): (WebCore::JSDOMWindowShell::setWindow):
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::createStructure):
  • bindings/js/JSDedicatedWorkerConstructor.cpp: (WebCore::JSDedicatedWorkerConstructor::JSDedicatedWorkerConstructor):
  • bindings/js/JSHTMLAllCollection.h: (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): (WebCore::JSHTMLAllCollection::createStructure):
  • bindings/js/JSImageConstructor.cpp: (WebCore::JSImageConstructor::JSImageConstructor):
  • bindings/js/JSInspectedObjectWrapper.cpp: (WebCore::JSInspectedObjectWrapper::wrap): (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
  • bindings/js/JSInspectedObjectWrapper.h:
  • bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::leakInspectorCallbackWrapperStructure): (WebCore::JSInspectorCallbackWrapper::wrap): (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
  • bindings/js/JSInspectorCallbackWrapper.h:
  • bindings/js/JSMessageChannelConstructor.cpp: (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
  • bindings/js/JSNamedNodesCollection.h: (WebCore::JSNamedNodesCollection::createStructure):
  • bindings/js/JSOptionConstructor.cpp: (WebCore::JSOptionConstructor::JSOptionConstructor):
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
  • bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::createStructure):
  • bindings/js/JSRGBColor.h: (WebCore::JSRGBColor::createStructure):
  • bindings/js/JSWorkerContext.cpp: (WebCore::createJSWorkerContextStructure): (WebCore::JSWorkerContext::JSWorkerContext): (WebCore::JSWorkerContext::createPrototype):
  • bindings/js/JSWorkerContext.h: (WebCore::JSWorkerContext::createStructure): (WebCore::JSWorkerContextPrototype::JSWorkerContextPrototype): (WebCore::JSWorkerContextPrototype::createStructure):
  • bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
  • bindings/js/JSXSLTProcessorConstructor.cpp: (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/objc/objc_runtime.h: (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
  • bridge/qt/qt_runtime.cpp: (JSC::Bindings::QtConnectionObject::execute):
  • bridge/qt/qt_runtime.h: (JSC::Bindings::QtRuntimeMethod::createStructure):
  • bridge/runtime_array.h: (JSC::RuntimeArray::createStructure):
  • bridge/runtime_method.h: (JSC::RuntimeMethod::createStructure):
  • bridge/runtime_object.cpp: (JSC::RuntimeObjectImp::RuntimeObjectImp):
  • bridge/runtime_object.h: (JSC::RuntimeObjectImp::createStructure):

WebKitTools:

2008-11-15 Darin Adler <darin@apple.com>

Rubber stamped by Geoff Garen.

  • do the long-planned StructureID -> Structure rename
  • Scripts/check-for-global-initializers: Update name of StructureID.o.
  • Scripts/do-webcore-rename: Renaming script that I used.
20:35 Changeset [38439] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-11-15 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

  • fix just-introduced crash in the svg/custom/svg-fonts-in-html.html test

This gets rid of the crash. It restores the behavior of the CG case from before Dirk
Shulze removed the platorm-dependent code, but perhaps it should be changed further
in the future so that the default for no style is "no stroke". I think the patch is
fine for fill.

  • svg/graphics/SVGPaintServerSolid.cpp: (WebCore::SVGPaintServerSolid::setup): Added null checks for svgStyle. (WebCore::SVGPaintServerSolid::renderPath): Added null checks for style and svgStyle.
19:58 Changeset [38438] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-15 Darin Adler <darin@apple.com>

  • fix non-WREC build
  • runtime/RegExp.cpp: Put "using namespace WREC" inside #if ENABLE(WREC).
15:45 Changeset [38437] by kevino@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Timothy Hatcher.

As ThreadingNone doesn't implement threads, isMainThread should return true, not false.

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

15:39 Changeset [38436] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Timothy Hatcher.

Initialize m_networkStateChangedFunction to 0 as otherwise the check for null will fail.

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

15:24 Changeset [38435] by krit@webkit.org
  • 2 edits in trunk/WebCore

2008-11-15 Dirk Schulze <krit@webkit.org>

Reviewed by Geoffrey Garen.

r38426 caused a wrong drawing of a LayoutTest. Use another
way to set the color to pass this test again.

  • svg/graphics/SVGPaintServerSolid.cpp: (WebCore::SVGPaintServerSolid::setup):
15:02 Changeset [38434] by ggaren@apple.com
  • 10 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Moved all WREC-related code into WREC.cpp and put it in a WREC namespace.
Removed the WREC prefix from class names.

  • VM/CTI.cpp:
  • VM/CTI.h:
  • VM/Machine.h: (JSC::BytecodeInterpreter::assemblerBuffer):
  • masm/X86Assembler.h:
  • runtime/RegExp.cpp: (JSC::RegExp::RegExp):
  • wrec/CharacterClassConstructor.cpp:
  • wrec/CharacterClassConstructor.h:
  • wrec/WREC.cpp: (WREC::GenerateParenthesesNonGreedyFunctor::GenerateParenthesesNonGreedyFunctor): (WREC::GeneratePatternCharacterFunctor::generateAtom): (WREC::GeneratePatternCharacterFunctor::backtrack): (WREC::GenerateCharacterClassFunctor::generateAtom): (WREC::GenerateCharacterClassFunctor::backtrack): (WREC::GenerateBackreferenceFunctor::generateAtom): (WREC::GenerateBackreferenceFunctor::backtrack): (WREC::GenerateParenthesesNonGreedyFunctor::generateAtom): (WREC::GenerateParenthesesNonGreedyFunctor::backtrack): (WREC::Generator::generateBacktrack1): (WREC::Generator::generateBacktrackBackreference): (WREC::Generator::generateBackreferenceQuantifier): (WREC::Generator::generateNonGreedyQuantifier): (WREC::Generator::generateGreedyQuantifier): (WREC::Generator::generatePatternCharacter): (WREC::Generator::generateCharacterClassInvertedRange): (WREC::Generator::generateCharacterClassInverted): (WREC::Generator::generateCharacterClass): (WREC::Generator::generateParentheses): (WREC::Generator::generateParenthesesNonGreedy): (WREC::Generator::generateParenthesesResetTrampoline): (WREC::Generator::generateAssertionBOL): (WREC::Generator::generateAssertionEOL): (WREC::Generator::generateAssertionWordBoundary): (WREC::Generator::generateBackreference): (WREC::Generator::generateDisjunction): (WREC::Generator::terminateDisjunction): (WREC::Parser::parseGreedyQuantifier): (WREC::Parser::parseQuantifier): (WREC::Parser::parsePatternCharacterQualifier): (WREC::Parser::parseCharacterClassQuantifier): (WREC::Parser::parseBackreferenceQuantifier): (WREC::Parser::parseParentheses): (WREC::Parser::parseCharacterClass): (WREC::Parser::parseOctalEscape): (WREC::Parser::parseEscape): (WREC::Parser::parseTerm): (WREC::Parser::parseDisjunction): (WREC::compileRegExp):
  • wrec/WREC.h: (WREC::Generator::Generator): (WREC::Parser::Parser): (WREC::Parser::parseAlternative):
14:47 Changeset [38433] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Changed another case of "m_jit" to "m_assembler".

  • VM/CTI.cpp:
  • wrec/WREC.cpp:
  • wrec/WREC.h: (JSC::WRECGenerator::WRECGenerator): (JSC::WRECParser::WRECParser):
14:43 Changeset [38432] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed "jit" to "assembler" and, for brevity, replaced *jit.* with
using a macro.

  • VM/CTI.cpp: (JSC::CTI::emitGetVirtualRegister): (JSC::CTI::emitPutCTIArgFromVirtualRegister): (JSC::CTI::emitPutCTIArg): (JSC::CTI::emitGetCTIArg): (JSC::CTI::emitPutCTIArgConstant): (JSC::CTI::emitPutCTIParam): (JSC::CTI::emitGetCTIParam): (JSC::CTI::emitPutToCallFrameHeader): (JSC::CTI::emitGetFromCallFrameHeader): (JSC::CTI::emitPutVirtualRegister): (JSC::CTI::emitInitRegister): (JSC::CTI::emitAllocateNumber): (JSC::CTI::emitNakedCall): (JSC::CTI::emitNakedFastCall): (JSC::CTI::emitCTICall): (JSC::CTI::emitJumpSlowCaseIfNotJSCell): (JSC::CTI::linkSlowCaseIfNotJSCell): (JSC::CTI::emitJumpSlowCaseIfNotImmNum): (JSC::CTI::emitJumpSlowCaseIfNotImmNums): (JSC::CTI::emitFastArithDeTagImmediate): (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero): (JSC::CTI::emitFastArithReTagImmediate): (JSC::CTI::emitFastArithPotentiallyReTagImmediate): (JSC::CTI::emitFastArithImmToInt): (JSC::CTI::emitFastArithIntToImmOrSlowCase): (JSC::CTI::emitFastArithIntToImmNoCheck): (JSC::CTI::emitArithIntToImmWithJump): (JSC::CTI::emitTagAsBoolImmediate): (JSC::CTI::CTI): (JSC::CTI::compileOpCallInitializeCallFrame): (JSC::CTI::compileOpCall): (JSC::CTI::compileOpStrictEq): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate): (JSC::CTI::compileBinaryArithOp): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileLinkPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::privateCompilePatchGetArrayLength): (JSC::CTI::emitGetVariableObjectRegister): (JSC::CTI::emitPutVariableObjectRegister): (JSC::CTI::compileRegExp):
  • VM/CTI.h:
  • wrec/WREC.cpp: (JSC::WRECGenerator::generateBacktrack1): (JSC::WRECGenerator::generateBacktrackBackreference): (JSC::WRECGenerator::generateBackreferenceQuantifier): (JSC::WRECGenerator::generateNonGreedyQuantifier): (JSC::WRECGenerator::generateGreedyQuantifier): (JSC::WRECGenerator::generatePatternCharacter): (JSC::WRECGenerator::generateCharacterClassInvertedRange): (JSC::WRECGenerator::generateCharacterClassInverted): (JSC::WRECGenerator::generateCharacterClass): (JSC::WRECGenerator::generateParentheses): (JSC::WRECGenerator::generateParenthesesNonGreedy): (JSC::WRECGenerator::generateParenthesesResetTrampoline): (JSC::WRECGenerator::generateAssertionBOL): (JSC::WRECGenerator::generateAssertionEOL): (JSC::WRECGenerator::generateAssertionWordBoundary): (JSC::WRECGenerator::generateBackreference): (JSC::WRECGenerator::generateDisjunction): (JSC::WRECGenerator::terminateDisjunction):
14:36 Changeset [38431] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-15 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Remove dead method declaration.

  • bytecompiler/CodeGenerator.h:
14:33 Changeset [38430] by ggaren@apple.com
  • 6 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed LabelID to Label, Label::isForwardLabel to Label::isForward.

  • VM/LabelID.h: (JSC::Label::Label): (JSC::Label::isForward):
  • bytecompiler/CodeGenerator.cpp: (JSC::BytecodeGenerator::newLabel): (JSC::BytecodeGenerator::emitLabel): (JSC::BytecodeGenerator::emitJump): (JSC::BytecodeGenerator::emitJumpIfTrue): (JSC::BytecodeGenerator::emitJumpIfFalse): (JSC::BytecodeGenerator::pushFinallyContext): (JSC::BytecodeGenerator::emitComplexJumpScopes): (JSC::BytecodeGenerator::emitJumpScopes): (JSC::BytecodeGenerator::emitNextPropertyName): (JSC::BytecodeGenerator::emitCatch): (JSC::BytecodeGenerator::emitJumpSubroutine): (JSC::prepareJumpTableForImmediateSwitch): (JSC::prepareJumpTableForCharacterSwitch): (JSC::prepareJumpTableForStringSwitch): (JSC::BytecodeGenerator::endSwitch):
  • bytecompiler/CodeGenerator.h:
  • bytecompiler/LabelScope.h: (JSC::LabelScope::LabelScope): (JSC::LabelScope::breakTarget): (JSC::LabelScope::continueTarget):
  • parser/Nodes.cpp: (JSC::LogicalOpNode::emitBytecode): (JSC::ConditionalNode::emitBytecode): (JSC::IfNode::emitBytecode): (JSC::IfElseNode::emitBytecode): (JSC::DoWhileNode::emitBytecode): (JSC::WhileNode::emitBytecode): (JSC::ForNode::emitBytecode): (JSC::ForInNode::emitBytecode): (JSC::ReturnNode::emitBytecode): (JSC::CaseBlockNode::emitBytecodeForBlock): (JSC::TryNode::emitBytecode):
14:24 Changeset [38429] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed JITCodeBuffer to AssemblerBuffer and renamed its data members
to be more like the rest of our buffer classes, with a size and a
capacity.


Added an assert in the unchecked put case to match the test in the checked
put case.


Changed a C-style cast to a C++-style cast.


Renamed MAX_INSTRUCTION_SIZE to maxInstructionSize.

  • VM/CTI.cpp: (JSC::CTI::CTI): (JSC::CTI::compileRegExp):
  • VM/Machine.cpp: (JSC::BytecodeInterpreter::BytecodeInterpreter):
  • VM/Machine.h: (JSC::BytecodeInterpreter::assemblerBuffer):
  • masm/X86Assembler.h: (JSC::AssemblerBuffer::AssemblerBuffer): (JSC::AssemblerBuffer::~AssemblerBuffer): (JSC::AssemblerBuffer::ensureSpace): (JSC::AssemblerBuffer::isAligned): (JSC::AssemblerBuffer::putByteUnchecked): (JSC::AssemblerBuffer::putByte): (JSC::AssemblerBuffer::putShortUnchecked): (JSC::AssemblerBuffer::putShort): (JSC::AssemblerBuffer::putIntUnchecked): (JSC::AssemblerBuffer::putInt): (JSC::AssemblerBuffer::data): (JSC::AssemblerBuffer::size): (JSC::AssemblerBuffer::reset): (JSC::AssemblerBuffer::copy): (JSC::AssemblerBuffer::grow): (JSC::X86Assembler::): (JSC::X86Assembler::X86Assembler): (JSC::X86Assembler::testl_i32r): (JSC::X86Assembler::movl_mr): (JSC::X86Assembler::movl_rm): (JSC::X86Assembler::movl_i32m): (JSC::X86Assembler::emitCall): (JSC::X86Assembler::label): (JSC::X86Assembler::emitUnlinkedJmp): (JSC::X86Assembler::emitUnlinkedJne): (JSC::X86Assembler::emitUnlinkedJe): (JSC::X86Assembler::emitUnlinkedJl): (JSC::X86Assembler::emitUnlinkedJb): (JSC::X86Assembler::emitUnlinkedJle): (JSC::X86Assembler::emitUnlinkedJbe): (JSC::X86Assembler::emitUnlinkedJge): (JSC::X86Assembler::emitUnlinkedJg): (JSC::X86Assembler::emitUnlinkedJa): (JSC::X86Assembler::emitUnlinkedJae): (JSC::X86Assembler::emitUnlinkedJo): (JSC::X86Assembler::emitUnlinkedJp): (JSC::X86Assembler::emitUnlinkedJs): (JSC::X86Assembler::link): (JSC::X86Assembler::emitModRm_rr): (JSC::X86Assembler::emitModRm_rm): (JSC::X86Assembler::emitModRm_opr):
13:37 Changeset [38428] by ggaren@apple.com
  • 21 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Suggested by Maciej Stachowiak.


Reverted most "opcode" => "bytecode" renames. We use "bytecode" as a
mass noun to refer to a stream of instructions. Each instruction may be
an opcode or an operand.

  • VM/CTI.cpp: (JSC::CTI::emitCTICall): (JSC::CTI::compileOpCall): (JSC::CTI::compileBinaryArithOp): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile):
  • VM/CTI.h:
  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructureIDs): (JSC::CodeBlock::dump): (JSC::CodeBlock::derefStructureIDs): (JSC::CodeBlock::refStructureIDs):
  • VM/CodeBlock.h:
  • VM/ExceptionHelpers.cpp: (JSC::createNotAnObjectError):
  • VM/Instruction.h: (JSC::Instruction::Instruction): (JSC::Instruction::):
  • VM/Machine.cpp: (JSC::BytecodeInterpreter::isOpcode): (JSC::BytecodeInterpreter::throwException): (JSC::BytecodeInterpreter::tryCachePutByID): (JSC::BytecodeInterpreter::uncachePutByID): (JSC::BytecodeInterpreter::tryCacheGetByID): (JSC::BytecodeInterpreter::uncacheGetByID): (JSC::BytecodeInterpreter::privateExecute): (JSC::BytecodeInterpreter::tryCTICachePutByID): (JSC::BytecodeInterpreter::tryCTICacheGetByID):
  • VM/Machine.h: (JSC::BytecodeInterpreter::getOpcode): (JSC::BytecodeInterpreter::getOpcodeID): (JSC::BytecodeInterpreter::isCallBytecode):
  • VM/Opcode.cpp: (JSC::): (JSC::OpcodeStats::OpcodeStats): (JSC::compareOpcodeIndices): (JSC::compareOpcodePairIndices): (JSC::OpcodeStats::~OpcodeStats): (JSC::OpcodeStats::recordInstruction): (JSC::OpcodeStats::resetLastInstruction):
  • VM/Opcode.h: (JSC::): (JSC::padOpcodeName):
  • VM/SamplingTool.cpp: (JSC::ScopeSampleRecord::sample): (JSC::SamplingTool::run): (JSC::compareOpcodeIndicesSampling): (JSC::SamplingTool::dump):
  • VM/SamplingTool.h: (JSC::ScopeSampleRecord::ScopeSampleRecord): (JSC::SamplingTool::SamplingTool):
  • bytecompiler/CodeGenerator.cpp: (JSC::BytecodeGenerator::BytecodeGenerator): (JSC::BytecodeGenerator::emitLabel): (JSC::BytecodeGenerator::emitOpcode): (JSC::BytecodeGenerator::emitJump): (JSC::BytecodeGenerator::emitJumpIfTrue): (JSC::BytecodeGenerator::emitJumpIfFalse): (JSC::BytecodeGenerator::emitMove): (JSC::BytecodeGenerator::emitUnaryOp): (JSC::BytecodeGenerator::emitPreInc): (JSC::BytecodeGenerator::emitPreDec): (JSC::BytecodeGenerator::emitPostInc): (JSC::BytecodeGenerator::emitPostDec): (JSC::BytecodeGenerator::emitBinaryOp): (JSC::BytecodeGenerator::emitEqualityOp): (JSC::BytecodeGenerator::emitUnexpectedLoad): (JSC::BytecodeGenerator::emitInstanceOf): (JSC::BytecodeGenerator::emitResolve): (JSC::BytecodeGenerator::emitGetScopedVar): (JSC::BytecodeGenerator::emitPutScopedVar): (JSC::BytecodeGenerator::emitResolveBase): (JSC::BytecodeGenerator::emitResolveWithBase): (JSC::BytecodeGenerator::emitResolveFunction): (JSC::BytecodeGenerator::emitGetById): (JSC::BytecodeGenerator::emitPutById): (JSC::BytecodeGenerator::emitPutGetter): (JSC::BytecodeGenerator::emitPutSetter): (JSC::BytecodeGenerator::emitDeleteById): (JSC::BytecodeGenerator::emitGetByVal): (JSC::BytecodeGenerator::emitPutByVal): (JSC::BytecodeGenerator::emitDeleteByVal): (JSC::BytecodeGenerator::emitPutByIndex): (JSC::BytecodeGenerator::emitNewObject): (JSC::BytecodeGenerator::emitNewArray): (JSC::BytecodeGenerator::emitNewFunction): (JSC::BytecodeGenerator::emitNewRegExp): (JSC::BytecodeGenerator::emitNewFunctionExpression): (JSC::BytecodeGenerator::emitCall): (JSC::BytecodeGenerator::emitReturn): (JSC::BytecodeGenerator::emitUnaryNoDstOp): (JSC::BytecodeGenerator::emitConstruct): (JSC::BytecodeGenerator::emitPopScope): (JSC::BytecodeGenerator::emitDebugHook): (JSC::BytecodeGenerator::emitComplexJumpScopes): (JSC::BytecodeGenerator::emitJumpScopes): (JSC::BytecodeGenerator::emitNextPropertyName): (JSC::BytecodeGenerator::emitCatch): (JSC::BytecodeGenerator::emitNewError): (JSC::BytecodeGenerator::emitJumpSubroutine): (JSC::BytecodeGenerator::emitSubroutineReturn): (JSC::BytecodeGenerator::emitPushNewScope): (JSC::BytecodeGenerator::beginSwitch):
  • bytecompiler/CodeGenerator.h:
  • jsc.cpp: (runWithScripts):
  • masm/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::emitModRm_opr): (JSC::X86Assembler::emitModRm_opr_Unchecked): (JSC::X86Assembler::emitModRm_opm): (JSC::X86Assembler::emitModRm_opm_Unchecked): (JSC::X86Assembler::emitModRm_opmsib):
  • parser/Nodes.cpp: (JSC::UnaryOpNode::emitBytecode): (JSC::BinaryOpNode::emitBytecode): (JSC::ReverseBinaryOpNode::emitBytecode): (JSC::ThrowableBinaryOpNode::emitBytecode): (JSC::emitReadModifyAssignment): (JSC::ScopeNode::ScopeNode):
  • parser/Nodes.h: (JSC::UnaryPlusNode::): (JSC::NegateNode::): (JSC::BitwiseNotNode::): (JSC::LogicalNotNode::): (JSC::MultNode::): (JSC::DivNode::): (JSC::ModNode::): (JSC::AddNode::): (JSC::SubNode::): (JSC::LeftShiftNode::): (JSC::RightShiftNode::): (JSC::UnsignedRightShiftNode::): (JSC::LessNode::): (JSC::GreaterNode::): (JSC::LessEqNode::): (JSC::GreaterEqNode::): (JSC::InstanceOfNode::): (JSC::InNode::): (JSC::EqualNode::): (JSC::NotEqualNode::): (JSC::StrictEqualNode::): (JSC::NotStrictEqualNode::): (JSC::BitAndNode::): (JSC::BitOrNode::): (JSC::BitXOrNode::):
  • runtime/StructureID.cpp: (JSC::StructureID::fromDictionaryTransition):
  • wtf/Platform.h:
13:05 Changeset [38427] by ggaren@apple.com
  • 11 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renames:


CodeGenerator => BytecodeGenerator
emitCodeForBlock => emitBytecodeForBlock
generatedByteCode => generatedBytecode
generateCode => generateBytecode

  • JavaScriptCore.exp:
  • bytecompiler/CodeGenerator.cpp: (JSC::BytecodeGenerator::setDumpsGeneratedCode): (JSC::BytecodeGenerator::generate): (JSC::BytecodeGenerator::addVar): (JSC::BytecodeGenerator::addGlobalVar): (JSC::BytecodeGenerator::allocateConstants): (JSC::BytecodeGenerator::BytecodeGenerator): (JSC::BytecodeGenerator::addParameter): (JSC::BytecodeGenerator::registerFor): (JSC::BytecodeGenerator::constRegisterFor): (JSC::BytecodeGenerator::isLocal): (JSC::BytecodeGenerator::isLocalConstant): (JSC::BytecodeGenerator::newRegister): (JSC::BytecodeGenerator::newTemporary): (JSC::BytecodeGenerator::highestUsedRegister): (JSC::BytecodeGenerator::newLabelScope): (JSC::BytecodeGenerator::newLabel): (JSC::BytecodeGenerator::emitLabel): (JSC::BytecodeGenerator::emitBytecode): (JSC::BytecodeGenerator::retrieveLastBinaryOp): (JSC::BytecodeGenerator::retrieveLastUnaryOp): (JSC::BytecodeGenerator::rewindBinaryOp): (JSC::BytecodeGenerator::rewindUnaryOp): (JSC::BytecodeGenerator::emitJump): (JSC::BytecodeGenerator::emitJumpIfTrue): (JSC::BytecodeGenerator::emitJumpIfFalse): (JSC::BytecodeGenerator::addConstant): (JSC::BytecodeGenerator::addUnexpectedConstant): (JSC::BytecodeGenerator::addRegExp): (JSC::BytecodeGenerator::emitMove): (JSC::BytecodeGenerator::emitUnaryOp): (JSC::BytecodeGenerator::emitPreInc): (JSC::BytecodeGenerator::emitPreDec): (JSC::BytecodeGenerator::emitPostInc): (JSC::BytecodeGenerator::emitPostDec): (JSC::BytecodeGenerator::emitBinaryOp): (JSC::BytecodeGenerator::emitEqualityOp): (JSC::BytecodeGenerator::emitLoad): (JSC::BytecodeGenerator::emitUnexpectedLoad): (JSC::BytecodeGenerator::findScopedProperty): (JSC::BytecodeGenerator::emitInstanceOf): (JSC::BytecodeGenerator::emitResolve): (JSC::BytecodeGenerator::emitGetScopedVar): (JSC::BytecodeGenerator::emitPutScopedVar): (JSC::BytecodeGenerator::emitResolveBase): (JSC::BytecodeGenerator::emitResolveWithBase): (JSC::BytecodeGenerator::emitResolveFunction): (JSC::BytecodeGenerator::emitGetById): (JSC::BytecodeGenerator::emitPutById): (JSC::BytecodeGenerator::emitPutGetter): (JSC::BytecodeGenerator::emitPutSetter): (JSC::BytecodeGenerator::emitDeleteById): (JSC::BytecodeGenerator::emitGetByVal): (JSC::BytecodeGenerator::emitPutByVal): (JSC::BytecodeGenerator::emitDeleteByVal): (JSC::BytecodeGenerator::emitPutByIndex): (JSC::BytecodeGenerator::emitNewObject): (JSC::BytecodeGenerator::emitNewArray): (JSC::BytecodeGenerator::emitNewFunction): (JSC::BytecodeGenerator::emitNewRegExp): (JSC::BytecodeGenerator::emitNewFunctionExpression): (JSC::BytecodeGenerator::emitCall): (JSC::BytecodeGenerator::emitCallEval): (JSC::BytecodeGenerator::emitReturn): (JSC::BytecodeGenerator::emitUnaryNoDstOp): (JSC::BytecodeGenerator::emitConstruct): (JSC::BytecodeGenerator::emitPushScope): (JSC::BytecodeGenerator::emitPopScope): (JSC::BytecodeGenerator::emitDebugHook): (JSC::BytecodeGenerator::pushFinallyContext): (JSC::BytecodeGenerator::popFinallyContext): (JSC::BytecodeGenerator::breakTarget): (JSC::BytecodeGenerator::continueTarget): (JSC::BytecodeGenerator::emitComplexJumpScopes): (JSC::BytecodeGenerator::emitJumpScopes): (JSC::BytecodeGenerator::emitNextPropertyName): (JSC::BytecodeGenerator::emitCatch): (JSC::BytecodeGenerator::emitNewError): (JSC::BytecodeGenerator::emitJumpSubroutine): (JSC::BytecodeGenerator::emitSubroutineReturn): (JSC::BytecodeGenerator::emitPushNewScope): (JSC::BytecodeGenerator::beginSwitch): (JSC::BytecodeGenerator::endSwitch): (JSC::BytecodeGenerator::emitThrowExpressionTooDeepException):
  • bytecompiler/CodeGenerator.h:
  • jsc.cpp: (runWithScripts):
  • parser/Nodes.cpp: (JSC::ThrowableExpressionData::emitThrowError): (JSC::NullNode::emitBytecode): (JSC::BooleanNode::emitBytecode): (JSC::NumberNode::emitBytecode): (JSC::StringNode::emitBytecode): (JSC::RegExpNode::emitBytecode): (JSC::ThisNode::emitBytecode): (JSC::ResolveNode::isPure): (JSC::ResolveNode::emitBytecode): (JSC::ArrayNode::emitBytecode): (JSC::ObjectLiteralNode::emitBytecode): (JSC::PropertyListNode::emitBytecode): (JSC::BracketAccessorNode::emitBytecode): (JSC::DotAccessorNode::emitBytecode): (JSC::ArgumentListNode::emitBytecode): (JSC::NewExprNode::emitBytecode): (JSC::EvalFunctionCallNode::emitBytecode): (JSC::FunctionCallValueNode::emitBytecode): (JSC::FunctionCallResolveNode::emitBytecode): (JSC::FunctionCallBracketNode::emitBytecode): (JSC::FunctionCallDotNode::emitBytecode): (JSC::emitPreIncOrDec): (JSC::emitPostIncOrDec): (JSC::PostfixResolveNode::emitBytecode): (JSC::PostfixBracketNode::emitBytecode): (JSC::PostfixDotNode::emitBytecode): (JSC::PostfixErrorNode::emitBytecode): (JSC::DeleteResolveNode::emitBytecode): (JSC::DeleteBracketNode::emitBytecode): (JSC::DeleteDotNode::emitBytecode): (JSC::DeleteValueNode::emitBytecode): (JSC::VoidNode::emitBytecode): (JSC::TypeOfResolveNode::emitBytecode): (JSC::TypeOfValueNode::emitBytecode): (JSC::PrefixResolveNode::emitBytecode): (JSC::PrefixBracketNode::emitBytecode): (JSC::PrefixDotNode::emitBytecode): (JSC::PrefixErrorNode::emitBytecode): (JSC::UnaryOpNode::emitBytecode): (JSC::BinaryOpNode::emitBytecode): (JSC::EqualNode::emitBytecode): (JSC::StrictEqualNode::emitBytecode): (JSC::ReverseBinaryOpNode::emitBytecode): (JSC::ThrowableBinaryOpNode::emitBytecode): (JSC::InstanceOfNode::emitBytecode): (JSC::LogicalOpNode::emitBytecode): (JSC::ConditionalNode::emitBytecode): (JSC::emitReadModifyAssignment): (JSC::ReadModifyResolveNode::emitBytecode): (JSC::AssignResolveNode::emitBytecode): (JSC::AssignDotNode::emitBytecode): (JSC::ReadModifyDotNode::emitBytecode): (JSC::AssignErrorNode::emitBytecode): (JSC::AssignBracketNode::emitBytecode): (JSC::ReadModifyBracketNode::emitBytecode): (JSC::CommaNode::emitBytecode): (JSC::ConstDeclNode::emitCodeSingle): (JSC::ConstDeclNode::emitBytecode): (JSC::ConstStatementNode::emitBytecode): (JSC::statementListEmitCode): (JSC::BlockNode::emitBytecode): (JSC::EmptyStatementNode::emitBytecode): (JSC::DebuggerStatementNode::emitBytecode): (JSC::ExprStatementNode::emitBytecode): (JSC::VarStatementNode::emitBytecode): (JSC::IfNode::emitBytecode): (JSC::IfElseNode::emitBytecode): (JSC::DoWhileNode::emitBytecode): (JSC::WhileNode::emitBytecode): (JSC::ForNode::emitBytecode): (JSC::ForInNode::emitBytecode): (JSC::ContinueNode::emitBytecode): (JSC::BreakNode::emitBytecode): (JSC::ReturnNode::emitBytecode): (JSC::WithNode::emitBytecode): (JSC::CaseBlockNode::emitBytecodeForBlock): (JSC::SwitchNode::emitBytecode): (JSC::LabelNode::emitBytecode): (JSC::ThrowNode::emitBytecode): (JSC::TryNode::emitBytecode): (JSC::EvalNode::emitBytecode): (JSC::EvalNode::generateBytecode): (JSC::FunctionBodyNode::generateBytecode): (JSC::FunctionBodyNode::emitBytecode): (JSC::ProgramNode::emitBytecode): (JSC::ProgramNode::generateBytecode): (JSC::FuncDeclNode::emitBytecode): (JSC::FuncExprNode::emitBytecode):
  • parser/Nodes.h: (JSC::ExpressionNode::): (JSC::BooleanNode::): (JSC::NumberNode::): (JSC::StringNode::): (JSC::ProgramNode::): (JSC::EvalNode::): (JSC::FunctionBodyNode::):
  • runtime/Arguments.h: (JSC::Arguments::getArgumentsData): (JSC::JSActivation::copyRegisters):
  • runtime/JSActivation.cpp: (JSC::JSActivation::mark):
  • runtime/JSActivation.h: (JSC::JSActivation::JSActivationData::JSActivationData):
  • runtime/JSFunction.cpp: (JSC::JSFunction::~JSFunction):
12:48 Changeset [38426] by krit@webkit.org
  • 7 edits
    3 deletes in trunk/WebCore

2008-11-15 Dirk Schulze <vbs85@gmx.de>

Reviewed by Darin Adler.

Removed platform dependent code on SVGPaintServerSolid.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • svg/graphics/SVGPaintServerSolid.cpp: (WebCore::SVGPaintServerSolid::setup): (WebCore::SVGPaintServerSolid::renderPath):
  • svg/graphics/SVGPaintServerSolid.h:
  • svg/graphics/cairo/SVGPaintServerSolidCairo.cpp: Removed.
  • svg/graphics/cg/SVGPaintServerSolidCg.cpp: Removed.
  • svg/graphics/qt/SVGPaintServerSolidQt.cpp: Removed.
12:34 Changeset [38425] by ggaren@apple.com
  • 22 edits in trunk/JavaScriptCore

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed all forms of "byte code" "opcode" "op code" "code" "bitcode"
etc. to "bytecode".

  • VM/CTI.cpp: (JSC::CTI::printBytecodeOperandTypes): (JSC::CTI::emitAllocateNumber): (JSC::CTI::emitNakedCall): (JSC::CTI::emitNakedFastCall): (JSC::CTI::emitCTICall): (JSC::CTI::emitJumpSlowCaseIfNotJSCell): (JSC::CTI::emitJumpSlowCaseIfNotImmNum): (JSC::CTI::emitJumpSlowCaseIfNotImmNums): (JSC::CTI::emitFastArithIntToImmOrSlowCase): (JSC::CTI::compileOpCall): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::compileBinaryArithOp): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile):
  • VM/CTI.h: (JSC::CallRecord::CallRecord): (JSC::SwitchRecord::SwitchRecord):
  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructureIDs): (JSC::CodeBlock::dump): (JSC::CodeBlock::~CodeBlock): (JSC::CodeBlock::derefStructureIDs): (JSC::CodeBlock::refStructureIDs):
  • VM/CodeBlock.h: (JSC::StructureStubInfo::StructureStubInfo):
  • VM/ExceptionHelpers.cpp: (JSC::createNotAnObjectError):
  • VM/Instruction.h: (JSC::Instruction::Instruction): (JSC::Instruction::):
  • VM/Machine.cpp: (JSC::BytecodeInterpreter::isBytecode): (JSC::BytecodeInterpreter::throwException): (JSC::BytecodeInterpreter::execute): (JSC::BytecodeInterpreter::tryCachePutByID): (JSC::BytecodeInterpreter::uncachePutByID): (JSC::BytecodeInterpreter::tryCacheGetByID): (JSC::BytecodeInterpreter::uncacheGetByID): (JSC::BytecodeInterpreter::privateExecute): (JSC::BytecodeInterpreter::tryCTICachePutByID): (JSC::BytecodeInterpreter::tryCTICacheGetByID): (JSC::BytecodeInterpreter::cti_op_call_JSFunction): (JSC::BytecodeInterpreter::cti_vm_dontLazyLinkCall): (JSC::BytecodeInterpreter::cti_vm_lazyLinkCall):
  • VM/Machine.h: (JSC::BytecodeInterpreter::getBytecode): (JSC::BytecodeInterpreter::getBytecodeID): (JSC::BytecodeInterpreter::isCallBytecode):
  • VM/Opcode.cpp: (JSC::): (JSC::BytecodeStats::BytecodeStats): (JSC::compareBytecodeIndices): (JSC::compareBytecodePairIndices): (JSC::BytecodeStats::~BytecodeStats): (JSC::BytecodeStats::recordInstruction): (JSC::BytecodeStats::resetLastInstruction):
  • VM/Opcode.h: (JSC::): (JSC::padBytecodeName):
  • VM/SamplingTool.cpp: (JSC::ScopeSampleRecord::sample): (JSC::SamplingTool::run): (JSC::compareBytecodeIndicesSampling): (JSC::SamplingTool::dump):
  • VM/SamplingTool.h: (JSC::ScopeSampleRecord::ScopeSampleRecord): (JSC::SamplingTool::SamplingTool):
  • bytecompiler/CodeGenerator.cpp: (JSC::CodeGenerator::generate): (JSC::CodeGenerator::CodeGenerator): (JSC::CodeGenerator::emitLabel): (JSC::CodeGenerator::emitBytecode): (JSC::CodeGenerator::emitJump): (JSC::CodeGenerator::emitJumpIfTrue): (JSC::CodeGenerator::emitJumpIfFalse): (JSC::CodeGenerator::emitMove): (JSC::CodeGenerator::emitUnaryOp): (JSC::CodeGenerator::emitPreInc): (JSC::CodeGenerator::emitPreDec): (JSC::CodeGenerator::emitPostInc): (JSC::CodeGenerator::emitPostDec): (JSC::CodeGenerator::emitBinaryOp): (JSC::CodeGenerator::emitEqualityOp): (JSC::CodeGenerator::emitUnexpectedLoad): (JSC::CodeGenerator::emitInstanceOf): (JSC::CodeGenerator::emitResolve): (JSC::CodeGenerator::emitGetScopedVar): (JSC::CodeGenerator::emitPutScopedVar): (JSC::CodeGenerator::emitResolveBase): (JSC::CodeGenerator::emitResolveWithBase): (JSC::CodeGenerator::emitResolveFunction): (JSC::CodeGenerator::emitGetById): (JSC::CodeGenerator::emitPutById): (JSC::CodeGenerator::emitPutGetter): (JSC::CodeGenerator::emitPutSetter): (JSC::CodeGenerator::emitDeleteById): (JSC::CodeGenerator::emitGetByVal): (JSC::CodeGenerator::emitPutByVal): (JSC::CodeGenerator::emitDeleteByVal): (JSC::CodeGenerator::emitPutByIndex): (JSC::CodeGenerator::emitNewObject): (JSC::CodeGenerator::emitNewArray): (JSC::CodeGenerator::emitNewFunction): (JSC::CodeGenerator::emitNewRegExp): (JSC::CodeGenerator::emitNewFunctionExpression): (JSC::CodeGenerator::emitCall): (JSC::CodeGenerator::emitReturn): (JSC::CodeGenerator::emitUnaryNoDstOp): (JSC::CodeGenerator::emitConstruct): (JSC::CodeGenerator::emitPopScope): (JSC::CodeGenerator::emitDebugHook): (JSC::CodeGenerator::emitComplexJumpScopes): (JSC::CodeGenerator::emitJumpScopes): (JSC::CodeGenerator::emitNextPropertyName): (JSC::CodeGenerator::emitCatch): (JSC::CodeGenerator::emitNewError): (JSC::CodeGenerator::emitJumpSubroutine): (JSC::CodeGenerator::emitSubroutineReturn): (JSC::CodeGenerator::emitPushNewScope): (JSC::CodeGenerator::beginSwitch): (JSC::CodeGenerator::endSwitch):
  • bytecompiler/CodeGenerator.h: (JSC::CodeGenerator::emitNode):
  • jsc.cpp: (runWithScripts):
  • masm/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::emitModRm_opr): (JSC::X86Assembler::emitModRm_opr_Unchecked): (JSC::X86Assembler::emitModRm_opm): (JSC::X86Assembler::emitModRm_opm_Unchecked): (JSC::X86Assembler::emitModRm_opmsib):
  • parser/Nodes.cpp: (JSC::NullNode::emitBytecode): (JSC::BooleanNode::emitBytecode): (JSC::NumberNode::emitBytecode): (JSC::StringNode::emitBytecode): (JSC::RegExpNode::emitBytecode): (JSC::ThisNode::emitBytecode): (JSC::ResolveNode::emitBytecode): (JSC::ArrayNode::emitBytecode): (JSC::ObjectLiteralNode::emitBytecode): (JSC::PropertyListNode::emitBytecode): (JSC::BracketAccessorNode::emitBytecode): (JSC::DotAccessorNode::emitBytecode): (JSC::ArgumentListNode::emitBytecode): (JSC::NewExprNode::emitBytecode): (JSC::EvalFunctionCallNode::emitBytecode): (JSC::FunctionCallValueNode::emitBytecode): (JSC::FunctionCallResolveNode::emitBytecode): (JSC::FunctionCallBracketNode::emitBytecode): (JSC::FunctionCallDotNode::emitBytecode): (JSC::PostfixResolveNode::emitBytecode): (JSC::PostfixBracketNode::emitBytecode): (JSC::PostfixDotNode::emitBytecode): (JSC::PostfixErrorNode::emitBytecode): (JSC::DeleteResolveNode::emitBytecode): (JSC::DeleteBracketNode::emitBytecode): (JSC::DeleteDotNode::emitBytecode): (JSC::DeleteValueNode::emitBytecode): (JSC::VoidNode::emitBytecode): (JSC::TypeOfResolveNode::emitBytecode): (JSC::TypeOfValueNode::emitBytecode): (JSC::PrefixResolveNode::emitBytecode): (JSC::PrefixBracketNode::emitBytecode): (JSC::PrefixDotNode::emitBytecode): (JSC::PrefixErrorNode::emitBytecode): (JSC::UnaryOpNode::emitBytecode): (JSC::BinaryOpNode::emitBytecode): (JSC::EqualNode::emitBytecode): (JSC::StrictEqualNode::emitBytecode): (JSC::ReverseBinaryOpNode::emitBytecode): (JSC::ThrowableBinaryOpNode::emitBytecode): (JSC::InstanceOfNode::emitBytecode): (JSC::LogicalOpNode::emitBytecode): (JSC::ConditionalNode::emitBytecode): (JSC::emitReadModifyAssignment): (JSC::ReadModifyResolveNode::emitBytecode): (JSC::AssignResolveNode::emitBytecode): (JSC::AssignDotNode::emitBytecode): (JSC::ReadModifyDotNode::emitBytecode): (JSC::AssignErrorNode::emitBytecode): (JSC::AssignBracketNode::emitBytecode): (JSC::ReadModifyBracketNode::emitBytecode): (JSC::CommaNode::emitBytecode): (JSC::ConstDeclNode::emitBytecode): (JSC::ConstStatementNode::emitBytecode): (JSC::BlockNode::emitBytecode): (JSC::EmptyStatementNode::emitBytecode): (JSC::DebuggerStatementNode::emitBytecode): (JSC::ExprStatementNode::emitBytecode): (JSC::VarStatementNode::emitBytecode): (JSC::IfNode::emitBytecode): (JSC::IfElseNode::emitBytecode): (JSC::DoWhileNode::emitBytecode): (JSC::WhileNode::emitBytecode): (JSC::ForNode::emitBytecode): (JSC::ForInNode::emitBytecode): (JSC::ContinueNode::emitBytecode): (JSC::BreakNode::emitBytecode): (JSC::ReturnNode::emitBytecode): (JSC::WithNode::emitBytecode): (JSC::SwitchNode::emitBytecode): (JSC::LabelNode::emitBytecode): (JSC::ThrowNode::emitBytecode): (JSC::TryNode::emitBytecode): (JSC::ScopeNode::ScopeNode): (JSC::EvalNode::emitBytecode): (JSC::FunctionBodyNode::emitBytecode): (JSC::ProgramNode::emitBytecode): (JSC::FuncDeclNode::emitBytecode): (JSC::FuncExprNode::emitBytecode):
  • parser/Nodes.h: (JSC::UnaryPlusNode::): (JSC::NegateNode::): (JSC::BitwiseNotNode::): (JSC::LogicalNotNode::): (JSC::MultNode::): (JSC::DivNode::): (JSC::ModNode::): (JSC::AddNode::): (JSC::SubNode::): (JSC::LeftShiftNode::): (JSC::RightShiftNode::): (JSC::UnsignedRightShiftNode::): (JSC::LessNode::): (JSC::GreaterNode::): (JSC::LessEqNode::): (JSC::GreaterEqNode::): (JSC::InstanceOfNode::): (JSC::InNode::): (JSC::EqualNode::): (JSC::NotEqualNode::): (JSC::StrictEqualNode::): (JSC::NotStrictEqualNode::): (JSC::BitAndNode::): (JSC::BitOrNode::): (JSC::BitXOrNode::): (JSC::ProgramNode::): (JSC::EvalNode::): (JSC::FunctionBodyNode::):
  • runtime/JSNotAnObject.h:
  • runtime/StructureID.cpp: (JSC::StructureID::fromDictionaryTransition):
  • wtf/Platform.h:
12:23 Changeset [38424] by kevino@webkit.org
  • 3 edits in trunk/WebKit/wx

Reviewed by Kevin Ollivier.

Add API for setting transparent webview background.

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

11:55 Changeset [38423] by ggaren@apple.com
  • 45 edits in trunk

JavaScriptCore:

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Renamed Machine to BytecodeInterpreter.


Nixed the Interpreter class, and changed its two functions to stand-alone
functions.

  • JavaScriptCore.exp:
  • VM/CTI.cpp: (JSC::): (JSC::CTI::emitCTICall): (JSC::CTI::CTI): (JSC::CTI::compileOpCall): (JSC::CTI::emitSlowScriptCheck): (JSC::CTI::compileBinaryArithOpSlowCase): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::privateCompileGetByIdSelf): (JSC::CTI::privateCompileGetByIdProto): (JSC::CTI::privateCompileGetByIdChain): (JSC::CTI::privateCompilePutByIdReplace): (JSC::CTI::privateCompilePutByIdTransition): (JSC::CTI::privateCompileCTIMachineTrampolines): (JSC::CTI::freeCTIMachineTrampolines): (JSC::CTI::patchGetByIdSelf): (JSC::CTI::patchPutByIdReplace): (JSC::CTI::privateCompilePatchGetArrayLength): (JSC::CTI::compileRegExp):
  • VM/CTI.h:
  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructureIDs): (JSC::CodeBlock::dump): (JSC::CodeBlock::derefStructureIDs): (JSC::CodeBlock::refStructureIDs):
  • VM/ExceptionHelpers.cpp: (JSC::createNotAnObjectError):
  • VM/Machine.cpp: (JSC::jsLess): (JSC::jsLessEq): (JSC::BytecodeInterpreter::resolve): (JSC::BytecodeInterpreter::resolveSkip): (JSC::BytecodeInterpreter::resolveGlobal): (JSC::BytecodeInterpreter::resolveBase): (JSC::BytecodeInterpreter::resolveBaseAndProperty): (JSC::BytecodeInterpreter::resolveBaseAndFunc): (JSC::BytecodeInterpreter::slideRegisterWindowForCall): (JSC::BytecodeInterpreter::callEval): (JSC::BytecodeInterpreter::BytecodeInterpreter): (JSC::BytecodeInterpreter::initialize): (JSC::BytecodeInterpreter::~BytecodeInterpreter): (JSC::BytecodeInterpreter::dumpCallFrame): (JSC::BytecodeInterpreter::dumpRegisters): (JSC::BytecodeInterpreter::isOpcode): (JSC::BytecodeInterpreter::unwindCallFrame): (JSC::BytecodeInterpreter::throwException): (JSC::BytecodeInterpreter::execute): (JSC::BytecodeInterpreter::debug): (JSC::BytecodeInterpreter::resetTimeoutCheck): (JSC::BytecodeInterpreter::checkTimeout): (JSC::BytecodeInterpreter::createExceptionScope): (JSC::BytecodeInterpreter::tryCachePutByID): (JSC::BytecodeInterpreter::uncachePutByID): (JSC::BytecodeInterpreter::tryCacheGetByID): (JSC::BytecodeInterpreter::uncacheGetByID): (JSC::BytecodeInterpreter::privateExecute): (JSC::BytecodeInterpreter::retrieveArguments): (JSC::BytecodeInterpreter::retrieveCaller): (JSC::BytecodeInterpreter::retrieveLastCaller): (JSC::BytecodeInterpreter::findFunctionCallFrame): (JSC::BytecodeInterpreter::tryCTICachePutByID): (JSC::BytecodeInterpreter::tryCTICacheGetByID): (JSC::BytecodeInterpreter::cti_op_convert_this): (JSC::BytecodeInterpreter::cti_op_end): (JSC::BytecodeInterpreter::cti_op_add): (JSC::BytecodeInterpreter::cti_op_pre_inc): (JSC::BytecodeInterpreter::cti_timeout_check): (JSC::BytecodeInterpreter::cti_register_file_check): (JSC::BytecodeInterpreter::cti_op_loop_if_less): (JSC::BytecodeInterpreter::cti_op_loop_if_lesseq): (JSC::BytecodeInterpreter::cti_op_new_object): (JSC::BytecodeInterpreter::cti_op_put_by_id): (JSC::BytecodeInterpreter::cti_op_put_by_id_second): (JSC::BytecodeInterpreter::cti_op_put_by_id_generic): (JSC::BytecodeInterpreter::cti_op_put_by_id_fail): (JSC::BytecodeInterpreter::cti_op_get_by_id): (JSC::BytecodeInterpreter::cti_op_get_by_id_second): (JSC::BytecodeInterpreter::cti_op_get_by_id_generic): (JSC::BytecodeInterpreter::cti_op_get_by_id_fail): (JSC::BytecodeInterpreter::cti_op_instanceof): (JSC::BytecodeInterpreter::cti_op_del_by_id): (JSC::BytecodeInterpreter::cti_op_mul): (JSC::BytecodeInterpreter::cti_op_new_func): (JSC::BytecodeInterpreter::cti_op_call_JSFunction): (JSC::BytecodeInterpreter::cti_op_call_arityCheck): (JSC::BytecodeInterpreter::cti_vm_dontLazyLinkCall): (JSC::BytecodeInterpreter::cti_vm_lazyLinkCall): (JSC::BytecodeInterpreter::cti_op_push_activation): (JSC::BytecodeInterpreter::cti_op_call_NotJSFunction): (JSC::BytecodeInterpreter::cti_op_create_arguments): (JSC::BytecodeInterpreter::cti_op_create_arguments_no_params): (JSC::BytecodeInterpreter::cti_op_tear_off_activation): (JSC::BytecodeInterpreter::cti_op_tear_off_arguments): (JSC::BytecodeInterpreter::cti_op_profile_will_call): (JSC::BytecodeInterpreter::cti_op_profile_did_call): (JSC::BytecodeInterpreter::cti_op_ret_scopeChain): (JSC::BytecodeInterpreter::cti_op_new_array): (JSC::BytecodeInterpreter::cti_op_resolve): (JSC::BytecodeInterpreter::cti_op_construct_JSConstruct): (JSC::BytecodeInterpreter::cti_op_construct_NotJSConstruct): (JSC::BytecodeInterpreter::cti_op_get_by_val): (JSC::BytecodeInterpreter::cti_op_resolve_func): (JSC::BytecodeInterpreter::cti_op_sub): (JSC::BytecodeInterpreter::cti_op_put_by_val): (JSC::BytecodeInterpreter::cti_op_put_by_val_array): (JSC::BytecodeInterpreter::cti_op_lesseq): (JSC::BytecodeInterpreter::cti_op_loop_if_true): (JSC::BytecodeInterpreter::cti_op_negate): (JSC::BytecodeInterpreter::cti_op_resolve_base): (JSC::BytecodeInterpreter::cti_op_resolve_skip): (JSC::BytecodeInterpreter::cti_op_resolve_global): (JSC::BytecodeInterpreter::cti_op_div): (JSC::BytecodeInterpreter::cti_op_pre_dec): (JSC::BytecodeInterpreter::cti_op_jless): (JSC::BytecodeInterpreter::cti_op_not): (JSC::BytecodeInterpreter::cti_op_jtrue): (JSC::BytecodeInterpreter::cti_op_post_inc): (JSC::BytecodeInterpreter::cti_op_eq): (JSC::BytecodeInterpreter::cti_op_lshift): (JSC::BytecodeInterpreter::cti_op_bitand): (JSC::BytecodeInterpreter::cti_op_rshift): (JSC::BytecodeInterpreter::cti_op_bitnot): (JSC::BytecodeInterpreter::cti_op_resolve_with_base): (JSC::BytecodeInterpreter::cti_op_new_func_exp): (JSC::BytecodeInterpreter::cti_op_mod): (JSC::BytecodeInterpreter::cti_op_less): (JSC::BytecodeInterpreter::cti_op_neq): (JSC::BytecodeInterpreter::cti_op_post_dec): (JSC::BytecodeInterpreter::cti_op_urshift): (JSC::BytecodeInterpreter::cti_op_bitxor): (JSC::BytecodeInterpreter::cti_op_new_regexp): (JSC::BytecodeInterpreter::cti_op_bitor): (JSC::BytecodeInterpreter::cti_op_call_eval): (JSC::BytecodeInterpreter::cti_op_throw): (JSC::BytecodeInterpreter::cti_op_get_pnames): (JSC::BytecodeInterpreter::cti_op_next_pname): (JSC::BytecodeInterpreter::cti_op_push_scope): (JSC::BytecodeInterpreter::cti_op_pop_scope): (JSC::BytecodeInterpreter::cti_op_typeof): (JSC::BytecodeInterpreter::cti_op_is_undefined): (JSC::BytecodeInterpreter::cti_op_is_boolean): (JSC::BytecodeInterpreter::cti_op_is_number): (JSC::BytecodeInterpreter::cti_op_is_string): (JSC::BytecodeInterpreter::cti_op_is_object): (JSC::BytecodeInterpreter::cti_op_is_function): (JSC::BytecodeInterpreter::cti_op_stricteq): (JSC::BytecodeInterpreter::cti_op_nstricteq): (JSC::BytecodeInterpreter::cti_op_to_jsnumber): (JSC::BytecodeInterpreter::cti_op_in): (JSC::BytecodeInterpreter::cti_op_push_new_scope): (JSC::BytecodeInterpreter::cti_op_jmp_scopes): (JSC::BytecodeInterpreter::cti_op_put_by_index): (JSC::BytecodeInterpreter::cti_op_switch_imm): (JSC::BytecodeInterpreter::cti_op_switch_char): (JSC::BytecodeInterpreter::cti_op_switch_string): (JSC::BytecodeInterpreter::cti_op_del_by_val): (JSC::BytecodeInterpreter::cti_op_put_getter): (JSC::BytecodeInterpreter::cti_op_put_setter): (JSC::BytecodeInterpreter::cti_op_new_error): (JSC::BytecodeInterpreter::cti_op_debug): (JSC::BytecodeInterpreter::cti_vm_throw):
  • VM/Machine.h:
  • VM/Register.h:
  • VM/SamplingTool.cpp: (JSC::SamplingTool::run):
  • VM/SamplingTool.h: (JSC::SamplingTool::SamplingTool):
  • bytecompiler/CodeGenerator.cpp: (JSC::CodeGenerator::generate): (JSC::CodeGenerator::CodeGenerator): (JSC::CodeGenerator::emitOpcode):
  • debugger/DebuggerCallFrame.cpp: (JSC::DebuggerCallFrame::evaluate):
  • jsc.cpp: (runWithScripts):
  • parser/Nodes.cpp: (JSC::ScopeNode::ScopeNode):
  • profiler/ProfileGenerator.cpp: (JSC::ProfileGenerator::addParentForConsoleStart):
  • runtime/ArrayPrototype.cpp: (JSC::arrayProtoFuncPop): (JSC::arrayProtoFuncPush):
  • runtime/Collector.cpp: (JSC::Heap::collect):
  • runtime/ExecState.h: (JSC::ExecState::interpreter):
  • runtime/FunctionPrototype.cpp: (JSC::functionProtoFuncApply):
  • runtime/Interpreter.cpp: (JSC::Interpreter::evaluate):
  • runtime/JSCell.h:
  • runtime/JSFunction.cpp: (JSC::JSFunction::call): (JSC::JSFunction::argumentsGetter): (JSC::JSFunction::callerGetter): (JSC::JSFunction::construct):
  • runtime/JSFunction.h:
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): (JSC::JSGlobalData::~JSGlobalData):
  • runtime/JSGlobalData.h:
  • runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::~JSGlobalObject): (JSC::JSGlobalObject::setTimeoutTime): (JSC::JSGlobalObject::startTimeoutCheck): (JSC::JSGlobalObject::stopTimeoutCheck): (JSC::JSGlobalObject::mark):
  • runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncEval):
  • runtime/JSString.h:
  • runtime/RegExp.cpp: (JSC::RegExp::RegExp):

JavaScriptGlue:

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • JSRun.cpp: (JSRun::Evaluate): (JSRun::CheckSyntax):

WebCore:

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::mark):
  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send):
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate):
  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate):
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject evaluateWebScript:]):
  • bridge/NP_jsobject.cpp: (_NPN_Evaluate):
  • bridge/jni/jni_jsobject.mm: (JavaJSObject::eval):
  • page/Console.cpp: (WebCore::retrieveLastCaller): (WebCore::Console::trace):

WebKit/win:

2008-11-15 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Updated for JavaScriptCore renames.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
10:19 Changeset [38422] by bolsinga@apple.com
  • 2 edits in trunk/WebKitTools

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Create DEFINE_STATIC_LOCAL macro. Change static local objects to leak to avoid
exit-time destructor. Update code that was changed to fix this issue that ran
into a gcc bug (<rdar://problem/6354696> Codegen issue with C++ static reference
in gcc build 5465). Also typdefs for template types needed to be added in some
cases so the type could make it through the macro successfully.

Basically code of the form:
static T m;
becomes:
DEFINE_STATIC_LOCAL(T, m, ());

Also any code of the form:
static T& m = *new T;
also becomes:
DEFINE_STATIC_LOCAL(T, m, ());

Remove .o files from the exclude list that have had their exit-time destructors removed.

08:55 Changeset [38421] by bolsinga@apple.com
  • 6 edits
    1 add in trunk/WebKit/mac

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=21810
Remove use of static C++ objects that are destroyed at exit time (destructors)

Create DEFINE_STATIC_LOCAL macro. Change static local objects to leak to avoid
exit-time destructor. Update code that was changed to fix this issue that ran
into a gcc bug (<rdar://problem/6354696> Codegen issue with C++ static reference
in gcc build 5465). Also typdefs for template types needed to be added in some
cases so the type could make it through the macro successfully.

Basically code of the form:
static T m;
becomes:
DEFINE_STATIC_LOCAL(T, m, ());

Also any code of the form:
static T& m = *new T;
also becomes:
DEFINE_STATIC_LOCAL(T, m, ());

00:22 Changeset [38420] by mjs@apple.com
  • 6 edits in trunk/JavaScriptCore

2008-11-15 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam Weinig.


  • Remove SymbolTable from FunctionBodyNode and move it to CodeBlock


It's not needed for functions that have never been executed, so no
need to waste the memory. Saves ~4M on membuster after 30 pages.

  • VM/CodeBlock.h:
  • VM/Machine.cpp: (JSC::Machine::retrieveArguments):
  • parser/Nodes.cpp: (JSC::EvalNode::generateCode): (JSC::FunctionBodyNode::generateCode):
  • parser/Nodes.h:
  • runtime/JSActivation.h: (JSC::JSActivation::JSActivationData::JSActivationData):
Note: See TracTimeline for information about the timeline view.