Commit graph

70 commits

Author SHA1 Message Date
Kelsey Gilbert
ae9bf670e5 Bug 1768190 - Forbid same tex unit different sampler types even if unbound. r=gfx-reviewers,lsalzman
Previously, we checked this but only if there was a texture bound to the
tex unit. However technically we're supposed to check regardless. ANGLE
and Mesa both do, which causes this error.

Differential Revision: https://phabricator.services.mozilla.com/D153422
2022-08-02 05:56:20 +00:00
Jeff Gilbert
fa284e5717 Bug 1726265 - Prototype webgl draft ext OES_draw_buffers_indexed. r=lsalzman,emilio,webidl
Differential Revision: https://phabricator.services.mozilla.com/D122916
2021-08-27 01:47:14 +00:00
Butkovits Atila
477919f37c Backed out changeset a4a346ecefd7 (bug 1726265) for causing failures at test_2_conformance2__extensions__oes-draw-buffers-indexed.html. CLOSED TREE 2021-08-21 01:46:52 +03:00
Jeff Gilbert
28e862be2d Bug 1726265 - Prototype webgl draft ext OES_draw_buffers_indexed. r=lsalzman,emilio
Differential Revision: https://phabricator.services.mozilla.com/D122916
2021-08-20 20:59:54 +00:00
Cosmin Sabou
135d55cd7e Backed out changeset 24e0d3aa4ada (bug 1726265) for causing non-unified build bustage. CLOSED TREE 2021-08-20 04:29:04 +03:00
Jeff Gilbert
df78036187 Bug 1726265 - Prototype webgl draft ext OES_draw_buffers_indexed. r=lsalzman,emilio
Differential Revision: https://phabricator.services.mozilla.com/D122916
2021-08-20 00:05:06 +00:00
Emilio Cobos Álvarez
ff61891772 Bug 1653011 - Simplify and make WeakPtr<Derived> usable and compact. r=froydnj,sg,geckoview-reviewers,jgilbert,kvark,snorp
Having two classes in the inheritance chain inherit from SupportsWeakPtr
now won't compile, but you can use WeakPtr<Derived> when any base class
inherits from SupportsWeakPtr.

Differential Revision: https://phabricator.services.mozilla.com/D83674
2020-07-23 14:51:46 +00:00
Jeff Gilbert
91ab854fc8 Bug 1617785 - Optimize GetDrawFetchLimits and vertexAttribPointer. r=lsalzman
Our goal here is to just be fast enough that we don't need to cache.

Differential Revision: https://phabricator.services.mozilla.com/D64215

--HG--
extra : moz-landing-system : lando
2020-02-26 00:44:26 +00:00
Jeff Gilbert
66b0d76979 Bug 1615487 - Don't cache thrashing VAOs to mDrawFetchCache. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D63013

--HG--
extra : moz-landing-system : lando
2020-02-16 15:38:25 +00:00
Jeff Gilbert
5a3182940a Bug 1615487 - Make CachedDrawFetchLimits move-only, remove copy. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D63012

--HG--
extra : moz-landing-system : lando
2020-02-16 15:37:35 +00:00
Jeff Gilbert
0dfd1a2a0d Bug 1477756 - Fix all webgl regression tests according to CI. r=handyman
(This is a combination of 31 commits)

* Fix Linux compilation.

* Fix mac compilation.

* CI compile fixes.

* printf's size_t is %zu. %tu would be unsigned ptrdiff_t.

* No non-ref Maybe args.

* MOZ_CRASH for noreturn

* Handle implied texture sizes, rewrite comment stripping.

* Replace e.g. WebGLProgramInner with simpler webgl::ProgramKeepAlive.

* Bounce ValidateProgram call off driver.

* Uniform name length limit, cubemap fb-attach, non-array uniforms, undersized texImage views.

* alignas for uint8_t[sizeof(float)*N] pun buffers.

* CC fixes?

* Fill attrib0Active.

* Repair max-warnings limit.

* This is basically required in order for CI's logging to not explode.

* Don't cache WebGLMemoryTracker.

* Deleted prog/shader error, no texSubImage(null), client-side fingerprint resist for exts.

* Fix GetUniformIndices and MakeRangeFromView.

* CC Traverse base class from within derived class to fix leaking the world. :(

* PauseTransformFeedback
* TexImage video fastpath
* GetFragLocation for arrays
* Forbid BindBufferRange during TF

* Mark tests and fix RBAB query and test.

* Change(!) query deletion behavior to match spec.
* Mark conformance2/query/query.html failing for now.

* Implicitly EndQuery on DeleteQuery while spec is in flux.

* Fix error code for test.

* RAII LruPosition for WebGL context limit.

* Include std::list.

* Mark CompileResult and LinkResult.pending as false when retrieved.

* Hold strong-ref to NotLostData during Run<> to prevent LoseContext=>UAF.

* Don't assume GetUniformLocation(foo+'[0]') means foo is an array.
* Don't assume !mCanvasElement means !!mOffscreenCanvas.

* Handle composition while context-lost.

* All non-value-init members must be const or have inline init.

* Mark passing tests on Linux.

Depends on D54019

Differential Revision: https://phabricator.services.mozilla.com/D55739

--HG--
extra : moz-landing-system : lando
2020-01-08 22:19:23 +00:00
Jeff Gilbert
e1d0fe64bb Bug 1477756 - Client-side bindings mirror for precise CC, and merge similar codepaths. r=handyman
* Context loss using RAII
* Move Program reflection Client-side

Depends on D54018

Differential Revision: https://phabricator.services.mozilla.com/D54019

--HG--
extra : moz-landing-system : lando
2020-01-08 22:19:16 +00:00
David Parks
198fa063c2 Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman
Splits WebGLContext into ClientWebGLContext and HostWebGLContext.  The Client enables the JS-control of a WebGL context in a content procecss while the Host executes the WebGL graphics operations (via a WebGLContext that maintains much of the existing code) in the compositor process.  At this point, the cross-process behavior is disabled -- this series of patches is an incremental step toward that final goal.

Differential Revision: https://phabricator.services.mozilla.com/D54018

--HG--
extra : moz-landing-system : lando
2020-01-08 22:19:14 +00:00
Jeff Gilbert
9561417879 Bug 1541396 - Refactor (non-)transform-feedback binding/use checks. r=lsalzman
* Remove WebGLBuffer::SetSlot
* Make most bindBuffer calls lazy.
* Replace nsTArray with std::vector in WebGLVertexArray.

Differential Revision: https://phabricator.services.mozilla.com/D36274

--HG--
extra : moz-landing-system : lando
2019-06-30 01:29:42 +00:00
Jeff Gilbert
047e98938e Bug 1536672 - Implement WebGL OVR_multiview2 behind draft flag. r=lsalzman,qdot
Also disable clang-format for gfx/gl/GLConsts.h.

Differential Revision: https://phabricator.services.mozilla.com/D28168

--HG--
extra : moz-landing-system : lando
2019-05-23 20:48:21 +00:00
Mihai Alexandru Michis
354eec452c Backed out changeset a649f69f29df (bug 1536672) for failing crashtest at WebGLContextValidate.cpp. CLOSED TREE 2019-05-23 10:57:29 +03:00
Jeff Gilbert
fb7050f9bf Bug 1536672 - Implement WebGL OVR_multiview2 behind draft flag. r=lsalzman,qdot
Also disable clang-format for gfx/gl/GLConsts.h.

Differential Revision: https://phabricator.services.mozilla.com/D28168

--HG--
extra : moz-landing-system : lando
2019-05-23 02:43:11 +00:00
Jeff Gilbert
7c1b76c6a8 Bug 1526027 - Remove webgl.bypass-shader-validation. r=lsalzman
Also remove extra plumbing from WebGLShaderValidator, moved directly
into WebGLShader.

Differential Revision: https://phabricator.services.mozilla.com/D31567

--HG--
extra : moz-landing-system : lando
2019-05-17 02:36:57 +00:00
Jeff Gilbert
8ec455686e Bug 1290774 - Validate frag shader output types match draw buffer types. r=lsalzman
MozReview-Commit-ID: FXQaUzJ0fDy

Differential Revision: https://phabricator.services.mozilla.com/D18611
2019-02-04 14:34:59 -08:00
Cosmin Sabou
5a2318f064 Backed out changeset 58fe5a3d3c40 (bug 1290774) for causing build bustages on WebGLContextDraw. CLOSED TREE 2019-02-01 05:58:38 +02:00
Jeff Gilbert
be41632dd0 Bug 1290774 - Validate frag shader output types match draw buffer types. r=lsalzman
MozReview-Commit-ID: HhGKDVWXR1A

Differential Revision: https://phabricator.services.mozilla.com/D18302

--HG--
extra : moz-landing-system : lando
2019-02-01 03:33:02 +00:00
Tooru Fujisawa
7983faeb5d Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
Sylvestre Ledru
265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Jeff Gilbert
4098f41704 Bug 1498070 - Simplify and cache framebuffer and texture completeness. - r=kvark
Net-removes 700LOC, too!

Differential Revision: https://phabricator.services.mozilla.com/D8325

--HG--
extra : moz-landing-system : lando
2018-10-17 04:18:15 +00:00
Jeff Gilbert
b5299cdebb Bug 1478909 - Make funcName implicit for WebGL calls. - r=kvark
MozReview-Commit-ID: Gv77SnHZcGb
2018-08-09 14:35:01 -07:00
Dorel Luca
5ef9c6f716 Backed out changeset e8023a02b6c2 (bug 1478909) on dev's request 2018-08-09 04:58:04 +03:00
Jeff Gilbert
8e0436b208 Bug 1478909 - Make funcName implicit for WebGL calls. - r=kvark
MozReview-Commit-ID: Gv77SnHZcGb
2018-08-08 16:15:12 -07:00
Jeff Gilbert
027c306ce3 Bug 1445577 - Fix -Wmicrosoft-unqualified-friend in WebGLProgram.h. - r=kvark
"unqualified friend declaration referring to type outside of the nearest enclosing
namespace is a Microsoft extension; add a nested name specifier
[-Wmicrosoft-unqualified-friend]"
2018-03-15 22:35:50 -07:00
Jeff Gilbert
d6af1e81ba Bug 1404196 - Simplify and repair vertex fetch. - r=daoshengmu
MozReview-Commit-ID: FL7uibuv4VY
2017-11-01 15:18:27 -07:00
Jeff Gilbert
61b02e4fd7 Bug 1326159 - Update TF buffer restrictions. - r=daoshengmu
Update conformance2/buffers/bound-buffer-size-change-test.html to top-of-tree 2.0.0.

MozReview-Commit-ID: CgfP70Y0wul
2016-12-30 03:30:13 -08:00
Jeff Gilbert
a08f6f998c Bug 1325699 (flattened) - Fix uniform block handling. - r=daoshengmu
Flattened with:
* Handle -1 attrib locations. - r=daoshengmu
2016-12-29 02:47:08 -08:00
Jeff Gilbert
0b065a7b71 Bug 1325301 (flattened) - Validate attribute base types match data base types. - r=bz,daoshengmu
Flattened with:
* Clean up generic vertex attribs. - r=bz,daoshengmu
* Remove EnsureAttrib() and friends. - r=daoshengmu
* Simplify EnumName behavior and usage and add ErrorInvalidEnumArg(). - r=daoshengmu
2016-12-29 02:46:46 -08:00
Jeff Gilbert
0801831c32 Bug 1325240 - Handle arrays in glsl variable location queries properly. - r=daoshengmu
MozReview-Commit-ID: 1XYwvh9QGmA
2016-12-25 13:44:31 -08:00
Jeff Gilbert
51d744aa93 Bug 1320030 - Simplify marking and deletion checks. - r=ethlin 2016-12-07 01:35:28 -08:00
Jeff Gilbert (:jgilbert)
1a57a7121a Bug 1318507 - Update implementation. - r=ethlin 2016-11-22 23:59:24 -08:00
Jeff Gilbert (:jgilbert)
4b2a875e8b Bug 1313541 - Reimplement glue in accordance to webidl deviation minimization. - r=ethlin
MozReview-Commit-ID: 6w56cfegTz5
2016-10-31 15:03:22 -07:00
Jeff Gilbert
6b423ece44 Bug 1300946 - Implement transform feedback. - r=jrmuizel
MozReview-Commit-ID: 1xrEX4Srij1
2016-09-22 19:13:21 -07:00
Jeff Gilbert
407bc3c38c Bug 1288649 - Fix non-unified-build errors. - r=ethlin
MozReview-Commit-ID: EI7FtmuEBl7
2016-07-25 14:46:20 -07:00
JerryShih
c801d201b6 Bug 1241042 - remove the original implementation. r=jgilbert 2016-07-18 20:19:04 +08:00
JerryShih
b44cfb7256 Bug 1241042 - save frag translated varying names into LinkedProgramInfo. r=jgilbert
Save the frag name info to the LinkedProgramInfo object. Then the fragment shader can be freely detached at any time.
2016-07-18 20:19:04 +08:00
Jeff Gilbert
55d9d2af29 Bug 1136494 - Update LinkInfo. - r=mtseng
MozReview-Commit-ID: Fr4j8bHO5AG
2016-07-18 00:19:19 -07:00
Jeff Gilbert
8bbaf9eeee Bug 1136410 - Forbid attrib aliasing. - r=mtseng'
MozReview-Commit-ID: 6shjIyJQQ6V
2016-07-11 13:18:36 -07:00
Jeff Gilbert
9c3993e371 Bug 1263018 - Only update active prog info if linking active prog. - r=jrmuizel 2016-04-20 12:02:07 -07:00
Ethan Lin
9b0ebddb01 Bug 1241042 - Get correct frag varying from angle validator. r=jmuizelaar 2016-03-14 02:48:00 -04:00
Morris Tseng
1ae8baf23c Bug 917505 - Add WEBGL_compressed_texture_es3 support. r=jgilbert r=smaug
--HG--
extra : commitid : 96pBvjbX0be
2016-01-08 10:12:22 +08:00
Jeff Gilbert
19d84fb0fe Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-24 20:15:29 -08:00
Phil Ringnalda
71a6f5da62 Back out changeset 2f614bcd9405 (bug 1221822) for test_conformance__extensions__ext-sRGB.html and test_webgl2_alpha_luminance.html failures 2015-11-23 21:55:59 -08:00
Jeff Gilbert
87397c265b Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-23 19:27:13 -08:00
Jeff Muizelaar
5c21dbd45c Bug 1218939. Fixup GetTransformFeedbackVarying. r=jgilbert 2015-11-14 10:58:27 -05:00
Jeff Muizelaar
6933e0086e Bug 1220783. Map GetUniformIndices names. r=jgilbert
This is needed for things to work with the shader translator
2015-11-04 13:35:35 -05:00