Add handling of non-square matrix uniform types to utility methods.

TRAC #22845

Signed-off-by: Geoff Lang
Signed-off-by: Shanon Woods
Author: Jamie Madill

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2144 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/utilities.cpp b/src/libGLESv2/utilities.cpp
index 62f5303..aac1e81 100644
--- a/src/libGLESv2/utilities.cpp
+++ b/src/libGLESv2/utilities.cpp
@@ -40,8 +40,17 @@
       case GL_UNSIGNED_INT_VEC4:
       case GL_FLOAT_MAT2:
           return 4;
+      case GL_FLOAT_MAT2x3:
+      case GL_FLOAT_MAT3x2:
+          return 6;
+      case GL_FLOAT_MAT2x4:
+      case GL_FLOAT_MAT4x2:
+          return 8;
       case GL_FLOAT_MAT3:
           return 9;
+      case GL_FLOAT_MAT3x4:
+      case GL_FLOAT_MAT4x3:
+          return 12;
       case GL_FLOAT_MAT4:
           return 16;
       default:
@@ -67,6 +76,12 @@
       case GL_FLOAT_MAT2:
       case GL_FLOAT_MAT3:
       case GL_FLOAT_MAT4:
+      case GL_FLOAT_MAT2x3:
+      case GL_FLOAT_MAT3x2:
+      case GL_FLOAT_MAT2x4:
+      case GL_FLOAT_MAT4x2:
+      case GL_FLOAT_MAT3x4:
+      case GL_FLOAT_MAT4x3:
           return GL_FLOAT;
       case GL_INT:
       case GL_SAMPLER_2D: