| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I3b1d8a2808782c9f34d50240000e20cb38d3680f
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
corruption
Reviewed by Oliver Hunt.
When we flatten an object in dictionary mode, we compact its properties. If the object
had out-of-line storage in the form of a Butterfly prior to this compaction, and after
compaction its properties fit inline, the object's Structure "forgets" that the object
has a non-zero Butterfly pointer. During GC, we check the Butterfly and reportLiveBytes
with bytes = 0, which causes all sorts of badness in CopiedSpace.
Instead, after we flatten a dictionary, if properties fit inline we should clear the
Butterfly pointer so that the GC doesn't get confused later.
This patch does this clearing, and it also adds JSObject::checkStructure, which overrides
JSCell::checkStructure to add an ASSERT that makes sure that the Structure being assigned
agrees with the whether or not the object has a Butterfly. Also added an ASSERT to check
that the number of bytes reported to SlotVisitor::copyLater is non-zero.
* heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::copyLater):
* runtime/JSObject.cpp:
(JSC::JSObject::notifyPresenceOfIndexedAccessors):
(JSC::JSObject::convertUndecidedToInt32):
(JSC::JSObject::convertUndecidedToDouble):
(JSC::JSObject::convertUndecidedToContiguous):
(JSC::JSObject::convertInt32ToDouble):
(JSC::JSObject::convertInt32ToContiguous):
(JSC::JSObject::genericConvertDoubleToContiguous):
(JSC::JSObject::switchToSlowPutArrayStorage):
(JSC::JSObject::setPrototype):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::seal):
(JSC::JSObject::freeze):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::reifyStaticFunctionsForDelete):
(JSC::JSObject::removeDirect):
* runtime/JSObject.h:
(JSC::JSObject::setButterfly):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructure):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
* runtime/Structure.cpp:
(JSC::Structure::flattenDictionaryStructure):
Change-Id: Idfd8c22555f4373c1104316ff1ee28f5f84ef083
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154366 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=136340
Reviewed by Mark Hahnenberg.
Change-Id: I20483be1225d674160bbdab183bc52121fe4411c
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@173062 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
Make sure the inline methods are defined whereever referenced. This fixes
'undefined reference' errors when linking with MinGW-builds 4.8.2 32 bit
posix dwarf rev2.
Task-number: QTBUG-34083
Change-Id: Iadc7300634780741be9d97bc889290cd113181e1
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
|
|
|
|
|
|
| |
Importing a new snapshot of webkit.
Change-Id: I2d01ad12cdc8af8cb015387641120a9d7ea5f10c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=110228
Reviewed by Geoffrey Garen.
We need to return the WeakBlock to the BlockAllocator after the call to WeakBlock::destroy.
* heap/WeakSet.cpp:
(JSC::WeakSet::removeAllocator):
Change-Id: Iba6cff23e3d8b7a544a825dd1e435cf986b0d35f
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=102828
Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-01-18
Reviewed by Mark Hahnenberg.
Make MarkStackSegment::blockSize as the capacity of segments of a MarkStackArray.
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
* heap/MarkStack.cpp:
(JSC):
(JSC::MarkStackArray::MarkStackArray):
(JSC::MarkStackArray::expand):
(JSC::MarkStackArray::donateSomeCellsTo):
(JSC::MarkStackArray::stealSomeCellsFrom):
* heap/MarkStack.h:
(JSC::MarkStackSegment::data):
(CapacityFromSize):
(MarkStackArray):
* heap/MarkStackInlines.h:
(JSC::MarkStackArray::setTopForFullSegment):
(JSC::MarkStackArray::append):
(JSC::MarkStackArray::isEmpty):
(JSC::MarkStackArray::size):
* runtime/Options.h:
(JSC):
Change-Id: I4663100b6b8b054bed03c0c6eb01bb9274a1b264
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140195 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Unreviewed, build fix.
* heap/HeapTimer.h:
Qt on Mac has USE(CF) true, and should use the CF HeapTimer in that case.
Change-Id: Ibf9d96a3492e47dc33e131322de16e52de00e5e5
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141097 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=103996
Reviewed by Simon Hausmann.
Implements the incremental sweeping garbage collection for the Qt platform.
* heap/HeapTimer.cpp:
(JSC::HeapTimer::HeapTimer):
(JSC::HeapTimer::~HeapTimer):
(JSC::HeapTimer::timerEvent):
(JSC::HeapTimer::synchronize):
(JSC::HeapTimer::invalidate):
(JSC::HeapTimer::didStartVMShutdown):
* heap/HeapTimer.h:
(HeapTimer):
* heap/IncrementalSweeper.cpp:
(JSC::IncrementalSweeper::IncrementalSweeper):
(JSC::IncrementalSweeper::scheduleTimer):
* heap/IncrementalSweeper.h:
(IncrementalSweeper):
Change-Id: I47b874c050e08519cf5e3ed5a98a98ac8785971f
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=105339
Reviewed by Filip Pizlo.
Currently the DFG has a single branch in the inline allocation path for property/array storage where
it checks to see if the number of bytes requested will fit in the current block. This does not match
what the C++ allocation path does; it checks if the requested number of bytes is oversize, and then
if it's not, it tries to fit it in the current block. The garbage collector assumes that ALL allocations
that are greater than 16KB are in oversize blocks. Therefore, this mismatch can lead to crashes when
the collector tries to perform some operation on a CopiedBlock.
To avoid adding an extra branch to the inline allocation path in the JIT, we should make it so that
oversize blocks are allocated on the same alignment boundaries so that there is a single mask to find
the block header of any CopiedBlock (rather than two, one for normal and one for oversize blocks), and
we should figure out if a block is oversize by some other method than just whatever the JSObject says
it is. One way we could record this info Region of the block, since we allocate a one-off Region for
oversize blocks.
* heap/BlockAllocator.h:
(JSC::Region::isCustomSize):
(Region):
(JSC::Region::createCustomSize):
(JSC::Region::Region):
(JSC::BlockAllocator::deallocateCustomSize):
* heap/CopiedBlock.h:
(CopiedBlock):
(JSC::CopiedBlock::isOversize):
(JSC):
* heap/CopiedSpace.cpp:
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocate):
(JSC::CopiedSpace::tryReallocateOversize):
* heap/CopiedSpace.h:
(CopiedSpace):
* heap/CopiedSpaceInlines.h:
(JSC::CopiedSpace::contains):
(JSC::CopiedSpace::tryAllocate):
(JSC):
* heap/CopyVisitor.h:
(CopyVisitor):
* heap/CopyVisitorInlines.h:
(JSC::CopyVisitor::checkIfShouldCopy):
(JSC::CopyVisitor::didCopy):
* heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::copyLater):
* runtime/JSObject.cpp:
(JSC::JSObject::copyButterfly):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change-Id: Icebcfe83d82ace7c3e1db6a979306f604459c5ae
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@136119)
New snapshot that includes the fix for installing the QtWebProcess into libexec
Change-Id: I01344e079cbdac5678c4cba6ffcc05f4597cf0d7
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@135485)
Change-Id: I03774e5ac79721c13ffa30d152537a74d0b12e66
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@133952)
Revert back to an older snapshot that should build on ARM
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@134025)
New snapshot with numerious build fixes, including MSVC 2012 and ARM Thumb-2.
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@133733)
New snapshot that contains all previous fixes as well as build fix for latest QtMultimedia API changes.
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@132067)
New snapshot that fixes build without QtWidgets
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131718)
New snapshot that includes the return of -fkeep-memory at link time
to reduce memory pressure as well as modularized documentation
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131592)
New snapshot that includes the build fixes for Mac OS X 10.6 and earlier as well
as the previously cherry-picked changes
|
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131300)"
This reverts commit 5466563f4b5b6b86523e3f89bb7f77e5b5270c78.
Caused OOM issues on some CI machines :(
|
|
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@131300)
WebKit update which introduces the QtWebKitWidgets module that contains the WK1
widgets based API. (In fact it renames QtWebKit to QtWebKitWidgets while we're
working on completing the entire split as part of
https://bugs.webkit.org/show_bug.cgi?id=99314
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@129610)
New snapshot that removes QtQuick1 support (to be moved into QtQuick1 module)
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@129343)
New snapshot with build fixes for latest qtbase
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@128608)
New snapshot that enables WebKit2 build on Windows (still some bugs) and allows for WebKit to be built with qmake && make
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@128206)
This includes the rewrite of the configure part of the build system which should fix the QtQuick2 detection
and allow for further simplifications in the future
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@128073)
New snapshot
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@126545)
New snapshot with clang and python build fixes
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@126420)
New snapshot with OS X 10.6 build fix
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@125365)
New snapshot with build fixes for latest API changes in Qt and all WK1 Win MSVC fixes upstream
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@124002)
New snapshot with prospective Mountain Lion build fix
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@123477)
New snapshot that adapts to latest Qt API changes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@123308)
New snapshot with better configure tests
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@122948)
New snapshot that should fix the rendering issues recently introduced
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@122676)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@122325)
New snapshot that should work with the latest Qt build system changes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@121325)
New snapshot with more Windows build fixes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@121147)
New snapshot that includes Win32 debug build fix (use SVGAllInOne)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@120815)
New snapshot with permission fix included
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://bugs.webkit.org/show_bug.cgi?id=68429
Patch by Patrick Gansterer <paroga@webkit.org> on 2012-06-13
Reviewed by NOBODY (OOPS!).
Implement pthread TLS functionality with native windows functions.
* heap/MachineStackMarker.cpp: Use the new functions instead of pthread directly.
* heap/MachineStackMarker.h:
* wtf/ThreadSpecific.h:
(WTF::ThreadSpecificKeyCreate): Added wrapper around pthread_key_create.
(WTF::ThreadSpecificKeyDelete): Added wrapper around pthread_key_delete.
(WTF::ThreadSpecificSet): Added wrapper around pthread_setspecific.
(WTF::ThreadSpecificGet): Added wrapper around pthread_getspecific.
* wtf/ThreadSpecificWin.cpp:
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@120813)
New snapshot with Windows build fixes
|
|
|
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@119200)
Weekly update :). Particularly relevant changes for Qt are the use of the WebCore image decoders and direct usage
of libpng/libjpeg if available in the system.
|
|
|
|
| |
(http://svn.webkit.org/repository/webkit/trunk@118629)
|