Timeline
Jun 19, 2016:
- 11:56 PM Changeset in webkit [202225] by
-
- 10 edits in trunk/Source/ThirdParty
Update Brotli to version 0.4.0
https://bugs.webkit.org/show_bug.cgi?id=158907
Reviewed by Michael Catanzaro.
- brotli/README.webkit:
- brotli/dec/bit_reader.h:
- brotli/dec/decode.c:
- brotli/dec/decode.h:
- brotli/dec/huffman.c:
- brotli/dec/huffman.h:
- brotli/dec/port.h:
(BrotliDump):
- brotli/dec/state.c:
- brotli/dec/state.h:
- 10:53 PM Changeset in webkit [202224] by
-
- 2 edits in trunk/Source/WebKit2
Fix erroneously commented line added in r202142.
- Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
- 8:57 PM Changeset in webkit [202223] by
-
- 3 edits in trunk/LayoutTests
Test expectation gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 7:35 PM Changeset in webkit [202222] by
-
- 3 edits in trunk/LayoutTests
Test expectation gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 6:59 PM Changeset in webkit [202221] by
-
- 2 edits in trunk/LayoutTests
[EFL] Mark shadow-dom tests to pass because it was enabled by r202091
https://bugs.webkit.org/show_bug.cgi?id=158930
Unreviewed EFL gardening.
- platform/efl/TestExpectations:
- 6:22 PM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 6:19 PM Changeset in webkit [202220] by
-
- 2 edits2 adds in trunk/LayoutTests
[GTK] Unreviewed test gardening
- fast/forms/select-non-native-rendering-direction-expected.txt: Added.
- fast/text/hyphenate-avoid-orphaned-word-expected.txt: Added.
- platform/gtk/TestExpectations:
- 5:17 PM Changeset in webkit [202219] by
-
- 36 edits27 copies3 moves38 adds3 deletes in trunk
Add test expectations for macOS Sierra
https://bugs.webkit.org/show_bug.cgi?id=158903
Reviewed by Alex Christensen.
Tools:
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra.png: Added.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra@2x.png: Added.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
Added dashboard support.
- BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
- BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
Trigger the right build queues on check-in.
- Scripts/webkitpy/common/system/platforminfo.py:
- Scripts/webkitpy/common/system/platforminfo_unittest.py:
- Scripts/webkitpy/layout_tests/models/test_expectations.py:
- Scripts/webkitpy/port/mac.py:
- Scripts/webkitpy/port/mac_unittest.py:
- TestResultServer/static-dashboards/flakiness_dashboard.js:
Added cases for Sierra, and updated tests for new baseline search paths.
LayoutTests:
- TestExpectations:
- media/click-placeholder-not-pausing-expected.txt: Added.
- media/click-placeholder-not-pausing.html: Added.
- media/controls/picture-in-picture-expected.txt: Added.
- media/controls/picture-in-picture.html: Added.
- media/element-containing-pip-video-going-into-fullscreen-expected.txt: Added.
- media/element-containing-pip-video-going-into-fullscreen.html: Added.
- media/fullscreen-api-enabled-media-with-presentation-mode-expected.txt: Added.
- media/fullscreen-api-enabled-media-with-presentation-mode.html: Added.
- media/fullscreen-video-going-into-pip-expected.txt: Added.
- media/fullscreen-video-going-into-pip.html: Added.
- media/navigate-with-pip-should-not-crash-expected.txt: Added.
- media/navigate-with-pip-should-not-crash.html: Added.
- media/pip-video-going-into-fullscreen-expected.txt: Added.
- media/pip-video-going-into-fullscreen.html: Added.
- media/video-contained-in-fullscreen-element-going-into-pip-expected.txt: Added.
- media/video-contained-in-fullscreen-element-going-into-pip.html: Added.
- platform/mac-elcapitan: Added.
- platform/mac-elcapitan/compositing: Added.
- platform/mac-elcapitan/compositing/rtl: Added.
- platform/mac-elcapitan/compositing/rtl/rtl-overflow-scrolling-expected.txt: Copied from LayoutTests/platform/mac/compositing/rtl/rtl-overflow-scrolling-expected.txt.
- platform/mac-elcapitan/fast: Added.
- platform/mac-elcapitan/fast/block: Added.
- platform/mac-elcapitan/fast/block/float: Added.
- platform/mac-elcapitan/fast/block/float/026-expected.png: Copied from LayoutTests/platform/mac/fast/block/float/026-expected.png.
- platform/mac-elcapitan/fast/block/float/026-expected.txt: Copied from LayoutTests/platform/mac/fast/block/float/026-expected.txt.
- platform/mac-elcapitan/fast/block/float/028-expected.png: Copied from LayoutTests/platform/mac/fast/block/float/028-expected.png.
- platform/mac-elcapitan/fast/block/float/028-expected.txt: Copied from LayoutTests/platform/mac/fast/block/float/028-expected.txt.
- platform/mac-elcapitan/fast/overflow: Added.
- platform/mac-elcapitan/fast/overflow/unreachable-overflow-rtl-bug-expected.png: Copied from LayoutTests/platform/mac/fast/overflow/unreachable-overflow-rtl-bug-expected.png.
- platform/mac-elcapitan/fast/overflow/unreachable-overflow-rtl-bug-expected.txt: Copied from LayoutTests/platform/mac/fast/overflow/unreachable-overflow-rtl-bug-expected.txt.
- platform/mac-elcapitan/fast/ruby: Added.
- platform/mac-elcapitan/fast/ruby/bopomofo-expected.png: Copied from LayoutTests/platform/mac/fast/ruby/bopomofo-expected.png.
- platform/mac-elcapitan/fast/ruby/bopomofo-expected.txt: Copied from LayoutTests/platform/mac/fast/ruby/bopomofo-expected.txt.
- platform/mac-elcapitan/fast/ruby/bopomofo-letter-spacing-expected.png: Copied from LayoutTests/platform/mac/fast/ruby/bopomofo-letter-spacing-expected.png.
- platform/mac-elcapitan/fast/ruby/bopomofo-letter-spacing-expected.txt: Copied from LayoutTests/platform/mac/fast/ruby/bopomofo-letter-spacing-expected.txt.
- platform/mac-elcapitan/fast/ruby/bopomofo-rl-expected.png: Copied from LayoutTests/platform/mac/fast/ruby/bopomofo-rl-expected.png.
- platform/mac-elcapitan/fast/ruby/bopomofo-rl-expected.txt: Copied from LayoutTests/platform/mac/fast/ruby/bopomofo-rl-expected.txt.
- platform/mac-elcapitan/fast/text: Added.
- platform/mac-elcapitan/fast/text/crash-complex-text-surrogate-expected.txt: Copied from LayoutTests/platform/mac/fast/text/crash-complex-text-surrogate-expected.txt.
- platform/mac-elcapitan/fast/text/justify-ideograph-complex-expected.png: Copied from LayoutTests/platform/mac/fast/text/justify-ideograph-complex-expected.png.
- platform/mac-elcapitan/fast/text/justify-ideograph-complex-expected.txt: Copied from LayoutTests/platform/mac/fast/text/justify-ideograph-complex-expected.txt.
- platform/mac-elcapitan/fast/text/line-initial-and-final-swashes-expected.png: Copied from LayoutTests/platform/mac/fast/text/line-initial-and-final-swashes-expected.png.
- platform/mac-elcapitan/fast/text/line-initial-and-final-swashes-expected.txt: Copied from LayoutTests/platform/mac/fast/text/line-initial-and-final-swashes-expected.txt.
- platform/mac-elcapitan/http: Added.
- platform/mac-elcapitan/http/tests: Added.
- platform/mac-elcapitan/http/tests/cookies: Added.
- platform/mac-elcapitan/http/tests/cookies/third-party-cookie-relaxing-expected.txt: Copied from LayoutTests/http/tests/cookies/third-party-cookie-relaxing-expected.txt.
- platform/mac-elcapitan/http/tests/security: Added.
- platform/mac-elcapitan/http/tests/security/mixedContent: Added.
- platform/mac-elcapitan/http/tests/security/mixedContent/insecure-audio-video-in-main-frame-expected.txt: Copied from LayoutTests/platform/mac/http/tests/security/mixedContent/insecure-audio-video-in-main-frame-expected.txt.
- platform/mac-elcapitan/media: Added.
- platform/mac-elcapitan/media/controls-strict-expected.png: Copied from LayoutTests/platform/mac/media/controls-strict-expected.png.
- platform/mac-elcapitan/media/controls-strict-expected.txt: Copied from LayoutTests/platform/mac/media/controls-strict-expected.txt.
- platform/mac-elcapitan/media/controls-without-preload-expected.png: Copied from LayoutTests/platform/mac/media/controls-without-preload-expected.png.
- platform/mac-elcapitan/media/controls-without-preload-expected.txt: Copied from LayoutTests/platform/mac/media/controls-without-preload-expected.txt.
- platform/mac-elcapitan/media/track: Added.
- platform/mac-elcapitan/media/track/video-track-alternate-groups-expected.txt: Copied from LayoutTests/platform/mac/media/track/video-track-alternate-groups-expected.txt.
- platform/mac-elcapitan/media/video-controls-rendering-expected.txt: Copied from LayoutTests/platform/mac/media/video-controls-rendering-expected.txt.
- platform/mac-elcapitan/media/video-display-toggle-expected.png: Copied from LayoutTests/platform/mac/media/video-display-toggle-expected.png.
- platform/mac-elcapitan/media/video-display-toggle-expected.txt: Copied from LayoutTests/platform/mac/media/video-display-toggle-expected.txt.
- platform/mac-elcapitan/media/video-no-audio-expected.txt: Copied from LayoutTests/platform/mac/media/video-no-audio-expected.txt.
- platform/mac-elcapitan/media/video-volume-slider-expected.txt: Copied from LayoutTests/platform/mac/media/video-volume-slider-expected.txt.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/mac-wk2/fast/scrolling: Added.
- platform/mac-wk2/fast/scrolling/rtl-scrollbars-animation-property-expected.txt: Added.
- platform/mac/TestExpectations:
- platform/mac/compositing/rtl/rtl-overflow-scrolling-expected.png: Added.
- platform/mac/compositing/rtl/rtl-overflow-scrolling-expected.txt:
- platform/mac/fast/block/float/026-expected.png:
- platform/mac/fast/block/float/026-expected.txt:
- platform/mac/fast/block/float/028-expected.png:
- platform/mac/fast/block/float/028-expected.txt:
- platform/mac/fast/overflow/unreachable-overflow-rtl-bug-expected.png:
- platform/mac/fast/overflow/unreachable-overflow-rtl-bug-expected.txt:
- platform/mac/fast/ruby/bopomofo-expected.png:
- platform/mac/fast/ruby/bopomofo-expected.txt:
- platform/mac/fast/ruby/bopomofo-letter-spacing-expected.png:
- platform/mac/fast/ruby/bopomofo-letter-spacing-expected.txt:
- platform/mac/fast/ruby/bopomofo-rl-expected.png:
- platform/mac/fast/ruby/bopomofo-rl-expected.txt:
- platform/mac/fast/text/crash-complex-text-surrogate-expected.txt:
- platform/mac/fast/text/justify-ideograph-complex-expected.png:
- platform/mac/fast/text/justify-ideograph-complex-expected.txt:
- platform/mac/fast/text/line-initial-and-final-swashes-expected.png:
- platform/mac/fast/text/line-initial-and-final-swashes-expected.txt:
- platform/mac/http/tests/cookies/third-party-cookie-relaxing-expected.txt: Added.
- platform/mac/http/tests/security/mixedContent/insecure-audio-video-in-main-frame-expected.txt:
- platform/mac/media/controls-strict-expected.png: Removed.
- platform/mac/media/controls-without-preload-expected.png: Removed.
- platform/mac/media/track/video-track-alternate-groups-expected.txt:
- platform/mac/media/video-controls-rendering-expected.png: Removed.
- platform/mac/media/video-display-toggle-expected.png: Removed.
- platform/mac/media/video-no-audio-expected.png: Removed.
- platform/mac/media/video-volume-slider-expected.png: Removed.
- 5:03 PM Changeset in webkit [202218] by
-
- 25 edits in trunk/Source/WebCore
Remove hasStaticPropertyTable (part 5: done!)
https://bugs.webkit.org/show_bug.cgi?id=158431
Reviewed by Chris Dumez.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
- remove hasStaticPropertyTable.
- bindings/scripts/test/JS/JSInterfaceName.h:
(WebCore::JSInterfaceName::create):
- bindings/scripts/test/JS/JSTestActiveDOMObject.h:
(WebCore::JSTestActiveDOMObject::create):
- bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.h:
(WebCore::JSTestClassWithJSBuiltinConstructor::create):
- bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.h:
(WebCore::JSTestCustomConstructorWithNoInterfaceObject::create):
- bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
(WebCore::JSTestCustomNamedGetter::create):
- bindings/scripts/test/JS/JSTestEventConstructor.h:
(WebCore::JSTestEventConstructor::create):
- bindings/scripts/test/JS/JSTestEventTarget.h:
(WebCore::JSTestEventTarget::create):
- bindings/scripts/test/JS/JSTestException.h:
(WebCore::JSTestException::create):
- bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
(WebCore::JSTestGenerateIsReachable::create):
- bindings/scripts/test/JS/JSTestGlobalObject.h:
- bindings/scripts/test/JS/JSTestInterface.h:
- bindings/scripts/test/JS/JSTestJSBuiltinConstructor.h:
(WebCore::JSTestJSBuiltinConstructor::create):
- bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(WebCore::JSTestMediaQueryListListener::create):
- bindings/scripts/test/JS/JSTestNamedConstructor.h:
(WebCore::JSTestNamedConstructor::create):
- bindings/scripts/test/JS/JSTestNode.h:
- bindings/scripts/test/JS/JSTestNondeterministic.h:
(WebCore::JSTestNondeterministic::create):
- bindings/scripts/test/JS/JSTestObj.h:
(WebCore::JSTestObj::create):
- bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
(WebCore::JSTestOverloadedConstructors::create):
- bindings/scripts/test/JS/JSTestOverrideBuiltins.h:
(WebCore::JSTestOverrideBuiltins::create):
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(WebCore::JSTestSerializedScriptValueInterface::create):
- bindings/scripts/test/JS/JSTestTypedefs.h:
(WebCore::JSTestTypedefs::create):
- bindings/scripts/test/JS/JSattribute.h:
(WebCore::JSattribute::create):
- bindings/scripts/test/JS/JSreadonly.h:
(WebCore::JSreadonly::create):
- 3:19 PM Changeset in webkit [202217] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Remove Sidebar z-index:0 workaround for scrollbars and position:sticky section headers
https://bugs.webkit.org/show_bug.cgi?id=158882
Reviewed by Darin Adler.
The z-index:0 workaround is no longer needed as it doesn't change anything.
- UserInterface/Views/Sidebar.css:
(.sidebar > .panel): Deleted.
- 1:49 PM Changeset in webkit [202216] by
-
- 2 edits in trunk/Tools
Another buid fix for master.cfg.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(CompileWebKit.start):
- 1:35 PM Changeset in webkit [202215] by
-
- 2 edits in trunk/Tools
Another buid fix for master.cfg.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(CompileWebKit.start):
- 12:42 PM Changeset in webkit [202214] by
-
- 26 edits2 adds in trunk/Source/JavaScriptCore
We should be able to generate more types of ICs inline
https://bugs.webkit.org/show_bug.cgi?id=158719
<rdar://problem/26825641>
Reviewed by Filip Pizlo.
This patch changes how we emit code for *byId ICs inline.
We no longer keep data labels to patch structure checks, etc.
Instead, we just regenerate the entire IC into a designated
region of code that the Baseline/DFG/FTL JIT will emit inline.
This makes it much simpler to patch inline ICs. All that's
needed to patch an inline IC is to memcpy the code from
a macro assembler inline using LinkBuffer. This architecture
will be easy to extend into other forms of ICs, such as one
for add, in the future.
To support this change, I've reworked the fields inside
StructureStubInfo. It now has one field that is the CodeLocationLabel
of the start of the inline IC. Then it has a few ints that track deltas
to other locations in the IC such as the slow path start, slow path call, the
ICs 'done' location. We used to perform math on these ints in a bunch of different
places. I've consolidated that math into methods inside StructureStubInfo.
To generate inline ICs, I've implemented a new class called InlineAccess.
InlineAccess is stateless: it just has a bunch of static methods for
generating code into the inline region specified by StructureStubInfo.
Repatch will now decide when it wants to generate such an inline
IC, and it will ask InlineAccess to do so.
I've implemented three types of inline ICs to begin with (extending
this in the future should be easy):
- Self property loads (both inline and out of line offsets).
- Self property replace (both inline and out of line offsets).
- Array length on specific array types.
(An easy extension would be to implement JSString length.)
To know how much inline space to reserve, I've implemented a
method that stubs out the various inline cache shapes and
dumps their size. This is used to determine how much space
to save inline. When InlineAccess ends up generating more
code than can fit inline, we will fall back to generating
code with PolymorphicAccess instead.
To make generating code into already allocated executable memory
efficient, I've made AssemblerData have 128 bytes of inline storage.
This saves us a malloc when splatting code into the inline region.
This patch also tidies up LinkBuffer's API for generating
into already allocated executable memory. Now, when generating
code that has less size than the already allocated space, LinkBuffer
will fill the extra space with nops. Also, if branch compaction shrinks
the code, LinkBuffer will add a nop sled at the end of the shrunken
code to take up the entire allocated size.
This looks like it could be a 1% octane progression.
- CMakeLists.txt:
- JavaScriptCore.xcodeproj/project.pbxproj:
- assembler/ARM64Assembler.h:
(JSC::ARM64Assembler::nop):
(JSC::ARM64Assembler::fillNops):
- assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::nopw):
(JSC::ARMv7Assembler::nopPseudo16):
(JSC::ARMv7Assembler::nopPseudo32):
(JSC::ARMv7Assembler::fillNops):
(JSC::ARMv7Assembler::dmbSY):
- assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler::addLinkTask):
(JSC::AbstractMacroAssembler::emitNops):
(JSC::AbstractMacroAssembler::AbstractMacroAssembler):
- assembler/AssemblerBuffer.h:
(JSC::AssemblerData::AssemblerData):
(JSC::AssemblerData::operator=):
(JSC::AssemblerData::~AssemblerData):
(JSC::AssemblerData::buffer):
(JSC::AssemblerData::grow):
(JSC::AssemblerData::isInlineBuffer):
(JSC::AssemblerBuffer::AssemblerBuffer):
(JSC::AssemblerBuffer::ensureSpace):
(JSC::AssemblerBuffer::codeSize):
(JSC::AssemblerBuffer::setCodeSize):
(JSC::AssemblerBuffer::label):
(JSC::AssemblerBuffer::debugOffset):
(JSC::AssemblerBuffer::releaseAssemblerData):
- assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::copyCompactAndLinkCode):
(JSC::LinkBuffer::linkCode):
(JSC::LinkBuffer::allocate):
(JSC::LinkBuffer::performFinalization):
(JSC::LinkBuffer::shrink): Deleted.
- assembler/LinkBuffer.h:
(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::debugAddress):
(JSC::LinkBuffer::size):
(JSC::LinkBuffer::wasAlreadyDisassembled):
(JSC::LinkBuffer::didAlreadyDisassemble):
(JSC::LinkBuffer::applyOffset):
(JSC::LinkBuffer::code):
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::patchableBranch32):
(JSC::MacroAssemblerARM64::patchableBranch64):
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::patchableBranch32):
(JSC::MacroAssemblerARMv7::patchableBranchPtrWithPatch):
- assembler/X86Assembler.h:
(JSC::X86Assembler::nop):
(JSC::X86Assembler::fillNops):
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdCacheStatus):
- bytecode/InlineAccess.cpp: Added.
(JSC::InlineAccess::dumpCacheSizesAndCrash):
(JSC::linkCodeInline):
(JSC::InlineAccess::generateSelfPropertyAccess):
(JSC::getScratchRegister):
(JSC::hasFreeRegister):
(JSC::InlineAccess::canGenerateSelfPropertyReplace):
(JSC::InlineAccess::generateSelfPropertyReplace):
(JSC::InlineAccess::isCacheableArrayLength):
(JSC::InlineAccess::generateArrayLength):
(JSC::InlineAccess::rewireStubAsJump):
- bytecode/InlineAccess.h: Added.
(JSC::InlineAccess::sizeForPropertyAccess):
(JSC::InlineAccess::sizeForPropertyReplace):
(JSC::InlineAccess::sizeForLengthAccess):
- bytecode/PolymorphicAccess.cpp:
(JSC::PolymorphicAccess::regenerate):
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::initGetByIdSelf):
(JSC::StructureStubInfo::initArrayLength):
(JSC::StructureStubInfo::initPutByIdReplace):
(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::aboutToDie):
(JSC::StructureStubInfo::propagateTransitions):
(JSC::StructureStubInfo::containsPC):
- bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::considerCaching):
(JSC::StructureStubInfo::slowPathCallLocation):
(JSC::StructureStubInfo::doneLocation):
(JSC::StructureStubInfo::slowPathStartLocation):
(JSC::StructureStubInfo::patchableJumpForIn):
(JSC::StructureStubInfo::valueRegs):
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
- dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::reifyInlinedCallFrames):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileIn):
(JSC::FTL::DFG::LowerDFGToB3::getById):
- jit/JITInlineCacheGenerator.cpp:
(JSC::JITByIdGenerator::finalize):
(JSC::JITByIdGenerator::generateFastCommon):
(JSC::JITGetByIdGenerator::JITGetByIdGenerator):
(JSC::JITGetByIdGenerator::generateFastPath):
(JSC::JITPutByIdGenerator::JITPutByIdGenerator):
(JSC::JITPutByIdGenerator::generateFastPath):
(JSC::JITPutByIdGenerator::slowPathFunction):
(JSC::JITByIdGenerator::generateFastPathChecks): Deleted.
- jit/JITInlineCacheGenerator.h:
(JSC::JITByIdGenerator::reportSlowPathCall):
(JSC::JITByIdGenerator::slowPathBegin):
(JSC::JITByIdGenerator::slowPathJump):
(JSC::JITGetByIdGenerator::JITGetByIdGenerator):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emit_op_try_get_by_id):
(JSC::JIT::emit_op_get_by_id):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emit_op_try_get_by_id):
(JSC::JIT::emit_op_get_by_id):
- jit/Repatch.cpp:
(JSC::repatchCall):
(JSC::tryCacheGetByID):
(JSC::repatchGetByID):
(JSC::appropriateGenericPutByIdFunction):
(JSC::tryCachePutByID):
(JSC::repatchPutByID):
(JSC::tryRepatchIn):
(JSC::repatchIn):
(JSC::linkSlowFor):
(JSC::resetGetByID):
(JSC::resetPutByID):
(JSC::resetIn):
(JSC::repatchByIdSelfAccess): Deleted.
(JSC::resetGetByIDCheckAndLoad): Deleted.
(JSC::resetPutByIDCheckAndLoad): Deleted.
(JSC::replaceWithJump): Deleted.
- 11:26 AM Changeset in webkit [202213] by
-
- 2 edits in trunk/Tools
Fix master.cfg
Unreviewed build fix.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(CompileWebKit.start):
- 11:02 AM Changeset in webkit [202212] by
-
- 1 edit in trunk/Tools/ChangeLog
Test another commit.
Unreviewed.
- 10:51 AM Changeset in webkit [202211] by
-
- 4 edits in trunk/Source/WebCore
The JSBuiltinConstructor feature can't handle a JS interface extending an other JS interface
https://bugs.webkit.org/show_bug.cgi?id=158834
Reviewed by Eric Carlson.
No change of behavior.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Explicitly setting DOMWrapped type definition from
JSXX class deriving from another JSYY class.
- bindings/scripts/test/JS/JSTestEventTarget.h: Rebased.
- bindings/scripts/test/JS/JSTestNode.h: Ditto.
- 10:48 AM Changeset in webkit [202210] by
-
- 1 edit in trunk/Tools/ChangeLog
Test commit.
Unreviewed.
- 10:35 AM Changeset in webkit [202209] by
-
- 1 edit in trunk/Tools/ChangeLog
Test another commit.
Unreviewed.
- 10:31 AM Changeset in webkit [202208] by
-
- 1 edit in trunk/Tools/ChangeLog
Test commit.
Unreviewed.
- 10:19 AM Changeset in webkit [202207] by
-
- 1 edit in trunk/Tools/ChangeLog
Test yet another commit.
Unreviewed.
- 10:01 AM Changeset in webkit [202206] by
-
- 1 edit in trunk/Tools/ChangeLog
Test another commit.
Unreviewed.
- 9:42 AM Changeset in webkit [202205] by
-
- 3 edits in trunk/Source/JavaScriptCore
REGRESSION(concurrent baseline JIT): Kraken/ai-astar runs 20% slower
https://bugs.webkit.org/show_bug.cgi?id=158906
Reviewed by Benjamin Poulain.
The concurrent baseline JIT was a 2-3% progression on JSBench, possibly a 1% progression
on PLT3, but a 2-5% regression on Kraken. This patch fixes the Kraken regression without
affecting the other tests.
The problem is that Kraken/ai-astar's initialization code had a ginormous piece of init
code that took about 16ms to compile in baseline. There's no good way to avoid letting it
tier-up into baseline since it has a compute loop. The time it takes to run this code is
never measured. The concurrent baseline JIT caused us to schedule the compilation of this
huge code rather than doing it eagerly. This meant that after initialization was done and
we started actually running real stuff, all of the real stuff's compiles would be convoyed
behind this super-expensive baseline compile. Note that DFG and FTL compiles convoy behind
baseline compiles, since you can't schedule a DFG compile for a code block until that code
block is in baseline.
This uses the simplest fix: if we are thinking about scheduling some compile and the
thread is busy, do the compile on the main thread instead. This doesn't completely
eliminate the ai-astar regression (we still have a 4% regression on that test) but it now
results in concurrent baseline JIT being an overall progression on Kraken as a whole (1%
on my machine). This is because concurrent baseline appears to help on other tests.
In the future, we could fix this even better by allowing the JITWorklist to spawn more
threads or by being smarter about baseline compilation. I think it's nasty that if a giant
piece of initialization code ends in a compute loop, we compile all of the code instead of
just the loop. It's also gross that a constant-like object creation expression will result
in so much code. It would result in less code if we allowed ourselves to do a bit more
static reasoning about object literals.
But for now, I think that this is a great way to recover the Kraken regression while still
keeping the other progressions from concurrent baseline.
- jit/JITWorklist.cpp:
(JSC::JITWorklist::Plan::Plan):
(JSC::JITWorklist::Plan::compileInThread):
(JSC::JITWorklist::Plan::finalize):
(JSC::JITWorklist::Plan::codeBlock):
(JSC::JITWorklist::Plan::isFinishedCompiling):
(JSC::JITWorklist::Plan::compileNow):
(JSC::JITWorklist::JITWorklist):
(JSC::JITWorklist::compileLater):
(JSC::JITWorklist::compileNow):
(JSC::JITWorklist::runThread):
(JSC::JITWorklist::Plan::isFinalized): Deleted.
- jit/JITWorklist.h:
- 9:28 AM Changeset in webkit [202204] by
-
- 1 edit in trunk/Tools/ChangeLog
Test commit.
Unreviewed.
- 8:54 AM Changeset in webkit [202203] by
-
- 1 edit in trunk/Tools/ChangeLog
Test post-commit after apache restart.
Unreviewed.
- 8:22 AM Changeset in webkit [202202] by
-
- 1 edit in trunk/Tools/ChangeLog
Testing yet another fix for trac-mirror.
Unreviewed.
- 8:16 AM Changeset in webkit [202201] by
-
- 1 edit in trunk/Tools/ChangeLog
Testing another fix for trac-mirror.
Unreviewed.
- 8:10 AM Changeset in webkit [202200] by
-
- 1 edit in trunk/Tools/ChangeLog
Testing fix for trac-mirror.
Unreviewed.
- 7:53 AM Changeset in webkit [202199] by
-
- 1 edit in trunk/Tools/ChangeLog
Test a commit against the SVN 1.9 server upgrade.
Unreviewed.
Jun 18, 2016:
- 4:46 AM Changeset in webkit [202198] by
-
- 16 edits in trunk/Source/WebCore
Use time literals in WebCore
https://bugs.webkit.org/show_bug.cgi?id=158905
Reviewed by Andreas Kling.
std::chrono::milliseconds(1) -> 1ms etc.
- dom/Document.cpp:
(WebCore::Document::minimumLayoutDelay):
(WebCore::Document::elapsedTime):
- fileapi/FileReader.cpp:
(WebCore::FileReader::create):
- inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::showPaintRect):
- loader/CrossOriginPreflightResultCache.cpp:
(WebCore::CrossOriginPreflightResultCache::CrossOriginPreflightResultCache):
- loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::progressStarted):
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::freshnessLifetime):
- page/ChromeClient.h:
- page/DOMTimer.cpp:
(WebCore::DOMTimer::intervalClampedToMinimum):
(WebCore::DOMTimer::alignedFireTime):
- page/DOMTimer.h:
- page/FrameView.cpp:
(WebCore::FrameView::scrollPositionChanged):
- page/ResourceUsageThread.cpp:
(WebCore::ResourceUsageThread::threadBody):
- page/Settings.cpp:
(WebCore::Settings::Settings):
- page/mac/ServicesOverlayController.mm:
(WebCore::ServicesOverlayController::remainingTimeUntilHighlightShouldBeShown):
- platform/graphics/FontCache.cpp:
(WebCore::FontCache::fontForFamily):
- platform/network/CacheValidation.cpp:
(WebCore::computeCurrentAge):
(WebCore::computeFreshnessLifetimeForHTTPFamily):