Bug 93400

Summary: Improve RenderObject.h compile time - split CachedImage and CachedImageClient
Product: WebKit Reporter: nbhargava
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: cmarcelo, dglazkov, dino, eric, gustavo, japhet, macpherson, menard, philn, webkit.review.bot, xan.lopez
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch for landing
none
Patch for landing
none
Patch for landing
none
Patch for landing
none
Patch for landing
none
Patch for landing none

nbhargava
Reported 2012-08-07 14:57:26 PDT
Improve RenderObject.h compile time - split CachedImage and CachedImageClient
Attachments
Patch (10.76 KB, patch)
2012-08-07 15:00 PDT, nbhargava
no flags
Patch for landing (11.79 KB, patch)
2012-08-07 15:31 PDT, nbhargava
no flags
Patch for landing (12.23 KB, patch)
2012-08-07 16:03 PDT, nbhargava
no flags
Patch for landing (12.25 KB, patch)
2012-08-07 16:55 PDT, nbhargava
no flags
Patch for landing (12.25 KB, patch)
2012-08-07 16:57 PDT, nbhargava
no flags
Patch for landing (12.70 KB, patch)
2012-08-07 17:32 PDT, nbhargava
no flags
Patch for landing (13.15 KB, patch)
2012-08-08 09:33 PDT, nbhargava
no flags
nbhargava
Comment 1 2012-08-07 15:00:31 PDT
Eric Seidel (no email)
Comment 2 2012-08-07 15:12:22 PDT
Comment on attachment 157016 [details] Patch HOT DAMN! I look forward to more of these!
nbhargava
Comment 3 2012-08-07 15:31:48 PDT
Created attachment 157021 [details] Patch for landing
WebKit Review Bot
Comment 4 2012-08-07 15:52:43 PDT
Comment on attachment 157021 [details] Patch for landing Attachment 157021 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/13453383
nbhargava
Comment 5 2012-08-07 16:03:33 PDT
Created attachment 157033 [details] Patch for landing
WebKit Review Bot
Comment 6 2012-08-07 16:08:16 PDT
Attachment 157033 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/css/CSSImageSetValue.cpp:31: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 15 files If any of these errors are false positives, please file a bug against check-webkit-style.
Nico Weber
Comment 7 2012-08-07 16:52:17 PDT
Comment on attachment 157033 [details] Patch for landing cq- for Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/css/CSSImageSetValue.cpp:31: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 15 files Easy to fix at least.
nbhargava
Comment 8 2012-08-07 16:55:13 PDT
Created attachment 157045 [details] Patch for landing
nbhargava
Comment 9 2012-08-07 16:57:21 PDT
Created attachment 157046 [details] Patch for landing
Build Bot
Comment 10 2012-08-07 17:31:12 PDT
Comment on attachment 157046 [details] Patch for landing Attachment 157046 [details] did not pass win-ews (win): Output: http://queues.webkit.org/results/13459013
nbhargava
Comment 11 2012-08-07 17:32:51 PDT
Created attachment 157054 [details] Patch for landing
Early Warning System Bot
Comment 12 2012-08-07 18:29:12 PDT
Comment on attachment 157054 [details] Patch for landing Attachment 157054 [details] did not pass qt-ews (qt): Output: http://queues.webkit.org/results/13448791
Early Warning System Bot
Comment 13 2012-08-07 18:36:45 PDT
Comment on attachment 157054 [details] Patch for landing Attachment 157054 [details] did not pass qt-wk2-ews (qt): Output: http://queues.webkit.org/results/13451616
nbhargava
Comment 14 2012-08-08 09:33:48 PDT
Created attachment 157237 [details] Patch for landing
WebKit Review Bot
Comment 15 2012-08-08 10:54:44 PDT
Comment on attachment 157237 [details] Patch for landing Clearing flags on attachment: 157237 Committed r125051: <http://trac.webkit.org/changeset/125051>
WebKit Review Bot
Comment 16 2012-08-08 10:54:50 PDT
All reviewed patches have been landed. Closing bug.
Dean Jackson
Comment 17 2012-08-08 11:35:33 PDT
This broke the Mac builds. CompileC "/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/Objects-normal/i386/ClipboardMac.o" platform/mac/ClipboardMac.mm normal i386 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler cd /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore setenv LANG en_US.US-ASCII /usr/bin/clang -x objective-c++ -arch i386 -fmessage-length=0 -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -stdlib=libc++ -fobjc-gc -Wno-trigraphs -fno-exceptions -fno-rtti -fpascal-strings -O2 -Werror -Wmissing-prototypes -Wno-return-type -Wnon-virtual-dtor -Wparentheses -Wswitch -Wno-unused-parameter -Wno-unused-variable -Wunused-value -Wsign-compare -Wno-shorten-64-to-32 -Wnewline-eof -Wno-arc-abi -Wno-c++0x-extensions -DNDEBUG -DENABLE_3D_RENDERING -DENABLE_BLOB -DENABLE_CHANNEL_MESSAGING -DENABLE_CSS_BOX_DECORATION_BREAK -DENABLE_CSS_EXCLUSIONS -DENABLE_CSS_FILTERS -DENABLE_CSS_REGIONS -DENABLE_CSS_SHADERS -DENABLE_CSS_STICKY_POSITION -DENABLE_CSS3_FLEXBOX -DENABLE_DASHBOARD_SUPPORT -DENABLE_DETAILS_ELEMENT -DENABLE_FILTERS -DENABLE_FULLSCREEN_API -DENABLE_GEOLOCATION -DENABLE_HIGH_DPI_CANVAS -DENABLE_ICONDATABASE -DENABLE_IFRAME_SEAMLESS -DENABLE_JAVASCRIPT_DEBUGGER -DENABLE_LEGACY_CSS_VENDOR_PREFIXES -DENABLE_MATHML -DENABLE_METER_ELEMENT -DENABLE_MUTATION_OBSERVERS -DENABLE_PROGRESS_ELEMENT -DENABLE_REQUEST_ANIMATION_FRAME -DENABLE_SHARED_WORKERS -DENABLE_SQL_DATABASE -DENABLE_SVG -DENABLE_SVG_DOM_OBJC_BINDINGS -DENABLE_SVG_FONTS -DENABLE_TEXT_NOTIFICATIONS_ONLY -DENABLE_VIDEO -DENABLE_VIDEO_TRACK -DENABLE_WEBGL -DENABLE_WEB_AUDIO -DENABLE_WEB_SOCKETS -DENABLE_WIDGET_REGION -DENABLE_WORKERS -DENABLE_XSLT -DWEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST -fasm-blocks -Wno-deprecated-declarations -mmacosx-version-min=10.7 -gdwarf-2 -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion "-DIBOutlet=__attribute__((iboutlet))" "-DIBOutletCollection(ClassName)=__attribute__((iboutletcollection(ClassName)))" "-DIBAction=void)__attribute__((ibaction)" "-I/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/WebCore.hmap" "-I/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts/include" -I/Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include -IForwardingHeaders -Iicu -I/usr/include/libxslt -I/usr/include/libxml2 "-I/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts/DerivedSources/WebCore" "-I/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts/usr/local/include" "-I/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/DerivedSources/i386" "-I/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/DerivedSources" -Wall -Wextra -Wcast-qual -Wchar-subscripts -Wextra-tokens -Wformat=2 -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wshorten-64-to-32 -Wexit-time-destructors -Wglobal-constructors -Wtautological-compare "-F/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts" -F/Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks -F/Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks -F/Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/System/Library/PrivateFrameworks -F/System/Library/Frameworks/Carbon.framework/Frameworks -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks -F/System/Library/Frameworks/CoreServices.framework/Frameworks -F/System/Library/PrivateFrameworks -isystem/Volumes/Data/slave/lion-production-archive/build/build-Production/builditSharedHdrDstroot/usr/include -isystem/Volumes/Data/slave/lion-production-archive/build/build-Production/builditSharedHdrDstroot/usr/lib/include -isystem/Volumes/Data/slave/lion-production-archive/build/build-Production/builditSharedHdrDstroot/usr/local/include -isystem/Volumes/Data/slave/lion-production-archive/build/build-Production/builditSharedHdrDstroot/usr/local/lib/include -include "/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/Caches/SharedPrecompiledHeaders/WebCorePrefix-gcddgdqzvhfuuaduweovpratnmht/WebCorePrefix.h" -MMD -MT dependencies -MF "/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/Objects-normal/i386/ClipboardMac.d" -c /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.mm -o "/Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/Objects-normal/i386/ClipboardMac.o" In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.mm:27: /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.h:40:47:{40:40-40:64}: error: base class has incomplete type [2] class ClipboardMac : public Clipboard, public CachedImageClient { ~~~~~~~^~~~~~~~~~~~~~~~~ /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/svg/graphics/SVGImageCache.h:34:7: note: forward declaration of 'WebCore::CachedImageClient' class CachedImageClient; ^ /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.mm:345:39:{345:39-345:43}: error: cannot initialize a parameter of type 'WebCore::CachedResourceClient *' with an rvalue of type 'WebCore::ClipboardMac *' [2] m_dragImage->removeClient(this); ^~~~ /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/loader/cache/CachedResource.h:117:44: note: passing argument to parameter here [2] void removeClient(CachedResourceClient*); ^ /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.mm:348:36:{348:36-348:40}: error: cannot initialize a parameter of type 'WebCore::CachedResourceClient *' with an rvalue of type 'WebCore::ClipboardMac *' [2] m_dragImage->addClient(this); ^~~~ /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/loader/cache/CachedResource.h:116:41: note: passing argument to parameter here [2] void addClient(CachedResourceClient*); ^ In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include/wtf/RefPtr.h:28: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include/wtf/VectorTraits.h:25: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include/wtf/Vector.h:30: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include/wtf/text/StringImpl.h:31: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include/wtf/text/WTFString.h:29: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/text/PlatformString.h:28: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/loader/cache/CachedResource.h:28: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/loader/cache/CachedImage.h:26: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.h:29: In file included from /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.mm:27: /Volumes/Data/slave/lion-production-archive/build/build-Production/SafariRoot/usr/local/include/wtf/PassRefPtr.h:65:67:{65:73-65:84}: error: cannot initialize a member subobject of type 'WebCore::Clipboard *' with an rvalue of type 'WebCore::ClipboardMac *' [2] template<typename U> PassRefPtr(const PassRefPtr<U>& o) : m_ptr(o.leakRef()) { } ^ ~~~~~~~~~~~ /Volumes/Data/slave/lion-production-archive/build/build-Production/WebCore.roots/WebCore/platform/mac/ClipboardMac.mm:52:12: note: in instantiation of function template specialization 'WTF::PassRefPtr<WebCore::Clipboard>::PassRefPtr<WebCore::ClipboardMac>' requested here [2] return ClipboardMac::create(DragAndDrop, dragData->pasteboardName(), policy, dragData->containsFiles() ? ClipboardMac::DragAndDropFiles : ClipboardMac::DragAndDropData, frame); ^ 4 errors generated.
Dean Jackson
Comment 18 2012-08-08 11:36:59 PDT
Dean Jackson
Comment 19 2012-08-08 11:57:11 PDT
Dean Jackson
Comment 20 2012-08-08 12:34:41 PDT
Eric Seidel (no email)
Comment 21 2012-08-08 12:36:59 PDT
Thanks Dean!
Eric Seidel (no email)
Comment 22 2012-08-08 12:37:41 PDT
Sadly the mac-ews is veeeery behind atm. We should ask Lucas to turn off running tests until he gets more hardware. :)
Note You need to log in before you can comment on or make changes to this bug.