Commit Graph

50 Commits

Author SHA1 Message Date
Jeff Gilbert (:jgilbert)
bfb9aec41d 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
0a8b592fa5 Bug 1300946 - Implement transform feedback. - r=jrmuizel
MozReview-Commit-ID: 1xrEX4Srij1
2016-09-22 19:13:21 -07:00
Ethan Lin
41e79dbc61 Bug 1301803 - Add gfxCriticalNote for glGetActiveAttrib. r=jgilbert 2016-09-13 19:13:00 +02:00
JerryShih
55da685370 Bug 1241042 - remove the original implementation. r=jgilbert 2016-07-18 20:19:04 +08:00
JerryShih
9f084e9521 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
8e6e4ffc74 Bug 1286768 - Fix num used attrib locations for matrix types. - r=mtseng
MozReview-Commit-ID: 71v2R1cj0aC
2016-07-18 00:20:51 -07:00
Jeff Gilbert
68a28a1f65 Bug 1136494 - Update post-link validation. - r=mtseng
MozReview-Commit-ID: 75soRjg1h0o
2016-07-18 00:19:19 -07:00
Jeff Gilbert
4dfbb8dc69 Bug 1136494 - Update LinkInfo. - r=mtseng
MozReview-Commit-ID: Fr4j8bHO5AG
2016-07-18 00:19:19 -07:00
Jeff Gilbert
6bc89bc2e3 Bug 1136410 - Forbid attrib aliasing. - r=mtseng'
MozReview-Commit-ID: 6shjIyJQQ6V
2016-07-11 13:18:36 -07:00
eyim
e2c2b0b56c Bug 1277027 - fix MOZ_CRASH to have GFX prefix in webGL code r=BenWa,milan
MozReview-Commit-ID: FjLA9xNH3zD
2016-06-06 11:17:23 -04:00
JerryShih
0a914d9b9d Bug 1248580 - strip the uploading element num according to the uniform array size. r=jgilbert 2016-05-25 16:27:41 +02:00
Sebastian Hengst
a286e0674e Backed out changeset 31879b3fdce3 (bug 1248580) for build bustage. r=backout on a CLOSED TREE 2016-05-25 14:15:41 +02:00
JerryShih
405e6dfb7f Bug 1248580 - strip the uploading element num according to the uniform array size. r=hshih 2016-05-25 13:50:31 +02:00
Jeff Gilbert
f61ba2b426 Bug 1229332 - Implement EXT_color_buffer_float. - r=jrmuizel 2016-05-04 16:39:02 -07:00
Ethan Lin
251192675f Bug 1264214 - WebGL check the conflict name when LinkProgram. r=jgilbert 2016-04-28 06:10:00 -04:00
Sebastian Hengst
a4e92c6928 Backed out changeset 286171389d12 (bug 1264214) for unexpected passes in test_conformance__glsl__misc__shaders-with-name-conflicts. r=backout 2016-04-27 18:59:01 +02:00
Ethan Lin
a9741c0e5b Bug 1264214 - WebGL check the conflict name when LinkProgram. r=jgilbert 2016-04-24 23:39:00 +02:00
Jeff Gilbert
6d4a92f9df Bug 1263018 - Only update active prog info if linking active prog. - r=jrmuizel 2016-04-20 12:02:07 -07:00
Ethan Lin
0a65e2118e Bug 1241042 - Get correct frag varying from angle validator. r=jmuizelaar 2016-03-14 02:48:00 -04:00
Jeff Muizelaar
1a88560419 Bug 1239126. Handle gl_InstanceID attribute with no location. r=jgilbert
This patch avoids a crash when querying program info when gl_InstanceID is used.

ANGLE will return -1 from GetAttribLocation("gl_InstanceID") (this location is
hardcoded in the ANGLE source) but still includes gl_InstanceID in it's attribute list.
2016-01-19 13:29:04 -05:00
peter chang
208dc9ec48 Bug 1236782 - [WebGL2] pass getProgramParameter in gl-object-get-calls.html; r=jgilbert 2016-01-05 14:44:28 +08:00
Andrew Comminos
c8b246831c Bug 1203135 - Terminate linking if maximum vertex attribute count is exceeded on Mesa. r=jgilbert 2015-11-24 21:27:29 -08:00
Jeff Gilbert
d658f53faf Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-24 20:15:29 -08:00
Phil Ringnalda
80310b6e5c 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
8e72348cfc Bug 1221822 - Finish the WebGL texture refactor. r=kamidphish,mattwoodrow,bz 2015-11-23 19:27:13 -08:00
Jeff Muizelaar
b71b1db990 Bug 1218939. Fixup GetTransformFeedbackVarying. r=jgilbert 2015-11-14 10:58:27 -05:00
Jeff Muizelaar
dec6e79fcd 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
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Nathan Froyd
bf7f6dda03 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Jeff Gilbert
7ddcbebd10 Bug 1192472 - Only do supplemental isArray check if WorkAroundDriverBugs. - r=kamidphish 2015-08-07 19:29:53 -07:00
Bobby Holley
710865df63 Bug 1188696 - Hoist nsRefPtr.h into MFBT. r=froydnj 2015-07-29 10:44:59 -07:00
Jeff Gilbert
b1f1e1a811 Bug 1182371 - Misc WebGL cleanup. - r=kamidphish 2015-07-14 17:37:28 -07:00
Nathan Froyd
92a8124fef Bug 1161627 - part 2 - machine-convert TemporaryRef<T> to already_AddRefed<T>; r=ehsan
This conversion was done with the script:

  find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl' | \
    egrep -v 'cairo-win32-refptr.h|RefPtr.h|TestRefPtr.cpp' | \
    xargs sed -i -e 's/mozilla::TemporaryRef</already_AddRefed</g' \
                 -e 's/TemporaryRef</already_AddRefed</g'

Manual fixups were performed in the following instances:

- We handled mfbt/RefPtr.h manually so as to not convert TemporaryRef itself
  into already_AddRefed.

- The following files had explicit Move() calls added to make up for the lack
  of a copy constructor on already_AddRefed:

  dom/base/ImageEncoder.cpp
  dom/media/MediaTaskQueue.{h,cpp}
  dom/media/webaudio/PannerNode.cpp

- A redundant overload for MediaTaskQueue::Dispatch was deleted.

- A few manual fixups were required in mfbt/tests/TestRefPtr.cpp.

- Comments, using declarations, and forward declarations relating to
  TemporaryRef in dom/canvas/ and gfx/layers/ were changed to refer to
  already_AddRefed.
2015-06-17 10:00:52 -04:00
Dan Glastonbury
05df9b16d3 Bug 1048724 - Sort out Transform Feedback Varyings. r=jgilbert 2015-04-25 08:26:50 +10:00
Dan Glastonbury
9793ec1b4e Bug 1048747 - Cleanup how uniform interface blocks are handled. r=jgilbert 2015-04-21 15:38:30 +10:00
Boris Zbarsky
3a822d99b4 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Jeff Gilbert
1681876544 Bug 1124430 - Implement GetFragDataLocation. - r=kamidphish 2015-01-26 17:10:25 -08:00
Jeff Gilbert
ff27d5e387 Bug 1109945 - Rewrite shader/program handling. - r=kamidphish 2015-01-15 15:40:39 -08:00
Carsten "Tomcat" Book
2e0fe7d467 Backed out changeset b5c6dd9423cf (bug 1109945) for gl2 test failures on a CLOSED TREE 2015-01-13 09:07:26 +01:00
Jeff Gilbert
ec409b7f23 Bug 1109945 - Rewrite shader/program handling. - r=kamidphish 2015-01-12 19:51:20 -08:00
Wes Kocher
af03b0b770 Backout ca411b1cf001 (bug 1109945) for shader editor failures 2015-01-09 21:03:54 -08:00
Jeff Gilbert
a28e4f5f24 Bug 1109945 - Rewrite shader/program handling. - r=kamidphish 2015-01-09 18:40:56 -08:00
Jeff Gilbert
d9b9968e9c Bug 1099427 - Reformat WebGL. - r=kamidphish 2014-11-13 20:03:50 -08:00
jdashg
663859a24c Bug 1080266 - Move UpdateInfo into WebGLProgram.cpp. - r=kamidphish 2014-10-03 14:36:57 -07:00
Peter Van der Beken
3467274091 Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, remove nsWrapperCache::SetIsDOMBinding. r=bz. 2014-10-07 11:44:49 +02:00
Walter Litwinczyk
2af5c23394 Bug 1036068 - Update ANGLE to chromium/2151. r=jrmuizel 2014-09-19 16:35:54 -07:00
Walter Litwinczyk
ed48c0bdda Bug 1038899 - WebGL fix attribute and uniform name lookup in WebGLProgram. r=jgilbert, r=vlad 2014-08-11 14:36:30 -07:00
Wes Kocher
9dc30ef802 Backed out changeset 2422647220de (bug 1038899) for mochitest-2 bustage on a CLOSED TREE 2014-08-07 19:08:10 -07:00
Walter Litwinczyk
163777952e Bug 1038899 - WebGL fix attribute and uniform name lookup in WebGLProgram. r=vlad,jgilbert a=kwierso 2014-08-04 16:40:59 -07:00
Birunthan Mohanathas
3ae7697323 Bug 946065 - Part 1: Move content/canvas/ to dom/ and flatten subdirectories. r=ehsan 2014-07-25 14:15:35 -07:00