Timeline



Dec 8, 2015:

10:45 PM Changeset in webkit [193810] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

Skip storage/indexeddb/index-multientry.html once again

  • platform/mac-wk1/TestExpectations: Skip:
  • storage/indexeddb/index-multientry.html
9:48 PM Changeset in webkit [193809] by Simon Fraser
  • 36 edits in trunk/Source/WebCore

Convert resetAnimValToBaseVal take a reference to a SVGAnimatedType
https://bugs.webkit.org/show_bug.cgi?id=152036

Reviewed by Zalan Bujtas.

Change resetAnimValToBaseVal() to take a reference at the last argument.

  • svg/SVGAnimateElementBase.cpp:

(WebCore::SVGAnimateElementBase::resetAnimatedType):

  • svg/SVGAnimatedAngle.cpp:

(WebCore::SVGAnimatedAngleAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedAngle.h:
  • svg/SVGAnimatedBoolean.cpp:

(WebCore::SVGAnimatedBooleanAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedBoolean.h:
  • svg/SVGAnimatedColor.h:
  • svg/SVGAnimatedEnumeration.cpp:

(WebCore::SVGAnimatedEnumerationAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedEnumeration.h:
  • svg/SVGAnimatedInteger.cpp:

(WebCore::SVGAnimatedIntegerAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedInteger.h:
  • svg/SVGAnimatedIntegerOptionalInteger.cpp:

(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedIntegerOptionalInteger.h:
  • svg/SVGAnimatedLength.cpp:

(WebCore::SVGAnimatedLengthAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedLength.h:
  • svg/SVGAnimatedLengthList.cpp:

(WebCore::SVGAnimatedLengthListAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedLengthList.h:
  • svg/SVGAnimatedNumber.cpp:

(WebCore::SVGAnimatedNumberAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedNumber.h:
  • svg/SVGAnimatedNumberList.cpp:

(WebCore::SVGAnimatedNumberListAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedNumberList.h:
  • svg/SVGAnimatedNumberOptionalNumber.cpp:

(WebCore::SVGAnimatedNumberOptionalNumberAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedNumberOptionalNumber.h:
  • svg/SVGAnimatedPath.cpp:

(WebCore::SVGAnimatedPathAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedPath.h:
  • svg/SVGAnimatedPointList.cpp:

(WebCore::SVGAnimatedPointListAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedPointList.h:
  • svg/SVGAnimatedPreserveAspectRatio.cpp:

(WebCore::SVGAnimatedPreserveAspectRatioAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedPreserveAspectRatio.h:
  • svg/SVGAnimatedRect.cpp:

(WebCore::SVGAnimatedRectAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedRect.h:
  • svg/SVGAnimatedString.cpp:

(WebCore::SVGAnimatedStringAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedString.h:
  • svg/SVGAnimatedTransformList.cpp:

(WebCore::SVGAnimatedTransformListAnimator::resetAnimValToBaseVal):

  • svg/SVGAnimatedTransformList.h:
  • svg/SVGAnimatedTypeAnimator.h:

(WebCore::SVGAnimatedTypeAnimator::resetFromBaseValue):
(WebCore::SVGAnimatedTypeAnimator::resetFromBaseValues):

8:15 PM Changeset in webkit [193808] by Jon Davis
  • 3 edits in trunk/Websites/webkit.org

Wide tables should be scrollable on narrow mobile screens.
https://bugs.webkit.org/show_bug.cgi?id=151941

Reviewed by Timothy Hatcher.

  • wp-content/themes/webkit/scripts/global.js:

(inView):
(onMovement):
(updateImages):
(enableScrollableTables):
(update): Deleted.

  • wp-content/themes/webkit/style.css:

(.pagination .prev-post):
(article .scrollable):
(.scrollable .scrollable-padding):

8:10 PM Changeset in webkit [193807] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Fix Code Style Guidelines code parsing.
https://bugs.webkit.org/show_bug.cgi?id=152024

Reviewed by Timothy Hatcher.

  • wp-content/plugins/table-of-contents.php:
7:58 PM Changeset in webkit [193806] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Workaround arrow function issue in TimelineOverviewGraph.js
https://bugs.webkit.org/show_bug.cgi?id=152031

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-12-08
Reviewed by Timothy Hatcher.

  • UserInterface/Views/TimelineOverviewGraph.js:

(WebInspector.TimelineOverviewGraph.prototype._needsSelectedRecordLayout):
Workaround an existing arrow function issue by moving off of arrow functions here.

7:57 PM Changeset in webkit [193805] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Remove Mavericks-specific code from FontCacheMac
https://bugs.webkit.org/show_bug.cgi?id=152030

Reviewed by Simon Fraser.

Mavericks is no longer a supported platform.

No new tests because there is no behavior change.

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::platformLookupFallbackFont):
(WebCore::platformFontWithFamilySpecialCase): Deleted.

6:30 PM Changeset in webkit [193804] by commit-queue@webkit.org
  • 7 edits in trunk/Source/JavaScriptCore

[JSC] Improve how B3 lowers Add() and Sub() on x86
https://bugs.webkit.org/show_bug.cgi?id=152026

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-08
Reviewed by Geoffrey Garen.

The assembler was missing some important x86 forms of
ADD and SUB that were making our lowering
unfriendly with register allocation.

First, we were missing a 3 operand version of Add
implement with LEA. As a result, an Add would
be lowered as:

Move op1->srcDest
Add op2, srcDest

The problem with such code is that op2 and srcDest
interferes. It is impossible to assign them the same
machine register.

With the new Add form, we have:

Add op1, op2, dest

without interferences between any of those values.
The add is implement by a LEA without scaling or displacement.

This patch also adds missing forms of Add and Sub with
direct addressing for arguments. This avoids dealing with Tmps
that only exist for those operations.

Finally, the lowering of adding something to itself was updated accordingly.
Such operation is transformed in Shl by 2. The lowering of Shl
was adding an explicit Move, preventing the use of LEA when it
is useful.
Instead of having an explicit move, I changed the direct addressing
forms to only be selected if the two operands are different.
A Move is then added by appendBinOp() if needed.

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::add32):
(JSC::MacroAssemblerX86Common::x86Lea32):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::add64):
(JSC::MacroAssemblerX86_64::x86Lea64):
(JSC::MacroAssemblerX86_64::sub64):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::addq_rm):
(JSC::X86Assembler::subq_mr):
(JSC::X86Assembler::subq_rm):
(JSC::X86Assembler::subq_im):
(JSC::X86Assembler::leal_mr):
(JSC::X86Assembler::leaq_mr):

  • b3/B3LowerToAir.cpp:

(JSC::B3::Air::LowerToAir::appendBinOp):
(JSC::B3::Air::LowerToAir::lower):

  • b3/air/AirOpcode.opcodes:
  • b3/testb3.cpp:

(JSC::B3::testAddArgMem):
(JSC::B3::testAddMemArg):
(JSC::B3::testAddImmMem):
(JSC::B3::testAddArg32):
(JSC::B3::testAddArgMem32):
(JSC::B3::testAddMemArg32):
(JSC::B3::testAddImmMem32):
(JSC::B3::testSubArgMem):
(JSC::B3::testSubMemArg):
(JSC::B3::testSubImmMem):
(JSC::B3::testSubMemImm):
(JSC::B3::testSubMemArg32):
(JSC::B3::testSubArgMem32):
(JSC::B3::testSubImmMem32):
(JSC::B3::testSubMemImm32):
(JSC::B3::run):

6:01 PM Changeset in webkit [193803] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.13.2/Source/WebKit/mac

Roll out r193661. rdar://problem/23639610

5:59 PM Changeset in webkit [193802] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2/Source/WebKit/mac

Roll out r193675. rdar://problem/23639610

5:59 PM Changeset in webkit [193801] by beidson@apple.com
  • 4 edits in trunk

Modern IDB: storage/indexeddb/objectstore-cursor.html fails.
https://bugs.webkit.org/show_bug.cgi?id=152023

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (At least one failing test now passes).

  • Modules/indexeddb/server/MemoryObjectStoreCursor.cpp:

(WebCore::IDBServer::MemoryObjectStoreCursor::MemoryObjectStoreCursor):
(WebCore::IDBServer::MemoryObjectStoreCursor::setReverseIteratorFromRemainingRange): Make sure the

found iterator is actually in the target range.

LayoutTests:

  • platform/mac-wk1/TestExpectations:
5:58 PM Changeset in webkit [193800] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2/Source/WebKit/mac

Roll out r193676. rdar://problem/23639610

5:56 PM Changeset in webkit [193799] by bshafiei@apple.com
  • 10 edits
    1 delete in tags/Safari-602.1.13.2/Source

Roll out r193645. rdar://problem/23751214

5:18 PM Changeset in webkit [193798] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Changing <video> src during 'ended' event can leave screen sleep disabled
https://bugs.webkit.org/show_bug.cgi?id=152018

Reviewed by Eric Carlson.

Resetting a HTMLMediaElement's src during 'ended' introduces a race condition: whether
the 'mediaPlayerRateChanged()' notification will fire before createMediaPlayer() destroys
the old MediaPlayer firing said notification.

To break the race condition, always update the sleep disabling assertion after destroying
the media player (by creating a new one).

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::createMediaPlayer):

4:40 PM Changeset in webkit [193797] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Skipping fast/canvas/canvas-too-large-to-draw.html on win
https://bugs.webkit.org/show_bug.cgi?id=152009

Unreviewed test gardening.

  • platform/win/TestExpectations:
4:36 PM Changeset in webkit [193796] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Rebaseline fast/block/float/overhanging-tall-block.html for win after r193511
https://bugs.webkit.org/show_bug.cgi?id=151906

Unreviewed test gardening.

  • platform/win/fast/block/float/overhanging-tall-block-expected.txt:
4:30 PM Changeset in webkit [193795] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Factoring out common DFG code for bitwise and shift operators.
https://bugs.webkit.org/show_bug.cgi?id=152019

Reviewed by Michael Saboff.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileBitwiseOp):
(JSC::DFG::SpeculativeJIT::compileShiftOp):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

4:23 PM Changeset in webkit [193794] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Skipping fast/canvas/canvas-too-large-to-draw.html on ElCapitan Debug
https://bugs.webkit.org/show_bug.cgi?id=152009

Unreviewed test gardening.

  • platform/mac/TestExpectations:
4:12 PM Changeset in webkit [193793] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG and FTL should be resilient against cases where both snippet operands are constant.
https://bugs.webkit.org/show_bug.cgi?id=152017

Reviewed by Michael Saboff.

The DFG front end may not always constant fold cases where both operands are
constant. As a result, the DFG and FTL back ends needs to be resilient against
this when using snippet generators since the generators do not support the case
where both operands are constant. The strategy for handling this 2 const operands
case is to treat at least one of them as a variable if both are constant.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileValueAdd):

  • Also remove the case for folding 2 constant operands. It is the front end's job to do so, not the back end here.

(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::compileArithMul):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileValueAdd):
(JSC::FTL::DFG::LowerDFGToLLVM::compileArithMul):

4:08 PM Changeset in webkit [193792] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

Modern IDB: IDBTransaction::hasPendingActivity() was wrong, leading to premature GC of the wrapper.
https://bugs.webkit.org/show_bug.cgi?id=151507

Reviewed by Beth Dakin.

A handful of tests were marked flaky and tracked back to this bug.

Ever since the presumed fix for this bug (r192687) the flakiness dashboard says they pass.

  • platform/mac-wk1/TestExpectations: Re-enable the no-longer-flaky tests.
4:04 PM Changeset in webkit [193791] by Matt Baker
  • 4 edits in trunk/Source/WebInspectorUI

Web Inspector: Add a hidden property to TreeOutline
https://bugs.webkit.org/show_bug.cgi?id=152014

Reviewed by Timothy Hatcher.

  • UserInterface/Views/NavigationSidebarPanel.js:

Removed static property for "hidden" CSS class. No longer used.
(WebInspector.NavigationSidebarPanel.prototype.set contentTreeOutline):
Fixed bug in order of visibleTreeOutlines add/remove.
(WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline):

  • UserInterface/Views/TimelineSidebarPanel.js:

(WebInspector.TimelineSidebarPanel):
(WebInspector.TimelineSidebarPanel.prototype._changeViewMode):

  • UserInterface/Views/TreeOutline.js:

(WebInspector.TreeOutline):
(WebInspector.TreeOutline.prototype.get hidden):
(WebInspector.TreeOutline.prototype.set hidden):
Added hidden property, set DOM element hidden attribute.
(WebInspector.TreeElement.prototype.set hidden):
Remove CSS class, set DOM element hidden attribute.
(WebInspector.TreeElement.prototype._attach):
(WebInspector.TreeElement.prototype.expand):

3:57 PM Changeset in webkit [193790] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

More IDB TestExpectations gardening.

Reviewed by Alex Christensen.

  • platform/mac-wk1/TestExpectations:
3:42 PM Changeset in webkit [193789] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed IDB layout test gardening (Adding some flaky crashes)

  • platform/mac-wk1/TestExpectations:
3:05 PM Changeset in webkit [193788] by mark.lam@apple.com
  • 12 edits
    4 adds in trunk/Source/JavaScriptCore

Snippefy shift operators for the baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=151875

Reviewed by Geoffrey Garen.

  • jit/JITArithmetic.cpp:

(JSC::JIT::emitBitBinaryOpFastPath):

  • Don't need GPRInfo:: qualifiers. Removed them to reduce verbosity.
  • Also removed the emitStoreInt32() case for storing the result on 32-bit ports. This is because:
    1. The client should not make assumptions about whether the snippet fast path only include cases where the result tag already contain the IntTag.
The "(op1 == result
op2 == result)" condition for skipping the IntTag

storage, is only valid for the bitand, bitor, and bitxor implementations.
It is invalid for the lshift implementation that uses this code now.

Instead, we'll always unconditionally store what the result tag that the
snippet computed for us.

(JSC::JIT::emit_op_lshift):
(JSC::JIT::emitSlow_op_lshift):
(JSC::JIT::emitRightShiftFastPath):
(JSC::JIT::emit_op_rshift):
(JSC::JIT::emitSlow_op_rshift):
(JSC::JIT::emit_op_urshift):
(JSC::JIT::emitSlow_op_urshift):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_op_lshift): Deleted.
(JSC::JIT::emitSlow_op_lshift): Deleted.
(JSC::JIT::emitRightShift): Deleted.
(JSC::JIT::emitRightShiftSlowCase): Deleted.
(JSC::JIT::emit_op_rshift): Deleted.
(JSC::JIT::emitSlow_op_rshift): Deleted.
(JSC::JIT::emit_op_urshift): Deleted.
(JSC::JIT::emitSlow_op_urshift): Deleted.

  • jit/JITLeftShiftGenerator.cpp: Added.

(JSC::JITLeftShiftGenerator::generateFastPath):

  • jit/JITLeftShiftGenerator.h: Added.

(JSC::JITLeftShiftGenerator::JITLeftShiftGenerator):

  • jit/JITRightShiftGenerator.cpp: Added.

(JSC::JITRightShiftGenerator::generateFastPath):

  • jit/JITRightShiftGenerator.h: Added.

(JSC::JITRightShiftGenerator::JITRightShiftGenerator):

  • tests/stress/op_lshift.js:
  • tests/stress/op_rshift.js:
  • tests/stress/op_urshift.js:
  • Fixed some values and added others that are meaningful for testing shifts.
  • tests/stress/resources/binary-op-test.js:

(stringifyIfNeeded):
(generateBinaryTests):

  • Fixed the test generator to give unique names to all the generated test functions. Without this, multiple tests may end up using the same global test function. As a result, with enough test values to test, the function may get prematurely JITted, and the computed expected result which is supposed to be computed by the LLINT, may end up being computed by a JIT instead.
3:05 PM Changeset in webkit [193787] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebKit2

Progress towards implementing downloads with NetworkSession
https://bugs.webkit.org/show_bug.cgi?id=151883

Patch by Alex Christensen <achristensen@webkit.org> on 2015-12-08
Reviewed by Brady Eidson.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):

  • NetworkProcess/NetworkLoad.cpp:

(WebKit::NetworkLoad::~NetworkLoad):
(WebKit::NetworkLoad::continueDidReceiveResponse):
(WebKit::NetworkLoad::convertTaskToDownload):
(WebKit::NetworkLoad::willPerformHTTPRedirection):
(WebKit::NetworkLoad::didReceiveChallenge):
(WebKit::NetworkLoad::didReceiveResponse):
(WebKit::NetworkLoad::didReceiveData):
(WebKit::NetworkLoad::didCompleteWithError):
(WebKit::NetworkLoad::didBecomeDownload):
(WebKit::NetworkLoad::didReceiveResponseAsync):
(WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):

  • NetworkProcess/NetworkLoad.h:
  • NetworkProcess/NetworkLoadClient.h:
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didConvertToDownload):
(WebKit::NetworkResourceLoader::abort):
(WebKit::NetworkResourceLoader::didConvertHandleToDownload): Deleted.

  • NetworkProcess/NetworkResourceLoader.h:
  • NetworkProcess/NetworkSession.h:

(WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
(WebKit::NetworkSession::~NetworkSession): Deleted.

  • NetworkProcess/cache/NetworkCacheSpeculativeLoad.h:
  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[NetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]):
(-[NetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
(WebKit::NetworkSession::NetworkSession):
(WebKit::NetworkSession::~NetworkSession):
(WebKit::NetworkSession::createDataTaskWithRequest):

  • Shared/Downloads/Download.h:
  • Shared/Downloads/DownloadManager.h:

(WebKit::DownloadManager::isDownloading):
(WebKit::DownloadManager::activeDownloadCount):

3:02 PM Changeset in webkit [193786] by beidson@apple.com
  • 5 edits in trunk

Modern IDB: Fire blocked events for delete requests that are blocked.
https://bugs.webkit.org/show_bug.cgi?id=152015

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Previous failing tests now pass, and previously timing-out tests now complete).

  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::maybeDeleteDatabase):
(WebCore::IDBServer::UniqueIDBDatabase::handleDelete):
(WebCore::IDBServer::UniqueIDBDatabase::deleteOrRunTransactionsTimerFired):

  • Modules/indexeddb/server/UniqueIDBDatabase.h:

LayoutTests:

  • platform/mac-wk1/TestExpectations:
2:18 PM Changeset in webkit [193785] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

More IDB TestExpectations gardening.

Reviewed by Alex Christensen.

  • platform/mac-wk1/TestExpectations:
2:12 PM Changeset in webkit [193784] by beidson@apple.com
  • 17 edits
    4 adds in trunk

Modern IDB: Fire blocked events for upgrade requests that are blocked.
https://bugs.webkit.org/show_bug.cgi?id=152007

Reviewed by Alex Christensen.

Source/WebCore:

Test: storage/indexeddb/modern/blocked-open-db-requests.html

And some that used to fail now pass.
And some that used to timeout now complete.

  • Modules/indexeddb/client/IDBConnectionToServer.cpp:

(WebCore::IDBClient::IDBConnectionToServer::notifyOpenDBRequestBlocked):

  • Modules/indexeddb/client/IDBConnectionToServer.h:
  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::IDBDatabase):

  • Modules/indexeddb/client/IDBOpenDBRequestImpl.cpp:

(WebCore::IDBClient::IDBOpenDBRequest::requestBlocked):

  • Modules/indexeddb/client/IDBOpenDBRequestImpl.h:
  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::dispatchEvent):

  • Modules/indexeddb/server/IDBConnectionToClient.cpp:

(WebCore::IDBServer::IDBConnectionToClient::notifyOpenDBRequestBlocked):

  • Modules/indexeddb/server/IDBConnectionToClient.h:
  • Modules/indexeddb/server/IDBConnectionToClientDelegate.h:
  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::handleOpenDatabaseOperations): When a request that would

result in a version change transaction is blocked by open connections, notify it.

  • Modules/indexeddb/shared/InProcessIDBServer.cpp:

(WebCore::InProcessIDBServer::notifyOpenDBRequestBlocked):

  • Modules/indexeddb/shared/InProcessIDBServer.h:

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/modern/blocked-open-db-requests-expected.txt: Added.
  • storage/indexeddb/modern/blocked-open-db-requests.html: Added.
  • storage/indexeddb/modern/resources/blocked-open-db-requests.js: Added.
  • storage/indexeddb/modern/deleteobjectstore-1.html: Fix subtly broken test.
  • storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html: Ditto.
1:49 PM Changeset in webkit [193783] by Joseph Pecoraro
  • 9 edits
    1 add in trunk/Source

Create a Sandbox SPI header
https://bugs.webkit.org/show_bug.cgi?id=151981

Reviewed by Andy Estes.

Source/JavaScriptCore:

  • inspector/remote/RemoteInspector.mm:

Source/WebKit2:

  • PluginProcess/mac/PluginProcessShim.mm:
  • Shared/ios/ChildProcessIOS.mm:
  • Shared/mac/ChildProcessMac.mm:
  • Shared/mac/SandboxUtilities.mm:

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/spi/darwin/SandboxSPI.h: Added.
1:45 PM Changeset in webkit [193782] by fpizlo@apple.com
  • 2 edits
    1 add in trunk/Source/JavaScriptCore

DFG::UnificationPhase should merge isProfitableToUnbox, since this may have been set in ByteCodeParser
https://bugs.webkit.org/show_bug.cgi?id=152011
rdar://problem/23777875

Reviewed by Michael Saboff.

Previously UnificationPhase did not merge this because we used to only set this in FixupPhase, which runs after unification. But now
ByteCodeParser may set isProfitableToUnbox as part of how it handles the ArgumentCount of an inlined varargs call, so UnificationPhase
needs to merge it after unifying.

Also changed the order of unification since this makes the bug more obvious and easier to test.

  • dfg/DFGUnificationPhase.cpp:

(JSC::DFG::UnificationPhase::run):

  • tests/stress/varargs-with-unused-count.js: Added.
1:44 PM Changeset in webkit [193781] by mark.lam@apple.com
  • 17 edits
    3 adds in trunk

Polymorphic operand types for DFG and FTL div.
https://bugs.webkit.org/show_bug.cgi?id=151747

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Perf on benchmarks is neutral. The new JSRegress ftl-object-div test shows
a speed up not from the div operator itself, but from the fact that the
polymorphic operand types support now allow the test function to run without OSR
exiting, thereby realizing the DFG and FTL's speed up on other work that the test
function does.

This patch has passed the layout tests on x86_64 with a debug build.
It passed the JSC tests with x86 and x86_64 debug builds.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithDiv):

  • ftl/FTLCompileBinaryOp.cpp:

(JSC::FTL::generateBinaryArithOpFastPath):
(JSC::FTL::generateBinaryOpFastPath):

  • ftl/FTLInlineCacheDescriptor.h:
  • ftl/FTLInlineCacheDescriptorInlines.h:

(JSC::FTL::ArithDivDescriptor::ArithDivDescriptor):
(JSC::FTL::ArithDivDescriptor::icSize):

  • ftl/FTLInlineCacheSize.cpp:

(JSC::FTL::sizeOfArithDiv):

  • ftl/FTLInlineCacheSize.h:
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::lower):
(JSC::FTL::DFG::LowerDFGToLLVM::compileArithMul):

  • Fixed a cut-paste bug where the op_mul IC was using the op_sub IC size. This bug is benign because the op_sub IC size turns out to be larger than op_mul needs.

(JSC::FTL::DFG::LowerDFGToLLVM::compileArithDiv):

  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_div):

  • Fixed a bug where the scratchFPR was not allocated for the 64bit port. This bug is benign because the scratchFPR is only needed if we are using scratchGPR register (used for branchConvertDoubleToInt32()) is

    X86Registers::r8. Since we're always using regT2 for the scratchT2,

    the scratchFPR is never needed. However, we should fix this anyway to be correct.
  • tests/stress/op_div.js:
  • Fixed some test values.

LayoutTests:

  • js/regress/ftl-object-div-expected.txt: Added.
  • js/regress/ftl-object-div.html: Added.
  • js/regress/script-tests/ftl-object-div.js: Added.

(o1.valueOf):
(foo):

1:41 PM Changeset in webkit [193780] by peavo@outlook.com
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=152008

Reviewed by Brent Fulgham.

GLuint is undefined.

  • platform/graphics/GraphicsContext3D.h:
1:35 PM Changeset in webkit [193779] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Light cleanup in TextPainter.
https://bugs.webkit.org/show_bug.cgi?id=151994

Reviewed by Darin Adler.

No change in functionality.

  • rendering/TextPainter.cpp:

(WebCore::TextPainter::TextPainter):

  • rendering/TextPainter.h: Address post review comment.

(WebCore::ShadowApplier::isLastShadowIteration):
(WebCore::ShadowApplier::shadowIsCompletelyCoveredByText):

1:07 PM Changeset in webkit [193778] by Beth Dakin
  • 3 edits in trunk/Source/WebKit/mac

Follow-up to:
Add support for WebViewAdditions
https://bugs.webkit.org/show_bug.cgi?id=151967

Rubber-stamped by Dan Bernstein.

We should use the Web prefix for all category names.

  • WebView/WebView.mm:

(-[WebView updateWebViewAdditions]):

  • WebView/WebViewInternal.h:
1:05 PM Changeset in webkit [193777] by bshafiei@apple.com
  • 10 edits
    1 copy in tags/Safari-602.1.13.2/Source

Merged r193645. rdar://problem/23751214

1:03 PM Changeset in webkit [193776] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2/Source/WebKit/mac

Merged r193676. rdar://problem/23639610

1:02 PM Changeset in webkit [193775] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2/Source/WebKit/mac

Merged r193675. rdar://problem/23639610

1:00 PM Changeset in webkit [193774] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.13.2/Source/WebKit/mac

Merged r193661. rdar://problem/23639610

12:44 PM Changeset in webkit [193773] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Do not insert positioned renderers to multiple gPositionedDescendantsMap.
https://bugs.webkit.org/show_bug.cgi?id=151878
rdar://problem/22229889

Reviewed by Simon Fraser.

We insert positioned renderers into a static map (RenderBlock::gPositionedDescendantsMap) to keep track of them.
This static map is at block level. A particular absolute positioned object is added to its closest ancestor that
returns true for RenderElement::canContainAbsolutelyPositionedObjects().
canContainAbsolutelyPositionedObjects() returns true if the ancestor is either positioned or has transform.
If this container's style changes so that it's no longer positioned and it has no transform anymore,
we need to clear its static map of positioned objects (they'll get re-inserted to another ancestor at next layout).

This patch addresses the case when the renderer does not have transforms anymore.

Source/WebCore:

Test: fast/block/positioning/crash-when-transform-is-removed.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleWillChange):

LayoutTests:

  • fast/block/positioning/crash-when-transform-is-removed-expected.txt: Added.
  • fast/block/positioning/crash-when-transform-is-removed.html: Added.
12:43 PM Changeset in webkit [193772] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Fix social meta for home page.
https://bugs.webkit.org/show_bug.cgi?id=151764

Reviewed by Timothy Hatcher.

  • wp-content/plugins/social-meta.php:
12:42 PM Changeset in webkit [193771] by Matt Baker
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Global Breakpoints should always be visible
https://bugs.webkit.org/show_bug.cgi?id=151066

Reviewed by Timothy Hatcher.

  • UserInterface/Views/DebuggerSidebarPanel.js:

(WebInspector.DebuggerSidebarPanel):
Turn off filtering for Global Breakpoints elements.

  • UserInterface/Views/NavigationSidebarPanel.js:

(WebInspector.NavigationSidebarPanel.prototype.suppressFilteringOnTreeElements):
Allow filtering to be turned off for specific tree elements.
(WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
Make element visible if filtering suppressed.
(WebInspector.NavigationSidebarPanel.prototype._checkForEmptyFilterResults):
Visible elements with filtering disabled aren't considered when
showing/hiding the empty content placeholder.

12:37 PM Changeset in webkit [193770] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Marking fast/canvas/canvas-too-large-to-draw.html as flaky on ElCapitan Debug
https://bugs.webkit.org/show_bug.cgi?id=152009

Unreviewed test gardening.

  • platform/mac/TestExpectations:
12:33 PM Changeset in webkit [193769] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2

Merged r193647. rdar://problem/23806716

12:33 PM Changeset in webkit [193768] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2/Source/WebKit2

Merged r193489. rdar://problem/23766021

12:31 PM Changeset in webkit [193767] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.13.2/Source/WebKit2

Merged r193483. rdar://problem/23766021

12:24 PM Changeset in webkit [193766] by commit-queue@webkit.org
  • 62 edits
    13 adds
    1 delete in trunk

[ES6] "super" and "this" should be lexically bound inside an arrow function and should live in a JSLexicalEnvironment
https://bugs.webkit.org/show_bug.cgi?id=149338

Source/JavaScriptCore:

Patch by Aleksandr Skachkov <gskachkov@gmail.com> on 2015-12-05
Reviewed by Saam Barati.

Implemented new version of the lexically bound 'this' in arrow function. In current version
'this' is stored inside of the lexical environment of the function. To store and load we use
op_get_from_scope and op_put_to_scope operations. Also new implementation prevent raising TDZ
error for arrow functions that are declared before super() but invoke after.

  • builtins/BuiltinExecutables.cpp:

(JSC::createExecutableInternal):

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecode/EvalCodeCache.h:

(JSC::EvalCodeCache::getSlow):

  • bytecode/ExecutableInfo.h:

(JSC::ExecutableInfo::ExecutableInfo):
(JSC::ExecutableInfo::isDerivedConstructorContext):
(JSC::ExecutableInfo::isArrowFunctionContext):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::isArrowFunction):
(JSC::UnlinkedCodeBlock::isDerivedConstructorContext):
(JSC::UnlinkedCodeBlock::isArrowFunctionContext):

  • bytecode/UnlinkedFunctionExecutable.cpp:

(JSC::generateUnlinkedFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):

  • bytecode/UnlinkedFunctionExecutable.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::initializeArrowFunctionContextScopeIfNeeded):
(JSC::BytecodeGenerator::variable):
(JSC::BytecodeGenerator::emitNewArrowFunctionExpression):
(JSC::BytecodeGenerator::emitLoadArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitLoadThisFromArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitLoadNewTargetFromArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitLoadDerivedConstructorFromArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitPutNewTargetToArrowFunctionContextScope):
(JSC::BytecodeGenerator::emitPutDerivedConstructorToArrowFunctionContextScope):
(JSC::BytecodeGenerator::emitPutThisToArrowFunctionContextScope):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::isDerivedConstructorContext):
(JSC::BytecodeGenerator::usesArrowFunction):
(JSC::BytecodeGenerator::needsToUpdateArrowFunctionContext):
(JSC::BytecodeGenerator::usesEval):
(JSC::BytecodeGenerator::usesThis):
(JSC::BytecodeGenerator::newTarget):
(JSC::BytecodeGenerator::makeFunction):

  • bytecompiler/NodesCodegen.cpp:

(JSC::ThisNode::emitBytecode):
(JSC::SuperNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionNode::emitBytecode):

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::evaluate):

  • dfg/DFGAbstractInterpreterInlines.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:
  • dfg/DFGClobberize.h:
  • dfg/DFGDoesGC.cpp:
  • dfg/DFGFixupPhase.cpp:
  • dfg/DFGNodeType.h:
  • dfg/DFGObjectAllocationSinkingPhase.cpp:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGPromotedHeapLocation.cpp:
  • dfg/DFGPromotedHeapLocation.h:
  • dfg/DFGSafeToExecute.h:
  • dfg/DFGSpeculativeJIT.cpp:
  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:
  • dfg/DFGSpeculativeJIT64.cpp:
  • ftl/FTLCapabilities.cpp:
  • ftl/FTLLowerDFGToLLVM.cpp:
  • ftl/FTLOperations.cpp:

(JSC::FTL::operationMaterializeObjectInOSR):

  • interpreter/Interpreter.cpp:

(JSC::eval):

  • jit/JIT.cpp:
  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emitNewFuncExprCommon):

  • jit/JITOpcodes32_64.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createArrowFunctionExpr):
(JSC::ASTBuilder::usesArrowFunction):

  • parser/Nodes.h:

(JSC::ScopeNode::usesArrowFunction):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseFunctionInfo):

  • parser/ParserModes.h:
  • runtime/CodeCache.cpp:

(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getProgramCodeBlock):
(JSC::CodeCache::getEvalCodeBlock):
(JSC::CodeCache::getModuleProgramCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

  • runtime/CodeCache.h:
  • runtime/CommonIdentifiers.h:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/Executable.cpp:

(JSC::ScriptExecutable::ScriptExecutable):
(JSC::EvalExecutable::create):
(JSC::EvalExecutable::EvalExecutable):
(JSC::ProgramExecutable::ProgramExecutable):
(JSC::ModuleProgramExecutable::ModuleProgramExecutable):
(JSC::FunctionExecutable::FunctionExecutable):

  • runtime/Executable.h:

(JSC::ScriptExecutable::isArrowFunctionContext):
(JSC::ScriptExecutable::isDerivedConstructorContext):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::createEvalCodeBlock):

  • runtime/JSGlobalObject.h:
  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEval):

  • tests/es6.yaml:
  • tests/stress/arrowfunction-activation-sink-osrexit.js:
  • tests/stress/arrowfunction-activation-sink.js:
  • tests/stress/arrowfunction-lexical-bind-newtarget.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-1.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-2.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-3.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-4.js: Added.
  • tests/stress/arrowfunction-lexical-bind-this-1.js:
  • tests/stress/arrowfunction-lexical-bind-this-7.js: Added.
  • tests/stress/arrowfunction-tdz-1.js: Added.
  • tests/stress/arrowfunction-tdz-2.js: Added.
  • tests/stress/arrowfunction-tdz-3.js: Added.
  • tests/stress/arrowfunction-tdz-4.js: Added.
  • tests/stress/arrowfunction-tdz.js: Removed.

LayoutTests:

Patch by Skachkov Oleksandr <gskachkov@gmail.com> on 2015-12-08
Reviewed by Saam Barati.

  • js/arrowfunction-supercall-expected.txt: Added.
  • js/arrowfunction-supercall.html: Added.
  • js/arrowfunction-tdz-expected.txt: Added new expectation.
  • js/script-tests/arrowfunction-supercall.js: Added.
  • js/script-tests/arrowfunction-tdz.js: Added new cases.
11:49 AM Changeset in webkit [193765] by commit-queue@webkit.org
  • 5 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=151243
<rdar://problem/22955197>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-12-08
Reviewed by Alexey Proskuryakov.

  • LayoutTestRelay/LayoutTestRelay/main.m:

(getTestingSimDevice): Use separate testing device for each worker.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager.run): Perform cleanup even if setup fails.

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.default_child_processes): Calculate number of simulators to use.
(IOSSimulatorPort.child_processes): Gets the number of simulators from options variable.
(IOSSimulatorPort.setup_test_run): Handle mulitple simulators.
(IOSSimulatorPort._quit_ios_simulator): Same
(IOSSimulatorPort.clean_up_test_run): Same
(IOSSimulatorPort.check_sys_deps): Same
(IOSSimulatorPort.testing_device): Same
(IOSSimulatorPort.reset_preferences): Same
(IOSSimulatorPort.get_simulator_path): Return simulator path.
(IOSSimulatorPort._createSimulatorApp): Create the copy of simulator app.

  • Scripts/webkitpy/xcode/simulator.py:

(Device.delete): Delete the simulator device.
(Simulator.delete_device): Same
(Simulator.wait_until_device_is_booted): Wait for device booting.

11:35 AM Changeset in webkit [193764] by eric.carlson@apple.com
  • 11 edits in trunk/Source

[MediaStream] Rename UserMediaClient and UserMediaController methods
https://bugs.webkit.org/show_bug.cgi?id=152001

Reviewed by Brady Eidson.

Source/WebCore:

No new tests, no behavior change.

  • Modules/mediastream/UserMediaClient.h:

(WebCore::UserMediaClient::~UserMediaClient):

  • Modules/mediastream/UserMediaController.h:

(WebCore::UserMediaController::client):
(WebCore::UserMediaController::from):
(WebCore::UserMediaController::requestUserMediaAccess):
(WebCore::UserMediaController::cancelUserMediaAccessRequest):
(WebCore::UserMediaController::requestPermission): Deleted.
(WebCore::UserMediaController::cancelRequest): Deleted.

  • Modules/mediastream/UserMediaRequest.cpp:

(WebCore::UserMediaRequest::constraintsValidated):
(WebCore::UserMediaRequest::contextDestroyed):

  • platform/mock/UserMediaClientMock.h:

Source/WebKit/mac:

  • WebCoreSupport/WebUserMediaClient.h:
  • WebCoreSupport/WebUserMediaClient.mm:

(WebUserMediaClient::pageDestroyed):
(WebUserMediaClient::requestUserMediaAccess):
(WebUserMediaClient::cancelUserMediaAccessRequest):
(-[WebUserMediaPolicyListener initWithUserMediaRequest:]):
(-[WebUserMediaPolicyListener cancelUserMediaAccessRequest]):
(WebUserMediaClient::requestPermission): Deleted.
(WebUserMediaClient::cancelRequest): Deleted.
(-[WebUserMediaPolicyListener cancelRequest]): Deleted.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebUserMediaClient.cpp:

(WebKit::WebUserMediaClient::pageDestroyed):
(WebKit::WebUserMediaClient::requestUserMediaAccess):
(WebKit::WebUserMediaClient::cancelUserMediaAccessRequest):
(WebKit::WebUserMediaClient::requestPermission): Deleted.
(WebKit::WebUserMediaClient::cancelRequest): Deleted.

  • WebProcess/WebCoreSupport/WebUserMediaClient.h:
11:34 AM Changeset in webkit [193763] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Remove an unused variable from WebKitWebContext
https://bugs.webkit.org/show_bug.cgi?id=151999

Patch by Tomas Popela <tpopela@redhat.com> on 2015-12-08
Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitWebContext.cpp:
11:29 AM Changeset in webkit [193762] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Do not exit fullscreen mode during auto-PiP.
https://bugs.webkit.org/show_bug.cgi?id=151889

Reviewed by Darin Adler.

When auto-PiPing, do not exit fullscreen mode, as that causes a two-step animation upon returing from auto-PiP.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::applicationDidBecomeActive): Handle the case where we open Safari after an

auto-PiP by clicking on a link; if so, hide the fullscreen window.

(WebVideoFullscreenInterfaceAVKit::didStartPictureInPicture): Do not exit fullscreen during auto-PiP.
(WebVideoFullscreenInterfaceAVKit::shouldExitFullscreenWithReason): Ditto.

11:20 AM Changeset in webkit [193761] by peavo@outlook.com
  • 2 edits in trunk/Source/WebCore

[WinCairo] Remove unneeded function.
https://bugs.webkit.org/show_bug.cgi?id=151989

Reviewed by Brent Fulgham.

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::createOptimalVideoType):
(MFCreateMediaType): Deleted.

11:11 AM Changeset in webkit [193760] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Adopt WebFullScreenVideoRootViewController.
https://bugs.webkit.org/show_bug.cgi?id=151996

Reviewed by Dan Bernstein.

Adopt WebFullScreenVideoRootViewController from WebKitAdditions. If it is not available, create and use
a generic UIViewController subclass.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(createFullScreenVideoRootViewControllerClass):
(allocWebFullScreenVideoRootViewControllerInstance):
(WebVideoFullscreenInterfaceAVKit::setupFullscreen):

10:53 AM Changeset in webkit [193759] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.13.2/Source

Versioning.

10:00 AM Changeset in webkit [193758] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

ImmutableNFANodeBuilder's move constructor moves an uninitialized member variable into itself
https://bugs.webkit.org/show_bug.cgi?id=151982

Reviewed by Darin Adler.

  • contentextensions/ImmutableNFANodeBuilder.h:

(WebCore::ContentExtensions::ImmutableNFANodeBuilder::ImmutableNFANodeBuilder):

9:50 AM Changeset in webkit [193757] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

[Cocoa] ResourceUsageOverlay should query kernel for VM page size.
<https://webkit.org/b/151920>

Reviewed by Andy Estes.

Read the vm.pagesize sysctl to find the correct page size for memory usage calculations.
This fixes broken math on systems that have different hw.pagesize and vm.pagesize.

  • page/cocoa/ResourceUsageOverlayCocoa.mm:

(WebCore::vmPageSize):
(WebCore::pagesPerVMTag):
(WebCore::runSamplerThread):

9:39 AM Changeset in webkit [193756] by Chris Dumez
  • 7 edits in trunk/Source

Add diagnostic logging to measure speculative revalidation accuracy
https://bugs.webkit.org/show_bug.cgi?id=151953
<rdar://problem/23092196>

Reviewed by Darin Adler.

Source/WebCore:

Add diagnostic logging to measure speculative revalidation accuracy.

  • page/DiagnosticLoggingKeys.cpp:

(WebCore::DiagnosticLoggingKeys::entryRightlyNotWarmedUpKey):
(WebCore::DiagnosticLoggingKeys::entryWronglyNotWarmedUpKey):
(WebCore::DiagnosticLoggingKeys::successfulSpeculativeWarmupWithRevalidationKey):
(WebCore::DiagnosticLoggingKeys::successfulSpeculativeWarmupWithoutRevalidationKey):
(WebCore::DiagnosticLoggingKeys::unknownEntryRequestKey):
(WebCore::DiagnosticLoggingKeys::wastedSpeculativeWarmupWithRevalidationKey):
(WebCore::DiagnosticLoggingKeys::wastedSpeculativeWarmupWithoutRevalidationKey):

  • page/DiagnosticLoggingKeys.h:

Source/WebKit2:

We track the following:

  1. Resources we knew about AND did not get requested
    1. We did not speculate (Good)
    2. We speculated but did not go to network (Bad)
    3. We speculated and went to network (Very bad)
  2. Resources we did not know about (Neutral)
  3. Resources we knew about AND got requested
    1. We did not speculate (Bad)
    2. We speculated but did not go to network (Good)
    3. We speculated and went to network (Very good)
  • NetworkProcess/cache/NetworkCache.cpp:

(WebKit::NetworkCache::Cache::retrieve):

  • NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:

(WebKit::NetworkCache::allSpeculativeLoadingDiagnosticMessages):
(WebKit::NetworkCache::printSpeculativeLoadingDiagnosticMessageCounts):
(WebKit::NetworkCache::logSpeculativeLoadingDiagnosticMessage):
(WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry):
(WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry):
(WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::wasRevalidated):
(WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::markLoadAsCompleted):
(WebKit::NetworkCache::SpeculativeLoadManager::retrieve):
(WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry):
(WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry):
(WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry):
(WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation):
(WebKit::NetworkCache::makeSubresourcesKey): Deleted.
(WebKit::NetworkCache::constructRevalidationRequest): Deleted.
(WebKit::NetworkCache::responseNeedsRevalidation): Deleted.
(WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady): Deleted.
(WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): Deleted.
(WebKit::NetworkCache::SpeculativeLoadManager::satisfyPendingRequests): Deleted.

  • NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h:
9:37 AM Changeset in webkit [193755] by beidson@apple.com
  • 4 edits in trunk

Modern IDB: storage/indexeddb/index-cursor.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151973

Reviewed by Darin Adler.

Source/WebCore:

No new tests (At least one failing test now passes).

  • Modules/indexeddb/server/MemoryIndexCursor.cpp:

(WebCore::IDBServer::MemoryIndexCursor::MemoryIndexCursor): When the initial cursor creation

generates an iterator outside of the cursor's IDBKeyRange, invalidate the iterator.

LayoutTests:

  • platform/mac-wk1/TestExpectations:
9:35 AM Changeset in webkit [193754] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Fix the !ENABLE(DFG_JIT) build after r193649
https://bugs.webkit.org/show_bug.cgi?id=151985

Reviewed by Saam Barati.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emitSlow_op_loop_hint):

8:42 AM Changeset in webkit [193753] by berto@igalia.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Remove unnecessary check for 0 in commitSize().

Change suggested by Darin Adler in bug #130237.

  • interpreter/JSStack.cpp:

(JSC::commitSize):

8:42 AM Changeset in webkit [193752] by Csaba Osztrogonác
  • 4 edits in trunk

[EFL] REGRESSION(r173394): MiniBrowser stucked in an infinite loop if NETWORK_CACHE is disabled
https://bugs.webkit.org/show_bug.cgi?id=137692

Reviewed by Darin Adler.

Source/WebKit2:

  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::maximumBufferingTime): Disable caching if NETWORK_CACHE is disabled.

LayoutTests:

  • platform/efl/TestExpectations: Unskip now passing tests.
8:16 AM Changeset in webkit [193751] by Gyuyoung Kim
  • 12 edits in trunk/LayoutTests

[EFL][AX] Rebaseline failing AX tests since r185662
https://bugs.webkit.org/show_bug.cgi?id=151991

Unreviewed EFL rebaseline.

  • platform/efl/TestExpectations:
  • platform/efl/accessibility/image-link-expected.txt:
  • platform/efl/accessibility/image-map2-expected.txt:
  • platform/efl/accessibility/lists-expected.txt:
  • platform/efl/accessibility/table-attributes-expected.txt:
  • platform/efl/accessibility/table-cell-spans-expected.txt:
  • platform/efl/accessibility/table-cells-expected.txt:
  • platform/efl/accessibility/table-detection-expected.txt:
  • platform/efl/accessibility/table-one-cell-expected.txt:
  • platform/efl/accessibility/table-sections-expected.txt:
  • platform/efl/accessibility/table-with-rules-expected.txt:
8:02 AM Changeset in webkit [193750] by jdiggs@igalia.com
  • 4 edits in trunk

[EFL] some ax tests have been failed since r186692
https://bugs.webkit.org/show_bug.cgi?id=146887

Reviewed by Mario Sanchez Prada.

Source/WebCore:

The tests were failing because there are now two WebCore accessibility
roles which need to implement the AtkTable interface: TableRole and
GridRole. Because the latter was not added in r186692, any tests with
ARIA role grid that accessed cells via coordinates stopped working.

No new tests; instead unskipped all the broken table tests which now pass.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(getInterfaceMaskFromObject):

LayoutTests:

  • platform/efl/TestExpectations: Removed failing tests.
7:38 AM Changeset in webkit [193749] by ryuan.choi@navercorp.com
  • 2 edits in trunk/Source/JavaScriptCore

[EFL] Remove the flag to check timer state in IncrementalSweeper
https://bugs.webkit.org/show_bug.cgi?id=151988

Reviewed by Gyuyoung Kim.

  • heap/IncrementalSweeper.cpp:

(JSC::IncrementalSweeper::scheduleTimer):
(JSC::IncrementalSweeper::IncrementalSweeper):
(JSC::IncrementalSweeper::cancelTimer):

6:20 AM Changeset in webkit [193748] by yoon@igalia.com
  • 3 edits in trunk/Source/WebCore

[ThreadedCompositor] Add support for Cairo GL-backed ImageBuffer.
https://bugs.webkit.org/show_bug.cgi?id=151986

Reviewed by Žan Doberšek.

This patch adds a support for accelerated 2d canvas which uses cairo-gl as its
backend to the threaded compositor. Basically, it applies same way to support
WebGL for the threaded compositor.

Unfortunately, we cannot swap the buffer for the accelerated 2d canvas because
it should preserve the buffer of the previous frame when drawing new contents.
Because of that, the surface of the accelerated 2d canvas will be copied for
each frame.

  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::ImageBufferData::ImageBufferData):
(WebCore::ImageBufferData::createCompositorBuffer): Prepare a texture
surface to push the rendered result to the compositing thread.
(WebCore::ImageBufferData::swapBuffersIfNeeded): Copies the contents
of the canvas's surface to the compositing texture.
(WebCore::ImageBufferData::createCairoGLSurface): Moved to the inside
of ImageBufferData.

3:18 AM Changeset in webkit [193747] by Philippe Normand
  • 2 edits in trunk/Source/JavaScriptCore

[Mac][GTK] Fix JSC FTL build
https://bugs.webkit.org/show_bug.cgi?id=151915

Reviewed by Csaba Osztrogonác.

  • CMakeLists.txt: Don't pass version-script option to ld on Darwin because this platform's linker

doesn't support this option.

3:07 AM Changeset in webkit [193746] by jdiggs@igalia.com
  • 11 edits in trunk

[GTK] 15 accessibility tests fail since r186692.
https://bugs.webkit.org/show_bug.cgi?id=148938

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Failing tests rebaselined.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole): Treat GridCellRole and CellRole the same.
(roleIsTextType): Treat GridCellRole and CellRole the same.

LayoutTests:

  • platform/gtk/TestExpectations: Removed failing tests.
  • platform/gtk/accessibility/roles-computedRoleString-expected.txt: Rebaselined.
  • platform/gtk/accessibility/table-attributes-expected.txt: Rebaselined.
  • platform/gtk/accessibility/table-cell-spans-expected.txt: Rebaselined.
  • platform/gtk/accessibility/table-cells-expected.txt: Rebaselined.
  • platform/gtk/accessibility/table-detection-expected.txt: Rebaselined.
  • platform/gtk/accessibility/table-sections-expected.txt: Rebaselined.
  • platform/gtk/accessibility/table-with-rules-expected.txt: Rebaselined.
2:45 AM WebKitGTK/2.10.x edited by berto@igalia.com
(diff)
2:26 AM Changeset in webkit [193745] by berto@igalia.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Use pageSize() instead of getpagesize() after r193648

  • interpreter/JSStack.cpp:

(JSC::commitSize):

2:00 AM Changeset in webkit [193744] by ryuan.choi@navercorp.com
  • 7 edits
    1 copy in trunk

[EFL] Add API to provide preferences before creating ewk_view
https://bugs.webkit.org/show_bug.cgi?id=151587

Reviewed by Gyuyoung Kim.

Source/WebKit2:

This patch adds ewk_view_configuration_settings_get to provide preferences
before createing ewk_view.

  • PlatformEfl.cmake:
  • UIProcess/API/efl/ewk_view_configuration.cpp:

(EwkViewConfiguration::EwkViewConfiguration):
(ewk_view_configuration_settings_get):

  • UIProcess/API/efl/ewk_view_configuration.h:
  • UIProcess/API/efl/ewk_view_configuration_private.h:

(EwkViewConfiguration::pageGroup):

  • UIProcess/API/efl/tests/test_ewk2_view_configuration.cpp:

(TEST_F): Added test case for ewk_view_configuration_settings_get().

Tools:

  • MiniBrowser/efl/main.c:

(on_key_down):
(quit):
(window_create):
Moved settings related code to configuration() not to update settings
whenever ewk_view is created.
(configuration):
(elm_main):

1:17 AM Changeset in webkit [193743] by fred.wang@free.fr
  • 3 edits
    2 adds in trunk

[cairo] Solid stroke of lines with thickness less than 1 pixel broken after r191658
https://bugs.webkit.org/show_bug.cgi?id=151947

Reviewed by Martin Robinson.

Source/WebCore:

Test: mathml/presentation/radical-bar-visibility.html

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::drawLine): Force a minimal thickness of 1px

LayoutTests:

Add a test to check that the radical overbar appears on the screen when it has thickness less than 1px.

  • mathml/presentation/radical-bar-visibility-expected-mismatch.html: Added.
  • mathml/presentation/radical-bar-visibility.html: Added.
1:14 AM Changeset in webkit [193742] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.13.2

New tag.

1:12 AM Changeset in webkit [193741] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Fix GTK+ API tests after r193639.

The new jhbuild version needs some more variables ot be present in
the builtin dict, even if they are set to None.

  • jhbuild/jhbuildutils.py:

(enter_jhbuild_environment_if_available):

12:55 AM Changeset in webkit [193740] by bshafiei@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merged r191748. rdar://problem/23787113

12:55 AM Changeset in webkit [193739] by bshafiei@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merged r191746. rdar://problem/23787113

12:54 AM Changeset in webkit [193738] by bshafiei@apple.com
  • 7 edits
    2 copies in branches/safari-601-branch

Merged r191731. rdar://problem/23787113

12:53 AM Changeset in webkit [193737] by bshafiei@apple.com
  • 4 edits
    5 copies in branches/safari-601-branch

Merged r192604. rdar://problem/23787086

12:51 AM Changeset in webkit [193736] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601-branch

Merged r192433. rdar://problem/23787115

12:51 AM Changeset in webkit [193735] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601-branch

Merged r192389. rdar://problem/23787083

12:50 AM Changeset in webkit [193734] by bshafiei@apple.com
  • 4 edits
    6 copies in branches/safari-601-branch

Merged r192369. rdar://problem/23787108

12:49 AM Changeset in webkit [193733] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601-branch

Merged r192316. rdar://problem/23787100

12:47 AM Changeset in webkit [193732] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601-branch

Merged r192281. rdar://problem/23787092

12:45 AM Changeset in webkit [193731] by bshafiei@apple.com
  • 2 edits in branches/safari-601.4-branch/Source/WebCore

Merged r191748. rdar://problem/23787113

12:45 AM Changeset in webkit [193730] by bshafiei@apple.com
  • 2 edits in branches/safari-601.4-branch/Source/WebCore

Merged r191746. rdar://problem/23787113

12:44 AM Changeset in webkit [193729] by bshafiei@apple.com
  • 7 edits
    2 copies in branches/safari-601.4-branch

Merged r191731. rdar://problem/23787113

12:42 AM Changeset in webkit [193728] by bshafiei@apple.com
  • 4 edits
    5 copies in branches/safari-601.4-branch

Merged r192604. rdar://problem/23787086

12:41 AM Changeset in webkit [193727] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601.4-branch

Merged r192433. rdar://problem/23787115

12:40 AM Changeset in webkit [193726] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.4-branch

Merged r192389. rdar://problem/23787083

12:38 AM Changeset in webkit [193725] by bshafiei@apple.com
  • 4 edits
    6 copies in branches/safari-601.4-branch

Merged r192369. rdar://problem/23787108

12:36 AM Changeset in webkit [193724] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601.4-branch

Merged r192316. rdar://problem/23787100

12:36 AM Changeset in webkit [193723] by yoon@igalia.com
  • 8 edits in trunk/Source/WebCore

[ThreadedCompositor] Support WebGL for OpenGL.
https://bugs.webkit.org/show_bug.cgi?id=143300

Reviewed by Žan Doberšek.

To remove pixel transfer operation, this patch adds m_compositorFBO which uses same depth and stencil
buffer with m_fbo but uses m_compositorTexture as a color attachment in GraphicsContext3D.
Because switching target framebuffer is cheaper than pixel transfer operation and switching color
attachment of m_fbo. In Threaded Compositor, when WebGL renders a scene, prepareTexture swaps
m_fbo with m_compositorFBO and send the color attachment to the compositor thread.
This patch only supports WebGL for OpenGL. OpenGLES will be covered in following-up patches.

No new tests needed.

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::proxy):
(WebCore::GraphicsContext3DPrivate::swapBuffersIfNeeded):
Implement interfaces to pass a rendered texture to the compositing
thread.

  • platform/graphics/GraphicsContext3DPrivate.h:
  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
Create additional compositing texture and FBO to swaping buffers for
threaded compositor.

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::reshapeFBOs):
(WebCore::GraphicsContext3D::attachDepthAndStencilBufferIfNeeded):
Split attaching depth and stencil buffer codes from reshapeFBOs
to make complete framebuffer with not only m_fbo but m_compositorFBO also.

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::prepareTexture):
If we are in the threaded compositor, we will swap m_fbo with
m_compositorFBO instead of copying it.

12:35 AM Changeset in webkit [193722] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.4-branch

Merged r192281. rdar://problem/23787092

12:26 AM Changeset in webkit [193721] by Gustavo Noronha Silva
  • 9 edits in trunk

[GTK] Notify WebCore when notification is clicked
https://bugs.webkit.org/show_bug.cgi?id=151951

Reviewed by Carlos Garcia Campos.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitNotification.cpp:

(webkit_notification_class_init): new clicked signal.
(webkit_notification_clicked): method to emit the clicked signal.

  • UIProcess/API/gtk/WebKitNotification.h:
  • UIProcess/API/gtk/WebKitNotificationProvider.cpp:

(WebKitNotificationProvider::notificationClickedCallback): handle the clicked signal and tell WebProcess about the click.
(WebKitNotificationProvider::show): connect to the clicked signal in addition to closed.

  • UIProcess/API/gtk/WebKitNotificationProvider.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(notifyNotificationClicked): handle the click on our libnotify notification.
(webkitWebViewShowNotification): add the "default" action to our libnotify notification to be notified of the click.

  • UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:

(testWebViewNotification): test the new API.

12:17 AM Changeset in webkit [193720] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r191748. rdar://problem/23787044

12:17 AM Changeset in webkit [193719] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r191746. rdar://problem/23787044

12:16 AM Changeset in webkit [193718] by bshafiei@apple.com
  • 7 edits
    2 copies in branches/safari-601.1.46-branch

Merged r191731. rdar://problem/23787044

12:15 AM Changeset in webkit [193717] by bshafiei@apple.com
  • 4 edits
    5 copies in branches/safari-601.1.46-branch

Merged r192604. rdar://problem/23786994

12:13 AM Changeset in webkit [193716] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601.1.46-branch

Merged r192433. rdar://problem/23787047

12:12 AM Changeset in webkit [193715] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.1.46-branch

Merged r192389. rdar://problem/23786983

12:11 AM Changeset in webkit [193714] by bshafiei@apple.com
  • 4 edits
    6 copies in branches/safari-601.1.46-branch

Merged r192369. rdar://problem/23787037

12:10 AM Changeset in webkit [193713] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601.1.46-branch

Merged r192316. rdar://problem/23787021

12:08 AM Changeset in webkit [193712] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.1.46-branch

Merged r192281. rdar://problem/23787006

12:01 AM Changeset in webkit [193711] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46.60-branch/Source/WebCore

Merged r191748. rdar://problem/23787044

12:00 AM Changeset in webkit [193710] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46.60-branch/Source/WebCore

Merged r191746. rdar://problem/23787044

Dec 7, 2015:

11:59 PM Changeset in webkit [193709] by bshafiei@apple.com
  • 7 edits
    2 copies in branches/safari-601.1.46.60-branch

Merged r191731. rdar://problem/23787044

11:55 PM Changeset in webkit [193708] by bshafiei@apple.com
  • 4 edits
    5 copies in branches/safari-601.1.46.60-branch

Merged r192604. rdar://problem/23786994

11:53 PM Changeset in webkit [193707] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601.1.46.60-branch

Merged r192433. rdar://problem/23787047

11:51 PM Changeset in webkit [193706] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.1.46.60-branch

Merged r192389. rdar://problem/23786983

11:50 PM Changeset in webkit [193705] by bshafiei@apple.com
  • 4 edits
    6 copies in branches/safari-601.1.46.60-branch

Merged r192369. rdar://problem/23787037

11:48 PM Changeset in webkit [193704] by bshafiei@apple.com
  • 3 edits
    2 copies in branches/safari-601.1.46.60-branch

Merged r192316. rdar://problem/23787021

11:46 PM Changeset in webkit [193703] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.1.46.60-branch

Merged r192281. rdar://problem/23787006

9:41 PM Changeset in webkit [193702] by matthew_hanson@apple.com
  • 27 edits
    4 adds in branches/safari-601.1.46-branch

Merge r192992. rdar://problem/23769716

9:41 PM Changeset in webkit [193701] by matthew_hanson@apple.com
  • 10 edits
    2 adds in branches/safari-601.1.46-branch

Merge r192732. rdar://problem/23769731

9:41 PM Changeset in webkit [193700] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit/mac

Merge r191261. rdar://problem/23769749

9:41 PM Changeset in webkit [193699] by matthew_hanson@apple.com
  • 10 edits in branches/safari-601.1.46-branch/Source

Merge r191260. rdar://problem/23769749

9:40 PM Changeset in webkit [193698] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601.1.46-branch

Merge r191251. rdar://problem/23769757

9:40 PM Changeset in webkit [193697] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601.1.46-branch

Merge r190876. rdar://problem/23769722

9:40 PM Changeset in webkit [193696] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r192367. rdar://problem/23769708

9:40 PM Changeset in webkit [193695] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/LayoutTests

Merge r191986. rdar://problem/23769708

9:40 PM Changeset in webkit [193694] by matthew_hanson@apple.com
  • 21 edits
    7 adds in branches/safari-601.1.46-branch

Merge r191968. rdar://problem/23769708

9:40 PM Changeset in webkit [193693] by matthew_hanson@apple.com
  • 14 edits
    2 adds in branches/safari-601.1.46-branch

Merge r191331. rdar://problem/23769700

9:40 PM Changeset in webkit [193692] by matthew_hanson@apple.com
  • 26 edits
    1 delete in branches/safari-601.1.46-branch/Source

Merge r191014. rdar://problem/23769740

9:37 PM Changeset in webkit [193691] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Build fix.

9:05 PM Changeset in webkit [193690] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r193635. rdar://problem/23785592

8:59 PM Changeset in webkit [193689] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

Move an IDB test from the "generic failure" section to the "fails because no workers" section.

Rubberstamped by Andy Estes.

  • platform/mac-wk1/TestExpectations:
8:34 PM Changeset in webkit [193688] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Make paintTextWithShadows a member function (TextPainter).
https://bugs.webkit.org/show_bug.cgi?id=151979

Reviewed by Simon Fraser.

This patch also simplifies paintTextWithShadows and
rearranges some of the functions' arguments.

No change in functionality.

  • rendering/TextPainter.cpp:

(WebCore::TextPainter::drawTextOrEmphasisMarks):
(WebCore::TextPainter::paintTextWithShadows):
(WebCore::TextPainter::paintEmphasisMarksIfNeeded):
(WebCore::TextPainter::paintTextWithStyle):
(WebCore::TextPainter::paintText):
(WebCore::drawTextOrEmphasisMarks): Deleted.
(WebCore::paintTextWithShadows): Deleted.

  • rendering/TextPainter.h:
8:05 PM Changeset in webkit [193687] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Small style fixes in B3MoveConstants.cpp
https://bugs.webkit.org/show_bug.cgi?id=151980

Reviewed by Benjamin Poulain.

  • b3/B3MoveConstants.cpp:
7:35 PM Changeset in webkit [193686] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] On x86, we should XOR registers instead of moving a zero immediate
https://bugs.webkit.org/show_bug.cgi?id=151977

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-07
Reviewed by Filip Pizlo.

It is smaller and the frontend has special support
for xor.

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::move):
(JSC::MacroAssemblerX86Common::signExtend32ToPtr):

7:23 PM Changeset in webkit [193685] by jonlee@apple.com
  • 4 edits in trunk/PerformanceTests

Update suites for benchmark
https://bugs.webkit.org/show_bug.cgi?id=151957

Reviewed by Simon Fraser.

  • Animometer/runner/animometer.html: Use spacers instead of relying on

justify-content center to center the content. That allows the opening screen
to grow downward when expanding the list of choices, otherwise it expands
from the center, and off the top edge of the screen.

  • Animometer/runner/resources/animometer.css:

(.tree): Don't overflow scroll.
(.tree > li > label.tree-label:before): Use better glyphs.
(.tree > li > :checked ~ label.tree-label:before):
(main): Using flex-start for justify-content so that if the section grows too
big it gets pinned to the top edge of the document instead of growing past it.
(.spacer): Make the spacers have a minimum 20px and grow evenly.
(section#home): Add a min-height so that the border will expand if the suite
tests shown make the section grow past the height.

  • Animometer/runner/resources/animometer.js: Update the selectors.

(window.suitesManager._treeElement):
(window.suitesManager._suitesElements):
(window.suitesManager._editsElements):

7:04 PM Changeset in webkit [193684] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix a typo from r193683

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-07

  • ftl/FTLCommonValues.cpp:

(JSC::FTL::CommonValues::CommonValues):

6:56 PM Changeset in webkit [193683] by benjamin@webkit.org
  • 35 edits
    4 adds in trunk/Source/JavaScriptCore

[JSC] Add Float support to B3
https://bugs.webkit.org/show_bug.cgi?id=151974

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-07
Reviewed by Filip Pizlo.

This patch adds comprehensive float support to B3.

The new phase reduceDoubleToFloat() gives us a primitive
version of what LLVM was giving us on floats.
It needs to support conversions accross Phis but that can
be added later.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::moveDoubleConditionallyFloat):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::sqrtFloat):
(JSC::MacroAssemblerX86Common::loadFloat):
(JSC::MacroAssemblerX86Common::storeFloat):
(JSC::MacroAssemblerX86Common::convertDoubleToFloat):
(JSC::MacroAssemblerX86Common::convertFloatToDouble):
(JSC::MacroAssemblerX86Common::addFloat):
(JSC::MacroAssemblerX86Common::divFloat):
(JSC::MacroAssemblerX86Common::subFloat):
(JSC::MacroAssemblerX86Common::mulFloat):
(JSC::MacroAssemblerX86Common::branchDouble):
(JSC::MacroAssemblerX86Common::branchFloat):
(JSC::MacroAssemblerX86Common::moveConditionallyDouble):
(JSC::MacroAssemblerX86Common::moveConditionallyFloat):
(JSC::MacroAssemblerX86Common::jumpAfterFloatingPointCompare):
(JSC::MacroAssemblerX86Common::moveConditionallyAfterFloatingPointCompare):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::addss_rr):
(JSC::X86Assembler::addss_mr):
(JSC::X86Assembler::cvtsd2ss_mr):
(JSC::X86Assembler::cvtss2sd_mr):
(JSC::X86Assembler::movss_rm):
(JSC::X86Assembler::movss_mr):
(JSC::X86Assembler::mulss_rr):
(JSC::X86Assembler::mulss_mr):
(JSC::X86Assembler::subss_rr):
(JSC::X86Assembler::subss_mr):
(JSC::X86Assembler::ucomiss_rr):
(JSC::X86Assembler::ucomiss_mr):
(JSC::X86Assembler::divss_rr):
(JSC::X86Assembler::divss_mr):
(JSC::X86Assembler::sqrtss_rr):
(JSC::X86Assembler::sqrtss_mr):

  • b3/B3Const32Value.cpp:

(JSC::B3::Const32Value::bitwiseCastConstant):

  • b3/B3Const32Value.h:
  • b3/B3ConstDoubleValue.cpp:

(JSC::B3::ConstDoubleValue::doubleToFloatConstant):
(JSC::B3::ConstDoubleValue::sqrtConstant):

  • b3/B3ConstDoubleValue.h:
  • b3/B3ConstFloatValue.cpp: Added.

(JSC::B3::ConstFloatValue::~ConstFloatValue):
(JSC::B3::ConstFloatValue::negConstant):
(JSC::B3::ConstFloatValue::addConstant):
(JSC::B3::ConstFloatValue::subConstant):
(JSC::B3::ConstFloatValue::mulConstant):
(JSC::B3::ConstFloatValue::bitwiseCastConstant):
(JSC::B3::ConstFloatValue::floatToDoubleConstant):
(JSC::B3::ConstFloatValue::sqrtConstant):
(JSC::B3::ConstFloatValue::divConstant):
(JSC::B3::ConstFloatValue::equalConstant):
(JSC::B3::ConstFloatValue::notEqualConstant):
(JSC::B3::ConstFloatValue::lessThanConstant):
(JSC::B3::ConstFloatValue::greaterThanConstant):
(JSC::B3::ConstFloatValue::lessEqualConstant):
(JSC::B3::ConstFloatValue::greaterEqualConstant):
(JSC::B3::ConstFloatValue::dumpMeta):

  • b3/B3ConstFloatValue.h: Copied from Source/JavaScriptCore/b3/B3ConstDoubleValue.h.
  • b3/B3Generate.cpp:

(JSC::B3::generateToAir):

  • b3/B3LowerToAir.cpp:

(JSC::B3::Air::LowerToAir::tryOpcodeForType):
(JSC::B3::Air::LowerToAir::opcodeForType):
(JSC::B3::Air::LowerToAir::appendUnOp):
(JSC::B3::Air::LowerToAir::appendBinOp):
(JSC::B3::Air::LowerToAir::appendShift):
(JSC::B3::Air::LowerToAir::tryAppendStoreUnOp):
(JSC::B3::Air::LowerToAir::tryAppendStoreBinOp):
(JSC::B3::Air::LowerToAir::moveForType):
(JSC::B3::Air::LowerToAir::relaxedMoveForType):
(JSC::B3::Air::LowerToAir::createGenericCompare):
(JSC::B3::Air::LowerToAir::createBranch):
(JSC::B3::Air::LowerToAir::createCompare):
(JSC::B3::Air::LowerToAir::createSelect):
(JSC::B3::Air::LowerToAir::lower):

  • b3/B3MemoryValue.cpp:

(JSC::B3::MemoryValue::accessByteSize): Deleted.

  • b3/B3MemoryValue.h:
  • b3/B3MoveConstants.cpp:
  • b3/B3Opcode.cpp:

(WTF::printInternal):

  • b3/B3Opcode.h:
  • b3/B3Procedure.cpp:

(JSC::B3::Procedure::addIntConstant):

  • b3/B3ReduceDoubleToFloat.cpp: Added.

(JSC::B3::reduceDoubleToFloat):

  • b3/B3ReduceDoubleToFloat.h: Copied from Source/JavaScriptCore/b3/B3Type.cpp.
  • b3/B3ReduceStrength.cpp:
  • b3/B3Type.cpp:

(WTF::printInternal):

  • b3/B3Type.h:

(JSC::B3::isFloat):
(JSC::B3::sizeofType):

  • b3/B3Validate.cpp:
  • b3/B3Value.cpp:

(JSC::B3::Value::doubleToFloatConstant):
(JSC::B3::Value::floatToDoubleConstant):
(JSC::B3::Value::sqrtConstant):
(JSC::B3::Value::asTriState):
(JSC::B3::Value::effects):
(JSC::B3::Value::key):
(JSC::B3::Value::checkOpcode):
(JSC::B3::Value::typeFor):

  • b3/B3Value.h:
  • b3/B3ValueInlines.h:

(JSC::B3::Value::isConstant):
(JSC::B3::Value::hasFloat):
(JSC::B3::Value::asFloat):
(JSC::B3::Value::hasNumber):
(JSC::B3::Value::isNegativeZero):
(JSC::B3::Value::representableAs):
(JSC::B3::Value::asNumber):

  • b3/B3ValueKey.cpp:

(JSC::B3::ValueKey::materialize):

  • b3/B3ValueKey.h:

(JSC::B3::ValueKey::ValueKey):
(JSC::B3::ValueKey::floatValue):

  • b3/air/AirArg.h:

(JSC::B3::Air::Arg::typeForB3Type):
(JSC::B3::Air::Arg::widthForB3Type):

  • b3/air/AirFixPartialRegisterStalls.cpp:
  • b3/air/AirOpcode.opcodes:
  • b3/testb3.cpp:

(JSC::B3::testAddArgFloat):
(JSC::B3::testAddArgsFloat):
(JSC::B3::testAddArgImmFloat):
(JSC::B3::testAddImmArgFloat):
(JSC::B3::testAddImmsFloat):
(JSC::B3::testAddArgFloatWithUselessDoubleConversion):
(JSC::B3::testAddArgsFloatWithUselessDoubleConversion):
(JSC::B3::testAddArgsFloatWithEffectfulDoubleConversion):
(JSC::B3::testMulArgFloat):
(JSC::B3::testMulArgsFloat):
(JSC::B3::testMulArgImmFloat):
(JSC::B3::testMulImmArgFloat):
(JSC::B3::testMulImmsFloat):
(JSC::B3::testMulArgFloatWithUselessDoubleConversion):
(JSC::B3::testMulArgsFloatWithUselessDoubleConversion):
(JSC::B3::testMulArgsFloatWithEffectfulDoubleConversion):
(JSC::B3::testDivArgFloat):
(JSC::B3::testDivArgsFloat):
(JSC::B3::testDivArgImmFloat):
(JSC::B3::testDivImmArgFloat):
(JSC::B3::testDivImmsFloat):
(JSC::B3::testDivArgFloatWithUselessDoubleConversion):
(JSC::B3::testDivArgsFloatWithUselessDoubleConversion):
(JSC::B3::testDivArgsFloatWithEffectfulDoubleConversion):
(JSC::B3::testSubArgFloat):
(JSC::B3::testSubArgsFloat):
(JSC::B3::testSubArgImmFloat):
(JSC::B3::testSubImmArgFloat):
(JSC::B3::testSubImmsFloat):
(JSC::B3::testSubArgFloatWithUselessDoubleConversion):
(JSC::B3::testSubArgsFloatWithUselessDoubleConversion):
(JSC::B3::testSubArgsFloatWithEffectfulDoubleConversion):
(JSC::B3::testClzMem32):
(JSC::B3::testSqrtArg):
(JSC::B3::testSqrtImm):
(JSC::B3::testSqrtMem):
(JSC::B3::testSqrtArgWithUselessDoubleConversion):
(JSC::B3::testSqrtArgWithEffectfulDoubleConversion):
(JSC::B3::testDoubleArgToInt64BitwiseCast):
(JSC::B3::testDoubleImmToInt64BitwiseCast):
(JSC::B3::testTwoBitwiseCastOnDouble):
(JSC::B3::testBitwiseCastOnDoubleInMemory):
(JSC::B3::testInt64BArgToDoubleBitwiseCast):
(JSC::B3::testInt64BImmToDoubleBitwiseCast):
(JSC::B3::testTwoBitwiseCastOnInt64):
(JSC::B3::testBitwiseCastOnInt64InMemory):
(JSC::B3::testFloatImmToInt32BitwiseCast):
(JSC::B3::testBitwiseCastOnFloatInMemory):
(JSC::B3::testInt32BArgToFloatBitwiseCast):
(JSC::B3::testInt32BImmToFloatBitwiseCast):
(JSC::B3::testTwoBitwiseCastOnInt32):
(JSC::B3::testBitwiseCastOnInt32InMemory):
(JSC::B3::testConvertDoubleToFloatArg):
(JSC::B3::testConvertDoubleToFloatImm):
(JSC::B3::testConvertDoubleToFloatMem):
(JSC::B3::testConvertFloatToDoubleArg):
(JSC::B3::testConvertFloatToDoubleImm):
(JSC::B3::testConvertFloatToDoubleMem):
(JSC::B3::testConvertDoubleToFloatToDoubleToFloat):
(JSC::B3::testLoadFloatConvertDoubleConvertFloatStoreFloat):
(JSC::B3::testFroundArg):
(JSC::B3::testFroundMem):
(JSC::B3::testStore32):
(JSC::B3::modelLoad):
(JSC::B3::float>):
(JSC::B3::double>):
(JSC::B3::testLoad):
(JSC::B3::testStoreFloat):
(JSC::B3::testReturnFloat):
(JSC::B3::simpleFunctionFloat):
(JSC::B3::testCallSimpleFloat):
(JSC::B3::functionWithHellaFloatArguments):
(JSC::B3::testCallFunctionWithHellaFloatArguments):
(JSC::B3::testSelectCompareFloat):
(JSC::B3::testSelectCompareFloatToDouble):
(JSC::B3::testSelectDoubleCompareFloat):
(JSC::B3::testSelectFloatCompareFloat):
(JSC::B3::populateWithInterestingValues):
(JSC::B3::floatingPointOperands):
(JSC::B3::int64Operands):
(JSC::B3::run):
(JSC::B3::testStore): Deleted.
(JSC::B3::posInfinity): Deleted.
(JSC::B3::negInfinity): Deleted.
(JSC::B3::doubleOperands): Deleted.

  • ftl/FTLB3Output.cpp:

(JSC::FTL::Output::loadFloatToDouble):

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::fround):

  • ftl/FTLCommonValues.cpp:

(JSC::FTL::CommonValues::CommonValues):

  • ftl/FTLCommonValues.h:
6:46 PM Changeset in webkit [193682] by fpizlo@apple.com
  • 21 edits
    2 adds in trunk/Source

FTL B3 should be able to flag the tag constants as being super important so that B3 can hoist them and Air can force them into registers
https://bugs.webkit.org/show_bug.cgi?id=151955

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Taught B3 about the concept of "fast constants". A client of B3 can now tell B3 which
constants are super important. B3 will not spill the constant in that case and will ensure
that the constant is materialized only once: statically once, and dynamically once per
procedure execution. The hoistFastConstants() algorithm in B3MoveConstants.cpp achieves this
by first picking the lowest common dominator of all uses of each fast constant, and then
picking the materialization point by finding the lowest dominator of that dominator that is
tied for lowest block frequency. In practice, the second step ensures that this is the lowest
point in the program that is not in a loop (i.e. executes no more than once dynamically per
procedure invocation).

Taught Air about the concept of "fast tmps". B3 tells Air that a tmp is fast if it is used to
hold the materialization of a fast constant. IRC will use the lowest possible spill score for
fast tmps. In practice, this ensures that fast constants are never spilled.

Added a small snippet of code to FTL::LowerDFGToLLVM that makes both of the tag constants
into fast constants.

My hope is that this very brute-force heuristic is good enough that we don't have to think
about constants for a while. Based on my experience with how LLVM's constant hoisting works
out, the heuristic in this patch is going to be tough to beat. LLVM's constant hoisting does
good things when it hoists the tags, and usually causes nothing but problems when it hoists
anything else. This is because there is no way a low-level compiler to really understand how
a constant materialization impacts some operation's contribution to the overall execution
time of a procedure. But, in the FTL we know that constant materializations for type checks
are a bummer because we are super comfortable placing type checks on the hottest of paths. So
those are the last paths where extra instructions should be added by the compiler. On the
other hand, all other large constant uses are on relatively cold paths, or paths that are
already expensive for other reasons. For example, global variable accesses have to
materialize a pointer to the global. But that's not really a big deal, since a load from a
global involves first the load itself and then type checks on the result - so probably the
constant materialization is just not interesting. A store to a global often involves a store
barrier, so the constant materialization is really not interesting. This patch codifies this
heuristic in a pact between Air, B3, and the FTL: FTL demands that B3 pin the two tags in
registers, and B3 relays the demand to Air.

(JSC::B3::CFG::CFG):
(JSC::B3::CFG::root):
(JSC::B3::CFG::newMap):
(JSC::B3::CFG::successors):
(JSC::B3::CFG::predecessors):
(JSC::B3::CFG::index):
(JSC::B3::CFG::node):
(JSC::B3::CFG::numNodes):
(JSC::B3::CFG::dump):

  • b3/B3Dominators.h: Added.

(JSC::B3::Dominators::Dominators):

  • b3/B3IndexMap.h:

(JSC::B3::IndexMap::resize):
(JSC::B3::IndexMap::size):
(JSC::B3::IndexMap::operator[]):

  • b3/B3LowerMacros.cpp:
  • b3/B3LowerToAir.cpp:

(JSC::B3::Air::LowerToAir::tmp):

  • b3/B3MoveConstants.cpp:
  • b3/B3Opcode.h:

(JSC::B3::constPtrOpcode):
(JSC::B3::isConstant):

  • b3/B3Procedure.cpp:

(JSC::B3::Procedure::Procedure):
(JSC::B3::Procedure::resetReachability):
(JSC::B3::Procedure::invalidateCFG):
(JSC::B3::Procedure::dump):
(JSC::B3::Procedure::deleteValue):
(JSC::B3::Procedure::dominators):
(JSC::B3::Procedure::addFastConstant):
(JSC::B3::Procedure::isFastConstant):
(JSC::B3::Procedure::addDataSection):

  • b3/B3Procedure.h:

(JSC::B3::Procedure::size):
(JSC::B3::Procedure::cfg):
(JSC::B3::Procedure::setLastPhaseName):

  • b3/B3ReduceStrength.cpp:
  • b3/B3ValueInlines.h:

(JSC::B3::Value::isConstant):
(JSC::B3::Value::isInteger):

  • b3/B3ValueKey.h:

(JSC::B3::ValueKey::canMaterialize):
(JSC::B3::ValueKey::isConstant):

  • b3/air/AirCode.cpp:

(JSC::B3::Air::Code::findNextBlock):
(JSC::B3::Air::Code::addFastTmp):

  • b3/air/AirCode.h:

(JSC::B3::Air::Code::specials):
(JSC::B3::Air::Code::isFastTmp):
(JSC::B3::Air::Code::setLastPhaseName):

  • b3/air/AirIteratedRegisterCoalescing.cpp:
  • dfg/DFGDominators.h:
  • dfg/DFGSSACalculator.cpp:
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::lower):

Source/WTF:

Remove some remaining DFG-specific snippets from Dominators. This used to be a non-template
DFG class, and some time ago I hoisted it into WTF and made it generic. But since the only
user of the class was the DFG, this class still had a handful of DFG-specific snippets that
didn't compile when I started using it from B3.

Also renamed immediateDominatorOf() to idom(). This is the sort of abbreviation that we
wouldn't ordinarily want to have in WebKit. But WebKit does allow for abbreviations that are
"more canonical". The term "idom" is definitely more canonical than "immediateDominatorOf".

  • wtf/Dominators.h:

(WTF::Dominators::dominates):
(WTF::Dominators::idom):
(WTF::Dominators::forAllStrictDominatorsOf):
(WTF::Dominators::NaiveDominators::dominates):
(WTF::Dominators::NaiveDominators::dump):
(WTF::Dominators::ValidationContext::handleErrors):

6:38 PM Changeset in webkit [193681] by matthew_hanson@apple.com
  • 27 edits
    3 adds in branches/safari-601-branch

Merge r192992. rdar://problem/23769780

6:38 PM Changeset in webkit [193680] by matthew_hanson@apple.com
  • 10 edits
    2 adds in branches/safari-601-branch

Merge r192732. rdar://problem/23769794

6:14 PM Changeset in webkit [193679] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

[INTL] Implement String.prototype.toLocaleUpperCase in ECMA-402
https://bugs.webkit.org/show_bug.cgi?id=147609

Patch by Andy VanWagoner <thetalecrafter@gmail.com> on 2015-12-07
Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

Refactor most of toLocaleLowerCase to static function used by both
toLocaleUpperCase and toLocaleLowerCase.
Add toLocaleUpperCase using icu u_strToUpper.

  • runtime/StringPrototype.cpp:

(JSC::StringPrototype::finishCreation):
(JSC::toLocaleCase):
(JSC::stringProtoFuncToLocaleLowerCase):
(JSC::stringProtoFuncToLocaleUpperCase):

LayoutTests:

  • js/script-tests/string-toLocaleUpperCase.js: Added.
  • js/string-toLocaleUpperCase-expected.txt: Added.
  • js/string-toLocaleUpperCase.html: Added.
5:53 PM Changeset in webkit [193678] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Follow-up merge of r191014. rdar://problem/23769801

5:42 PM Changeset in webkit [193677] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Implemented a workaround for sharp SVG WebKit logo.
https://bugs.webkit.org/show_bug.cgi?id=151971

Reviewed by Timothy Hatcher.

  • wp-content/themes/webkit/images/webkit.svg:
5:11 PM Changeset in webkit [193676] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Build fix after r193675.

  • WebView/WebViewData.h:
4:59 PM Changeset in webkit [193675] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Build fix after r193661.

Reviewed by Beth Dakin.

  • WebView/WebViewData.h:
4:31 PM Changeset in webkit [193674] by msaboff@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

CRASH: CodeBlock::setOptimizationThresholdBasedOnCompilationResult + 567
https://bugs.webkit.org/show_bug.cgi?id=151892

Reviewed by Geoffrey Garen.

Reverted the change made in change set r193491.

The updated change is to finish all concurrent compilations and install the resulting
code blocks before we make any state changes due to debugger activity. After all code
blocks have been installed, we make the debugger state changes, including jettisoning
all optimized code blocks.

This means that we will discard the optimized code blocks we just installed,
but we won't do that while on the install code block path.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::setOptimizationThresholdBasedOnCompilationResult): Reverted r193491.

  • debugger/Debugger.cpp:

(JSC::Debugger::setSteppingMode):
(JSC::Debugger::registerCodeBlock):
(JSC::Debugger::toggleBreakpoint):
(JSC::Debugger::clearBreakpoints):
(JSC::Debugger::clearDebuggerRequests):
Call Heap::completeAllDFGPlans() before updating code blocks for debugging changes.

  • heap/Heap.h: Made completeAllDFGPlans() public.
4:23 PM Changeset in webkit [193673] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebKit/mac

Merge r191261. rdar://problem/23769808

4:23 PM Changeset in webkit [193672] by matthew_hanson@apple.com
  • 10 edits in branches/safari-601-branch/Source

Merge r191260. rdar://problem/23769808

4:23 PM Changeset in webkit [193671] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch

Merge r191251. rdar://problem/23769811

4:23 PM Changeset in webkit [193670] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch

Merge r190876. rdar://problem/23769786

4:23 PM Changeset in webkit [193669] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r192367. rdar://problem/23769775

4:23 PM Changeset in webkit [193668] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/LayoutTests

Merge r191986. rdar://problem/23769775

4:23 PM Changeset in webkit [193667] by matthew_hanson@apple.com
  • 21 edits in branches/safari-601-branch

Merge r191968. rdar://problem/23769775

4:23 PM Changeset in webkit [193666] by matthew_hanson@apple.com
  • 14 edits in branches/safari-601-branch

Merge r191331. rdar://problem/23769766

4:23 PM Changeset in webkit [193665] by matthew_hanson@apple.com
  • 26 edits
    1 delete in branches/safari-601-branch/Source

Merge r191014. rdar://problem/23769801

4:22 PM Changeset in webkit [193664] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

Unreviewed, rolling out r193655.
https://bugs.webkit.org/show_bug.cgi?id=151970

This change broke existing LayoutTests on mac-wk2 (Requested
by ryanhaddad on #webkit).

Reverted changeset:

"UIProcess should determine AppNap state for WebPage"
https://bugs.webkit.org/show_bug.cgi?id=151964
http://trac.webkit.org/changeset/193655

4:08 PM Changeset in webkit [193663] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

[Mac] Remove Mavericks-specific TestExpectations lines
https://bugs.webkit.org/show_bug.cgi?id=151913

Reviewed by Alexey Proskuryakov.

Mavericks is no longer a supported OS.

  • platform/mac/TestExpectations:
4:02 PM Changeset in webkit [193662] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

FTL lowering should tell B3 the right block frequencies
https://bugs.webkit.org/show_bug.cgi?id=151531

Reviewed by Geoffrey Garen.

This glues together the DFG's view of basic block execution counts and B3's block frequencies.
This further improves our performance on imaging-gaussian-blur. It appears to improve the steady
state throughput by almost 4%.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::setFrequency):
(JSC::FTL::Output::newBlock):
(JSC::FTL::Output::insertNewBlocksBefore):
(JSC::FTL::Output::callWithoutSideEffects):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::lower):
(JSC::FTL::DFG::LowerDFGToLLVM::compileBlock):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::setFrequency):
(JSC::FTL::Output::insertNewBlocksBefore):

3:47 PM Changeset in webkit [193661] by Beth Dakin
  • 5 edits in trunk/Source/WebKit/mac

Add support for WebViewAdditions
https://bugs.webkit.org/show_bug.cgi?id=151967

Reviewed by Sam Weinig.

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::respondToChangedSelection):

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView updateWebViewAdditions]):

  • WebView/WebViewData.h:
  • WebView/WebViewInternal.h:
3:43 PM Changeset in webkit [193660] by beidson@apple.com
  • 2 edits
    6 deletes in trunk/LayoutTests

Modern IDB: Miscellaneous test cleanup.
https://bugs.webkit.org/show_bug.cgi?id=151968

Reviewed by Sam Weinig.

  • Reorganize TestExpectations a bit.
  • Remove two tests that primarily test features that have been removed from the spec.
  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/cursor-continueprimarykey-expected.txt: Removed.
  • storage/indexeddb/cursor-continueprimarykey.html: Removed.
  • storage/indexeddb/factory-basics-expected.txt: Removed.
  • storage/indexeddb/factory-basics.html: Removed.
  • storage/indexeddb/resources/cursor-continueprimarykey.js: Removed.
  • storage/indexeddb/resources/factory-basics.js: Removed.
3:15 PM Changeset in webkit [193659] by sbarati@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Update JSC feature list for rest parameters and generators
https://bugs.webkit.org/show_bug.cgi?id=151740

Reviewed by Joseph Pecoraro.

  • features.json:
3:12 PM Changeset in webkit [193658] by beidson@apple.com
  • 4 edits in trunk

Modern IDB: storage/indexeddb/factory-deletedatabase.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151966
Source/WebCore:

Reviewed by Sam Weinig.

No new tests (At least one failing test now passes).

  • Modules/indexeddb/client/IDBOpenDBRequestImpl.cpp:

(WebCore::IDBClient::IDBOpenDBRequest::onDeleteDatabaseSuccess): The spec says that the result of

deleteDatabase should be undefined. Without explicitly making it undefined, it's incorrectly null.

LayoutTests:

Reviewed by Sam Weinig.

  • platform/mac-wk1/TestExpectations:
3:07 PM Changeset in webkit [193657] by beidson@apple.com
  • 7 edits in trunk

Modern IDB: storage/indexeddb/cursor-continue-validity.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151961

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (At least one failing test now passes).

When an index cursor's iterator was invalidated, there were some cases where it did
not correctly find the next iterator to pick up where it left off.

  • Modules/indexeddb/client/IDBCursorImpl.cpp:

(WebCore::IDBClient::IDBCursor::update):
(WebCore::IDBClient::IDBCursor::deleteFunction):

  • Modules/indexeddb/server/IndexValueStore.cpp:

(WebCore::IDBServer::IndexValueStore::find):
(WebCore::IDBServer::IndexValueStore::loggingString):

  • Modules/indexeddb/server/IndexValueStore.h:

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/cursor-finished-expected.txt:
3:01 PM Changeset in webkit [193656] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Refactor TextPainter::paintText() into sub methods.
https://bugs.webkit.org/show_bug.cgi?id=151962

Reviewed by Myles C. Maxfield.

No change in functionality.

  • rendering/TextPainter.cpp:

(WebCore::TextPainter::paintTextWithEmphasisIfNeeded):
(WebCore::TextPainter::paintTextWithStyle):
(WebCore::TextPainter::paintText):

  • rendering/TextPainter.h:
2:52 PM Changeset in webkit [193655] by barraclough@apple.com
  • 7 edits in trunk/Source/WebKit2

UIProcess should determine AppNap state for WebPage
https://bugs.webkit.org/show_bug.cgi?id=151964

Reviewed by Anders Carlson.

Step 1 in unifying this with the iOS process suppression mechanism is to move the decision out of the WebContent process.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::dispatchViewStateChange):
(WebKit::WebPageProxy::setPageActivityState):
(WebKit::WebPageProxy::updateActivityToken):
(WebKit::WebPageProxy::preferencesDidChange):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::isInWindow):
(WebKit::WebPageProxy::didUpdateViewState):

  • UIProcess/WebPageProxy.messages.in:
    • WebPage now propagates PageActivityState to the WebPageProxy, for use determining the supression state of the WebProcess.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::m_shouldDispatchFakeMouseMoveEvents):
(WebKit::WebPage::setPageActivityState):
(WebKit::WebPage::setUserActivityStarted):
(WebKit::WebPage::setViewState):
(WebKit::WebPage::updatePreferences):
(WebKit::WebPage::updateUserActivity): Deleted.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
    • WebPage no longer determines when to update it's own UserActivity - instead, let the UI process do so. As such, no longer need to track whether process supression is enabled. Instead, add message to
2:44 PM Changeset in webkit [193654] by Chris Dumez
  • 3 edits in trunk/Source/WebKit2

[WK2] Regression(r187691): If a page is showing an auth pane in one tab, any new tabs with same page hang until credentials are entered in first tab
https://bugs.webkit.org/show_bug.cgi?id=151960
<rdar://problem/23618112>

Reviewed by Alex Christensen.

After r187691, if a page is showing an auth pane in one tab, any new
tabs with same page hang until credentials are entered in first tab.
This is because we coalescing all authentication challenges from the
same domain, no matter what tab they are for. This can be confusing
so we now only coalesce authentication challenges within each tab,
by leveraging the pageID (in addition to the domain).

  • Shared/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::shouldCoalesceChallenge):
(WebKit::AuthenticationManager::coalesceChallengesMatching):
(WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):

  • Shared/Authentication/AuthenticationManager.h:
2:32 PM Changeset in webkit [193653] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG ASSERTION FAILED: m_plan.weakReferences.contains(structure).
https://bugs.webkit.org/show_bug.cgi?id=151952

Reviewed by Mark Lam.

Fix a bug revealed by the new ftl-has-a-bad-time.js test. It turns out that our handling of
structures reachable from the compiler wasn't accounting for having a bad time.

  • dfg/DFGStructureRegistrationPhase.cpp:

(JSC::DFG::StructureRegistrationPhase::run):

2:27 PM Changeset in webkit [193652] by ddkilzer@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r193635. rdar://problem/23581586

2:23 PM Changeset in webkit [193651] by yoon@igalia.com
  • 2 edits in trunk/Source/WebCore

[GTK] Clean up virtual functions in MediaPlayerPrivateGStreamerBase
https://bugs.webkit.org/show_bug.cgi?id=151940

Reviewed by Carlos Garcia Campos.

  • Using 'override' when appropriate
  • Explicitly marking methods as virtual when they are inherently virtual
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
2:14 PM Changeset in webkit [193650] by jonlee@apple.com
  • 6 edits in trunk/PerformanceTests

Update options for benchmark
https://bugs.webkit.org/show_bug.cgi?id=151956

Reviewed by Simon Fraser.

Move "Fix test complexity" and "Adaptive" checkboxes into a radio group.

Move "Show running results" into a radio group, and add options to remove the HUD.

  • Animometer/runner/animometer.html: Get rid of the preamble. Wrap the options

in a form for easier referencing in JS.

  • Animometer/runner/resources/animometer.css: Show the surrounding border if the

body's display-minimal class name is set.

  • Animometer/runner/resources/animometer.js:

Update the way optionsManager gets and sets default values. Include support for
radio groups.
(window.optionsManager.valueForOption):
(window.optionsManager.updateUIFromLocalStorage):
(window.optionsManager.updateLocalStorageFromUI):

(window.benchmarkRunnerClient.willStartFirstIteration):
(window.sectionsManager.setupRunningSectionStyle):
(window.suitesManager._treeElement): Fly-by whitespace fix.
(window.suitesManager._suitesElements): Ditto.
(window.suitesManager.updateEditsElementsState): Update options check.
(window.suitesManager.updateDisplay): Add a new update function for the HUD.
Attach a class to the body depending on the user's choice.
(window.benchmarkController.initialize): Add an event listener when the form
radio buttons update.
(window.benchmarkController.onFormChanged):
(window.optionsManager._optionsElements): Deleted.
(window.optionsManager._adaptiveTestElement): Deleted.
(window.benchmarkController.onChangeAdaptiveTestCheckbox): Deleted.

  • Animometer/tests/resources/main.js:

(Benchmark.prototype.update): Update options checks.

  • Animometer/tests/resources/stage.js: Update option check.

(StageBenchmark.prototype.showResults):

2:10 PM WebKitGTK/2.10.x edited by berto@igalia.com
(diff)
2:03 PM Changeset in webkit [193649] by sbarati@apple.com
  • 23 edits in trunk/Source

Add op_watchdog opcode that is generated when VM has a watchdog
https://bugs.webkit.org/show_bug.cgi?id=151954

Reviewed by Mark Lam.

Source/JavaScriptCore:

This patch also makes watchdog a private member
of VM and adds a getter function.

  • API/JSContextRef.cpp:

(JSContextGroupClearExecutionTimeLimit):

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitLoopHint):
(JSC::BytecodeGenerator::emitWatchdog):
(JSC::BytecodeGenerator::retrieveLastBinaryOp):

  • bytecompiler/BytecodeGenerator.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileCheckWatchdogTimer):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_loop_hint):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::emit_op_watchdog):
(JSC::JIT::emitSlow_op_watchdog):
(JSC::JIT::emit_op_new_regexp):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • runtime/VM.cpp:

(JSC::VM::ensureWatchdog):

  • runtime/VM.h:

(JSC::VM::watchdog):

  • runtime/VMEntryScope.cpp:

(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::~VMEntryScope):

  • runtime/VMInlines.h:

(JSC::VM::shouldTriggerTermination):

Source/WebCore:

No new tests because JSC already has tests for this.

  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::scheduleExecutionTermination):
(WebCore::WorkerScriptController::isTerminatingExecution):

1:35 PM Changeset in webkit [193648] by berto@igalia.com
  • 3 edits in trunk/Source/JavaScriptCore

Crashes on PPC64 due to mprotect() on address not aligned to the page size
https://bugs.webkit.org/show_bug.cgi?id=130237

Reviewed by Mark Lam.

Make sure that commitSize is at least as big as the page size.

  • interpreter/JSStack.cpp:

(JSC::commitSize):
(JSC::JSStack::JSStack):
(JSC::JSStack::growSlowCase):

  • interpreter/JSStack.h:
1:09 PM Changeset in webkit [193647] by achristensen@apple.com
  • 2 edits in trunk

Fix internal Windows build
https://bugs.webkit.org/show_bug.cgi?id=151950

Reviewed by Brent Fulgham.

  • Source/cmake/tools/scripts/auto-version.pl:
12:57 PM Changeset in webkit [193646] by BJ Burg
  • 6 edits
    1 move
    1 add
    1 delete in trunk/Source

Web Inspector: Uncaught Exception page should have better styles and handle more error cases
https://bugs.webkit.org/show_bug.cgi?id=151923

Reviewed by Timothy Hatcher.

Source/WebCore:

Add a check for InspectorFrontendAPI before calling it. This can fail
easily if an uncaught exception stalls initial loading, or whenever
the Inspector frontend is reloaded.

  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::evaluateOnLoad):

Source/WebInspectorUI:

Restructure the Uncaught Exception reporting page to act more like
a modal sheet. Distinguish between uncaught exceptions before and
after the frontend is initially loaded. If the frontend is loaded,
add a clickable link that dismisses the sheet and ignores the error.
If the inspector finished loading, then only show at most one
exception at a time, since subsequent interactions can cause spurious
errors when the sheet is active.

Split existing code into multiple functions so it's easier to follow.
Add miscellaneous guards against internal corruption and weird cases.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded): Store the flag on the global object
in case WebInspector becomes shadowed or otherwise unusable.

  • UserInterface/Debug/UncaughtExceptionReporter.css: Renamed from Source/WebInspectorUI/UserInterface/Debug/CatchEarlyErrors.css.

(div.sheet-container):
(div.uncaught-exception-sheet):
(div.uncaught-exception-sheet a):
(div.uncaught-exception-sheet a:active):
(div.uncaught-exception-sheet h2):
(div.uncaught-exception-sheet h1 > img):
(div.uncaught-exception-sheet h2 > img):
(div.uncaught-exception-sheet dl):
(div.uncaught-exception-sheet dt):
(div.uncaught-exception-sheet dd):
(div.uncaught-exception-sheet ul):
(div.uncaught-exception-sheet li):

  • UserInterface/Debug/UncaughtExceptionReporter.js: Renamed from CatchEarlyErrors.js.

(stopEventPropagation): Allow clicking whitelisted links on the sheet.
(blockEventHandlers):
(unblockEventHandlers):
(handleUncaughtException):
(dismissErrorSheet):
(createErrorSheet.insertWordBreakCharacters):
(createErrorSheet):
(handleLinkClick):

  • UserInterface/Main.html:
  • UserInterface/Protocol/MessageDispatcher.js:

(WebInspector.dispatchMessageFromBackend): Don't try to dispatch
messages from the backend when showing the error sheet. They will
probably fail, so suspend dispatching until the sheet is dismissed.

12:37 PM Changeset in webkit [193645] by Beth Dakin
  • 10 edits
    1 add in trunk/Source

Hook up request and show for typing candidates in WK1
https://bugs.webkit.org/show_bug.cgi?id=151831
-and corresponding-
<rdar://problem/23751214>

Reviewed by Enrica Casucci.

Source/WebCore:

New SPI that is needed.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/spi/mac/NSSpellCheckerSPI.h: Added.

Request candidates for editable content whenever selection changes.

  • editing/Editor.cpp:

(WebCore::Editor::respondToChangedSelection):

Implement requestCandidatesForSelection on the EditorClient.

  • loader/EmptyClients.h:
  • page/EditorClient.h:

(WebCore::EditorClient::requestCandidatesForSelection):

Source/WebKit/mac:

Add member variables to WebEditorClient. One is a WeakPtrFactory for the
asynchronous handlers, and the other caches the VisibleSelection at the time
candidates were requested so that we can make sure the candidates are still
valid once we receive them.

  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::WebEditorClient):

Call [NSSpellChecker requestCandidatesForSelectedRange] with the appropriate
parameters.
(WebEditorClient::requestCandidatesForSelection):

Two helpers to compute information that we need for both of the handlers
below.
(candidateRangeForSelection):
(candidateWouldReplaceText):

In this handler, we just need to call [NSSpellChecker showCandidates] with
the appropriate parameters.
(WebEditorClient::handleRequestedCandidates):

Once a candidate is accepted, it should be inserted in the right way.
(WebEditorClient::handleAcceptedCandidate):

Source/WebKit2:

Empty client for now.

  • WebProcess/WebCoreSupport/WebEditorClient.h:
12:35 PM Changeset in webkit [193644] by calvaris@igalia.com
  • 4 edits in trunk/LayoutTests

[Streams API] pipeTo tests are failing
https://bugs.webkit.org/show_bug.cgi?id=151949

Unreviewed.

  • TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations: Moved the flag from Mac and Win to general as GTK+ is failing too.
12:27 PM Changeset in webkit [193643] by beidson@apple.com
  • 13 edits in trunk

Modern IDB: Fix "old versions" when upgrading databases.
https://bugs.webkit.org/show_bug.cgi?id=151948

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (5 failing tests now pass, and updated results for a 6th test).

This includes the old version on the IDBVersionChangeEvent, as well as the version the
IDBDatabase is left with if the version change transaction is aborted.

Primary mechanism of the fix is to include the original IDBDatabaseInfo along with
IDBTransactionInfos that represent version change transactions.

  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::willAbortTransaction):
(WebCore::IDBClient::IDBDatabase::didAbortTransaction):

  • Modules/indexeddb/client/IDBOpenDBRequestImpl.cpp:

(WebCore::IDBClient::IDBOpenDBRequest::onUpgradeNeeded):

  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::IDBTransaction): Deleted.
(WebCore::IDBClient::IDBTransaction::finishAbortOrCommit): Deleted.

  • Modules/indexeddb/client/IDBTransactionImpl.h:

(WebCore::IDBClient::IDBTransaction::info):
(WebCore::IDBClient::IDBTransaction::originalDatabaseInfo):

  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::startVersionChangeTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::commitTransaction):

  • Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:

(WebCore::IDBServer::UniqueIDBDatabaseConnection::createVersionChangeTransaction):

  • Modules/indexeddb/shared/IDBTransactionInfo.cpp:

(WebCore::IDBTransactionInfo::versionChange):
(WebCore::IDBTransactionInfo::IDBTransactionInfo):
(WebCore::IDBTransactionInfo::isolatedCopy):

  • Modules/indexeddb/shared/IDBTransactionInfo.h:

(WebCore::IDBTransactionInfo::originalDatabaseInfo):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/database-basics-expected.txt:
  • storage/indexeddb/modern/deletedatabase-2-expected.txt:
11:48 AM Changeset in webkit [193642] by Jon Davis
  • 4 edits in trunk/Websites/webkit.org

Address UX issues with the Contribute menu.
https://bugs.webkit.org/show_bug.cgi?id=151874

Reviewed by Timothy Hatcher.

  • wp-content/themes/webkit/functions.php:
  • wp-content/themes/webkit/header.php:
  • wp-content/themes/webkit/style.css:

(time, mark, audio, video):
(footer, header, hgroup, menu, nav, section):
(html):
(body):
(ol, ul):
(blockquote, q):
(q:before, q:after):
(table):
(p:empty):
(.admin-bar p > a[name]::before):
(.screen-reader-text):
(.screen-reader-text:focus):
(pre):
(code):
(.feature-header:after):
(.feature.opened .feature-header:after):
(footer nav a:hover):
(header .menu-item-has-children .label-toggle::after):
(header .menu-item):
(.sub-menu-layer):
(.sub-menu-layer .menu-item:first-child):
(.menu > .menu-item > .menu-toggle:checked + .sub-menu):
(@media only screen and (max-width: 920px)):
(header .menu-item > .menu-toggle:checked + a > .label-toggle::after):
(header .menu):
(header .menu-toggle:checked ~ ul):
(header .sub-menu-layer:before):
(header .menu > .menu-item > .menu-toggle:checked ~ .sub-menu):
(footer nav li):
(@media only screen and (max-width: 690px)):
(.feature-filters:after):
(.feature-filters.opened:after):
(#wpadminbar):
(.table-of-contents label:after):
(.menu-toggle:checked ~ .table-of-contents label:after):
(.table-of-contents h6):
(header nav .menu-item-has-children .label-toggle): Deleted.
(header nav .menu-item): Deleted.
(header .menu > .menu-item-has-children:hover > a::before): Deleted.
(.menu > .menu-item > .menu-toggle:checked ~ .sub-menu): Deleted.
(header nav .menu-toggle:checked ~ ul): Deleted.
(header .menu-toggle:checked ~ .sub-menu): Deleted.
(@media only screen and (max-width: 782px)): Deleted.

11:21 AM Changeset in webkit [193641] by calvaris@igalia.com
  • 3 edits in trunk/LayoutTests

Unreviewed.

http://webkit.org/b/147933 and though count queuing strategy and writable stream abort tests are fixed, there
are still issues with pipeTo. For that I created http://webkit.org/b/151949.

  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
11:17 AM Changeset in webkit [193640] by fpizlo@apple.com
  • 28 edits
    2 adds in trunk/Source/JavaScriptCore

FTL B3 should be able to make JS->JS calls
https://bugs.webkit.org/show_bug.cgi?id=151901

Reviewed by Saam Barati.

This adds support for the Call and InvalidationPoint opcodes in DFG IR. This required doing some
clean-up in the OSR exit code. We don't want the B3 FTL to use a bunch of vectors to hold
side-state, so the use of OSRExitDescriptorImpl is not right. It makes sense in the LLVM FTL
because that code needs some way of saving some state from LowerDFGToLLVM to compile(), but
that's not how B3 FTL works. It turns out that for B3 FTL, there isn't anything in
OSRExitDescriptorImpl that the code in LowerDFGToLLVM can't just capture in a lambda.

This also simplifies some stackmap-related APIs, since I got tired of writing boilerplate.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::replaceWithAddressComputation):
(JSC::AbstractMacroAssembler::addLinkTask):

  • b3/B3CheckSpecial.cpp:

(JSC::B3::CheckSpecial::generate):

  • b3/B3Effects.h:
  • b3/B3PatchpointSpecial.cpp:

(JSC::B3::PatchpointSpecial::generate):

  • b3/B3Procedure.cpp:

(JSC::B3::Procedure::addDataSection):
(JSC::B3::Procedure::callArgAreaSize):
(JSC::B3::Procedure::requestCallArgAreaSize):
(JSC::B3::Procedure::frameSize):

  • b3/B3Procedure.h:

(JSC::B3::Procedure::releaseByproducts):
(JSC::B3::Procedure::code):

  • b3/B3StackmapGenerationParams.cpp: Added.

(JSC::B3::StackmapGenerationParams::usedRegisters):
(JSC::B3::StackmapGenerationParams::proc):
(JSC::B3::StackmapGenerationParams::StackmapGenerationParams):

  • b3/B3StackmapGenerationParams.h: Added.

(JSC::B3::StackmapGenerationParams::value):
(JSC::B3::StackmapGenerationParams::reps):
(JSC::B3::StackmapGenerationParams::size):
(JSC::B3::StackmapGenerationParams::at):
(JSC::B3::StackmapGenerationParams::operator[]):
(JSC::B3::StackmapGenerationParams::begin):
(JSC::B3::StackmapGenerationParams::end):
(JSC::B3::StackmapGenerationParams::context):
(JSC::B3::StackmapGenerationParams::addLatePath):

  • b3/B3StackmapValue.h:
  • b3/B3ValueRep.h:

(JSC::B3::ValueRep::doubleValue):
(JSC::B3::ValueRep::withOffset):

  • b3/air/AirGenerationContext.h:
  • b3/testb3.cpp:

(JSC::B3::testSimplePatchpoint):
(JSC::B3::testSimplePatchpointWithoutOuputClobbersGPArgs):
(JSC::B3::testSimplePatchpointWithOuputClobbersGPArgs):
(JSC::B3::testSimplePatchpointWithoutOuputClobbersFPArgs):
(JSC::B3::testSimplePatchpointWithOuputClobbersFPArgs):
(JSC::B3::testPatchpointWithEarlyClobber):
(JSC::B3::testPatchpointCallArg):
(JSC::B3::testPatchpointFixedRegister):
(JSC::B3::testPatchpointAny):
(JSC::B3::testPatchpointLotsOfLateAnys):
(JSC::B3::testPatchpointAnyImm):
(JSC::B3::testPatchpointManyImms):
(JSC::B3::testPatchpointWithRegisterResult):
(JSC::B3::testPatchpointWithStackArgumentResult):
(JSC::B3::testPatchpointWithAnyResult):
(JSC::B3::testSimpleCheck):
(JSC::B3::testCheckLessThan):
(JSC::B3::testCheckMegaCombo):
(JSC::B3::testCheckAddImm):
(JSC::B3::testCheckAddImmCommute):
(JSC::B3::testCheckAddImmSomeRegister):
(JSC::B3::testCheckAdd):
(JSC::B3::testCheckAdd64):
(JSC::B3::testCheckSubImm):
(JSC::B3::testCheckSubBadImm):
(JSC::B3::testCheckSub):
(JSC::B3::testCheckSub64):
(JSC::B3::testCheckNeg):
(JSC::B3::testCheckNeg64):
(JSC::B3::testCheckMul):
(JSC::B3::testCheckMulMemory):
(JSC::B3::testCheckMul2):
(JSC::B3::testCheckMul64):
(JSC::B3::genericTestCompare):

  • ftl/FTLExceptionHandlerManager.cpp:
  • ftl/FTLExceptionHandlerManager.h:
  • ftl/FTLJSCall.cpp:
  • ftl/FTLJSCall.h:
  • ftl/FTLJSCallBase.cpp:

(JSC::FTL::JSCallBase::emit):

  • ftl/FTLJSCallBase.h:
  • ftl/FTLJSCallVarargs.cpp:
  • ftl/FTLJSCallVarargs.h:
  • ftl/FTLJSTailCall.cpp:

(JSC::FTL::DFG::getRegisterWithAddend):
(JSC::FTL::JSTailCall::emit):
(JSC::FTL::JSTailCall::JSTailCall): Deleted.

  • ftl/FTLJSTailCall.h:

(JSC::FTL::JSTailCall::stackmapID):
(JSC::FTL::JSTailCall::estimatedSize):
(JSC::FTL::JSTailCall::operator<):
(JSC::FTL::JSTailCall::patchpoint): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::DFG::LowerDFGToLLVM::compileInvalidationPoint):
(JSC::FTL::DFG::LowerDFGToLLVM::lazySlowPath):
(JSC::FTL::DFG::LowerDFGToLLVM::callCheck):
(JSC::FTL::DFG::LowerDFGToLLVM::appendOSRExitArgumentsForPatchpointIfWillCatchException):
(JSC::FTL::DFG::LowerDFGToLLVM::emitBranchToOSRExitIfWillCatchException):
(JSC::FTL::DFG::LowerDFGToLLVM::lowBlock):
(JSC::FTL::DFG::LowerDFGToLLVM::appendOSRExitDescriptor):
(JSC::FTL::DFG::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::DFG::LowerDFGToLLVM::blessSpeculation):
(JSC::FTL::DFG::LowerDFGToLLVM::emitOSRExitCall):
(JSC::FTL::DFG::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::DFG::LowerDFGToLLVM::exitValueForNode):

  • ftl/FTLOSRExit.cpp:

(JSC::FTL::OSRExitDescriptor::OSRExitDescriptor):
(JSC::FTL::OSRExitDescriptor::emitOSRExit):
(JSC::FTL::OSRExitDescriptor::emitOSRExitLater):
(JSC::FTL::OSRExitDescriptor::prepareOSRExitHandle):
(JSC::FTL::OSRExit::OSRExit):
(JSC::FTL::OSRExit::codeLocationForRepatch):
(JSC::FTL::OSRExit::recoverRegistersFromSpillSlot):
(JSC::FTL::OSRExit::willArriveAtExitFromIndirectExceptionCheck):
(JSC::FTL::OSRExit::needsRegisterRecoveryOnGenericUnwindOSRExitPath):

  • ftl/FTLOSRExit.h:

(JSC::FTL::OSRExitDescriptorImpl::OSRExitDescriptorImpl):
(JSC::FTL::OSRExit::considerAddingAsFrequentExitSite):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):
(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLState.h:
10:54 AM Changeset in webkit [193639] by Michael Catanzaro
  • 5 edits in trunk/Tools

'jhbuild build' should fail immediately when building any module fails
https://bugs.webkit.org/show_bug.cgi?id=145697

Reviewed by Carlos Garcia Campos.

  • efl/jhbuildrc: Update jhbuildrc to account for the removal of the use_lib64 option.
  • gtk/jhbuildrc: Update jhbuildrc to account for the removal of the use_lib64 option.

Everything is placed under lib instead of lib64 now.

  • jhbuild/jhbuild-wrapper: Update jhbuild to the latest upstream commit, and pass

--exit-on-error when running 'jhbuild build'.

  • jhbuild/jhbuildrc_common.py:

(init): Don't override PKG_CONFIG_PATH, CMAKE_PREFIX_PATH, or CMAKE_LIBRARY_PATH. Modern
jhbuild should be able to handle these for us without breaking things....

10:49 AM Changeset in webkit [193638] by calvaris@igalia.com
  • 3 edits in trunk/Tools

Add support to import w3c tests from a repository with a different root that the main repo dir
https://bugs.webkit.org/show_bug.cgi?id=151751

Reviewed by Ryosuke Niwa and Youenn Fablet.

We should be able to import tests from repositories that are not pure test repositories and where tests are kept
in a different directory than the repository root.

This patch introduces a new parameter tests_directory that we will use as root directory to search for
tests. All paths will be flattened when copying tests to have a less complicated directory structure. This
requires having the copy_path lists including tuples of origin and destination directories.

  • Scripts/webkitpy/w3c/test_downloader.py:

(TestDownloader._add_test_suite_paths): Adds the paths as a tuple of origin and destination directory.
(TestDownloader.copy_tests): Uses the origin and destination tuple for the paths to copy when copying files.

  • Scripts/webkitpy/w3c/test_importer_unittest.py:

(TestImporterTest.test_tests_directory): Test.

10:35 AM Changeset in webkit [193637] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Update Objective-C code generator to pass a reference to calling object for partial interfaces
https://bugs.webkit.org/show_bug.cgi?id=151739

Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2015-12-07
Reviewed by Darin Adler.

The fix updates the Objective-C code generator to pass a reference to calling object for partial interfaces.
The change from pass by pointer to pass by reference was introduced in r192849.

  • bindings/scripts/CodeGeneratorObjC.pm:

(GenerateImplementation):

  • bindings/scripts/test/ObjC/DOMTestInterface.mm:

(-[DOMTestInterface supplementalStr1]):
(-[DOMTestInterface supplementalStr2]):
(-[DOMTestInterface setSupplementalStr2:]):
(-[DOMTestInterface supplementalStr3]):
(-[DOMTestInterface setSupplementalStr3:]):
(-[DOMTestInterface supplementalNode]):
(-[DOMTestInterface setSupplementalNode:]):
(-[DOMTestInterface builtinAttribute]):
(-[DOMTestInterface setBuiltinAttribute:]):
(-[DOMTestInterface supplementalMethod1]):
(-[DOMTestInterface supplementalMethod2:objArg:]):
(-[DOMTestInterface supplementalMethod3]):
(-[DOMTestInterface supplementalMethod4]):
(-[DOMTestInterface builtinFunction]):

10:30 AM Changeset in webkit [193636] by sbarati@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Rename Watchdog::didFire to Watchdog::shouldTerminate because that's what didFire really meant
https://bugs.webkit.org/show_bug.cgi?id=151944

Reviewed by Mark Lam.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):

  • runtime/VMInlines.h:

(JSC::VM::shouldTriggerTermination):

  • runtime/Watchdog.cpp:

(JSC::Watchdog::terminateSoon):
(JSC::Watchdog::shouldTerminateSlow):
(JSC::Watchdog::didFireSlow): Deleted.

  • runtime/Watchdog.h:

(JSC::Watchdog::shouldTerminate):
(JSC::Watchdog::didFire): Deleted.

10:15 AM Changeset in webkit [193635] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Crash in MemoryCache::pruneDeadResourcesToSize()
https://bugs.webkit.org/show_bug.cgi?id=151833
<rdar://problem/22392235>

Reviewed by David Kilzer.

MemoryCache::pruneDeadResourcesToSize() is iterating over m_allResources
(which is a vector of LRUList). It first destroys decoded data for each
resource in the LRUList. Then, if it does not suffice to reach the
target size, and starts actually removing resources from the cache.

The issue is that this code alters m_allResources (and its LRULists) as
it is iterating over it. We tried to deal with this in various ways:

  1. Increment the iterator before removing the resource pointed by the iterator.
  2. Protect the next resource in the LRUList and abort early if it is no longer in the cache.

This adds code complexity and apparently does not correctly handle all
the edge cases as we still see crashes in this code. In particular, I
suspect that 2. may not be sufficient if it is possible for the next
resource to be moved to another LRUList (in which case, next->inCache()
would still return true but the iterator would however become invalid).

To make the code simpler and more robust, this patch copies the LRUList
(and refs the CachedResources) before iterating over it. This is a lot
safer and should hopefully fix the crashes we see in this function.

No new tests, no reproduction case.

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::pruneDeadResourcesToSize):

10:02 AM Changeset in webkit [193634] by Philippe Normand
  • 2 edits in trunk/Source/WebKit2

[GTK][Mac] socketpair assertion failure
https://bugs.webkit.org/show_bug.cgi?id=151293

Reviewed by Carlos Garcia Campos.

  • Platform/IPC/unix/ConnectionUnix.cpp: Don't use SEQPACKET sockets on Darwin.
9:31 AM Changeset in webkit [193633] by mark.lam@apple.com
  • 9 edits
    1 move in trunk/Source/JavaScriptCore

Rename JITBitwiseBinaryOpGenerator to JITBitBinaryOpGenerator.
https://bugs.webkit.org/show_bug.cgi?id=151945

Reviewed by Saam Barati.

The lshift operator also need to inherit from JITBitBinaryOpGenerator. Calling
it "BitBinaryOp" makes more sense than "BitwiseBinaryOp" in that case, and still
makes sense for the bitand, bitor, and bitxor operators.

(JSC::JIT::emitBitBinaryOpFastPath):
(JSC::JIT::emit_op_bitand):
(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emit_op_bitor):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emit_op_bitxor):
(JSC::JIT::emitSlow_op_bitxor):
(JSC::JIT::emitBitwiseBinaryOpFastPath): Deleted.

  • jit/JITBitAndGenerator.h:

(JSC::JITBitAndGenerator::JITBitAndGenerator):

  • jit/JITBitBinaryOpGenerator.h: Copied from Source/JavaScriptCore/jit/JITBitwiseBinaryOpGenerator.h.

(JSC::JITBitBinaryOpGenerator::JITBitBinaryOpGenerator):
(JSC::JITBitwiseBinaryOpGenerator::JITBitwiseBinaryOpGenerator): Deleted.

  • jit/JITBitOrGenerator.h:

(JSC::JITBitOrGenerator::JITBitOrGenerator):

  • jit/JITBitXorGenerator.h:

(JSC::JITBitXorGenerator::JITBitXorGenerator):

  • jit/JITBitwiseBinaryOpGenerator.h: Removed.
9:30 AM Changeset in webkit [193632] by beidson@apple.com
  • 14 edits in trunk

Modern IDB: Add some more custom exception messages, passing some more tests..
https://bugs.webkit.org/show_bug.cgi?id=151912

Reviewed by Andy Estes.

Source/WebCore:

No new tests (Covered by existing tests).

  • Modules/indexeddb/client/IDBObjectStoreImpl.cpp:

(WebCore::IDBClient::IDBObjectStore::index):

  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::objectStore):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/exceptions-expected.txt:
  • storage/indexeddb/get-keyrange-expected.txt:
  • storage/indexeddb/invalid-keys-expected.txt:
  • storage/indexeddb/keypath-edges-expected.txt:
  • storage/indexeddb/keyrange-expected.txt:
  • storage/indexeddb/transaction-active-flag-expected.txt:
  • storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
  • storage/indexeddb/resources/exceptions.js:
  • storage/indexeddb/resources/transaction-and-objectstore-calls.js:
9:28 AM Changeset in webkit [193631] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[B3] Typo fix after r193386 to fix the build
https://bugs.webkit.org/show_bug.cgi?id=151860

Reviewed by Filip Pizlo.

  • b3/B3StackmapSpecial.cpp:

(JSC::B3::StackmapSpecial::isArgValidForValue):

9:15 AM Changeset in webkit [193630] by yoon@igalia.com
  • 18 edits
    4 adds in trunk/Source

[ThreadedCompositor] Add support for PlatformLayer.
https://bugs.webkit.org/show_bug.cgi?id=143299

Reviewed by Žan Doberšek.

Source/WebCore:

This patch implements TextureMapperPlatformLayerProxy and TextureMapperPlatformLayerBuffer to
send a texture (actual texture or BitmapTexture) to the compositing thread directly.
Platform layer renderers should implement TextureMapperPlatformLayerProxyProvider to establish
a connection to the compositing thread. After the connection has been established, the renderer
can render its contents to the TextureMapperPlatformLayerBuffer and pass it to the compositing thread
via TextureMapperPlatformLayer proxy.
The buffer can be an unmanaged texture (a.k.a. platform texture) or BitmapTexture.
For the unmanaged texture, the renderer should manage its life cycle itself. For the BitmapTexture,
it will be managed by TextureMapperPlatformLayerProxy. In that case, used (swapped) buffer will be
recycled because the renderer will use same size and format until it changes its size.

No new tests needed.

  • PlatformGTK.cmake:

Adds TextureMapperPlatformLayerBuffer and TextureMapperPlaytformLayerProxy.

  • platform/graphics/GraphicsContext3DPrivate.cpp:
  • platform/graphics/GraphicsContext3DPrivate.h:
  • platform/graphics/cairo/ImageBufferCairo.cpp:
  • platform/graphics/cairo/ImageBufferDataCairo.h:

Adds mock implementation.

  • platform/graphics/PlatformLayer.h:

Adds TextureMapperPlatformLayerProxyProvider as a PlatformLayer for the Threaded Compositor

  • platform/graphics/texmap/BitmapTextureGL.h:

(WebCore::BitmapTextureGL::internalFormat): Adds a getter to check the
internal format of texture to check reusability.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:
  • platform/graphics/texmap/TextureMapperLayer.cpp:
  • platform/graphics/texmap/TextureMapperLayer.h:

Exclude GraphicsLayerTextureMapper from build when we are using Coordinated Graphics.

  • platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp: Added.
  • platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h: Added.
  • platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp: Added.
  • platform/graphics/texmap/TextureMapperPlatformLayerProxy.h: Added.
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:

(WebCore::GraphicsLayer::create):
Because we removed GraphicsLayerTextureMapper from build, we need to add own factory function.

(WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):
(WebCore::CoordinatedGraphicsLayer::syncPlatformLayer):
(WebCore::CoordinatedGraphicsLayer::platformLayerWillBeDestroyed):
(WebCore::CoordinatedGraphicsLayer::setPlatformLayerNeedsDisplay):
Implements sync operations for TextureMapperPlatformLayerProxy

Source/WebKit2:

  • Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:

(WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
Swap pending buffers of TextureMapperPlatformLayerProxies before painting contents.
(WebKit::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded):
In threaded compositor, CoordinatedGraphicsScence only cares about creation and deletion
of platform layers.

(WebKit::CoordinatedGraphicsScene::onNewBufferAvailable):
Whenever new buffer comes via TextureMapperPlatformLayerProxy, CoordinatedGraphicsScene will
update the scene if it is needed.

9:12 AM Changeset in webkit [193629] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Marking fast/dom/Window/property-access-on-cached-window-after-frame-removed.html as failing on Win
https://bugs.webkit.org/show_bug.cgi?id=151759

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:05 AM Changeset in webkit [193628] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Removing Yosemite flag from flaky test http/tests/cache/disk-cache/disk-cache-request-max-stale.html
https://bugs.webkit.org/show_bug.cgi?id=151661

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
8:51 AM Changeset in webkit [193627] by Gyuyoung Kim
  • 3 edits in trunk/Source/JavaScriptCore

[EFL] Implement scheduleTimer and cancelTimer in IncrementalSweeper class
https://bugs.webkit.org/show_bug.cgi?id=151656

Reviewed by Csaba Osztrogonác.

Support IncremntalSweeper using Ecore_Timer.

  • heap/IncrementalSweeper.cpp:

(JSC::IncrementalSweeper::IncrementalSweeper):
(JSC::IncrementalSweeper::scheduleTimer):
(JSC::IncrementalSweeper::cancelTimer):

  • heap/IncrementalSweeper.h:
8:24 AM Changeset in webkit [193626] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Allow applications to force Accelerated Compositing mode
https://bugs.webkit.org/show_bug.cgi?id=150558

Patch by Mario Sanchez Prada <mario@endlessm.com> on 2015-12-07
Reviewed by Carlos Garcia Campos.

Enable forcing Accelerated Compositing mode to be always on if
a WEBKIT_FORCE_COMPOSITING_MODE environment variable is set.

This can be useful for controlled environments where we know that
AC always on works well enough, to get smoother animations.

  • UIProcess/gtk/WebPreferencesGtk.cpp:

(WebKit::WebPreferences::platformInitializeStore): Set forceCompositingMode
setting to true if the environment variable is found.

8:22 AM Changeset in webkit [193625] by Gyuyoung Kim
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening. Mark some of blink tests to failure since r190629.

  • platform/efl/TestExpectations:
8:18 AM Changeset in webkit [193624] by calvaris@igalia.com
  • 3 edits in trunk/Tools

Mock TestRepositories in W3C importer tests
https://bugs.webkit.org/show_bug.cgi?id=151938

Reviewed by Youenn Fablet.

The test importer tests should use a fake repository instead of using the real one. The reason why this happened
is because the test repository method reading the file was using the filesystem directly instead of taking the
host one. This patch changes that.

  • Scripts/webkitpy/w3c/test_downloader.py:

(TestDownloader.load_test_repositories): Take a filesystem and use it. If we get no filesystem, we use the
default one.
(TestDownloader.init): When loading the repositories, pass the host filesystem.

  • Scripts/webkitpy/w3c/test_importer_unittest.py:

(TestImporterTest.test_harnesslinks_conversion):
(TestImporterTest.test_submodules_generation): Use a fake test repository file.

5:49 AM Changeset in webkit [193623] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

TestNetscapePlugIn: Address review comment on r193607
<http://webkit.org/b/151881>

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:

(testSetStatus): Initializing std::unique_ptr<char[]> with
nullptr is redundant.

4:36 AM Changeset in webkit [193622] by commit-queue@webkit.org
  • 7 edits in trunk

[GTK] Add webkit_uri_request_get_http_method
https://bugs.webkit.org/show_bug.cgi?id=151601

Source/WebKit2:

Patch by Jon Forsberg <jon.orebro@gmail.com> on 2015-12-07
Reviewed by Martin Robinson.

Add a method to get the HTTP method of a WebKitURIRequest.

  • UIProcess/API/gtk/WebKitURIRequest.cpp:

(webkit_uri_request_get_http_method):

  • UIProcess/API/gtk/WebKitURIRequest.h:
  • UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:

Tools:

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2015-12-07
Reviewed by Martin Robinson.

Add test case to check HTTP method of WebKitURIRequest.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp:

(testURIRequestHTTPMethod):
(serverCallback):
(beforeAll):

  • TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:

(sendRequestCallback):

4:02 AM Changeset in webkit [193621] by yoon@igalia.com
  • 3 edits in trunk/Source/WebCore

Fix GTK+ build with GStreamer GL
https://bugs.webkit.org/show_bug.cgi?id=151939

Reviewed by Žan Doberšek.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::drawCallback):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
3:56 AM Changeset in webkit [193620] by Carlos Garcia Campos
  • 14 edits
    4 adds in trunk

[GTK] Add WebKitWebPage::console-message-sent signal to Web Extensions API
https://bugs.webkit.org/show_bug.cgi?id=79918

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

Add WebKitConsoleMessage boxed type that is passed to the
WebKitWebPage::console-message-sent signal with all the details
about the message.

  • PlatformGTK.cmake: Add new files to compilation.
  • UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
  • UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add webkit_console_message_get_type.
  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section to the docs.
  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:

(API::InjectedBundle::PageUIClient::willAddMessageToConsole): Add
paramaters for all console message details.

  • WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.cpp: Added.

(webkit_console_message_copy):
(webkit_console_message_free):
(webkit_console_message_get_source):
(webkit_console_message_get_level):
(webkit_console_message_get_text):
(webkit_console_message_get_line):
(webkit_console_message_get_source_id):

  • WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.h: Added.
  • WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessagePrivate.h: Added.

(_WebKitConsoleMessage::_WebKitConsoleMessage):

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(webkitWebPageDidSendConsoleMessage): Emit the
WebKitWebPage::console-message-sent signal.
(didReceiveResponseForResource): Generate a console message in
case of HTTP failure >= 400 for consistency with the inspector.
(didFailLoadForResource): Generate a console message in case of
resource load failure for consistency with the inspector.
(webkit_web_page_class_init): Add WebKitWebPage::console-message-sent signal.
(webkitWebPageCreate): Set custom UI client.

  • WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::addMessageToConsole): Pass all the
console message details to the ui client.

Tools:

Add unit tests to check the different console messages.

  • TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
  • TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp: Added.

(ConsoleMessageTest::ConsoleMessage::operator==):
(ConsoleMessageTest::consoleMessageReceivedCallback):
(ConsoleMessageTest::ConsoleMessageTest):
(ConsoleMessageTest::~ConsoleMessageTest):
(ConsoleMessageTest::waitUntilConsoleMessageReceived):
(testWebKitConsoleMessageConsoleAPI):
(testWebKitConsoleMessageJavaScriptException):
(testWebKitConsoleMessageNetworkError):
(testWebKitConsoleMessageSecurityError):
(beforeAll):
(afterAll):

  • TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:

(consoleMessageSentCallback):
(pageCreatedCallback):

3:46 AM Changeset in webkit [193619] by ryuan.choi@navercorp.com
  • 5 edits in trunk

[EFL] MiniBrowser doesn't exit when called ewk_view_try_close()
https://bugs.webkit.org/show_bug.cgi?id=151934

Reviewed by Csaba Osztrogonác.

Source/WebKit2:

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_try_close):
Called window_close callback immediately when WKPageTryClose returns true.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F): Improved test cases for try_close to test when content does not contain
onbeforeunload callback.

Tools:

  • MiniBrowser/efl/main.c:

(on_window_deletion): Revert the changes of r192767.

3:01 AM Changeset in webkit [193618] by Michael Catanzaro
  • 2 edits in trunk/Tools

[GTK] update-webkitgtk-libs cannot build mesa
https://bugs.webkit.org/show_bug.cgi?id=151535

Reviewed by Martin Robinson.

Upgrade to newer mesa in order to build successfully against LLVM 3.7. Add missing
dependency of mesa on LLVM, to ensure LLVM is built first. Build LLVM unconditionally, even
on architectures where FTL is not supported, to ensure mesa is always buildable, since LLVM
does not have a stable API and we cannot expect mesa to be buildable unless we control the
LLVM version. Build mesa with --disable-egl since --enable-egl conflicts with
--enable-xlib-glx. This fixes update-webkitgtk-libs on distros with LLVM 3.7.

  • gtk/jhbuild.modules:
1:11 AM Changeset in webkit [193617] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK][Mac] libWebExtensionTest link error
https://bugs.webkit.org/show_bug.cgi?id=150802

Reviewed by Carlos Garcia Campos.

  • TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: add dependencies to the webextension library.
12:28 AM Changeset in webkit [193616] by ljaehun.lim@samsung.com
  • 3 edits in trunk/Source/WebKit2

[EFL] Moving preference settings from EwkView to WebPreferencesEfl
https://bugs.webkit.org/show_bug.cgi?id=151928

Reviewed by Gyuyoung Kim.

It implements WebPreferences::platformInitializeStore() in WebPreferencesEfl.cpp.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):

  • UIProcess/efl/WebPreferencesEfl.cpp:

(WebKit::WebPreferences::platformInitializeStore):

Dec 6, 2015:

11:45 PM Changeset in webkit [193615] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Regression (r192936) - changing selectors in the visual styles sidebar is broken
https://bugs.webkit.org/show_bug.cgi?id=151924

Patch by Devin Rousso <Devin Rousso> on 2015-12-06
Reviewed by Brian Burg.

  • UserInterface/Views/VisualStyleSelectorSection.js:

(WebInspector.VisualStyleSelectorSection):
(WebInspector.VisualStyleSelectorSection.prototype._selectorChanged):
Now uses an event listener instead of an "onselect" function.

10:27 PM Changeset in webkit [193614] by Simon Fraser
  • 6 edits in trunk/Source/WebCore

Show more information about SVG renderers in showLayerTree() output
https://bugs.webkit.org/show_bug.cgi?id=151930

Reviewed by Zalan Bujtas.

In showLayerTree() output, for SVG renderers show:

  • visual and layout overflow, for boxes
  • frame rect, for boxes
  • layout state
  • class and id
  • rendering/RenderLayer.cpp:

(WebCore::showLayerTree):

  • rendering/RenderTreeAsText.cpp:

(WebCore::RenderTreeAsText::writeRenderObject):
(WebCore::writeDebugInfo): New function to share dumping with svg output.
(WebCore::write):

  • rendering/RenderTreeAsText.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writePositionAndStyle): Show the frameRect for boxes (e.g. RenderSVGRoot).
Much more useful that showing the clippedOverflowRect.
(WebCore::writeStandardPrefix):
(WebCore::writeChildren):
(WebCore::writeSVGResourceContainer):
(WebCore::writeSVGContainer):
(WebCore::write):
(WebCore::writeSVGText):
(WebCore::writeSVGInlineText):
(WebCore::writeSVGImage):
(WebCore::writeSVGGradientStop):
(WebCore::writeResources):
(WebCore::operator<<): Deleted.

  • rendering/svg/SVGRenderTreeAsText.h:
10:27 PM Changeset in webkit [193613] by Simon Fraser
  • 3 edits
    2 adds in trunk

Clipping along compositing borders in svg-edit
https://bugs.webkit.org/show_bug.cgi?id=151791

Reviewed by Zalan Bujtas.

Source/WebCore:

RenderSVGRoot::layout() failed to clear overflow before recomputing
visual overflow, which could cause it to get stuck with stale overflow.
This would cause underpainting if its size went from small to large.

Test: svg/overflow/visual-overflow-change.html

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::layout):

LayoutTests:

Ref test that triggers recomputation of overflow.

  • svg/overflow/visual-overflow-change-expected.html: Added.
  • svg/overflow/visual-overflow-change.html: Added.
10:15 PM Changeset in webkit [193612] by Matt Baker
  • 8 edits in trunk/Source/WebInspectorUI
Web Inspector: Comparisons in setters should use the massaged value (" = x
0/false/null/etc")

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

Reviewed by Timothy Hatcher.

Updated setters that use default values to convert falsy inputs to the default value
before compariing against the current value.

  • UserInterface/Models/TimelineMarker.js:

(WebInspector.TimelineMarker.prototype.set time):
Assert new value is a number.

  • UserInterface/Views/DataGrid.js:

(WebInspector.DataGridNode.prototype.set hidden):
(WebInspector.DataGridNode.prototype.set data):
Assert new value is of type object. Use shallowEqual compare before setting value.

  • UserInterface/Views/GeneralTreeElement.js:

(WebInspector.GeneralTreeElement.prototype.set classNames):
Use shallowEqual compare before setting value.
(WebInspector.GeneralTreeElement.prototype.set mainTitle):
(WebInspector.GeneralTreeElement.prototype.set subtitle):
(WebInspector.GeneralTreeElement.prototype.set status):
(WebInspector.GeneralTreeElement.prototype.set tooltipHandledSeparately):

  • UserInterface/Views/TimelineOverview.js:

(WebInspector.TimelineOverview.prototype.set startTime):
(WebInspector.TimelineOverview.prototype.set currentTime):
(WebInspector.TimelineOverview.prototype.set endTime):
(WebInspector.TimelineOverview.prototype.set scrollStartTime):
(WebInspector.TimelineOverview.prototype.set selectionStartTime):
Check current ruler selectionStartTime before setting value.

  • UserInterface/Views/TimelineOverviewGraph.js:

(WebInspector.TimelineOverviewGraph.prototype.set zeroTime):
(WebInspector.TimelineOverviewGraph.prototype.set startTime):
(WebInspector.TimelineOverviewGraph.prototype.set endTime):
(WebInspector.TimelineOverviewGraph.prototype.set currentTime):

  • UserInterface/Views/TimelineRuler.js:

(WebInspector.TimelineRuler):
(WebInspector.TimelineRuler.prototype.set allowsClippedLabels):
(WebInspector.TimelineRuler.prototype.set formatLabelCallback):
(WebInspector.TimelineRuler.prototype.set allowsTimeRangeSelection):
(WebInspector.TimelineRuler.prototype.set zeroTime):
(WebInspector.TimelineRuler.prototype.set startTime):
(WebInspector.TimelineRuler.prototype.set endTime):
(WebInspector.TimelineRuler.prototype.set secondsPerPixel):
(WebInspector.TimelineRuler.prototype.set selectionStartTime):
(WebInspector.TimelineRuler.prototype.set selectionEndTime):
(WebInspector.TimelineRuler.prototype.set duration): Deleted.
The ruler duration and "pinned" state are controlled by setting an end
time. Removed since it wasn't being used, and there shouldn't be two
ways to the exact same thing.

  • UserInterface/Views/TimelineView.js:

(WebInspector.TimelineView.prototype.set zeroTime):
(WebInspector.TimelineView.prototype.set startTime):
(WebInspector.TimelineView.prototype.set endTime):

10:13 PM Changeset in webkit [193611] by commit-queue@webkit.org
  • 5 edits
    3 adds in trunk

[INTL] Implement String.prototype.toLocaleLowerCase in ECMA-402
https://bugs.webkit.org/show_bug.cgi?id=147608

Patch by Andy VanWagoner <thetalecrafter@gmail.com> on 2015-12-06
Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

Add toLocaleLowerCase using icu u_strToLower.

  • runtime/IntlObject.cpp:

(JSC::defaultLocale): Expose.
(JSC::bestAvailableLocale): Expose.
(JSC::removeUnicodeLocaleExtension): Expose.

  • runtime/IntlObject.h:
  • runtime/StringPrototype.cpp:

(JSC::StringPrototype::finishCreation):
(JSC::stringProtoFuncToLocaleLowerCase): Add.

LayoutTests:

  • js/script-tests/string-toLocaleLowerCase.js: Added.
  • js/string-toLocaleLowerCase-expected.txt: Added.
  • js/string-toLocaleLowerCase.html: Added.
9:14 PM Changeset in webkit [193610] by Simon Fraser
  • 6 edits
    2 adds in trunk

REGRESSION (r187121): Can't get to the main content of the page at https://theintercept.com/drone-papers/
https://bugs.webkit.org/show_bug.cgi?id=151849
rdar://problem/23132828

Reviewed by Zalan Bujtas.

Source/WebCore:

This page uses a fill-forwards animation where the last keyframe has height: auto.
After r187121, we tried to blend the height Length value from the last keyframe to the
first keyframe with progress=0 (which should pick up the 'auto' from the last keyframe).

However, Length::blend() just considered both 0 and 'auto' to be zero, and returned
the 0 length.

So fix Length::blend() to return the "from" length if progress is zero.

Test: animations/fill-forwards-auto-height.html

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc): Length::blend takes a double, so don't narrow to float.

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty): Declare two variables
at first use.

  • platform/Length.h:

(WebCore::Length::blend):

LayoutTests:

New ref test.

The behavior of imported/blink/transitions/transition-not-interpolable.html changed
with this patch, but that test is trying to determine if transitions run to/from
'auto' values, and doing it wrong. The current patch doesn't change the user-visible
behavior of transitions with 'auto' endpoints (covered by http://webkit.org/b/38243).

  • animations/fill-forwards-auto-height-expected.html: Added.
  • animations/fill-forwards-auto-height.html: Added.
  • imported/blink/transitions/transition-not-interpolable-expected.txt:
8:55 PM Changeset in webkit [193609] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Give SVGTransformList some inline vector capacity
https://bugs.webkit.org/show_bug.cgi?id=151644

Reviewed by Andreas Kling.

Giving SVGTransformList inline capacity of one drops time under SVGTransformList::parse() by
about 1% on http://animateplus.com/demos/stress-test/

  • svg/SVGTransformList.h:
8:40 PM Changeset in webkit [193608] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Addressing post-review comments on r193374.

Reviewed by Antti Koivisto.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseForText):
(WebCore::SimpleLineLayout::canUseForFontAndText):
(WebCore::SimpleLineLayout::canUseForStyle):
(WebCore::SimpleLineLayout::canUseForWithReason):
(WebCore::SimpleLineLayout::canUseFor):
(WebCore::SimpleLineLayout::printSimpleLineLayoutBlockList):
(WebCore::SimpleLineLayout::printSimpleLineLayoutCoverage):

7:27 PM Changeset in webkit [193607] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

TestNetscapePlugIn: Fix leaks found by static analyzer
<http://webkit.org/b/151881>

Reviewed by Darin Adler.

Fixes the following leaks found by the static analyzer:

DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:808:16: warning: Potential leak of memory pointed to by 'path'

return false;


DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:808:16: warning: Potential leak of memory pointed to by 'target'

return false;


DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:808:16: warning: Potential leak of memory pointed to by 'url'

return false;


  • DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:

(toCString): Switch to returning std::unique_ptr<char[]>. Add
early return if allocation fails.
(testPostURLFile): Switch to using std::unique_ptr<char[]>.
Make sure to call fclose() on filehandle, even for an early
return.
(testSetStatus): Switch to using std::unique_ptr<char[]>.

5:54 PM Changeset in webkit [193606] by ddkilzer@apple.com
  • 62 edits
    1 add
    13 deletes in trunk

REGRESSION(r193584): Causes heap use-after-free crashes in Web Inspector tests with AddressSanitizer (Requested by ddkilzer on #webkit).
https://bugs.webkit.org/show_bug.cgi?id=151929

Reverted changeset:

"[ES6] "super" and "this" should be lexically bound inside an
arrow function and should live in a JSLexicalEnvironment"
https://bugs.webkit.org/show_bug.cgi?id=149338
http://trac.webkit.org/changeset/193584

5:16 PM Changeset in webkit [193605] by bshafiei@apple.com
  • 5 edits in branches/safari-601-branch/Source

Versioning.

5:14 PM Changeset in webkit [193604] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.5.4

New tag.

5:09 PM Changeset in webkit [193603] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[es6] Arrow function syntax. Fix tests after 149338 landing
https://bugs.webkit.org/show_bug.cgi?id=151927

Patch by Skachkov Oleksandr <gskachkov@gmail.com> on 2015-12-06
Reviewed by Saam Barati.

After landing patch for 149338 errors appear in for ES6 Generator. Current fix is removed assert
that was removed by patch with implemenation of ES6 Generator.

  • runtime/CommonSlowPaths.cpp:
4:41 PM Changeset in webkit [193602] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

4:40 PM Changeset in webkit [193601] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.84

New tag.

3:07 PM Changeset in webkit [193600] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r193599. rdar://problem/23769689

3:00 PM Changeset in webkit [193599] by ddkilzer@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

REGRESSION (r193575): variantSettings is unused when PLATFORM_FONT_LOOKUP is disabled
<rdar://problem/23769741>

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::fontWithFamily): Mark variantSettings as ununsed when
PLATFORM_FONT_LOOKUP is disabled.

2:43 PM Changeset in webkit [193598] by ddkilzer@apple.com
  • 5 edits in branches/safari-601-branch/LayoutTests

REGRESSION (r193575): Conflict markers left in test files
<rdar://problem/23769741>

When trunk r190192 was merged to safari-601-branch, there were
some conflict markers left in test files. This commit resolves
those conflicts the same way I did when I merged r193575 to
safari-601.1.46-branch.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
  • Resolve conflicts to take updated font properties, but to ignore -webkit-grid changes.
  • platform/mac/TestExpectations: Remove duplicate entries and

take expectations for css3/font-* tests from trunk.

2:25 PM Changeset in webkit [193597] by bshafiei@apple.com
  • 33 edits in tags/Safari-602.1.13.1

Roll out r192796. rdar://problem/23763584

2:23 PM Changeset in webkit [193596] by bshafiei@apple.com
  • 19 edits
    1 copy in tags/Safari-602.1.13.1

Roll out r192808. rdar://problem/23763584

2:20 PM Changeset in webkit [193595] by ddkilzer@apple.com
  • 4 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188114. rdar://problem/23221171

2:10 PM Changeset in webkit [193594] by ddkilzer@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r190895. rdar://problem/23769765

2:03 PM Changeset in webkit [193593] by ddkilzer@apple.com
  • 5 edits in branches/safari-601.1.46-branch

Merge r190999. rdar://problem/23770070

2:03 PM Changeset in webkit [193592] by bshafiei@apple.com
  • 4 edits in branches/safari-601-branch/Source/WebCore

Merged r188114. rdar://problem/23769852

1:59 PM Changeset in webkit [193591] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.13.1/Source

Versioning.

1:53 PM Changeset in webkit [193590] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Tools

Merge r191032. rdar://problem/23769702

1:53 PM Changeset in webkit [193589] by ddkilzer@apple.com
  • 15 edits
    2 copies
    2 adds
    9 deletes in branches/safari-601.1.46-branch

Merge r190848. rdar://problem/23769702

1:48 PM Changeset in webkit [193588] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.13.1

New tag.

1:32 PM Changeset in webkit [193587] by ddkilzer@apple.com
  • 8 edits
    1 add in branches/safari-601.1.46-branch

Merge r190697. rdar://problem/23769727

1:21 PM Changeset in webkit [193586] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r190402. rdar://problem/23769689

1:20 PM Changeset in webkit [193585] by ddkilzer@apple.com
  • 42 edits in branches/safari-601.1.46-branch

Merge r190192. rdar://problem/23769689

12:56 PM Changeset in webkit [193584] by commit-queue@webkit.org
  • 63 edits
    13 adds
    1 delete in trunk

[ES6] "super" and "this" should be lexically bound inside an arrow function and should live in a JSLexicalEnvironment
https://bugs.webkit.org/show_bug.cgi?id=149338

Source/JavaScriptCore:

Patch by Aleksandr Skachkov <gskachkov@gmail.com> on 2015-12-05
Reviewed by Saam Barati.

Implemented new version of the lexically bound 'this' in arrow function. In current version
'this' is stored inside of the lexical environment of the function. To store and load we use
op_get_from_scope and op_put_to_scope operations. Also new implementation prevent raising TDZ
error for arrow functions that are declared before super() but invoke after.

  • builtins/BuiltinExecutables.cpp:

(JSC::createExecutableInternal):

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecode/EvalCodeCache.h:

(JSC::EvalCodeCache::getSlow):

  • bytecode/ExecutableInfo.h:

(JSC::ExecutableInfo::ExecutableInfo):
(JSC::ExecutableInfo::isDerivedConstructorContext):
(JSC::ExecutableInfo::isArrowFunctionContext):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::isArrowFunction):
(JSC::UnlinkedCodeBlock::isDerivedConstructorContext):
(JSC::UnlinkedCodeBlock::isArrowFunctionContext):

  • bytecode/UnlinkedFunctionExecutable.cpp:

(JSC::generateUnlinkedFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):

  • bytecode/UnlinkedFunctionExecutable.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::initializeArrowFunctionContextScopeIfNeeded):
(JSC::BytecodeGenerator::variable):
(JSC::BytecodeGenerator::emitNewArrowFunctionExpression):
(JSC::BytecodeGenerator::emitLoadArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitLoadThisFromArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitLoadNewTargetFromArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitLoadDerivedConstructorFromArrowFunctionLexicalEnvironment):
(JSC::BytecodeGenerator::emitPutNewTargetToArrowFunctionContextScope):
(JSC::BytecodeGenerator::emitPutDerivedConstructorToArrowFunctionContextScope):
(JSC::BytecodeGenerator::emitPutThisToArrowFunctionContextScope):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::isDerivedConstructorContext):
(JSC::BytecodeGenerator::usesArrowFunction):
(JSC::BytecodeGenerator::needsToUpdateArrowFunctionContext):
(JSC::BytecodeGenerator::usesEval):
(JSC::BytecodeGenerator::usesThis):
(JSC::BytecodeGenerator::newTarget):
(JSC::BytecodeGenerator::makeFunction):

  • bytecompiler/NodesCodegen.cpp:

(JSC::ThisNode::emitBytecode):
(JSC::SuperNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionNode::emitBytecode):

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::evaluate):

  • dfg/DFGAbstractInterpreterInlines.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:
  • dfg/DFGClobberize.h:
  • dfg/DFGDoesGC.cpp:
  • dfg/DFGFixupPhase.cpp:
  • dfg/DFGNodeType.h:
  • dfg/DFGObjectAllocationSinkingPhase.cpp:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGPromotedHeapLocation.cpp:
  • dfg/DFGPromotedHeapLocation.h:
  • dfg/DFGSafeToExecute.h:
  • dfg/DFGSpeculativeJIT.cpp:
  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:
  • dfg/DFGSpeculativeJIT64.cpp:
  • ftl/FTLCapabilities.cpp:
  • ftl/FTLLowerDFGToLLVM.cpp:
  • ftl/FTLOperations.cpp:

(JSC::FTL::operationMaterializeObjectInOSR):

  • interpreter/Interpreter.cpp:

(JSC::eval):

  • jit/JIT.cpp:
  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emitNewFuncExprCommon):

  • jit/JITOpcodes32_64.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createArrowFunctionExpr):
(JSC::ASTBuilder::usesArrowFunction):

  • parser/Nodes.h:

(JSC::ScopeNode::usesArrowFunction):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseFunctionInfo):

  • parser/ParserModes.h:
  • runtime/CodeCache.cpp:

(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getProgramCodeBlock):
(JSC::CodeCache::getEvalCodeBlock):
(JSC::CodeCache::getModuleProgramCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

  • runtime/CodeCache.h:
  • runtime/CommonIdentifiers.h:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/Executable.cpp:

(JSC::ScriptExecutable::ScriptExecutable):
(JSC::EvalExecutable::create):
(JSC::EvalExecutable::EvalExecutable):
(JSC::ProgramExecutable::ProgramExecutable):
(JSC::ModuleProgramExecutable::ModuleProgramExecutable):
(JSC::FunctionExecutable::FunctionExecutable):

  • runtime/Executable.h:

(JSC::ScriptExecutable::isArrowFunctionContext):
(JSC::ScriptExecutable::isDerivedConstructorContext):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::createEvalCodeBlock):

  • runtime/JSGlobalObject.h:
  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEval):

  • tests/es6.yaml:
  • tests/stress/arrowfunction-activation-sink-osrexit.js:
  • tests/stress/arrowfunction-activation-sink.js:
  • tests/stress/arrowfunction-lexical-bind-newtarget.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-1.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-2.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-3.js: Added.
  • tests/stress/arrowfunction-lexical-bind-supercall-4.js: Added.
  • tests/stress/arrowfunction-lexical-bind-this-1.js:
  • tests/stress/arrowfunction-lexical-bind-this-7.js: Added.
  • tests/stress/arrowfunction-tdz-1.js: Added.
  • tests/stress/arrowfunction-tdz-2.js: Added.
  • tests/stress/arrowfunction-tdz-3.js: Added.
  • tests/stress/arrowfunction-tdz-4.js: Added.
  • tests/stress/arrowfunction-tdz.js: Removed.

LayoutTests:

Patch by Skachkov Oleksandr <gskachkov@gmail.com> on 2015-12-06
Reviewed by Saam Barati.

  • js/arrowfunction-supercall-expected.txt: Added.
  • js/arrowfunction-supercall.html: Added.
  • js/arrowfunction-tdz-expected.txt: Added new expectation.
  • js/script-tests/arrowfunction-supercall.js: Added.
  • js/script-tests/arrowfunction-tdz.js: Added new cases.
12:40 PM Changeset in webkit [193583] by ddkilzer@apple.com
  • 19 edits in branches/safari-601.1.46-branch

Merge r190564. rdar://problem/23769693

10:40 AM Changeset in webkit [193582] by matthew_hanson@apple.com
  • 4 adds in branches/safari-601-branch/Tools

Build fixes

4:33 AM WebKitGTK/SpeedUpBuild edited by jfernandez@igalia.com
(diff)
4:31 AM WebKitGTK/SpeedUpBuild edited by jfernandez@igalia.com
(diff)
2:37 AM Changeset in webkit [193581] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Tools

Merge r191032. rdar://problem/23769770

2:37 AM Changeset in webkit [193580] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebCore

Merge r190895. rdar://problem/23769817

2:37 AM Changeset in webkit [193579] by matthew_hanson@apple.com
  • 5 edits in branches/safari-601-branch

Merge r190999. rdar://problem/23769821

2:37 AM Changeset in webkit [193578] by matthew_hanson@apple.com
  • 15 edits
    9 deletes in branches/safari-601-branch

Merge r190848. rdar://problem/23769770

2:37 AM Changeset in webkit [193577] by matthew_hanson@apple.com
  • 8 edits
    1 add in branches/safari-601-branch

Merge r190697. rdar://problem/23769789

2:37 AM Changeset in webkit [193576] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r190402. rdar://problem/23769741

2:37 AM Changeset in webkit [193575] by matthew_hanson@apple.com
  • 42 edits in branches/safari-601-branch

Merge r190192. rdar://problem/23769741

12:10 AM Changeset in webkit [193574] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/LayoutTests

Merged r191646. rdar://problem/23766315

12:09 AM Changeset in webkit [193573] by bshafiei@apple.com
  • 22 edits
    6 copies in branches/safari-601.1.46-branch

Merged r191644. rdar://problem/23766315

Dec 5, 2015:

11:58 PM Changeset in webkit [193572] by bshafiei@apple.com
  • 31 edits
    4 copies in branches/safari-601-branch/Source/WebCore

Merged r193479. rdar://problem/23581547

11:57 PM Changeset in webkit [193571] by bshafiei@apple.com
  • 17 edits in branches/safari-601-branch/Source/WebCore

Merged r190202. rdar://problem/23581547

11:27 PM Changeset in webkit [193570] by matthew_hanson@apple.com
  • 5 edits
    2 deletes in branches/safari-601-branch

Roll out r193474. rdar://problem/23732400

11:27 PM Changeset in webkit [193569] by matthew_hanson@apple.com
  • 17 edits in branches/safari-601-branch/Source/WebKit2

Roll out r193475. rdar://problem/23732400

11:27 PM Changeset in webkit [193568] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebKit2

Roll out r193476. rdar://problem/23732400

11:27 PM Changeset in webkit [193567] by matthew_hanson@apple.com
  • 18 edits
    6 deletes in branches/safari-601-branch

Roll out r193478. rdar://problem/23732400

11:18 PM Changeset in webkit [193566] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[JSC] Remove FTLOutput's fence support
https://bugs.webkit.org/show_bug.cgi?id=151909

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-05
Reviewed by Sam Weinig.

Unused code is unused.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::fence): Deleted.
(JSC::FTL::Output::fenceAcqRel): Deleted.

  • ftl/FTLOutput.h:

(JSC::FTL::Output::fence): Deleted.
(JSC::FTL::Output::fenceAcqRel): Deleted.

11:11 PM Changeset in webkit [193565] by bshafiei@apple.com
  • 14 edits
    4 copies in branches/safari-601.1.46-branch

Merged r192953. rdar://problem/23221158

11:09 PM Changeset in webkit [193564] by bshafiei@apple.com
  • 15 edits
    16 copies in branches/safari-601.1.46-branch

Merged r191252. rdar://problem/23772886

11:08 PM Changeset in webkit [193563] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r191201. rdar://problem/23772887

11:07 PM Changeset in webkit [193562] by bshafiei@apple.com
  • 7 edits
    10 copies in branches/safari-601.1.46-branch

Merged r191178. rdar://problem/23772888

11:04 PM Changeset in webkit [193561] by bshafiei@apple.com
  • 14 edits
    10 copies
    6 deletes in branches/safari-601.1.46-branch

Merged r191151. rdar://problem/23772885

10:24 PM Changeset in webkit [193560] by bshafiei@apple.com
  • 4 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r191825. rdar://problem/23221179

10:23 PM Changeset in webkit [193559] by bshafiei@apple.com
  • 29 edits
    7 copies in branches/safari-601.1.46-branch

Merged r191128. rdar://problem/23221179

10:21 PM Changeset in webkit [193558] by bshafiei@apple.com
  • 13 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r190231. rdar://problem/23772890

10:19 PM Changeset in webkit [193557] by bshafiei@apple.com
  • 19 edits
    3 copies in branches/safari-601.1.46-branch

Merged r190209. rdar://problem/23772891

10:16 PM Changeset in webkit [193556] by bshafiei@apple.com
  • 18 edits
    1 copy in branches/safari-601.1.46-branch

Merged r191452. rdar://problem/23766290

10:14 PM Changeset in webkit [193555] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r191409. rdar://problem/23766303

10:12 PM Changeset in webkit [193554] by bshafiei@apple.com
  • 17 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r191309. rdar://problem/23766300

10:09 PM Changeset in webkit [193553] by bshafiei@apple.com
  • 5 edits
    2 copies in branches/safari-601.1.46-branch

Merged r191072. rdar://problem/23766294

9:56 PM Changeset in webkit [193552] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r192129. rdar://problem/23221177

9:56 PM Changeset in webkit [193551] by ddkilzer@apple.com
  • 7 edits
    2 adds in branches/safari-601.1.46-branch

Merge r191981. rdar://problem/23221177

9:56 PM Changeset in webkit [193550] by ddkilzer@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r192129. rdar://problem/23732379

9:56 PM Changeset in webkit [193549] by ddkilzer@apple.com
  • 7 edits
    2 adds in branches/safari-601-branch

Merge r191981. rdar://problem/23732379

7:08 PM Changeset in webkit [193548] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r191155. rdar://problem/23772889

6:57 PM Changeset in webkit [193547] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/LayoutTests

Merge r190868. rdar://problem/23769564

6:57 PM Changeset in webkit [193546] by ddkilzer@apple.com
  • 10 edits
    2 copies in branches/safari-601.1.46-branch

Merge r190667. rdar://problem/23769564

6:57 PM Changeset in webkit [193545] by ddkilzer@apple.com
  • 7 edits in branches/safari-601.1.46-branch

Merge r188604. rdar://problem/23769564

6:10 PM Changeset in webkit [193544] by ddkilzer@apple.com
  • 4 edits in branches/safari-601.1.46-branch/Tools

Merge r189943. rdar://problem/23769685

6:10 PM Changeset in webkit [193543] by ddkilzer@apple.com
  • 4 edits
    10 adds in branches/safari-601.1.46-branch

Merge r189890. rdar://problem/23769685

5:54 PM Changeset in webkit [193542] by ddkilzer@apple.com
  • 15 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188130. rdar://problem/23769683

5:54 PM Changeset in webkit [193541] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r187709. rdar://problem/23769683

5:54 PM Changeset in webkit [193540] by ddkilzer@apple.com
  • 7 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188168. rdar://problem/23769683

5:54 PM Changeset in webkit [193539] by ddkilzer@apple.com
  • 8 edits
    4 adds in branches/safari-601.1.46-branch

Merge r188146. rdar://problem/23769683

5:54 PM Changeset in webkit [193538] by ddkilzer@apple.com
  • 6 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r187982. rdar://problem/23769683

4:46 PM Changeset in webkit [193537] by dburkart@apple.com
  • 19 edits in branches/safari-601-branch

Merge r190564. rdar://problem/23769747

2:02 PM Changeset in webkit [193536] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

One last fix for https redirect.

  • wp-content/themes/webkit/.htaccess:
1:55 PM Changeset in webkit [193535] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Attempt to fix www redirect again.

  • wp-content/themes/webkit/.htaccess:
1:41 PM Changeset in webkit [193534] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix www redirect again.

  • wp-content/themes/webkit/.htaccess:
1:40 PM Changeset in webkit [193533] by matthew_hanson@apple.com
  • 14 edits
    3 copies
    7 adds in branches/safari-601-branch

Merge r192953. rdar://problem/23581540

1:39 PM Changeset in webkit [193532] by timothy@apple.com
  • 3 edits in trunk/Websites/webkit.org

Fix www redirect when https was used and restore status URL code.

  • wp-content/themes/webkit/.htaccess:
  • wp-content/themes/webkit/status.php:
1:26 PM Changeset in webkit [193531] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Another attempt to fix a 404 error when the site loads via www.webkit.org.

  • wp-content/themes/webkit/status.php:
1:17 PM Changeset in webkit [193530] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix a 404 error when the site loads via www.webkit.org.

  • wp-content/themes/webkit/status.php:
11:54 AM Changeset in webkit [193529] by matthew_hanson@apple.com
  • 15 edits
    16 adds in branches/safari-601-branch

Merge r191252. rdar://problem/23772905

11:54 AM Changeset in webkit [193528] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r191201. rdar://problem/23772907

11:54 AM Changeset in webkit [193527] by matthew_hanson@apple.com
  • 7 edits
    10 adds in branches/safari-601-branch

Merge r191178. rdar://problem/23772788

11:54 AM Changeset in webkit [193526] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r191155. rdar://problem/23772908

11:54 AM Changeset in webkit [193525] by matthew_hanson@apple.com
  • 14 edits
    6 moves
    4 adds in branches/safari-601-branch

Merge r191151. rdar://problem/23772904

10:30 AM Changeset in webkit [193524] by matthew_hanson@apple.com
  • 15 edits in branches/safari-601-branch/Source/WebCore

Merge r188130. rdar://problem/23769732

10:30 AM Changeset in webkit [193523] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r187709. rdar://problem/23769732

10:30 AM Changeset in webkit [193522] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/LayoutTests

Merge r190868. rdar://problem/23769584

10:30 AM Changeset in webkit [193521] by matthew_hanson@apple.com
  • 10 edits
    2 copies in branches/safari-601-branch

Merge r190667. rdar://problem/23769584

10:30 AM Changeset in webkit [193520] by matthew_hanson@apple.com
  • 7 edits in branches/safari-601-branch

Merge r188604. rdar://problem/23769584

10:30 AM Changeset in webkit [193519] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch/Tools

Merge r189943. rdar://problem/23769735

10:30 AM Changeset in webkit [193518] by matthew_hanson@apple.com
  • 4 edits
    10 adds in branches/safari-601-branch

Merge r189890. rdar://problem/23769735

10:30 AM Changeset in webkit [193517] by matthew_hanson@apple.com
  • 7 edits in branches/safari-601-branch/Source/WebCore

Merge r188168. rdar://problem/23769732

10:30 AM Changeset in webkit [193516] by matthew_hanson@apple.com
  • 8 edits
    4 adds in branches/safari-601-branch

Merge r188146. rdar://problem/23769732

10:29 AM Changeset in webkit [193515] by matthew_hanson@apple.com
  • 6 edits in branches/safari-601-branch/Source/WebCore

Merge r187982. rdar://problem/23769732

9:08 AM Changeset in webkit [193514] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

prepare-ChangeLog: Fix some warning messages when using svn
<http://webkit.org/b/151914>

Reviewed by Daniel Bates.

  • Scripts/prepare-ChangeLog:

(generateFunctionLists): Simplify logic so that we never call
normalizePath() with an undefined value.
(attributeCommand): Quote $subPath for the shell so that we
don't try to run "svn propget" on invalid paths.

5:53 AM Changeset in webkit [193513] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r193487): Modern IDB: storage/indexeddb/index-multientry.html crashes

  • platform/mac-wk1/TestExpectations: Skip test that crashes

on every run: storage/indexeddb/index-multientry.html.

Dec 4, 2015:

11:55 PM Changeset in webkit [193512] by mmaxfield@apple.com
  • 6 edits in trunk/Source/WebCore

Remove CORETEXT_WEB_FONTS
https://bugs.webkit.org/show_bug.cgi?id=151891

Reviewed by Simon Fraser.

The only platform where this was turned off (Mavericks) is no longer supported.

No new tests because there is no behavior difference.

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformCreateScaledFont): Deleted.

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::registeredFont):
(WebCore::FontPlatformData::ctFont):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData): Deleted.
(WebCore::createFontCustomPlatformData): Deleted.

  • platform/graphics/mac/FontCustomPlatformData.h:

(WebCore::FontCustomPlatformData::FontCustomPlatformData): Deleted.

  • platform/text/TextFlags.h:
11:11 PM Changeset in webkit [193511] by Alan Bujtas
  • 7 edits in trunk

Garbage in page tiles when document is too long.
https://bugs.webkit.org/show_bug.cgi?id=151906
rdar://problem/23695858

Reviewed by Simon Fraser.

Source/WebCore:

This patch partially fixes the broken concept(webkit.org/b/151908) of having a nearlyMax/2 sized rectangle to define infiniteness.
(see LayoutRect::infiniteRect() and ClipRect::isInfinite())

Covered by existing test.

  • rendering/ClipRect.h: Branch for infinite clipping.

(WebCore::ClipRect::intersect):
(WebCore::ClipRect::intersects):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::clipToRect): Do not clip when clipping is infinite.
(WebCore::RenderLayer::restoreClip):
(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

  • platform/ios-simulator/fast/block/float/overhanging-tall-block-expected.txt:
  • platform/mac-mavericks/fast/block/float/overhanging-tall-block-expected.txt:
  • platform/mac/fast/block/float/overhanging-tall-block-expected.txt:
9:25 PM Changeset in webkit [193510] by beidson@apple.com
  • 12 edits in trunk

Modern IDB: Add some more custom exception messages, passing some more tests.
https://bugs.webkit.org/show_bug.cgi?id=151898

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Some failing tests now pass).

  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::objectStore):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/keypath-arrays-expected.txt:
  • storage/indexeddb/noblobs-expected.txt:
  • storage/indexeddb/object-lookups-in-versionchange-expected.txt:
  • storage/indexeddb/request-result-cache-expected.txt:
  • storage/indexeddb/transaction-after-close-expected.txt:
  • storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
  • storage/indexeddb/transaction-read-only-expected.txt:
8:31 PM Changeset in webkit [193509] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

TestNetscapePlugIn: Fix remaining static analyzer warnings
<http://webkit.org/b/151888>

Reviewed by Alexey Proskuryakov.

Fixes the following static analyzer warnings:

Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:101:9: warning: Called function pointer is null (null dereference)

CRASH();

Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:46:5: note: expanded from macro 'CRASH'

((void(*)())0)(); /* More reliable, but doesn't say BBADBEEF */ \
~

Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:375:12: warning: Access to field 'pluginTest' results in a dereference of a null pointer (loaded from variable 'obj')

return obj->pluginTest->NPP_SetWindow(window);


2 warnings generated.

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(CRASH): Use builtin_trap() for gcc/clang.
(NPP_SetWindow): Add early return if obj is nullptr.

7:29 PM Changeset in webkit [193508] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Unreviewed, rolling out r193486.
https://bugs.webkit.org/show_bug.cgi?id=151904

Causes Infinite Recursion in Timeline Recording (Requested by
JoePeck on #webkit).

Reverted changeset:

"Web Inspector: when a marked-dirty subview is attached to a
parent View, dirtyDescendantsCount gets out of sync"
https://bugs.webkit.org/show_bug.cgi?id=151876
http://trac.webkit.org/changeset/193486

7:20 PM Changeset in webkit [193507] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Uncaught Exception with Reload shortcut in JSContext Inspector
https://bugs.webkit.org/show_bug.cgi?id=151896

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-12-04
Reviewed by Timothy Hatcher.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded):
Do not implicitly prevent default on these keyboard shortcuts
so we can system beep if we do not do anything.

(WebInspector._reloadPage):
(WebInspector._reloadPageIgnoringCache):
Bail if there is no PageAgent without preventing default for
a beep system beep. Prevent default if we did something.

6:57 PM Changeset in webkit [193506] by benjamin@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[JSC] Some more cleanup of FTLB3Output
https://bugs.webkit.org/show_bug.cgi?id=151834

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Filip Pizlo.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::trap):
(JSC::FTL::Output::stackmapIntrinsic): Deleted.
(JSC::FTL::Output::frameAddressIntrinsic): Deleted.
(JSC::FTL::Output::patchpointInt64Intrinsic): Deleted.
(JSC::FTL::Output::patchpointVoidIntrinsic): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::probe):

6:26 PM Changeset in webkit [193505] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Fix Value::returnsBool() after r193436
https://bugs.webkit.org/show_bug.cgi?id=151902

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Saam Barati.

I forgot to carry a test from Branch and Select :(

  • b3/B3Value.cpp:

(JSC::B3::Value::returnsBool):

5:48 PM Changeset in webkit [193504] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch/Source/WebCore

Merge r191825. rdar://problem/23732363

5:48 PM Changeset in webkit [193503] by matthew_hanson@apple.com
  • 29 edits
    3 copies
    377 adds in branches/safari-601-branch

Merge r191128. rdar://problem/23732363

5:47 PM Changeset in webkit [193502] by matthew_hanson@apple.com
  • 13 edits in branches/safari-601-branch/Source/WebCore

Merge r190231. rdar://problem/23732363

5:47 PM Changeset in webkit [193501] by matthew_hanson@apple.com
  • 19 edits
    19 adds in branches/safari-601-branch

Merge r190209. rdar://problem/23732363

5:45 PM Changeset in webkit [193500] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

Place an upper bound on canvas pixel count
https://bugs.webkit.org/show_bug.cgi?id=151825
<rdar://problem/23324916>

Reviewed by Simon Fraser.

Malformed JavaScript can attempt to create lots of canvas contexts. Limit the amount of memory
we will use for this purpose to some percentage of system RAM.

  • html/HTMLCanvasElement.cpp:

(WebCore::removeFromActivePixelMemory): Added helper function
(WebCore::HTMLCanvasElement::~HTMLCanvasElement): Call new 'releaseImageBufferAndContext' method
to ensure ImageBuffer and graphics context state are properly cleaned up.
(WebCore::maxActivePixels): Use one quarter of the system RAM, or 1 GB (whichever is more) as
an upper bound on active pixel memory.
(WebCore::HTMLCanvasElement::getContext): If we are attempting to create a context that will cause
us to exceed the allowed active pixel count, fail.
(WebCore::HTMLCanvasElement::releaseImageBufferAndContext): Added helper function
(WebCore::HTMLCanvasElement::setSurfaceSize): Use the new 'releaseImageBufferAndContext' method
to handle active pixel memory counts.
(WebCore::HTMLCanvasElement::createImageBuffer): Refuse to create a backing buffer if it will
exceed our available pixel memory.

5:45 PM Changeset in webkit [193499] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when secondary clicking on a link on yahoo.com
https://bugs.webkit.org/show_bug.cgi?id=151900
rdar://problem/23765149

Reviewed by Beth Dakin.

Don't use +[NSURL URLWithString:] since it doesn't handle invalid URLs as well as WebCore::URL.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::createShareMenuItem):

5:35 PM Changeset in webkit [193498] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix toggling so hidden links are not clickable still.

  • wp-content/themes/webkit/status.php:
5:28 PM Changeset in webkit [193497] by bshafiei@apple.com
  • 5 edits in branches/safari-601-branch/Source

Versioning.

5:23 PM Changeset in webkit [193496] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix another place where feature status internal reference links were wrong.

  • wp-content/themes/webkit/status.php:
5:23 PM Changeset in webkit [193495] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.5.3

New tag.

5:21 PM Changeset in webkit [193494] by beidson@apple.com
  • 9 edits in trunk

Modern IDB: Add some more custom exception messages, passing some more tests.
https://bugs.webkit.org/show_bug.cgi?id=151895

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Some failing tests now pass).

  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::transaction):

  • Modules/indexeddb/client/IDBObjectStoreImpl.cpp:

(WebCore::IDBClient::IDBObjectStore::deleteIndex):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/aborted-versionchange-closes-expected.txt:
  • storage/indexeddb/cursor-continue-dir-expected.txt:
  • storage/indexeddb/cursor-continue-expected.txt:
  • storage/indexeddb/deleteIndex-expected.txt:
  • storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
5:14 PM Changeset in webkit [193493] by commit-queue@webkit.org
  • 8 edits
    4 adds in trunk

[INTL] Implement Number.prototype.toLocaleString in ECMA-402
https://bugs.webkit.org/show_bug.cgi?id=147610

Patch by Andy VanWagoner <thetalecrafter@gmail.com> on 2015-12-04
Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

Add toLocaleString in builtin JavaScript that delegates formatting to Intl.NumberFormat.
Keep exisiting native implementation for use if INTL flag is disabled.

  • CMakeLists.txt: Add NumberPrototype.js.
  • DerivedSources.make: Add NumberPrototype.js.
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • builtins/NumberPrototype.js: Added.

(toLocaleString):

  • runtime/CommonIdentifiers.h: Add private names for Intl constructors.
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init): Expose Intl constructors to builtin js.

  • runtime/NumberPrototype.cpp:

(JSC::NumberPrototype::finishCreation): Replace toLocaleString implementation.

LayoutTests:

Add tests for ECMA-402 Number.prototype.toLocaleString.
Since NumberFormat is not fully implemented, don't test locale-specific behavior yet.

  • js/number-toLocaleString-expected.txt: Added.
  • js/number-toLocaleString.html: Added.
  • js/script-tests/number-toLocaleString.js: Added.
5:06 PM Changeset in webkit [193492] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Fixed feature status internal reference links.

  • wp-content/themes/webkit/status.php:
5:04 PM Changeset in webkit [193491] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

CRASH: CodeBlock::setOptimizationThresholdBasedOnCompilationResult + 567
https://bugs.webkit.org/show_bug.cgi?id=151892

Reviewed by Mark Lam.

When the debugger is in the process of attaching and it recompiles functions
for debugging, there can also be a DFG compilation running concurrently.
When we go to update the optimization threshold and find that the replacement
is also baseline code, we shouldn't update the threshold.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::setOptimizationThresholdBasedOnCompilationResult):

5:00 PM Changeset in webkit [193490] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

4:53 PM Changeset in webkit [193489] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

Crash in clients using userData in
_immediateActionAnimationControllerForHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=151887

Rubber-stamped by Anders Carlsson.

Follow-up fix to handle null userData.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):

4:42 PM Changeset in webkit [193488] by Jon Davis
  • 6 edits in trunk

Update feature status for up-to-date status information.
https://bugs.webkit.org/show_bug.cgi?id=151821

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • features.json:

Source/WebCore:

  • features.json:

Websites/webkit.org:

  • wp-content/themes/webkit/status.php:
4:31 PM Changeset in webkit [193487] by beidson@apple.com
  • 8 edits in trunk

Modern IDB: Flip test expectations around so we only list failures.
https://bugs.webkit.org/show_bug.cgi?id=151880

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Covered by all existing tests).

  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::stop):
(WebCore::IDBClient::IDBRequest::enqueueEvent):
(WebCore::IDBClient::IDBRequest::dispatchEvent):

  • Modules/indexeddb/client/IDBRequestImpl.h:
  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::abortDueToFailedRequest):
(WebCore::IDBClient::IDBTransaction::hasPendingActivity):
(WebCore::IDBClient::IDBTransaction::stop):
(WebCore::IDBClient::IDBTransaction::enqueueEvent):
(WebCore::IDBClient::IDBTransaction::dispatchEvent):

  • Modules/indexeddb/client/IDBTransactionImpl.h:
  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::idbKeyToScriptValue): Protection against a ScriptExecutionContext that no longer has an ExecState.

A full reworking on the binding utilities to prevent this through is covered by b/151890

LayoutTests:

  • platform/mac-wk1/TestExpectations:
4:12 PM Changeset in webkit [193486] by Matt Baker
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: when a marked-dirty subview is attached to a parent View, dirtyDescendantsCount gets out of sync
https://bugs.webkit.org/show_bug.cgi?id=151876

Reviewed by Brian Burg.

  • UserInterface/Views/NewTabContentView.js:

(WebInspector.NewTabContentView.prototype._updateShownTabs):
Removed workaround added in https://bugs.webkit.org/show_bug.cgi?id=151594.

  • UserInterface/Views/View.js:

(WebInspector.View._scheduleLayoutForView):
Always perform a synchronous layout when a view that isn't descended from the
root view schedules a layout.

4:04 PM Changeset in webkit [193485] by sbarati@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

OSR exits that are exception handlers should emit less code eagerly in the thunk generator, and instead, should defer as much code generation as possible to be lazily generated in the exit itself
https://bugs.webkit.org/show_bug.cgi?id=151406

Reviewed by Filip Pizlo.

We no longer emit any extra code eagerly for an OSRExit that
is an exception handler. We emit all code lazily in the exit
itself. This has one interesting consequence which is that the
actual C call to compile the exit goes through an OSR exit generation
thunk that must now be aware of resetting the call frame and the stack
pointer to their proper values before making the compileOSRExit C
call. This has one interesting consequence in the FTL because the
FTL will do a pushToSaveImmediateWithoutTouchingRegisters with the
OSR exit index. We must take care to preserve this exit index when
we reset the stack pointer by re-pushing it onto the stack.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::setJITCode):
(JSC::CodeBlock::jitCode):
(JSC::CodeBlock::jitCodeOffset):
(JSC::CodeBlock::jitType):

  • dfg/DFGCommonData.h:

(JSC::DFG::CommonData::frameRegisterCountOffset):

  • dfg/DFGJITCode.h:

(JSC::DFG::JITCode::setOSREntryBlock):
(JSC::DFG::JITCode::clearOSREntryBlock):
(JSC::DFG::JITCode::commonDataOffset):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompilerCommon.h:

(JSC::DFG::adjustFrameAndStackInOSRExitCompilerThunk):

  • dfg/DFGThunks.cpp:

(JSC::DFG::osrExitGenerationThunkGenerator):

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateDataSection):

  • ftl/FTLExitThunkGenerator.cpp:

(JSC::FTL::ExitThunkGenerator::~ExitThunkGenerator):
(JSC::FTL::ExitThunkGenerator::emitThunk):
(JSC::FTL::ExitThunkGenerator::emitThunks):

  • ftl/FTLExitThunkGenerator.h:

(JSC::FTL::ExitThunkGenerator::didThings):

  • ftl/FTLJITCode.h:

(JSC::FTL::JITCode::commonDataOffset):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):
(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLThunks.cpp:

(JSC::FTL::genericGenerationThunkGenerator):
(JSC::FTL::osrExitGenerationThunkGenerator):
(JSC::FTL::lazySlowPathGenerationThunkGenerator):
(JSC::FTL::registerClobberCheck):

3:52 PM Changeset in webkit [193484] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[Cocoa] Some fonts cause CTFontCopyAvailableTables() to return nullptr
https://bugs.webkit.org/show_bug.cgi?id=151884
<rdar://problem/23752253>

Reviewed by Brian Burg.

No new tests.

  • platform/graphics/opentype/OpenTypeCG.cpp:

(WebCore::OpenType::fontHasMathTable):

3:22 PM Changeset in webkit [193483] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

Crash in clients using userData in
_immediateActionAnimationControllerForHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=151887

Reviewed by Sam Weinig.

Cast this correctly.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):

3:15 PM Changeset in webkit [193482] by jer.noble@apple.com
  • 5 edits in trunk/Source/WebCore

Unreviewed build-fix; Add new parameter to overloaded createSession() method in MediaPlayerPrivateAVFoundationCF.

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp:

(WebCore::CDMSessionAVFoundationCF::CDMSessionAVFoundationCF):

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.h:
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::createSession):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
3:09 PM Changeset in webkit [193481] by barraclough@apple.com
  • 8 edits in trunk/Source/WebKit2

Background state not being tracked correctly for PDFs on iOS
https://bugs.webkit.org/show_bug.cgi?id=151886

Reviewed by Anders Carlson.

The problem here is that when viewing a PDF we don't have an ApplicationStateTracker.
(While we do have a content view - which normally holds the ApplicationStateTracker -
the content view is not in a window, and only has an ApplicationStateTracker while in a
window). For now, let's give the WKPDFView an ApplicationStateTracker of its very own.
In the future we may want to refactor ownership of the ApplicationStateTracker up to
the WKWebView.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _isBackground]):

  • Added, checks background state of content/PDF view.
  • UIProcess/API/Cocoa/WKWebViewInternal.h:
    • expose _isBackground to PageClientImplIOS.
  • UIProcess/ApplicationStateTracker.h:

(WebKit::ApplicationStateTracker::isInBackground):

  • UIProcess/ApplicationStateTracker.mm:

(WebKit::isBackgroundState):
(WebKit::ApplicationStateTracker::ApplicationStateTracker):

  • generalize WKContentView -> UIView, so this may now also be a WKPDFView.
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::isViewVisible):

  • check background state via the WKWebView.
  • UIProcess/ios/WKPDFView.h:
  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView willMoveToWindow:]):
(-[WKPDFView didMoveToWindow]):
(-[WKPDFView isBackground]):
(-[WKPDFView _applicationDidEnterBackground]):
(-[WKPDFView _applicationWillEnterForeground]):

  • added methods to initialize ApplicationStateTracker, access background state, & callbacks to the page proxy.
2:54 PM Changeset in webkit [193480] by fpizlo@apple.com
  • 1 edit
    1 add in trunk/Source/JavaScriptCore

Having a bad time has a really awful time when it runs at the same time as the JIT
https://bugs.webkit.org/show_bug.cgi?id=151882
rdar://problem/23547038

Unreviewed, really adding the test this time.

  • tests/stress/ftl-has-a-bad-time.js: Added.

(foo):

2:41 PM Changeset in webkit [193479] by jer.noble@apple.com
  • 31 edits
    3 copies
    1 add in trunk/Source/WebCore

Adopt AVContentKeySession
https://bugs.webkit.org/show_bug.cgi?id=151221

Reviewed by Eric Carlson.

Adopt a new API for managing key state, AVContentKeySession. Because this necessitates a change
in both the initialization data returned by the needkey event, and passed into the createSession()
method, bump the protocol version number (to 3), and keep supporting the old key management API
for legacy content.

To do so, move most of the implementation of CDMPrivateMediaSourceAVFObjC into a new subclass,
CDMSessionAVStreamSession, and add a new subclass, CDMSessionAVContentKeySession, to support the
new API.

  • platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.h:

(WebCore::CDMPrivateMediaSourceAVFObjC::CDMPrivateMediaSourceAVFObjC): Moved to implementation file.

  • platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm:

(WebCore::validKeySystemRE): Support "com.apple.fps.3_x".
(WebCore::CDMPrivateMediaSourceAVFObjC::~CDMPrivateMediaSourceAVFObjC): Invalidate all outstanding sessions.
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsKeySystem): Only support "com.apple.fps.3_x" if the AVContentKeySession class is available.
(WebCore::CDMPrivateMediaSourceAVFObjC::createSession): Create an instance of CDMSessionAVContentKeySession if "com.apple.fps.3_x" is specified and AVContentKeySession is available.
(WebCore::CDMPrivateMediaSourceAVFObjC::invalidateSession): Remove session from the list of outstanding sessions.
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsMIMEType): Deleted.

  • platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.h: Copied from Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h.

(WebCore::CDMSessionAVContentKeySession::hasContentKeySession): Simple accessor.
(WebCore::toCDMSessionAVContentKeySession): Safe casting.

  • platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm: Added.

(-[CDMSessionAVContentKeySessionDelegate initWithParent:]): Simple constructor.
(-[CDMSessionAVContentKeySessionDelegate invalidate]): Remove reference to parent.
(-[CDMSessionAVContentKeySessionDelegate contentKeySession:willProvideKeyRequestInitializationDataForTrackID:]): Pass to parent.
(-[CDMSessionAVContentKeySessionDelegate contentKeySession:didProvideKeyRequestInitializationData:requestHandling:]): Ditto.
(-[CDMSessionAVContentKeySessionDelegate contentKeySessionContentProtectionSessionIdentifierDidChange:]): Ditto.
(WebCore::CDMSessionAVContentKeySession::CDMSessionAVContentKeySession): Create the delegate.
(WebCore::CDMSessionAVContentKeySession::~CDMSessionAVContentKeySession): Invalidate the delegate and remove all parsers.
(WebCore::CDMSessionAVContentKeySession::isAvailable): Return true if AVContentKeySession class is available.
(WebCore::CDMSessionAVContentKeySession::generateKeyRequest): Support "keyrelease" message, setting of the certificate, and creating key request object.
(WebCore::CDMSessionAVContentKeySession::releaseKeys): Retrieve keys from storage location.
(WebCore::isEqual): Compares a Uint8Array to a char*.
(WebCore::CDMSessionAVContentKeySession::update): Support "acknowledged" message, "renew" message, and key addition.
(WebCore::CDMSessionAVContentKeySession::addParser): Add the parser to the AVContentKeySession.
(WebCore::CDMSessionAVContentKeySession::removeParser): Remove parser from same.
(WebCore::CDMSessionAVContentKeySession::generateKeyReleaseMessage): Retrieve key release message from AVContentKeySession.
(WebCore::CDMSessionAVContentKeySession::didProvideContentKeyRequest): Simple setter.
(WebCore::CDMSessionAVContentKeySession::contentKeySession): Lazily create the AVContentKeySession.

  • platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm:

(WebCore::CDMSessionAVFoundationObjC::CDMSessionAVFoundationObjC):

  • platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.h: Copied from Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h.

(WebCore::toCDMSessionAVStreamSession):

  • platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm: Copied from Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm.

(-[CDMSessionAVStreamSessionObserver initWithParent:]): Moved from CDMSessionMediaSourceAVFObjcObserver.
(-[CDMSessionAVStreamSessionObserver contentProtectionSessionIdentifierChanged:]): Ditto.
(WebCore::CDMSessionAVStreamSession::CDMSessionAVStreamSession): Ditto.
(WebCore::CDMSessionAVStreamSession::~CDMSessionAVStreamSession): Ditto.
(WebCore::CDMSessionAVStreamSession::generateKeyRequest): Ditto.
(WebCore::CDMSessionAVStreamSession::releaseKeys): Ditto.
(WebCore::isEqual): Ditto.
(WebCore::CDMSessionAVStreamSession::update): Ditto.
(WebCore::CDMSessionAVStreamSession::setStreamSession): Ditto.
(WebCore::CDMSessionAVStreamSession::addParser): Ditto.
(WebCore::CDMSessionAVStreamSession::removeParser): Ditto.
(WebCore::CDMSessionAVStreamSession::generateKeyReleaseMessage): Ditto.

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:

(WebCore::CDMSessionMediaSourceAVFObjC::invalidateCDM): Clear the m_cdm.
(WebCore::toCDMSessionMediaSourceAVFObjC):

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:

(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC): Instruct our CDM to invalidate their references to us.
(WebCore::CDMSessionMediaSourceAVFObjC::addSourceBuffer): Call addParser().
(WebCore::CDMSessionMediaSourceAVFObjC::removeSourceBuffer): Call removeParser().
(WebCore::CDMSessionMediaSourceAVFObjC::layerDidReceiveError): Deleted.
(WebCore::CDMSessionMediaSourceAVFObjC::rendererDidReceiveError): Deleted.

To give us a chance to create a CDMPrivate before we continue decoding media data, "block" further decoding
on the background thread by creating a semaphore and passing it to the main thread, to be triggered when
a CDM is created and attached to this source buffer.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(-[WebAVStreamDataParserListener streamDataParser:didProvideContentKeyRequestInitializationData:forTrackID:]):
(WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::willProvideContentKeyRequestInitializationDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::setCDMSession):
(-[WebAVStreamDataParserListener streamDataParserWillProvideContentKeyRequestInitializationData:forTrackID:]): Deleted.

  • platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:

Drive-by fix: Only throw an error from keyRequestTimerFired() if the underlying call to
generateKeyRequest() returned an error, rather than just failed to create a message.

  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::keyRequestTimerFired):

Drive-by fix: Pass the CDMSessionClient into CDM::createSession() so that it is immediately available
in the CDMSessionPrivate constructor, rather than setting the client immediately after construction.

  • Modules/encryptedmedia/CDM.cpp:

(WebCore::CDM::createSession):

  • Modules/encryptedmedia/CDM.h:
  • Modules/encryptedmedia/CDMPrivate.h:
  • Modules/encryptedmedia/CDMPrivateClearKey.cpp:

(WebCore::CDMPrivateClearKey::createSession):

  • Modules/encryptedmedia/CDMPrivateClearKey.h:
  • Modules/encryptedmedia/CDMPrivateMediaPlayer.cpp:

(WebCore::CDMPrivateMediaPlayer::createSession):

  • Modules/encryptedmedia/CDMPrivateMediaPlayer.h:
  • Modules/encryptedmedia/CDMSessionClearKey.cpp:

(WebCore::CDMSessionClearKey::CDMSessionClearKey):

  • Modules/encryptedmedia/CDMSessionClearKey.h:
  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::MediaKeySession):

  • platform/graphics/CDMSession.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::createSession):

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::createSession):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createSession):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cdmSession):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setCDMSession):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::keyNeeded): Deleted.

  • testing/MockCDM.cpp:

(WebCore::MockCDM::createSession):
(WebCore::MockCDMSession::MockCDMSession):

  • testing/MockCDM.h:

Add new files to the project:

  • WebCore.xcodeproj/project.pbxproj:
2:38 PM Changeset in webkit [193478] by matthew_hanson@apple.com
  • 18 edits
    7 adds in branches/safari-601-branch

Merge r191452. rdar://problem/23732400

2:38 PM Changeset in webkit [193477] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r192190. rdar://problem/23732407

2:38 PM Changeset in webkit [193476] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebKit2

Merge r191409. rdar://problem/23732400

2:38 PM Changeset in webkit [193475] by matthew_hanson@apple.com
  • 17 edits in branches/safari-601-branch/Source/WebKit2

Merge r191309. rdar://problem/23732400

2:38 PM Changeset in webkit [193474] by matthew_hanson@apple.com
  • 5 edits
    3 adds in branches/safari-601-branch

Merge r191072. rdar://problem/23732400

2:38 PM Changeset in webkit [193473] by matthew_hanson@apple.com
  • 4 edits
    2 adds in branches/safari-601-branch

Merge r190595. rdar://problem/23732402

2:37 PM Changeset in webkit [193472] by matthew_hanson@apple.com
  • 8 edits
    2 adds in branches/safari-601-branch

Merge r190446. rdar://problem/23732367

2:28 PM Changeset in webkit [193471] by mark.lam@apple.com
  • 14 edits
    7 adds in trunk/Source/JavaScriptCore

Snippefy bitwise operators for the baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=151680

Reviewed by Geoffrey Garen.

This patch has passed the JSC tests on x86 and x86_64. It has also passed the
layout tests on x86_64.

With the DFG enabled, perf is neutral on x86_64 and x86.
With the DFG disabled on x86_64, some AsmBench tests are showing progressions e.g.

gcc-loops.cpp 1.0269x faster
stepanov_container.cpp 1.0180x faster

With the DFG disabled on x86, perf is neutral.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::moveValueRegs):
(JSC::AssemblyHelpers::branchIfNotInt32):

  • jit/JIT.h:
  • jit/JITArithmetic.cpp:

(JSC::JIT::emitBitwiseBinaryOpFastPath):

  • Template for the bitwise operations.

(JSC::JIT::emit_op_bitand):
(JSC::JIT::emit_op_bitor):
(JSC::JIT::emit_op_bitxor):

  • Specializes emitBitwiseBinaryOpFastPath() with the respective snippet generators.

(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emitSlow_op_bitxor):

  • Implement respective slow paths.
  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_op_bitand): Deleted.
(JSC::JIT::emitSlow_op_bitand): Deleted.
(JSC::JIT::emit_op_bitor): Deleted.
(JSC::JIT::emitSlow_op_bitor): Deleted.
(JSC::JIT::emit_op_bitxor): Deleted.
(JSC::JIT::emitSlow_op_bitxor): Deleted.

  • Now unified with the 64-bit version using snippets.
  • jit/JITBitAndGenerator.cpp: Added.

(JSC::JITBitAndGenerator::generateFastPath):

  • jit/JITBitAndGenerator.h: Added.

(JSC::JITBitAndGenerator::JITBitAndGenerator):

  • jit/JITBitOrGenerator.cpp: Added.

(JSC::JITBitOrGenerator::generateFastPath):

  • jit/JITBitOrGenerator.h: Added.

(JSC::JITBitOrGenerator::JITBitOrGenerator):

  • jit/JITBitXorGenerator.cpp: Added.

(JSC::JITBitXorGenerator::generateFastPath):

  • jit/JITBitXorGenerator.h: Added.

(JSC::JITBitXorGenerator::JITBitXorGenerator):

  • jit/JITBitwiseBinaryOpGenerator.h: Added.

(JSC::JITBitwiseBinaryOpGenerator::JITBitwiseBinaryOpGenerator):
(JSC::JITBitwiseBinaryOpGenerator::didEmitFastPath):
(JSC::JITBitwiseBinaryOpGenerator::endJumpList):
(JSC::JITBitwiseBinaryOpGenerator::slowPathJumpList):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_bitxor): Deleted.
(JSC::JIT::emit_op_bitor): Deleted.
(JSC::JIT::emitSlow_op_bitxor): Deleted.
(JSC::JIT::emitSlow_op_bitor): Deleted.

  • jit/SnippetOperand.h:

(JSC::SnippetOperand::SnippetOperand):

  • tests/stress/op_bitand.js:
  • tests/stress/op_bitor.js:
  • tests/stress/op_bitxor.js:
  • Fix a test value typo: it's supposed to be 0x7fffffff, not 0x7ffffff.
2:25 PM Changeset in webkit [193470] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Having a bad time has a really awful time when it runs at the same time as the JIT
https://bugs.webkit.org/show_bug.cgi?id=151882
rdar://problem/23547038

Reviewed by Geoffrey Garen.

The DFG's use of watchpoints for havingABadTime goes back a long time. We introduced this feature
when we first introduced watchpoints. That left it open to a lot of bitrot. On top of that, this
code doesn't get tested much because having a bad time is not something that is really supposed to
happen.

Well, now I've got reports that it does happen - or at least, we know that it is because of
crashes in an assertion that could only be triggered if a bad time was had. In the meantime, we
added two new features without adequately testing havingABadTime: concurrent JIT and FTL.
Concurrency means that we have to worry about the havingABadTime watchpoint triggering during
compilation. FTL means that we have new code and new optimizations that needs to deal with this
feature correctly.

The bug can arise via race condition or just goofy profiling. As in the newly added test, we could
first profile an allocation thinking that it will allocate sane arrays. Then we might have a bad
time, and then compile that function with the FTL. The ByteCodeParser will represent the
allocation with a NewArray node that has a sane indexingType(). But when we go to lower the Node,
we observe that the Structure* that the JSGlobalObject tells us to use has a different indexing
type. This is a feature of havingABadTime that the DFG knew about, but the FTL didn't. The FTL
didn't know about it because we didn't have adequate tests, and this code rarely gets triggered in
the wild. So, the FTL had a silly assertion that the indexing types match. They absolutely don't
have to match.

There is another bug, a race condition, that remains even if we remove the bad assertion. We set
the havingABadTime watchpoint late in compilation, and we do it based on whether the watchpoint is
still OK. This means that we could parse a function before we have a bad time and then do
optimizations (for example in AbstractInterpreter) like proving that the structure set associated
with the value returned by the NewArray is the one with a sane indexing type. Then, after those
optimizations have already been done, we will go to set the watchpoint. But just as we are doing
this, we could haveABadTime on the main thread. Currently this sort of almost works because
having a bad time requires doing a GC, and we can't GC until the watchpoint collection phase. But
that feels too fragile. So, this phase moves the setting of the watchpoint to the FixupPhase. This
is consistent with our long-term goal of removing the WatchpointCollectionPhase. Moving this to
FixupPhase means that we set the watchpoint before doing any optimizations. So, if having a bad
time happens before the FixupPhase then all optimizations will agree that we're having a bad time
and so everything is fine; if we have a bad time after FixupPhase then we will cancel the
compilation anyway.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::watchHavingABadTime):
(JSC::DFG::FixupPhase::createToString):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIndexingType):
(JSC::DFG::Node::indexingType):

  • dfg/DFGWatchpointCollectionPhase.cpp:

(JSC::DFG::WatchpointCollectionPhase::handle):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileNewArray):
(JSC::FTL::DFG::LowerDFGToLLVM::compileNewArrayBuffer):

  • tests/stress/ftl-has-a-bad-time.js: Added.
2:15 PM Changeset in webkit [193469] by timothy@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebInspectorUI

<rdar://problem/23764741> REGRESSION: Recording does not show the progress till the recording is stopped.

Fix a merge issue where variable names did not match and was causing an exception.

  • UserInterface/Models/ScriptTimelineRecord.js:
  • UserInterface/Views/TimelineRecordTreeElement.js:

(WebInspector.TimelineRecordTreeElement):

1:57 PM Changeset in webkit [193468] by Antti Koivisto
  • 8 edits
    2 moves in trunk/Source/WebKit2

Rename WebResourceLoadScheduler to WebLoaderStrategy
https://bugs.webkit.org/show_bug.cgi?id=151854

Reviewed by Anders Carlsson.

It implements WebCore::LoaderStrategy and doesn't do any scheduling.

  • CMakeLists.txt:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):

  • WebProcess/Network/WebLoaderStrategy.cpp: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp.

(WebKit::WebLoaderStrategy::WebLoaderStrategy):
(WebKit::WebLoaderStrategy::~WebLoaderStrategy):
(WebKit::WebLoaderStrategy::loadResource):
(WebKit::WebLoaderStrategy::schedulePluginStreamLoad):
(WebKit::maximumBufferingTime):
(WebKit::WebLoaderStrategy::scheduleLoad):
(WebKit::WebLoaderStrategy::scheduleInternallyFailedLoad):
(WebKit::WebLoaderStrategy::internallyFailedLoadTimerFired):
(WebKit::WebLoaderStrategy::startLocalLoad):
(WebKit::WebLoaderStrategy::remove):
(WebKit::WebLoaderStrategy::setDefersLoading):
(WebKit::WebLoaderStrategy::crossOriginRedirectReceived):
(WebKit::WebLoaderStrategy::servePendingRequests):
(WebKit::WebLoaderStrategy::suspendPendingRequests):
(WebKit::WebLoaderStrategy::resumePendingRequests):
(WebKit::WebLoaderStrategy::networkProcessCrashed):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::createPingHandle):
(WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler): Deleted.
(WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler): Deleted.
(WebKit::WebResourceLoadScheduler::loadResource): Deleted.
(WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad): Deleted.
(WebKit::WebResourceLoadScheduler::scheduleLoad): Deleted.
(WebKit::WebResourceLoadScheduler::scheduleInternallyFailedLoad): Deleted.
(WebKit::WebResourceLoadScheduler::internallyFailedLoadTimerFired): Deleted.
(WebKit::WebResourceLoadScheduler::startLocalLoad): Deleted.
(WebKit::WebResourceLoadScheduler::remove): Deleted.
(WebKit::WebResourceLoadScheduler::setDefersLoading): Deleted.
(WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): Deleted.
(WebKit::WebResourceLoadScheduler::servePendingRequests): Deleted.
(WebKit::WebResourceLoadScheduler::suspendPendingRequests): Deleted.
(WebKit::WebResourceLoadScheduler::resumePendingRequests): Deleted.
(WebKit::WebResourceLoadScheduler::networkProcessCrashed): Deleted.
(WebKit::WebResourceLoadScheduler::loadResourceSynchronously): Deleted.
(WebKit::WebResourceLoadScheduler::createPingHandle): Deleted.

  • WebProcess/Network/WebLoaderStrategy.h: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.h.

(WebKit::WebLoaderStrategy::webResourceLoaderForIdentifier):
(WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier): Deleted.

  • WebProcess/Network/WebResourceLoadScheduler.cpp: Removed.
  • WebProcess/Network/WebResourceLoadScheduler.h: Removed.
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::Stream::start):
(WebKit::PluginView::Stream::cancel):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::createLoaderStrategy):
(WebKit::WebPlatformStrategies::createPasteboardStrategy):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::networkProcessConnectionClosed):
(WebKit::WebProcess::webLoaderStrategy):
(WebKit::WebProcess::webResourceLoadScheduler): Deleted.

  • WebProcess/WebProcess.h:
1:01 PM Changeset in webkit [193467] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r192391. rdar://problem/23221163

1:01 PM Changeset in webkit [193466] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r191397. rdar://problem/23221163

1:01 PM Changeset in webkit [193465] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r188976. rdar://problem/23221163

1:01 PM Changeset in webkit [193464] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r188656. rdar://problem/23221163

1:01 PM Changeset in webkit [193463] by timothy@apple.com
  • 5 edits in branches/safari-601-branch

Merge r187897. rdar://problem/23221163

12:54 PM Changeset in webkit [193462] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r192391. rdar://problem/23581597

12:54 PM Changeset in webkit [193461] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r191397. rdar://problem/23581597

12:54 PM Changeset in webkit [193460] by timothy@apple.com
  • 10 edits
    2 adds in branches/safari-601.1.46-branch

Merge r191355. rdar://problem/23581597

12:54 PM Changeset in webkit [193459] by timothy@apple.com
  • 7 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r190542. rdar://problem/23581597

12:54 PM Changeset in webkit [193458] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r189415. rdar://problem/23581597

12:54 PM Changeset in webkit [193457] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188976. rdar://problem/23581597

12:54 PM Changeset in webkit [193456] by timothy@apple.com
  • 22 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188965. rdar://problem/23581597

12:53 PM Changeset in webkit [193455] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188897. rdar://problem/23581597

12:53 PM Changeset in webkit [193454] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188656. rdar://problem/23581597

12:53 PM Changeset in webkit [193453] by timothy@apple.com
  • 7 edits in branches/safari-601.1.46-branch

Merge r188403. rdar://problem/23581597

12:53 PM Changeset in webkit [193452] by timothy@apple.com
  • 5 edits in branches/safari-601.1.46-branch

Merge r187897. rdar://problem/23581597

12:53 PM Changeset in webkit [193451] by timothy@apple.com
  • 4 edits
    3 adds in branches/safari-601.1.46-branch

Merge r192592. rdar://problem/23581597

12:53 PM Changeset in webkit [193450] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r192585. rdar://problem/23581597

12:53 PM Changeset in webkit [193449] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188222. rdar://problem/23581597

12:53 PM Changeset in webkit [193448] by timothy@apple.com
  • 4 edits
    2 adds
    2 deletes in branches/safari-601.1.46-branch

Merge r186891. rdar://problem/23581597

12:53 PM Changeset in webkit [193447] by timothy@apple.com
  • 11 edits in branches/safari-601.1.46-branch/Source

Merge r191967. rdar://problem/23581597

12:52 PM Changeset in webkit [193446] by timothy@apple.com
  • 10 edits in branches/safari-601.1.46-branch/Source

Merge r191732. rdar://problem/23581597

12:52 PM Changeset in webkit [193445] by timothy@apple.com
  • 14 edits in branches/safari-601.1.46-branch/Source

Merge r191651. rdar://problem/23581597

12:52 PM Changeset in webkit [193444] by timothy@apple.com
  • 15 edits
    4 adds in branches/safari-601.1.46-branch

Merge r189104. rdar://problem/23581597

12:52 PM Changeset in webkit [193443] by timothy@apple.com
  • 17 edits
    11 adds in branches/safari-601.1.46-branch

Merge r189002. rdar://problem/23581597

12:52 PM Changeset in webkit [193442] by timothy@apple.com
  • 17 edits
    4 adds in branches/safari-601.1.46-branch

Merge r188631. rdar://problem/23581597

12:51 PM Changeset in webkit [193441] by timothy@apple.com
  • 25 edits
    6 adds in branches/safari-601.1.46-branch

Merge r187496. rdar://problem/23581597

12:51 PM Changeset in webkit [193440] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188227. rdar://problem/23581597

12:51 PM Changeset in webkit [193439] by timothy@apple.com
  • 17 edits
    2 adds in branches/safari-601.1.46-branch

Merge r187249. rdar://problem/23581597

12:51 PM Changeset in webkit [193438] by timothy@apple.com
  • 9 edits
    2 adds in branches/safari-601.1.46-branch

Merge r187211. rdar://problem/23581597

12:32 PM Changeset in webkit [193437] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

[JSC] Use Div and ChillDiv in FTL(B3)Output
https://bugs.webkit.org/show_bug.cgi?id=151844

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Geoffrey Garen.

I copied part of the code of compileArithDiv()
to create a new function FTLOutput::childDiv().

With childDiv() being a concept of FTLOutput,
FTLB3Output was updated accordingly.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::div):
(JSC::FTL::Output::chillDiv):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileArithDiv):

  • ftl/FTLOutput.cpp:

(JSC::FTL::Output::chillDiv):

  • ftl/FTLOutput.h:
12:31 PM Changeset in webkit [193436] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[JSC] Extend the strength reduction of B3's BitAnd with booleans
https://bugs.webkit.org/show_bug.cgi?id=151852

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Saam Barati.

1) Masking a boolean with any pattern that has the lsb set

remains a boolean.

2) ReduceStrength on that particular pattern of BitAnd.

  • b3/B3ReduceStrength.cpp:
  • b3/B3Value.cpp:

(JSC::B3::Value::returnsBool):

  • b3/testb3.cpp:

(JSC::B3::testBitAndWithMaskReturnsBooleans):
(JSC::B3::run):

12:29 PM Changeset in webkit [193435] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Add doubleRem() to FTLB3Output
https://bugs.webkit.org/show_bug.cgi?id=151851

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Geoffrey Garen.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::doubleRem):

12:27 PM Changeset in webkit [193434] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[JSC] Add signExt() to FTLB3Output
https://bugs.webkit.org/show_bug.cgi?id=151853

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Geoffrey Garen.

Rename signExt() to signExt32To64(). This is just to separate
it explicitly from the remaining signExt() used inside FTLOutput.

Then use the SExt32 for implementing that in B3.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::signExt32To64):
(JSC::FTL::Output::signExt): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileInt52Rep):
(JSC::FTL::DFG::LowerDFGToLLVM::compileGetDirectPname):
(JSC::FTL::DFG::LowerDFGToLLVM::strictInt52ToInt32):
(JSC::FTL::DFG::LowerDFGToLLVM::strictInt52ToJSValue):
(JSC::FTL::DFG::LowerDFGToLLVM::jsValueToStrictInt52):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::signExt32To64):
(JSC::FTL::Output::signExt):

12:15 PM Changeset in webkit [193433] by beidson@apple.com
  • 4 edits in trunk

Modern IDB: storage/indexeddb/cursor-update.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151879

Reviewed by Oliver Hunt.

Source/WebCore:

No new tests (At least one failing test now passes).

  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::IDBRequest):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
11:53 AM Changeset in webkit [193432] by BJ Burg
  • 15 edits in trunk/Source/WebInspectorUI

Web Inspector: support runtime registration of tab type associations
https://bugs.webkit.org/show_bug.cgi?id=151594

Reviewed by Joseph Pecoraro.

We want to add special tabs that only exist in engineering builds
for debugging purposes. Though the relevant models and views can be
put in the Debug/ directory to exclude them from production builds,
there's no way to register tabs conditionally at runtime; tabs are
hardcoded.

This patch makes it possible to register new tab types at runtime.
First, WebInspector keeps a map of known, registered tab classes.
Details that were hardcoded before---whether to show in New Tab,
whether a tab can be instantiated given the active domains, UI text,
etc.---are now static methods on the base TabContentView or overidden
in its subclasses. Lastly, a public method allows code in Bootstrap.js
to register tabs at runtime. Doing so sends a notification so the
NewTabContentView can show the newly available tab item.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded):
(WebInspector.isTabTypeAllowed):
(WebInspector.knownTabClasses): Added, used by NewTabContentView.
(WebInspector._createTabContentViewForType): Renamed from _tabContentViewForType.
(WebInspector._rememberOpenTabs):
(WebInspector._updateNewTabButtonState):
(WebInspector._tryToRestorePendingTabs): Added.

Whenever a new tab is registered, try to restore pending tabs, since
an extra tab won't be added initially when production tabs are added.
But, it could have been saved in the Setting for opened tabs.

(WebInspector.showNewTabTab):
(WebInspector.isNewTabWithTypeAllowed):
(WebInspector.createNewTabWithType):
(WebInspector._tabContentViewForType): Deleted.

  • UserInterface/Base/Object.js:
  • UserInterface/Views/ConsoleTabContentView.js:

(WebInspector.ConsoleTabContentView):
(WebInspector.ConsoleTabContentView.tabInfo): Added.

  • UserInterface/Views/DebuggerTabContentView.js:

(WebInspector.DebuggerTabContentView):
(WebInspector.DebuggerTabContentView.tabInfo): Added.

  • UserInterface/Views/ElementsTabContentView.js:

(WebInspector.ElementsTabContentView):
(WebInspector.ElementsTabContentView.tabInfo): Added.
(WebInspector.ElementsTabContentView.isTabAllowed): Added.

  • UserInterface/Views/NetworkTabContentView.js:

(WebInspector.NetworkTabContentView):
(WebInspector.NetworkTabContentView.tabInfo): Added.
(WebInspector.NetworkTabContentView.isTabAllowed): Added.

  • UserInterface/Views/NewTabContentView.js:

Keep a list of shown tab items, so we don't have to query the DOM
to update enabled/disabled state. Put tree construction inside a
layout() override and dirty the view whenever known tab types change.

(WebInspector.NewTabContentView):
(WebInspector.NewTabContentView.tabInfo): Added.
(WebInspector.NewTabContentView.isEphemeral): Added.
(WebInspector.NewTabContentView.shouldSaveTab): Added.
(WebInspector.NewTabContentView.prototype.layout): Added.
(WebInspector.NewTabContentView.prototype._updateShownTabs): Added.
(WebInspector.NewTabContentView.prototype._allowableTabTypes):
(WebInspector.NewTabContentView.prototype._updateTabItems):
(WebInspector.NewTabContentView.prototype.get tabItemElements): Deleted.

  • UserInterface/Views/ResourcesTabContentView.js:

(WebInspector.ResourcesTabContentView):
(WebInspector.ResourcesTabContentView.tabInfo): Added.

  • UserInterface/Views/SearchTabContentView.js:

(WebInspector.SearchTabContentView):
(WebInspector.SearchTabContentView.tabInfo): Added.
(WebInspector.SearchTabContentView.isEphemeral): Added.

  • UserInterface/Views/SettingsTabContentView.js:

(WebInspector.SettingsTabContentView.isTabAllowed): Added.
(WebInspector.SettingsTabContentView.shouldSaveTab): Added.

  • UserInterface/Views/StorageTabContentView.js:

(WebInspector.StorageTabContentView):
(WebInspector.StorageTabContentView.tabInfo): Added.
(WebInspector.StorageTabContentView.isTabAllowed): Added.

  • UserInterface/Views/TabBrowser.js:

(WebInspector.TabBrowser.showTabForContentView):

Add a workaround for <https://webkit.org/b/151876>. This bug is
revealed by the changes to NewTabContentView in this patch.

  • UserInterface/Views/TabContentView.js:

(WebInspector.TabContentView.isTabAllowed): Added.
(WebInspector.TabContentView.isEphemeral): Added.
(WebInspector.TabContentView.shouldSaveTab): Added.

  • UserInterface/Views/TimelineTabContentView.js:

(WebInspector.TimelineTabContentView):
(WebInspector.TimelineTabContentView.tabInfo): Added.
(WebInspector.TimelineTabContentView.isTabAllowed): Added.

11:41 AM Changeset in webkit [193431] by beidson@apple.com
  • 6 edits
    2 adds in trunk

Modern IDB: storage/indexeddb/version-change-exclusive.html fails
https://bugs.webkit.org/show_bug.cgi?id=151870

Reviewed by Alex Christensen.

Source/WebCore:

Test: storage/indexeddb/modern/double-open.html

storage/indexeddb/version-change-exclusive.html

  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::openDatabaseConnection): Delay handling open operations

while the first is still in progress.

(WebCore::IDBServer::UniqueIDBDatabase::didOpenBackingStore):

  • Modules/indexeddb/server/UniqueIDBDatabase.h:

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/modern/double-open-expected.txt: Added.
  • storage/indexeddb/modern/double-open.html: Added.
  • storage/indexeddb/version-change-exclusive-expected.txt:
11:23 AM Changeset in webkit [193430] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Added redirects for old webkit.org archive.

  • .htaccess:
11:20 AM Changeset in webkit [193429] by Jon Davis
  • 1 edit
    9 deletes in trunk/Websites/webkit.org

Removing empty directories from the old site.

Reviewed by Timothy Hatcher.

  • blog: Removed.
  • blog/wp-admin: Removed.
  • blog/wp-admin/css: Removed.
  • blog/wp-admin/css/colors: Removed.
  • blog/wp-admin/css/colors/blue: Removed.
  • blog/wp-admin/css/colors/coffee: Removed.
  • blog/wp-admin/css/colors/ectoplasm: Removed.
  • blog/wp-admin/css/colors/light: Removed.
  • blog/wp-admin/css/colors/midnight: Removed.
  • blog/wp-admin/css/colors/ocean: Removed.
  • blog/wp-admin/css/colors/sunrise: Removed.
  • blog/wp-admin/images: Removed.
  • blog/wp-admin/includes: Removed.
  • blog/wp-admin/js: Removed.
  • blog/wp-admin/maint: Removed.
  • blog/wp-admin/network: Removed.
  • blog/wp-admin/user: Removed.
  • blog/wp-content: Removed.
  • blog/wp-content/plugins: Removed.
  • blog/wp-content/plugins/akismet: Removed.
  • blog/wp-content/themes: Removed.
  • blog/wp-content/themes/classic: Removed.
  • blog/wp-content/themes/default: Removed.
  • blog/wp-content/themes/default/images: Removed.
  • blog/wp-content/themes/webkit: Removed.
  • blog/wp-content/uploads: Removed.
  • blog/wp-content/uploads/2007: Removed.
  • blog/wp-content/uploads/2007/06: Removed.
  • blog/wp-includes: Removed.
  • blog/wp-includes/ID3: Removed.
  • blog/wp-includes/SimplePie: Removed.
  • blog/wp-includes/SimplePie/Cache: Removed.
  • blog/wp-includes/SimplePie/Content: Removed.
  • blog/wp-includes/SimplePie/Content/Type: Removed.
  • blog/wp-includes/SimplePie/Decode: Removed.
  • blog/wp-includes/SimplePie/Decode/HTML: Removed.
  • blog/wp-includes/SimplePie/HTTP: Removed.
  • blog/wp-includes/SimplePie/Net: Removed.
  • blog/wp-includes/SimplePie/Parse: Removed.
  • blog/wp-includes/SimplePie/XML: Removed.
  • blog/wp-includes/SimplePie/XML/Declaration: Removed.
  • blog/wp-includes/Text: Removed.
  • blog/wp-includes/Text/Diff: Removed.
  • blog/wp-includes/Text/Diff/Engine: Removed.
  • blog/wp-includes/Text/Diff/Renderer: Removed.
  • blog/wp-includes/certificates: Removed.
  • blog/wp-includes/css: Removed.
  • blog/wp-includes/fonts: Removed.
  • blog/wp-includes/images: Removed.
  • blog/wp-includes/images/crystal: Removed.
  • blog/wp-includes/images/media: Removed.
  • blog/wp-includes/images/smilies: Removed.
  • blog/wp-includes/images/wlw: Removed.
  • blog/wp-includes/js: Removed.
  • blog/wp-includes/js/crop: Removed.
  • blog/wp-includes/js/imgareaselect: Removed.
  • blog/wp-includes/js/jcrop: Removed.
  • blog/wp-includes/js/jquery: Removed.
  • blog/wp-includes/js/jquery/ui: Removed.
  • blog/wp-includes/js/mediaelement: Removed.
  • blog/wp-includes/js/plupload: Removed.
  • blog/wp-includes/js/scriptaculous: Removed.
  • blog/wp-includes/js/swfupload: Removed.
  • blog/wp-includes/js/swfupload/plugins: Removed.
  • blog/wp-includes/js/thickbox: Removed.
  • blog/wp-includes/js/tinymce: Removed.
  • blog/wp-includes/js/tinymce/langs: Removed.
  • blog/wp-includes/js/tinymce/plugins: Removed.
  • blog/wp-includes/js/tinymce/plugins/charmap: Removed.
  • blog/wp-includes/js/tinymce/plugins/colorpicker: Removed.
  • blog/wp-includes/js/tinymce/plugins/compat3x: Removed.
  • blog/wp-includes/js/tinymce/plugins/compat3x/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/directionality: Removed.
  • blog/wp-includes/js/tinymce/plugins/fullscreen: Removed.
  • blog/wp-includes/js/tinymce/plugins/hr: Removed.
  • blog/wp-includes/js/tinymce/plugins/image: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups/skins: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/lists: Removed.
  • blog/wp-includes/js/tinymce/plugins/media: Removed.
  • blog/wp-includes/js/tinymce/plugins/media/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/media/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/paste: Removed.
  • blog/wp-includes/js/tinymce/plugins/paste/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/classes: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/classes/utils: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/includes: Removed.
  • blog/wp-includes/js/tinymce/plugins/tabfocus: Removed.
  • blog/wp-includes/js/tinymce/plugins/textcolor: Removed.
  • blog/wp-includes/js/tinymce/plugins/wordpress: Removed.
  • blog/wp-includes/js/tinymce/plugins/wordpress/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wordpress/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpautoresize: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpdialogs: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpdialogs/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpemoji: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpfullscreen: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpfullscreen/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpgallery: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpgallery/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpview: Removed.
  • blog/wp-includes/js/tinymce/skins: Removed.
  • blog/wp-includes/js/tinymce/skins/lightgray: Removed.
  • blog/wp-includes/js/tinymce/skins/lightgray/fonts: Removed.
  • blog/wp-includes/js/tinymce/skins/lightgray/img: Removed.
  • blog/wp-includes/js/tinymce/skins/wordpress: Removed.
  • blog/wp-includes/js/tinymce/skins/wordpress/images: Removed.
  • blog/wp-includes/js/tinymce/themes: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/img: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/js: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/default: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/default/img: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/highcontrast: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/o2k7: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/wp_theme: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img: Removed.
  • blog/wp-includes/js/tinymce/themes/modern: Removed.
  • blog/wp-includes/js/tinymce/utils: Removed.
  • blog/wp-includes/pomo: Removed.
  • blog/wp-includes/theme-compat: Removed.
  • building: Removed.
  • coding: Removed.
  • coding/images: Removed.
  • css: Removed.
  • images: Removed.
  • misc: Removed.
  • misc/DatabaseExample.html: Removed.
  • misc/DatabaseTester.html: Removed.
  • misc/WebKitDetect.html: Removed.
  • misc/WebKitDetect.js: Removed.
  • misc/drosera: Removed.
  • misc/drosera/demo.js: Removed.
  • misc/drosera/drosera.png: Removed.
  • misc/drosera/index.html: Removed.
  • misc/gradient-input.html: Removed.
  • misc/morph.html: Removed.
  • misc/related-target-and-shadow-dom.svg: Removed.
  • projects: Removed.
  • projects/accessibility: Removed.
  • projects/cleanup: Removed.
  • projects/compat: Removed.
  • projects/css: Removed.
  • projects/documentation: Removed.
  • projects/dom: Removed.
  • projects/editing: Removed.
  • projects/forms: Removed.
  • projects/html: Removed.
  • projects/javascript: Removed.
  • projects/layout: Removed.
  • projects/mathml: Removed.
  • projects/performance: Removed.
  • projects/plugins: Removed.
  • projects/portability: Removed.
  • projects/printing: Removed.
  • projects/svg: Removed.
  • projects/webkit: Removed.
  • projects/xml: Removed.
  • projects/xslt: Removed.
  • quality: Removed.
  • security: Removed.
11:07 AM Changeset in webkit [193428] by beidson@apple.com
  • 74 edits
    19 copies
    35 adds in trunk

Modern IDB: storage/indexeddb/exceptions.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151732

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (At least one failing test now passes).

  • Lots of customized exception messages for IDB code to match the text expectations.
  • Updates to the test expectations where we can't/won't match them exactly.
  • And a couple of little required behavior changes exposed by the test
  • Modules/indexeddb/IDBCursor.h:
  • Modules/indexeddb/IDBCursor.idl:
  • Modules/indexeddb/IDBDatabase.h:
  • Modules/indexeddb/IDBDatabase.idl:
  • Modules/indexeddb/IDBDatabaseException.cpp:

(WebCore::IDBDatabaseException::initializeDescription):

  • Modules/indexeddb/IDBFactory.h:
  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBIndex.h:
  • Modules/indexeddb/IDBIndex.idl:
  • Modules/indexeddb/IDBObjectStore.h:
  • Modules/indexeddb/IDBObjectStore.idl:
  • Modules/indexeddb/IDBRequest.h:
  • Modules/indexeddb/IDBRequest.idl:
  • Modules/indexeddb/IDBTransaction.h:
  • Modules/indexeddb/IDBTransaction.idl:
  • Modules/indexeddb/client/IDBCursorImpl.cpp:

(WebCore::IDBClient::IDBCursor::update):
(WebCore::IDBClient::IDBCursor::advance):
(WebCore::IDBClient::IDBCursor::continueFunction):
(WebCore::IDBClient::IDBCursor::deleteFunction):

  • Modules/indexeddb/client/IDBCursorImpl.h:
  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::createObjectStore):
(WebCore::IDBClient::IDBDatabase::transaction):
(WebCore::IDBClient::IDBDatabase::deleteObjectStore):

  • Modules/indexeddb/client/IDBDatabaseImpl.h:
  • Modules/indexeddb/client/IDBFactoryImpl.cpp:

(WebCore::IDBClient::IDBFactory::cmp):

  • Modules/indexeddb/client/IDBFactoryImpl.h:
  • Modules/indexeddb/client/IDBIndexImpl.cpp:

(WebCore::IDBClient::IDBIndex::openCursor):
(WebCore::IDBClient::IDBIndex::count):
(WebCore::IDBClient::IDBIndex::doCount):
(WebCore::IDBClient::IDBIndex::openKeyCursor):
(WebCore::IDBClient::IDBIndex::get):
(WebCore::IDBClient::IDBIndex::doGet):
(WebCore::IDBClient::IDBIndex::getKey):
(WebCore::IDBClient::IDBIndex::doGetKey):

  • Modules/indexeddb/client/IDBIndexImpl.h:
  • Modules/indexeddb/client/IDBObjectStoreImpl.cpp:

(WebCore::IDBClient::IDBObjectStore::openCursor):
(WebCore::IDBClient::IDBObjectStore::get):
(WebCore::IDBClient::IDBObjectStore::add):
(WebCore::IDBClient::IDBObjectStore::put):
(WebCore::IDBClient::IDBObjectStore::putForCursorUpdate):
(WebCore::IDBClient::IDBObjectStore::putOrAdd):
(WebCore::IDBClient::IDBObjectStore::deleteFunction):
(WebCore::IDBClient::IDBObjectStore::clear):
(WebCore::IDBClient::IDBObjectStore::createIndex):
(WebCore::IDBClient::IDBObjectStore::index):
(WebCore::IDBClient::IDBObjectStore::deleteIndex):
(WebCore::IDBClient::IDBObjectStore::count):
(WebCore::IDBClient::IDBObjectStore::doCount):

  • Modules/indexeddb/client/IDBObjectStoreImpl.h:
  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::result):
(WebCore::IDBClient::IDBRequest::error):

  • Modules/indexeddb/client/IDBRequestImpl.h:
  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::objectStore):
(WebCore::IDBClient::IDBTransaction::abortDueToFailedRequest):
(WebCore::IDBClient::IDBTransaction::abort):

  • Modules/indexeddb/client/IDBTransactionImpl.h:
  • Modules/indexeddb/legacy/LegacyCursor.cpp:

(WebCore::LegacyCursor::update):
(WebCore::LegacyCursor::continueFunction):
(WebCore::LegacyCursor::deleteFunction):

  • Modules/indexeddb/legacy/LegacyCursor.h:
  • Modules/indexeddb/legacy/LegacyDatabase.cpp:

(WebCore::LegacyDatabase::createObjectStore):
(WebCore::LegacyDatabase::deleteObjectStore):
(WebCore::LegacyDatabase::transaction):
(WebCore::LegacyDatabase::forceClose):

  • Modules/indexeddb/legacy/LegacyDatabase.h:
  • Modules/indexeddb/legacy/LegacyFactory.cpp:

(WebCore::LegacyFactory::cmp):

  • Modules/indexeddb/legacy/LegacyFactory.h:
  • Modules/indexeddb/legacy/LegacyIndex.cpp:

(WebCore::LegacyIndex::openCursor):
(WebCore::LegacyIndex::count):
(WebCore::LegacyIndex::openKeyCursor):
(WebCore::LegacyIndex::get):
(WebCore::LegacyIndex::getKey):

  • Modules/indexeddb/legacy/LegacyIndex.h:
  • Modules/indexeddb/legacy/LegacyObjectStore.cpp:

(WebCore::LegacyObjectStore::get):
(WebCore::LegacyObjectStore::add):
(WebCore::LegacyObjectStore::put):
(WebCore::LegacyObjectStore::deleteFunction):
(WebCore::LegacyObjectStore::clear):
(WebCore::LegacyObjectStore::createIndex):
(WebCore::LegacyObjectStore::index):
(WebCore::LegacyObjectStore::deleteIndex):
(WebCore::LegacyObjectStore::openCursor):
(WebCore::LegacyObjectStore::count):

  • Modules/indexeddb/legacy/LegacyObjectStore.h:

(WebCore::LegacyObjectStore::createIndex):
(WebCore::LegacyObjectStore::count):

  • Modules/indexeddb/legacy/LegacyRequest.cpp:

(WebCore::LegacyRequest::result):
(WebCore::LegacyRequest::error):
(WebCore::LegacyRequest::dispatchEvent):
(WebCore::LegacyRequest::uncaughtExceptionInEventHandler):

  • Modules/indexeddb/legacy/LegacyRequest.h:
  • Modules/indexeddb/legacy/LegacyTransaction.cpp:

(WebCore::LegacyTransaction::objectStore):
(WebCore::LegacyTransaction::abort):
(WebCore::LegacyTransaction::stop):

  • Modules/indexeddb/legacy/LegacyTransaction.h:
  • bindings/js/JSDOMBinding.cpp:

(WebCore::createDOMException): For IDBDatabase exceptions, use createWithDescriptionAsMessage

  • bindings/js/JSIDBDatabaseCustom.cpp:

(WebCore::JSIDBDatabase::createObjectStore):
(WebCore::JSIDBDatabase::transaction):

  • bindings/js/JSIDBObjectStoreCustom.cpp:

(WebCore::putOrAdd):
(WebCore::JSIDBObjectStore::createIndex):

  • dom/DOMCoreException.h:

(WebCore::DOMCoreException::createWithDescriptionAsMessage): Create an exception whose message

is the description.

(WebCore::DOMCoreException::DOMCoreException):

  • dom/ExceptionBase.cpp:

(WebCore::ExceptionBase::ExceptionBase): Add a flag to determine where the message comes from

  • dom/ExceptionBase.h:
  • dom/make_dom_exceptions.pl:

(generateHeader): Add an IDBDatabaseException type

  • inspector/InspectorIndexedDBAgent.cpp:

LayoutTests:

Lots of new wk2-specific expectations to keep Legacy IDB passing for now.

  • platform/mac-wk1/TestExpectations:
  • platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index5-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index6-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbcursor_continue_invalid-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_get7-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_getKey7-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_openCursor2-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_openKeyCursor3-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/keypath-expected.txt: Added.
  • platform/wk2/storage/indexeddb/aborted-versionchange-closes-expected.txt: Copied from LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt.
  • platform/wk2/storage/indexeddb/bad-keypath-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/bad-keypath-expected.txt.
  • platform/wk2/storage/indexeddb/basics-expected.txt: Copied from LayoutTests/storage/indexeddb/basics-expected.txt.
  • platform/wk2/storage/indexeddb/clear-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/clear-expected.txt.
  • platform/wk2/storage/indexeddb/create-and-remove-object-store-expected.txt: Copied from LayoutTests/storage/indexeddb/create-and-remove-object-store-expected.txt.
  • platform/wk2/storage/indexeddb/create-objectstore-basics-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt.
  • platform/wk2/storage/indexeddb/cursor-continue-dir-expected.txt: Added.
  • platform/wk2/storage/indexeddb/cursor-continue-expected.txt: Added.
  • platform/wk2/storage/indexeddb/cursor-finished-expected.txt: Copied from LayoutTests/storage/indexeddb/cursor-finished-expected.txt.
  • platform/wk2/storage/indexeddb/cursors-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/cursors-expected.txt.
  • platform/wk2/storage/indexeddb/database-basics-expected.txt: Added.
  • platform/wk2/storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
  • platform/wk2/storage/indexeddb/index-count-expected.txt: Added.
  • platform/wk2/storage/indexeddb/intversion-close-in-oncomplete-expected.txt: Added.
  • platform/wk2/storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt: Added.
  • platform/wk2/storage/indexeddb/invalid-keys-expected.txt: Added.
  • platform/wk2/storage/indexeddb/key-requirements-delete-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt.
  • platform/wk2/storage/indexeddb/key-requirements-inline-and-passed-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt.
  • platform/wk2/storage/indexeddb/key-requirements-put-no-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt.
  • platform/wk2/storage/indexeddb/key-requirements-put-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt.
  • platform/wk2/storage/indexeddb/key-type-array-expected.txt: Added.
  • platform/wk2/storage/indexeddb/keypath-arrays-expected.txt: Added.
  • platform/wk2/storage/indexeddb/keypath-edges-expected.txt: Added.
  • platform/wk2/storage/indexeddb/keyrange-expected.txt: Added.
  • platform/wk2/storage/indexeddb/mozilla/clear-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/clear-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/cursors-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/cursors-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/readonly-transactions-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/readonly-transactions-expected.txt.
  • platform/wk2/storage/indexeddb/object-lookups-in-versionchange-expected.txt: Added.
  • platform/wk2/storage/indexeddb/objectstore-count-expected.txt: Added.
  • platform/wk2/storage/indexeddb/open-cursor-expected.txt: Added.
  • platform/wk2/storage/indexeddb/readonly-transactions-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/readonly-transactions-expected.txt.
  • platform/wk2/storage/indexeddb/removed-expected.txt: Added.
  • platform/wk2/storage/indexeddb/request-result-cache-expected.txt: Added.
  • platform/wk2/storage/indexeddb/transaction-abort-expected.txt: Copied from LayoutTests/storage/indexeddb/transaction-abort-expected.txt.
  • platform/wk2/storage/indexeddb/transaction-active-flag-expected.txt: Added.
  • platform/wk2/storage/indexeddb/transaction-after-close-expected.txt: Added.
  • platform/wk2/storage/indexeddb/transaction-read-only-expected.txt: Added.
  • platform/wk2/storage/indexeddb/version-change-exclusive-expected.txt: Added.
  • storage/indexeddb/aborted-versionchange-closes-expected.txt:
  • storage/indexeddb/basics-expected.txt:
  • storage/indexeddb/create-and-remove-object-store-expected.txt:
  • storage/indexeddb/cursor-finished-expected.txt:
  • storage/indexeddb/exceptions-expected.txt:
  • storage/indexeddb/modern/createobjectstore-failures-expected.txt:
  • storage/indexeddb/modern/double-abort-expected.txt:
  • storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
  • storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
  • storage/indexeddb/mozilla/bad-keypath-expected.txt:
  • storage/indexeddb/mozilla/clear-expected.txt:
  • storage/indexeddb/mozilla/create-objectstore-basics-expected.txt:
  • storage/indexeddb/mozilla/cursors-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
  • storage/indexeddb/mozilla/readonly-transactions-expected.txt:
  • storage/indexeddb/resources/exceptions.js:

(testObjectStore):

  • storage/indexeddb/transaction-abort-expected.txt:
10:50 AM Changeset in webkit [193427] by Joseph Pecoraro
  • 6 edits in trunk

Web Inspector: Unskip many inspector/debugger tests
https://bugs.webkit.org/show_bug.cgi?id=151843

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptFunctionCall::call):
Ignore TerminationExceptions, as those aren't real execution
exceptions and may be seen on Workers that have closed.

LayoutTests:

Skip specific tests.

  • platform/mac-wk2/TestExpectations:

Test no longer existed.

  • inspector/debugger/resources/exception.js:

(exceptionDOM):
Keep the code outputing a NotFoundException. This particular
invocation was recently changed to throw a TypeError.

10:50 AM Changeset in webkit [193426] by Joseph Pecoraro
  • 48 edits
    19 deletes in trunk

Web Inspector: Remove untested and unused Worker inspection
https://bugs.webkit.org/show_bug.cgi?id=151848

Reviewed by Brian Burg.

Source/JavaScriptCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • debugger/Debugger.cpp:

(JSC::Debugger::Debugger):
(JSC::Debugger::willExecuteProgram):

  • debugger/Debugger.h:
  • inspector/JSGlobalObjectScriptDebugServer.cpp:

(Inspector::JSGlobalObjectScriptDebugServer::JSGlobalObjectScriptDebugServer):

  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::ScriptDebugServer):

  • inspector/ScriptDebugServer.h:
  • inspector/agents/InspectorConsoleAgent.h:
  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::run): Deleted.

  • inspector/agents/InspectorRuntimeAgent.h:
  • inspector/agents/JSGlobalObjectConsoleAgent.h:
  • inspector/protocol/Runtime.json:
  • inspector/protocol/Worker.json: Removed.

Source/WebCore:

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/WorkerScriptController.cpp:
  • bindings/js/WorkerScriptDebugServer.cpp: Removed.
  • bindings/js/WorkerScriptDebugServer.h: Removed.
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController): Deleted.

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStartImpl): Deleted.
(WebCore::InspectorInstrumentation::didStartWorkerGlobalScopeImpl): Deleted.
(WebCore::InspectorInstrumentation::willEvaluateWorkerScript): Deleted.
(WebCore::InspectorInstrumentation::workerGlobalScopeTerminatedImpl): Deleted.
(WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope): Deleted.
(WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext): Deleted.

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
(WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStart): Deleted.
(WebCore::InspectorInstrumentation::didStartWorkerGlobalScope): Deleted.
(WebCore::InspectorInstrumentation::workerGlobalScopeTerminated): Deleted.

  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWebAgentBase.h:

(WebCore::WorkerAgentContext::WorkerAgentContext): Deleted.

  • inspector/InspectorWorkerAgent.cpp: Removed.
  • inspector/InspectorWorkerAgent.h: Removed.
  • inspector/InspectorWorkerResource.h: Removed.
  • inspector/InstrumentingAgents.cpp:

(WebCore::InstrumentingAgents::reset): Deleted.

  • inspector/InstrumentingAgents.h:

(WebCore::InstrumentingAgents::workerRuntimeAgent): Deleted.
(WebCore::InstrumentingAgents::setWorkerRuntimeAgent): Deleted.
(WebCore::InstrumentingAgents::inspectorWorkerAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorWorkerAgent): Deleted.

  • inspector/PageConsoleAgent.h:
  • inspector/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::PageScriptDebugServer):

  • inspector/WorkerConsoleAgent.cpp: Removed.
  • inspector/WorkerConsoleAgent.h: Removed.
  • inspector/WorkerDebuggerAgent.cpp: Removed.
  • inspector/WorkerDebuggerAgent.h: Removed.
  • inspector/WorkerInspectorController.cpp: Removed.
  • inspector/WorkerInspectorController.h: Removed.
  • inspector/WorkerRuntimeAgent.cpp: Removed.
  • inspector/WorkerRuntimeAgent.h: Removed.
  • workers/Worker.cpp:

(WebCore::Worker::notifyFinished): Deleted.

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::WorkerGlobalScope): Deleted.
(WebCore::WorkerGlobalScope::~WorkerGlobalScope): Deleted.

  • workers/WorkerGlobalScope.h:

(WebCore::WorkerGlobalScope::workerInspectorController): Deleted.

  • workers/WorkerGlobalScopeProxy.h:

(WebCore::WorkerGlobalScopeProxy::PageInspector::~PageInspector): Deleted.
(WebCore::WorkerGlobalScopeProxy::connectToInspector): Deleted.
(WebCore::WorkerGlobalScopeProxy::disconnectFromInspector): Deleted.
(WebCore::WorkerGlobalScopeProxy::sendMessageToInspector): Deleted.

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::WorkerMessagingProxy): Deleted.
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope): Deleted.
(WebCore::WorkerMessagingProxy::connectToInspector): Deleted.
(WebCore::WorkerMessagingProxy::disconnectFromInspector): Deleted.
(WebCore::WorkerMessagingProxy::sendMessageToInspector): Deleted.
(WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyedInternal): Deleted.
(WebCore::WorkerMessagingProxy::terminateWorkerGlobalScope): Deleted.
(WebCore::WorkerMessagingProxy::postMessageToPageInspector): Deleted.

  • workers/WorkerMessagingProxy.h:
  • workers/WorkerReportingProxy.h:
  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::workerThread): Deleted.

Source/WebInspectorUI:

  • UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/Inspector-iOS-8.0.json:
  • Versions/Inspector-iOS-9.0.json:

Since this was untested in older releases as well, remove
the protocol interfaces for legacy versions.

LayoutTests:

  • inspector/debugger/pause-dedicated-worker-expected.txt: Removed.
  • inspector/debugger/pause-dedicated-worker.html: Removed.
  • inspector/debugger/resources/dedicated-worker.js: Removed.
  • inspector/debugger/terminate-dedicated-worker-while-paused-expected.txt: Removed.
  • inspector/debugger/terminate-dedicated-worker-while-paused.html: Removed.
10:49 AM Changeset in webkit [193425] by Joseph Pecoraro
  • 15 edits in trunk

Web Inspector: Specifically Identify the Global Lexical Environment Scope
https://bugs.webkit.org/show_bug.cgi?id=151828

Reviewed by Brian Burg.

Source/JavaScriptCore:

  • inspector/InjectedScriptSource.js:

Include the new scope type.

  • inspector/JSJavaScriptCallFrame.h:
  • inspector/JSJavaScriptCallFrame.cpp:

(Inspector::JSJavaScriptCallFrame::scopeType):
Set the new value for the new scope type.

  • inspector/JSJavaScriptCallFramePrototype.cpp:

(Inspector::JSJavaScriptCallFramePrototype::finishCreation): Deleted.
(Inspector::jsJavaScriptCallFrameConstantGLOBAL_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantLOCAL_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantWITH_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantCLOSURE_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantCATCH_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantFUNCTION_NAME_SCOPE): Deleted.
Remove unused constants on the JavaScriptCallFrame object.
Currently they are just hardcoded in InjectedScriptSource
and they don't make sense on instances anyways.

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Controllers/DebuggerManager.js:

(WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload):

  • UserInterface/Models/ScopeChainNode.js:
  • UserInterface/Views/ScopeChainDetailsSidebarPanel.js:

(WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateCallFramesSection):
Include a new scope type and give it a localized string.

LayoutTests:

  • inspector/debugger/breakpoint-scope-expected.txt:
  • inspector/debugger/breakpoint-scope.html:
  • inspector/debugger/resources/scope.js:

Update the test to include something in the global lexical
environment and ensure it is identified as such.

10:45 AM Changeset in webkit [193424] by keith_miller@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Add an option to emit instructions validating exceptions in the DFG rather than always emiting them.
https://bugs.webkit.org/show_bug.cgi?id=151841

Reviewed by Saam Barati.

Add a new option that validates the DFG execption checking. The default value for the option is
true in Debug builds and false in Release builds. Additionally, renamed jitAssertNoException to
jitReleaseAssertNoException for consistency with our ASSERT naming convention.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCurrentBlock):

  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::jitReleaseAssertNoException):
(JSC::AssemblyHelpers::jitAssertNoException): Deleted.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::jitAssertNoException): Deleted.

  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

  • runtime/Options.h:
10:08 AM Changeset in webkit [193423] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Fix the !ENABLE(DFG_JIT) build after r190735
https://bugs.webkit.org/show_bug.cgi?id=151617

Reviewed by Filip Pizlo.

  • jit/GCAwareJITStubRoutine.cpp:

(JSC::GCAwareJITStubRoutineWithExceptionHandler::observeZeroRefCount):

9:11 AM Changeset in webkit [193422] by matthew_hanson@apple.com
  • 79 edits
    2 copies
    1 add in branches/safari-601-branch

Merge r188647. rdar://problem/23732386

9:10 AM Changeset in webkit [193421] by matthew_hanson@apple.com
  • 18 edits
    4 adds in branches/safari-601-branch

Merge r188530. rdar://problem/23732374

9:10 AM Changeset in webkit [193420] by matthew_hanson@apple.com
  • 8 edits
    5 adds in branches/safari-601-branch

Merge r188514. rdar://problem/23732374

9:10 AM Changeset in webkit [193419] by matthew_hanson@apple.com
  • 18 edits
    4 adds in branches/safari-601-branch

Merge r188512. rdar://problem/23732374

9:10 AM Changeset in webkit [193418] by matthew_hanson@apple.com
  • 5 edits
    2 adds in branches/safari-601-branch

Merge r190383. rdar://problem/23732393

9:10 AM Changeset in webkit [193417] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebCore

Merge r189427. rdar://problem/23732393

9:10 AM Changeset in webkit [193416] by matthew_hanson@apple.com
  • 10 edits in branches/safari-601-branch

Merge r188194. rdar://problem/23732393

5:16 AM Changeset in webkit [193415] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[cmake] Fix the B3 build after r192946
https://bugs.webkit.org/show_bug.cgi?id=151857

Reviewed by Michael Saboff.

  • CMakeLists.txt:
5:01 AM Changeset in webkit [193414] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[AArch64] Typo fix after r189575
https://bugs.webkit.org/show_bug.cgi?id=151855

Reviewed by Michael Saboff.

  • ftl/FTLUnwindInfo.cpp:

(JSC::FTL::parseUnwindInfo):

3:14 AM Changeset in webkit [193413] by svillar@igalia.com
  • 3 edits
    2 adds in trunk

[css-grid] Fix height computation of grid items with borders inside fr tracks
https://bugs.webkit.org/show_bug.cgi?id=151798

Reviewed by Zalan Bujtas.

Source/WebCore:

Since r192154 we run a second pass of the track sizing
algorithm whenever the height of the grid is indefinite in
order to properly compute row sizes. The available space
passed to the track sizing algorithm must not contain neither
borders nor paddings, otherwise it will think that it has more
space available than the existing one. We should use the
height of the content box instead.

Test: fast/css-grid-layout/grid-item-with-border-in-fr.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):

LayoutTests:

  • fast/css-grid-layout/grid-item-with-border-in-fr-expected.txt: Added.
  • fast/css-grid-layout/grid-item-with-border-in-fr.html: Added.
Note: See TracTimeline for information about the timeline view.