OSDN Git Service

mesa: Don't check for API_OPENGLES in _mesa_uniform_matrix
authorIan Romanick <ian.d.romanick@intel.com>
Mon, 20 Oct 2014 23:50:53 +0000 (16:50 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Mon, 10 Nov 2014 12:25:40 +0000 (04:25 -0800)
commit378d92c74e2b07a630919a2b178a471d4f7407ba
tree76b9a5e77f3611795d26c540ab4de3f1327a00bf
parent91a2fa1490b86b11430db6a604dc28bac1871695
mesa: Don't check for API_OPENGLES in _mesa_uniform_matrix

There are no uniforms in OpenGL ES 1.x, so we can't even get to this
code in that API.

Also, reorder the checks.  First check that transpose is true, then
check whether or not that is legal in the current API.  transpose should
never be true in an ES2 context, so this gets one check (the more
expensive one) out of the main path.

Valgrind callgrind results for a trace of Tesseract:

                 _mesa_UniformMatrix4fv  _mesa_UniformMatrix3fv
Before (64-bit):             96,119,025              24,240,510
After  (64-bit):             90,726,569              22,926,662

                 _mesa_UniformMatrix4fv  _mesa_UniformMatrix3fv
Before (32-bit):            132,434,452              29,051,808
After  (32-bit):            126,658,112              27,989,316

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
src/mesa/main/uniform_query.cpp