gecko/layout/base
Avi Halachmi ad77774fb9 Bug 838758: Cache GradientStops instead of gfxPattern. r=jrmuizel
Our gfxPattern cache is currently way too specific, which causes lots of
unnecessary cache misses. The only thing that we actually need to key on is the
color stops.

This switches the cache to hold GradientStops instead of gfxPatterns. This
improves our cache hit rate and is simpler. It also avoids doing caching when
not using Azure, which currently has no benefit.

Average paint times results (in ms)
(on windows 7 x64, i7-3630qm, HD4000)
-------------------------------------
m-c
open: 3.5 close: 3.3

m-c cache-key
open: 2.6 close: 2.4

ux
open: 7.3 close: 5.2

ux cache-key
open: 6.9 close: 5.3
2013-02-15 20:54:49 +02:00
..
crashtests Bug 836990. Put fixed-pos items in the abs-pos list of the container whenever it doesn't have a fixed-pos list. It's simpler this way and handles all edge cases. r=bzbarsky 2013-02-12 17:55:39 +13:00
tests Bug 832101 - Don't fluff out click targets for events from non-touch input [r=roc] 2013-01-24 06:53:18 -08:00
FrameLayerBuilder.cpp Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
FrameLayerBuilder.h Backout changeset 3ba90f85653a (Bug 805343) for regressing android talos tests 2012-12-14 11:51:00 +13:00
FramePropertyTable.cpp
FramePropertyTable.h
Makefile.in Bug 833879 - Move layout/xul/base/src/tree/ to layout/xul/tree, layout/xul/base/src/grid to layout/xul/grid. r=roc 2013-02-04 07:11:49 -05:00
MaskLayerImageCache.cpp
MaskLayerImageCache.h Bug 782368; undo patch from 780868. r=mattwoodrow 2012-12-12 10:57:52 +13:00
nsArenaMemoryStats.h
nsAutoLayoutPhase.cpp Bug 833009 - Remove "nsContentUtils.h" inclusions from headers in layout/. r=bz 2013-01-23 19:37:17 +00:00
nsAutoLayoutPhase.h Bug 833009 - Remove "nsContentUtils.h" inclusions from headers in layout/. r=bz 2013-01-23 19:37:17 +00:00
nsBidi.cpp bug 801466 - part 1 - remove uses of prmem in layout/ xpcom/ and modules/ r=roc 2012-12-03 16:18:36 -05:00
nsBidi.h
nsBidiPresUtils.cpp Check for fluid continuations up the parent chain and make them non-fluid. Bug 818454, r=roc 2013-02-11 23:45:55 -08:00
nsBidiPresUtils.h
nsCaret.cpp Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
nsCaret.h Bug 805697. Remove StCaretHider since it's not needed anymore. r=mats 2012-10-29 17:31:26 +13:00
nsChangeHint.h Bug 809328 - Stop using nsChangeHint_UpdateEffects in nsSVGRenderingObserver::DoUpdate overrides. r=roc. 2012-11-07 13:54:55 +00:00
nsChildIterator.cpp
nsChildIterator.h
nsCompatibility.h
nsCounterManager.cpp Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
nsCounterManager.h Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
nsCSSColorUtils.cpp
nsCSSColorUtils.h Bug 817574 - Replace NS_ABS with std::abs. r=roc 2012-12-04 13:33:33 +01:00
nsCSSFrameConstructor.cpp Bug 841225 - Do not create frames for HTML elements within a <tspan>. r=bzbarsky 2013-02-14 17:23:52 +11:00
nsCSSFrameConstructor.h Bug 655877 - Part 42: Construct new SVG text frames if the pref is set. r=bz 2013-02-11 17:22:18 +11:00
nsCSSRendering.cpp Bug 838758: Cache GradientStops instead of gfxPattern. r=jrmuizel 2013-02-15 20:54:49 +02:00
nsCSSRendering.h Bug 836844 - Pass the right clip area for canvas frames. r=roc 2013-02-04 07:11:49 -05:00
nsCSSRenderingBorders.cpp Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
nsCSSRenderingBorders.h Bug 805831: Add a cache for border corner gradients. r=joedrew 2012-10-27 06:32:52 +02:00
nsDisplayItemTypes.h Bug 798964 - Don't invalidate nsDisplayBackgroundColor if only the image changed. r=roc 2012-11-07 11:04:53 +13:00
nsDisplayItemTypesList.h Bug 655877 - Part 31b: New frame class nsSVGTextFrame2 for SVG text using CSS block/inline/text frames for layout. r=jwatt 2013-02-11 17:22:16 +11:00
nsDisplayList.cpp Backed out changeset 2c860c4bb820 (bug 840902) on a CLOSED TREE 2013-02-15 09:05:36 +00:00
nsDisplayList.h Backed out changeset 2c860c4bb820 (bug 840902) on a CLOSED TREE 2013-02-15 09:05:36 +00:00
nsDisplayListInvalidation.cpp Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow 2012-11-09 18:14:59 -05:00
nsDisplayListInvalidation.h Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow 2012-11-09 18:14:59 -05:00
nsDocumentViewer.cpp bug 841436 - remove nolonger needed qi from nsIDocShell to nsIDocShellTreeItem r=bz 2013-02-12 17:02:51 -05:00
nsFrameManager.cpp Bug 508725 - Part 5: Record the <style scoped> elements in scope in preparation for selector matching. r=dbaron 2013-01-09 10:25:48 +11:00
nsFrameManager.h Bug 811301. Part 2: Remove saved state IDs now that the root scroll frame state is captured normally. r=mats 2012-11-14 22:40:17 -08:00
nsFrameManagerBase.h
nsFrameTraversal.cpp Bug 579517 follow-up: Remove NSPR types that crept in 2012-10-25 14:44:37 -04:00
nsFrameTraversal.h Bug 579517 follow-up: Remove NSPR types that crept in 2012-10-25 14:44:37 -04:00
nsGenConList.cpp
nsGenConList.h
nsIDocumentViewerPrint.h Bug 826632. Part 1: Merge nsIViewManager into nsViewManager. r=tnikkel 2013-01-05 16:12:24 +13:00
nsIFrameTraversal.h Bug 579517 follow-up: Remove NSPR types that crept in 2012-10-25 14:44:37 -04:00
nsILayoutDebugger.h
nsILayoutHistoryState.h
nsIPercentHeightObserver.h
nsIPresShell.h Backed out changeset 6c21598704ac (bug 840902) 2013-02-15 09:05:07 +00:00
nsIReflowCallback.h
nsIStyleSheetService.idl
nsLayoutDebugger.cpp Bug 836179 - Add WriteDebugInfo so that display items can add extra information when printing display lists. r=roc 2013-01-30 18:07:30 +13:00
nsLayoutHistoryState.cpp
nsLayoutUtils.cpp bug 841436 - remove nolonger needed qi from nsIDocShell to nsIDocShellTreeItem r=bz 2013-02-12 17:02:51 -05:00
nsLayoutUtils.h Bug 655877 - Part 41b: Make SVG text selectable with the mouse. r=roc,jwatt 2013-02-11 17:22:18 +11:00
nsPresArena.cpp Bug 838557 - Create a common interface for ASan/Valgrind functions. r=mats,bhackett 2013-02-15 00:50:11 +01:00
nsPresArena.h
nsPresContext.cpp bug 841436 - remove nolonger needed qi from nsIDocShell to nsIDocShellTreeItem r=bz 2013-02-12 17:02:51 -05:00
nsPresContext.h Bug 838001 IME management code should use root widget instead of the nearest widget of the PresContext r=smaug 2013-02-06 11:50:02 +09:00
nsPresShell.cpp Backed out changeset 6c21598704ac (bug 840902) 2013-02-15 09:05:07 +00:00
nsPresShell.h Backed out changeset 6c21598704ac (bug 840902) 2013-02-15 09:05:07 +00:00
nsPresState.h
nsQuoteList.cpp
nsQuoteList.h
nsRefreshDriver.cpp Backed out 12 changesets (bug 834732) for b2g bustage and OSX mochitest-1 crashes on a CLOSED TREE. 2013-02-12 20:54:48 -05:00
nsRefreshDriver.h b=731974, requestAnimationFrame generates too short/long frames (incl. bug 799242); r=bz,smaug,roc,ehsan 2012-12-11 17:15:32 -05:00
nsStyleChangeList.cpp
nsStyleChangeList.h
nsStyleConsts.h Bug 835883 - Give the -moz-orient property an 'auto' value, and make that its initial value. r=dholbert. 2013-02-02 19:13:22 +01:00
nsStyleSheetService.cpp Bug 819819 (part 2) - Remove |name| from NS_MEMORY_REPORTER_MALLOC_SIZEOF_FUN. r=jlebar. 2012-12-23 16:59:51 -08:00
nsStyleSheetService.h
PaintTracker.cpp
PaintTracker.h
PositionedEventTargeting.cpp Bug 832101 - Don't fluff out click targets for events from non-touch input [r=roc] 2013-01-24 06:53:18 -08:00
PositionedEventTargeting.h Bug 832101 - Don't fluff out click targets for events from non-touch input [r=roc] 2013-01-24 06:53:18 -08:00
RestyleTracker.cpp Bug 815666 - Use OverflowUpdateTracker to avoid calling UpdateOverflow on the same frame multiple times. r=roc 2012-12-10 15:33:04 +13:00
RestyleTracker.h Bug 832611 - Use NotifyDestroyingFrame to remove frames from the OverflowChangedTracker. r=roc 2013-01-26 14:34:58 +13:00
StackArena.cpp
StackArena.h