Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.
This patch greatly simplifies how things are exposed. The starting point is:
- GeckoProfiler.h can be #included unconditionally;
- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.
In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.
The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.
Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
This patch does the following.
- Makes the TracingKind argument non-optional.
- Puts the UniqueProfilerBacktrace argument last in the second variant.
- Reorders AutoProfilerTracing to match the order of the profiler_tracing()
declarations.
--HG--
extra : rebase_source : 8e9acdaf777c642cd854570771a3f96da6d524d1
(Path is actually r=froydnj.)
Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.
MozReview-Commit-ID: 91U22X2NydP
--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
Bug 1363216 - Turn off std::future for MinGW.
Bug 1331335 - Add SSE2 Flags to all of libANGLE.
Bug 1364169 - on ANGLE context creation asks for robustness but does not get it.
Bug 1370865 - Suppress more MSVC warnings in gfx/angle.
Bug 1373525 - gfx/angle: Suppress -Wimplicit-fallthrough warnings in third-party code.
Bug 1347866 - Part3: ANGLE patch uplift for bug1325733.
Bug 1347866 - Part4: ANGLE patch uplift for bug1325741.
Bug 1322746 - Add general ID3D11Texture2D to EGLStream support to ANGLE.
Bug 1366425 - Avoid losing context on out of memory error for ANGLE.
--HG--
extra : rebase_source : 2d422e188797b07194b8df0f0f1f3fd435c710e4
Bug 1404782 added another codepath that allows the CreateWebRenderCommandsFromDisplayList
function to recurse. However recursion is tricky when APZ is enabled because
we need to do a bunch of setup and teardown to properly build event regions and
track APZ state. This patch moves the new recursion codepath inside the setup
and teardown, so that it works as intended.
MozReview-Commit-ID: C2Pwld7DdCC
--HG--
extra : rebase_source : d9ebc81ce81f416aa5eceeeed3ecf884e7fdb162
This allows easier testing of shader changes. If you point this environment
variable at your gfx/webrender/res/ directory, the shaders will be read from
that directory when Firefox is launched, so you can test shader changes just by
restarting Firefox and don't need to recompile.
MozReview-Commit-ID: 9Dt6MhErnGS
--HG--
extra : rebase_source : 3c8cb83f28a6b6b00fb4437a7fd7f04dd5511633
- As the aLayersChannel parameter is never passed and now no longer used,
it has been removed from the SurfaceFactory::NewTextClient.
MozReview-Commit-ID: 58K4Tbj92gO
--HG--
extra : amend_source : d25875293b59ad261d48fae537ed6d8867c15714
- As the aLayersChannel parameter is never passed and now no longer used,
it has been removed from the SurfaceFactory::NewTextClient.
MozReview-Commit-ID: 58K4Tbj92gO
--HG--
extra : rebase_source : d9639dcd81f03f71514a5b288002b7c446805d06
Also cleans up a bunch of TextDrawTarget code as fallout.
This is a significant perf win for textFrames.
MozReview-Commit-ID: J1BDkXZdvnc
--HG--
extra : rebase_source : 5a0769a53cadb55a074cfe5d718e259401fa7028
This removes retained mBuiltDisplayList that isn't used for anything now that
empty transactions are saner. It also ends up moving the Finalize call out
of WebRenderBridgeChild into WebRenderLayerManager so we can retain the final
size.
This exposes the capacity of the underlying vec and sets it to the capacity of
the previous display list (mLastDisplayListSize). Doing so helps us avoid
reallocing up to the desired size every frame.
Note: the rebased version doesn't actually use a reasonable size. That will happen
in bug 1405819.
The method isn't called and the comments referring to it are no longer applicable.
MozReview-Commit-ID: 2FFWhj7wzht
--HG--
extra : rebase_source : 5987c52a2a220185a61a45d18a6229aa7e5d8ea3
For now, convert 10/12 bits YUV image to 8 bits. Native support will be tracked in bug 1379948
MozReview-Commit-ID: LOr9X5xxKY7
--HG--
extra : rebase_source : 279e00832543501616af0a4a5958917b72533a4c