Implement D3D11 compositor for swgl
Categories
(Core :: Graphics: WebRender, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox84 | --- | fixed |
People
(Reporter: jrmuizel, Assigned: mattwoodrow)
References
(Blocks 2 open bugs)
Details
Attachments
(4 files)
This will be useful for users that have a GPU but can't run regular WebRender for whatever reason.
Reporter | ||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 1•4 years ago
|
||
We can implement this very easily by mapping the wr::Compositor API to our existing CompositorD3D11.
That'll mean very little new code, and we should be able to ship this to users who already run the same code with minimal hassle.
Assignee | ||
Comment 2•4 years ago
|
||
Assignee | ||
Comment 3•4 years ago
|
||
Depends on D95797
Assignee | ||
Comment 4•4 years ago
|
||
Depends on D95799
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 5•4 years ago
|
||
Depends on D95800
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/99b2e5c55a25 Add D3D11 RenderCompositor for SWGL. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/72d4bf5b093e Add RenderTextureHostSWGL support to D3D11 RenderTextureHosts. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/81601a02d9b7 Support using D3D11 textures as external compositor surfaces with D3D11 compositor. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/134e621d0902 Preload d3d11 attachments for CompositorD3D11 if we might use it with software WebRender. r=lsalzman
Comment 7•4 years ago
|
||
Backed out for causing build bustages in RenderCompositorD3D11SWGL.
Backout link: https://hg.mozilla.org/integration/autoland/rev/1af53f98d8c2c167d791cf5d338b33f0b649e784
Push with failures: https://treeherder.mozilla.org/jobs?repo=autoland&collapsedPushes=814797&resultStatus=testfailed%2Cbusted%2Cexception%2Crunnable&revision=134e621d09029db968cef1eb20c9e5ea6cdc21d0
" make[4]: Leaving directory '/builds/worker/workspace/obj-build/gfx/gl'
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - make[4]: Entering directory '/builds/worker/workspace/obj-build/gfx/webrender_bindings'
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ -std=gnu++17 -o Unified_cpp_webrender_bindings0.o -c -I/builds/worker/workspace/obj-build/dist/stl_wrappers -I/builds/worker/workspace/obj-build/dist/system_wrappers -include /builds/worker/checkouts/gecko/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DNDEBUG=1 -DTRIMMED=1 -DOS_POSIX=1 -DOS_LINUX=1 -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/gfx/webrender_bindings -I/builds/worker/workspace/obj-build/gfx/webrender_bindings -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/checkouts/gecko/ipc/glue -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -Qunused-arguments -Qunused-arguments -Wall -Wbitfield-enum-conversion -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Wunused-function -Wunused-variable -Wstring-conversion -Wtautological-overlap-compare -Wtautological-unsigned-enum-zero-compare -Wtautological-unsigned-zero-compare -Wno-error=tautological-type-limit-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=backend-plugin -Wno-error=return-std-move -Wno-error=atomic-alignment -Wno-error=deprecated-copy -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-psabi -Wno-unknown-warning-option -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fsanitize=thread -fcrash-diagnostics-dir=/builds/worker/artifacts -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -gline-tables-only -fomit-frame-pointer -funwind-tables -I/builds/worker/workspace/obj-build/dist/include/cairo -I/usr/include/freetype2 -I/usr/include/freetype2 -I/builds/worker/checkouts/gecko/widget/gtk/compat-gtk3 -pthread -I/usr/include/gtk-3.0/unix-print -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/builds/worker/workspace/obj-build/dist/include/cairo -fexperimental-new-pass-manager -MD -MP -MF .deps/Unified_cpp_webrender_bindings0.o.pp Unified_cpp_webrender_bindings0.cpp
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - In file included from Unified_cpp_webrender_bindings0.cpp:38:
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - In file included from /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderCompositorD3D11SWGL.cpp:9:
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderCompositorD3D11SWGL.h:11:10: fatal error: 'mozilla/layers/TextureD3D11.h' file not found
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - #include "mozilla/layers/TextureD3D11.h"
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2020-11-05T09:34:34.914Z] 09:34:34 INFO - 1 error generated.
[task 2020-11-05T09:34:34.916Z] 09:34:34 INFO - /builds/worker/checkouts/gecko/config/rules.mk:674: recipe for target 'Unified_cpp_webrender_bindings0.o' failed
[task 2020-11-05T09:34:34.916Z] 09:34:34 ERROR - make[4]: *** [Unified_cpp_webrender_bindings0.o] Error 1
[task 2020-11-05T09:34:34.916Z] 09:34:34 INFO - make[4]: Leaving directory '/builds/worker/workspace/obj-build/gfx/webrender_bindings'
[task 2020-11-05T09:34:34.917Z] 09:34:34 INFO - make[4]: *** Waiting for unfinished jobs....
[task 2020-11-05T09:34:34.918Z] 09:34:34 INFO - make[4]: Entering directory '/builds/worker/workspace/obj-build/gfx/gl'
[task 2020-11-05T09:34:34.918Z] 09:34:34 INFO - gfx/gl/Unified_cpp_gfx_gl1.o"
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/91cb8ee8ddd8 Add D3D11 RenderCompositor for SWGL. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/91d8f0f829fd Add RenderTextureHostSWGL support to D3D11 RenderTextureHosts. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/49ae9de85ab9 Support using D3D11 textures as external compositor surfaces with D3D11 compositor. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/f408fc890ba1 Preload d3d11 attachments for CompositorD3D11 if we might use it with software WebRender. r=lsalzman
Assignee | ||
Updated•4 years ago
|
Comment 9•4 years ago
|
||
Backed out for linting failure on moz.build
Backout link: https://hg.mozilla.org/integration/autoland/rev/f85093dc4a1a8ea0559cbce4410459c526f1b9c8
Log link: https://treeherder.mozilla.org/logviewer?job_id=320873098&repo=autoland&lineNumber=537
Comment 10•4 years ago
|
||
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ea88b243717a Add D3D11 RenderCompositor for SWGL. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/9d637c05af7f Add RenderTextureHostSWGL support to D3D11 RenderTextureHosts. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/de8d00f1d270 Support using D3D11 textures as external compositor surfaces with D3D11 compositor. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/72786fd8a18b Preload d3d11 attachments for CompositorD3D11 if we might use it with software WebRender. r=lsalzman
Assignee | ||
Updated•4 years ago
|
Comment 11•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/ea88b243717a
https://hg.mozilla.org/mozilla-central/rev/9d637c05af7f
https://hg.mozilla.org/mozilla-central/rev/de8d00f1d270
https://hg.mozilla.org/mozilla-central/rev/72786fd8a18b
Updated•3 years ago
|
Description
•