- 19 Oct, 2008 5 commits
-
-
darin@apple.com authored
2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * VM/Machine.cpp: (JSC::fastToUInt32): Call toUInt32SlowCase function; no longer a member of JSValue. * kjs/JSNumberCell.h: (JSC::JSNumberCell::toInt32): Ditto. (JSC::JSNumberCell::toUInt32): Ditto. * kjs/JSValue.cpp: (JSC::toInt32SlowCase): Made a non-member function. (JSC::JSValue::toInt32SlowCase): Changed to call non-member function. (JSC::toUInt32SlowCase): More of the same. (JSC::JSValue::toUInt32SlowCase): Ditto. * kjs/JSValue.h: Moved static member function so they are no longer member functions at all. * VM/CTI.h: Removed forward declaration of JSValue. * VM/ExceptionHelpers.h: Ditto. * kjs/CallData.h: Ditto. * kjs/ConstructData.h: Ditto. * kjs/JSGlobalObjectFunctions.h: Ditto. * kjs/PropertyMap.h: Ditto. * kjs/StructureID.h: Ditto. * kjs/collector.h: Ditto. * kjs/completion.h: Ditto. * kjs/grammar.y: (JSC::makeBitwiseNotNode): Call new non-member toInt32 function. (JSC::makeLeftShiftNode): More of the same. (JSC::makeRightShiftNode): Ditto. * kjs/protect.h: Added a specialization for ProtectedPtr<JSValuePtr> so this can be used with JSValuePtr. JavaScriptGlue: 2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * JSValueWrapper.h: Use JSValuePtr instead of JSValue*. WebCore: 2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * bindings/js/JSCustomXPathNSResolver.h: Removed declaration of JSValue and used JSValuePtr instead. * bindings/js/JSEventTarget.h: Ditto. * bindings/js/JSNodeFilterCondition.h: Ditto. * bindings/js/ScheduledAction.h: Ditto. * bindings/js/ScriptController.h: Ditto. * bindings/objc/WebScriptObjectPrivate.h: Ditto. * bridge/c/c_utility.h: Ditto. * bridge/jni/jni_jsobject.h: Ditto. * bridge/jni/jni_utility.h: Ditto. * bridge/objc/WebScriptObject.h: Ditto. * dom/Traversal.h: Ditto. * inspector/InspectorController.cpp: Ditto. * inspector/JavaScriptProfile.h: Ditto. * inspector/JavaScriptProfileNode.h: Ditto. * loader/FrameLoader.h: Ditto. * page/Console.h: Ditto. * plugins/MimeTypeArray.h: Ditto. * plugins/Plugin.h: Ditto. * plugins/PluginArray.h: Ditto. * plugins/PluginView.cpp: (WebCore::getString): Ditto. (WebCore::PluginView::performRequest): Ditto. * plugins/gtk/PluginViewGtk.cpp: Ditto. * plugins/qt/PluginViewQt.cpp: Ditto. * plugins/win/PluginViewWin.cpp: Ditto. * bridge/qt/qt_class.cpp: (JSC::Bindings::QtClass::fallbackObject): Use JSValuePtr and JSObject* instead of JSValue*. * bridge/qt/qt_class.h: Ditto. * bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::mark): Ditto. (JSC::Bindings::QtInstance::invokeMethod): Ditto. (JSC::Bindings::QtInstance::defaultValue): Ditto. (JSC::Bindings::QtInstance::stringValue): Ditto. (JSC::Bindings::QtInstance::numberValue): Ditto. (JSC::Bindings::QtInstance::booleanValue): Ditto. (JSC::Bindings::QtInstance::valueOf): Ditto. (JSC::Bindings::QtField::valueFromInstance): Ditto. (JSC::Bindings::QtField::setValueToInstance): Ditto. * bridge/qt/qt_instance.h: Ditto. * bridge/qt/qt_runtime.cpp: Ditto. (JSC::Bindings::valueRealType): Ditto. (JSC::Bindings::convertValueToQVariant): Ditto. (JSC::Bindings::convertQVariantToValue): Ditto. (JSC::Bindings::findMethodIndex): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::call): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto. (JSC::Bindings::QtRuntimeConnectionMethod::call): Ditto. (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto. (JSC::Bindings::QtArray::setValueAt): Ditto. (JSC::Bindings::QtArray::valueAt): Ditto. * bridge/qt/qt_runtime.h: Ditto. * bridge/testqtbindings.cpp: (main): Use JSValuePtr. WebKit/mac: 2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * WebView/WebFrame.mm: (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Use JSValuePtr instead of JSValue. * WebView/WebScriptDebugger.h: Removed declaration of JSValue. WebKit/qt: 2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript): Use JSValuePtr. WebKit/win: 2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * WebScriptCallFrame.cpp: (WebScriptCallFrame::jsValueToString): Use JSValuePtr. (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Ditto. (WebScriptCallFrame::valueForVariable): Put more code inside and ifdef. (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString): Ditto. * WebScriptCallFrame.h: Use JSValuePtr. * WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): Use JSValuePtr. WebKit/wx: 2008-10-19 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove most uses of JSValue, which will be removed in a future patch. * WebFrame.cpp: (wxWebFrame::RunScript): Use JSValuePtr. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37706 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
2008-10-18 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Tweak a little more to get closer to where we can make JSValuePtr a class. * API/APICast.h: (toJS): Change back to JSValue* here, since we're converting the pointer type. * VM/CTI.cpp: (JSC::CTI::unlinkCall): Call asPointer. * VM/CTI.h: Cast to JSValue* here, since it's a pointer cast. * kjs/DebuggerCallFrame.h: (JSC::DebuggerCallFrame::DebuggerCallFrame): Call noValue. * kjs/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): Call noValue. * kjs/JSImmediate.cpp: (JSC::JSImmediate::toObject): Remove unneeded const_cast. * kjs/JSWrapperObject.h: (JSC::JSWrapperObject::JSWrapperObject): Call noValue. JavaScriptGlue: 2008-10-18 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Tweak a little more to get closer to where we can make JSValuePtr a class. * JSObject.cpp: (nativeCallFunction): Call asObject. * JSUtils.cpp: (KJSValueToJSObject): Use JSValuePtr and asObject. (JSObjectKJSValue): Ditto. (KJSValueToCFTypeInternal): Ditto. (KJSValueToCFType): Ditto. * JSUtils.h: Ditto. * UserObjectImp.cpp: (UserObjectImp::callAsFunction): Use JSValuePtr and asObject. (UserObjectImp::userObjectGetter): Ditto. (UserObjectImp::getOwnPropertySlot): Ditto. (UserObjectImp::put): Ditto. (UserObjectImp::toPrimitive): Ditto. * UserObjectImp.h: Ditto. WebCore: 2008-10-18 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Tweak a little more to get closer to where we can make JSValuePtr a class. * bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::JSAudioConstructor): Use asObject. (WebCore::constructAudio): Ditto. * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::nameGetter): Ditto. * bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toHTMLCanvasStyle): Use asString and asObject. (WebCore::JSCanvasRenderingContext2D::setFillColor): Ditto. (WebCore::JSCanvasRenderingContext2D::setStrokeColor): Ditto. (WebCore::JSCanvasRenderingContext2D::drawImage): Ditto. (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): Ditto. (WebCore::JSCanvasRenderingContext2D::setShadow): Ditto. (WebCore::JSCanvasRenderingContext2D::createPattern): Ditto. * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Use JSValuePtr. * bindings/js/JSDOMBinding.cpp: (WebCore::setDOMException): Use noValue. * bindings/js/JSDOMBinding.h: (WebCore::getDOMPrototype): Use asObject. * bindings/js/JSDOMWindowBase.cpp: (WebCore::showModalDialog): Use noValue. (jsDOMWindowBaseEvent): Use asObject. (jsDOMWindowBaseImage): Ditto. (jsDOMWindowBaseMessageChannel): Ditto. (jsDOMWindowBaseOption): Ditto. (jsDOMWindowBaseXMLHttpRequest): Ditto. (jsDOMWindowBaseAudio): Ditto. (jsDOMWindowBaseXSLTProcessor): Ditto. (WebCore::JSDOMWindowBase::childFrameGetter): Ditto. (WebCore::JSDOMWindowBase::indexGetter): Ditto. (WebCore::JSDOMWindowBase::namedItemGetter): Ditto. (WebCore::JSDOMWindowBase::getOwnPropertySlot): Ditto. (WebCore::JSDOMWindowBase::findJSEventListener): Ditto. (WebCore::JSDOMWindowBase::findOrCreateJSEventListener): Ditto. (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener): Ditto. (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener): Ditto. (windowProtoFuncOpen): Use noValue. (WebCore::toJSDOMWindow): Use asObject. * bindings/js/JSDOMWindowCustom.cpp: (WebCore::setTimeoutOrInterval): Use asString. (WebCore::toDOMWindow): Use asObject. * bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): Use noValue. (WebCore::JSLazyEventListener::parseCode): Use asObject. * bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::JSHTMLCollection::nameGetter): Use asObject. * bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): Ditto. * bindings/js/JSHTMLElementCustom.cpp: (WebCore::JSHTMLElement::pushEventHandlerScope): Ditto. * bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter): Ditto. * bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter): Ditto. * bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor): Ditto. (WebCore::constructHTMLOptionElement): Ditto. * bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::remove): Ditto. * bindings/js/JSImageConstructor.cpp: (WebCore::JSImageConstructor::JSImageConstructor): Ditto. (WebCore::constructImage): Ditto. * bindings/js/JSInspectedObjectWrapper.cpp: (WebCore::JSInspectedObjectWrapper::wrap): Ditto. * bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::wrap): Ditto. * bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::evaluate): Use noValue. * bindings/js/JSMessageChannelConstructor.cpp: (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): Use asObject. (WebCore::JSMessageChannelConstructor::construct): Ditto. * bindings/js/JSMimeTypeArrayCustom.cpp: (WebCore::JSMimeTypeArray::nameGetter): Ditto. * bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter): Ditto. * bindings/js/JSNamedNodesCollection.cpp: (WebCore::JSNamedNodesCollection::lengthGetter): Ditto. (WebCore::JSNamedNodesCollection::indexGetter): Ditto. * bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter): Ditto. * bindings/js/JSNodeListCustom.cpp: (WebCore::JSNodeList::nameGetter): Ditto. * bindings/js/JSPluginArrayCustom.cpp: (WebCore::JSPluginArray::nameGetter): Ditto. * bindings/js/JSPluginCustom.cpp: (WebCore::JSPlugin::nameGetter): Ditto. * bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): Ditto. (WebCore::runtimeObjectPropertyGetter): Ditto. * bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::asWrapper): Ditto. (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): Ditto. (WebCore::JSQuarantinedObjectWrapper::construct): Ditto. * bindings/js/JSRGBColor.cpp: (jsRGBColorRed): Ditto. (jsRGBColorGreen): Ditto. (jsRGBColorBlue): Ditto. * bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item): Use noValue. * bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): Use asObject. (WebCore::JSStorage::deleteProperty): Ditto. (WebCore::JSStorage::customPut): Ditto. * bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter): Ditto. * bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): Ditto. * bindings/js/JSXSLTProcessorCustom.cpp: (WebCore::JSXSLTProcessor::importStylesheet): Ditto. (WebCore::JSXSLTProcessor::transformToFragment): Ditto. (WebCore::JSXSLTProcessor::transformToDocument): Ditto. * bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate): Use noValue. * bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]): Ditto. * bindings/objc/WebScriptObject.mm: (-[WebScriptObject evaluateWebScript:]): Use JSValuePtr. (-[WebScriptObject valueForKey:]): Ditto. (-[WebScriptObject webScriptValueAtIndex:]): Ditto. (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]): Use asObject and asString. * bindings/scripts/CodeGeneratorJS.pm: Use asObject. * bridge/c/c_instance.h: Use JSValuePtr. * bridge/c/c_runtime.cpp: (JSC::Bindings::CField::setValueToInstance): Ditto. * bridge/c/c_utility.cpp: (JSC::Bindings::convertValueToNPVariant): Use asObject. * bridge/jni/jni_instance.cpp: (JavaInstance::booleanValue): Use JSValuePtr. (JavaInstance::invokeMethod): Ditto. And noValue. * bridge/jni/jni_jsobject.mm: (JavaJSObject::getSlot): Ditto. (JavaJSObject::convertValueToJObject): Ditto. * bridge/jni/jni_runtime.cpp: (JavaField::dispatchValueFromInstance): Ditto. (JavaField::valueFromInstance): Ditto. (JavaField::dispatchSetValueToInstance): Ditto. (JavaField::setValueToInstance): Ditto. (JavaArray::setValueAt): Ditto. (JavaArray::valueAt): Ditto. * bridge/jni/jni_runtime.h: Ditto. * bridge/jni/jni_utility.cpp: (JSC::Bindings::convertArrayInstanceToJavaArray): Take a JSArray* instead of a JSValue*. (JSC::Bindings::convertValueToJValue): Use asObject and asArray. * bridge/objc/objc_class.h: Use JSValuePtr. * bridge/objc/objc_instance.h: Ditto. * bridge/objc/objc_runtime.h: Ditto. * bridge/objc/objc_runtime.mm: (JSC::Bindings::callObjCFallbackObject): Use asObject. * bridge/objc/objc_utility.h: Use JSValuePtr. * bridge/objc/objc_utility.mm: (JSC::Bindings::convertValueToObjcValue): Use JSValuePtr and asObject. (JSC::Bindings::convertObjcValueToValue): Use jsUndefined() instead of 0. * bridge/runtime.cpp: (JSC::Bindings::Instance::getValueOfField): Use JSValuePtr. (JSC::Bindings::Instance::setValueOfField): Ditto. * bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): Use JSValuePtr and asObject. (JSC::RuntimeArray::indexGetter): Ditto. * bridge/runtime_array.h: Ditto. * bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): Ditto. (JSC::callRuntimeMethod): Ditto. * bridge/runtime_object.cpp: (JSC::RuntimeObjectImp::fallbackObjectGetter): Ditto. (JSC::RuntimeObjectImp::fieldGetter): Ditto. (JSC::RuntimeObjectImp::methodGetter): Ditto. * loader/FrameLoader.cpp: (WebCore::FrameLoader::executeScript): Use noValue. * page/Console.cpp: (WebCore::Console::trace): Use asInternalFunction. WebKit/mac: 2008-10-18 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - next step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Tweak a little more to get closer to where we can make JSValuePtr a class. * WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame _convertValueToObjcValue:]): Use JSValuePtr. (-[WebScriptCallFrame exception]): Ditto. (-[WebScriptCallFrame evaluateWebScript:]): Ditto. And noValue. * WebView/WebScriptDebugger.mm: (WebScriptDebugger::WebScriptDebugger): Use new DebuggerCallFrame constructor that doesn't require explicitly passing an exception. * WebView/WebView.mm: (aeDescFromJSValue): Use JSValuePtr. (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37705 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
- lower the default button repaint frequency * rendering/RenderButton.cpp: (WebCore::RenderButton::styleDidChange): Changed the timer interval from 0.01 to 0.03. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37704 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
* WebScriptCallFrame.cpp: (WebScriptCallFrame::jsValueToString): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37700 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
- Windows build fix * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintMediaFullscreenButton): (WebCore::RenderThemeSafari::paintMediaMuteButton): (WebCore::RenderThemeSafari::paintMediaPlayButton): (WebCore::RenderThemeSafari::paintMediaSeekBackButton): (WebCore::RenderThemeSafari::paintMediaSeekForwardButton): (WebCore::RenderThemeSafari::paintMediaSliderThumb): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37699 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 18 Oct, 2008 21 commits
-
-
darin@apple.com authored
- fix non-all-in-one build * kjs/completion.h: (JSC::Completion::Completion): Add include of JSValue.h. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37698 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
Reviewed by Oliver Hunt. - fix assertions I introduced with my casting changes These were showing up as failures in the JavaScriptCore tests. * VM/Machine.cpp: (JSC::Machine::cti_op_instanceof): Remove the bogus asCell casting that was at the top of the function, and instead cast at the point of use. (JSC::Machine::cti_op_construct_NotJSConstruct): Moved the cast to object after checking the construct type. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37697 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
- fix non-all-in-one build * kjs/JSGlobalObjectFunctions.h: Add include of JSImmedate.h (for now). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
- fix build * kjs/interpreter.h: Include JSValue.h instead of JSImmediate.h. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37695 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
* kjs/interpreter.h: Fix include of JSImmediate.h. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37694 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
- fix non-all-in-one build * kjs/interpreter.h: Add include of JSImmedate.h. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37693 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
- fix non-all-in-one build * kjs/ConstructData.h: Add include of JSImmedate.h (for now). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
- try to fix Windows build * VM/Machine.cpp: (JSC::Machine::Machine): Use JSCell* type since MSVC seems to only allow calling ~JSCell directly if it's a JSCell*. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37691 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
Reviewed by Sam Weinig. - WebCore part of https://bugs.webkit.org/show_bug.cgi?id=21736 Long-dead decoded image data make up for most of the object cache's memory use over time Add a cache setting for how long decoded image data should be allowed to persist in memory after the image has died. By default, this is set to 0, which means "forever". * loader/Cache.cpp: (WebCore::Cache::Cache): Initialize m_deadDecodedDataDeletionInterval. * loader/Cache.h: (WebCore::Cache::setDeadDecodedDataDeletionInterval): Added a setter. (WebCore::Cache::deadDecodedDataDeletionInterval): Added a getter. * loader/CachedImage.cpp: (WebCore::CachedImage::CachedImage): Initialize the decoded data deletion timer. (WebCore::CachedImage::decodedDataDeletionTimerFired): Added. Destroys the decoded image data. (WebCore::CachedImage::addClient): Stop the timer if it is active. (WebCore::CachedImage::allClientsRemoved): Start the decoded data deletion timer. * loader/CachedImage.h: WebKit/mac: Reviewed by Sam Weinig. - WebKit/mac part of https://bugs.webkit.org/show_bug.cgi?id=21736 Long-dead decoded image data make up for most of the object cache's memory use over time * WebView/WebView.mm: (+[WebView _setCacheModel:]): In the primary web browser model, set the cache's dead decoded data deletion interval to 60 seconds. WebKit/win: 2008-10-18 Dan Bernstein <mitz@apple.com> Reviewed by Sam Weinig. - WebKit/win part of https://bugs.webkit.org/show_bug.cgi?id=21736 Long-dead decoded image data make up for most of the object cache's memory use over time * WebView.cpp: (WebView::setCacheModel): In the primary web browser model, set the cache's dead decoded data deletion interval to 60 seconds. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
Reviewed by Dan Bernstein. - fix https://bugs.webkit.org/show_bug.cgi?id=21645 REGRESSION (r37469-r37605): File Input not Uploaded in Multipart/Form-data Form * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Fix loop that goes through the FormDataList to go two at a time in a clearer way. My last patch screwed up the way it got form content from the items. This "two at a time" a confusing way to do things, which explains why I got it wrong last time through, but I decided to just fix it locally for now rather than changing the design of FormDataList. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37685 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
2008-10-18 Darin Adler <darin@apple.com> Reviewed by Cameron Zwarich. - next step on https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be changing JSValuePtr to be a class, and then eventually renaming it to JSValue once that's done. * JavaScriptCore.exp: Update entry points, since some now take JSValue* instead of const JSValue*. * API/APICast.h: * API/JSCallbackConstructor.h: * API/JSCallbackFunction.cpp: * API/JSCallbackFunction.h: * API/JSCallbackObject.h: * API/JSCallbackObjectFunctions.h: * API/JSContextRef.cpp: * API/JSObjectRef.cpp: * API/JSValueRef.cpp: * VM/CTI.cpp: * VM/CTI.h: * VM/CodeBlock.cpp: * VM/CodeBlock.h: * VM/CodeGenerator.cpp: * VM/CodeGenerator.h: * VM/ExceptionHelpers.cpp: * VM/ExceptionHelpers.h: * VM/JSPropertyNameIterator.cpp: * VM/JSPropertyNameIterator.h: * VM/Machine.cpp: * VM/Machine.h: * VM/Register.h: * kjs/ArgList.cpp: * kjs/ArgList.h: * kjs/Arguments.cpp: * kjs/Arguments.h: * kjs/ArrayConstructor.cpp: * kjs/ArrayPrototype.cpp: * kjs/BooleanConstructor.cpp: * kjs/BooleanConstructor.h: * kjs/BooleanObject.h: * kjs/BooleanPrototype.cpp: * kjs/CallData.cpp: * kjs/CallData.h: * kjs/ConstructData.cpp: * kjs/ConstructData.h: * kjs/DateConstructor.cpp: * kjs/DateInstance.h: * kjs/DatePrototype.cpp: * kjs/DebuggerCallFrame.cpp: * kjs/DebuggerCallFrame.h: * kjs/ErrorConstructor.cpp: * kjs/ErrorPrototype.cpp: * kjs/ExecState.cpp: * kjs/ExecState.h: * kjs/FunctionConstructor.cpp: * kjs/FunctionPrototype.cpp: * kjs/GetterSetter.cpp: * kjs/GetterSetter.h: * kjs/InternalFunction.h: * kjs/JSActivation.cpp: * kjs/JSActivation.h: * kjs/JSArray.cpp: * kjs/JSArray.h: * kjs/JSCell.cpp: * kjs/JSCell.h: * kjs/JSFunction.cpp: * kjs/JSFunction.h: * kjs/JSGlobalData.h: * kjs/JSGlobalObject.cpp: * kjs/JSGlobalObject.h: * kjs/JSGlobalObjectFunctions.cpp: * kjs/JSGlobalObjectFunctions.h: * kjs/JSImmediate.cpp: * kjs/JSImmediate.h: * kjs/JSNotAnObject.cpp: * kjs/JSNotAnObject.h: * kjs/JSNumberCell.cpp: * kjs/JSNumberCell.h: * kjs/JSObject.cpp: * kjs/JSObject.h: * kjs/JSStaticScopeObject.cpp: * kjs/JSStaticScopeObject.h: * kjs/JSString.cpp: * kjs/JSString.h: * kjs/JSValue.h: * kjs/JSVariableObject.h: * kjs/JSWrapperObject.h: * kjs/MathObject.cpp: * kjs/NativeErrorConstructor.cpp: * kjs/NumberConstructor.cpp: * kjs/NumberConstructor.h: * kjs/NumberObject.cpp: * kjs/NumberObject.h: * kjs/NumberPrototype.cpp: * kjs/ObjectConstructor.cpp: * kjs/ObjectPrototype.cpp: * kjs/ObjectPrototype.h: * kjs/PropertyMap.h: * kjs/PropertySlot.cpp: * kjs/PropertySlot.h: * kjs/RegExpConstructor.cpp: * kjs/RegExpConstructor.h: * kjs/RegExpMatchesArray.h: * kjs/RegExpObject.cpp: * kjs/RegExpObject.h: * kjs/RegExpPrototype.cpp: * kjs/Shell.cpp: * kjs/StringConstructor.cpp: * kjs/StringObject.cpp: * kjs/StringObject.h: * kjs/StringObjectThatMasqueradesAsUndefined.h: * kjs/StringPrototype.cpp: * kjs/StructureID.cpp: * kjs/StructureID.h: * kjs/collector.cpp: * kjs/collector.h: * kjs/completion.h: * kjs/grammar.y: * kjs/interpreter.cpp: * kjs/interpreter.h: * kjs/lookup.cpp: * kjs/lookup.h: * kjs/nodes.h: * kjs/operations.cpp: * kjs/operations.h: * kjs/protect.h: * profiler/ProfileGenerator.cpp: Replace JSValue* with JSValuePtr. JavaScriptGlue: 2008-10-18 Darin Adler <darin@apple.com> Reviewed by Cameron Zwarich. - next step on https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be changing JSValuePtr to be a class, and then eventually renaming it to JSValue once that's done. * JSObject.cpp: * JSValueWrapper.cpp: * UserObjectImp.cpp: * UserObjectImp.h: Replace JSValue* with JSValuePtr. WebCore: 2008-10-18 Darin Adler <darin@apple.com> Reviewed by Cameron Zwarich. - next step on https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be changing JSValuePtr to be a class, and then eventually renaming it to JSValue once that's done. * bindings/js/JSAttrCustom.cpp: * bindings/js/JSCSSRuleCustom.cpp: * bindings/js/JSCSSStyleDeclarationCustom.cpp: * bindings/js/JSCSSValueCustom.cpp: * bindings/js/JSCanvasPixelArrayCustom.h: * bindings/js/JSCanvasRenderingContext2DCustom.cpp: * bindings/js/JSClipboardCustom.cpp: * bindings/js/JSConsoleCustom.cpp: * bindings/js/JSCustomSQLStatementCallback.cpp: * bindings/js/JSCustomSQLStatementErrorCallback.cpp: * bindings/js/JSCustomSQLTransactionCallback.cpp: * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: * bindings/js/JSCustomVoidCallback.cpp: * bindings/js/JSCustomVoidCallback.h: * bindings/js/JSCustomXPathNSResolver.cpp: * bindings/js/JSDOMApplicationCacheCustom.cpp: * bindings/js/JSDOMBinding.cpp: * bindings/js/JSDOMBinding.h: * bindings/js/JSDOMWindowBase.cpp: * bindings/js/JSDOMWindowBase.h: * bindings/js/JSDOMWindowCustom.cpp: * bindings/js/JSDOMWindowCustom.h: * bindings/js/JSDOMWindowShell.cpp: * bindings/js/JSDOMWindowShell.h: * bindings/js/JSDatabaseCustom.cpp: * bindings/js/JSDocumentCustom.cpp: * bindings/js/JSElementCustom.cpp: * bindings/js/JSEventCustom.cpp: * bindings/js/JSEventListener.cpp: * bindings/js/JSEventTarget.cpp: * bindings/js/JSEventTargetBase.h: * bindings/js/JSEventTargetNodeCustom.cpp: * bindings/js/JSHTMLAllCollection.h: * bindings/js/JSHTMLAppletElementCustom.cpp: * bindings/js/JSHTMLCollectionCustom.cpp: * bindings/js/JSHTMLDocumentCustom.cpp: * bindings/js/JSHTMLEmbedElementCustom.cpp: * bindings/js/JSHTMLFormElementCustom.cpp: * bindings/js/JSHTMLFrameElementCustom.cpp: * bindings/js/JSHTMLFrameSetElementCustom.cpp: * bindings/js/JSHTMLIFrameElementCustom.cpp: * bindings/js/JSHTMLInputElementCustom.cpp: * bindings/js/JSHTMLObjectElementCustom.cpp: * bindings/js/JSHTMLOptionsCollectionCustom.cpp: * bindings/js/JSHTMLSelectElementCustom.cpp: * bindings/js/JSHTMLSelectElementCustom.h: * bindings/js/JSHistoryCustom.cpp: * bindings/js/JSImageDataCustom.cpp: * bindings/js/JSInspectedObjectWrapper.cpp: * bindings/js/JSInspectedObjectWrapper.h: * bindings/js/JSInspectorCallbackWrapper.cpp: * bindings/js/JSInspectorCallbackWrapper.h: * bindings/js/JSJavaScriptCallFrameCustom.cpp: * bindings/js/JSLocationCustom.cpp: * bindings/js/JSMessagePortCustom.cpp: * bindings/js/JSMimeTypeArrayCustom.cpp: * bindings/js/JSNamedNodeMapCustom.cpp: * bindings/js/JSNamedNodesCollection.cpp: * bindings/js/JSNamedNodesCollection.h: * bindings/js/JSNavigatorCustom.cpp: * bindings/js/JSNodeCustom.cpp: * bindings/js/JSNodeFilterCondition.cpp: * bindings/js/JSNodeFilterCustom.cpp: * bindings/js/JSNodeIteratorCustom.cpp: * bindings/js/JSNodeListCustom.cpp: * bindings/js/JSPluginArrayCustom.cpp: * bindings/js/JSPluginCustom.cpp: * bindings/js/JSPluginElementFunctions.cpp: * bindings/js/JSPluginElementFunctions.h: * bindings/js/JSQuarantinedObjectWrapper.cpp: * bindings/js/JSQuarantinedObjectWrapper.h: * bindings/js/JSRGBColor.cpp: * bindings/js/JSRGBColor.h: * bindings/js/JSSQLResultSetRowListCustom.cpp: * bindings/js/JSSQLTransactionCustom.cpp: * bindings/js/JSSVGElementInstanceCustom.cpp: * bindings/js/JSSVGLengthCustom.cpp: * bindings/js/JSSVGMatrixCustom.cpp: * bindings/js/JSSVGPathSegCustom.cpp: * bindings/js/JSSVGPathSegListCustom.cpp: * bindings/js/JSSVGPointListCustom.cpp: * bindings/js/JSSVGTransformListCustom.cpp: * bindings/js/JSStorageCustom.cpp: * bindings/js/JSStyleSheetCustom.cpp: * bindings/js/JSStyleSheetListCustom.cpp: * bindings/js/JSTextCustom.cpp: * bindings/js/JSTreeWalkerCustom.cpp: * bindings/js/JSXMLHttpRequestCustom.cpp: * bindings/js/JSXMLHttpRequestUploadCustom.cpp: * bindings/js/JSXSLTProcessorCustom.cpp: * bindings/js/ScheduledAction.cpp: * bindings/js/ScheduledAction.h: * bindings/js/ScriptController.cpp: * bindings/js/ScriptController.h: * bindings/objc/WebScriptObject.mm: * bindings/scripts/CodeGeneratorJS.pm: * bridge/NP_jsobject.cpp: * bridge/c/c_instance.cpp: * bridge/c/c_instance.h: * bridge/c/c_runtime.cpp: * bridge/c/c_runtime.h: * bridge/c/c_utility.cpp: * bridge/jni/jni_instance.cpp: * bridge/jni/jni_instance.h: * bridge/jni/jni_jsobject.mm: * bridge/jni/jni_objc.mm: * bridge/jni/jni_runtime.cpp: * bridge/jni/jni_runtime.h: * bridge/jni/jni_utility.cpp: * bridge/objc/objc_class.mm: * bridge/objc/objc_instance.h: * bridge/objc/objc_instance.mm: * bridge/objc/objc_runtime.h: * bridge/objc/objc_runtime.mm: * bridge/objc/objc_utility.h: * bridge/objc/objc_utility.mm: * bridge/runtime.h: * bridge/runtime_array.cpp: * bridge/runtime_array.h: * bridge/runtime_method.cpp: * bridge/runtime_method.h: * bridge/runtime_object.cpp: * bridge/runtime_object.h: * inspector/JavaScriptCallFrame.cpp: * inspector/JavaScriptCallFrame.h: * inspector/JavaScriptProfile.cpp: * inspector/JavaScriptProfileNode.cpp: * loader/FrameLoader.cpp: * loader/FrameLoader.h: * page/Console.cpp: * page/Console.h: * plugins/MimeTypeArray.h: * plugins/Plugin.h: * plugins/PluginArray.h: * xml/XMLHttpRequest.cpp: Replace JSValue* with JSValuePtr. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
* VM/Machine.cpp: (JSC::Machine::cti_op_call_eval): Removed stray parentheses from my last check-in. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37682 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
2008-10-18 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - first step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Remove casts from JSValue* to derived classes, replacing them with calls to inline casting functions. These functions are also a bit better than aidrect cast because they also do a runtime assertion. Removed use of 0 as for JSValue*, changing call sites to use a noValue() function instead. Move things needed by classes derived from JSValue out of the class, since the classes won't be deriving from JSValue any more soon. I did most of these changes by changing JSValue to not be JSValue* any more, then fixing a lot of the compilation problems, then rolling out the JSValue change. 1.011x as fast on SunSpider (presumably due to some of the Machine.cpp changes) * API/APICast.h: Removed unneeded forward declarations. * API/JSCallbackObject.h: Added an asCallbackObject function for casting. * API/JSCallbackObjectFunctions.h: (JSC::JSCallbackObject::asCallbackObject): Added. (JSC::JSCallbackObject::getOwnPropertySlot): Use asObject. (JSC::JSCallbackObject::call): Use noValue. (JSC::JSCallbackObject::staticValueGetter): Use asCallbackObject. (JSC::JSCallbackObject::staticFunctionGetter): Ditto. (JSC::JSCallbackObject::callbackGetter): Ditto. * JavaScriptCore.exp: Updated. * JavaScriptCore.xcodeproj/project.pbxproj: Added RegExpMatchesArray.h. * VM/CTI.cpp: (JSC::CTI::asInteger): Added. For use casting a JSValue to an integer. (JSC::CTI::emitGetArg): Use asInteger. (JSC::CTI::emitGetPutArg): Ditto. (JSC::CTI::getConstantImmediateNumericArg): Ditto. Also use noValue. (JSC::CTI::emitInitRegister): Use asInteger. (JSC::CTI::getDeTaggedConstantImmediate): Ditto. (JSC::CTI::compileOpCallInitializeCallFrame): Ditto. (JSC::CTI::compileOpCall): Ditto. (JSC::CTI::compileOpStrictEq): Ditto. (JSC::CTI::privateCompileMainPass): Ditto. (JSC::CTI::privateCompileGetByIdProto): Ditto. (JSC::CTI::privateCompileGetByIdChain): Ditto. (JSC::CTI::privateCompilePutByIdTransition): Ditto. * VM/CTI.h: Rewrite the ARG-related macros to use C++ casts instead of C casts and get rid of some extra parentheses. Addd declaration of asInteger. * VM/CodeGenerator.cpp: (JSC::CodeGenerator::emitEqualityOp): Use asString. (JSC::CodeGenerator::emitLoad): Use noValue. (JSC::CodeGenerator::findScopedProperty): Change globalObject argument to JSObject* instead of JSValue*. (JSC::CodeGenerator::emitResolve): Remove unneeded cast. (JSC::CodeGenerator::emitGetScopedVar): Use asCell. (JSC::CodeGenerator::emitPutScopedVar): Ditto. * VM/CodeGenerator.h: Changed out argument of findScopedProperty. Also change the JSValueMap to use PtrHash explicitly instead of getting it from DefaultHash. * VM/JSPropertyNameIterator.cpp: (JSC::JSPropertyNameIterator::toPrimitive): Use noValue. * VM/JSPropertyNameIterator.h: (JSC::JSPropertyNameIterator::next): Ditto. * VM/Machine.cpp: (JSC::fastIsNumber): Moved isImmediate check here instead of checking for 0 inside Heap::isNumber. Use asCell and asNumberCell. (JSC::fastToInt32): Ditto. (JSC::fastToUInt32): Ditto. (JSC::jsLess): Use asString. (JSC::jsLessEq): Ditto. (JSC::jsAdd): Ditto. (JSC::jsTypeStringForValue): Use asObject. (JSC::jsIsObjectType): Ditto. (JSC::jsIsFunctionType): Ditto. (JSC::inlineResolveBase): Use noValue. (JSC::Machine::callEval): Use asString. Initialize result to undefined, not 0. (JSC::Machine::Machine): Remove unneeded casts to JSCell*. (JSC::Machine::throwException): Use asObject. (JSC::Machine::debug): Remove explicit calls to the DebuggerCallFrame constructor. (JSC::Machine::checkTimeout): Use noValue. (JSC::cachePrototypeChain): Use asObject. (JSC::Machine::tryCachePutByID): Use asCell. (JSC::Machine::tryCacheGetByID): Use aCell and asObject. (JSC::Machine::privateExecute): Use noValue, asCell, asObject, asString, asArray, asActivation, asFunction. Changed code that creates call frames for host functions to pass 0 for the function pointer -- the call frame needs a JSFunction* and a host function object is not one. This was caught by the assertions in the casting functions. Also remove some unneeded casts in cases where two values are compared. (JSC::Machine::retrieveLastCaller): Use noValue. (JSC::Machine::tryCTICachePutByID): Use asCell. (JSC::Machine::tryCTICacheGetByID): Use aCell and asObject. (JSC::setUpThrowTrampolineReturnAddress): Added this function to restore the PIC-branch-avoidance that was recently lost. (JSC::Machine::cti_op_add): Use asString. (JSC::Machine::cti_op_instanceof): Use asCell and asObject. (JSC::Machine::cti_op_call_JSFunction): Use asFunction. (JSC::Machine::cti_op_call_NotJSFunction): Changed code to pass 0 for the function pointer, since we don't have a JSFunction. Use asObject. (JSC::Machine::cti_op_tear_off_activation): Use asActivation. (JSC::Machine::cti_op_construct_JSConstruct): Use asFunction and asObject. (JSC::Machine::cti_op_construct_NotJSConstruct): use asObject. (JSC::Machine::cti_op_get_by_val): Use asArray and asString. (JSC::Machine::cti_op_resolve_func): Use asPointer; this helps prepare us for a situation where JSValue is not a pointer. (JSC::Machine::cti_op_put_by_val): Use asArray. (JSC::Machine::cti_op_put_by_val_array): Ditto. (JSC::Machine::cti_op_resolve_global): Use asGlobalObject. (JSC::Machine::cti_op_post_inc): Change VM_CHECK_EXCEPTION_2 to VM_CHECK_EXCEPTION_AT_END, since there's no observable work done after that point. Also use asPointer. (JSC::Machine::cti_op_resolve_with_base): Use asPointer. (JSC::Machine::cti_op_post_dec): Change VM_CHECK_EXCEPTION_2 to VM_CHECK_EXCEPTION_AT_END, since there's no observable work done after that point. Also use asPointer. (JSC::Machine::cti_op_call_eval): Use asObject, noValue, and change VM_CHECK_EXCEPTION_ARG to VM_THROW_EXCEPTION_AT_END. (JSC::Machine::cti_op_throw): Change return value to a JSValue*. (JSC::Machine::cti_op_in): Use asObject. (JSC::Machine::cti_op_switch_char): Use asString. (JSC::Machine::cti_op_switch_string): Ditto. (JSC::Machine::cti_op_put_getter): Use asObject. (JSC::Machine::cti_op_put_setter): Ditto. (JSC::Machine::cti_vm_throw): Change return value to a JSValue*. Use noValue. * VM/Machine.h: Change return values of both cti_op_throw and cti_vm_throw to JSValue*. * VM/Register.h: Remove nullJSValue, which is the same thing as noValue(). Also removed unneeded definition of JSValue. * kjs/ArgList.h: Removed unneeded definition of JSValue. * kjs/Arguments.h: (JSC::asArguments): Added. * kjs/ArrayPrototype.cpp: (JSC::getProperty): Use noValue. (JSC::arrayProtoFuncToString): Use asArray. (JSC::arrayProtoFuncToLocaleString): Ditto. (JSC::arrayProtoFuncConcat): Ditto. (JSC::arrayProtoFuncPop): Ditto. Also removed unneeded initialization of the result, which is set in both sides of the branch. (JSC::arrayProtoFuncPush): Ditto. (JSC::arrayProtoFuncShift): Removed unneeded initialization of the result, which is set in both sides of the branch. (JSC::arrayProtoFuncSort): Use asArray. * kjs/BooleanObject.h: (JSC::asBooleanObject): Added. * kjs/BooleanPrototype.cpp: (JSC::booleanProtoFuncToString): Use asBooleanObject. (JSC::booleanProtoFuncValueOf): Ditto. * kjs/CallData.cpp: (JSC::call): Use asObject and asFunction. * kjs/ConstructData.cpp: (JSC::construct): Ditto. * kjs/DateConstructor.cpp: (JSC::constructDate): Use asDateInstance. * kjs/DateInstance.h: (JSC::asDateInstance): Added. * kjs/DatePrototype.cpp: (JSC::dateProtoFuncToString): Use asDateInstance. (JSC::dateProtoFuncToUTCString): Ditto. (JSC::dateProtoFuncToDateString): Ditto. (JSC::dateProtoFuncToTimeString): Ditto. (JSC::dateProtoFuncToLocaleString): Ditto. (JSC::dateProtoFuncToLocaleDateString): Ditto. (JSC::dateProtoFuncToLocaleTimeString): Ditto. (JSC::dateProtoFuncValueOf): Ditto. (JSC::dateProtoFuncGetTime): Ditto. (JSC::dateProtoFuncGetFullYear): Ditto. (JSC::dateProtoFuncGetUTCFullYear): Ditto. (JSC::dateProtoFuncToGMTString): Ditto. (JSC::dateProtoFuncGetMonth): Ditto. (JSC::dateProtoFuncGetUTCMonth): Ditto. (JSC::dateProtoFuncGetDate): Ditto. (JSC::dateProtoFuncGetUTCDate): Ditto. (JSC::dateProtoFuncGetDay): Ditto. (JSC::dateProtoFuncGetUTCDay): Ditto. (JSC::dateProtoFuncGetHours): Ditto. (JSC::dateProtoFuncGetUTCHours): Ditto. (JSC::dateProtoFuncGetMinutes): Ditto. (JSC::dateProtoFuncGetUTCMinutes): Ditto. (JSC::dateProtoFuncGetSeconds): Ditto. (JSC::dateProtoFuncGetUTCSeconds): Ditto. (JSC::dateProtoFuncGetMilliSeconds): Ditto. (JSC::dateProtoFuncGetUTCMilliseconds): Ditto. (JSC::dateProtoFuncGetTimezoneOffset): Ditto. (JSC::dateProtoFuncSetTime): Ditto. (JSC::setNewValueFromTimeArgs): Ditto. (JSC::setNewValueFromDateArgs): Ditto. (JSC::dateProtoFuncSetYear): Ditto. (JSC::dateProtoFuncGetYear): Ditto. * kjs/DebuggerCallFrame.cpp: (JSC::DebuggerCallFrame::thisObject): Use asObject. (JSC::DebuggerCallFrame::evaluate): Use noValue. * kjs/DebuggerCallFrame.h: Added a constructor that takes only a callFrame. * kjs/ExecState.h: (JSC::ExecState::clearException): Use noValue. * kjs/FunctionPrototype.cpp: (JSC::functionProtoFuncToString): Use asFunction. (JSC::functionProtoFuncApply): Use asArguments and asArray. * kjs/GetterSetter.cpp: (JSC::GetterSetter::getPrimitiveNumber): Use noValue. * kjs/GetterSetter.h: (JSC::asGetterSetter): Added. * kjs/InternalFunction.cpp: (JSC::InternalFunction::name): Use asString. * kjs/InternalFunction.h: (JSC::asInternalFunction): Added. * kjs/JSActivation.cpp: (JSC::JSActivation::argumentsGetter): Use asActivation. * kjs/JSActivation.h: (JSC::asActivation): Added. * kjs/JSArray.cpp: (JSC::JSArray::putSlowCase): Use noValue. (JSC::JSArray::deleteProperty): Ditto. (JSC::JSArray::increaseVectorLength): Ditto. (JSC::JSArray::setLength): Ditto. (JSC::JSArray::pop): Ditto. (JSC::JSArray::sort): Ditto. (JSC::JSArray::compactForSorting): Ditto. * kjs/JSArray.h: (JSC::asArray): Added. * kjs/JSCell.cpp: (JSC::JSCell::getJSNumber): Use noValue. * kjs/JSCell.h: (JSC::asCell): Added. (JSC::JSValue::asCell): Changed to not preserve const. Given the wide use of JSValue* and JSCell*, it's not really useful to use const. (JSC::JSValue::isNumber): Use asValue. (JSC::JSValue::isString): Ditto. (JSC::JSValue::isGetterSetter): Ditto. (JSC::JSValue::isObject): Ditto. (JSC::JSValue::getNumber): Ditto. (JSC::JSValue::getString): Ditto. (JSC::JSValue::getObject): Ditto. (JSC::JSValue::getCallData): Ditto. (JSC::JSValue::getConstructData): Ditto. (JSC::JSValue::getUInt32): Ditto. (JSC::JSValue::getTruncatedInt32): Ditto. (JSC::JSValue::getTruncatedUInt32): Ditto. (JSC::JSValue::mark): Ditto. (JSC::JSValue::marked): Ditto. (JSC::JSValue::toPrimitive): Ditto. (JSC::JSValue::getPrimitiveNumber): Ditto. (JSC::JSValue::toBoolean): Ditto. (JSC::JSValue::toNumber): Ditto. (JSC::JSValue::toString): Ditto. (JSC::JSValue::toObject): Ditto. (JSC::JSValue::toThisObject): Ditto. (JSC::JSValue::needsThisConversion): Ditto. (JSC::JSValue::toThisString): Ditto. (JSC::JSValue::getJSNumber): Ditto. * kjs/JSFunction.cpp: (JSC::JSFunction::argumentsGetter): Use asFunction. (JSC::JSFunction::callerGetter): Ditto. (JSC::JSFunction::lengthGetter): Ditto. (JSC::JSFunction::construct): Use asObject. * kjs/JSFunction.h: (JSC::asFunction): Added. * kjs/JSGlobalObject.cpp: (JSC::lastInPrototypeChain): Use asObject. * kjs/JSGlobalObject.h: (JSC::asGlobalObject): Added. (JSC::ScopeChainNode::globalObject): Use asGlobalObject. * kjs/JSImmediate.h: Added noValue, asPointer, and makeValue functions. Use rawValue, makeValue, and noValue consistently instead of doing reinterpret_cast in various functions. * kjs/JSNumberCell.h: (JSC::asNumberCell): Added. (JSC::JSValue::uncheckedGetNumber): Use asValue and asNumberCell. (JSC::JSValue::toJSNumber): Use asValue. * kjs/JSObject.cpp: (JSC::JSObject::put): Use asObject and asGetterSetter. (JSC::callDefaultValueFunction): Use noValue. (JSC::JSObject::defineGetter): Use asGetterSetter. (JSC::JSObject::defineSetter): Ditto. (JSC::JSObject::lookupGetter): Ditto. Also use asObject. (JSC::JSObject::lookupSetter): Ditto. (JSC::JSObject::hasInstance): Use asObject. (JSC::JSObject::fillGetterPropertySlot): Use asGetterSetter. * kjs/JSObject.h: (JSC::JSObject::getDirect): Use noValue. (JSC::asObject): Added. (JSC::JSValue::isObject): Use asValue. (JSC::JSObject::get): Removed unneeded const_cast. (JSC::JSObject::getPropertySlot): Use asObject. (JSC::JSValue::get): Removed unneeded const_cast. Use asValue, asCell, and asObject. (JSC::JSValue::put): Ditto. (JSC::JSObject::allocatePropertyStorageInline): Fixed spelling of "oldPropertStorage". * kjs/JSString.cpp: (JSC::JSString::getOwnPropertySlot): Use asObject. * kjs/JSString.h: (JSC::asString): Added. (JSC::JSValue::toThisJSString): Use asValue. * kjs/JSValue.h: Make PreferredPrimitiveType a top level enum instead of a member of JSValue. Added an asValue function that returns this. Removed overload of asCell for const. Use asValue instead of getting right at this. * kjs/ObjectPrototype.cpp: (JSC::objectProtoFuncIsPrototypeOf): Use asObject. (JSC::objectProtoFuncDefineGetter): Ditto. (JSC::objectProtoFuncDefineSetter): Ditto. * kjs/PropertySlot.h: (JSC::PropertySlot::PropertySlot): Take a const JSValue* so the callers don't have to worry about const. (JSC::PropertySlot::clearBase): Use noValue. (JSC::PropertySlot::clearValue): Ditto. * kjs/RegExpConstructor.cpp: (JSC::regExpConstructorDollar1): Use asRegExpConstructor. (JSC::regExpConstructorDollar2): Ditto. (JSC::regExpConstructorDollar3): Ditto. (JSC::regExpConstructorDollar4): Ditto. (JSC::regExpConstructorDollar5): Ditto. (JSC::regExpConstructorDollar6): Ditto. (JSC::regExpConstructorDollar7): Ditto. (JSC::regExpConstructorDollar8): Ditto. (JSC::regExpConstructorDollar9): Ditto. (JSC::regExpConstructorInput): Ditto. (JSC::regExpConstructorMultiline): Ditto. (JSC::regExpConstructorLastMatch): Ditto. (JSC::regExpConstructorLastParen): Ditto. (JSC::regExpConstructorLeftContext): Ditto. (JSC::regExpConstructorRightContext): Ditto. (JSC::setRegExpConstructorInput): Ditto. (JSC::setRegExpConstructorMultiline): Ditto. (JSC::constructRegExp): Use asObject. * kjs/RegExpConstructor.h: (JSC::asRegExpConstructor): Added. * kjs/RegExpObject.cpp: (JSC::regExpObjectGlobal): Use asRegExpObject. (JSC::regExpObjectIgnoreCase): Ditto. (JSC::regExpObjectMultiline): Ditto. (JSC::regExpObjectSource): Ditto. (JSC::regExpObjectLastIndex): Ditto. (JSC::setRegExpObjectLastIndex): Ditto. (JSC::callRegExpObject): Ditto. * kjs/RegExpObject.h: (JSC::asRegExpObject): Added. * kjs/RegExpPrototype.cpp: (JSC::regExpProtoFuncTest): Use asRegExpObject. (JSC::regExpProtoFuncExec): Ditto. (JSC::regExpProtoFuncCompile): Ditto. (JSC::regExpProtoFuncToString): Ditto. * kjs/StringObject.h: (JSC::StringObject::internalValue): Use asString. (JSC::asStringObject): Added. * kjs/StringPrototype.cpp: (JSC::stringProtoFuncReplace): Use asRegExpObject. (JSC::stringProtoFuncToString): Ue asStringObject. (JSC::stringProtoFuncMatch): Use asRegExpObject. (JSC::stringProtoFuncSearch): Ditto. (JSC::stringProtoFuncSplit): Ditto. * kjs/StructureID.cpp: (JSC::StructureID::getEnumerablePropertyNames): Use asObject. (JSC::StructureID::createCachedPrototypeChain): Ditto. (JSC::StructureIDChain::StructureIDChain): Use asCell and asObject. * kjs/collector.h: (JSC::Heap::isNumber): Removed null handling. This can only be called on valid cells. (JSC::Heap::cellBlock): Removed overload for const and non-const. Whether the JSCell* is const or not really should have no effect on whether you can modify the collector block it's in. * kjs/interpreter.cpp: (JSC::Interpreter::evaluate): Use noValue and noObject. * kjs/nodes.cpp: (JSC::FunctionCallResolveNode::emitCode): Use JSObject for the global object rather than JSValue. (JSC::PostfixResolveNode::emitCode): Ditto. (JSC::PrefixResolveNode::emitCode): Ditto. (JSC::ReadModifyResolveNode::emitCode): Ditto. (JSC::AssignResolveNode::emitCode): Ditto. * kjs/operations.h: (JSC::equalSlowCaseInline): Use asString, asCell, asNumberCell, (JSC::strictEqualSlowCaseInline): Ditto. WebCore: 2008-10-18 Darin Adler <darin@apple.com> Reviewed by Oliver Hunt. - first step of https://bugs.webkit.org/show_bug.cgi?id=21732 improve performance by eliminating JSValue as a base class for JSCell Update for change to make PreferredPrimitiveType no longer a member of JSValue. * bridge/c/c_instance.cpp: (JSC::Bindings::CInstance::defaultValue): Removed JSValue:: prefix. * bridge/jni/jni_instance.cpp: (JavaInstance::defaultValue): Ditto. * bridge/objc/objc_instance.mm: (ObjcInstance::defaultValue): Ditto. * bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::defaultValue): Ditto. * bridge/runtime.h: Ditto. Also removed typedef. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37681 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
- try to fix Windows build * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCheckbox): Explicitly qualify part name with SafariTheme namespace, since there is now an identically named constant in the ControlPart enum. (WebCore::RenderThemeSafari::paintButton): Ditto. (WebCore::RenderThemeSafari::paintTextField): Ditto. (WebCore::RenderThemeSafari::paintTextArea): Ditto. (WebCore::RenderThemeSafari::paintSearchField): Ditto. (WebCore::RenderThemeSafari::paintSearchFieldCancelButton): Ditto. (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration): Ditto. (WebCore::RenderThemeSafari::paintSearchFieldResultsButton): Ditto. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37680 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jmalonzo@webkit.org authored
Reviewed by Alp Toker. [GTK] crash after selecting a file on an <input type=file> https://bugs.webkit.org/show_bug.cgi?id=21385 Follow Mac and Win's behaviors for Icon::paint * platform/graphics/gtk/IconGtk.cpp: (WebCore::Icon::paint): check if painting is enabled before painting the icon git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37679 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
cwzwarich@webkit.org authored
Reviewed by Oliver Hunt. Bug 21702: Special op_create_activation for the case where there are no named parameters <https://bugs.webkit.org/show_bug.cgi?id=21702> This is a 2.5% speedup on the V8 Raytrace benchmark and a 1.1% speedup on the V8 Earley-Boyer benchmark. * VM/CTI.cpp: (JSC::CTI::privateCompileMainPass): * VM/Machine.cpp: (JSC::Machine::cti_op_create_arguments_no_params): * VM/Machine.h: * kjs/Arguments.h: (JSC::Arguments::): (JSC::Arguments::Arguments): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37678 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
oliver@apple.com authored
Reviewed by Oliver Hunt. Qt port build fix. * platform/qt/RenderThemeQt.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37677 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jmalonzo@webkit.org authored
Reviewed by Mark Rowe. Landed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=20403 [Gtk] Segfault after a table with an iframe is attempted to be added twice to DOM model with javascript * WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::frameLoaderDestroyed): (WebKit::FrameLoaderClient::detachedFromParent4): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37676 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mjs@apple.com authored
Reviewed by Mark Rowe. - default to 1000 tests per dump tool instance again, now that CTI no longer causes excess different stack logs. (Also fix a small bug in my last change.) * Scripts/run-webkit-tests: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mjs@apple.com authored
Reviewed by Cameron Zwarich. - in debug builds, alter the stack to avoid blowing out MallocStackLogging (In essence, while executing a CTI function we alter the return address to jscGeneratedNativeCode so that a single consistent function is on the stack instead of many random functions without symbols.) * VM/CTI.h: * VM/Machine.cpp: (JSC::doSetReturnAddress): (JSC::): (JSC::StackHack::StackHack): (JSC::StackHack::~StackHack): (JSC::Machine::cti_op_convert_this): (JSC::Machine::cti_op_end): (JSC::Machine::cti_op_add): (JSC::Machine::cti_op_pre_inc): (JSC::Machine::cti_timeout_check): (JSC::Machine::cti_register_file_check): (JSC::Machine::cti_op_loop_if_less): (JSC::Machine::cti_op_loop_if_lesseq): (JSC::Machine::cti_op_new_object): (JSC::Machine::cti_op_put_by_id): (JSC::Machine::cti_op_put_by_id_second): (JSC::Machine::cti_op_put_by_id_generic): (JSC::Machine::cti_op_put_by_id_fail): (JSC::Machine::cti_op_get_by_id): (JSC::Machine::cti_op_get_by_id_second): (JSC::Machine::cti_op_get_by_id_generic): (JSC::Machine::cti_op_get_by_id_fail): (JSC::Machine::cti_op_instanceof): (JSC::Machine::cti_op_del_by_id): (JSC::Machine::cti_op_mul): (JSC::Machine::cti_op_new_func): (JSC::Machine::cti_op_call_profiler): (JSC::Machine::cti_op_call_JSFunction): (JSC::Machine::cti_vm_lazyLinkCall): (JSC::Machine::cti_vm_compile): (JSC::Machine::cti_op_push_activation): (JSC::Machine::cti_op_call_NotJSFunction): (JSC::Machine::cti_op_create_arguments): (JSC::Machine::cti_op_tear_off_activation): (JSC::Machine::cti_op_tear_off_arguments): (JSC::Machine::cti_op_ret_profiler): (JSC::Machine::cti_op_ret_scopeChain): (JSC::Machine::cti_op_new_array): (JSC::Machine::cti_op_resolve): (JSC::Machine::cti_op_construct_JSConstructFast): (JSC::Machine::cti_op_construct_JSConstruct): (JSC::Machine::cti_op_construct_NotJSConstruct): (JSC::Machine::cti_op_get_by_val): (JSC::Machine::cti_op_resolve_func): (JSC::Machine::cti_op_sub): (JSC::Machine::cti_op_put_by_val): (JSC::Machine::cti_op_put_by_val_array): (JSC::Machine::cti_op_lesseq): (JSC::Machine::cti_op_loop_if_true): (JSC::Machine::cti_op_negate): (JSC::Machine::cti_op_resolve_base): (JSC::Machine::cti_op_resolve_skip): (JSC::Machine::cti_op_resolve_global): (JSC::Machine::cti_op_div): (JSC::Machine::cti_op_pre_dec): (JSC::Machine::cti_op_jless): (JSC::Machine::cti_op_not): (JSC::Machine::cti_op_jtrue): (JSC::Machine::cti_op_post_inc): (JSC::Machine::cti_op_eq): (JSC::Machine::cti_op_lshift): (JSC::Machine::cti_op_bitand): (JSC::Machine::cti_op_rshift): (JSC::Machine::cti_op_bitnot): (JSC::Machine::cti_op_resolve_with_base): (JSC::Machine::cti_op_new_func_exp): (JSC::Machine::cti_op_mod): (JSC::Machine::cti_op_less): (JSC::Machine::cti_op_neq): (JSC::Machine::cti_op_post_dec): (JSC::Machine::cti_op_urshift): (JSC::Machine::cti_op_bitxor): (JSC::Machine::cti_op_new_regexp): (JSC::Machine::cti_op_bitor): (JSC::Machine::cti_op_call_eval): (JSC::Machine::cti_op_throw): (JSC::Machine::cti_op_get_pnames): (JSC::Machine::cti_op_next_pname): (JSC::Machine::cti_op_push_scope): (JSC::Machine::cti_op_pop_scope): (JSC::Machine::cti_op_typeof): (JSC::Machine::cti_op_is_undefined): (JSC::Machine::cti_op_is_boolean): (JSC::Machine::cti_op_is_number): (JSC::Machine::cti_op_is_string): (JSC::Machine::cti_op_is_object): (JSC::Machine::cti_op_is_function): (JSC::Machine::cti_op_stricteq): (JSC::Machine::cti_op_nstricteq): (JSC::Machine::cti_op_to_jsnumber): (JSC::Machine::cti_op_in): (JSC::Machine::cti_op_push_new_scope): (JSC::Machine::cti_op_jmp_scopes): (JSC::Machine::cti_op_put_by_index): (JSC::Machine::cti_op_switch_imm): (JSC::Machine::cti_op_switch_char): (JSC::Machine::cti_op_switch_string): (JSC::Machine::cti_op_del_by_val): (JSC::Machine::cti_op_put_getter): (JSC::Machine::cti_op_put_setter): (JSC::Machine::cti_op_new_error): (JSC::Machine::cti_op_debug): (JSC::Machine::cti_vm_throw): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 17 Oct, 2008 14 commits
-
-
slewis@apple.com authored
Reviewed by Mark Rowe. Fix layout tests that use prologues and epilogues. * Scripts/run-webkit-tests: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mjs@apple.com authored
Reviewed by Mark Rowe. - make sure MallocStackLogging is only on for tools we want to leak check, not other random stuff as well. * Scripts/run-webkit-tests: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37672 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37671 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
Optimize op_call by allowing call sites to be directly linked to callees. For the hot path of op_call, CTI now generates a check (initially for an impossible value), and the first time the call is executed we attempt to link the call directly to the callee. WWe can currently only do so if the arity of the caller and callee match. The (optimized) setup for the call on the hot path is linked directly to the ctiCode for the callee, without indirection. Two forms of the slow case of the call are generated, the first will be executed the first time the call is reached. As well as this path attempting to link the call to a callee, it also relinks the slow case to a second slow case, which will not continue to attempt relinking the call. (This policy could be changed in future, but for not this is intended to prevent thrashing). If a callee that the caller has been linked to is garbage collected, then the link in the caller's JIt code will be reset back to a value that cannot match - to prevent any false positive matches. ~20% progression on deltablue & richards, >12% overall reduction in v8-tests runtime, one or two percent progression on sunspider. Reviewed by Oliver Hunt. * VM/CTI.cpp: (JSC::): (JSC::CTI::emitNakedCall): (JSC::unreachable): (JSC::CTI::compileOpCallInitializeCallFrame): (JSC::CTI::compileOpCallSetupArgs): (JSC::CTI::compileOpCall): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::unlinkCall): (JSC::CTI::linkCall): * VM/CTI.h: * VM/CodeBlock.cpp: (JSC::CodeBlock::~CodeBlock): (JSC::CodeBlock::unlinkCallers): (JSC::CodeBlock::derefStructureIDs): * VM/CodeBlock.h: (JSC::StructureStubInfo::StructureStubInfo): (JSC::CallLinkInfo::CallLinkInfo): (JSC::CodeBlock::addCaller): (JSC::CodeBlock::removeCaller): (JSC::CodeBlock::getStubInfo): * VM/CodeGenerator.cpp: (JSC::CodeGenerator::emitCall): (JSC::CodeGenerator::emitConstruct): * VM/Machine.cpp: (JSC::Machine::cti_op_call_profiler): (JSC::Machine::cti_op_call_JSFunction): (JSC::Machine::cti_vm_lazyLinkCall): (JSC::Machine::cti_op_construct_JSConstructFast): (JSC::Machine::cti_op_construct_JSConstruct): (JSC::Machine::cti_op_construct_NotJSConstruct): * VM/Machine.h: * kjs/JSFunction.cpp: (JSC::JSFunction::~JSFunction): * kjs/JSFunction.h: * kjs/nodes.h: (JSC::FunctionBodyNode::): * masm/X86Assembler.h: (JSC::X86Assembler::getDifferenceBetweenLabels): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mjs@apple.com authored
Reviewed by Stephanie Lewis. - make run-webkit-tests --leaks default to 100 tests per run instead of 1000 This should reduce or eliminate crashes on the buildbot due to running out of memory while stack logging. * Scripts/run-webkit-tests: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37669 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mjs@apple.com authored
Reviewed by Geoff Garen. - remove ASSERT that makes the leaks buildbot cry * kjs/JSFunction.cpp: (JSC::JSFunction::JSFunction): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kevino@webkit.org authored
Fix wx port's scrollbar and drawing handling after recent changes. https://bugs.webkit.org/show_bug.cgi?id=21720 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37667 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kevino@webkit.org authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37666 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
pam@chromium.org authored
Add a number of new tests. See https://bugs.webkit.org/show_bug.cgi?id=21407 Reviewed by Alexey Proskuryakov. * fast/css/border-height.html: Added. * fast/dom/Window/orphaned-frame-access-expected.txt: Added. * fast/dom/Window/orphaned-frame-access.html: Added. * fast/forms/image-border.html: Added. * fast/forms/input-field-text-truncated.html: Added. * fast/forms/input-type-text-min-width.html: Added. * fast/forms/textarea-scrollbar-height-expected.txt: Added. * fast/forms/textarea-scrollbar-height.html: Added. * fast/forms/textarea-width.html: Added. * fast/overflow/overflow_hidden.html: Added. * fast/parser/resources/xml-declaration-missing-ending-mark.xml: Added. * fast/parser/xml-declaration-missing-ending-mark-expected.txt: Added. * fast/parser/xml-declaration-missing-ending-mark.html: Added. * fast/text/international/hindi-spacing.html: Added. * http/tests/misc/crash-multiple-family-fontface-expected.txt: Added. * http/tests/misc/crash-multiple-family-fontface.html: Added. * platform/mac/fast/css/border-height-expected.checksum: Added. * platform/mac/fast/css/border-height-expected.png: Added. * platform/mac/fast/css/border-height-expected.txt: Added. * platform/mac/fast/forms/image-border-expected.checksum: Added. * platform/mac/fast/forms/image-border-expected.png: Added. * platform/mac/fast/forms/image-border-expected.txt: Added. * platform/mac/fast/forms/input-field-text-truncated-expected.checksum: Added. * platform/mac/fast/forms/input-field-text-truncated-expected.png: Added. * platform/mac/fast/forms/input-field-text-truncated-expected.txt: Added. * platform/mac/fast/forms/input-type-text-min-width-expected.checksum: Added. * platform/mac/fast/forms/input-type-text-min-width-expected.png: Added. * platform/mac/fast/forms/input-type-text-min-width-expected.txt: Added. * platform/mac/fast/forms/textarea-width-expected.checksum: Added. * platform/mac/fast/forms/textarea-width-expected.png: Added. * platform/mac/fast/forms/textarea-width-expected.txt: Added. * platform/mac/fast/overflow/overflow_hidden-expected.checksum: Added. * platform/mac/fast/overflow/overflow_hidden-expected.png: Added. * platform/mac/fast/overflow/overflow_hidden-expected.txt: Added. * platform/mac/fast/text/international/hindi-spacing-expected.checksum: Added. * platform/mac/fast/text/international/hindi-spacing-expected.png: Added. * platform/mac/fast/text/international/hindi-spacing-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37665 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mjs@apple.com authored
Reviewed by Cameron Zwarich - don't bother to do arguments tearoff when it will have no effect ~1% on v8 raytrace * VM/CodeGenerator.cpp: (JSC::CodeGenerator::emitReturn): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37664 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
Eliminate the EAppearance enum in favor of the new ControlPart enum. Cut out the scrollbar values from the enum since they are handled by ScrollbarTheme instead. Reviewed by Tim Hatcher * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator ControlPart): * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): * css/CSSValueKeywords.in: * platform/gtk/RenderThemeGtk.cpp: (WebCore::supportsFocus): (WebCore::RenderThemeGtk::baselinePosition): (WebCore::setToggleSize): (WebCore::RenderThemeGtk::setCheckboxSize): (WebCore::RenderThemeGtk::setRadioSize): (WebCore::RenderThemeGtk::adjustButtonStyle): * platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::baselinePosition): (WebCore::RenderThemeQt::controlSupportsTints): (WebCore::RenderThemeQt::adjustRepaintRect): (WebCore::RenderThemeQt::isControlStyled): (WebCore::computeSizeBasedOnStyle): (WebCore::RenderThemeQt::paintButton): (WebCore::RenderThemeQt::paintTextField): (WebCore::RenderThemeQt::paintMenuList): (WebCore::RenderThemeQt::supportsFocus): (WebCore::RenderThemeQt::applyTheme): (WebCore::RenderThemeQt::adjustSliderThumbSize): * platform/qt/RenderThemeQt.h: * rendering/RenderSlider.cpp: (WebCore::RenderSlider::createThumbStyle): (WebCore::RenderSlider::layout): (WebCore::RenderSlider::setValueForPosition): (WebCore::RenderSlider::setPositionFromValue): (WebCore::RenderSlider::positionForOffset): (WebCore::RenderSlider::currentPosition): (WebCore::RenderSlider::setCurrentPosition): (WebCore::RenderSlider::trackSize): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): (WebCore::RenderTheme::paint): (WebCore::RenderTheme::paintBorderOnly): (WebCore::RenderTheme::paintDecorations): (WebCore::RenderTheme::isControlContainer): (WebCore::RenderTheme::isControlStyled): (WebCore::RenderTheme::supportsFocusRing): (WebCore::RenderTheme::isDefault): * rendering/RenderTheme.h: * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled): (WebCore::RenderThemeMac::adjustRepaintRect): (WebCore::RenderThemeMac::baselinePosition): (WebCore::RenderThemeMac::controlSupportsTints): (WebCore::RenderThemeMac::adjustButtonStyle): (WebCore::RenderThemeMac::setButtonCellState): (WebCore::RenderThemeMac::popupInternalPaddingLeft): (WebCore::RenderThemeMac::popupInternalPaddingRight): (WebCore::RenderThemeMac::popupInternalPaddingTop): (WebCore::RenderThemeMac::popupInternalPaddingBottom): (WebCore::RenderThemeMac::paintSliderTrack): (WebCore::RenderThemeMac::paintSliderThumb): (WebCore::RenderThemeMac::adjustSliderThumbSize): * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::isControlStyled): (WebCore::RenderThemeSafari::adjustRepaintRect): (WebCore::RenderThemeSafari::baselinePosition): (WebCore::RenderThemeSafari::controlSupportsTints): (WebCore::RenderThemeSafari::adjustButtonStyle): (WebCore::RenderThemeSafari::popupInternalPaddingLeft): (WebCore::RenderThemeSafari::popupInternalPaddingRight): (WebCore::RenderThemeSafari::popupInternalPaddingTop): (WebCore::RenderThemeSafari::popupInternalPaddingBottom): (WebCore::RenderThemeSafari::paintSliderTrack): (WebCore::RenderThemeSafari::adjustSliderThumbSize): * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::supportsFocus): (WebCore::RenderThemeWin::determineClassicState): (WebCore::RenderThemeWin::getClassicThemeData): (WebCore::RenderThemeWin::getThemeData): (WebCore::drawControl): (WebCore::RenderThemeWin::paintSliderTrack): (WebCore::RenderThemeWin::adjustSliderThumbSize): * rendering/RenderThemeWin.h: * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::hasAppearance): (WebCore::InheritedFlags::appearance): (WebCore::InheritedFlags::setAppearance): (WebCore::InheritedFlags::initialAppearance): * rendering/style/RenderStyleConstants.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37663 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
Beginning of the RenderTheme re-architecture (to share more code). Add the new Theme API header file. Add new USE(NEW_THEME) switch that is enabled on Mac. The Mac theme will be converted first. Reviewed by Tim Hatcher * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * config.h: * platform/Theme.h: Added. (WebCore::Theme::Theme): (WebCore::Theme::~Theme): (WebCore::Theme::baselinePositionAdjustment): (WebCore::Theme::controlHasInactiveAppearance): (WebCore::Theme::controlsCanHaveInactiveAppearance): (WebCore::Theme::controlsCanHaveHoveredAppearance): (WebCore::Theme::controlDrawsBorder): (WebCore::Theme::controlDrawsBackground): (WebCore::Theme::controlDrawsFocusOutline): (WebCore::Theme::selectionColor): (WebCore::Theme::textSearchHighlightColor): (WebCore::Theme::systemColor): (WebCore::Theme::systemFont): (WebCore::Theme::caretBlinkFrequency): (WebCore::Theme::themeChanged): (WebCore::Theme::controlSize): (WebCore::Theme::controlFont): (WebCore::Theme::controlPadding): (WebCore::Theme::controlInternalPadding): (WebCore::Theme::controlBorder): (WebCore::Theme::controlBorderRadius): (WebCore::Theme::paint): (WebCore::Theme::inflateControlPaintRect): * platform/ThemeTypes.h: Added. (WebCore::): (WebCore::ControlBox::ControlBox): (WebCore::ControlBox::top): (WebCore::ControlBox::right): (WebCore::ControlBox::bottom): (WebCore::ControlBox::left): * platform/mac/ThemeMac.h: Added. (WebCore::ThemeMac::ThemeMac): (WebCore::ThemeMac::~ThemeMac): * platform/mac/ThemeMac.mm: Added. (WebCore::platformTheme): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::RenderTheme): * rendering/RenderTheme.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37662 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kmccullough@apple.com authored
Reviewed by Steve Falkenburg. <rdar://problem/6292718> Implement a standard way to get the UA given an application name. * Interfaces/IWebViewPrivate.idl: * WebView.cpp: (WebView::standardUserAgentWithApplicationName): * WebView.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jmalonzo@webkit.org authored
Reviewed by Sam Weinig. Landed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=21603 [GTK] Minor fixes to GOwnPtr * wtf/GOwnPtr.cpp: (WTF::GError): (WTF::GList): (WTF::GCond): (WTF::GMutex): (WTF::GPatternSpec): (WTF::GDir): * wtf/GOwnPtr.h: (WTF::freeOwnedGPtr): (WTF::GOwnPtr::~GOwnPtr): (WTF::GOwnPtr::outPtr): (WTF::GOwnPtr::set): (WTF::GOwnPtr::clear): * wtf/Threading.h: 2008-10-17 Marco Barisione <marco.barisione@collabora.co.uk> Reviewed by Sam Weinig. Landed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=21603 [GTK] Minor fixes to GOwnPtr * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: (WebCore::mediaPlayerPrivateErrorCallback): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37660 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-