1. 28 Jan, 2011 6 commits
    • oliver@apple.com's avatar
      2011-01-27 Oliver Hunt <oliver@apple.com> · c975423a
      oliver@apple.com authored
              Reviewed by Geoffrey Garen.
      
              Convert markstack to a slot visitor API
              https://bugs.webkit.org/show_bug.cgi?id=53219
      
              Move the MarkStack over to a slot based marking API.
      
              In order to avoiding aliasing concerns there are two new types
              that need to be used when holding on to JSValues and JSCell that
              need to be marked: WriteBarrier and DeprecatedPtr.  WriteBarrier
              is expected to be used for any JSValue or Cell that's lifetime and
              marking is controlled by another GC object.  DeprecatedPtr is used
              for any value that we need to rework ownership for.
      
              The change over to this model has produced a large amount of
              code changes, but they are mostly mechanical (forwarding JSGlobalData,
              etc).
      
              * API/JSCallbackObject.h:
              (JSC::JSCallbackObjectData::setPrivateProperty):
              (JSC::JSCallbackObjectData::JSPrivatePropertyMap::getPrivateProperty):
              (JSC::JSCallbackObjectData::JSPrivatePropertyMap::setPrivateProperty):
              (JSC::JSCallbackObjectData::JSPrivatePropertyMap::markChildren):
              (JSC::JSCallbackObject::setPrivateProperty):
              * API/JSCallbackObjectFunctions.h:
              (JSC::::put):
              (JSC::::staticFunctionGetter):
              * API/JSObjectRef.cpp:
              (JSObjectMakeConstructor):
              (JSObjectSetPrivateProperty):
              * API/JSWeakObjectMapRefInternal.h:
              * JavaScriptCore.exp:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bytecode/CodeBlock.cpp:
              (JSC::CodeBlock::markAggregate):
              * bytecode/CodeBlock.h:
              (JSC::CodeBlock::globalObject):
              * bytecompiler/BytecodeGenerator.cpp:
              (JSC::BytecodeGenerator::BytecodeGenerator):
              (JSC::BytecodeGenerator::emitJumpIfNotFunctionCall):
              (JSC::BytecodeGenerator::emitJumpIfNotFunctionApply):
              (JSC::BytecodeGenerator::findScopedProperty):
              * debugger/DebuggerActivation.cpp:
              (JSC::DebuggerActivation::DebuggerActivation):
              (JSC::DebuggerActivation::markChildren):
              * debugger/DebuggerActivation.h:
              * interpreter/Interpreter.cpp:
              (JSC::Interpreter::resolve):
              (JSC::Interpreter::resolveSkip):
              (JSC::Interpreter::resolveGlobalDynamic):
              (JSC::Interpreter::resolveBaseAndProperty):
              (JSC::Interpreter::unwindCallFrame):
              (JSC::appendSourceToError):
              (JSC::Interpreter::execute):
              (JSC::Interpreter::privateExecute):
              * interpreter/Register.h:
              (JSC::Register::jsValueSlot):
              * jit/JITStubs.cpp:
              (JSC::JITThunks::tryCacheGetByID):
              (JSC::DEFINE_STUB_FUNCTION):
              * jsc.cpp:
              (GlobalObject::GlobalObject):
              * runtime/Arguments.cpp:
              (JSC::Arguments::markChildren):
              (JSC::Arguments::getOwnPropertySlot):
              (JSC::Arguments::getOwnPropertyDescriptor):
              (JSC::Arguments::put):
              * runtime/Arguments.h:
              (JSC::Arguments::setActivation):
              (JSC::Arguments::Arguments):
              * runtime/ArrayConstructor.cpp:
              (JSC::ArrayConstructor::ArrayConstructor):
              (JSC::constructArrayWithSizeQuirk):
              * runtime/ArrayPrototype.cpp:
              (JSC::arrayProtoFuncSplice):
              * runtime/BatchedTransitionOptimizer.h:
              (JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer):
              (JSC::BatchedTransitionOptimizer::~BatchedTransitionOptimizer):
              * runtime/BooleanConstructor.cpp:
              (JSC::BooleanConstructor::BooleanConstructor):
              (JSC::constructBoolean):
              (JSC::constructBooleanFromImmediateBoolean):
              * runtime/BooleanPrototype.cpp:
              (JSC::BooleanPrototype::BooleanPrototype):
              * runtime/ConservativeSet.h:
              (JSC::ConservativeSet::mark):
              * runtime/DateConstructor.cpp:
              (JSC::DateConstructor::DateConstructor):
              * runtime/DateInstance.cpp:
              (JSC::DateInstance::DateInstance):
              * runtime/DatePrototype.cpp:
              (JSC::dateProtoFuncSetTime):
              (JSC::setNewValueFromTimeArgs):
              (JSC::setNewValueFromDateArgs):
              (JSC::dateProtoFuncSetYear):
              * runtime/ErrorConstructor.cpp:
              (JSC::ErrorConstructor::ErrorConstructor):
              * runtime/ErrorInstance.cpp:
              (JSC::ErrorInstance::ErrorInstance):
              * runtime/ErrorPrototype.cpp:
              (JSC::ErrorPrototype::ErrorPrototype):
              * runtime/FunctionConstructor.cpp:
              (JSC::FunctionConstructor::FunctionConstructor):
              * runtime/FunctionPrototype.cpp:
              (JSC::FunctionPrototype::FunctionPrototype):
              * runtime/GetterSetter.cpp:
              (JSC::GetterSetter::markChildren):
              * runtime/GetterSetter.h:
              (JSC::GetterSetter::GetterSetter):
              (JSC::GetterSetter::getter):
              (JSC::GetterSetter::setGetter):
              (JSC::GetterSetter::setter):
              (JSC::GetterSetter::setSetter):
              * runtime/GlobalEvalFunction.cpp:
              (JSC::GlobalEvalFunction::GlobalEvalFunction):
              (JSC::GlobalEvalFunction::markChildren):
              * runtime/GlobalEvalFunction.h:
              (JSC::GlobalEvalFunction::cachedGlobalObject):
              * runtime/Heap.cpp:
              (JSC::Heap::markProtectedObjects):
              (JSC::Heap::markTempSortVectors):
              (JSC::Heap::markRoots):
              * runtime/InternalFunction.cpp:
              (JSC::InternalFunction::InternalFunction):
              * runtime/JSAPIValueWrapper.h:
              (JSC::JSAPIValueWrapper::value):
              (JSC::JSAPIValueWrapper::JSAPIValueWrapper):
              * runtime/JSActivation.cpp:
              (JSC::JSActivation::put):
              * runtime/JSArray.cpp:
              (JSC::JSArray::JSArray):
              (JSC::JSArray::getOwnPropertySlot):
              (JSC::JSArray::getOwnPropertyDescriptor):
              (JSC::JSArray::put):
              (JSC::JSArray::putSlowCase):
              (JSC::JSArray::deleteProperty):
              (JSC::JSArray::increaseVectorLength):
              (JSC::JSArray::setLength):
              (JSC::JSArray::pop):
              (JSC::JSArray::push):
              (JSC::JSArray::unshiftCount):
              (JSC::JSArray::sort):
              (JSC::JSArray::fillArgList):
              (JSC::JSArray::copyToRegisters):
              (JSC::JSArray::compactForSorting):
              * runtime/JSArray.h:
              (JSC::JSArray::getIndex):
              (JSC::JSArray::setIndex):
              (JSC::JSArray::uncheckedSetIndex):
              (JSC::JSArray::markChildrenDirect):
              * runtime/JSByteArray.cpp:
              (JSC::JSByteArray::JSByteArray):
              * runtime/JSCell.h:
              (JSC::JSCell::MarkStack::append):
              (JSC::JSCell::MarkStack::appendCell):
              * runtime/JSFunction.cpp:
              (JSC::JSFunction::JSFunction):
              (JSC::JSFunction::getOwnPropertySlot):
              * runtime/JSGlobalObject.cpp:
              (JSC::markIfNeeded):
              (JSC::JSGlobalObject::reset):
              (JSC::JSGlobalObject::resetPrototype):
              (JSC::JSGlobalObject::markChildren):
              * runtime/JSGlobalObject.h:
              (JSC::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
              (JSC::JSGlobalObject::regExpConstructor):
              (JSC::JSGlobalObject::errorConstructor):
              (JSC::JSGlobalObject::evalErrorConstructor):
              (JSC::JSGlobalObject::rangeErrorConstructor):
              (JSC::JSGlobalObject::referenceErrorConstructor):
              (JSC::JSGlobalObject::syntaxErrorConstructor):
              (JSC::JSGlobalObject::typeErrorConstructor):
              (JSC::JSGlobalObject::URIErrorConstructor):
              (JSC::JSGlobalObject::evalFunction):
              (JSC::JSGlobalObject::objectPrototype):
              (JSC::JSGlobalObject::functionPrototype):
              (JSC::JSGlobalObject::arrayPrototype):
              (JSC::JSGlobalObject::booleanPrototype):
              (JSC::JSGlobalObject::stringPrototype):
              (JSC::JSGlobalObject::numberPrototype):
              (JSC::JSGlobalObject::datePrototype):
              (JSC::JSGlobalObject::regExpPrototype):
              (JSC::JSGlobalObject::methodCallDummy):
              (JSC::constructArray):
              * runtime/JSONObject.cpp:
              (JSC::Stringifier::Holder::object):
              (JSC::Stringifier::Holder::objectSlot):
              (JSC::Stringifier::markAggregate):
              (JSC::Stringifier::stringify):
              (JSC::Stringifier::Holder::appendNextProperty):
              (JSC::Walker::callReviver):
              (JSC::Walker::walk):
              * runtime/JSObject.cpp:
              (JSC::JSObject::defineGetter):
              (JSC::JSObject::defineSetter):
              (JSC::JSObject::removeDirect):
              (JSC::JSObject::putDirectFunction):
              (JSC::JSObject::putDirectFunctionWithoutTransition):
              (JSC::putDescriptor):
              (JSC::JSObject::defineOwnProperty):
              * runtime/JSObject.h:
              (JSC::JSObject::putDirectOffset):
              (JSC::JSObject::putUndefinedAtDirectOffset):
              (JSC::JSObject::flattenDictionaryObject):
              (JSC::JSObject::putDirectInternal):
              (JSC::JSObject::putDirect):
              (JSC::JSObject::putDirectFunction):
              (JSC::JSObject::putDirectWithoutTransition):
              (JSC::JSObject::putDirectFunctionWithoutTransition):
              (JSC::JSValue::putDirect):
              (JSC::JSObject::allocatePropertyStorageInline):
              (JSC::JSObject::markChildrenDirect):
              * runtime/JSStaticScopeObject.cpp:
              (JSC::JSStaticScopeObject::markChildren):
              * runtime/JSString.cpp:
              (JSC::StringObject::create):
              * runtime/JSValue.h:
              * runtime/JSWrapperObject.cpp:
              (JSC::JSWrapperObject::markChildren):
              * runtime/JSWrapperObject.h:
              (JSC::JSWrapperObject::internalValue):
              (JSC::JSWrapperObject::setInternalValue):
              * runtime/LiteralParser.cpp:
              (JSC::LiteralParser::parse):
              * runtime/Lookup.cpp:
              (JSC::setUpStaticFunctionSlot):
              * runtime/Lookup.h:
              (JSC::lookupPut):
              * runtime/MarkStack.h:
              * runtime/MathObject.cpp:
              (JSC::MathObject::MathObject):
              * runtime/NativeErrorConstructor.cpp:
              (JSC::NativeErrorConstructor::NativeErrorConstructor):
              * runtime/NativeErrorPrototype.cpp:
              (JSC::NativeErrorPrototype::NativeErrorPrototype):
              * runtime/NumberConstructor.cpp:
              (JSC::NumberConstructor::NumberConstructor):
              (JSC::constructWithNumberConstructor):
              * runtime/NumberObject.cpp:
              (JSC::constructNumber):
              * runtime/NumberPrototype.cpp:
              (JSC::NumberPrototype::NumberPrototype):
              * runtime/ObjectConstructor.cpp:
              (JSC::ObjectConstructor::ObjectConstructor):
              (JSC::objectConstructorGetOwnPropertyDescriptor):
              * runtime/Operations.h:
              (JSC::normalizePrototypeChain):
              (JSC::resolveBase):
              * runtime/PrototypeFunction.cpp:
              (JSC::PrototypeFunction::PrototypeFunction):
              * runtime/PutPropertySlot.h:
              (JSC::PutPropertySlot::setExistingProperty):
              (JSC::PutPropertySlot::setNewProperty):
              (JSC::PutPropertySlot::base):
              * runtime/RegExpConstructor.cpp:
              (JSC::RegExpConstructor::RegExpConstructor):
              * runtime/ScopeChain.cpp:
              (JSC::ScopeChainNode::print):
              * runtime/ScopeChain.h:
              (JSC::ScopeChainNode::~ScopeChainNode):
              (JSC::ScopeChainIterator::operator*):
              (JSC::ScopeChainIterator::operator->):
              (JSC::ScopeChain::top):
              * runtime/ScopeChainMark.h:
              (JSC::ScopeChain::markAggregate):
              * runtime/SmallStrings.cpp:
              (JSC::isMarked):
              (JSC::SmallStrings::markChildren):
              * runtime/SmallStrings.h:
              (JSC::SmallStrings::emptyString):
              (JSC::SmallStrings::singleCharacterString):
              (JSC::SmallStrings::singleCharacterStrings):
              * runtime/StringConstructor.cpp:
              (JSC::StringConstructor::StringConstructor):
              * runtime/StringObject.cpp:
              (JSC::StringObject::StringObject):
              * runtime/StringObject.h:
              * runtime/StringPrototype.cpp:
              (JSC::StringPrototype::StringPrototype):
              * runtime/Structure.cpp:
              (JSC::Structure::flattenDictionaryStructure):
              * runtime/Structure.h:
              (JSC::Structure::storedPrototypeSlot):
              * runtime/WeakGCMap.h:
              (JSC::WeakGCMap::uncheckedGet):
              (JSC::WeakGCMap::uncheckedGetSlot):
              (JSC::::get):
              (JSC::::take):
              (JSC::::set):
              (JSC::::uncheckedRemove):
              * runtime/WriteBarrier.h: Added.
              (JSC::DeprecatedPtr::DeprecatedPtr):
              (JSC::DeprecatedPtr::get):
              (JSC::DeprecatedPtr::operator*):
              (JSC::DeprecatedPtr::operator->):
              (JSC::DeprecatedPtr::slot):
              (JSC::DeprecatedPtr::operator UnspecifiedBoolType*):
              (JSC::DeprecatedPtr::operator!):
              (JSC::WriteBarrierBase::set):
              (JSC::WriteBarrierBase::get):
              (JSC::WriteBarrierBase::operator*):
              (JSC::WriteBarrierBase::operator->):
              (JSC::WriteBarrierBase::slot):
              (JSC::WriteBarrierBase::operator UnspecifiedBoolType*):
              (JSC::WriteBarrierBase::operator!):
              (JSC::WriteBarrier::WriteBarrier):
              (JSC::operator==):
      2011-01-27  Oliver Hunt  <oliver@apple.com>
      
              Reviewed by Geoffrey Garen.
      
              Convert markstack to a slot visitor API
              https://bugs.webkit.org/show_bug.cgi?id=53219
      
              There's no reason to recurse here, the value we
              were marking was protected.
      
              * JSValueWrapper.cpp:
              (JSValueWrapper::JSObjectMark):
      2011-01-27  Oliver Hunt  <oliver@apple.com>
      
              Reviewed by Geoffrey Garen.
      
              Convert markstack to a slot visitor API
              https://bugs.webkit.org/show_bug.cgi?id=53219
      
              Update WebCore to the new marking apis, correct bindings
              codegen.
      
              * ForwardingHeaders/runtime/WriteBarrier.h: Added.
              * WebCore.exp.in:
              * bindings/js/DOMWrapperWorld.h:
              (WebCore::DOMWrapperWorld::globalData):
              * bindings/js/JSAudioConstructor.cpp:
              (WebCore::JSAudioConstructor::JSAudioConstructor):
              * bindings/js/JSDOMBinding.cpp:
              (WebCore::markDOMNodesForDocument):
              (WebCore::markDOMObjectWrapper):
              (WebCore::markDOMNodeWrapper):
              * bindings/js/JSDOMGlobalObject.cpp:
              (WebCore::JSDOMGlobalObject::markChildren):
              (WebCore::JSDOMGlobalObject::setInjectedScript):
              (WebCore::JSDOMGlobalObject::injectedScript):
              * bindings/js/JSDOMGlobalObject.h:
              (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
              (WebCore::getDOMConstructor):
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::setLocation):
              (WebCore::DialogHandler::dialogCreated):
              * bindings/js/JSDOMWindowShell.cpp:
              (WebCore::JSDOMWindowShell::JSDOMWindowShell):
              (WebCore::JSDOMWindowShell::setWindow):
              (WebCore::JSDOMWindowShell::markChildren):
              (WebCore::JSDOMWindowShell::unwrappedObject):
              * bindings/js/JSDOMWindowShell.h:
              (WebCore::JSDOMWindowShell::window):
              (WebCore::JSDOMWindowShell::setWindow):
              * bindings/js/JSEventListener.cpp:
              (WebCore::JSEventListener::JSEventListener):
              (WebCore::JSEventListener::markJSFunction):
              * bindings/js/JSEventListener.h:
              (WebCore::JSEventListener::jsFunction):
              * bindings/js/JSHTMLDocumentCustom.cpp:
              (WebCore::JSHTMLDocument::setAll):
              * bindings/js/JSImageConstructor.cpp:
              (WebCore::JSImageConstructor::JSImageConstructor):
              * bindings/js/JSImageDataCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSJavaScriptCallFrameCustom.cpp:
              (WebCore::JSJavaScriptCallFrame::scopeChain):
              (WebCore::JSJavaScriptCallFrame::scopeType):
              * bindings/js/JSNodeFilterCondition.cpp:
              (WebCore::JSNodeFilterCondition::markAggregate):
              (WebCore::JSNodeFilterCondition::acceptNode):
              * bindings/js/JSNodeFilterCondition.h:
              * bindings/js/JSNodeFilterCustom.cpp:
              * bindings/js/JSOptionConstructor.cpp:
              (WebCore::JSOptionConstructor::JSOptionConstructor):
              * bindings/js/JSSQLResultSetRowListCustom.cpp:
              (WebCore::JSSQLResultSetRowList::item):
              * bindings/js/ScriptCachedFrameData.cpp:
              (WebCore::ScriptCachedFrameData::restore):
              * bindings/js/ScriptObject.cpp:
              (WebCore::ScriptGlobalObject::set):
              * bindings/js/SerializedScriptValue.cpp:
              (WebCore::CloneDeserializer::putProperty):
              * bindings/scripts/CodeGeneratorJS.pm:
              * dom/Document.h:
      2011-01-27  Oliver Hunt  <oliver@apple.com>
      
              Reviewed by Geoffrey Garen.
      
              Convert markstack to a slot visitor API
              https://bugs.webkit.org/show_bug.cgi?id=53219
      
              Update to new marking api
      
              * WebView/WebScriptDebugDelegate.mm:
              (-[WebScriptCallFrame scopeChain]):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77006 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c975423a
    • aroben@apple.com's avatar
      Chromium build fix after r76967 · ea607193
      aroben@apple.com authored
      * wtf/ThreadingPrimitives.h: Use OS(WINDOWS) instead of PLATFORM(WIN), to match other
      similar macros in this file.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ea607193
    • msaboff@apple.com's avatar
      2011-01-28 Michael Saboff <msaboff@apple.com> · 53783a0b
      msaboff@apple.com authored
              Potentially Unsafe HashSet of RuntimeObject* in RootObject definition
              https://bugs.webkit.org/show_bug.cgi?id=53271
      
              Reapplying this this change.  No change from prior patch in
              JavaScriptCore.
      
              Added new isValid() methods to check if a contained object in
              a WeakGCMap is valid when using an unchecked iterator.
      
              * runtime/WeakGCMap.h:
              (JSC::WeakGCMap::isValid):
      2011-01-28  Michael Saboff  <msaboff@apple.com>
      
              Reviewed by Geoffrey Garen.
      
              Potentially Unsafe HashSet of RuntimeObject* in RootObject definition
              https://bugs.webkit.org/show_bug.cgi?id=53271
      
              Reapplying this patch with the change that the second ASSERT in 
              RootObject::removeRuntimeObject was changed to use
              .uncheckedGet() instead of the failing .get().  The object in question
              could be in the process of being GC'ed.  The get() call will not return
              such an object while the uncheckedGet() call will return the (unsafe) 
              object.  This is the behavior we want.
      
              Precautionary change.
              Changed RootObject to use WeakGCMap instead of HashSet.
              Found will looking for another issue, but can't produce a test case
              that is problematic.  THerefore there aren't any new tests.
      
              * bridge/runtime_root.cpp:
              (JSC::Bindings::RootObject::invalidate):
              (JSC::Bindings::RootObject::addRuntimeObject):
              (JSC::Bindings::RootObject::removeRuntimeObject):
              * bridge/runtime_root.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      53783a0b
    • aroben@apple.com's avatar
      Change BinarySemaphore to wrap an auto-reset Win32 event on Windows · 34cd1e02
      aroben@apple.com authored
      Fixes <http://webkit.org/b/53208> <rdar://problem/8922490>.
      
      Reviewed by Dave Hyatt.
      
      Source/WebKit2:
      
      * Platform/CoreIPC/BinarySemaphore.cpp: Wrap this implementation in #if !PLATFORM(WIN).
      
      * Platform/CoreIPC/BinarySemaphore.h: Make the Windows implementation have a single HANDLE
      member that holds the event.
      
      * Platform/CoreIPC/win/BinarySemaphoreWin.cpp: Copied from Source/WebKit2/Platform/CoreIPC/BinarySemaphore.cpp.
      (CoreIPC::BinarySemaphore::BinarySemaphore): Create our event.
      (CoreIPC::BinarySemaphore::~BinarySemaphore): Destory our event.
      (CoreIPC::BinarySemaphore::signal): Signal the event.
      (CoreIPC::BinarySemaphore::wait): Convert the absolute time to a wait interval, then wait
      for the event to be signaled or for the interval to elapse.
      
      * win/WebKit2.vcproj: Added BinarySemaphoreWin.cpp. Also let VS have its way with the file.
      
      Source/JavaScriptCore:
      
      Extract code to convert a WTF absolute time to a Win32 wait interval into a separate
      function
      
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Export the new function.
      
      * wtf/ThreadingPrimitives.h: Declare the new function.
      
      * wtf/ThreadingWin.cpp:
      (WTF::ThreadCondition::timedWait): Moved code to convert the absolute time to a wait
      interval from here...
      (WTF::absoluteTimeToWaitTimeoutInterval): ...to here.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      34cd1e02
    • weinig@apple.com's avatar
      Add basic rubber banding support · cc0f1406
      weinig@apple.com authored
      <rdar://problem/8219429>
      https://bugs.webkit.org/show_bug.cgi?id=53277
      
      Reviewed by Maciej Stachowiak.
      
      Source/JavaScriptCore: 
      
      * wtf/Platform.h: Add ENABLE for rubber banding.
      
      Source/WebCore: 
      
      * page/EventHandler.cpp:
      (WebCore::EventHandler::handleGestureEvent):
      Pass gesture events to the FrameView.
      
      * platform/ScrollAnimator.cpp:
      (WebCore::ScrollAnimator::handleGestureEvent):
      * platform/ScrollAnimator.h:
      Add stubbed out implementation.
      
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::ScrollView):
      (WebCore::ScrollView::overhangAmount):
      (WebCore::ScrollView::wheelEvent):
      * platform/ScrollView.h:
      * platform/ScrollableArea.cpp:
      (WebCore::ScrollableArea::ScrollableArea):
      (WebCore::ScrollableArea::handleGestureEvent):
      * platform/ScrollableArea.h:
      (WebCore::ScrollableArea::constrainsScrollingToContentEdge):
      (WebCore::ScrollableArea::setConstrainsScrollingToContentEdge):
      Move constrains scrolling bit to ScrollableArea from ScrollView.
      
      (WebCore::ScrollableArea::contentsSize):
      (WebCore::ScrollableArea::overhangAmount):
      Add additional virtual functions for information needed by the animator.
      
      * platform/mac/ScrollAnimatorMac.h:
      * platform/mac/ScrollAnimatorMac.mm:
      (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
      (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
      (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
      (WebCore::elasticDeltaForTimeDelta):
      (WebCore::elasticDeltaForReboundDelta):
      (WebCore::reboundDeltaForElasticDelta):
      (WebCore::scrollWheelMultiplier):
      (WebCore::ScrollAnimatorMac::handleWheelEvent):
      (WebCore::ScrollAnimatorMac::handleGestureEvent):
      (WebCore::ScrollAnimatorMac::pinnedInDirection):
      (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
      (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
      (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
      (WebCore::ScrollAnimatorMac::beginScrollGesture):
      (WebCore::ScrollAnimatorMac::endScrollGesture):
      (WebCore::ScrollAnimatorMac::snapRubberBand):
      (WebCore::roundTowardZero):
      (WebCore::roundToDevicePixelTowardZero):
      (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
      Implement basic rubber banding.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76956 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cc0f1406
    • ossy@webkit.org's avatar
      Unreviewed, rolling out r76893. · f1a40a73
      ossy@webkit.org authored
      http://trac.webkit.org/changeset/76893
      https://bugs.webkit.org/show_bug.cgi?id=53287
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-01-28
      It made some tests crash on GTK and Qt debug bots (Requested
      by Ossy on #webkit).
      
      Source/JavaScriptCore: 
      
      * runtime/WeakGCMap.h:
      
      Source/WebCore: 
      
      * bridge/runtime_root.cpp:
      (JSC::Bindings::RootObject::invalidate):
      (JSC::Bindings::RootObject::addRuntimeObject):
      (JSC::Bindings::RootObject::removeRuntimeObject):
      * bridge/runtime_root.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76925 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1a40a73
  2. 27 Jan, 2011 2 commits
  3. 26 Jan, 2011 3 commits
    • weinig@apple.com's avatar
      Add events to represent the start/end of a gesture scroll · 99b7847a
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=53215
      
      Reviewed by Maciej Stachowiak.
      
      Source/JavaScriptCore: 
      
      * wtf/Platform.h: Add ENABLE for gesture events. 
      
      Source/WebCore: 
      
      * WebCore.exp.in: 
      Add new file.
      
      * WebCore.xcodeproj/project.pbxproj:
      Add new file.
      
      * page/EventHandler.cpp:
      (WebCore::EventHandler::handleGestureEvent):
      * page/EventHandler.h:
      Add entry point for handling gesture events.
      
      * platform/PlatformGestureEvent.h: Added.
      (WebCore::PlatformGestureEvent::PlatformGestureEvent):
      (WebCore::PlatformGestureEvent::type):
      (WebCore::PlatformGestureEvent::position):
      (WebCore::PlatformGestureEvent::globalPosition):
      (WebCore::PlatformGestureEvent::timestamp):
      Add platform agnostic representation of a gesture event.
      
      Source/WebKit2: 
      
      * Scripts/webkit2/messages.py:
      * Shared/WebEvent.h:
      (WebKit::WebGestureEvent::WebGestureEvent):
      (WebKit::WebGestureEvent::position):
      (WebKit::WebGestureEvent::globalPosition):
      * Shared/WebEventConversion.cpp:
      (WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):
      (WebKit::platform):
      * Shared/WebEventConversion.h:
      * Shared/WebGestureEvent.cpp: Added.
      (WebKit::WebGestureEvent::WebGestureEvent):
      (WebKit::WebGestureEvent::encode):
      (WebKit::WebGestureEvent::decode):
      (WebKit::WebGestureEvent::isGestureEventType):
      * Shared/mac/WebEventFactory.h:
      * Shared/mac/WebEventFactory.mm:
      (WebKit::gestureEventTypeForEvent):
      (WebKit::WebEventFactory::createWebGestureEvent):
      * UIProcess/API/mac/WKView.mm:
      (-[WKView shortCircuitedEndGestureWithEvent:]):
      (-[WKView beginGestureWithEvent:]):
      (-[WKView viewDidMoveToWindow]):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::handleGestureEvent):
      (WebKit::WebPageProxy::didReceiveEvent):
      * UIProcess/WebPageProxy.h:
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::handleGestureEvent):
      (WebKit::WebPage::gestureEvent):
      * WebProcess/WebPage/WebPage.h:
      * WebProcess/WebPage/WebPage.messages.in:
      Pipe gesture events down to WebCore.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76745 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      99b7847a
    • yael.aharon@nokia.com's avatar
      2011-01-26 Yael Aharon <yael.aharon@nokia.com> · 00464b60
      yael.aharon@nokia.com authored
              Reviewed by Laszlo Gombos.
      
              [Qt][Symbian] Fix --minimal build
              https://bugs.webkit.org/show_bug.cgi?id=52839
      
              Move definition of USE_SYSTEM_MALLOC out of pri file.
              Put it in platform.h instead.
      
              * Source/WebKit.pri:
      2011-01-26  Yael Aharon  <yael.aharon@nokia.com>
      
              Reviewed by Laszlo Gombos.
      
              [Qt][Symbian] Fix --minimal build
              https://bugs.webkit.org/show_bug.cgi?id=52839
      
              Move definition of USE_SYSTEM_MALLOC out of pri file.
              Put it in platform.h instead.
      
              * wtf/Platform.h:
              * wtf/TCSystemAlloc.cpp:
              * wtf/wtf.pri:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76716 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      00464b60
    • paroga@webkit.org's avatar
      2011-01-26 Patrick Gansterer <paroga@webkit.org> · fc9d884f
      paroga@webkit.org authored
              Reviewed by Andreas Kling.
      
              [WINCE] Add JIT support to build system
              https://bugs.webkit.org/show_bug.cgi?id=53079
      
              * CMakeListsWinCE.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76687 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc9d884f
  4. 25 Jan, 2011 9 commits
    • aroben@apple.com's avatar
      Windows Production build fix · 1ef1789e
      aroben@apple.com authored
      Reviewed by Steve Falkenburg.
      
      * JavaScriptCore.vcproj/JavaScriptCore.make: Set BUILDSTYLE to Release_PGO at the very start
      of the file so that ConfigurationBuildDir takes that into account. Also set it the right way
      (by redefining the macro) rather than the wrong way (by modifying the environment variable).
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1ef1789e
    • sfalken@apple.com's avatar
      Windows production build fix. · 0d9eec91
      sfalken@apple.com authored
      Use correct environment variable escaping
      
      Rubber-stamped by Adam Roben.
      
      Source/JavaScriptCore: 
      
      * JavaScriptCore.vcproj/JavaScriptCore.make:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make:
      
      Source/WebCore: 
      
      * WebCore.vcproj/WebCore.make:
      
      Source/WebKit/win: 
      
      * WebKit.vcproj/WebKit.make:
      
      Source/WebKit2: 
      
      * win/WebKit2.make:
      * win/WebKit2Generated.make:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76638 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0d9eec91
    • oliver@apple.com's avatar
      2011-01-25 Oliver Hunt <oliver@apple.com> · f60aec77
      oliver@apple.com authored
              Reviewed by Gavin Barraclough.
      
              JSON.stringify processing time exponentially grows with size of object
              https://bugs.webkit.org/show_bug.cgi?id=51922
      
              Remove last use of reserveCapacity from JSON stringification, as it results
              in appalling append behaviour when there are a large number of property names
              and nothing else.
      
              * runtime/JSONObject.cpp:
              (JSC::Stringifier::appendQuotedString):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76635 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f60aec77
    • antti@apple.com's avatar
      Not reviewed. · 72ef29bb
      antti@apple.com authored
              
      Try to fix windows build.
      
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      72ef29bb
    • antti@apple.com's avatar
      REGRESSION: Leak in JSParser::Scope::copyCapturedVariablesToVector() · be333a79
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=53061
               
      Reviewed by Oliver Hunt.
      
      Cache did not know about the subclass so failed to fully delete the items. 
      Got rid of the subclass and moved the classes to separate files.
      
      * CMakeLists.txt:
      * GNUmakefile.am:
      * JavaScriptCore.exp:
      * JavaScriptCore.gypi:
      * JavaScriptCore.pro:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * parser/JSParser.cpp:
      (JSC::JSParser::Scope::saveFunctionInfo):
      (JSC::JSParser::Scope::restoreFunctionInfo):
      (JSC::JSParser::findCachedFunctionInfo):
      (JSC::JSParser::parseFunctionInfo):
      * parser/SourceProvider.h:
      * parser/SourceProviderCache.cpp: Added.
      (JSC::SourceProviderCache::~SourceProviderCache):
      (JSC::SourceProviderCache::byteSize):
      * parser/SourceProviderCache.h: Added.
      (JSC::SourceProviderCache::SourceProviderCache):
      (JSC::SourceProviderCache::add):
      (JSC::SourceProviderCache::get):
      * parser/SourceProviderCacheItem.h: Added.
      (JSC::SourceProviderCacheItem::SourceProviderCacheItem):
      (JSC::SourceProviderCacheItem::approximateByteSize):
      (JSC::SourceProviderCacheItem::closeBraceToken):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be333a79
    • commit-queue@webkit.org's avatar
      2011-01-25 Marcilio Mendonca <mamendonca@rim.com> · a14c73d5
      commit-queue@webkit.org authored
              Reviewed by Darin Adler.
      
              Bug 53087: Refactoring: replaced a hanging "else" with a "return"
              statement
              https://bugs.webkit.org/show_bug.cgi?id=53087.
      
              Refactoring work: Replaced a hanging "else" within an #if PLATFORM(M
              with a "return" so that the code is more readable and less error pro
              (e.g., "else" doesn't use braces so adding extra lines to the else
              block won't have any effect; even worse, code still compiles
              successfully.
      
              * wtf/Assertions.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76609 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a14c73d5
    • cmarrin@apple.com's avatar
      2011-01-24 Chris Marrin <cmarrin@apple.com> · 8b28bbc8
      cmarrin@apple.com authored
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * configure.ac:
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * Configurations/FeatureDefines.xcconfig:
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * WebKit.gyp:
              * features.gypi:
              * src/Extensions3DChromium.cpp:
              * src/GraphicsContext3DChromium.cpp:
              * src/WebRuntimeFeatures.cpp:
              (WebKit::WebRuntimeFeatures::enableWebGL):
              (WebKit::WebRuntimeFeatures::isWebGLEnabled):
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * Api/qwebsettings.cpp:
              (QWebSettingsPrivate::apply):
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * WebView.cpp:
              (WebView::notifyPreferencesChanged):
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * Configurations/FeatureDefines.xcconfig:
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * Configurations/FeatureDefines.xcconfig:
              * DerivedSources.cpp:
              * GNUmakefile.am:
              * WebCore.pro:
              * bindings/generic/RuntimeEnabledFeatures.h:
              * bindings/js/JSArrayBufferCustom.cpp:
              * bindings/js/JSCanvasRenderingContextCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSDOMWindowCustom.cpp:
              * bindings/js/JSDataViewCustom.cpp:
              * bindings/js/JSDocumentCustom.cpp:
              * bindings/js/JSFloat32ArrayCustom.cpp:
              * bindings/js/JSHTMLCanvasElementCustom.cpp:
              (WebCore::JSHTMLCanvasElement::getContext):
              * bindings/js/JSInt16ArrayCustom.cpp:
              * bindings/js/JSInt32ArrayCustom.cpp:
              * bindings/js/JSInt8ArrayCustom.cpp:
              * bindings/js/JSUint16ArrayCustom.cpp:
              * bindings/js/JSUint32ArrayCustom.cpp:
              * bindings/js/JSUint8ArrayCustom.cpp:
              * bindings/js/JSWebGLRenderingContextCustom.cpp:
              * bindings/js/JSXMLHttpRequestCustom.cpp:
              (WebCore::JSXMLHttpRequest::markChildren):
              (WebCore::JSXMLHttpRequest::send):
              (WebCore::JSXMLHttpRequest::response):
              * bindings/v8/custom/V8ArrayBufferCustom.cpp:
              * bindings/v8/custom/V8ArrayBufferViewCustom.h:
              * bindings/v8/custom/V8DataViewCustom.cpp:
              * bindings/v8/custom/V8DocumentCustom.cpp:
              (WebCore::V8Document::getCSSCanvasContextCallback):
              * bindings/v8/custom/V8Float32ArrayCustom.cpp:
              * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
              (WebCore::V8HTMLCanvasElement::getContextCallback):
              * bindings/v8/custom/V8Int16ArrayCustom.cpp:
              * bindings/v8/custom/V8Int32ArrayCustom.cpp:
              * bindings/v8/custom/V8Int8ArrayCustom.cpp:
              * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
              * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
              * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
              * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
              * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
              (WebCore::V8XMLHttpRequest::responseAccessorGetter):
              (WebCore::V8XMLHttpRequest::sendCallback):
              * features.pri:
              * html/HTMLCanvasElement.cpp:
              (WebCore::HTMLCanvasElement::getContext):
              (WebCore::HTMLCanvasElement::reset):
              * html/HTMLCanvasElement.h:
              * html/canvas/ArrayBuffer.cpp:
              * html/canvas/ArrayBuffer.idl:
              * html/canvas/ArrayBufferView.cpp:
              * html/canvas/ArrayBufferView.idl:
              * html/canvas/DataView.cpp:
              * html/canvas/DataView.idl:
              * html/canvas/Float32Array.cpp:
              * html/canvas/Float32Array.idl:
              * html/canvas/Int16Array.cpp:
              * html/canvas/Int16Array.idl:
              * html/canvas/Int32Array.cpp:
              * html/canvas/Int32Array.idl:
              * html/canvas/Int8Array.cpp:
              * html/canvas/Int8Array.idl:
              * html/canvas/OESStandardDerivatives.cpp:
              * html/canvas/OESStandardDerivatives.idl:
              * html/canvas/OESTextureFloat.cpp:
              * html/canvas/OESTextureFloat.idl:
              * html/canvas/Uint16Array.cpp:
              * html/canvas/Uint16Array.idl:
              * html/canvas/Uint32Array.cpp:
              * html/canvas/Uint32Array.idl:
              * html/canvas/Uint8Array.cpp:
              * html/canvas/Uint8Array.idl:
              * html/canvas/WebGLActiveInfo.idl:
              * html/canvas/WebGLBuffer.cpp:
              * html/canvas/WebGLBuffer.idl:
              * html/canvas/WebGLContextAttributes.cpp:
              * html/canvas/WebGLContextAttributes.idl:
              * html/canvas/WebGLContextEvent.idl:
              * html/canvas/WebGLExtension.cpp:
              * html/canvas/WebGLFramebuffer.cpp:
              * html/canvas/WebGLFramebuffer.idl:
              * html/canvas/WebGLGetInfo.cpp:
              * html/canvas/WebGLObject.cpp:
              * html/canvas/WebGLProgram.cpp:
              * html/canvas/WebGLProgram.idl:
              * html/canvas/WebGLRenderbuffer.cpp:
              * html/canvas/WebGLRenderbuffer.idl:
              * html/canvas/WebGLRenderingContext.cpp:
              * html/canvas/WebGLRenderingContext.idl:
              * html/canvas/WebGLShader.cpp:
              * html/canvas/WebGLShader.idl:
              * html/canvas/WebGLTexture.cpp:
              * html/canvas/WebGLTexture.idl:
              * html/canvas/WebGLUniformLocation.cpp:
              * html/canvas/WebGLUniformLocation.idl:
              * html/canvas/WebKitLoseContext.cpp:
              * html/canvas/WebKitLoseContext.idl:
              * page/DOMWindow.idl:
              * platform/graphics/ANGLEWebKitBridge.cpp:
              * platform/graphics/GraphicsContext3D.cpp:
              * platform/graphics/cg/GraphicsContext3DCG.cpp:
              * platform/graphics/gpu/DrawingBuffer.cpp:
              * platform/graphics/gpu/mac/DrawingBufferMac.mm:
              * platform/graphics/mac/GraphicsContext3DMac.mm:
              * platform/graphics/mac/WebGLLayer.mm:
              * platform/graphics/opengl/Extensions3DOpenGL.cpp:
              * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
              * platform/graphics/qt/Extensions3DQt.cpp:
              * platform/graphics/qt/GraphicsContext3DQt.cpp:
              * platform/graphics/qt/GraphicsLayerQt.cpp:
              (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
              (WebCore::GraphicsLayerQtImpl::paint):
              (WebCore::GraphicsLayerQtImpl::flushChanges):
              * platform/graphics/qt/GraphicsLayerQt.h:
              * platform/graphics/skia/GraphicsContext3DSkia.cpp:
              * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
              * rendering/RenderLayerBacking.cpp:
              (WebCore::isAcceleratedCanvas):
              (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
              (WebCore::RenderLayerBacking::containsPaintedContent):
              (WebCore::RenderLayerBacking::contentChanged):
              * webaudio/AudioBuffer.cpp:
              * webaudio/AudioBuffer.idl:
              * webaudio/RealtimeAnalyser.cpp:
              * webaudio/RealtimeAnalyser.h:
              * webaudio/RealtimeAnalyserNode.h:
              * webaudio/RealtimeAnalyserNode.idl:
              * xml/XMLHttpRequest.cpp:
              (WebCore::XMLHttpRequest::setResponseType):
              (WebCore::XMLHttpRequest::clearResponse):
              (WebCore::XMLHttpRequest::didReceiveData):
              * xml/XMLHttpRequest.h:
      2011-01-24  Chris Marrin  <cmarrin@apple.com>
      
              Reviewed by Eric Seidel.
      
              Change ENABLE_3D_CANVAS to ENABLE_WEBGL
              https://bugs.webkit.org/show_bug.cgi?id=53041
      
              * Configurations/FeatureDefines.xcconfig:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76600 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8b28bbc8
    • aroben@apple.com's avatar
      Windows Production build fix · a9109256
      aroben@apple.com authored
      * JavaScriptCore.vcproj/JavaScriptCore.make: Added a missing "set".
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76598 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a9109256
    • paroga@webkit.org's avatar
      2011-01-25 Patrick Gansterer <paroga@webkit.org> · 9bff4bef
      paroga@webkit.org authored
              Reviewed by Eric Seidel.
      
              Add missing defines for COMPILER(RVCT) && CPU(ARM_THUMB2)
              https://bugs.webkit.org/show_bug.cgi?id=52949
      
              * jit/JITStubs.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76595 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9bff4bef
  5. 24 Jan, 2011 3 commits
    • aroben@apple.com's avatar
      Windows Production build fix · f4025fd1
      aroben@apple.com authored
      Source/JavaScriptCore:
      
      * JavaScriptCore.vcproj/JavaScriptCore.make: Update for move of JavaScriptCore into Source.
      
      Source/WebCore:
      
      * WebCore.vcproj/WebCore.make: Update for move of WebCore into Source.
      
      Source/WebKit/win:
      
      * WebKit.vcproj/WebKit.make: Update for move of WebKit into Source.
      
      Source/WebKit2:
      
      * win/WebKit2.make: Update for move of WebKit2 into Source.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76546 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4025fd1
    • pvarga@webkit.org's avatar
      2011-01-24 Peter Varga <pvarga@inf.u-szeged.hu> · 66266275
      pvarga@webkit.org authored
              Reviewed by Oliver Hunt.
      
              Optimize regex patterns which contain empty alternatives
              https://bugs.webkit.org/show_bug.cgi?id=51395
      
              Eliminate the empty alternatives from the regex pattern and convert it to do
              the matching in an easier way.
      
              * fast/regex/script-tests/slow.js:
              * fast/regex/slow-expected.txt:
      2011-01-24  Peter Varga  <pvarga@webkit.org>
      
              Reviewed by Oliver Hunt.
      
              Optimize regex patterns which contain empty alternatives
              https://bugs.webkit.org/show_bug.cgi?id=51395
      
              Eliminate the empty alternatives from the regex pattern and convert it to do
              the matching in an easier way.
      
              * yarr/YarrPattern.cpp:
              (JSC::Yarr::YarrPatternConstructor::atomParenthesesEnd):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76502 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      66266275
    • abecsi@webkit.org's avatar
      2011-01-24 Andras Becsi <abecsi@webkit.org> · 5c818c0c
      abecsi@webkit.org authored
              Reviewed by Csaba Osztrogonác.
      
              [Qt] Move project files into Source
              https://bugs.webkit.org/show_bug.cgi?id=52891
      
              * Source/DerivedSources.pro: Copied from DerivedSources.pro.
              * Source/WebKit.pri: Renamed from WebKit.pri.
              * Source/WebKit.pro: Added.
              * Source/common.pri: Renamed from common.pri.
              * WebKit.pro: Removed.
      2011-01-24  Andras Becsi  <abecsi@webkit.org>
      
              Reviewed by Csaba Osztrogonác.
      
              [Qt] Move project files into Source
              https://bugs.webkit.org/show_bug.cgi?id=52891
      
              * JavaScriptCore.pri:
              * JavaScriptCore.pro:
              * jsc.pro:
      2011-01-24  Andras Becsi  <abecsi@webkit.org>
      
              Reviewed by Csaba Osztrogonác.
      
              [Qt] Move project files into Source
              https://bugs.webkit.org/show_bug.cgi?id=52891
      
              No new tests needed.
      
              * WebCore.pri:
              * WebCore.pro:
      2011-01-24  Andras Becsi  <abecsi@webkit.org>
      
              Reviewed by Csaba Osztrogonác.
      
              [Qt] Move project files into Source
              https://bugs.webkit.org/show_bug.cgi?id=52891
      
              * declarative/declarative.pro:
              * docs/docs.pri:
              * tests/tests.pri:
      2011-01-24  Andras Becsi  <abecsi@webkit.org>
      
              Reviewed by Csaba Osztrogonác.
      
              [Qt] Move project files into Source
              https://bugs.webkit.org/show_bug.cgi?id=52891
      
              * DerivedSources.pro:
              * WebKit2.pro:
              * WebProcess.pro:
      2011-01-24  Andras Becsi  <abecsi@webkit.org>
      
              Reviewed by Csaba Osztrogonác.
      
              [Qt] Move project files into Source
              https://bugs.webkit.org/show_bug.cgi?id=52891
      
              * DerivedSources.pro: Renamed from DerivedSources.pro.
              * DumpRenderTree/qt/DumpRenderTree.pro:
              * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
              * MiniBrowser/DerivedSources.pro:
              * MiniBrowser/qt/MiniBrowser.pro:
              * QtTestBrowser/QtTestBrowser.pro:
              * Scripts/webkitdirs.pm:
              * Tools.pro: Added.
              * WebKitTestRunner/DerivedSources.pro:
              * WebKitTestRunner/InjectedBundle/qt/InjectedBundle.pro:
              * WebKitTestRunner/qt/WebKitTestRunner.pro:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76496 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5c818c0c
  6. 23 Jan, 2011 5 commits
  7. 22 Jan, 2011 4 commits
    • ggaren@apple.com's avatar
      2011-01-22 Geoffrey Garen <ggaren@apple.com> · 7fc55f20
      ggaren@apple.com authored
              Reviewed by Dan Bernstein.
      
              ASSERT running run-webkit-tests --threaded.
              https://bugs.webkit.org/show_bug.cgi?id=52971
              
              SunSpider and v8 report no change.
      
              * runtime/ConservativeSet.cpp:
              (JSC::ConservativeSet::grow):
              (JSC::ConservativeSet::add):
              * runtime/ConservativeSet.h: Tweaked the inline capacity to 128, and
              the growth policy to 2X, to make SunSpider and v8 happy.
              (JSC::ConservativeSet::ConservativeSet):
              (JSC::ConservativeSet::~ConservativeSet):
              (JSC::ConservativeSet::mark): Use OSAllocator directly, instead of malloc.
              Malloc is forbidden during a multi-threaded mark phase because it can
              cause deadlock.
      2011-01-22  Geoffrey Garen  <ggaren@apple.com>
      
              Reviewed by Dan Bernstein.
      
              Beefed up --threaded mode to catch even more kinds of errors.
              https://bugs.webkit.org/show_bug.cgi?id=52971
      
              * DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: Use a shared
              context group to force JSC to mark multiple threads. (This used to be
              the default, but it changed in SnowLeopard.)
              (runJavaScriptThread): Do more locking and unlocking, and more allocation,
              to give threading mistakes more chances to show themselves.
              (startJavaScriptThreads):
              (stopJavaScriptThreads):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76457 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7fc55f20
    • ggaren@apple.com's avatar
      2011-01-22 Geoffrey Garen <ggaren@apple.com> · c9bfff41
      ggaren@apple.com authored
              Reviewed by Geoffrey Garen.
      
              Rubber-stamped by Maciej Stachowiak.
      
              A few of Maciej's review suggestions for my last patch.
              https://bugs.webkit.org/show_bug.cgi?id=52946        
      
              SunSpider reports no change.
      
              * Android.mk:
              * CMakeLists.txt:
              * GNUmakefile.am:
              * JavaScriptCore.gypi:
              * JavaScriptCore.pro:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
              * JavaScriptCore.xcodeproj/project.pbxproj: Updated build systems.
      
              * runtime/ConservativeSet.cpp: Added.
              (JSC::isPointerAligned):
              (JSC::ConservativeSet::add):
              * runtime/ConservativeSet.h: Added.
              (JSC::ConservativeSet::ConservativeSet):
              (JSC::ConservativeSet::mark): Split ConservativeSet out into its own
              file, and moved the conservative check into ConservativeSet::add, making
              ConservativeSet's responsibility clearer.
      
              * runtime/Heap.cpp:
              (JSC::Heap::markRoots):
              * runtime/MachineStackMarker.cpp:
              (JSC::MachineStackMarker::markCurrentThreadConservativelyInternal):
              (JSC::MachineStackMarker::markOtherThreadConservatively):
              * runtime/MachineStackMarker.h:
              * runtime/MarkStack.h: Updated for changes above.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76454 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9bfff41
    • paroga@webkit.org's avatar
      2011-01-22 Patrick Gansterer <paroga@webkit.org> · 95057d93
      paroga@webkit.org authored
              Unreviewed WinCE build fix for r76430.
      
              * runtime/MachineStackMarker.cpp:
              (JSC::swapIfBackwards):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76441 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      95057d93
    • ggaren@apple.com's avatar
      Reorganized MarkedSpace, making many of its functions private. · d95a475b
      ggaren@apple.com authored
      Reviewed by Beth Dakin.
      
      * runtime/JSCell.h:
      (JSC::JSCell::Heap::heap):
      * runtime/MarkedSpace.h:
      (JSC::MarkedSpace::globalData):
      (JSC::MarkedSpace::heap):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76432 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d95a475b
  8. 21 Jan, 2011 8 commits