gecko-dev/dom/canvas
Jamie Nicol 7cace3aaaf Bug 1827047 - Avoid unsynchronized BufferSubData fast-path on ANGLE. r=gfx-reviewers,lsalzman
In bug 1826134 we added a fast-path to WebGLBuffer::BufferSubData used
by DrawTargetWebgl, which under the hood uses glMapBufferRange with
GL_MAP_UNSYNCHRONIZED_BIT. However, this causes performance issues on
ANGLE. This patch therefore avoids the fast-path on ANGLE, falling
back to a simple glBufferSubData instead.

Differential Revision: https://phabricator.services.mozilla.com/D175135
2023-04-11 16:06:13 +00:00
..
crashtests Bug 1816140: Check that OffscreenCanvas width and height fit in int32_t. r=gfx-reviewers,webidl,aosmond,nical,smaug 2023-02-14 00:18:37 +00:00
gtest
test Backed out 6 changesets (bug 1821512) for causing multiple failures. CLOSED TREE 2023-04-11 10:10:41 +03:00
BasicRenderingContext2D.h
CacheInvalidator.cpp
CacheInvalidator.h
CanvasGradient.cpp
CanvasGradient.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
CanvasImageCache.cpp Bug 1794442 - Avoid reusing CanvasImageCache entries for different backends. r=lsalzman 2022-10-14 20:40:11 +00:00
CanvasImageCache.h Bug 1794442 - Avoid reusing CanvasImageCache entries for different backends. r=lsalzman 2022-10-14 20:40:11 +00:00
CanvasPath.h Bug 1756175 - Implement roundRect for canvas2D. r=lsalzman,emilio 2023-02-21 19:41:49 +00:00
CanvasPattern.cpp
CanvasPattern.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
CanvasRenderingContext2D.cpp Bug 1811950 - Allow WorkerGlobalScope.fonts to fail. r=aosmond,webidl,saschanaz 2023-04-11 13:44:53 +00:00
CanvasRenderingContext2D.h Bug 1812932 - Add size outvar to GetImageBuffer. r=gfx-reviewers,bradwerth 2023-03-21 18:05:09 +00:00
CanvasRenderingContextHelper.cpp Bug 1812932 - Add size outvar to GetImageBuffer. r=gfx-reviewers,bradwerth 2023-03-21 18:05:09 +00:00
CanvasRenderingContextHelper.h
CanvasUtils.cpp Bug 1810488 - Remove unnecessary ShouldResistFingerprinting call from IsImageExtractionAllowed. r=gfx-reviewers,nical,tjr 2023-01-18 08:19:49 +00:00
CanvasUtils.h Bug 1660405 - Move away from mozilla::IsFinite in favor of std::isfinite. r=sergesanspaille 2023-03-22 11:35:33 +00:00
ClientWebGLContext.cpp Bug 1826134 - Avoid interleaving glBufferSubData calls with draw calls in DrawTargetWebgl. r=gfx-reviewers,jgilbert,lsalzman 2023-04-07 07:25:50 +00:00
ClientWebGLContext.h Bug 1826134 - Avoid interleaving glBufferSubData calls with draw calls in DrawTargetWebgl. r=gfx-reviewers,jgilbert,lsalzman 2023-04-07 07:25:50 +00:00
ClientWebGLExtensions.cpp Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
ClientWebGLExtensions.h Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
DrawTargetWebgl.cpp Backed out 6 changesets (bug 1821512) for causing multiple failures. CLOSED TREE 2023-04-11 10:10:41 +03:00
DrawTargetWebgl.h Bug 1826420 - Fast-path non-aligned clip rects in DrawTargetWebgl. r=gfx-reviewers,aosmond 2023-04-05 15:52:36 +00:00
DrawTargetWebglInternal.h Bug 1800352 - Support bigger cache for PathCache. r=aosmond 2022-11-13 23:01:53 +00:00
GeneratePlaceholderCanvasData.h
HostWebGLContext.cpp Bug 1777426 - Support fast readbacks in CopyToSwapChain with async present. r=sotaro,jgilbert 2022-07-12 06:56:19 +00:00
HostWebGLContext.h Bug 1826134 - Avoid interleaving glBufferSubData calls with draw calls in DrawTargetWebgl. r=gfx-reviewers,jgilbert,lsalzman 2023-04-07 07:25:50 +00:00
ImageBitmap.cpp Bug 1785635 Add flag to enforce from-image orientation for createImageBitmap r=emilio 2023-01-31 16:04:17 +00:00
ImageBitmap.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
ImageBitmapRenderingContext.cpp Bug 1812932 - Add size outvar to GetImageBuffer. r=gfx-reviewers,bradwerth 2023-03-21 18:05:09 +00:00
ImageBitmapRenderingContext.h Bug 1812932 - Add size outvar to GetImageBuffer. r=gfx-reviewers,bradwerth 2023-03-21 18:05:09 +00:00
ImageBitmapSource.h
ImageData.cpp
ImageData.h
ImageUtils.cpp Bug 1778232 - ImageFormat::s/CAIRO_SURFACE/MOZ2D_SURFACE/. r=jrmuizel 2022-07-06 07:46:17 +00:00
ImageUtils.h
MurmurHash3.cpp Bug 1519636 - Reformat recent changes to the Google coding style. r=glandium 2023-02-13 15:02:07 +00:00
MurmurHash3.h
OffscreenCanvas.cpp Bug 1816140: Check that OffscreenCanvas width and height fit in int32_t. r=gfx-reviewers,webidl,aosmond,nical,smaug 2023-02-14 00:18:37 +00:00
OffscreenCanvas.h Bug 1816140: Check that OffscreenCanvas width and height fit in int32_t. r=gfx-reviewers,webidl,aosmond,nical,smaug 2023-02-14 00:18:37 +00:00
OffscreenCanvasDisplayHelper.cpp Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
OffscreenCanvasDisplayHelper.h Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
OffscreenCanvasRenderingContext2D.cpp Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
OffscreenCanvasRenderingContext2D.h Bug 1779227 - Enable the font attribute to be set on a disconnected <canvas> element without throwing an error. r=aosmond 2022-07-12 18:36:32 +00:00
PWebGL.ipdl Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
QueueParamTraits.h Bug 1798703 - Enforce alignment for UniformData via union rather than overalignment. r=lsalzman 2022-11-07 07:24:43 +00:00
SanitizeRenderer.cpp
SourceSurfaceWebgl.cpp Bug 1752841 - Add ExtractSubrect API to SourceSurface. r=jrmuizel 2022-12-07 21:06:32 +00:00
SourceSurfaceWebgl.h Bug 1752841 - Add ExtractSubrect API to SourceSurface. r=jrmuizel 2022-12-07 21:06:32 +00:00
TexUnpackBlob.cpp Backed out changeset 0a2985a48339 (bug 1769747) for causing gl failures. 2022-10-05 01:38:13 +03:00
TexUnpackBlob.h
TextMetrics.h
TiedFields.h Bug 1519636 - Reformat recent changes to the Google coding style. r=glandium 2023-02-13 15:02:07 +00:00
TupleUtils.h Bug 1778808 - Trim unused code, particularly in TiedFields.h. r=nika 2022-08-09 21:01:56 +00:00
WebGL2Context.cpp
WebGL2Context.h
WebGL2ContextBuffers.cpp
WebGL2ContextFramebuffers.cpp
WebGL2ContextMRTs.cpp Bug 1778808 - Use stricter TiedFields instead of IsTriviallySerializable in WebGL's QueueParamTraits. r=lsalzman,nika 2022-08-09 21:01:55 +00:00
WebGL2ContextQueries.cpp
WebGL2ContextRenderbuffers.cpp
WebGL2ContextSamplers.cpp
WebGL2ContextState.cpp
WebGL2ContextSync.cpp
WebGL2ContextTransformFeedback.cpp
WebGL2ContextUniforms.cpp
WebGLBuffer.cpp Bug 1827047 - Avoid unsynchronized BufferSubData fast-path on ANGLE. r=gfx-reviewers,lsalzman 2023-04-11 16:06:13 +00:00
WebGLBuffer.h Bug 1826134 - Avoid interleaving glBufferSubData calls with draw calls in DrawTargetWebgl. r=gfx-reviewers,jgilbert,lsalzman 2023-04-07 07:25:50 +00:00
WebGLChild.cpp Bug 1801021 - Use BigBuffer for DispatchCommands. r=gfx-reviewers,lsalzman 2022-11-25 22:20:38 +00:00
WebGLChild.h Bug 1801021 - Use BigBuffer for DispatchCommands. r=gfx-reviewers,lsalzman 2022-11-25 22:20:38 +00:00
WebGLCommandQueue.h Bug 1798703 - Enforce alignment for UniformData via union rather than overalignment. r=lsalzman 2022-11-07 07:24:43 +00:00
WebGLContext.cpp Bug 1804368 - Add webgl.forbid-software/forbid-hardware on Mac. r=gfx-reviewers,lsalzman 2023-04-03 21:25:41 +00:00
WebGLContext.h Bug 1826134 - Avoid interleaving glBufferSubData calls with draw calls in DrawTargetWebgl. r=gfx-reviewers,jgilbert,lsalzman 2023-04-07 07:25:50 +00:00
WebGLContextBuffers.cpp Bug 1826134 - Avoid interleaving glBufferSubData calls with draw calls in DrawTargetWebgl. r=gfx-reviewers,jgilbert,lsalzman 2023-04-07 07:25:50 +00:00
WebGLContextDraw.cpp Bug 1800301 - Use Vector instead of custom inlining_vector. r=jgilbert 2022-11-15 08:05:09 +00:00
WebGLContextExtensions.cpp Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
WebGLContextFramebufferOperations.cpp
WebGLContextGL.cpp Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
WebGLContextLossHandler.cpp
WebGLContextLossHandler.h
WebGLContextState.cpp
WebGLContextTextures.cpp
WebGLContextUtils.cpp Bug 1660405 - Move away from mozilla::IsNaN in favor of std::isnan. r=nbp,media-playback-reviewers,sergesanspaille,padenot 2023-03-22 11:35:33 +00:00
WebGLContextUtils.h
WebGLContextValidate.cpp Bug 1800301 - Reduce allocs and ptr-chasing in ScopedResolveTexturesForDraw. r=gfx-reviewers,lsalzman 2022-11-15 04:11:16 +00:00
WebGLContextVertexArray.cpp
WebGLContextVertices.cpp Bug 1778808 - Use stricter TiedFields instead of IsTriviallySerializable in WebGL's QueueParamTraits. r=lsalzman,nika 2022-08-09 21:01:55 +00:00
WebGLExtensions.cpp
WebGLExtensions.h Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
WebGLFormats.cpp Bug 1778549 - Don't crash on validation failure in ReadPixelsPbo. r=gfx-reviewers,lsalzman 2022-08-03 06:10:31 +00:00
WebGLFormats.h Bug 1778549 - Don't crash on validation failure in ReadPixelsPbo. r=gfx-reviewers,lsalzman 2022-08-03 06:10:31 +00:00
WebGLFramebuffer.cpp
WebGLFramebuffer.h
WebGLInternalFormatsTable.h
WebGLIpdl.h Bug 1803375. Use different coordinates when running on AMD. r=lsalzman,jgilbert 2023-01-27 01:45:17 +00:00
WebGLMemoryTracker.cpp
WebGLMemoryTracker.h
WebGLMethodDispatcher.h Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
WebGLObjectModel.h
WebGLParent.cpp Bug 1805790 - In PWebGL, only IPC_FAIL for ipc errors, not errors over ipc. r=gfx-reviewers,lsalzman 2022-12-15 19:02:12 +00:00
WebGLParent.h Bug 1801021 - Use BigBuffer for DispatchCommands. r=gfx-reviewers,lsalzman 2022-11-25 22:20:38 +00:00
WebGLProgram.cpp Bug 1800301 - Use Vector instead of custom inlining_vector. r=jgilbert 2022-11-15 08:05:09 +00:00
WebGLProgram.h Bug 1800301 - Use Vector instead of custom inlining_vector. r=jgilbert 2022-11-15 08:05:09 +00:00
WebGLQuery.cpp
WebGLQuery.h
WebGLQueueParamTraits.h Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
WebGLRenderbuffer.cpp
WebGLRenderbuffer.h
WebGLSampler.cpp
WebGLSampler.h
WebGLShader.cpp
WebGLShader.h
WebGLShaderValidator.cpp Bug 1794292: apply code formatting via Lando 2023-03-30 22:44:59 +00:00
WebGLShaderValidator.h Bug 1779800 - Fix WebGL instancing in some cases on Mac. r=gfx-reviewers,lsalzman 2022-09-15 00:47:03 +00:00
WebGLStrongTypes.h
WebGLSync.cpp
WebGLSync.h
WebGLTexelConversions.cpp Bug 1677183 - Implement WebGPU's Queue.copyExternalImageToTexture. r=jgilbert,jimb,emilio 2022-08-18 16:11:46 +00:00
WebGLTexelConversions.h Bug 1677183 - Implement WebGPU's Queue.copyExternalImageToTexture. r=jgilbert,jimb,emilio 2022-08-18 16:11:46 +00:00
WebGLTexture.cpp Bug 1781728 - Fix code style r=jgilbert 2022-08-24 22:20:39 +00:00
WebGLTexture.h Bug 1781728 - Clamp WebGL mipmap levels r=jgilbert 2022-08-24 22:20:39 +00:00
WebGLTextureUpload.cpp Backed out changeset 0a2985a48339 (bug 1769747) for causing gl failures. 2022-10-05 01:38:13 +03:00
WebGLTransformFeedback.cpp
WebGLTransformFeedback.h
WebGLTypes.h Bug 1825673 - Implement WEBGL_provoking_vertex. r=gfx-reviewers,webidl,lsalzman,saschanaz 2023-04-01 00:33:25 +00:00
WebGLValidateStrings.cpp
WebGLValidateStrings.h
WebGLVertexArray.cpp
WebGLVertexArray.h Bug 1779800 - Fix WebGL instancing in some cases on Mac. r=gfx-reviewers,lsalzman 2022-09-15 00:47:03 +00:00
WebGLVertexArrayFake.cpp Bug 1779800 - Fix WebGL instancing in some cases on Mac. r=gfx-reviewers,lsalzman 2022-09-15 00:47:03 +00:00
WebGLVertexArrayFake.h
WebGLVertexArrayGL.cpp
WebGLVertexArrayGL.h
XRWebGLLayer.cpp Bug 1805931, part 2 - Automated removal of uses of ROOT and UNROOT CC macros. r=smaug 2022-12-15 19:45:01 +00:00
XRWebGLLayer.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
moz.build Backed out changeset 0a2985a48339 (bug 1769747) for causing gl failures. 2022-10-05 01:38:13 +03:00
nsICanvasRenderingContextInternal.cpp Bug 1780042 - Set CanvasPattern principal for main thread OffscreenCanvas. r=lsalzman 2022-08-02 15:51:45 +00:00
nsICanvasRenderingContextInternal.h Bug 1812932 - Add size outvar to GetImageBuffer. r=gfx-reviewers,bradwerth 2023-03-21 18:05:09 +00:00